@ecan-bi/datav 1.1.22 → 1.1.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/dist/index.es.js +1 -1
  2. package/dist/index.umd.js +1 -1
  3. package/dist/style.css +2 -1
  4. package/es/common/skeleton/Skeleton.vue.js.map +1 -1
  5. package/es/common/skeleton/Skeleton.vue2.js.map +1 -1
  6. package/es/common/spin/Spin.vue.js.map +1 -1
  7. package/es/common/spin/Spin.vue2.js.map +1 -1
  8. package/es/container/border/Border.vue.js.map +1 -1
  9. package/es/container/border/Border.vue2.js.map +1 -1
  10. package/es/container/modal/Modal.vue.js.map +1 -1
  11. package/es/container/modal/Modal.vue2.js.map +1 -1
  12. package/es/container/tabs/Tabs.vue.js.map +1 -1
  13. package/es/container/tabs/Tabs.vue2.js.map +1 -1
  14. package/es/control/button/Button.vue.js.map +1 -1
  15. package/es/control/button/Button.vue2.js.map +1 -1
  16. package/es/control/checkbox/Checkbox.vue.js.map +1 -1
  17. package/es/control/checkbox/Checkbox.vue2.js.map +1 -1
  18. package/es/control/date-picker/DatePicker.vue.js.map +1 -1
  19. package/es/control/date-picker/DatePicker.vue2.js.map +1 -1
  20. package/es/control/input/Input.vue.js.map +1 -1
  21. package/es/control/input/Input.vue2.js.map +1 -1
  22. package/es/control/range-picker/RangePicker.vue.js.map +1 -1
  23. package/es/control/range-picker/RangePicker.vue2.js.map +1 -1
  24. package/es/control/select/Select.vue.js.map +1 -1
  25. package/es/control/select/Select.vue2.js.map +1 -1
  26. package/es/graph/bar/Bar.vue.js.map +1 -1
  27. package/es/graph/bar/Bar.vue2.js.map +1 -1
  28. package/es/graph/combo-graph/ComboGraph.vue.js.map +1 -1
  29. package/es/graph/combo-graph/ComboGraph.vue2.js.map +1 -1
  30. package/es/graph/custom-graph/CustomGraph.vue.js.map +1 -1
  31. package/es/graph/custom-graph/CustomGraph.vue2.js.map +1 -1
  32. package/es/graph/line/Line.vue.js.map +1 -1
  33. package/es/graph/line/Line.vue2.js.map +1 -1
  34. package/es/graph/pie/Pie.vue.js.map +1 -1
  35. package/es/graph/pie/Pie.vue2.js.map +1 -1
  36. package/es/graph/scatter/Scatter.vue.js.map +1 -1
  37. package/es/graph/scatter/Scatter.vue2.js.map +1 -1
  38. package/es/index.js +0 -11218
  39. package/es/map/map/Map.vue.js.map +1 -1
  40. package/es/map/map/Map.vue2.js.map +1 -1
  41. package/es/media/iframe/Iframe.vue.js.map +1 -1
  42. package/es/media/iframe/Iframe.vue2.js.map +1 -1
  43. package/es/media/image/Image.vue.js.map +1 -1
  44. package/es/media/image/Image.vue2.js.map +1 -1
  45. package/es/setting/page-config/PageConfig.vue.js.map +1 -1
  46. package/es/setting/page-config/PageConfig.vue2.js.map +1 -1
  47. package/es/setting/provider-config/ProviderConfig.vue.js.map +1 -1
  48. package/es/setting/provider-config/ProviderConfig.vue2.js.map +1 -1
  49. package/es/table/table/Table.vue.js.map +1 -1
  50. package/es/table/table/Table.vue2.js.map +1 -1
  51. package/es/text/list/List.vue.js.map +1 -1
  52. package/es/text/list/List.vue2.js.map +1 -1
  53. package/es/text/proportion/Proportion.vue.js.map +1 -1
  54. package/es/text/proportion/Proportion.vue2.js.map +1 -1
  55. package/es/text/scroll-text/ScrollText.vue2.js.map +1 -1
  56. package/es/text/text/Text.vue.js.map +1 -1
  57. package/es/text/text/Text.vue2.js.map +1 -1
  58. package/es/text/time-display/TimeDisplay.vue.js.map +1 -1
  59. package/es/text/time-display/TimeDisplay.vue2.js.map +1 -1
  60. package/lib/common/skeleton/Skeleton.vue.js.map +1 -1
  61. package/lib/common/skeleton/Skeleton.vue2.js.map +1 -1
  62. package/lib/common/spin/Spin.vue.js.map +1 -1
  63. package/lib/common/spin/Spin.vue2.js.map +1 -1
  64. package/lib/container/border/Border.vue.js.map +1 -1
  65. package/lib/container/border/Border.vue2.js.map +1 -1
  66. package/lib/container/modal/Modal.vue.js.map +1 -1
  67. package/lib/container/modal/Modal.vue2.js.map +1 -1
  68. package/lib/container/tabs/Tabs.vue.js.map +1 -1
  69. package/lib/container/tabs/Tabs.vue2.js.map +1 -1
  70. package/lib/control/button/Button.vue.js.map +1 -1
  71. package/lib/control/button/Button.vue2.js.map +1 -1
  72. package/lib/control/checkbox/Checkbox.vue.js.map +1 -1
  73. package/lib/control/checkbox/Checkbox.vue2.js.map +1 -1
  74. package/lib/control/date-picker/DatePicker.vue.js.map +1 -1
  75. package/lib/control/date-picker/DatePicker.vue2.js.map +1 -1
  76. package/lib/control/input/Input.vue.js.map +1 -1
  77. package/lib/control/input/Input.vue2.js.map +1 -1
  78. package/lib/control/range-picker/RangePicker.vue.js.map +1 -1
  79. package/lib/control/range-picker/RangePicker.vue2.js.map +1 -1
  80. package/lib/control/select/Select.vue.js.map +1 -1
  81. package/lib/control/select/Select.vue2.js.map +1 -1
  82. package/lib/graph/bar/Bar.vue.js.map +1 -1
  83. package/lib/graph/bar/Bar.vue2.js.map +1 -1
  84. package/lib/graph/combo-graph/ComboGraph.vue.js.map +1 -1
  85. package/lib/graph/combo-graph/ComboGraph.vue2.js.map +1 -1
  86. package/lib/graph/custom-graph/CustomGraph.vue.js.map +1 -1
  87. package/lib/graph/custom-graph/CustomGraph.vue2.js.map +1 -1
  88. package/lib/graph/line/Line.vue.js.map +1 -1
  89. package/lib/graph/line/Line.vue2.js.map +1 -1
  90. package/lib/graph/pie/Pie.vue.js.map +1 -1
  91. package/lib/graph/pie/Pie.vue2.js.map +1 -1
  92. package/lib/graph/scatter/Scatter.vue.js.map +1 -1
  93. package/lib/graph/scatter/Scatter.vue2.js.map +1 -1
  94. package/lib/index.js +0 -11218
  95. package/lib/map/map/Map.vue.js.map +1 -1
  96. package/lib/map/map/Map.vue2.js.map +1 -1
  97. package/lib/media/iframe/Iframe.vue.js.map +1 -1
  98. package/lib/media/iframe/Iframe.vue2.js.map +1 -1
  99. package/lib/media/image/Image.vue.js.map +1 -1
  100. package/lib/media/image/Image.vue2.js.map +1 -1
  101. package/lib/setting/page-config/PageConfig.vue.js.map +1 -1
  102. package/lib/setting/page-config/PageConfig.vue2.js.map +1 -1
  103. package/lib/setting/provider-config/ProviderConfig.vue.js.map +1 -1
  104. package/lib/setting/provider-config/ProviderConfig.vue2.js.map +1 -1
  105. package/lib/style.css +197 -0
  106. package/lib/table/table/Table.vue.js.map +1 -1
  107. package/lib/table/table/Table.vue2.js.map +1 -1
  108. package/lib/text/list/List.vue.js.map +1 -1
  109. package/lib/text/list/List.vue2.js.map +1 -1
  110. package/lib/text/proportion/Proportion.vue.js.map +1 -1
  111. package/lib/text/proportion/Proportion.vue2.js.map +1 -1
  112. package/lib/text/scroll-text/ScrollText.vue2.js.map +1 -1
  113. package/lib/text/text/Text.vue.js.map +1 -1
  114. package/lib/text/text/Text.vue2.js.map +1 -1
  115. package/lib/text/time-display/TimeDisplay.vue.js.map +1 -1
  116. package/lib/text/time-display/TimeDisplay.vue2.js.map +1 -1
  117. package/package.json +9 -6
