1 line
9.4 KiB
JSON
1 line
9.4 KiB
JSON
{"remainingRequest":"D:\\Hjm项目\\suyiScreen\\node_modules\\babel-loader\\lib\\index.js!D:\\Hjm项目\\suyiScreen\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\Hjm项目\\suyiScreen\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\Hjm项目\\suyiScreen\\node_modules\\@jiaminghi\\data-view\\lib\\components\\capsuleChart\\src\\main.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\Hjm项目\\suyiScreen\\node_modules\\@jiaminghi\\data-view\\lib\\components\\capsuleChart\\src\\main.vue","mtime":499162500000},{"path":"D:\\Hjm项目\\suyiScreen\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\Hjm项目\\suyiScreen\\node_modules\\babel-loader\\lib\\index.js","mtime":499162500000},{"path":"D:\\Hjm项目\\suyiScreen\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\Hjm项目\\suyiScreen\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuZmlsbCI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5Lm1hcCI7CmltcG9ydCBfdG9Db25zdW1hYmxlQXJyYXkgZnJvbSAiRDpcXEhqbVx1OTg3OVx1NzZFRVxcc3V5aVNjcmVlblxcbm9kZV9tb2R1bGVzXFxAYmFiZWxcXHJ1bnRpbWUvaGVscGVycy9lc20vdG9Db25zdW1hYmxlQXJyYXkiOwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwppbXBvcnQgeyBkZWVwTWVyZ2UgfSBmcm9tICdAamlhbWluZ2hpL2NoYXJ0cy9saWIvdXRpbC9pbmRleCc7CmltcG9ydCB7IGRlZXBDbG9uZSB9IGZyb20gJ0BqaWFtaW5naGkvYy1yZW5kZXIvbGliL3BsdWdpbi91dGlsJzsKZXhwb3J0IGRlZmF1bHQgewogIG5hbWU6ICdEdkNhcHN1bGVDaGFydCcsCiAgcHJvcHM6IHsKICAgIGNvbmZpZzogewogICAgICB0eXBlOiBPYmplY3QsCiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkgewogICAgICAgIHJldHVybiB7fTsKICAgICAgfQogICAgfQogIH0sCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIGRlZmF1bHRDb25maWc6IHsKICAgICAgICAvKioKICAgICAgICAgKiBAZGVzY3JpcHRpb24gQ2Fwc3VsZSBjaGFydCBkYXRhCiAgICAgICAgICogQHR5cGUge0FycmF5PE9iamVjdD59CiAgICAgICAgICogQGRlZmF1bHQgZGF0YSA9IFtdCiAgICAgICAgICogQGV4YW1wbGUgZGF0YSA9IFt7IG5hbWU6ICdmb28xJywgdmFsdWU6IDEwMCB9LCB7IG5hbWU6ICdmb28yJywgdmFsdWU6IDEwMCB9XQogICAgICAgICAqLwogICAgICAgIGRhdGE6IFtdLAoKICAgICAgICAvKioKICAgICAgICAgKiBAZGVzY3JpcHRpb24gQ29sb3JzIChoZXh8cmdifHJnYmF8Y29sb3Iga2V5d29yZHMpCiAgICAgICAgICogQHR5cGUge0FycmF5PFN0cmluZz59CiAgICAgICAgICogQGRlZmF1bHQgY29sb3IgPSBbJyMzN2EyZGEnLCAnIzMyYzVlOScsICcjNjdlMGUzJywgJyM5ZmU2YjgnLCAnI2ZmZGI1YycsICcjZmY5ZjdmJywgJyNmYjcyOTMnXQogICAgICAgICAqIEBleGFtcGxlIGNvbG9yID0gWycjMDAwJywgJ3JnYigwLCAwLCAwKScsICdyZ2JhKDAsIDAsIDAsIDEpJywgJ3JlZCddCiAgICAgICAgICovCiAgICAgICAgY29sb3JzOiBbJyMzN2EyZGEnLCAnIzMyYzVlOScsICcjNjdlMGUzJywgJyM5ZmU2YjgnLCAnI2ZmZGI1YycsICcjZmY5ZjdmJywgJyNmYjcyOTMnXSwKCiAgICAgICAgLyoqCiAgICAgICAgICogQGRlc2NyaXB0aW9uIENoYXJ0IHVuaXQKICAgICAgICAgKiBAdHlwZSB7U3RyaW5nfQogICAgICAgICAqIEBkZWZhdWx0IHVuaXQgPSAnJwogICAgICAgICAqLwogICAgICAgIHVuaXQ6ICcnCiAgICAgIH0sCiAgICAgIG1lcmdlZENvbmZpZzogbnVsbCwKICAgICAgY2Fwc3VsZUxlbmd0aDogW10sCiAgICAgIGxhYmVsRGF0YTogW10KICAgIH07CiAgfSwKICB3YXRjaDogewogICAgY29uZmlnOiBmdW5jdGlvbiBjb25maWcoKSB7CiAgICAgIHZhciBjYWxjRGF0YSA9IHRoaXMuY2FsY0RhdGE7CiAgICAgIGNhbGNEYXRhKCk7CiAgICB9CiAgfSwKICBtZXRob2RzOiB7CiAgICBjYWxjRGF0YTogZnVuY3Rpb24gY2FsY0RhdGEoKSB7CiAgICAgIHZhciBtZXJnZUNvbmZpZyA9IHRoaXMubWVyZ2VDb25maWcsCiAgICAgICAgICBjYWxjQ2Fwc3VsZUxlbmd0aEFuZExhYmVsRGF0YSA9IHRoaXMuY2FsY0NhcHN1bGVMZW5ndGhBbmRMYWJlbERhdGE7CiAgICAgIG1lcmdlQ29uZmlnKCk7CiAgICAgIGNhbGNDYXBzdWxlTGVuZ3RoQW5kTGFiZWxEYXRhKCk7CiAgICB9LAogICAgbWVyZ2VDb25maWc6IGZ1bmN0aW9uIG1lcmdlQ29uZmlnKCkgewogICAgICB2YXIgY29uZmlnID0gdGhpcy5jb25maWcsCiAgICAgICAgICBkZWZhdWx0Q29uZmlnID0gdGhpcy5kZWZhdWx0Q29uZmlnOwogICAgICB0aGlzLm1lcmdlZENvbmZpZyA9IGRlZXBNZXJnZShkZWVwQ2xvbmUoZGVmYXVsdENvbmZpZywgdHJ1ZSksIGNvbmZpZyB8fCB7fSk7CiAgICB9LAogICAgY2FsY0NhcHN1bGVMZW5ndGhBbmRMYWJlbERhdGE6IGZ1bmN0aW9uIGNhbGNDYXBzdWxlTGVuZ3RoQW5kTGFiZWxEYXRhKCkgewogICAgICB2YXIgZGF0YSA9IHRoaXMubWVyZ2VkQ29uZmlnLmRhdGE7CiAgICAgIGlmICghZGF0YS5sZW5ndGgpIHJldHVybjsKICAgICAgdmFyIGNhcHN1bGVWYWx1ZSA9IGRhdGEubWFwKGZ1bmN0aW9uIChfcmVmKSB7CiAgICAgICAgdmFyIHZhbHVlID0gX3JlZi52YWx1ZTsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0pOwogICAgICB2YXIgbWF4VmFsdWUgPSBNYXRoLm1heC5hcHBseShNYXRoLCBfdG9Db25zdW1hYmxlQXJyYXkoY2Fwc3VsZVZhbHVlKSk7CiAgICAgIHRoaXMuY2Fwc3VsZUxlbmd0aCA9IGNhcHN1bGVWYWx1ZS5tYXAoZnVuY3Rpb24gKHYpIHsKICAgICAgICByZXR1cm4gbWF4VmFsdWUgPyB2IC8gbWF4VmFsdWUgOiAwOwogICAgICB9KTsKICAgICAgdmFyIG9uZUZpZnRoID0gbWF4VmFsdWUgLyA1OwogICAgICB0aGlzLmxhYmVsRGF0YSA9IG5ldyBBcnJheSg2KS5maWxsKDApLm1hcChmdW5jdGlvbiAodiwgaSkgewogICAgICAgIHJldHVybiBNYXRoLmNlaWwoaSAqIG9uZUZpZnRoKTsKICAgICAgfSk7CiAgICB9CiAgfSwKICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkgewogICAgdmFyIGNhbGNEYXRhID0gdGhpcy5jYWxjRGF0YTsKICAgIGNhbGNEYXRhKCk7CiAgfQp9Ow=="},{"version":3,"sources":["main.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,SAAA,SAAA,QAAA,kCAAA;AAEA,SAAA,SAAA,QAAA,qCAAA;AAEA,eAAA;AACA,EAAA,IAAA,EAAA,gBADA;AAEA,EAAA,KAAA,EAAA;AACA,IAAA,MAAA,EAAA;AACA,MAAA,IAAA,EAAA,MADA;AAEA,MAAA,OAAA,EAAA;AAAA,eAAA,EAAA;AAAA;AAFA;AADA,GAFA;AAQA,EAAA,IARA,kBAQA;AACA,WAAA;AACA,MAAA,aAAA,EAAA;AACA;;;;;;AAMA,QAAA,IAAA,EAAA,EAPA;;AAQA;;;;;;AAMA,QAAA,MAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAAA,SAAA,EAAA,SAAA,EAAA,SAAA,EAAA,SAAA,EAAA,SAAA,CAdA;;AAeA;;;;;AAKA,QAAA,IAAA,EAAA;AApBA,OADA;AAwBA,MAAA,YAAA,EAAA,IAxBA;AA0BA,MAAA,aAAA,EAAA,EA1BA;AA2BA,MAAA,SAAA,EAAA;AA3BA,KAAA;AA6BA,GAtCA;AAuCA,EAAA,KAAA,EAAA;AACA,IAAA,MADA,oBACA;AAAA,UACA,QADA,GACA,IADA,CACA,QADA;AAGA,MAAA,QAAA;AACA;AALA,GAvCA;AA8CA,EAAA,OAAA,EAAA;AACA,IAAA,QADA,sBACA;AAAA,UACA,WADA,GACA,IADA,CACA,WADA;AAAA,UACA,6BADA,GACA,IADA,CACA,6BADA;AAGA,MAAA,WAAA;AAEA,MAAA,6BAAA;AACA,KAPA;AAQA,IAAA,WARA,yBAQA;AAAA,UACA,MADA,GACA,IADA,CACA,MADA;AAAA,UACA,aADA,GACA,IADA,CACA,aADA;AAGA,WAAA,YAAA,GAAA,SAAA,CAAA,SAAA,CAAA,aAAA,EAAA,IAAA,CAAA,EAAA,MAAA,IAAA,EAAA,CAAA;AACA,KAZA;AAaA,IAAA,6BAbA,2CAaA;AAAA,UACA,IADA,GACA,KAAA,YADA,CACA,IADA;AAGA,UAAA,CAAA,IAAA,CAAA,MAAA,EAAA;AAEA,UAAA,YAAA,GAAA,IAAA,CAAA,GAAA,CAAA;AAAA,YAAA,KAAA,QAAA,KAAA;AAAA,eAAA,KAAA;AAAA,OAAA,CAAA;AAEA,UAAA,QAAA,GAAA,IAAA,CAAA,GAAA,OAAA,IAAA,qBAAA,YAAA,EAAA;AAEA,WAAA,aAAA,GAAA,YAAA,CAAA,GAAA,CAAA,UAAA,CAAA;AAAA,eAAA,QAAA,GAAA,CAAA,GAAA,QAAA,GAAA,CAAA;AAAA,OAAA,CAAA;AAEA,UAAA,QAAA,GAAA,QAAA,GAAA,CAAA;AAEA,WAAA,SAAA,GAAA,IAAA,KAAA,CAAA,CAAA,EAAA,IAAA,CAAA,CAAA,EAAA,GAAA,CAAA,UAAA,CAAA,EAAA,CAAA;AAAA,eAAA,IAAA,CAAA,IAAA,CAAA,CAAA,GAAA,QAAA,CAAA;AAAA,OAAA,CAAA;AACA;AA3BA,GA9CA;AA2EA,EAAA,OA3EA,qBA2EA;AAAA,QACA,QADA,GACA,IADA,CACA,QADA;AAGA,IAAA,QAAA;AACA;AA/EA,CAAA","sourcesContent":["<template>\n <div class=\"dv-capsule-chart\">\n <template v-if=\"mergedConfig\">\n <div class=\"label-column\">\n <div v-for=\"item in mergedConfig.data\" :key=\"item.name\">{{ item.name }}</div>\n <div> </div>\n </div>\n\n <div class=\"capsule-container\">\n <div\n class=\"capsule-item\"\n v-for=\"(capsule, index) in capsuleLength\"\n :key=\"index\"\n >\n <div :style=\"`width: ${capsule * 100}%; background-color: ${mergedConfig.colors[index % mergedConfig.colors.length]};`\"></div>\n </div>\n\n <div class=\"unit-label\">\n <div v-for=\"(label, index) in labelData\" :key=\"label + index\">{{ label }}</div>\n </div>\n </div>\n\n <div class=\"unit-text\" v-if=\"mergedConfig.unit\">{{ mergedConfig.unit }}</div>\n </template>\n </div>\n</template>\n\n<script>\nimport { deepMerge } from '@jiaminghi/charts/lib/util/index'\n\nimport { deepClone } from '@jiaminghi/c-render/lib/plugin/util'\n\nexport default {\n name: 'DvCapsuleChart',\n props: {\n config: {\n type: Object,\n default: () => ({})\n }\n },\n data () {\n return {\n defaultConfig: {\n /**\n * @description Capsule chart data\n * @type {Array<Object>}\n * @default data = []\n * @example data = [{ name: 'foo1', value: 100 }, { name: 'foo2', value: 100 }]\n */\n data: [],\n /**\n * @description Colors (hex|rgb|rgba|color keywords)\n * @type {Array<String>}\n * @default color = ['#37a2da', '#32c5e9', '#67e0e3', '#9fe6b8', '#ffdb5c', '#ff9f7f', '#fb7293']\n * @example color = ['#000', 'rgb(0, 0, 0)', 'rgba(0, 0, 0, 1)', 'red']\n */\n colors: ['#37a2da', '#32c5e9', '#67e0e3', '#9fe6b8', '#ffdb5c', '#ff9f7f', '#fb7293'],\n /**\n * @description Chart unit\n * @type {String}\n * @default unit = ''\n */\n unit: ''\n },\n\n mergedConfig: null,\n\n capsuleLength: [],\n labelData: []\n }\n },\n watch: {\n config () {\n const { calcData } = this\n\n calcData()\n }\n },\n methods: {\n calcData () {\n const { mergeConfig, calcCapsuleLengthAndLabelData } = this\n\n mergeConfig()\n\n calcCapsuleLengthAndLabelData()\n },\n mergeConfig () {\n let { config, defaultConfig } = this\n\n this.mergedConfig = deepMerge(deepClone(defaultConfig, true), config || {})\n },\n calcCapsuleLengthAndLabelData () {\n const { data } = this.mergedConfig\n\n if (!data.length) return\n\n const capsuleValue = data.map(({ value }) => value)\n\n const maxValue = Math.max(...capsuleValue)\n\n this.capsuleLength = capsuleValue.map(v => maxValue ? v / maxValue : 0)\n\n const oneFifth = maxValue / 5\n\n this.labelData = new Array(6).fill(0).map((v, i) => Math.ceil(i * oneFifth))\n }\n },\n mounted () {\n const { calcData } = this\n\n calcData()\n }\n}\n</script>"],"sourceRoot":"node_modules/@jiaminghi/data-view/lib/components/capsuleChart/src"}]} |