{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\@jiaminghi\\data-view\\lib\\components\\decoration3\\src\\main.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\@jiaminghi\\data-view\\lib\\components\\decoration3\\src\\main.vue","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport autoResize from '../../../mixin/autoResize'\n\nimport { deepMerge } from '@jiaminghi/charts/lib/util/index'\n\nimport { deepClone } from '@jiaminghi/c-render/lib/plugin/util'\n\nexport default {\n  name: 'DvDecoration3',\n  mixins: [autoResize],\n  props: {\n    color: {\n      type: Array,\n      default: () => ([])\n    }\n  },\n  data () {\n    const pointSideLength = 7\n\n    return {\n      ref: 'decoration-3',\n\n      svgWH: [300, 35],\n\n      svgScale: [1, 1],\n\n      rowNum: 2,\n      rowPoints: 25,\n\n      pointSideLength,\n      halfPointSideLength: pointSideLength / 2,\n\n      points: [],\n\n      defaultColor: ['#7acaec', 'transparent'],\n\n      mergedColor: []\n    }\n  },\n  watch: {\n    color () {\n      const { mergeColor } = this\n\n      mergeColor()\n    }\n  },\n  methods: {\n    afterAutoResizeMixinInit () {\n      const { calcSVGData } = this\n\n      calcSVGData()\n    },\n    calcSVGData () {\n      const { calcPointsPosition, calcScale } = this\n\n      calcPointsPosition()\n\n      calcScale()\n    },\n    calcPointsPosition () {\n      const { svgWH, rowNum, rowPoints } = this\n\n      const [w, h] = svgWH\n\n      const horizontalGap = w / (rowPoints + 1)\n      const verticalGap = h / (rowNum + 1)\n\n      let points = new Array(rowNum).fill(0).map((foo, i) =>\n        new Array(rowPoints).fill(0).map((foo, j) => [\n          horizontalGap * (j + 1), verticalGap * (i + 1)\n        ]))\n\n      this.points = points.reduce((all, item) => [...all, ...item], [])\n    },\n    calcScale () {\n      const { width, height, svgWH } = this\n\n      const [w, h] = svgWH\n\n      this.svgScale = [width / w, height / h]\n    },\n    onResize () {\n      const { calcSVGData } = this\n\n      calcSVGData()\n    },\n    mergeColor () {\n      const { color, defaultColor } = this\n\n      this.mergedColor = deepMerge(deepClone(defaultColor, true), color || [])\n    }\n  },\n  mounted () {\n    const { mergeColor } = this\n\n    mergeColor()\n  }\n}\n",null]}