@@ -1 +1 @@
1
- {"version":3,"file":"Map.vue.js","sources":["../../../src/map/map/Map.vue"],"sourcesContent":["<template>\n <div class=\"ecan-map\" :style=\"style\">\n <echarts\n v-if=\"isLoadedData\"\n :option=\"option\"\n :update-options=\"{ notMerge: true }\"\n autoresize\n />\n <img\n ref=\"geoBackgroundImageRef\"\n v-show=\"false\"\n :src=\"myGeoBackgroundImage\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, watch, ref, unref } from 'vue'\nimport { mapComponentProps } from './props'\nimport Echarts from '@/common/echarts'\nimport { use, registerMap } from 'echarts/core'\nimport { CanvasRenderer } from 'echarts/renderers'\nimport { MapChart, ScatterChart } from 'echarts/charts'\nimport { VisualMapComponent, TooltipComponent, GraphicComponent } from 'echarts/components'\nimport request from '@/utils/request'\nimport { usePickComponentStyle, useImagePath } from '../../hooks'\nuse([\n CanvasRenderer,\n MapChart,\n ScatterChart,\n VisualMapComponent,\n TooltipComponent,\n GraphicComponent\n])\nexport default defineComponent({\n name: 'EcanMap',\n components: {\n Echarts\n },\n props: {\n ...mapComponentProps\n },\n setup (props) {\n const style = usePickComponentStyle(props, ['backgroundImage'])\n const geoBackgroundImageRef = ref()\n const myGeoBackgroundImage = computed(() => useImagePath(props.geoBackgroundImage as string))\n const myBackgroundImage = computed(() => useImagePath(props.backgroundImage as string))\n const areaColor = computed(() => {\n const backgroundImage = props.geoBackgroundImage as string\n if (backgroundImage) {\n return {\n image: unref(geoBackgroundImageRef),\n repeat: props.geoBackgroundImageRepeat\n }\n }\n return props.geoItemStyleAreaColor\n })\n const symbol = computed(() => {\n const symbolImage = props.symbolImage as string\n if (props.symbolImage) {\n return 'image://' + useImagePath(symbolImage)\n }\n return 'circle'\n })\n const option = computed(() => {\n const geoCenter = props.geoCenter\n let center: undefined | Array<any>\n if (typeof geoCenter === 'string' && geoCenter !== '') {\n center = geoCenter.split(',')\n }\n return {\n // backgroundColor: unref(background),\n tooltip: {\n show: true\n },\n graphic: [\n { // 一个图形元素,类型是 image。\n type: 'image',\n style: {\n width: parseFloat(props.width as string),\n height: parseFloat(props.height as string),\n image: unref(myBackgroundImage)\n },\n top: 'center'\n }\n ],\n geo: {\n zoom: props.geoZoom,\n roam: props.geoRoam,\n center,\n map: 'map',\n tooltip: {\n show: false\n },\n label: { // 地图上显示文字属性\n show: props.geoLabelShow,\n color: props.geoLabelColor,\n fontSize: props.geoLabelFontSize\n },\n itemStyle: { // 地图上板块属性\n areaColor: unref(areaColor),\n borderColor: props.geoItemStyleBorderColor,\n borderWidth: props.geoItemStyleBorderWidth,\n shadowColor: props.geoItemStyleShadowColor,\n shadowBlur: props.geoItemStyleShadowBlur,\n shadowOffsetX: props.geoItemStyleShadowOffsetX,\n shadowOffsetY: props.geoItemStyleShadowOffsetY\n },\n emphasis: { // 当鼠标悬停的时候\n disabled: props.geoEmphasisDisabled,\n label: {\n color: props.geoEmphasisLabelColor\n },\n itemStyle: {\n areaColor: props.geoEmphasisItemStyleAreaColor,\n borderColor: props.geoEmphasisItemStyleBorderColor\n }\n }\n },\n series: [\n {\n type: 'scatter',\n coordinateSystem: 'geo',\n itemStyle: {\n color: props.itemStyleColor\n },\n symbol: unref(symbol),\n symbolSize: [props.symbolWidth, props.symbolHeight],\n label: {\n show: props.labelShow,\n fontSize: props.labelFontSize,\n formatter: props.labelFormatter,\n color: props.labelColor\n },\n tooltip: {\n show: props.tooltipShow,\n formatter: props.tooltipFormatter,\n textStyle: {\n color: props.tooltipTextStyleColor\n }\n },\n data: props.data\n }\n ]\n }\n })\n // const echarts = ref()\n const isLoadedData = ref(false)\n const handleRegisterMap = async () => {\n const mapJson = props.mapJson as { name: string, path: string }\n if (mapJson != null && mapJson.path) {\n // @ts-ignore\n const res = await request(window?.config?.uploadPath + mapJson.path)\n registerMap('map', (res?.data || {}) as any)\n }\n isLoadedData.value = true\n }\n watch(() => props.mapJson, () => {\n handleRegisterMap()\n }, {\n immediate: true,\n deep: true\n })\n return {\n option,\n style,\n isLoadedData,\n geoBackgroundImageRef,\n myGeoBackgroundImage\n }\n }\n})\n</script>\n\n<style scoped lang=\"less\">\n.ecan-map {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n</style>\n"],"names":["_resolveComponent","_openBlock","_createElementBlock","_normalizeStyle","_createBlock","_createCommentVNode","_withDirectives","_createElementVNode"],"mappings":";;;;;;;;6BACEA,qBAYM,SAAA;SAZsBC,IAAO,UAAA,GAAAC,IAAA,mBAAA,OAAA;AAAA,IAAA,OAAA;AAAA,WAEzBC,IAAAA,eAAY,KAAA,KAAA;AAAA,EAAA,GAAA;AAAA,0CACHC,IAAAA,YAAA,oBAAA;AAAA,MACd,KAAA;AAAA,MACD,QAAA,KAAA;AAAA,MAAA,kBAAA,EAAA,UAAA,KAAA;AAAA;IAEF,GAAA,MAAA,GAAA,CAAA,QAAA,CAAA,KACEC,uBAAI,IAAuB,IAAA;AAAA,IAAAC,IAAA,eAErBC,IAAoB,mBAAA,OAAA;AAAA,MAAA,KAAA;AAAA,MADlB,KAAA,KAAA;AAAA,IAAA,GAAA,MAAA,GAAA,UAAA,GAAA;AAAA;;;;;;"}
1
+ {"version":3,"file":"Map.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Map.vue2.js","sources":["../../../src/map/map/Map.vue"],"sourcesContent":["<template>\n <div class=\"ecan-map\" :style=\"style\">\n <echarts\n v-if=\"isLoadedData\"\n :option=\"option\"\n :update-options=\"{ notMerge: true }\"\n autoresize\n />\n <img\n ref=\"geoBackgroundImageRef\"\n v-show=\"false\"\n :src=\"myGeoBackgroundImage\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, watch, ref, unref } from 'vue'\nimport { mapComponentProps } from './props'\nimport Echarts from '@/common/echarts'\nimport { use, registerMap } from 'echarts/core'\nimport { CanvasRenderer } from 'echarts/renderers'\nimport { MapChart, ScatterChart } from 'echarts/charts'\nimport { VisualMapComponent, TooltipComponent, GraphicComponent } from 'echarts/components'\nimport request from '@/utils/request'\nimport { usePickComponentStyle, useImagePath } from '../../hooks'\nuse([\n CanvasRenderer,\n MapChart,\n ScatterChart,\n VisualMapComponent,\n TooltipComponent,\n GraphicComponent\n])\nexport default defineComponent({\n name: 'EcanMap',\n components: {\n Echarts\n },\n props: {\n ...mapComponentProps\n },\n setup (props) {\n const style = usePickComponentStyle(props, ['backgroundImage'])\n const geoBackgroundImageRef = ref()\n const myGeoBackgroundImage = computed(() => useImagePath(props.geoBackgroundImage as string))\n const myBackgroundImage = computed(() => useImagePath(props.backgroundImage as string))\n const areaColor = computed(() => {\n const backgroundImage = props.geoBackgroundImage as string\n if (backgroundImage) {\n return {\n image: unref(geoBackgroundImageRef),\n repeat: props.geoBackgroundImageRepeat\n }\n }\n return props.geoItemStyleAreaColor\n })\n const symbol = computed(() => {\n const symbolImage = props.symbolImage as string\n if (props.symbolImage) {\n return 'image://' + useImagePath(symbolImage)\n }\n return 'circle'\n })\n const option = computed(() => {\n const geoCenter = props.geoCenter\n let center: undefined | Array<any>\n if (typeof geoCenter === 'string' && geoCenter !== '') {\n center = geoCenter.split(',')\n }\n return {\n // backgroundColor: unref(background),\n tooltip: {\n show: true\n },\n graphic: [\n { // 一个图形元素,类型是 image。\n type: 'image',\n style: {\n width: parseFloat(props.width as string),\n height: parseFloat(props.height as string),\n image: unref(myBackgroundImage)\n },\n top: 'center'\n }\n ],\n geo: {\n zoom: props.geoZoom,\n roam: props.geoRoam,\n center,\n map: 'map',\n tooltip: {\n show: false\n },\n label: { // 地图上显示文字属性\n show: props.geoLabelShow,\n color: props.geoLabelColor,\n fontSize: props.geoLabelFontSize\n },\n itemStyle: { // 地图上板块属性\n areaColor: unref(areaColor),\n borderColor: props.geoItemStyleBorderColor,\n borderWidth: props.geoItemStyleBorderWidth,\n shadowColor: props.geoItemStyleShadowColor,\n shadowBlur: props.geoItemStyleShadowBlur,\n shadowOffsetX: props.geoItemStyleShadowOffsetX,\n shadowOffsetY: props.geoItemStyleShadowOffsetY\n },\n emphasis: { // 当鼠标悬停的时候\n disabled: props.geoEmphasisDisabled,\n label: {\n color: props.geoEmphasisLabelColor\n },\n itemStyle: {\n areaColor: props.geoEmphasisItemStyleAreaColor,\n borderColor: props.geoEmphasisItemStyleBorderColor\n }\n }\n },\n series: [\n {\n type: 'scatter',\n coordinateSystem: 'geo',\n itemStyle: {\n color: props.itemStyleColor\n },\n symbol: unref(symbol),\n symbolSize: [props.symbolWidth, props.symbolHeight],\n label: {\n show: props.labelShow,\n fontSize: props.labelFontSize,\n formatter: props.labelFormatter,\n color: props.labelColor\n },\n tooltip: {\n show: props.tooltipShow,\n formatter: props.tooltipFormatter,\n textStyle: {\n color: props.tooltipTextStyleColor\n }\n },\n data: props.data\n }\n ]\n }\n })\n // const echarts = ref()\n const isLoadedData = ref(false)\n const handleRegisterMap = async () => {\n const mapJson = props.mapJson as { name: string, path: string }\n if (mapJson != null && mapJson.path) {\n // @ts-ignore\n const res = await request(window?.config?.uploadPath + mapJson.path)\n registerMap('map', (res?.data || {}) as any)\n }\n isLoadedData.value = true\n }\n watch(() => props.mapJson, () => {\n handleRegisterMap()\n }, {\n immediate: true,\n deep: true\n })\n return {\n option,\n style,\n isLoadedData,\n geoBackgroundImageRef,\n myGeoBackgroundImage\n }\n }\n})\n</script>\n\n<style scoped lang=\"less\">\n.ecan-map {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n</style>\n"],"names":["use","CanvasRenderer","MapChart","ScatterChart","VisualMapComponent","TooltipComponent","GraphicComponent","defineComponent","Echarts","mapComponentProps","props","usePickComponentStyle","ref","computed","useImagePath","unref","request","registerMap","watch"],"mappings":"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"}
1
+ {"version":3,"file":"Map.vue2.js","sources":["../../../src/map/map/Map.vue?vue&type=script&lang.ts"],"sourcesContent":["\nimport { computed, defineComponent, watch, ref, unref } from 'vue'\nimport { mapComponentProps } from './props'\nimport Echarts from '@/common/echarts'\nimport { use, registerMap } from 'echarts/core'\nimport { CanvasRenderer } from 'echarts/renderers'\nimport { MapChart, ScatterChart } from 'echarts/charts'\nimport { VisualMapComponent, TooltipComponent, GraphicComponent } from 'echarts/components'\nimport request from '@/utils/request'\nimport { usePickComponentStyle, useImagePath } from '../../hooks'\nuse([\n CanvasRenderer,\n MapChart,\n ScatterChart,\n VisualMapComponent,\n TooltipComponent,\n GraphicComponent\n])\nexport default defineComponent({\n name: 'EcanMap',\n components: {\n Echarts\n },\n props: {\n ...mapComponentProps\n },\n setup (props) {\n const style = usePickComponentStyle(props, ['backgroundImage'])\n const geoBackgroundImageRef = ref()\n const myGeoBackgroundImage = computed(() => useImagePath(props.geoBackgroundImage as string))\n const myBackgroundImage = computed(() => useImagePath(props.backgroundImage as string))\n const areaColor = computed(() => {\n const backgroundImage = props.geoBackgroundImage as string\n if (backgroundImage) {\n return {\n image: unref(geoBackgroundImageRef),\n repeat: props.geoBackgroundImageRepeat\n }\n }\n return props.geoItemStyleAreaColor\n })\n const symbol = computed(() => {\n const symbolImage = props.symbolImage as string\n if (props.symbolImage) {\n return 'image://' + useImagePath(symbolImage)\n }\n return 'circle'\n })\n const option = computed(() => {\n const geoCenter = props.geoCenter\n let center: undefined | Array<any>\n if (typeof geoCenter === 'string' && geoCenter !== '') {\n center = geoCenter.split(',')\n }\n return {\n // backgroundColor: unref(background),\n tooltip: {\n show: true\n },\n graphic: [\n { // 一个图形元素,类型是 image。\n type: 'image',\n style: {\n width: parseFloat(props.width as string),\n height: parseFloat(props.height as string),\n image: unref(myBackgroundImage)\n },\n top: 'center'\n }\n ],\n geo: {\n zoom: props.geoZoom,\n roam: props.geoRoam,\n center,\n map: 'map',\n tooltip: {\n show: false\n },\n label: { // 地图上显示文字属性\n show: props.geoLabelShow,\n color: props.geoLabelColor,\n fontSize: props.geoLabelFontSize\n },\n itemStyle: { // 地图上板块属性\n areaColor: unref(areaColor),\n borderColor: props.geoItemStyleBorderColor,\n borderWidth: props.geoItemStyleBorderWidth,\n shadowColor: props.geoItemStyleShadowColor,\n shadowBlur: props.geoItemStyleShadowBlur,\n shadowOffsetX: props.geoItemStyleShadowOffsetX,\n shadowOffsetY: props.geoItemStyleShadowOffsetY\n },\n emphasis: { // 当鼠标悬停的时候\n disabled: props.geoEmphasisDisabled,\n label: {\n color: props.geoEmphasisLabelColor\n },\n itemStyle: {\n areaColor: props.geoEmphasisItemStyleAreaColor,\n borderColor: props.geoEmphasisItemStyleBorderColor\n }\n }\n },\n series: [\n {\n type: 'scatter',\n coordinateSystem: 'geo',\n itemStyle: {\n color: props.itemStyleColor\n },\n symbol: unref(symbol),\n symbolSize: [props.symbolWidth, props.symbolHeight],\n label: {\n show: props.labelShow,\n fontSize: props.labelFontSize,\n formatter: props.labelFormatter,\n color: props.labelColor\n },\n tooltip: {\n show: props.tooltipShow,\n formatter: props.tooltipFormatter,\n textStyle: {\n color: props.tooltipTextStyleColor\n }\n },\n data: props.data\n }\n ]\n }\n })\n // const echarts = ref()\n const isLoadedData = ref(false)\n const handleRegisterMap = async () => {\n const mapJson = props.mapJson as { name: string, path: string }\n if (mapJson != null && mapJson.path) {\n // @ts-ignore\n const res = await request(window?.config?.uploadPath + mapJson.path)\n registerMap('map', (res?.data || {}) as any)\n }\n isLoadedData.value = true\n }\n watch(() => props.mapJson, () => {\n handleRegisterMap()\n }, {\n immediate: true,\n deep: true\n })\n return {\n option,\n style,\n isLoadedData,\n geoBackgroundImageRef,\n myGeoBackgroundImage\n }\n }\n})\n"],"names":["use","CanvasRenderer","MapChart","ScatterChart","VisualMapComponent","TooltipComponent","GraphicComponent","defineComponent","Echarts","mapComponentProps","props","usePickComponentStyle","ref","computed","useImagePath","unref","request","registerMap","watch"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Iframe.vue.js","sources":["../../../src/media/iframe/Iframe.vue"],"sourcesContent":["<template>\n <iframe\n :src=\"myLink\"\n :style=\"style\"\n v-if=\"myLink\"\n />\n <div\n class=\"iframe-placeholder\"\n :style=\"style\"\n v-else\n >\n 请填写网页链接\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, computed, inject, unref } from 'vue'\nimport { usePickComponentStyle, useVariablesInText } from '@/hooks'\nimport { iframeComponentProps } from '@/media/iframe/props'\nimport { GLOBAL_CONFIG, ERD_URL } from '@/utils/constant'\nexport default defineComponent({\n name: 'EcanIframe',\n props: {\n ...iframeComponentProps\n },\n setup (props) {\n const style = usePickComponentStyle(props)\n const { contextRequestUrl } = inject(GLOBAL_CONFIG, {\n contextRequestUrl: ''\n })\n const myLink = computed(() => {\n let link = useVariablesInText(props.link as string)\n if (props.linkType === 'erd' && link != null) {\n let ctxErdUrl = unref(contextRequestUrl)\n if (ctxErdUrl[ctxErdUrl.length - 1] === '/') {\n ctxErdUrl += 'erdReport'\n } else {\n ctxErdUrl += '/erdReport'\n }\n const erdUrl = ERD_URL || ctxErdUrl\n link = `${erdUrl}?_t=0&uid=${link}`\n }\n return link\n })\n return {\n style,\n myLink\n }\n }\n})\n</script>\n\n<style scoped lang=\"less\">\n.iframe-placeholder {\n display: grid;\n place-content: center;\n border: 1px solid #d9d9d9;\n font-size: 16px;\n color: #333;\n width: 100%;\n overflow: hidden;\n}\n</style>\n"],"names":["_createElementBlock","_openBlock","_normalizeStyle"],"mappings":";;;;;;;qBACE,MAIE,QAAA,QAAA,QAAA,OAAA,UAAA;yCAHYA,IAAAA,mBAAA,UAAA;AAAA,IACX,KAAK;AAAA,IAAA,KAAA,KAAA;AAAA,8BAGR,KAMM,KAAA;AAAA,EAAA,GAAA,MAAA,IAAA,UAAA,MAAAC,IAAAA,UALsB,GAAAD,IAAA,mBAAA,OAAA;AAAA,IACzB,KAAK;AAAA,IAEP,OAAA;AAAA,IAAA,OAAAE,IAAAA,eAAA,KAAA,KAAA;AAAA;;;;"}
1
+ {"version":3,"file":"Iframe.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Iframe.vue2.js","sources":["../../../src/media/iframe/Iframe.vue"],"sourcesContent":["<template>\n <iframe\n :src=\"myLink\"\n :style=\"style\"\n v-if=\"myLink\"\n />\n <div\n class=\"iframe-placeholder\"\n :style=\"style\"\n v-else\n >\n 请填写网页链接\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, computed, inject, unref } from 'vue'\nimport { usePickComponentStyle, useVariablesInText } from '@/hooks'\nimport { iframeComponentProps } from '@/media/iframe/props'\nimport { GLOBAL_CONFIG, ERD_URL } from '@/utils/constant'\nexport default defineComponent({\n name: 'EcanIframe',\n props: {\n ...iframeComponentProps\n },\n setup (props) {\n const style = usePickComponentStyle(props)\n const { contextRequestUrl } = inject(GLOBAL_CONFIG, {\n contextRequestUrl: ''\n })\n const myLink = computed(() => {\n let link = useVariablesInText(props.link as string)\n if (props.linkType === 'erd' && link != null) {\n let ctxErdUrl = unref(contextRequestUrl)\n if (ctxErdUrl[ctxErdUrl.length - 1] === '/') {\n ctxErdUrl += 'erdReport'\n } else {\n ctxErdUrl += '/erdReport'\n }\n const erdUrl = ERD_URL || ctxErdUrl\n link = `${erdUrl}?_t=0&uid=${link}`\n }\n return link\n })\n return {\n style,\n myLink\n }\n }\n})\n</script>\n\n<style scoped lang=\"less\">\n.iframe-placeholder {\n display: grid;\n place-content: center;\n border: 1px solid #d9d9d9;\n font-size: 16px;\n color: #333;\n width: 100%;\n overflow: hidden;\n}\n</style>\n"],"names":["defineComponent","iframeComponentProps","props","usePickComponentStyle","inject","GLOBAL_CONFIG","computed","useVariablesInText","unref","ERD_URL"],"mappings":";;;;;;;AAoBA,MAAA,YAAeA,oBAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,GAAGC,MAAA;AAAA,EACL;AAAA,EACA,MAAOC,QAAO;AACN,UAAA,QAAQC,4CAAsBD,MAAK;AACzC,UAAM,EAAE,kBAAA,IAAsBE,IAAA,OAAOC,wBAAe;AAAA,MAClD,mBAAmB;AAAA,IAAA,CACpB;AACK,UAAA,SAASC,IAAAA,SAAS,MAAM;AACxB,UAAA,OAAOC,mBAAAA,mBAAmBL,OAAM,IAAc;AAClD,UAAIA,OAAM,aAAa,SAAS,QAAQ,MAAM;AACxC,YAAA,YAAYM,UAAM,iBAAiB;AACvC,YAAI,UAAU,UAAU,SAAS,CAAC,MAAM,KAAK;AAC9B,uBAAA;AAAA,QAAA,OACR;AACQ,uBAAA;AAAA,QACf;AACA,cAAM,SAASC,SAAW,WAAA;AAC1B,eAAO,GAAG,mBAAmB;AAAA,MAC/B;AACO,aAAA;AAAA,IAAA,CACR;AACM,WAAA;AAAA,MACL;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;"}
1
+ {"version":3,"file":"Iframe.vue2.js","sources":["../../../src/media/iframe/Iframe.vue?vue&type=script&lang.ts"],"sourcesContent":["\nimport { defineComponent, computed, inject, unref } from 'vue'\nimport { usePickComponentStyle, useVariablesInText } from '@/hooks'\nimport { iframeComponentProps } from '@/media/iframe/props'\nimport { GLOBAL_CONFIG, ERD_URL } from '@/utils/constant'\nexport default defineComponent({\n name: 'EcanIframe',\n props: {\n ...iframeComponentProps\n },\n setup (props) {\n const style = usePickComponentStyle(props)\n const { contextRequestUrl } = inject(GLOBAL_CONFIG, {\n contextRequestUrl: ''\n })\n const myLink = computed(() => {\n let link = useVariablesInText(props.link as string)\n if (props.linkType === 'erd' && link != null) {\n let ctxErdUrl = unref(contextRequestUrl)\n if (ctxErdUrl[ctxErdUrl.length - 1] === '/') {\n ctxErdUrl += 'erdReport'\n } else {\n ctxErdUrl += '/erdReport'\n }\n const erdUrl = ERD_URL || ctxErdUrl\n link = `${erdUrl}?_t=0&uid=${link}`\n }\n return link\n })\n return {\n style,\n myLink\n }\n }\n})\n"],"names":["defineComponent","iframeComponentProps","props","usePickComponentStyle","inject","GLOBAL_CONFIG","computed","useVariablesInText","unref","ERD_URL"],"mappings":";;;;;;;AAKA,MAAA,YAAeA,oBAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,GAAGC,MAAA;AAAA,EACL;AAAA,EACA,MAAOC,QAAO;AACN,UAAA,QAAQC,4CAAsBD,MAAK;AACzC,UAAM,EAAE,kBAAA,IAAsBE,IAAA,OAAOC,wBAAe;AAAA,MAClD,mBAAmB;AAAA,IAAA,CACpB;AACK,UAAA,SAASC,IAAAA,SAAS,MAAM;AACxB,UAAA,OAAOC,mBAAAA,mBAAmBL,OAAM,IAAc;AAClD,UAAIA,OAAM,aAAa,SAAS,QAAQ,MAAM;AACxC,YAAA,YAAYM,UAAM,iBAAiB;AACvC,YAAI,UAAU,UAAU,SAAS,CAAC,MAAM,KAAK;AAC9B,uBAAA;AAAA,QAAA,OACR;AACQ,uBAAA;AAAA,QACf;AACA,cAAM,SAASC,SAAW,WAAA;AAC1B,eAAO,GAAG,mBAAmB;AAAA,MAC/B;AACO,aAAA;AAAA,IAAA,CACR;AACM,WAAA;AAAA,MACL;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Image.vue.js","sources":["../../../src/media/image/Image.vue"],"sourcesContent":["<template>\n <img\n :style=\"style\"\n :src=\"myImgUrl\"\n v-if=\"myImgUrl !== ''\"\n @click=\"onClick\"\n />\n <div\n class=\"image-placeholder\"\n :style=\"style\"\n v-else\n >\n 请上传图片\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, inject, unref } from 'vue'\nimport { imageComponentProps } from './props'\nimport { useImagePath, usePickComponentStyle, usePageUrl, useVariablesInText } from '@/hooks'\nimport { GLOBAL_CONFIG } from '@/utils/constant'\nexport default defineComponent({\n name: 'EcanImage',\n props: {\n ...imageComponentProps\n },\n setup (props) {\n const style = usePickComponentStyle(props)\n const myImgUrl = computed(() => useImagePath(props.imgUrl as string))\n const { pageMode } = inject(GLOBAL_CONFIG, {\n pageMode: 'normal'\n })\n const onClick = () => {\n // 空链接、空页面直接 return\n if (!props.linkPage && !props.href) return\n const linkPage = (props.linkPage || '') as string\n const pageUrl = usePageUrl(unref(pageMode), linkPage)\n // 优先使用外部链接,再使用url\n const href = props.href as string\n let url = href || pageUrl\n url = useVariablesInText(url)\n const target = props.target\n if (target == null || target === '') return\n if (target !== 'event') {\n window.open(url, '_' + (target as string))\n } else {\n window.parent.postMessage({\n type: 'openPage',\n url: href\n }, '*')\n }\n }\n return {\n style,\n myImgUrl,\n onClick\n }\n }\n})\n</script>\n\n<style scoped lang=\"less\">\n.image-placeholder {\n display: grid;\n place-content: center;\n border: 1px solid #d9d9d9;\n font-size: 16px;\n color: #333;\n width: 100%;\n overflow: hidden;\n}\n</style>\n"],"names":["_createElementBlock","_normalizeStyle","_openBlock"],"mappings":";;;;;;;qBACE,MAKE,QAAA,QAAA,QAAA,OAAA,UAAA;+CAJa,GAAAA,IAAA,mBAAA,OAAA;AAAA,IACZ,KAAK;AAAA,IAEL,OAAKC,IAAAA,eAAA,KAAA,KAAA;AAAA,IAAA,KAAA,KAAA;AAAA,oBAER,CAMM,MAAA,OAAA,CAAA,IAAA,IAAA,SAAA,KAAA,WAAA,KAAA,QAAA,GAAA,IAAA;AAAA,EAAA,GAAA,MAAA,IAAA,UAAA,MAAAC,IAAAA,UALqB,GAAAF,IAAA,mBAAA,OAAA;AAAA,IACxB,KAAK;AAAA,IAEP,OAAA;AAAA,IAAA,OAAAC,IAAAA,eAAA,KAAA,KAAA;AAAA;;;;"}
1
+ {"version":3,"file":"Image.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Image.vue2.js","sources":["../../../src/media/image/Image.vue"],"sourcesContent":["<template>\n <img\n :style=\"style\"\n :src=\"myImgUrl\"\n v-if=\"myImgUrl !== ''\"\n @click=\"onClick\"\n />\n <div\n class=\"image-placeholder\"\n :style=\"style\"\n v-else\n >\n 请上传图片\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, inject, unref } from 'vue'\nimport { imageComponentProps } from './props'\nimport { useImagePath, usePickComponentStyle, usePageUrl, useVariablesInText } from '@/hooks'\nimport { GLOBAL_CONFIG } from '@/utils/constant'\nexport default defineComponent({\n name: 'EcanImage',\n props: {\n ...imageComponentProps\n },\n setup (props) {\n const style = usePickComponentStyle(props)\n const myImgUrl = computed(() => useImagePath(props.imgUrl as string))\n const { pageMode } = inject(GLOBAL_CONFIG, {\n pageMode: 'normal'\n })\n const onClick = () => {\n // 空链接、空页面直接 return\n if (!props.linkPage && !props.href) return\n const linkPage = (props.linkPage || '') as string\n const pageUrl = usePageUrl(unref(pageMode), linkPage)\n // 优先使用外部链接,再使用url\n const href = props.href as string\n let url = href || pageUrl\n url = useVariablesInText(url)\n const target = props.target\n if (target == null || target === '') return\n if (target !== 'event') {\n window.open(url, '_' + (target as string))\n } else {\n window.parent.postMessage({\n type: 'openPage',\n url: href\n }, '*')\n }\n }\n return {\n style,\n myImgUrl,\n onClick\n }\n }\n})\n</script>\n\n<style scoped lang=\"less\">\n.image-placeholder {\n display: grid;\n place-content: center;\n border: 1px solid #d9d9d9;\n font-size: 16px;\n color: #333;\n width: 100%;\n overflow: hidden;\n}\n</style>\n"],"names":["defineComponent","imageComponentProps","props","usePickComponentStyle","computed","useImagePath","inject","GLOBAL_CONFIG","usePageUrl","unref","useVariablesInText"],"mappings":";;;;;;;;;AAqBA,MAAA,YAAeA,oBAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,GAAGC,MAAA;AAAA,EACL;AAAA,EACA,MAAOC,QAAO;AACN,UAAA,QAAQC,4CAAsBD,MAAK;AACzC,UAAM,WAAWE,IAAAA,SAAS,MAAMC,aAAa,aAAAH,OAAM,MAAgB,CAAC;AACpE,UAAM,EAAE,SAAA,IAAaI,IAAA,OAAOC,wBAAe;AAAA,MACzC,UAAU;AAAA,IAAA,CACX;AACD,UAAM,UAAU,MAAM;AAEpB,UAAI,CAACL,OAAM,YAAY,CAACA,OAAM;AAAM;AAC9B,YAAA,WAAYA,OAAM,YAAY;AACpC,YAAM,UAAUM,WAAAA,WAAWC,IAAAA,MAAM,QAAQ,GAAG,QAAQ;AAEpD,YAAM,OAAOP,OAAM;AACnB,UAAI,MAAM,QAAQ;AAClB,YAAMQ,mBAAAA,mBAAmB,GAAG;AAC5B,YAAM,SAASR,OAAM;AACjB,UAAA,UAAU,QAAQ,WAAW;AAAI;AACrC,UAAI,WAAW,SAAS;AACf,eAAA,KAAK,KAAK,MAAO,MAAiB;AAAA,MAAA,OACpC;AACL,eAAO,OAAO,YAAY;AAAA,UACxB,MAAM;AAAA,UACN,KAAK;AAAA,WACJ,GAAG;AAAA,MACR;AAAA,IAAA;AAEK,WAAA;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;"}
1
+ {"version":3,"file":"Image.vue2.js","sources":["../../../src/media/image/Image.vue?vue&type=script&lang.ts"],"sourcesContent":["\nimport { computed, defineComponent, inject, unref } from 'vue'\nimport { imageComponentProps } from './props'\nimport { useImagePath, usePickComponentStyle, usePageUrl, useVariablesInText } from '@/hooks'\nimport { GLOBAL_CONFIG } from '@/utils/constant'\nexport default defineComponent({\n name: 'EcanImage',\n props: {\n ...imageComponentProps\n },\n setup (props) {\n const style = usePickComponentStyle(props)\n const myImgUrl = computed(() => useImagePath(props.imgUrl as string))\n const { pageMode } = inject(GLOBAL_CONFIG, {\n pageMode: 'normal'\n })\n const onClick = () => {\n // 空链接、空页面直接 return\n if (!props.linkPage && !props.href) return\n const linkPage = (props.linkPage || '') as string\n const pageUrl = usePageUrl(unref(pageMode), linkPage)\n // 优先使用外部链接,再使用url\n const href = props.href as string\n let url = href || pageUrl\n url = useVariablesInText(url)\n const target = props.target\n if (target == null || target === '') return\n if (target !== 'event') {\n window.open(url, '_' + (target as string))\n } else {\n window.parent.postMessage({\n type: 'openPage',\n url: href\n }, '*')\n }\n }\n return {\n style,\n myImgUrl,\n onClick\n }\n }\n})\n"],"names":["defineComponent","imageComponentProps","props","usePickComponentStyle","computed","useImagePath","inject","GLOBAL_CONFIG","usePageUrl","unref","useVariablesInText"],"mappings":";;;;;;;;;AAKA,MAAA,YAAeA,oBAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,GAAGC,MAAA;AAAA,EACL;AAAA,EACA,MAAOC,QAAO;AACN,UAAA,QAAQC,4CAAsBD,MAAK;AACzC,UAAM,WAAWE,IAAAA,SAAS,MAAMC,aAAa,aAAAH,OAAM,MAAgB,CAAC;AACpE,UAAM,EAAE,SAAA,IAAaI,IAAA,OAAOC,wBAAe;AAAA,MACzC,UAAU;AAAA,IAAA,CACX;AACD,UAAM,UAAU,MAAM;AAEpB,UAAI,CAACL,OAAM,YAAY,CAACA,OAAM;AAAM;AAC9B,YAAA,WAAYA,OAAM,YAAY;AACpC,YAAM,UAAUM,WAAAA,WAAWC,IAAAA,MAAM,QAAQ,GAAG,QAAQ;AAEpD,YAAM,OAAOP,OAAM;AACnB,UAAI,MAAM,QAAQ;AAClB,YAAMQ,mBAAAA,mBAAmB,GAAG;AAC5B,YAAM,SAASR,OAAM;AACjB,UAAA,UAAU,QAAQ,WAAW;AAAI;AACrC,UAAI,WAAW,SAAS;AACf,eAAA,KAAK,KAAK,MAAO,MAAiB;AAAA,MAAA,OACpC;AACL,eAAO,OAAO,YAAY;AAAA,UACxB,MAAM;AAAA,UACN,KAAK;AAAA,WACJ,GAAG;AAAA,MACR;AAAA,IAAA;AAEK,WAAA;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"PageConfig.vue.js","sources":["../../../src/setting/page-config/PageConfig.vue"],"sourcesContent":["<template>\n <div id=\"container\" ref=\"container\">\n <template v-if=\"ready\">\n <div\n class=\"page-config\"\n :style=\"style\"\n >\n <slot></slot>\n </div>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, nextTick, computed, ref, onMounted, onUnmounted } from 'vue'\nimport { debounce } from 'lodash-es'\nimport { pageConfigComponentProps } from './props'\nimport { useImagePath } from '@/hooks'\nexport default defineComponent({\n name: 'EcanPageConfig',\n inheritAttrs: false,\n props: {\n ...pageConfigComponentProps\n },\n setup (props) {\n // 大屏设计容器\n const style = computed(() => ({\n width: props.width,\n height: props.height,\n backgroundColor: props.backgroundColor,\n backgroundImage: useImagePath(props.backgroundImage as string, true),\n backgroundSize: props.backgroundSize\n }))\n const width = ref(0)\n const height = ref(0)\n const originalWidth = ref(0)\n const originalHeight = ref(0)\n const ready = ref(false)\n const container = ref()\n let observer: MutationObserver | null\n const initSize = () => {\n return new Promise<void>((resolve) => {\n nextTick(() => {\n // 获取大屏的真实尺寸\n if (props.width && props.height) {\n width.value = parseFloat(props.width)\n height.value = parseFloat(props.height)\n } else {\n width.value = container.value.clientWidth\n height.value = container.value.clientHeight\n }\n // 获取画布尺寸\n if (!originalWidth.value || !originalHeight.value) {\n originalWidth.value = window.screen.width\n originalHeight.value = window.screen.height\n }\n resolve()\n })\n })\n }\n const updateSize = () => {\n if (width.value && height.value) {\n container.value.style.width = `${width.value}px`\n container.value.style.height = `${height.value}px`\n } else {\n container.value.style.width = `${originalWidth.value}px`\n container.value.style.height = `${originalHeight.value}px`\n }\n }\n const updateScale = () => {\n // 获取真实的视口尺寸\n const currentWidth = document.body.clientWidth\n const currentHeight = document.body.clientHeight\n // 获取大屏最终的宽高\n const realWidth = width.value || originalWidth.value\n const realHeight = height.value || originalHeight.value\n const widthScale = currentWidth / realWidth\n const heightScale = currentHeight / realHeight\n container.value && (container.value.style.transform = `scale(${widthScale}, ${heightScale})`)\n }\n const onResize = async () => {\n await initSize()\n updateScale()\n }\n const initMutationObserver = () => {\n const MutationObserver = window.MutationObserver\n observer = new MutationObserver(onResize)\n observer.observe(container.value, {\n attributes: true,\n attributeFilter: ['style'],\n attributeOldValue: true\n })\n }\n const removeMutationObserver = () => {\n if (observer) {\n observer.disconnect()\n observer.takeRecords()\n observer = null\n }\n }\n onMounted(async () => {\n ready.value = false\n await initSize()\n updateSize()\n updateScale()\n window.addEventListener('resize', debounce(onResize, 100))\n initMutationObserver()\n ready.value = true\n })\n onUnmounted(() => {\n window.removeEventListener('resize', onResize)\n removeMutationObserver()\n })\n return {\n style,\n container,\n ready\n }\n }\n})\n</script>\n\n<style scoped lang=\"less\">\n#container {\n position: fixed;\n top: 0;\n left: 0;\n overflow: hidden;\n transform-origin: left top;\n z-index: 999;\n}\n.page-config {\n position: relative;\n overflow: hidden;\n background-size: cover;\n}\n</style>\n"],"names":["_createElementBlock","_openBlock","_normalizeStyle"],"mappings":";;;;;;MACyB,aAAY;AAAA,EAAA,IAAA;AAAA;;SACjB,YAAK,MAAA,QAAA,QAAA,QAAA,OAAA,UAAA;0BACnBA,uBAKM,OAAA,YAAA;AAAA,IAAA,KAAA,SAAAC,IAAAA,aAJeD,IAAAA,mBAAA,OAAA;AAAA,MAClB,KAAK;AAAA,MAAA,OAAA;AAAA,MAEN,OAAaE,IAAAA,eAAA,KAAA,KAAA;AAAA,IAAA,GAAA;AAAA;;;;;;"}
1
+ {"version":3,"file":"PageConfig.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"PageConfig.vue2.js","sources":["../../../src/setting/page-config/PageConfig.vue"],"sourcesContent":["<template>\n <div id=\"container\" ref=\"container\">\n <template v-if=\"ready\">\n <div\n class=\"page-config\"\n :style=\"style\"\n >\n <slot></slot>\n </div>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, nextTick, computed, ref, onMounted, onUnmounted } from 'vue'\nimport { debounce } from 'lodash-es'\nimport { pageConfigComponentProps } from './props'\nimport { useImagePath } from '@/hooks'\nexport default defineComponent({\n name: 'EcanPageConfig',\n inheritAttrs: false,\n props: {\n ...pageConfigComponentProps\n },\n setup (props) {\n // 大屏设计容器\n const style = computed(() => ({\n width: props.width,\n height: props.height,\n backgroundColor: props.backgroundColor,\n backgroundImage: useImagePath(props.backgroundImage as string, true),\n backgroundSize: props.backgroundSize\n }))\n const width = ref(0)\n const height = ref(0)\n const originalWidth = ref(0)\n const originalHeight = ref(0)\n const ready = ref(false)\n const container = ref()\n let observer: MutationObserver | null\n const initSize = () => {\n return new Promise<void>((resolve) => {\n nextTick(() => {\n // 获取大屏的真实尺寸\n if (props.width && props.height) {\n width.value = parseFloat(props.width)\n height.value = parseFloat(props.height)\n } else {\n width.value = container.value.clientWidth\n height.value = container.value.clientHeight\n }\n // 获取画布尺寸\n if (!originalWidth.value || !originalHeight.value) {\n originalWidth.value = window.screen.width\n originalHeight.value = window.screen.height\n }\n resolve()\n })\n })\n }\n const updateSize = () => {\n if (width.value && height.value) {\n container.value.style.width = `${width.value}px`\n container.value.style.height = `${height.value}px`\n } else {\n container.value.style.width = `${originalWidth.value}px`\n container.value.style.height = `${originalHeight.value}px`\n }\n }\n const updateScale = () => {\n // 获取真实的视口尺寸\n const currentWidth = document.body.clientWidth\n const currentHeight = document.body.clientHeight\n // 获取大屏最终的宽高\n const realWidth = width.value || originalWidth.value\n const realHeight = height.value || originalHeight.value\n const widthScale = currentWidth / realWidth\n const heightScale = currentHeight / realHeight\n container.value && (container.value.style.transform = `scale(${widthScale}, ${heightScale})`)\n }\n const onResize = async () => {\n await initSize()\n updateScale()\n }\n const initMutationObserver = () => {\n const MutationObserver = window.MutationObserver\n observer = new MutationObserver(onResize)\n observer.observe(container.value, {\n attributes: true,\n attributeFilter: ['style'],\n attributeOldValue: true\n })\n }\n const removeMutationObserver = () => {\n if (observer) {\n observer.disconnect()\n observer.takeRecords()\n observer = null\n }\n }\n onMounted(async () => {\n ready.value = false\n await initSize()\n updateSize()\n updateScale()\n window.addEventListener('resize', debounce(onResize, 100))\n initMutationObserver()\n ready.value = true\n })\n onUnmounted(() => {\n window.removeEventListener('resize', onResize)\n removeMutationObserver()\n })\n return {\n style,\n container,\n ready\n }\n }\n})\n</script>\n\n<style scoped lang=\"less\">\n#container {\n position: fixed;\n top: 0;\n left: 0;\n overflow: hidden;\n transform-origin: left top;\n z-index: 999;\n}\n.page-config {\n position: relative;\n overflow: hidden;\n background-size: cover;\n}\n</style>\n"],"names":["defineComponent","pageConfigComponentProps","props","computed","useImagePath","ref","nextTick","onMounted","debounce","onUnmounted"],"mappings":";;;;;;AAkBA,MAAA,YAAeA,oBAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,cAAc;AAAA,EACd,OAAO;AAAA,IACL,GAAGC,MAAA;AAAA,EACL;AAAA,EACA,MAAOC,QAAO;AAEN,UAAA,QAAQC,IAAAA,SAAS,OAAO;AAAA,MAC5B,OAAOD,OAAM;AAAA,MACb,QAAQA,OAAM;AAAA,MACd,iBAAiBA,OAAM;AAAA,MACvB,iBAAiBE,aAAA,aAAaF,OAAM,iBAA2B,IAAI;AAAA,MACnE,gBAAgBA,OAAM;AAAA,IACtB,EAAA;AACI,UAAA,QAAQG,QAAI,CAAC;AACb,UAAA,SAASA,QAAI,CAAC;AACd,UAAA,gBAAgBA,QAAI,CAAC;AACrB,UAAA,iBAAiBA,QAAI,CAAC;AACtB,UAAA,QAAQA,QAAI,KAAK;AACvB,UAAM,YAAYA,IAAAA;AACd,QAAA;AACJ,UAAM,WAAW,MAAM;AACd,aAAA,IAAI,QAAc,CAAC,YAAY;AACpCC,YAAAA,SAAS,MAAM;AAET,cAAAJ,OAAM,SAASA,OAAM,QAAQ;AACzB,kBAAA,QAAQ,WAAWA,OAAM,KAAK;AAC7B,mBAAA,QAAQ,WAAWA,OAAM,MAAM;AAAA,UAAA,OACjC;AACC,kBAAA,QAAQ,UAAU,MAAM;AACvB,mBAAA,QAAQ,UAAU,MAAM;AAAA,UACjC;AAEA,cAAI,CAAC,cAAc,SAAS,CAAC,eAAe,OAAO;AACnC,0BAAA,QAAQ,OAAO,OAAO;AACrB,2BAAA,QAAQ,OAAO,OAAO;AAAA,UACvC;AACQ;QAAA,CACT;AAAA,MAAA,CACF;AAAA,IAAA;AAEH,UAAM,aAAa,MAAM;AACnB,UAAA,MAAM,SAAS,OAAO,OAAO;AAC/B,kBAAU,MAAM,MAAM,QAAQ,GAAG,MAAM;AACvC,kBAAU,MAAM,MAAM,SAAS,GAAG,OAAO;AAAA,MAAA,OACpC;AACL,kBAAU,MAAM,MAAM,QAAQ,GAAG,cAAc;AAC/C,kBAAU,MAAM,MAAM,SAAS,GAAG,eAAe;AAAA,MACnD;AAAA,IAAA;AAEF,UAAM,cAAc,MAAM;AAElB,YAAA,eAAe,SAAS,KAAK;AAC7B,YAAA,gBAAgB,SAAS,KAAK;AAE9B,YAAA,YAAY,MAAM,SAAS,cAAc;AACzC,YAAA,aAAa,OAAO,SAAS,eAAe;AAClD,YAAM,aAAa,eAAe;AAClC,YAAM,cAAc,gBAAgB;AACpC,gBAAU,UAAU,UAAU,MAAM,MAAM,YAAY,SAAS,eAAe;AAAA,IAAA;AAEhF,UAAM,WAAW,YAAY;AAC3B,YAAM,SAAS;AACH;IAAA;AAEd,UAAM,uBAAuB,MAAM;AACjC,YAAM,mBAAmB,OAAO;AACrB,iBAAA,IAAI,iBAAiB,QAAQ;AAC/B,eAAA,QAAQ,UAAU,OAAO;AAAA,QAChC,YAAY;AAAA,QACZ,iBAAiB,CAAC,OAAO;AAAA,QACzB,mBAAmB;AAAA,MAAA,CACpB;AAAA,IAAA;AAEH,UAAM,yBAAyB,MAAM;AACnC,UAAI,UAAU;AACZ,iBAAS,WAAW;AACpB,iBAAS,YAAY;AACV,mBAAA;AAAA,MACb;AAAA,IAAA;AAEFK,QAAAA,UAAU,YAAY;AACpB,YAAM,QAAQ;AACd,YAAM,SAAS;AACJ;AACC;AACZ,aAAO,iBAAiB,UAAUC,SAAS,SAAA,UAAU,GAAG,CAAC;AACpC;AACrB,YAAM,QAAQ;AAAA,IAAA,CACf;AACDC,QAAAA,YAAY,MAAM;AACT,aAAA,oBAAoB,UAAU,QAAQ;AACtB;IAAA,CACxB;AACM,WAAA;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;"}
1
+ {"version":3,"file":"PageConfig.vue2.js","sources":["../../../src/setting/page-config/PageConfig.vue?vue&type=script&lang.ts"],"sourcesContent":["\nimport { defineComponent, nextTick, computed, ref, onMounted, onUnmounted } from 'vue'\nimport { debounce } from 'lodash-es'\nimport { pageConfigComponentProps } from './props'\nimport { useImagePath } from '@/hooks'\nexport default defineComponent({\n name: 'EcanPageConfig',\n inheritAttrs: false,\n props: {\n ...pageConfigComponentProps\n },\n setup (props) {\n // 大屏设计容器\n const style = computed(() => ({\n width: props.width,\n height: props.height,\n backgroundColor: props.backgroundColor,\n backgroundImage: useImagePath(props.backgroundImage as string, true),\n backgroundSize: props.backgroundSize\n }))\n const width = ref(0)\n const height = ref(0)\n const originalWidth = ref(0)\n const originalHeight = ref(0)\n const ready = ref(false)\n const container = ref()\n let observer: MutationObserver | null\n const initSize = () => {\n return new Promise<void>((resolve) => {\n nextTick(() => {\n // 获取大屏的真实尺寸\n if (props.width && props.height) {\n width.value = parseFloat(props.width)\n height.value = parseFloat(props.height)\n } else {\n width.value = container.value.clientWidth\n height.value = container.value.clientHeight\n }\n // 获取画布尺寸\n if (!originalWidth.value || !originalHeight.value) {\n originalWidth.value = window.screen.width\n originalHeight.value = window.screen.height\n }\n resolve()\n })\n })\n }\n const updateSize = () => {\n if (width.value && height.value) {\n container.value.style.width = `${width.value}px`\n container.value.style.height = `${height.value}px`\n } else {\n container.value.style.width = `${originalWidth.value}px`\n container.value.style.height = `${originalHeight.value}px`\n }\n }\n const updateScale = () => {\n // 获取真实的视口尺寸\n const currentWidth = document.body.clientWidth\n const currentHeight = document.body.clientHeight\n // 获取大屏最终的宽高\n const realWidth = width.value || originalWidth.value\n const realHeight = height.value || originalHeight.value\n const widthScale = currentWidth / realWidth\n const heightScale = currentHeight / realHeight\n container.value && (container.value.style.transform = `scale(${widthScale}, ${heightScale})`)\n }\n const onResize = async () => {\n await initSize()\n updateScale()\n }\n const initMutationObserver = () => {\n const MutationObserver = window.MutationObserver\n observer = new MutationObserver(onResize)\n observer.observe(container.value, {\n attributes: true,\n attributeFilter: ['style'],\n attributeOldValue: true\n })\n }\n const removeMutationObserver = () => {\n if (observer) {\n observer.disconnect()\n observer.takeRecords()\n observer = null\n }\n }\n onMounted(async () => {\n ready.value = false\n await initSize()\n updateSize()\n updateScale()\n window.addEventListener('resize', debounce(onResize, 100))\n initMutationObserver()\n ready.value = true\n })\n onUnmounted(() => {\n window.removeEventListener('resize', onResize)\n removeMutationObserver()\n })\n return {\n style,\n container,\n ready\n }\n }\n})\n"],"names":["defineComponent","pageConfigComponentProps","props","computed","useImagePath","ref","nextTick","onMounted","debounce","onUnmounted"],"mappings":";;;;;;AAKA,MAAA,YAAeA,oBAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,cAAc;AAAA,EACd,OAAO;AAAA,IACL,GAAGC,MAAA;AAAA,EACL;AAAA,EACA,MAAOC,QAAO;AAEN,UAAA,QAAQC,IAAAA,SAAS,OAAO;AAAA,MAC5B,OAAOD,OAAM;AAAA,MACb,QAAQA,OAAM;AAAA,MACd,iBAAiBA,OAAM;AAAA,MACvB,iBAAiBE,aAAA,aAAaF,OAAM,iBAA2B,IAAI;AAAA,MACnE,gBAAgBA,OAAM;AAAA,IACtB,EAAA;AACI,UAAA,QAAQG,QAAI,CAAC;AACb,UAAA,SAASA,QAAI,CAAC;AACd,UAAA,gBAAgBA,QAAI,CAAC;AACrB,UAAA,iBAAiBA,QAAI,CAAC;AACtB,UAAA,QAAQA,QAAI,KAAK;AACvB,UAAM,YAAYA,IAAAA;AACd,QAAA;AACJ,UAAM,WAAW,MAAM;AACd,aAAA,IAAI,QAAc,CAAC,YAAY;AACpCC,YAAAA,SAAS,MAAM;AAET,cAAAJ,OAAM,SAASA,OAAM,QAAQ;AACzB,kBAAA,QAAQ,WAAWA,OAAM,KAAK;AAC7B,mBAAA,QAAQ,WAAWA,OAAM,MAAM;AAAA,UAAA,OACjC;AACC,kBAAA,QAAQ,UAAU,MAAM;AACvB,mBAAA,QAAQ,UAAU,MAAM;AAAA,UACjC;AAEA,cAAI,CAAC,cAAc,SAAS,CAAC,eAAe,OAAO;AACnC,0BAAA,QAAQ,OAAO,OAAO;AACrB,2BAAA,QAAQ,OAAO,OAAO;AAAA,UACvC;AACQ;QAAA,CACT;AAAA,MAAA,CACF;AAAA,IAAA;AAEH,UAAM,aAAa,MAAM;AACnB,UAAA,MAAM,SAAS,OAAO,OAAO;AAC/B,kBAAU,MAAM,MAAM,QAAQ,GAAG,MAAM;AACvC,kBAAU,MAAM,MAAM,SAAS,GAAG,OAAO;AAAA,MAAA,OACpC;AACL,kBAAU,MAAM,MAAM,QAAQ,GAAG,cAAc;AAC/C,kBAAU,MAAM,MAAM,SAAS,GAAG,eAAe;AAAA,MACnD;AAAA,IAAA;AAEF,UAAM,cAAc,MAAM;AAElB,YAAA,eAAe,SAAS,KAAK;AAC7B,YAAA,gBAAgB,SAAS,KAAK;AAE9B,YAAA,YAAY,MAAM,SAAS,cAAc;AACzC,YAAA,aAAa,OAAO,SAAS,eAAe;AAClD,YAAM,aAAa,eAAe;AAClC,YAAM,cAAc,gBAAgB;AACpC,gBAAU,UAAU,UAAU,MAAM,MAAM,YAAY,SAAS,eAAe;AAAA,IAAA;AAEhF,UAAM,WAAW,YAAY;AAC3B,YAAM,SAAS;AACH;IAAA;AAEd,UAAM,uBAAuB,MAAM;AACjC,YAAM,mBAAmB,OAAO;AACrB,iBAAA,IAAI,iBAAiB,QAAQ;AAC/B,eAAA,QAAQ,UAAU,OAAO;AAAA,QAChC,YAAY;AAAA,QACZ,iBAAiB,CAAC,OAAO;AAAA,QACzB,mBAAmB;AAAA,MAAA,CACpB;AAAA,IAAA;AAEH,UAAM,yBAAyB,MAAM;AACnC,UAAI,UAAU;AACZ,iBAAS,WAAW;AACpB,iBAAS,YAAY;AACV,mBAAA;AAAA,MACb;AAAA,IAAA;AAEFK,QAAAA,UAAU,YAAY;AACpB,YAAM,QAAQ;AACd,YAAM,SAAS;AACJ;AACC;AACZ,aAAO,iBAAiB,UAAUC,SAAS,SAAA,UAAU,GAAG,CAAC;AACpC;AACrB,YAAM,QAAQ;AAAA,IAAA,CACf;AACDC,QAAAA,YAAY,MAAM;AACT,aAAA,oBAAoB,UAAU,QAAQ;AACtB;IAAA,CACxB;AACM,WAAA;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ProviderConfig.vue.js","sources":["../../../src/setting/provider-config/ProviderConfig.vue"],"sourcesContent":["<template>\n <!-- 请勿去除属性id -->\n <div id=\"ProviderConfig\" ref=\"providerConfig\">\n <slot></slot>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, provide, ref, onMounted, watch, computed, unref, onBeforeUnmount } from 'vue'\nimport mitt from 'mitt'\nimport { EVENT_BUS, GLOBAL_CONFIG, GLOBAL_MODEL, REQUEST_MODEL, INDICATOR_URL, GLOBAL_TOKEN, REFRESH_PAGE } from '@/utils/constant'\nimport { providerConfigComponentProps } from './props'\nimport { useVariablesInText, useHrefParamsToGlobalVariables } from '@/hooks'\nimport axios from 'axios'\nimport { RequestModalParam } from '@/utils/types'\n\nexport default defineComponent({\n name: 'EcanProviderConfig',\n inheritAttrs: false,\n props: {\n ...providerConfigComponentProps\n },\n setup (props, { expose }) {\n useHrefParamsToGlobalVariables()\n\n const providerConfig = ref<HTMLElement>()\n const setTheme = () => {\n providerConfig.value.setAttribute('datav-theme', props.theme as string)\n }\n watch(() => props.theme, () => {\n setTheme()\n })\n onMounted(() => {\n setTheme()\n })\n const contextRequestUrl = computed(() => {\n return useVariablesInText(props.contextRequestUrl as string)\n })\n const pageMode = computed(() => props.pageMode)\n const theme = computed(() => props.theme)\n // 当前组件主动触发ID\n const touchEventId = ref<string>('')\n // 提供全局设置\n provide(GLOBAL_CONFIG, {\n // 请求地址\n contextRequestUrl,\n // 模式(设计、预览、正常):目前主要配置初始化是否发起请求\n pageMode,\n // 主题\n theme,\n touchEventId\n })\n\n // 提供全局变量\n const globalModel = new Map()\n const getGlobalModel = (key: string) => {\n return globalModel.get(key)\n }\n const setGlobalModel = (key: string, value: any) => {\n globalModel.set(key, value)\n }\n provide(GLOBAL_MODEL, {\n getGlobalModel,\n setGlobalModel\n })\n\n // 提供事件\n const eventBus = mitt()\n const eventBusKeySet = new Set()\n const onEvent = (key: string, events: { [key:string]: any }) => {\n if (eventBusKeySet.has(key)) {\n eventBus.off(key)\n }\n eventBus.on(key, (k: string) => {\n eventBusKeySet.add(key)\n return Object.prototype.toString.call(events[k]) === '[object Function]' && events[k]()\n })\n onBeforeUnmount(() => {\n eventBus.off(key)\n })\n }\n const offEvent = (key) => {\n eventBus.off(key)\n }\n const emitEvent = (key: string, eventName: string) => {\n eventBus.emit(key, eventName)\n }\n provide(EVENT_BUS, {\n onEvent,\n offEvent,\n emitEvent\n })\n\n // 设置是否请求 token\n const tokenNum = ref(0)\n const requestToken = () => {\n tokenNum.value = unref(tokenNum) + 1\n }\n provide(GLOBAL_TOKEN, {\n requestToken\n })\n // 请求排序\n const requestModel = new Map()\n const requestMap = new Map()\n const setRequest = ({ requestFn = () => {}, sortNum = 0, id = '' }: RequestModalParam) => {\n if (requestModel.has(sortNum)) {\n const requestFnList = requestModel.get(sortNum)\n requestFnList?.push(requestFn)\n } else {\n requestModel.set(sortNum, [requestFn])\n }\n requestMap.set(id, requestFn)\n }\n const handleRequestFnList = (requestFnList: Array<Function>) => {\n return new Promise((resolve, reject) => {\n const resultList = requestFnList.map(requestFn => requestFn())\n Promise.all(resultList)\n .then(list => {\n resolve(list)\n })\n .catch(err => {\n reject(err)\n })\n })\n }\n // 指标库模块请求 token\n const queryUserToken = async () => {\n const res = await axios.get(`${INDICATOR_URL}/user/anonymous?username=admin`, {\n headers: {\n systemCode: 'F72FC50A3D97372514A6AC33333D28FD',\n current_context: 'ygt'\n }\n })\n // 设置 token 挂载在 window.config 上\n // @ts-ignore\n // eslint-disable-next-line\n config.indicatorToken = res.data.data?.token\n }\n const touchRequest = async (id: undefined | string) => {\n // 传空默认触发全部\n if (!id) {\n const requestModelArr = Array.from(requestModel)\n // 排序\n requestModelArr.sort((a, b) => b[0] - a[0])\n const len = requestModelArr.length\n try {\n // 指标库模块需要 token\n // 页面不为design 请求次数 token 不为0\n if (props.pageMode !== 'design' && unref(tokenNum) > 0) {\n await queryUserToken()\n }\n for (let i = 0; i < len; i++) {\n const requestFnList = requestModelArr[i][1]\n await handleRequestFnList(requestFnList)\n }\n } catch (e) {\n console.error(e)\n } finally {\n // 执行完直接清空\n requestModel.clear()\n }\n } else if (typeof id === 'string') {\n const requestFn = requestMap.get(id)\n if (typeof requestFn === 'function') {\n requestFn()\n }\n }\n }\n\n provide(REQUEST_MODEL, {\n setRequest,\n touchRequest\n })\n\n const emitRefreshPage = () => {\n eventBus.emit(REFRESH_PAGE)\n }\n provide(REFRESH_PAGE, {\n emitRefreshPage\n })\n // const notRenderSet = ref(new Set())\n // const refreshEventBus = mitt()\n const onRefreshPage = (callBack: Function) => {\n eventBus.on(REFRESH_PAGE, () => callBack())\n onMounted(() => {\n eventBus.off(REFRESH_PAGE)\n })\n }\n\n onBeforeUnmount(() => {\n requestModel?.clear()\n requestMap?.clear()\n })\n\n expose({\n touchRequest,\n getGlobalModel,\n onRefreshPage\n })\n\n return {\n providerConfig\n }\n }\n})\n</script>\n\n<style scoped>\n\n</style>\n"],"names":[],"mappings":";;;;;MAE8B,aAAC;AAAA,EAAA,IAAA;AAAA;;SAC3B,YAAa,MAAA,QAAA,QAAA,QAAA,OAAA,UAAA;;;;;;;"}
1
+ {"version":3,"file":"ProviderConfig.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ProviderConfig.vue2.js","sources":["../../../src/setting/provider-config/ProviderConfig.vue"],"sourcesContent":["<template>\n <!-- 请勿去除属性id -->\n <div id=\"ProviderConfig\" ref=\"providerConfig\">\n <slot></slot>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, provide, ref, onMounted, watch, computed, unref, onBeforeUnmount } from 'vue'\nimport mitt from 'mitt'\nimport { EVENT_BUS, GLOBAL_CONFIG, GLOBAL_MODEL, REQUEST_MODEL, INDICATOR_URL, GLOBAL_TOKEN, REFRESH_PAGE } from '@/utils/constant'\nimport { providerConfigComponentProps } from './props'\nimport { useVariablesInText, useHrefParamsToGlobalVariables } from '@/hooks'\nimport axios from 'axios'\nimport { RequestModalParam } from '@/utils/types'\n\nexport default defineComponent({\n name: 'EcanProviderConfig',\n inheritAttrs: false,\n props: {\n ...providerConfigComponentProps\n },\n setup (props, { expose }) {\n useHrefParamsToGlobalVariables()\n\n const providerConfig = ref<HTMLElement>()\n const setTheme = () => {\n providerConfig.value.setAttribute('datav-theme', props.theme as string)\n }\n watch(() => props.theme, () => {\n setTheme()\n })\n onMounted(() => {\n setTheme()\n })\n const contextRequestUrl = computed(() => {\n return useVariablesInText(props.contextRequestUrl as string)\n })\n const pageMode = computed(() => props.pageMode)\n const theme = computed(() => props.theme)\n // 当前组件主动触发ID\n const touchEventId = ref<string>('')\n // 提供全局设置\n provide(GLOBAL_CONFIG, {\n // 请求地址\n contextRequestUrl,\n // 模式(设计、预览、正常):目前主要配置初始化是否发起请求\n pageMode,\n // 主题\n theme,\n touchEventId\n })\n\n // 提供全局变量\n const globalModel = new Map()\n const getGlobalModel = (key: string) => {\n return globalModel.get(key)\n }\n const setGlobalModel = (key: string, value: any) => {\n globalModel.set(key, value)\n }\n provide(GLOBAL_MODEL, {\n getGlobalModel,\n setGlobalModel\n })\n\n // 提供事件\n const eventBus = mitt()\n const eventBusKeySet = new Set()\n const onEvent = (key: string, events: { [key:string]: any }) => {\n if (eventBusKeySet.has(key)) {\n eventBus.off(key)\n }\n eventBus.on(key, (k: string) => {\n eventBusKeySet.add(key)\n return Object.prototype.toString.call(events[k]) === '[object Function]' && events[k]()\n })\n onBeforeUnmount(() => {\n eventBus.off(key)\n })\n }\n const offEvent = (key) => {\n eventBus.off(key)\n }\n const emitEvent = (key: string, eventName: string) => {\n eventBus.emit(key, eventName)\n }\n provide(EVENT_BUS, {\n onEvent,\n offEvent,\n emitEvent\n })\n\n // 设置是否请求 token\n const tokenNum = ref(0)\n const requestToken = () => {\n tokenNum.value = unref(tokenNum) + 1\n }\n provide(GLOBAL_TOKEN, {\n requestToken\n })\n // 请求排序\n const requestModel = new Map()\n const requestMap = new Map()\n const setRequest = ({ requestFn = () => {}, sortNum = 0, id = '' }: RequestModalParam) => {\n if (requestModel.has(sortNum)) {\n const requestFnList = requestModel.get(sortNum)\n requestFnList?.push(requestFn)\n } else {\n requestModel.set(sortNum, [requestFn])\n }\n requestMap.set(id, requestFn)\n }\n const handleRequestFnList = (requestFnList: Array<Function>) => {\n return new Promise((resolve, reject) => {\n const resultList = requestFnList.map(requestFn => requestFn())\n Promise.all(resultList)\n .then(list => {\n resolve(list)\n })\n .catch(err => {\n reject(err)\n })\n })\n }\n // 指标库模块请求 token\n const queryUserToken = async () => {\n const res = await axios.get(`${INDICATOR_URL}/user/anonymous?username=admin`, {\n headers: {\n systemCode: 'F72FC50A3D97372514A6AC33333D28FD',\n current_context: 'ygt'\n }\n })\n // 设置 token 挂载在 window.config 上\n // @ts-ignore\n // eslint-disable-next-line\n config.indicatorToken = res.data.data?.token\n }\n const touchRequest = async (id: undefined | string) => {\n // 传空默认触发全部\n if (!id) {\n const requestModelArr = Array.from(requestModel)\n // 排序\n requestModelArr.sort((a, b) => b[0] - a[0])\n const len = requestModelArr.length\n try {\n // 指标库模块需要 token\n // 页面不为design 请求次数 token 不为0\n if (props.pageMode !== 'design' && unref(tokenNum) > 0) {\n await queryUserToken()\n }\n for (let i = 0; i < len; i++) {\n const requestFnList = requestModelArr[i][1]\n await handleRequestFnList(requestFnList)\n }\n } catch (e) {\n console.error(e)\n } finally {\n // 执行完直接清空\n requestModel.clear()\n }\n } else if (typeof id === 'string') {\n const requestFn = requestMap.get(id)\n if (typeof requestFn === 'function') {\n requestFn()\n }\n }\n }\n\n provide(REQUEST_MODEL, {\n setRequest,\n touchRequest\n })\n\n const emitRefreshPage = () => {\n eventBus.emit(REFRESH_PAGE)\n }\n provide(REFRESH_PAGE, {\n emitRefreshPage\n })\n // const notRenderSet = ref(new Set())\n // const refreshEventBus = mitt()\n const onRefreshPage = (callBack: Function) => {\n eventBus.on(REFRESH_PAGE, () => callBack())\n onMounted(() => {\n eventBus.off(REFRESH_PAGE)\n })\n }\n\n onBeforeUnmount(() => {\n requestModel?.clear()\n requestMap?.clear()\n })\n\n expose({\n touchRequest,\n getGlobalModel,\n onRefreshPage\n })\n\n return {\n providerConfig\n }\n }\n})\n</script>\n\n<style scoped>\n\n</style>\n"],"names":["defineComponent","providerConfigComponentProps","props","useHrefParamsToGlobalVariables","ref","watch","onMounted","computed","useVariablesInText","provide","GLOBAL_CONFIG","GLOBAL_MODEL","onBeforeUnmount","EVENT_BUS","unref","GLOBAL_TOKEN","INDICATOR_URL","REQUEST_MODEL","REFRESH_PAGE"],"mappings":"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"}
1
+ {"version":3,"file":"ProviderConfig.vue2.js","sources":["../../../src/setting/provider-config/ProviderConfig.vue?vue&type=script&lang.ts"],"sourcesContent":["\nimport { defineComponent, provide, ref, onMounted, watch, computed, unref, onBeforeUnmount } from 'vue'\nimport mitt from 'mitt'\nimport { EVENT_BUS, GLOBAL_CONFIG, GLOBAL_MODEL, REQUEST_MODEL, INDICATOR_URL, GLOBAL_TOKEN, REFRESH_PAGE } from '@/utils/constant'\nimport { providerConfigComponentProps } from './props'\nimport { useVariablesInText, useHrefParamsToGlobalVariables } from '@/hooks'\nimport axios from 'axios'\nimport { RequestModalParam } from '@/utils/types'\n\nexport default defineComponent({\n name: 'EcanProviderConfig',\n inheritAttrs: false,\n props: {\n ...providerConfigComponentProps\n },\n setup (props, { expose }) {\n useHrefParamsToGlobalVariables()\n\n const providerConfig = ref<HTMLElement>()\n const setTheme = () => {\n providerConfig.value.setAttribute('datav-theme', props.theme as string)\n }\n watch(() => props.theme, () => {\n setTheme()\n })\n onMounted(() => {\n setTheme()\n })\n const contextRequestUrl = computed(() => {\n return useVariablesInText(props.contextRequestUrl as string)\n })\n const pageMode = computed(() => props.pageMode)\n const theme = computed(() => props.theme)\n // 当前组件主动触发ID\n const touchEventId = ref<string>('')\n // 提供全局设置\n provide(GLOBAL_CONFIG, {\n // 请求地址\n contextRequestUrl,\n // 模式(设计、预览、正常):目前主要配置初始化是否发起请求\n pageMode,\n // 主题\n theme,\n touchEventId\n })\n\n // 提供全局变量\n const globalModel = new Map()\n const getGlobalModel = (key: string) => {\n return globalModel.get(key)\n }\n const setGlobalModel = (key: string, value: any) => {\n globalModel.set(key, value)\n }\n provide(GLOBAL_MODEL, {\n getGlobalModel,\n setGlobalModel\n })\n\n // 提供事件\n const eventBus = mitt()\n const eventBusKeySet = new Set()\n const onEvent = (key: string, events: { [key:string]: any }) => {\n if (eventBusKeySet.has(key)) {\n eventBus.off(key)\n }\n eventBus.on(key, (k: string) => {\n eventBusKeySet.add(key)\n return Object.prototype.toString.call(events[k]) === '[object Function]' && events[k]()\n })\n onBeforeUnmount(() => {\n eventBus.off(key)\n })\n }\n const offEvent = (key) => {\n eventBus.off(key)\n }\n const emitEvent = (key: string, eventName: string) => {\n eventBus.emit(key, eventName)\n }\n provide(EVENT_BUS, {\n onEvent,\n offEvent,\n emitEvent\n })\n\n // 设置是否请求 token\n const tokenNum = ref(0)\n const requestToken = () => {\n tokenNum.value = unref(tokenNum) + 1\n }\n provide(GLOBAL_TOKEN, {\n requestToken\n })\n // 请求排序\n const requestModel = new Map()\n const requestMap = new Map()\n const setRequest = ({ requestFn = () => {}, sortNum = 0, id = '' }: RequestModalParam) => {\n if (requestModel.has(sortNum)) {\n const requestFnList = requestModel.get(sortNum)\n requestFnList?.push(requestFn)\n } else {\n requestModel.set(sortNum, [requestFn])\n }\n requestMap.set(id, requestFn)\n }\n const handleRequestFnList = (requestFnList: Array<Function>) => {\n return new Promise((resolve, reject) => {\n const resultList = requestFnList.map(requestFn => requestFn())\n Promise.all(resultList)\n .then(list => {\n resolve(list)\n })\n .catch(err => {\n reject(err)\n })\n })\n }\n // 指标库模块请求 token\n const queryUserToken = async () => {\n const res = await axios.get(`${INDICATOR_URL}/user/anonymous?username=admin`, {\n headers: {\n systemCode: 'F72FC50A3D97372514A6AC33333D28FD',\n current_context: 'ygt'\n }\n })\n // 设置 token 挂载在 window.config 上\n // @ts-ignore\n // eslint-disable-next-line\n config.indicatorToken = res.data.data?.token\n }\n const touchRequest = async (id: undefined | string) => {\n // 传空默认触发全部\n if (!id) {\n const requestModelArr = Array.from(requestModel)\n // 排序\n requestModelArr.sort((a, b) => b[0] - a[0])\n const len = requestModelArr.length\n try {\n // 指标库模块需要 token\n // 页面不为design 请求次数 token 不为0\n if (props.pageMode !== 'design' && unref(tokenNum) > 0) {\n await queryUserToken()\n }\n for (let i = 0; i < len; i++) {\n const requestFnList = requestModelArr[i][1]\n await handleRequestFnList(requestFnList)\n }\n } catch (e) {\n console.error(e)\n } finally {\n // 执行完直接清空\n requestModel.clear()\n }\n } else if (typeof id === 'string') {\n const requestFn = requestMap.get(id)\n if (typeof requestFn === 'function') {\n requestFn()\n }\n }\n }\n\n provide(REQUEST_MODEL, {\n setRequest,\n touchRequest\n })\n\n const emitRefreshPage = () => {\n eventBus.emit(REFRESH_PAGE)\n }\n provide(REFRESH_PAGE, {\n emitRefreshPage\n })\n // const notRenderSet = ref(new Set())\n // const refreshEventBus = mitt()\n const onRefreshPage = (callBack: Function) => {\n eventBus.on(REFRESH_PAGE, () => callBack())\n onMounted(() => {\n eventBus.off(REFRESH_PAGE)\n })\n }\n\n onBeforeUnmount(() => {\n requestModel?.clear()\n requestMap?.clear()\n })\n\n expose({\n touchRequest,\n getGlobalModel,\n onRefreshPage\n })\n\n return {\n providerConfig\n }\n }\n})\n"],"names":["defineComponent","providerConfigComponentProps","props","useHrefParamsToGlobalVariables","ref","watch","onMounted","computed","useVariablesInText","provide","GLOBAL_CONFIG","GLOBAL_MODEL","onBeforeUnmount","EVENT_BUS","unref","GLOBAL_TOKEN","INDICATOR_URL","REQUEST_MODEL","REFRESH_PAGE"],"mappings":"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"}