{"remainingRequest":"E:\\hz-zhhq-web\\node_modules\\babel-loader\\lib\\index.js!E:\\hz-zhhq-web\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!E:\\hz-zhhq-web\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\hz-zhhq-web\\src\\components\\ThemePicker\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"E:\\hz-zhhq-web\\src\\components\\ThemePicker\\index.vue","mtime":1737610069385},{"path":"E:\\hz-zhhq-web\\babel.config.js","mtime":1737610069371},{"path":"E:\\hz-zhhq-web\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\hz-zhhq-web\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"E:\\hz-zhhq-web\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\hz-zhhq-web\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["\"use strict\";\n\nvar _interopRequireDefault = require(\"E:/hz-zhhq-web/node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nrequire(\"core-js/modules/es6.number.constructor\");\nrequire(\"core-js/modules/es6.regexp.to-string\");\nvar _regeneratorRuntime2 = _interopRequireDefault(require(\"E:/hz-zhhq-web/node_modules/@babel/runtime/helpers/regeneratorRuntime.js\"));\nrequire(\"core-js/modules/web.dom.iterable\");\nrequire(\"core-js/modules/es6.regexp.constructor\");\nrequire(\"core-js/modules/es6.regexp.replace\");\nrequire(\"regenerator-runtime/runtime\");\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"E:/hz-zhhq-web/node_modules/@babel/runtime/helpers/asyncToGenerator.js\"));\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nvar version = require('element-ui/package.json').version; // element-ui version from node_modules\nvar ORIGINAL_THEME = '#409EFF'; // default color\nvar _default = exports.default = {\n data: function data() {\n return {\n chalk: '',\n // content of theme-chalk css\n theme: ''\n };\n },\n computed: {\n defaultTheme: function defaultTheme() {\n return this.$store.state.settings.theme;\n }\n },\n watch: {\n defaultTheme: {\n handler: function handler(val, oldVal) {\n this.theme = val;\n },\n immediate: true\n },\n theme: function () {\n var _theme = (0, _asyncToGenerator2.default)(/*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(val) {\n var _this = this;\n var oldVal, themeCluster, originalCluster, $message, getHandler, url, chalkHandler, styles;\n return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n oldVal = this.chalk ? this.theme : ORIGINAL_THEME;\n if (!(typeof val !== 'string')) {\n _context.next = 3;\n break;\n }\n return _context.abrupt(\"return\");\n case 3:\n themeCluster = this.getThemeCluster(val.replace('#', ''));\n originalCluster = this.getThemeCluster(oldVal.replace('#', '')); // console.log(themeCluster, originalCluster)\n $message = this.$message({\n message: ' Compiling the theme',\n customClass: 'theme-message',\n type: 'success',\n duration: 0,\n iconClass: 'el-icon-loading'\n });\n getHandler = function getHandler(variable, id) {\n return function () {\n var originalCluster = _this.getThemeCluster(ORIGINAL_THEME.replace('#', ''));\n var newStyle = _this.updateStyle(_this[variable], originalCluster, themeCluster);\n var styleTag = document.getElementById(id);\n if (!styleTag) {\n styleTag = document.createElement('style');\n styleTag.setAttribute('id', id);\n document.head.appendChild(styleTag);\n }\n styleTag.innerText = newStyle;\n };\n };\n if (this.chalk) {\n _context.next = 11;\n break;\n }\n url = \"https://unpkg.com/element-ui@\".concat(version, \"/lib/theme-chalk/index.css\");\n _context.next = 11;\n return this.getCSSString(url, 'chalk');\n case 11:\n chalkHandler = getHandler('chalk', 'chalk-style');\n chalkHandler();\n styles = [].slice.call(document.querySelectorAll('style')).filter(function (style) {\n var text = style.innerText;\n return new RegExp(oldVal, 'i').test(text) && !/Chalk Variables/.test(text);\n });\n styles.forEach(function (style) {\n var innerText = style.innerText;\n if (typeof innerText !== 'string') return;\n style.innerText = _this.updateStyle(innerText, originalCluster, themeCluster);\n });\n this.$emit('change', val);\n $message.close();\n case 17:\n case \"end\":\n return _context.stop();\n }\n }, _callee, this);\n }));\n function theme(_x) {\n return _theme.apply(this, arguments);\n }\n return theme;\n }()\n },\n methods: {\n updateStyle: function updateStyle(style, oldCluster, newCluster) {\n var newStyle = style;\n oldCluster.forEach(function (color, index) {\n newStyle = newStyle.replace(new RegExp(color, 'ig'), newCluster[index]);\n });\n return newStyle;\n },\n getCSSString: function getCSSString(url, variable) {\n var _this2 = this;\n return new Promise(function (resolve) {\n var xhr = new XMLHttpRequest();\n xhr.onreadystatechange = function () {\n if (xhr.readyState === 4 && xhr.status === 200) {\n _this2[variable] = xhr.responseText.replace(/@font-face{[^}]+}/, '');\n resolve();\n }\n };\n xhr.open('GET', url);\n xhr.send();\n });\n },\n getThemeCluster: function getThemeCluster(theme) {\n var tintColor = function tintColor(color, tint) {\n var red = parseInt(color.slice(0, 2), 16);\n var green = parseInt(color.slice(2, 4), 16);\n var blue = parseInt(color.slice(4, 6), 16);\n if (tint === 0) {\n // when primary color is in its rgb space\n return [red, green, blue].join(',');\n } else {\n red += Math.round(tint * (255 - red));\n green += Math.round(tint * (255 - green));\n blue += Math.round(tint * (255 - blue));\n red = red.toString(16);\n green = green.toString(16);\n blue = blue.toString(16);\n return \"#\".concat(red).concat(green).concat(blue);\n }\n };\n var shadeColor = function shadeColor(color, shade) {\n var red = parseInt(color.slice(0, 2), 16);\n var green = parseInt(color.slice(2, 4), 16);\n var blue = parseInt(color.slice(4, 6), 16);\n red = Math.round((1 - shade) * red);\n green = Math.round((1 - shade) * green);\n blue = Math.round((1 - shade) * blue);\n red = red.toString(16);\n green = green.toString(16);\n blue = blue.toString(16);\n return \"#\".concat(red).concat(green).concat(blue);\n };\n var clusters = [theme];\n for (var i = 0; i <= 9; i++) {\n clusters.push(tintColor(theme, Number((i / 10).toFixed(2))));\n }\n clusters.push(shadeColor(theme, 0.1));\n return clusters;\n }\n }\n};",null]}