@qxs-bns/components 0.0.90 → 0.0.92

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 (908) hide show
  1. package/es/base/define.mjs +2 -0
  2. package/es/base/define.mjs.map +1 -0
  3. package/es/base/uid.mjs +2 -0
  4. package/es/base/uid.mjs.map +1 -0
  5. package/es/data-chart.mjs +143 -0
  6. package/es/data-chart.mjs.map +1 -0
  7. package/es/editor/blocksuite-editor.mjs +1126 -0
  8. package/es/editor/blocksuite-editor.mjs.map +1 -0
  9. package/es/editor/content-format.mjs +9 -0
  10. package/es/editor/content-format.mjs.map +1 -0
  11. package/es/editor/index.mjs +2 -0
  12. package/es/editor/index.mjs.map +1 -0
  13. package/es/editor/toolbar.mjs +2 -0
  14. package/es/editor/toolbar.mjs.map +1 -0
  15. package/es/entry-data-chart.mjs +2 -0
  16. package/es/entry-data-chart.mjs.map +1 -0
  17. package/es/entry-editor.mjs +2 -0
  18. package/es/entry-editor.mjs.map +1 -0
  19. package/es/entry-file-upload.mjs +2 -0
  20. package/es/entry-file-upload.mjs.map +1 -0
  21. package/es/entry-fixed-action-bar.mjs +2 -0
  22. package/es/entry-fixed-action-bar.mjs.map +1 -0
  23. package/es/entry-icon.mjs +2 -0
  24. package/es/entry-icon.mjs.map +1 -0
  25. package/es/entry-image-upload.mjs +2 -0
  26. package/es/entry-image-upload.mjs.map +1 -0
  27. package/es/entry-photo-crop-tool.mjs +2 -0
  28. package/es/entry-photo-crop-tool.mjs.map +1 -0
  29. package/es/entry-subject.mjs +2 -0
  30. package/es/entry-subject.mjs.map +1 -0
  31. package/es/file-upload.mjs +164 -0
  32. package/es/file-upload.mjs.map +1 -0
  33. package/es/fixed-action-bar.mjs +39 -0
  34. package/es/fixed-action-bar.mjs.map +1 -0
  35. package/es/icon.mjs +20 -0
  36. package/es/icon.mjs.map +1 -0
  37. package/es/image-upload.mjs +333 -0
  38. package/es/image-upload.mjs.map +1 -0
  39. package/es/index.mjs +1 -1
  40. package/es/index.mjs.map +1 -1
  41. package/es/node_modules/.pnpm/marked@17.0.6/node_modules/marked/lib/marked.esm.mjs +60 -0
  42. package/es/node_modules/.pnpm/marked@17.0.6/node_modules/marked/lib/marked.esm.mjs.map +1 -0
  43. package/es/node_modules/.pnpm/turndown-plugin-gfm@1.0.2/node_modules/turndown-plugin-gfm/lib/turndown-plugin-gfm.es.mjs +17 -0
  44. package/es/node_modules/.pnpm/turndown-plugin-gfm@1.0.2/node_modules/turndown-plugin-gfm/lib/turndown-plugin-gfm.es.mjs.map +1 -0
  45. package/es/node_modules/.pnpm/turndown@7.2.4/node_modules/turndown/lib/turndown.browser.es.mjs +62 -0
  46. package/es/node_modules/.pnpm/turndown@7.2.4/node_modules/turndown/lib/turndown.browser.es.mjs.map +1 -0
  47. package/es/photo-crop-tool.mjs +147 -0
  48. package/es/photo-crop-tool.mjs.map +1 -0
  49. package/es/subject/action.mjs +171 -0
  50. package/es/subject/action.mjs.map +1 -0
  51. package/es/subject/blank-fill.mjs +385 -0
  52. package/es/subject/blank-fill.mjs.map +1 -0
  53. package/es/subject/draft.mjs +2 -0
  54. package/es/subject/draft.mjs.map +1 -0
  55. package/es/subject/layout.mjs +21 -0
  56. package/es/subject/layout.mjs.map +1 -0
  57. package/es/subject/page-end.mjs +28 -0
  58. package/es/subject/page-end.mjs.map +1 -0
  59. package/es/subject/pagination.mjs +2 -0
  60. package/es/subject/pagination.mjs.map +1 -0
  61. package/es/subject/runtime.mjs +2 -0
  62. package/es/subject/runtime.mjs.map +1 -0
  63. package/es/subject/scale.mjs +270 -0
  64. package/es/subject/scale.mjs.map +1 -0
  65. package/es/subject/shared-methods.mjs +2 -0
  66. package/es/subject/shared-methods.mjs.map +1 -0
  67. package/es/subject/shared-styles.mjs +113 -0
  68. package/es/subject/shared-styles.mjs.map +1 -0
  69. package/es/subject/single-interactions.mjs +2 -0
  70. package/es/subject/single-interactions.mjs.map +1 -0
  71. package/es/subject/single-model.mjs +2 -0
  72. package/es/subject/single-model.mjs.map +1 -0
  73. package/es/subject/single-state.mjs +2 -0
  74. package/es/subject/single-state.mjs.map +1 -0
  75. package/es/subject/single.mjs +600 -0
  76. package/es/subject/single.mjs.map +1 -0
  77. package/es/subject/sort-controller.mjs +2 -0
  78. package/es/subject/sort-controller.mjs.map +1 -0
  79. package/es/subject/sortable.mjs +30 -0
  80. package/es/subject/sortable.mjs.map +1 -0
  81. package/es/subject/sorting-card.mjs +52 -0
  82. package/es/subject/sorting-card.mjs.map +1 -0
  83. package/es/subject/subject-shared.mjs +2 -0
  84. package/es/subject/subject-shared.mjs.map +1 -0
  85. package/es/subject/text-fill.mjs +395 -0
  86. package/es/subject/text-fill.mjs.map +1 -0
  87. package/es/subject/title-prefix.mjs +2 -0
  88. package/es/subject/title-prefix.mjs.map +1 -0
  89. package/es/subject/types.mjs +2 -0
  90. package/es/subject/types.mjs.map +1 -0
  91. package/lib/base/define.cjs +2 -0
  92. package/lib/base/define.cjs.map +1 -0
  93. package/lib/base/uid.cjs +2 -0
  94. package/lib/base/uid.cjs.map +1 -0
  95. package/lib/data-chart.cjs +143 -0
  96. package/lib/data-chart.cjs.map +1 -0
  97. package/lib/editor/blocksuite-editor.cjs +1126 -0
  98. package/lib/editor/blocksuite-editor.cjs.map +1 -0
  99. package/lib/editor/content-format.cjs +9 -0
  100. package/lib/editor/content-format.cjs.map +1 -0
  101. package/lib/editor/index.cjs +2 -0
  102. package/lib/editor/index.cjs.map +1 -0
  103. package/lib/editor/toolbar.cjs +2 -0
  104. package/lib/editor/toolbar.cjs.map +1 -0
  105. package/lib/entry-data-chart.cjs +2 -0
  106. package/lib/entry-data-chart.cjs.map +1 -0
  107. package/lib/entry-editor.cjs +2 -0
  108. package/lib/entry-editor.cjs.map +1 -0
  109. package/lib/entry-file-upload.cjs +2 -0
  110. package/lib/entry-file-upload.cjs.map +1 -0
  111. package/lib/entry-fixed-action-bar.cjs +2 -0
  112. package/lib/entry-fixed-action-bar.cjs.map +1 -0
  113. package/lib/entry-icon.cjs +2 -0
  114. package/lib/entry-icon.cjs.map +1 -0
  115. package/lib/entry-image-upload.cjs +2 -0
  116. package/lib/entry-image-upload.cjs.map +1 -0
  117. package/lib/entry-photo-crop-tool.cjs +2 -0
  118. package/lib/entry-photo-crop-tool.cjs.map +1 -0
  119. package/lib/entry-subject.cjs +2 -0
  120. package/lib/entry-subject.cjs.map +1 -0
  121. package/lib/file-upload.cjs +164 -0
  122. package/lib/file-upload.cjs.map +1 -0
  123. package/lib/fixed-action-bar.cjs +39 -0
  124. package/lib/fixed-action-bar.cjs.map +1 -0
  125. package/lib/icon.cjs +20 -0
  126. package/lib/icon.cjs.map +1 -0
  127. package/lib/image-upload.cjs +333 -0
  128. package/lib/image-upload.cjs.map +1 -0
  129. package/lib/index.cjs +1 -1
  130. package/lib/index.cjs.map +1 -1
  131. package/lib/node_modules/.pnpm/marked@17.0.6/node_modules/marked/lib/marked.esm.cjs +60 -0
  132. package/lib/node_modules/.pnpm/marked@17.0.6/node_modules/marked/lib/marked.esm.cjs.map +1 -0
  133. package/lib/node_modules/.pnpm/turndown-plugin-gfm@1.0.2/node_modules/turndown-plugin-gfm/lib/turndown-plugin-gfm.es.cjs +17 -0
  134. package/lib/node_modules/.pnpm/turndown-plugin-gfm@1.0.2/node_modules/turndown-plugin-gfm/lib/turndown-plugin-gfm.es.cjs.map +1 -0
  135. package/lib/node_modules/.pnpm/turndown@7.2.4/node_modules/turndown/lib/turndown.browser.es.cjs +62 -0
  136. package/lib/node_modules/.pnpm/turndown@7.2.4/node_modules/turndown/lib/turndown.browser.es.cjs.map +1 -0
  137. package/lib/photo-crop-tool.cjs +147 -0
  138. package/lib/photo-crop-tool.cjs.map +1 -0
  139. package/lib/subject/action.cjs +171 -0
  140. package/lib/subject/action.cjs.map +1 -0
  141. package/lib/subject/blank-fill.cjs +385 -0
  142. package/lib/subject/blank-fill.cjs.map +1 -0
  143. package/lib/subject/draft.cjs +2 -0
  144. package/lib/subject/draft.cjs.map +1 -0
  145. package/lib/subject/layout.cjs +21 -0
  146. package/lib/subject/layout.cjs.map +1 -0
  147. package/lib/subject/page-end.cjs +28 -0
  148. package/lib/subject/page-end.cjs.map +1 -0
  149. package/lib/subject/pagination.cjs +2 -0
  150. package/lib/subject/pagination.cjs.map +1 -0
  151. package/lib/subject/runtime.cjs +2 -0
  152. package/lib/subject/runtime.cjs.map +1 -0
  153. package/lib/subject/scale.cjs +270 -0
  154. package/lib/subject/scale.cjs.map +1 -0
  155. package/lib/subject/shared-methods.cjs +2 -0
  156. package/lib/subject/shared-methods.cjs.map +1 -0
  157. package/lib/subject/shared-styles.cjs +113 -0
  158. package/lib/subject/shared-styles.cjs.map +1 -0
  159. package/lib/subject/single-interactions.cjs +2 -0
  160. package/lib/subject/single-interactions.cjs.map +1 -0
  161. package/lib/subject/single-model.cjs +2 -0
  162. package/lib/subject/single-model.cjs.map +1 -0
  163. package/lib/subject/single-state.cjs +2 -0
  164. package/lib/subject/single-state.cjs.map +1 -0
  165. package/lib/subject/single.cjs +600 -0
  166. package/lib/subject/single.cjs.map +1 -0
  167. package/lib/subject/sort-controller.cjs +2 -0
  168. package/lib/subject/sort-controller.cjs.map +1 -0
  169. package/lib/subject/sortable.cjs +30 -0
  170. package/lib/subject/sortable.cjs.map +1 -0
  171. package/lib/subject/sorting-card.cjs +52 -0
  172. package/lib/subject/sorting-card.cjs.map +1 -0
  173. package/lib/subject/subject-shared.cjs +2 -0
  174. package/lib/subject/subject-shared.cjs.map +1 -0
  175. package/lib/subject/text-fill.cjs +395 -0
  176. package/lib/subject/text-fill.cjs.map +1 -0
  177. package/lib/subject/title-prefix.cjs +2 -0
  178. package/lib/subject/title-prefix.cjs.map +1 -0
  179. package/lib/subject/types.cjs +2 -0
  180. package/lib/subject/types.cjs.map +1 -0
  181. package/package.json +98 -36
  182. package/types/base/define.d.ts +1 -0
  183. package/types/base/uid.d.ts +1 -0
  184. package/types/data-chart.d.ts +65 -0
  185. package/types/editor/blocksuite-editor.d.ts +193 -0
  186. package/types/editor/content-format.d.ts +4 -0
  187. package/types/editor/index.d.ts +4 -0
  188. package/types/editor/toolbar.d.ts +6 -0
  189. package/types/editor/types.d.ts +42 -0
  190. package/types/entry-data-chart.d.ts +1 -0
  191. package/types/entry-editor.d.ts +2 -0
  192. package/types/entry-file-upload.d.ts +1 -0
  193. package/types/entry-fixed-action-bar.d.ts +1 -0
  194. package/types/entry-icon.d.ts +2 -0
  195. package/types/entry-image-upload.d.ts +1 -0
  196. package/types/entry-photo-crop-tool.d.ts +1 -0
  197. package/types/entry-subject.d.ts +2 -0
  198. package/types/file-upload.d.ts +50 -0
  199. package/types/fixed-action-bar.d.ts +25 -0
  200. package/types/icon.d.ts +30 -0
  201. package/types/image-upload.d.ts +68 -0
  202. package/types/index.d.ts +21 -6
  203. package/types/photo-crop-tool.d.ts +43 -0
  204. package/types/subject/action.d.ts +37 -0
  205. package/types/subject/blank-fill.d.ts +79 -0
  206. package/types/subject/draft.d.ts +63 -0
  207. package/types/subject/index.d.ts +13 -0
  208. package/types/subject/layout.d.ts +7 -0
  209. package/types/subject/page-end.d.ts +16 -0
  210. package/types/subject/pagination.d.ts +23 -0
  211. package/types/subject/runtime.d.ts +12 -0
  212. package/types/subject/scale.d.ts +55 -0
  213. package/types/subject/shared-methods.d.ts +8 -0
  214. package/types/subject/shared-styles.d.ts +5 -0
  215. package/types/subject/single-interactions.d.ts +46 -0
  216. package/types/subject/single-model.d.ts +88 -0
  217. package/types/subject/single-state.d.ts +42 -0
  218. package/types/subject/single.d.ts +210 -0
  219. package/types/subject/sort-controller.d.ts +3 -0
  220. package/types/subject/sortable.d.ts +19 -0
  221. package/types/subject/sorting-card.d.ts +2 -0
  222. package/types/subject/subject-shared.d.ts +43 -0
  223. package/types/subject/text-fill.d.ts +88 -0
  224. package/types/subject/title-prefix.d.ts +2 -0
  225. package/types/subject/types.d.ts +12 -0
  226. package/README.md +0 -566
  227. package/es/_virtual/_commonjsHelpers.mjs +0 -2
  228. package/es/_virtual/_commonjsHelpers.mjs.map +0 -1
  229. package/es/_virtual/_plugin-vue_export-helper.mjs +0 -2
  230. package/es/_virtual/_plugin-vue_export-helper.mjs.map +0 -1
  231. package/es/_virtual/sortable.esm.mjs +0 -2
  232. package/es/_virtual/sortable.esm.mjs.map +0 -1
  233. package/es/_virtual/vuedraggable.umd.mjs +0 -2
  234. package/es/_virtual/vuedraggable.umd.mjs.map +0 -1
  235. package/es/_virtual/vuedraggable.umd2.mjs +0 -2
  236. package/es/_virtual/vuedraggable.umd2.mjs.map +0 -1
  237. package/es/node_modules/.pnpm/@iconify_vue@5.0.0_vue@3.5.18_typescript@5.9.2_/node_modules/@iconify/vue/dist/iconify.mjs +0 -2
  238. package/es/node_modules/.pnpm/@iconify_vue@5.0.0_vue@3.5.18_typescript@5.9.2_/node_modules/@iconify/vue/dist/iconify.mjs.map +0 -1
  239. package/es/node_modules/.pnpm/sortablejs@1.14.0/node_modules/sortablejs/modular/sortable.esm.mjs +0 -8
  240. package/es/node_modules/.pnpm/sortablejs@1.14.0/node_modules/sortablejs/modular/sortable.esm.mjs.map +0 -1
  241. package/es/node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.mjs +0 -2
  242. package/es/node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.mjs.map +0 -1
  243. package/es/node_modules/.pnpm/vuedraggable@4.1.0_vue@3.5.18_typescript@5.9.2_/node_modules/vuedraggable/dist/vuedraggable.umd.mjs +0 -2
  244. package/es/node_modules/.pnpm/vuedraggable@4.1.0_vue@3.5.18_typescript@5.9.2_/node_modules/vuedraggable/dist/vuedraggable.umd.mjs.map +0 -1
  245. package/es/package.json.mjs +0 -2
  246. package/es/package.json.mjs.map +0 -1
  247. package/es/src/alert/index.mjs +0 -2
  248. package/es/src/alert/index.mjs.map +0 -1
  249. package/es/src/alert/src/alert.mjs +0 -2
  250. package/es/src/alert/src/alert.mjs.map +0 -1
  251. package/es/src/components.mjs +0 -2
  252. package/es/src/components.mjs.map +0 -1
  253. package/es/src/data-chart/index.mjs +0 -2
  254. package/es/src/data-chart/index.mjs.map +0 -1
  255. package/es/src/data-chart/src/analyze.mjs +0 -2
  256. package/es/src/data-chart/src/analyze.mjs.map +0 -1
  257. package/es/src/data-chart/src/components/area.vue.mjs +0 -2
  258. package/es/src/data-chart/src/components/area.vue.mjs.map +0 -1
  259. package/es/src/data-chart/src/components/area.vue2.mjs +0 -2
  260. package/es/src/data-chart/src/components/area.vue2.mjs.map +0 -1
  261. package/es/src/data-chart/src/components/area.vue3.mjs +0 -2
  262. package/es/src/data-chart/src/components/area.vue3.mjs.map +0 -1
  263. package/es/src/data-chart/src/components/bar.vue.mjs +0 -2
  264. package/es/src/data-chart/src/components/bar.vue.mjs.map +0 -1
  265. package/es/src/data-chart/src/components/bar.vue2.mjs +0 -2
  266. package/es/src/data-chart/src/components/bar.vue2.mjs.map +0 -1
  267. package/es/src/data-chart/src/components/bar.vue3.mjs +0 -2
  268. package/es/src/data-chart/src/components/bar.vue3.mjs.map +0 -1
  269. package/es/src/data-chart/src/components/card.vue.mjs +0 -2
  270. package/es/src/data-chart/src/components/card.vue.mjs.map +0 -1
  271. package/es/src/data-chart/src/components/card.vue2.mjs +0 -2
  272. package/es/src/data-chart/src/components/card.vue2.mjs.map +0 -1
  273. package/es/src/data-chart/src/components/card.vue3.mjs +0 -2
  274. package/es/src/data-chart/src/components/card.vue3.mjs.map +0 -1
  275. package/es/src/data-chart/src/components/data-chart-card-bg-left.svg.mjs +0 -2
  276. package/es/src/data-chart/src/components/data-chart-card-bg-left.svg.mjs.map +0 -1
  277. package/es/src/data-chart/src/components/data-chart-card-bg-right.svg.mjs +0 -2
  278. package/es/src/data-chart/src/components/data-chart-card-bg-right.svg.mjs.map +0 -1
  279. package/es/src/data-chart/src/components/empty.svg.mjs +0 -2
  280. package/es/src/data-chart/src/components/empty.svg.mjs.map +0 -1
  281. package/es/src/data-chart/src/components/empty.vue.mjs +0 -2
  282. package/es/src/data-chart/src/components/empty.vue.mjs.map +0 -1
  283. package/es/src/data-chart/src/components/empty.vue2.mjs +0 -2
  284. package/es/src/data-chart/src/components/empty.vue2.mjs.map +0 -1
  285. package/es/src/data-chart/src/components/funnel.vue.mjs +0 -2
  286. package/es/src/data-chart/src/components/funnel.vue.mjs.map +0 -1
  287. package/es/src/data-chart/src/components/funnel.vue2.mjs +0 -2
  288. package/es/src/data-chart/src/components/funnel.vue2.mjs.map +0 -1
  289. package/es/src/data-chart/src/components/funnel.vue3.mjs +0 -2
  290. package/es/src/data-chart/src/components/funnel.vue3.mjs.map +0 -1
  291. package/es/src/data-chart/src/components/line.vue.mjs +0 -2
  292. package/es/src/data-chart/src/components/line.vue.mjs.map +0 -1
  293. package/es/src/data-chart/src/components/line.vue2.mjs +0 -2
  294. package/es/src/data-chart/src/components/line.vue2.mjs.map +0 -1
  295. package/es/src/data-chart/src/components/line.vue3.mjs +0 -2
  296. package/es/src/data-chart/src/components/line.vue3.mjs.map +0 -1
  297. package/es/src/data-chart/src/components/pie.vue.mjs +0 -2
  298. package/es/src/data-chart/src/components/pie.vue.mjs.map +0 -1
  299. package/es/src/data-chart/src/components/pie.vue2.mjs +0 -2
  300. package/es/src/data-chart/src/components/pie.vue2.mjs.map +0 -1
  301. package/es/src/data-chart/src/components/pie.vue3.mjs +0 -2
  302. package/es/src/data-chart/src/components/pie.vue3.mjs.map +0 -1
  303. package/es/src/data-chart/src/components/radar.vue.mjs +0 -2
  304. package/es/src/data-chart/src/components/radar.vue.mjs.map +0 -1
  305. package/es/src/data-chart/src/components/radar.vue2.mjs +0 -2
  306. package/es/src/data-chart/src/components/radar.vue2.mjs.map +0 -1
  307. package/es/src/data-chart/src/components/radar.vue3.mjs +0 -2
  308. package/es/src/data-chart/src/components/radar.vue3.mjs.map +0 -1
  309. package/es/src/data-chart/src/components/scatter-simple.vue.mjs +0 -2
  310. package/es/src/data-chart/src/components/scatter-simple.vue.mjs.map +0 -1
  311. package/es/src/data-chart/src/components/scatter-simple.vue2.mjs +0 -2
  312. package/es/src/data-chart/src/components/scatter-simple.vue2.mjs.map +0 -1
  313. package/es/src/data-chart/src/components/scatter-simple.vue3.mjs +0 -2
  314. package/es/src/data-chart/src/components/scatter-simple.vue3.mjs.map +0 -1
  315. package/es/src/data-chart/src/components/scatter.vue.mjs +0 -2
  316. package/es/src/data-chart/src/components/scatter.vue.mjs.map +0 -1
  317. package/es/src/data-chart/src/components/scatter.vue2.mjs +0 -2
  318. package/es/src/data-chart/src/components/scatter.vue2.mjs.map +0 -1
  319. package/es/src/data-chart/src/components/scatter.vue3.mjs +0 -2
  320. package/es/src/data-chart/src/components/scatter.vue3.mjs.map +0 -1
  321. package/es/src/data-chart/src/components/table.vue.mjs +0 -2
  322. package/es/src/data-chart/src/components/table.vue.mjs.map +0 -1
  323. package/es/src/data-chart/src/components/table.vue2.mjs +0 -2
  324. package/es/src/data-chart/src/components/table.vue2.mjs.map +0 -1
  325. package/es/src/data-chart/src/data-chart.vue.mjs +0 -2
  326. package/es/src/data-chart/src/data-chart.vue.mjs.map +0 -1
  327. package/es/src/data-chart/src/data-chart.vue2.mjs +0 -2
  328. package/es/src/data-chart/src/data-chart.vue2.mjs.map +0 -1
  329. package/es/src/data-chart/src/utils/config.mjs +0 -2
  330. package/es/src/data-chart/src/utils/config.mjs.map +0 -1
  331. package/es/src/data-chart/src/utils/injectionKeys.mjs +0 -2
  332. package/es/src/data-chart/src/utils/injectionKeys.mjs.map +0 -1
  333. package/es/src/data-chart/src/utils/mapData.mjs +0 -2
  334. package/es/src/data-chart/src/utils/mapData.mjs.map +0 -1
  335. package/es/src/data-chart/src/utils/safe-eval.mjs +0 -2
  336. package/es/src/data-chart/src/utils/safe-eval.mjs.map +0 -1
  337. package/es/src/data-chart/src/utils/types.mjs +0 -2
  338. package/es/src/data-chart/src/utils/types.mjs.map +0 -1
  339. package/es/src/data-chart/src/utils/useCharts.mjs +0 -2
  340. package/es/src/data-chart/src/utils/useCharts.mjs.map +0 -1
  341. package/es/src/defaults.mjs +0 -2
  342. package/es/src/defaults.mjs.map +0 -1
  343. package/es/src/dialog/src/dialog.mjs +0 -2
  344. package/es/src/dialog/src/dialog.mjs.map +0 -1
  345. package/es/src/feedback-plugin/index.mjs +0 -2
  346. package/es/src/feedback-plugin/index.mjs.map +0 -1
  347. package/es/src/file-upload/index.mjs +0 -2
  348. package/es/src/file-upload/index.mjs.map +0 -1
  349. package/es/src/file-upload/src/file-upload.vue.mjs +0 -2
  350. package/es/src/file-upload/src/file-upload.vue.mjs.map +0 -1
  351. package/es/src/file-upload/src/file-upload.vue2.mjs +0 -2
  352. package/es/src/file-upload/src/file-upload.vue2.mjs.map +0 -1
  353. package/es/src/file-upload/src/file-upload.vue3.mjs +0 -2
  354. package/es/src/file-upload/src/file-upload.vue3.mjs.map +0 -1
  355. package/es/src/fixed-action-bar/index.mjs +0 -2
  356. package/es/src/fixed-action-bar/index.mjs.map +0 -1
  357. package/es/src/fixed-action-bar/src/fixed-action-bar.vue.mjs +0 -2
  358. package/es/src/fixed-action-bar/src/fixed-action-bar.vue.mjs.map +0 -1
  359. package/es/src/fixed-action-bar/src/fixed-action-bar.vue2.mjs +0 -2
  360. package/es/src/fixed-action-bar/src/fixed-action-bar.vue2.mjs.map +0 -1
  361. package/es/src/icon/index.mjs +0 -2
  362. package/es/src/icon/index.mjs.map +0 -1
  363. package/es/src/icon/src/icon.mjs +0 -2
  364. package/es/src/icon/src/icon.mjs.map +0 -1
  365. package/es/src/image-upload/index.mjs +0 -2
  366. package/es/src/image-upload/index.mjs.map +0 -1
  367. package/es/src/image-upload/src/image-upload.vue.mjs +0 -2
  368. package/es/src/image-upload/src/image-upload.vue.mjs.map +0 -1
  369. package/es/src/image-upload/src/image-upload.vue2.mjs +0 -2
  370. package/es/src/image-upload/src/image-upload.vue2.mjs.map +0 -1
  371. package/es/src/image-upload/src/image-upload.vue3.mjs +0 -2
  372. package/es/src/image-upload/src/image-upload.vue3.mjs.map +0 -1
  373. package/es/src/make-installer.mjs +0 -2
  374. package/es/src/make-installer.mjs.map +0 -1
  375. package/es/src/message/src/message.mjs +0 -2
  376. package/es/src/message/src/message.mjs.map +0 -1
  377. package/es/src/photo-crop-tool/index.mjs +0 -2
  378. package/es/src/photo-crop-tool/index.mjs.map +0 -1
  379. package/es/src/photo-crop-tool/src/composables.mjs +0 -2
  380. package/es/src/photo-crop-tool/src/composables.mjs.map +0 -1
  381. package/es/src/photo-crop-tool/src/photo-crop-tool.vue.mjs +0 -2
  382. package/es/src/photo-crop-tool/src/photo-crop-tool.vue.mjs.map +0 -1
  383. package/es/src/photo-crop-tool/src/photo-crop-tool.vue2.mjs +0 -2
  384. package/es/src/photo-crop-tool/src/photo-crop-tool.vue2.mjs.map +0 -1
  385. package/es/src/subject-action/index.mjs +0 -2
  386. package/es/src/subject-action/index.mjs.map +0 -1
  387. package/es/src/subject-action/src/subject-action.vue.mjs +0 -2
  388. package/es/src/subject-action/src/subject-action.vue.mjs.map +0 -1
  389. package/es/src/subject-action/src/subject-action.vue2.mjs +0 -2
  390. package/es/src/subject-action/src/subject-action.vue2.mjs.map +0 -1
  391. package/es/src/subject-layout/index.mjs +0 -2
  392. package/es/src/subject-layout/index.mjs.map +0 -1
  393. package/es/src/subject-layout/src/subject-layout.vue.mjs +0 -2
  394. package/es/src/subject-layout/src/subject-layout.vue.mjs.map +0 -1
  395. package/es/src/subject-layout/src/subject-layout.vue2.mjs +0 -2
  396. package/es/src/subject-layout/src/subject-layout.vue2.mjs.map +0 -1
  397. package/es/src/subject-list/index.mjs +0 -2
  398. package/es/src/subject-list/index.mjs.map +0 -1
  399. package/es/src/subject-list/src/components/SubjectPageEnd.vue.mjs +0 -2
  400. package/es/src/subject-list/src/components/SubjectPageEnd.vue.mjs.map +0 -1
  401. package/es/src/subject-list/src/components/SubjectPageEnd.vue2.mjs +0 -2
  402. package/es/src/subject-list/src/components/SubjectPageEnd.vue2.mjs.map +0 -1
  403. package/es/src/subject-list/src/components/SubjectRichText.vue.mjs +0 -2
  404. package/es/src/subject-list/src/components/SubjectRichText.vue.mjs.map +0 -1
  405. package/es/src/subject-list/src/components/SubjectRichText.vue2.mjs +0 -2
  406. package/es/src/subject-list/src/components/SubjectRichText.vue2.mjs.map +0 -1
  407. package/es/src/subject-list/src/components/subject-blank-fill.vue.mjs +0 -2
  408. package/es/src/subject-list/src/components/subject-blank-fill.vue.mjs.map +0 -1
  409. package/es/src/subject-list/src/components/subject-blank-fill.vue2.mjs +0 -2
  410. package/es/src/subject-list/src/components/subject-blank-fill.vue2.mjs.map +0 -1
  411. package/es/src/subject-list/src/components/subject-scale.vue.mjs +0 -2
  412. package/es/src/subject-list/src/components/subject-scale.vue.mjs.map +0 -1
  413. package/es/src/subject-list/src/components/subject-scale.vue2.mjs +0 -2
  414. package/es/src/subject-list/src/components/subject-scale.vue2.mjs.map +0 -1
  415. package/es/src/subject-list/src/components/subject-single.vue.mjs +0 -2
  416. package/es/src/subject-list/src/components/subject-single.vue.mjs.map +0 -1
  417. package/es/src/subject-list/src/components/subject-single.vue2.mjs +0 -2
  418. package/es/src/subject-list/src/components/subject-single.vue2.mjs.map +0 -1
  419. package/es/src/subject-list/src/components/subject-text-fill.vue.mjs +0 -2
  420. package/es/src/subject-list/src/components/subject-text-fill.vue.mjs.map +0 -1
  421. package/es/src/subject-list/src/components/subject-text-fill.vue2.mjs +0 -2
  422. package/es/src/subject-list/src/components/subject-text-fill.vue2.mjs.map +0 -1
  423. package/es/src/subject-list/src/subject-list.vue.mjs +0 -2
  424. package/es/src/subject-list/src/subject-list.vue.mjs.map +0 -1
  425. package/es/src/subject-list/src/subject-list.vue2.mjs +0 -2
  426. package/es/src/subject-list/src/subject-list.vue2.mjs.map +0 -1
  427. package/es/src/subject-type/index.mjs +0 -2
  428. package/es/src/subject-type/index.mjs.map +0 -1
  429. package/es/src/subject-type/src/subject-type.vue.mjs +0 -2
  430. package/es/src/subject-type/src/subject-type.vue.mjs.map +0 -1
  431. package/es/src/subject-type/src/subject-type.vue2.mjs +0 -2
  432. package/es/src/subject-type/src/subject-type.vue2.mjs.map +0 -1
  433. package/es/src/tiny-mce-editor/index.mjs +0 -2
  434. package/es/src/tiny-mce-editor/index.mjs.map +0 -1
  435. package/es/src/tiny-mce-editor/src/tiny-mce-editor.vue.mjs +0 -2
  436. package/es/src/tiny-mce-editor/src/tiny-mce-editor.vue.mjs.map +0 -1
  437. package/es/src/tiny-mce-editor/src/tiny-mce-editor.vue2.mjs +0 -2
  438. package/es/src/tiny-mce-editor/src/tiny-mce-editor.vue2.mjs.map +0 -1
  439. package/es/src/ui/button/index.mjs +0 -2
  440. package/es/src/ui/button/index.mjs.map +0 -1
  441. package/es/src/ui/checkbox/index.mjs +0 -2
  442. package/es/src/ui/checkbox/index.mjs.map +0 -1
  443. package/es/src/ui/dialog/index.mjs +0 -2
  444. package/es/src/ui/dialog/index.mjs.map +0 -1
  445. package/es/src/ui/input/index.mjs +0 -2
  446. package/es/src/ui/input/index.mjs.map +0 -1
  447. package/es/src/ui/input-number/index.mjs +0 -2
  448. package/es/src/ui/input-number/index.mjs.map +0 -1
  449. package/es/src/ui/layout/index.mjs +0 -2
  450. package/es/src/ui/layout/index.mjs.map +0 -1
  451. package/es/src/ui/link/index.mjs +0 -2
  452. package/es/src/ui/link/index.mjs.map +0 -1
  453. package/es/src/ui/popover/index.mjs +0 -2
  454. package/es/src/ui/popover/index.mjs.map +0 -1
  455. package/es/src/ui/radio/index.mjs +0 -2
  456. package/es/src/ui/radio/index.mjs.map +0 -1
  457. package/es/src/ui/scrollbar/index.mjs +0 -2
  458. package/es/src/ui/scrollbar/index.mjs.map +0 -1
  459. package/es/src/ui/select/index.mjs +0 -2
  460. package/es/src/ui/select/index.mjs.map +0 -1
  461. package/es/src/ui/table/index.mjs +0 -2
  462. package/es/src/ui/table/index.mjs.map +0 -1
  463. package/es/src/ui/tag/index.mjs +0 -2
  464. package/es/src/ui/tag/index.mjs.map +0 -1
  465. package/es/src/withInstall.mjs +0 -2
  466. package/es/src/withInstall.mjs.map +0 -1
  467. package/lib/_virtual/_commonjsHelpers.cjs +0 -2
  468. package/lib/_virtual/_commonjsHelpers.cjs.map +0 -1
  469. package/lib/_virtual/_plugin-vue_export-helper.cjs +0 -2
  470. package/lib/_virtual/_plugin-vue_export-helper.cjs.map +0 -1
  471. package/lib/_virtual/sortable.esm.cjs +0 -2
  472. package/lib/_virtual/sortable.esm.cjs.map +0 -1
  473. package/lib/_virtual/vuedraggable.umd.cjs +0 -2
  474. package/lib/_virtual/vuedraggable.umd.cjs.map +0 -1
  475. package/lib/_virtual/vuedraggable.umd2.cjs +0 -2
  476. package/lib/_virtual/vuedraggable.umd2.cjs.map +0 -1
  477. package/lib/node_modules/.pnpm/@iconify_vue@5.0.0_vue@3.5.18_typescript@5.9.2_/node_modules/@iconify/vue/dist/iconify.cjs +0 -2
  478. package/lib/node_modules/.pnpm/@iconify_vue@5.0.0_vue@3.5.18_typescript@5.9.2_/node_modules/@iconify/vue/dist/iconify.cjs.map +0 -1
  479. package/lib/node_modules/.pnpm/sortablejs@1.14.0/node_modules/sortablejs/modular/sortable.esm.cjs +0 -9
  480. package/lib/node_modules/.pnpm/sortablejs@1.14.0/node_modules/sortablejs/modular/sortable.esm.cjs.map +0 -1
  481. package/lib/node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.cjs +0 -2
  482. package/lib/node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.cjs.map +0 -1
  483. package/lib/node_modules/.pnpm/vuedraggable@4.1.0_vue@3.5.18_typescript@5.9.2_/node_modules/vuedraggable/dist/vuedraggable.umd.cjs +0 -2
  484. package/lib/node_modules/.pnpm/vuedraggable@4.1.0_vue@3.5.18_typescript@5.9.2_/node_modules/vuedraggable/dist/vuedraggable.umd.cjs.map +0 -1
  485. package/lib/package.json.cjs +0 -2
  486. package/lib/package.json.cjs.map +0 -1
  487. package/lib/src/alert/index.cjs +0 -2
  488. package/lib/src/alert/index.cjs.map +0 -1
  489. package/lib/src/alert/src/alert.cjs +0 -2
  490. package/lib/src/alert/src/alert.cjs.map +0 -1
  491. package/lib/src/components.cjs +0 -2
  492. package/lib/src/components.cjs.map +0 -1
  493. package/lib/src/data-chart/index.cjs +0 -2
  494. package/lib/src/data-chart/index.cjs.map +0 -1
  495. package/lib/src/data-chart/src/analyze.cjs +0 -2
  496. package/lib/src/data-chart/src/analyze.cjs.map +0 -1
  497. package/lib/src/data-chart/src/components/area.vue.cjs +0 -2
  498. package/lib/src/data-chart/src/components/area.vue.cjs.map +0 -1
  499. package/lib/src/data-chart/src/components/area.vue2.cjs +0 -2
  500. package/lib/src/data-chart/src/components/area.vue2.cjs.map +0 -1
  501. package/lib/src/data-chart/src/components/area.vue3.cjs +0 -2
  502. package/lib/src/data-chart/src/components/area.vue3.cjs.map +0 -1
  503. package/lib/src/data-chart/src/components/bar.vue.cjs +0 -2
  504. package/lib/src/data-chart/src/components/bar.vue.cjs.map +0 -1
  505. package/lib/src/data-chart/src/components/bar.vue2.cjs +0 -2
  506. package/lib/src/data-chart/src/components/bar.vue2.cjs.map +0 -1
  507. package/lib/src/data-chart/src/components/bar.vue3.cjs +0 -2
  508. package/lib/src/data-chart/src/components/bar.vue3.cjs.map +0 -1
  509. package/lib/src/data-chart/src/components/card.vue.cjs +0 -2
  510. package/lib/src/data-chart/src/components/card.vue.cjs.map +0 -1
  511. package/lib/src/data-chart/src/components/card.vue2.cjs +0 -2
  512. package/lib/src/data-chart/src/components/card.vue2.cjs.map +0 -1
  513. package/lib/src/data-chart/src/components/card.vue3.cjs +0 -2
  514. package/lib/src/data-chart/src/components/card.vue3.cjs.map +0 -1
  515. package/lib/src/data-chart/src/components/data-chart-card-bg-left.svg.cjs +0 -2
  516. package/lib/src/data-chart/src/components/data-chart-card-bg-left.svg.cjs.map +0 -1
  517. package/lib/src/data-chart/src/components/data-chart-card-bg-right.svg.cjs +0 -2
  518. package/lib/src/data-chart/src/components/data-chart-card-bg-right.svg.cjs.map +0 -1
  519. package/lib/src/data-chart/src/components/empty.svg.cjs +0 -2
  520. package/lib/src/data-chart/src/components/empty.svg.cjs.map +0 -1
  521. package/lib/src/data-chart/src/components/empty.vue.cjs +0 -2
  522. package/lib/src/data-chart/src/components/empty.vue.cjs.map +0 -1
  523. package/lib/src/data-chart/src/components/empty.vue2.cjs +0 -2
  524. package/lib/src/data-chart/src/components/empty.vue2.cjs.map +0 -1
  525. package/lib/src/data-chart/src/components/funnel.vue.cjs +0 -2
  526. package/lib/src/data-chart/src/components/funnel.vue.cjs.map +0 -1
  527. package/lib/src/data-chart/src/components/funnel.vue2.cjs +0 -2
  528. package/lib/src/data-chart/src/components/funnel.vue2.cjs.map +0 -1
  529. package/lib/src/data-chart/src/components/funnel.vue3.cjs +0 -2
  530. package/lib/src/data-chart/src/components/funnel.vue3.cjs.map +0 -1
  531. package/lib/src/data-chart/src/components/line.vue.cjs +0 -2
  532. package/lib/src/data-chart/src/components/line.vue.cjs.map +0 -1
  533. package/lib/src/data-chart/src/components/line.vue2.cjs +0 -2
  534. package/lib/src/data-chart/src/components/line.vue2.cjs.map +0 -1
  535. package/lib/src/data-chart/src/components/line.vue3.cjs +0 -2
  536. package/lib/src/data-chart/src/components/line.vue3.cjs.map +0 -1
  537. package/lib/src/data-chart/src/components/pie.vue.cjs +0 -2
  538. package/lib/src/data-chart/src/components/pie.vue.cjs.map +0 -1
  539. package/lib/src/data-chart/src/components/pie.vue2.cjs +0 -2
  540. package/lib/src/data-chart/src/components/pie.vue2.cjs.map +0 -1
  541. package/lib/src/data-chart/src/components/pie.vue3.cjs +0 -2
  542. package/lib/src/data-chart/src/components/pie.vue3.cjs.map +0 -1
  543. package/lib/src/data-chart/src/components/radar.vue.cjs +0 -2
  544. package/lib/src/data-chart/src/components/radar.vue.cjs.map +0 -1
  545. package/lib/src/data-chart/src/components/radar.vue2.cjs +0 -2
  546. package/lib/src/data-chart/src/components/radar.vue2.cjs.map +0 -1
  547. package/lib/src/data-chart/src/components/radar.vue3.cjs +0 -2
  548. package/lib/src/data-chart/src/components/radar.vue3.cjs.map +0 -1
  549. package/lib/src/data-chart/src/components/scatter-simple.vue.cjs +0 -2
  550. package/lib/src/data-chart/src/components/scatter-simple.vue.cjs.map +0 -1
  551. package/lib/src/data-chart/src/components/scatter-simple.vue2.cjs +0 -2
  552. package/lib/src/data-chart/src/components/scatter-simple.vue2.cjs.map +0 -1
  553. package/lib/src/data-chart/src/components/scatter-simple.vue3.cjs +0 -2
  554. package/lib/src/data-chart/src/components/scatter-simple.vue3.cjs.map +0 -1
  555. package/lib/src/data-chart/src/components/scatter.vue.cjs +0 -2
  556. package/lib/src/data-chart/src/components/scatter.vue.cjs.map +0 -1
  557. package/lib/src/data-chart/src/components/scatter.vue2.cjs +0 -2
  558. package/lib/src/data-chart/src/components/scatter.vue2.cjs.map +0 -1
  559. package/lib/src/data-chart/src/components/scatter.vue3.cjs +0 -2
  560. package/lib/src/data-chart/src/components/scatter.vue3.cjs.map +0 -1
  561. package/lib/src/data-chart/src/components/table.vue.cjs +0 -2
  562. package/lib/src/data-chart/src/components/table.vue.cjs.map +0 -1
  563. package/lib/src/data-chart/src/components/table.vue2.cjs +0 -2
  564. package/lib/src/data-chart/src/components/table.vue2.cjs.map +0 -1
  565. package/lib/src/data-chart/src/data-chart.vue.cjs +0 -2
  566. package/lib/src/data-chart/src/data-chart.vue.cjs.map +0 -1
  567. package/lib/src/data-chart/src/data-chart.vue2.cjs +0 -2
  568. package/lib/src/data-chart/src/data-chart.vue2.cjs.map +0 -1
  569. package/lib/src/data-chart/src/utils/config.cjs +0 -2
  570. package/lib/src/data-chart/src/utils/config.cjs.map +0 -1
  571. package/lib/src/data-chart/src/utils/injectionKeys.cjs +0 -2
  572. package/lib/src/data-chart/src/utils/injectionKeys.cjs.map +0 -1
  573. package/lib/src/data-chart/src/utils/mapData.cjs +0 -2
  574. package/lib/src/data-chart/src/utils/mapData.cjs.map +0 -1
  575. package/lib/src/data-chart/src/utils/safe-eval.cjs +0 -2
  576. package/lib/src/data-chart/src/utils/safe-eval.cjs.map +0 -1
  577. package/lib/src/data-chart/src/utils/types.cjs +0 -2
  578. package/lib/src/data-chart/src/utils/types.cjs.map +0 -1
  579. package/lib/src/data-chart/src/utils/useCharts.cjs +0 -2
  580. package/lib/src/data-chart/src/utils/useCharts.cjs.map +0 -1
  581. package/lib/src/defaults.cjs +0 -2
  582. package/lib/src/defaults.cjs.map +0 -1
  583. package/lib/src/dialog/src/dialog.cjs +0 -2
  584. package/lib/src/dialog/src/dialog.cjs.map +0 -1
  585. package/lib/src/feedback-plugin/index.cjs +0 -2
  586. package/lib/src/feedback-plugin/index.cjs.map +0 -1
  587. package/lib/src/file-upload/index.cjs +0 -2
  588. package/lib/src/file-upload/index.cjs.map +0 -1
  589. package/lib/src/file-upload/src/file-upload.vue.cjs +0 -2
  590. package/lib/src/file-upload/src/file-upload.vue.cjs.map +0 -1
  591. package/lib/src/file-upload/src/file-upload.vue2.cjs +0 -2
  592. package/lib/src/file-upload/src/file-upload.vue2.cjs.map +0 -1
  593. package/lib/src/file-upload/src/file-upload.vue3.cjs +0 -2
  594. package/lib/src/file-upload/src/file-upload.vue3.cjs.map +0 -1
  595. package/lib/src/fixed-action-bar/index.cjs +0 -2
  596. package/lib/src/fixed-action-bar/index.cjs.map +0 -1
  597. package/lib/src/fixed-action-bar/src/fixed-action-bar.vue.cjs +0 -2
  598. package/lib/src/fixed-action-bar/src/fixed-action-bar.vue.cjs.map +0 -1
  599. package/lib/src/fixed-action-bar/src/fixed-action-bar.vue2.cjs +0 -2
  600. package/lib/src/fixed-action-bar/src/fixed-action-bar.vue2.cjs.map +0 -1
  601. package/lib/src/icon/index.cjs +0 -2
  602. package/lib/src/icon/index.cjs.map +0 -1
  603. package/lib/src/icon/src/icon.cjs +0 -2
  604. package/lib/src/icon/src/icon.cjs.map +0 -1
  605. package/lib/src/image-upload/index.cjs +0 -2
  606. package/lib/src/image-upload/index.cjs.map +0 -1
  607. package/lib/src/image-upload/src/image-upload.vue.cjs +0 -2
  608. package/lib/src/image-upload/src/image-upload.vue.cjs.map +0 -1
  609. package/lib/src/image-upload/src/image-upload.vue2.cjs +0 -2
  610. package/lib/src/image-upload/src/image-upload.vue2.cjs.map +0 -1
  611. package/lib/src/image-upload/src/image-upload.vue3.cjs +0 -2
  612. package/lib/src/image-upload/src/image-upload.vue3.cjs.map +0 -1
  613. package/lib/src/make-installer.cjs +0 -2
  614. package/lib/src/make-installer.cjs.map +0 -1
  615. package/lib/src/message/src/message.cjs +0 -2
  616. package/lib/src/message/src/message.cjs.map +0 -1
  617. package/lib/src/photo-crop-tool/index.cjs +0 -2
  618. package/lib/src/photo-crop-tool/index.cjs.map +0 -1
  619. package/lib/src/photo-crop-tool/src/composables.cjs +0 -2
  620. package/lib/src/photo-crop-tool/src/composables.cjs.map +0 -1
  621. package/lib/src/photo-crop-tool/src/photo-crop-tool.vue.cjs +0 -2
  622. package/lib/src/photo-crop-tool/src/photo-crop-tool.vue.cjs.map +0 -1
  623. package/lib/src/photo-crop-tool/src/photo-crop-tool.vue2.cjs +0 -2
  624. package/lib/src/photo-crop-tool/src/photo-crop-tool.vue2.cjs.map +0 -1
  625. package/lib/src/subject-action/index.cjs +0 -2
  626. package/lib/src/subject-action/index.cjs.map +0 -1
  627. package/lib/src/subject-action/src/subject-action.vue.cjs +0 -2
  628. package/lib/src/subject-action/src/subject-action.vue.cjs.map +0 -1
  629. package/lib/src/subject-action/src/subject-action.vue2.cjs +0 -2
  630. package/lib/src/subject-action/src/subject-action.vue2.cjs.map +0 -1
  631. package/lib/src/subject-layout/index.cjs +0 -2
  632. package/lib/src/subject-layout/index.cjs.map +0 -1
  633. package/lib/src/subject-layout/src/subject-layout.vue.cjs +0 -2
  634. package/lib/src/subject-layout/src/subject-layout.vue.cjs.map +0 -1
  635. package/lib/src/subject-layout/src/subject-layout.vue2.cjs +0 -2
  636. package/lib/src/subject-layout/src/subject-layout.vue2.cjs.map +0 -1
  637. package/lib/src/subject-list/index.cjs +0 -2
  638. package/lib/src/subject-list/index.cjs.map +0 -1
  639. package/lib/src/subject-list/src/components/SubjectPageEnd.vue.cjs +0 -2
  640. package/lib/src/subject-list/src/components/SubjectPageEnd.vue.cjs.map +0 -1
  641. package/lib/src/subject-list/src/components/SubjectPageEnd.vue2.cjs +0 -2
  642. package/lib/src/subject-list/src/components/SubjectPageEnd.vue2.cjs.map +0 -1
  643. package/lib/src/subject-list/src/components/SubjectRichText.vue.cjs +0 -2
  644. package/lib/src/subject-list/src/components/SubjectRichText.vue.cjs.map +0 -1
  645. package/lib/src/subject-list/src/components/SubjectRichText.vue2.cjs +0 -2
  646. package/lib/src/subject-list/src/components/SubjectRichText.vue2.cjs.map +0 -1
  647. package/lib/src/subject-list/src/components/subject-blank-fill.vue.cjs +0 -2
  648. package/lib/src/subject-list/src/components/subject-blank-fill.vue.cjs.map +0 -1
  649. package/lib/src/subject-list/src/components/subject-blank-fill.vue2.cjs +0 -2
  650. package/lib/src/subject-list/src/components/subject-blank-fill.vue2.cjs.map +0 -1
  651. package/lib/src/subject-list/src/components/subject-scale.vue.cjs +0 -2
  652. package/lib/src/subject-list/src/components/subject-scale.vue.cjs.map +0 -1
  653. package/lib/src/subject-list/src/components/subject-scale.vue2.cjs +0 -2
  654. package/lib/src/subject-list/src/components/subject-scale.vue2.cjs.map +0 -1
  655. package/lib/src/subject-list/src/components/subject-single.vue.cjs +0 -2
  656. package/lib/src/subject-list/src/components/subject-single.vue.cjs.map +0 -1
  657. package/lib/src/subject-list/src/components/subject-single.vue2.cjs +0 -2
  658. package/lib/src/subject-list/src/components/subject-single.vue2.cjs.map +0 -1
  659. package/lib/src/subject-list/src/components/subject-text-fill.vue.cjs +0 -2
  660. package/lib/src/subject-list/src/components/subject-text-fill.vue.cjs.map +0 -1
  661. package/lib/src/subject-list/src/components/subject-text-fill.vue2.cjs +0 -2
  662. package/lib/src/subject-list/src/components/subject-text-fill.vue2.cjs.map +0 -1
  663. package/lib/src/subject-list/src/subject-list.vue.cjs +0 -2
  664. package/lib/src/subject-list/src/subject-list.vue.cjs.map +0 -1
  665. package/lib/src/subject-list/src/subject-list.vue2.cjs +0 -2
  666. package/lib/src/subject-list/src/subject-list.vue2.cjs.map +0 -1
  667. package/lib/src/subject-type/index.cjs +0 -2
  668. package/lib/src/subject-type/index.cjs.map +0 -1
  669. package/lib/src/subject-type/src/subject-type.vue.cjs +0 -2
  670. package/lib/src/subject-type/src/subject-type.vue.cjs.map +0 -1
  671. package/lib/src/subject-type/src/subject-type.vue2.cjs +0 -2
  672. package/lib/src/subject-type/src/subject-type.vue2.cjs.map +0 -1
  673. package/lib/src/tiny-mce-editor/index.cjs +0 -2
  674. package/lib/src/tiny-mce-editor/index.cjs.map +0 -1
  675. package/lib/src/tiny-mce-editor/src/tiny-mce-editor.vue.cjs +0 -2
  676. package/lib/src/tiny-mce-editor/src/tiny-mce-editor.vue.cjs.map +0 -1
  677. package/lib/src/tiny-mce-editor/src/tiny-mce-editor.vue2.cjs +0 -2
  678. package/lib/src/tiny-mce-editor/src/tiny-mce-editor.vue2.cjs.map +0 -1
  679. package/lib/src/ui/button/index.cjs +0 -2
  680. package/lib/src/ui/button/index.cjs.map +0 -1
  681. package/lib/src/ui/checkbox/index.cjs +0 -2
  682. package/lib/src/ui/checkbox/index.cjs.map +0 -1
  683. package/lib/src/ui/dialog/index.cjs +0 -2
  684. package/lib/src/ui/dialog/index.cjs.map +0 -1
  685. package/lib/src/ui/input/index.cjs +0 -2
  686. package/lib/src/ui/input/index.cjs.map +0 -1
  687. package/lib/src/ui/input-number/index.cjs +0 -2
  688. package/lib/src/ui/input-number/index.cjs.map +0 -1
  689. package/lib/src/ui/layout/index.cjs +0 -2
  690. package/lib/src/ui/layout/index.cjs.map +0 -1
  691. package/lib/src/ui/link/index.cjs +0 -2
  692. package/lib/src/ui/link/index.cjs.map +0 -1
  693. package/lib/src/ui/popover/index.cjs +0 -2
  694. package/lib/src/ui/popover/index.cjs.map +0 -1
  695. package/lib/src/ui/radio/index.cjs +0 -2
  696. package/lib/src/ui/radio/index.cjs.map +0 -1
  697. package/lib/src/ui/scrollbar/index.cjs +0 -2
  698. package/lib/src/ui/scrollbar/index.cjs.map +0 -1
  699. package/lib/src/ui/select/index.cjs +0 -2
  700. package/lib/src/ui/select/index.cjs.map +0 -1
  701. package/lib/src/ui/table/index.cjs +0 -2
  702. package/lib/src/ui/table/index.cjs.map +0 -1
  703. package/lib/src/ui/tag/index.cjs +0 -2
  704. package/lib/src/ui/tag/index.cjs.map +0 -1
  705. package/lib/src/withInstall.cjs +0 -2
  706. package/lib/src/withInstall.cjs.map +0 -1
  707. package/theme-chalk/index.css +0 -1
  708. package/theme-chalk/index.scss +0 -21
  709. package/theme-chalk/src/base.css +0 -1
  710. package/theme-chalk/src/base.scss +0 -16
  711. package/theme-chalk/src/common/qxs-components.css +0 -1
  712. package/theme-chalk/src/common/qxs-components.scss +0 -4
  713. package/theme-chalk/src/common/qxs-variables.css +0 -1
  714. package/theme-chalk/src/common/qxs-variables.scss +0 -81
  715. package/theme-chalk/src/data-chart/empty.css +0 -1
  716. package/theme-chalk/src/data-chart/empty.scss +0 -24
  717. package/theme-chalk/src/data-chart/index.css +0 -1
  718. package/theme-chalk/src/data-chart/index.scss +0 -11
  719. package/theme-chalk/src/data-chart/table.css +0 -1
  720. package/theme-chalk/src/data-chart/table.scss +0 -43
  721. package/theme-chalk/src/dialog.css +0 -1
  722. package/theme-chalk/src/dialog.scss +0 -122
  723. package/theme-chalk/src/file-upload.css +0 -0
  724. package/theme-chalk/src/file-upload.scss +0 -7
  725. package/theme-chalk/src/fixed-action-bar.css +0 -1
  726. package/theme-chalk/src/fixed-action-bar.scss +0 -18
  727. package/theme-chalk/src/icon.css +0 -1
  728. package/theme-chalk/src/icon.scss +0 -35
  729. package/theme-chalk/src/image-upload.css +0 -1
  730. package/theme-chalk/src/image-upload.scss +0 -149
  731. package/theme-chalk/src/mixins/_var.css +0 -0
  732. package/theme-chalk/src/mixins/_var.scss +0 -24
  733. package/theme-chalk/src/mixins/config.css +0 -0
  734. package/theme-chalk/src/mixins/config.scss +0 -12
  735. package/theme-chalk/src/mixins/function.css +0 -0
  736. package/theme-chalk/src/mixins/function.scss +0 -95
  737. package/theme-chalk/src/mixins/mixins.css +0 -0
  738. package/theme-chalk/src/mixins/mixins.scss +0 -102
  739. package/theme-chalk/src/normalize.css +0 -1
  740. package/theme-chalk/src/normalize.scss +0 -11
  741. package/theme-chalk/src/photo-crop-tool.css +0 -1
  742. package/theme-chalk/src/photo-crop-tool.scss +0 -98
  743. package/theme-chalk/src/subject-action.css +0 -1
  744. package/theme-chalk/src/subject-action.scss +0 -78
  745. package/theme-chalk/src/subject-layout.css +0 -1
  746. package/theme-chalk/src/subject-layout.scss +0 -28
  747. package/theme-chalk/src/subject-list.css +0 -1
  748. package/theme-chalk/src/subject-list.scss +0 -568
  749. package/theme-chalk/src/subject-template.css +0 -1
  750. package/theme-chalk/src/subject-template.scss +0 -5
  751. package/theme-chalk/src/subject-type.css +0 -1
  752. package/theme-chalk/src/subject-type.scss +0 -42
  753. package/theme-chalk/src/tiny-mce-editor.css +0 -1
  754. package/theme-chalk/src/tiny-mce-editor.scss +0 -29
  755. package/theme-chalk/src/ui/button.css +0 -1
  756. package/theme-chalk/src/ui/button.scss +0 -173
  757. package/theme-chalk/src/ui/input.css +0 -1
  758. package/theme-chalk/src/ui/input.scss +0 -128
  759. package/theme-chalk/src/ui/table.css +0 -1
  760. package/theme-chalk/src/ui/table.scss +0 -166
  761. package/types/index.d.ts.map +0 -1
  762. package/types/src/alert/index.d.ts +0 -66
  763. package/types/src/alert/index.d.ts.map +0 -1
  764. package/types/src/alert/src/alert.d.ts +0 -73
  765. package/types/src/alert/src/alert.d.ts.map +0 -1
  766. package/types/src/components.d.ts +0 -15
  767. package/types/src/components.d.ts.map +0 -1
  768. package/types/src/data-chart/index.d.ts +0 -29
  769. package/types/src/data-chart/index.d.ts.map +0 -1
  770. package/types/src/data-chart/src/analyze.d.ts +0 -23
  771. package/types/src/data-chart/src/analyze.d.ts.map +0 -1
  772. package/types/src/data-chart/src/components/area.vue.d.ts +0 -12
  773. package/types/src/data-chart/src/components/area.vue.d.ts.map +0 -1
  774. package/types/src/data-chart/src/components/bar.vue.d.ts +0 -12
  775. package/types/src/data-chart/src/components/bar.vue.d.ts.map +0 -1
  776. package/types/src/data-chart/src/components/card.vue.d.ts +0 -27
  777. package/types/src/data-chart/src/components/card.vue.d.ts.map +0 -1
  778. package/types/src/data-chart/src/components/empty.vue.d.ts +0 -11
  779. package/types/src/data-chart/src/components/empty.vue.d.ts.map +0 -1
  780. package/types/src/data-chart/src/components/funnel.vue.d.ts +0 -11
  781. package/types/src/data-chart/src/components/funnel.vue.d.ts.map +0 -1
  782. package/types/src/data-chart/src/components/line.vue.d.ts +0 -12
  783. package/types/src/data-chart/src/components/line.vue.d.ts.map +0 -1
  784. package/types/src/data-chart/src/components/pie.vue.d.ts +0 -12
  785. package/types/src/data-chart/src/components/pie.vue.d.ts.map +0 -1
  786. package/types/src/data-chart/src/components/radar.vue.d.ts +0 -11
  787. package/types/src/data-chart/src/components/radar.vue.d.ts.map +0 -1
  788. package/types/src/data-chart/src/components/scatter-simple.vue.d.ts +0 -11
  789. package/types/src/data-chart/src/components/scatter-simple.vue.d.ts.map +0 -1
  790. package/types/src/data-chart/src/components/scatter.vue.d.ts +0 -11
  791. package/types/src/data-chart/src/components/scatter.vue.d.ts.map +0 -1
  792. package/types/src/data-chart/src/components/table.vue.d.ts +0 -27
  793. package/types/src/data-chart/src/components/table.vue.d.ts.map +0 -1
  794. package/types/src/data-chart/src/data-chart.vue.d.ts +0 -28
  795. package/types/src/data-chart/src/data-chart.vue.d.ts.map +0 -1
  796. package/types/src/data-chart/src/utils/config.d.ts +0 -41
  797. package/types/src/data-chart/src/utils/config.d.ts.map +0 -1
  798. package/types/src/data-chart/src/utils/injectionKeys.d.ts +0 -3
  799. package/types/src/data-chart/src/utils/injectionKeys.d.ts.map +0 -1
  800. package/types/src/data-chart/src/utils/mapData.d.ts +0 -64
  801. package/types/src/data-chart/src/utils/mapData.d.ts.map +0 -1
  802. package/types/src/data-chart/src/utils/safe-eval.d.ts +0 -9
  803. package/types/src/data-chart/src/utils/safe-eval.d.ts.map +0 -1
  804. package/types/src/data-chart/src/utils/types.d.ts +0 -72
  805. package/types/src/data-chart/src/utils/types.d.ts.map +0 -1
  806. package/types/src/data-chart/src/utils/useCharts.d.ts +0 -16
  807. package/types/src/data-chart/src/utils/useCharts.d.ts.map +0 -1
  808. package/types/src/defaults.d.ts +0 -6
  809. package/types/src/defaults.d.ts.map +0 -1
  810. package/types/src/dialog/index.d.ts +0 -3
  811. package/types/src/dialog/index.d.ts.map +0 -1
  812. package/types/src/dialog/src/dialog.d.ts +0 -25
  813. package/types/src/dialog/src/dialog.d.ts.map +0 -1
  814. package/types/src/feedback-plugin/index.d.ts +0 -9
  815. package/types/src/feedback-plugin/index.d.ts.map +0 -1
  816. package/types/src/file-upload/index.d.ts +0 -19
  817. package/types/src/file-upload/index.d.ts.map +0 -1
  818. package/types/src/file-upload/src/file-upload.vue.d.ts +0 -34
  819. package/types/src/file-upload/src/file-upload.vue.d.ts.map +0 -1
  820. package/types/src/fixed-action-bar/index.d.ts +0 -56
  821. package/types/src/fixed-action-bar/index.d.ts.map +0 -1
  822. package/types/src/fixed-action-bar/src/fixed-action-bar.vue.d.ts +0 -31
  823. package/types/src/fixed-action-bar/src/fixed-action-bar.vue.d.ts.map +0 -1
  824. package/types/src/icon/index.d.ts +0 -56
  825. package/types/src/icon/index.d.ts.map +0 -1
  826. package/types/src/icon/src/icon.d.ts +0 -62
  827. package/types/src/icon/src/icon.d.ts.map +0 -1
  828. package/types/src/image-upload/index.d.ts +0 -27
  829. package/types/src/image-upload/index.d.ts.map +0 -1
  830. package/types/src/image-upload/src/image-upload.vue.d.ts +0 -49
  831. package/types/src/image-upload/src/image-upload.vue.d.ts.map +0 -1
  832. package/types/src/make-installer.d.ts +0 -6
  833. package/types/src/make-installer.d.ts.map +0 -1
  834. package/types/src/message/index.d.ts +0 -3
  835. package/types/src/message/index.d.ts.map +0 -1
  836. package/types/src/message/src/message.d.ts +0 -21
  837. package/types/src/message/src/message.d.ts.map +0 -1
  838. package/types/src/message/src/toaster.vue.d.ts +0 -3
  839. package/types/src/message/src/toaster.vue.d.ts.map +0 -1
  840. package/types/src/photo-crop-tool/index.d.ts +0 -55
  841. package/types/src/photo-crop-tool/index.d.ts.map +0 -1
  842. package/types/src/photo-crop-tool/src/composables.d.ts +0 -7
  843. package/types/src/photo-crop-tool/src/composables.d.ts.map +0 -1
  844. package/types/src/photo-crop-tool/src/photo-crop-tool.vue.d.ts +0 -65
  845. package/types/src/photo-crop-tool/src/photo-crop-tool.vue.d.ts.map +0 -1
  846. package/types/src/subject-action/index.d.ts +0 -93
  847. package/types/src/subject-action/index.d.ts.map +0 -1
  848. package/types/src/subject-action/src/subject-action.vue.d.ts +0 -92
  849. package/types/src/subject-action/src/subject-action.vue.d.ts.map +0 -1
  850. package/types/src/subject-layout/index.d.ts +0 -30
  851. package/types/src/subject-layout/index.d.ts.map +0 -1
  852. package/types/src/subject-layout/src/subject-layout.vue.d.ts +0 -20
  853. package/types/src/subject-layout/src/subject-layout.vue.d.ts.map +0 -1
  854. package/types/src/subject-list/index.d.ts +0 -20
  855. package/types/src/subject-list/index.d.ts.map +0 -1
  856. package/types/src/subject-list/src/components/SubjectPageEnd.vue.d.ts +0 -24
  857. package/types/src/subject-list/src/components/SubjectPageEnd.vue.d.ts.map +0 -1
  858. package/types/src/subject-list/src/components/SubjectRichText.vue.d.ts +0 -25
  859. package/types/src/subject-list/src/components/SubjectRichText.vue.d.ts.map +0 -1
  860. package/types/src/subject-list/src/components/subject-blank-fill.vue.d.ts +0 -32
  861. package/types/src/subject-list/src/components/subject-blank-fill.vue.d.ts.map +0 -1
  862. package/types/src/subject-list/src/components/subject-scale.vue.d.ts +0 -29
  863. package/types/src/subject-list/src/components/subject-scale.vue.d.ts.map +0 -1
  864. package/types/src/subject-list/src/components/subject-single.vue.d.ts +0 -37
  865. package/types/src/subject-list/src/components/subject-single.vue.d.ts.map +0 -1
  866. package/types/src/subject-list/src/components/subject-text-fill.vue.d.ts +0 -34
  867. package/types/src/subject-list/src/components/subject-text-fill.vue.d.ts.map +0 -1
  868. package/types/src/subject-list/src/subject-list.vue.d.ts +0 -21
  869. package/types/src/subject-list/src/subject-list.vue.d.ts.map +0 -1
  870. package/types/src/subject-type/index.d.ts +0 -8
  871. package/types/src/subject-type/index.d.ts.map +0 -1
  872. package/types/src/subject-type/src/subject-type.vue.d.ts +0 -7
  873. package/types/src/subject-type/src/subject-type.vue.d.ts.map +0 -1
  874. package/types/src/tiny-mce-editor/index.d.ts +0 -20
  875. package/types/src/tiny-mce-editor/index.d.ts.map +0 -1
  876. package/types/src/tiny-mce-editor/src/tiny-mce-editor.vue.d.ts +0 -32
  877. package/types/src/tiny-mce-editor/src/tiny-mce-editor.vue.d.ts.map +0 -1
  878. package/types/src/ui/button/index.d.ts +0 -96
  879. package/types/src/ui/button/index.d.ts.map +0 -1
  880. package/types/src/ui/checkbox/index.d.ts +0 -111
  881. package/types/src/ui/checkbox/index.d.ts.map +0 -1
  882. package/types/src/ui/dialog/index.d.ts +0 -134
  883. package/types/src/ui/dialog/index.d.ts.map +0 -1
  884. package/types/src/ui/index.d.ts +0 -16
  885. package/types/src/ui/index.d.ts.map +0 -1
  886. package/types/src/ui/input/index.d.ts +0 -132
  887. package/types/src/ui/input/index.d.ts.map +0 -1
  888. package/types/src/ui/input-number/index.d.ts +0 -106
  889. package/types/src/ui/input-number/index.d.ts.map +0 -1
  890. package/types/src/ui/layout/index.d.ts +0 -373
  891. package/types/src/ui/layout/index.d.ts.map +0 -1
  892. package/types/src/ui/link/index.d.ts +0 -57
  893. package/types/src/ui/link/index.d.ts.map +0 -1
  894. package/types/src/ui/popover/index.d.ts +0 -89
  895. package/types/src/ui/popover/index.d.ts.map +0 -1
  896. package/types/src/ui/radio/index.d.ts +0 -84
  897. package/types/src/ui/radio/index.d.ts.map +0 -1
  898. package/types/src/ui/scrollbar/index.d.ts +0 -35
  899. package/types/src/ui/scrollbar/index.d.ts.map +0 -1
  900. package/types/src/ui/select/index.d.ts +0 -113
  901. package/types/src/ui/select/index.d.ts.map +0 -1
  902. package/types/src/ui/table/index.d.ts +0 -152
  903. package/types/src/ui/table/index.d.ts.map +0 -1
  904. package/types/src/ui/tag/index.d.ts +0 -69
  905. package/types/src/ui/tag/index.d.ts.map +0 -1
  906. package/types/src/withInstall.d.ts +0 -4
  907. package/types/src/withInstall.d.ts.map +0 -1
  908. package/types/tsconfig.tsbuildinfo +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"line.vue2.mjs","sources":["../../../../../../../packages/components/src/data-chart/src/components/line.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { LegendComponentOption } from 'echarts'\nimport type { EChartsOption, IFormatPublicData } from '../utils/types'\nimport { computed, inject, ref } from 'vue'\nimport { InjectionChartMerge } from '../utils/injectionKeys'\nimport { useCharts } from '../utils/useCharts'\n\ndefineOptions({\n name: 'DataChartLine',\n})\nconst {\n chartData,\n subShowType = 'line-simple',\n chartOptions,\n lazyLoad = true,\n} = defineProps<{\n chartData: IFormatPublicData\n subShowType: string\n chartOptions: EChartsOption\n lazyLoad?: boolean\n}>()\nconst dataChartLine = ref()\nconst merge = inject(InjectionChartMerge, (v: any) => v, true)\n\n// 抽取类型定义\ninterface SeriesItem {\n name: string\n type: 'line'\n stack?: string\n smooth?: boolean\n areaStyle?: Record<string, any>\n data: Array<string | number | null>\n}\n\n// 将配置提取为常量\nconst CHART_CONSTANTS = {\n MIN_ZOOM_LENGTH: 15,\n STACK_NAME: 'Total',\n SMOOTH: true,\n} as const\n\n// 提取处理图表系列数据的函数\nfunction processSeriesData(legendDataItem: string,\n xAxisData: (string | number)[],\n data: any[],\n xGroupByDesc: any,\n yGroupByDesc: any,\n colDesc: string[]): SeriesItem {\n const seriesData: (string | number | null)[] = []\n\n xAxisData.forEach((xAxisItem) => {\n const targetData = data\n .find(dataItem =>\n dataItem[xGroupByDesc?.colDesc] === xAxisItem\n && dataItem[yGroupByDesc?.colDesc] === legendDataItem,\n )\n\n if (targetData && targetData[colDesc[0]] !== undefined && targetData[colDesc[0]] !== null) {\n seriesData.push(targetData[colDesc[0]])\n }\n else {\n seriesData.push(null) // 使用 null 而不是 0,让 ECharts 自动处理空值\n }\n })\n\n return {\n name: legendDataItem,\n type: 'line',\n smooth: CHART_CONSTANTS.SMOOTH,\n stack: CHART_CONSTANTS.STACK_NAME,\n areaStyle: {},\n data: seriesData,\n }\n}\n\nconst lineChartOptions = computed<EChartsOption>(() => {\n const { colDesc, xGroupByDesc, groupByDesc, data, modelName } = chartData\n\n // 数据验证\n if (!data || data.length === 0) {\n console.warn('[LineChart] 数据为空,图表将显示空状态')\n }\n\n if (!colDesc || colDesc.length === 0) {\n console.warn('[LineChart] colDesc 为空,无法生成图表系列')\n }\n\n if (!xGroupByDesc?.colDesc) {\n console.warn('[LineChart] xGroupByDesc.colDesc 为空,无法生成 X 轴数据')\n }\n\n const xAxisData = Array.from(new Set(data?.map(item => item[xGroupByDesc?.colDesc || '']))).filter(item => item !== undefined && item !== null) || []\n const yGroupByDesc = groupByDesc?.find(item => !item.xAxis)\n\n const config: EChartsOption & { series?: SeriesItem[] } = {\n title: { text: modelName },\n legend: { data: [] },\n xAxis: {\n name: xGroupByDesc?.colDesc || '',\n data: xAxisData,\n },\n dataZoom: [{\n type: 'inside',\n disabled: xAxisData.length < CHART_CONSTANTS.MIN_ZOOM_LENGTH,\n }],\n }\n\n // 处理系列数据\n if (groupByDesc?.length === 1) {\n config.series = colDesc.map(yItem => ({\n name: yItem,\n type: 'line',\n smooth: CHART_CONSTANTS.SMOOTH,\n data: xAxisData.map((xValue) => {\n const dataItem = data.find(item => item[xGroupByDesc?.colDesc || ''] === xValue)\n return dataItem ? (dataItem[yItem] ?? null) : null\n }),\n }));\n (config.legend as LegendComponentOption).data = colDesc\n }\n else if (groupByDesc?.length === 2) {\n const legendData = [...new Set(data.map(item => String(item[yGroupByDesc?.colDesc || ''])))]\n ;(config.legend as LegendComponentOption).data = legendData\n\n config.series = legendData.map(legendDataItem =>\n processSeriesData(legendDataItem, xAxisData, data, xGroupByDesc, yGroupByDesc, colDesc),\n )\n }\n\n // 处理图表展示类型\n config.series = config.series?.map((item) => {\n const seriesItem = { ...item }\n\n switch (subShowType) {\n case 'line-simple':\n delete seriesItem.areaStyle\n break\n case 'area-basic':\n seriesItem.areaStyle = {}\n break\n default:\n delete seriesItem.areaStyle\n }\n\n return seriesItem\n })\n\n return merge(config, chartOptions)\n})\n\nconst { myChart } = useCharts({\n chartDOM: dataChartLine,\n chartOptions: lineChartOptions,\n chartData: computed(() => chartData),\n lazyLoad,\n})\n\n// 暴露 myChart 方法供父组件访问\ndefineExpose({\n myChart,\n})\n</script>\n\n<template>\n <div\n ref=\"dataChartLine\"\n class=\"data-chart-line\"\n />\n</template>\n\n<style scoped lang=\"scss\">\n.data-chart-line {\n width: 100%;\n height: 100%;\n}\n</style>\n"],"names":["dataChartLine","ref","merge","inject","InjectionChartMerge","v","CHART_CONSTANTS","lineChartOptions","computed","colDesc","xGroupByDesc","groupByDesc","data","modelName","__props","chartData","length","xAxisData","Array","from","Set","map","item","filter","yGroupByDesc","find","xAxis","config","title","text","legend","name","dataZoom","type","disabled","series","yItem","smooth","xValue","dataItem","legendData","String","legendDataItem","seriesData","forEach","xAxisItem","targetData","push","stack","areaStyle","processSeriesData","seriesItem","subShowType","chartOptions","myChart","useCharts","chartDOM","lazyLoad","__expose","_createElementBlock","class"],"mappings":"geAqBA,MAAMA,EAAgBC,IAChBC,EAAQC,EAAOC,EAAsBC,GAAWA,GAAG,GAanDC,EACa,GADbA,EAEQ,QAFRA,GAGI,EAqCV,MAAMC,EAAmBC,EAAwB,KAC/C,MAAMC,QAAEA,EAAAC,aAASA,EAAAC,YAAcA,OAAaC,EAAAC,UAAMA,GAAcC,EAAAC,WAG3DH,GAAQA,EAAKI,QAIbP,GAAWA,EAAQO,OAQxB,MAAMC,EAAYC,MAAMC,KAAK,IAAIC,IAAIR,GAAMS,IAAIC,GAAQA,EAAKZ,GAAcD,SAAW,OAAOc,OAAOD,GAAQA,UAAwC,GAC7IE,EAAeb,GAAac,KAAKH,IAASA,EAAKI,OAE/CC,EAAoD,CACxDC,MAAO,CAAEC,KAAMhB,GACfiB,OAAQ,CAAElB,KAAM,IAChBc,MAAO,CACLK,KAAMrB,GAAcD,SAAW,GAC/BG,KAAMK,GAERe,SAAU,CAAC,CACTC,KAAM,SACNC,SAAUjB,EAAUD,OAASV,KAKjC,GAA4B,IAAxBK,GAAaK,OACfW,EAAOQ,OAAS1B,EAAQY,IAAIe,IAAA,CAC1BL,KAAMK,EACNH,KAAM,OACNI,OAAQ/B,EACRM,KAAMK,EAAUI,IAAKiB,IACnB,MAAMC,EAAW3B,EAAKa,KAAKH,GAAQA,EAAKZ,GAAcD,SAAW,MAAQ6B,GACzE,OAAOC,EAAYA,EAASH,IAAU,KAAQ,UAGjDT,EAAOG,OAAiClB,KAAOH,OAClD,GACiC,IAAxBE,GAAaK,OAAc,CAClC,MAAMwB,EAAa,IAAI,IAAIpB,IAAIR,EAAKS,IAAIC,GAAQmB,OAAOnB,EAAKE,GAAcf,SAAW,QACnFkB,EAAOG,OAAiClB,KAAO4B,EAEjDb,EAAOQ,OAASK,EAAWnB,OAlF/B,SAA2BqB,EACzBzB,EACAL,EACAF,EACAc,EACAf,GACA,MAAMkC,EAAyC,GAiB/C,OAfA1B,EAAU2B,QAASC,IACjB,MAAMC,EAAalC,EAChBa,KAAKc,GACJA,EAAS7B,GAAcD,WAAaoC,GACjCN,EAASf,GAAcf,WAAaiC,GAGvCI,QAAyC,IAA3BA,EAAWrC,EAAQ,KAAgD,OAA3BqC,EAAWrC,EAAQ,IAC3EkC,EAAWI,KAAKD,EAAWrC,EAAQ,KAGnCkC,EAAWI,KAAK,QAIb,CACLhB,KAAMW,EACNT,KAAM,OACNI,OAAQ/B,EACR0C,MAAO1C,EACP2C,UAAW,CAAA,EACXrC,KAAM+B,EAEV,CAoDMO,CAAkBR,EAAgBzB,EAAWL,EAAMF,EAAcc,EAAcf,GAEnF,CAoBA,OAjBAkB,EAAOQ,OAASR,EAAOQ,QAAQd,IAAKC,IAClC,MAAM6B,EAAa,IAAK7B,GAExB,OAAQR,EAAAsC,aACN,IAAK,cAML,eACSD,EAAWF,gBAJpB,IAAK,aACHE,EAAWF,UAAY,CAAA,EAM3B,OAAOE,IAGFjD,EAAMyB,EAAQb,EAAAuC,iBAGjBC,QAAEA,GAAYC,EAAU,CAC5BC,SAAUxD,EACVqD,aAAc9C,EACdQ,UAAWP,EAAS,IAAMM,EAAAC,WAC1B0C,SAAO3C,EAAA2C,kBAITC,EAAa,CACXJ,wBAKAK,EAGE,MAAA,SAFI,gBAAJ1D,IAAID,EACJ4D,MAAM"}
@@ -1,2 +0,0 @@
1
- import e from"../../../../node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.mjs";var t=".data-chart-line[data-v-397864aa]{height:100%;width:100%}";e(t);export{t as default};
2
- //# sourceMappingURL=line.vue3.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"line.vue3.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import e from"./pie.vue2.mjs";import"./pie.vue3.mjs";import p from"../../../../_virtual/_plugin-vue_export-helper.mjs";var r=p(e,[["__scopeId","data-v-b5a98608"]]);export{r as default};
2
- //# sourceMappingURL=pie.vue.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pie.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{defineComponent as e,inject as t,ref as r,computed as a,createElementBlock as o,openBlock as i}from"vue";import{orderBy as l}from"lodash-es";import{InjectionChartMerge as s}from"../utils/injectionKeys.mjs";import{useCharts as c}from"../utils/useCharts.mjs";var n=e({name:"DataChartPie",__name:"pie",props:{chartData:{type:Object,required:!0},subShowType:{type:String,required:!0,default:"pie-simple"},chartOptions:{type:null,required:!0},lazyLoad:{type:Boolean,required:!1,default:!0}},setup(e,{expose:n}){const m=t(s,e=>e,!0),u=r(null),p=a(()=>{const{colDesc:t,xGroupByDesc:r,data:a,modelName:o}=e.chartData,i=t.length,s={title:{text:o},series:t.map((t,o)=>{const s={name:t,type:"pie",center:["50%","50%"],data:[],emphasis:{itemStyle:{shadowBlur:10,shadowOffsetX:0,shadowColor:"rgba(0, 0, 0, 0.5)"}},label:{formatter:"{b}:{c}({d}%)",rich:{b:{color:"#4C5058",fontSize:14,fontWeight:"bold",lineHeight:33}}}};let c=5;const n=a.filter(e=>void 0!==e[t]),m=l(n,[t],["desc"]),u=m.reduce((e,r)=>{const a=Number(r[t])||0;return Number.isNaN(a)?e:e+a},0);if(n.length>c)for(;c<9;){const e=m.slice(0,c);if(e.reduce((e,r)=>e+Number(r[t]),0)/u>.9||8===c){const a=m.slice(c);s.data=e.map(e=>({name:r?.colDesc?String(e[r.colDesc]||""):"",value:Number(e[t])||0}));const o=a.reduce((e,r)=>e+Number(r[t]),0);o>0&&s.data&&s.data.push({name:"其它",value:o});break}c++}else s.data=n.map(e=>({name:r?.colDesc&&e[r.colDesc]||"",value:Number(e[t]||0)}));if(1===i?s.center=["50%","60%"]:2===i?0===o?(s.right="40%",s.left="",s.center=["40%","60%"]):(s.right="",s.left="40%",s.center=["60%","60%"]):3===i?0===o?(s.right="40%",s.bottom="50%",s.top="",s.left="",s.center=["40%","78%"]):1===o?(s.right="",s.bottom="50%",s.top="",s.left="40%",s.center=["60%","78%"]):(s.right="40%",s.bottom="",s.top="50%",s.left="",s.center=["40%","60%"]):4===i&&(0===o?(s.right="40%",s.bottom="50%",s.top="",s.left="",s.center=["40%","78%"]):1===o?(s.right="",s.bottom="50%",s.top="",s.left="40%",s.center=["60%","78%"]):2===o?(s.right="40%",s.bottom="",s.top="50%",s.left="",s.center=["40%","60%"]):(s.right="",s.bottom="",s.top="50%",s.left="40%",s.center=["60%","60%"])),"pie-borderRadius"===e.subShowType)s.radius=["50%","70%"];else s.radius="50%";return s})};return m(s,e.chartOptions)}),{myChart:h}=c({chartDOM:u,chartOptions:p,chartData:a(()=>e.chartData),lazyLoad:e.lazyLoad});return n({myChart:h}),(e,t)=>(i(),o("div",{ref_key:"dataChartPie",ref:u,class:"data-chart-pie"},null,512))}});export{n as default};
2
- //# sourceMappingURL=pie.vue2.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pie.vue2.mjs","sources":["../../../../../../../packages/components/src/data-chart/src/components/pie.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { PieSeriesOption } from 'echarts/charts'\nimport type { EChartsOption, IFormatPublicData } from '../utils/types'\nimport { orderBy } from 'lodash-es'\nimport { computed, inject, ref } from 'vue'\nimport { InjectionChartMerge } from '../utils/injectionKeys'\nimport { useCharts } from '../utils/useCharts'\n\ndefineOptions({\n name: 'DataChartPie',\n})\nconst {\n chartData,\n subShowType = 'pie-simple',\n chartOptions,\n lazyLoad = true,\n} = defineProps<{\n chartData: IFormatPublicData\n subShowType: string\n chartOptions: EChartsOption\n lazyLoad?: boolean\n}>()\nconst merge = inject(InjectionChartMerge, (v: any) => v, true)\n\nconst dataChartPie = ref(null)\nconst pieChartOptions = computed<EChartsOption>(() => {\n const { colDesc, xGroupByDesc, data, modelName } = chartData\n const colDescLength = colDesc.length\n const config = {\n title: { text: modelName },\n series: colDesc.map((item, index) => {\n const seriesItem: PieSeriesOption = {\n name: item,\n type: 'pie',\n center: ['50%', '50%'],\n data: [],\n emphasis: {\n itemStyle: {\n shadowBlur: 10,\n shadowOffsetX: 0,\n shadowColor: 'rgba(0, 0, 0, 0.5)',\n },\n },\n label: {\n formatter: '{b}:{c}({d}%)',\n rich: {\n b: {\n color: '#4C5058',\n fontSize: 14,\n fontWeight: 'bold',\n lineHeight: 33,\n },\n },\n },\n }\n\n let cutNum = 5\n const currentItemData = data.filter(row => row[item] !== undefined)\n const orderByData = orderBy(currentItemData, [item], ['desc'])\n // 总数\n const totalDesc = orderByData.reduce((prev, cur) => {\n const value = Number(cur[item]) || 0\n return Number.isNaN(value) ? prev : prev + value\n }, 0)\n if (currentItemData.length > cutNum) {\n while (cutNum < 9) {\n const headerData = orderByData.slice(0, cutNum)\n // 前 cutNum 个总数\n const headerTotal = headerData.reduce(\n (prev, cur) => prev + Number(cur[item]),\n 0,\n )\n // 前N项总占比\n const headerScale = headerTotal / totalDesc\n if (headerScale > 0.9 || cutNum === 8) {\n const footerData = orderByData.slice(cutNum)\n\n // 处理前N项数据\n seriesItem.data = headerData.map(headerItem => ({\n name: xGroupByDesc?.colDesc\n ? String(headerItem[xGroupByDesc.colDesc] || '')\n : '',\n value: Number(headerItem[item]) || 0,\n }))\n\n // 添加\"其它\"项,包含剩余所有数据\n const footerTotal = footerData.reduce(\n (prev, cur) => prev + Number(cur[item]),\n 0,\n )\n\n if (footerTotal > 0 && seriesItem.data) {\n seriesItem.data.push({\n name: '其它',\n value: footerTotal,\n })\n }\n\n break\n }\n else {\n cutNum++\n }\n }\n }\n else {\n seriesItem.data = currentItemData.map(yItem => ({\n name: xGroupByDesc?.colDesc ? (yItem[xGroupByDesc.colDesc] || '') : '',\n value: Number(yItem[item] || 0),\n }))\n }\n\n if (colDescLength === 1) {\n seriesItem.center = ['50%', '60%']\n }\n else if (colDescLength === 2) {\n if (index === 0) {\n seriesItem.right = '40%'\n seriesItem.left = ''\n seriesItem.center = ['40%', '60%']\n }\n else {\n seriesItem.right = ''\n seriesItem.left = '40%'\n seriesItem.center = ['60%', '60%']\n }\n }\n else if (colDescLength === 3) {\n if (index === 0) {\n seriesItem.right = '40%'\n seriesItem.bottom = '50%'\n seriesItem.top = ''\n seriesItem.left = ''\n seriesItem.center = ['40%', '78%']\n }\n else if (index === 1) {\n seriesItem.right = ''\n seriesItem.bottom = '50%'\n seriesItem.top = ''\n seriesItem.left = '40%'\n seriesItem.center = ['60%', '78%']\n }\n else {\n seriesItem.right = '40%'\n seriesItem.bottom = ''\n seriesItem.top = '50%'\n seriesItem.left = ''\n seriesItem.center = ['40%', '60%']\n }\n }\n else if (colDescLength === 4) {\n if (index === 0) {\n seriesItem.right = '40%'\n seriesItem.bottom = '50%'\n seriesItem.top = ''\n seriesItem.left = ''\n seriesItem.center = ['40%', '78%']\n }\n else if (index === 1) {\n seriesItem.right = ''\n seriesItem.bottom = '50%'\n seriesItem.top = ''\n seriesItem.left = '40%'\n seriesItem.center = ['60%', '78%']\n }\n else if (index === 2) {\n seriesItem.right = '40%'\n seriesItem.bottom = ''\n seriesItem.top = '50%'\n seriesItem.left = ''\n seriesItem.center = ['40%', '60%']\n }\n else {\n seriesItem.right = ''\n seriesItem.bottom = ''\n seriesItem.top = '50%'\n seriesItem.left = '40%'\n seriesItem.center = ['60%', '60%']\n }\n }\n // 处理图表形状\n switch (subShowType) {\n case 'pie-borderRadius':\n seriesItem.radius = ['50%', '70%']\n break\n case 'pie-simple':\n seriesItem.radius = '50%'\n break\n default:\n seriesItem.radius = '50%'\n break\n }\n return seriesItem\n }),\n }\n console.log(config)\n\n return merge(config, chartOptions)\n})\n\nconst { myChart } = useCharts({\n chartDOM: dataChartPie,\n chartOptions: pieChartOptions,\n chartData: computed(() => chartData),\n lazyLoad,\n})\n\n// 暴露 myChart 方法供父组件访问\ndefineExpose({\n myChart,\n})\n</script>\n\n<template>\n <div\n ref=\"dataChartPie\"\n class=\"data-chart-pie\"\n />\n</template>\n\n<style scoped lang=\"scss\">\n.data-chart-pie {\n width: 100%;\n height: 100%;\n}\n</style>\n"],"names":["merge","inject","InjectionChartMerge","v","dataChartPie","ref","pieChartOptions","computed","colDesc","xGroupByDesc","data","modelName","__props","chartData","colDescLength","length","config","title","text","series","map","item","index","seriesItem","name","type","center","emphasis","itemStyle","shadowBlur","shadowOffsetX","shadowColor","label","formatter","rich","b","color","fontSize","fontWeight","lineHeight","cutNum","currentItemData","filter","row","orderByData","orderBy","totalDesc","reduce","prev","cur","value","Number","isNaN","headerData","slice","footerData","headerItem","String","footerTotal","push","yItem","right","left","bottom","top","subShowType","radius","chartOptions","myChart","useCharts","chartDOM","lazyLoad","__expose","_createElementBlock","class"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import e from"../../../../node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.mjs";var t=".data-chart-pie[data-v-b5a98608]{height:100%;width:100%}";e(t);export{t as default};
2
- //# sourceMappingURL=pie.vue3.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pie.vue3.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import r from"./radar.vue2.mjs";import"./radar.vue3.mjs";import a from"../../../../_virtual/_plugin-vue_export-helper.mjs";var e=a(r,[["__scopeId","data-v-dcb2eae6"]]);export{e as default};
2
- //# sourceMappingURL=radar.vue.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"radar.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{defineComponent as a,ref as r,inject as e,computed as t,createElementBlock as o,openBlock as s}from"vue";import{uniq as l}from"lodash-es";import{InjectionChartMerge as m}from"../utils/injectionKeys.mjs";import{useCharts as u}from"../utils/useCharts.mjs";var p=a({name:"DataChartRadar",__name:"radar",props:{chartData:{type:Object,required:!0},chartOptions:{type:null,required:!0},lazyLoad:{type:Boolean,required:!1,default:!0}},setup(a,{expose:p}){const c=r(),i=e(m,a=>a,!0),d=t(()=>{const{colDesc:r,xGroupByDesc:e,modelName:t,data:o}=a.chartData;e?.groupByValues||(e.groupByValues=[]),e.groupByValues=l(o.map(a=>a[e.colDesc||""]).filter(a=>a));const s={title:{text:t},radar:{indicator:e?.groupByValues?.map(a=>({name:a,max:Math.max(...o.map(a=>Number(a[r[0]])))}))||[]},series:[{name:e?.colDesc,type:"radar",tooltip:{trigger:"item"},data:r.map(a=>({name:a,value:e?.groupByValues?.map(r=>o.map(t=>r===t[e.colDesc||""]?t[a]:null).filter(a=>a).reduce((a,r)=>Number(a||0)+Number(r||0),0))}))}]};return i(s,a.chartOptions)}),{myChart:n}=u({chartDOM:c,chartOptions:d,chartData:t(()=>a.chartData),lazyLoad:a.lazyLoad});return p({myChart:n}),(a,r)=>(s(),o("div",{ref_key:"dataChartRadar",ref:c,class:"data-chart-radar"},null,512))}});export{p as default};
2
- //# sourceMappingURL=radar.vue2.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"radar.vue2.mjs","sources":["../../../../../../../packages/components/src/data-chart/src/components/radar.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { EChartsOption, IFormatPublicData } from '../utils/types'\nimport { uniq } from 'lodash-es'\nimport { computed, inject, ref } from 'vue'\nimport { InjectionChartMerge } from '../utils/injectionKeys'\nimport { useCharts } from '../utils/useCharts'\n\ndefineOptions({\n name: 'DataChartRadar',\n})\n\nconst {\n chartData,\n chartOptions,\n lazyLoad = true,\n} = defineProps<{\n chartData: IFormatPublicData\n chartOptions: EChartsOption\n lazyLoad?: boolean\n}>()\n\nconst dataChartRadar = ref()\nconst merge = inject(InjectionChartMerge, (v: any) => v, true)\nconst radarChartOptions = computed<EChartsOption>(() => {\n const { colDesc, xGroupByDesc, modelName, data } = chartData\n\n if (!xGroupByDesc?.groupByValues) {\n xGroupByDesc.groupByValues = []\n }\n xGroupByDesc.groupByValues = uniq(data.map((item) => {\n return item[xGroupByDesc.colDesc || ''] as string\n }).filter(v => v))\n\n const config = {\n title: {\n text: modelName,\n },\n radar: {\n indicator: xGroupByDesc?.groupByValues?.map((groupByValuesItem) => {\n return {\n name: groupByValuesItem,\n max: Math.max(...data.map(item => Number(item[colDesc[0]]))),\n }\n }) || [],\n },\n series: [{\n name: xGroupByDesc?.colDesc,\n type: 'radar',\n tooltip: {\n trigger: 'item',\n },\n data: colDesc.map(colDescItem => ({\n name: colDescItem,\n value: xGroupByDesc?.groupByValues?.map((groupByValuesItem) => {\n return (data.map((dataItem) => {\n if (groupByValuesItem === dataItem[xGroupByDesc.colDesc || '']) {\n return dataItem[colDescItem]\n }\n return null\n }).filter(v => v)).reduce((pre, cur) => Number(pre || 0) + Number(cur || 0), 0)\n }),\n })),\n }],\n }\n\n return merge(config, chartOptions)\n})\n\nconst { myChart } = useCharts({\n chartDOM: dataChartRadar,\n chartOptions: radarChartOptions,\n chartData: computed(() => chartData),\n lazyLoad,\n})\n\n// 暴露 myChart 方法供父组件访问\ndefineExpose({\n myChart,\n})\n</script>\n\n<template>\n <div\n ref=\"dataChartRadar\"\n class=\"data-chart-radar\"\n />\n</template>\n\n<style scoped lang=\"scss\">\n.data-chart-radar {\n width: 100%;\n height: 100%;\n}\n</style>\n"],"names":["dataChartRadar","ref","merge","inject","InjectionChartMerge","v","radarChartOptions","computed","colDesc","xGroupByDesc","modelName","data","__props","chartData","groupByValues","uniq","map","item","filter","config","title","text","radar","indicator","groupByValuesItem","name","max","Math","Number","series","type","tooltip","trigger","colDescItem","value","dataItem","reduce","pre","cur","chartOptions","myChart","useCharts","chartDOM","lazyLoad","__expose","_createElementBlock","class"],"mappings":"ucAqBA,MAAMA,EAAiBC,IACjBC,EAAQC,EAAOC,EAAsBC,GAAWA,GAAG,GACnDC,EAAoBC,EAAwB,KAChD,MAAMC,QAAEA,EAAAC,aAASA,EAAAC,UAAcA,EAAAC,KAAWA,GAASC,EAAAC,UAE9CJ,GAAcK,gBACjBL,EAAaK,cAAgB,IAE/BL,EAAaK,cAAgBC,EAAKJ,EAAKK,IAAKC,GACnCA,EAAKR,EAAaD,SAAW,KACnCU,OAAOb,GAAKA,IAEf,MAAMc,EAAS,CACbC,MAAO,CACLC,KAAMX,GAERY,MAAO,CACLC,UAAWd,GAAcK,eAAeE,IAAKQ,IACpC,CACLC,KAAMD,EACNE,IAAKC,KAAKD,OAAOf,EAAKK,IAAIC,GAAQW,OAAOX,EAAKT,EAAQ,WAEpD,IAERqB,OAAQ,CAAC,CACPJ,KAAMhB,GAAcD,QACpBsB,KAAM,QACNC,QAAS,CACPC,QAAS,QAEXrB,KAAMH,EAAQQ,IAAIiB,IAAA,CAChBR,KAAMQ,EACNC,MAAOzB,GAAcK,eAAeE,IAAKQ,GAC/Bb,EAAKK,IAAKmB,GACZX,IAAsBW,EAAS1B,EAAaD,SAAW,IAClD2B,EAASF,GAEX,MACNf,UAAYb,GAAI+B,OAAO,CAACC,EAAKC,IAAQV,OAAOS,GAAO,GAAKT,OAAOU,GAAO,GAAI,UAMrF,OAAOpC,EAAMiB,EAAQP,EAAA2B,iBAGjBC,QAAEA,GAAYC,EAAU,CAC5BC,SAAU1C,EACVuC,aAAcjC,EACdO,UAAWN,EAAS,IAAMK,EAAAC,WAC1B8B,SAAO/B,EAAA+B,kBAITC,EAAa,CACXJ,wBAKAK,EAGE,MAAA,SAFI,iBAAJ5C,IAAID,EACJ8C,MAAM"}
@@ -1,2 +0,0 @@
1
- import e from"../../../../node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.mjs";var t=".data-chart-radar[data-v-dcb2eae6]{height:100%;width:100%}";e(t);export{t as default};
2
- //# sourceMappingURL=radar.vue3.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"radar.vue3.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import e from"./scatter-simple.vue2.mjs";import"./scatter-simple.vue3.mjs";import r from"../../../../_virtual/_plugin-vue_export-helper.mjs";var t=r(e,[["__scopeId","data-v-8129b8a5"]]);export{t as default};
2
- //# sourceMappingURL=scatter-simple.vue.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scatter-simple.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{defineComponent as t,ref as a,inject as e,computed as r,createElementBlock as s,openBlock as l}from"vue";import{InjectionChartMerge as o}from"../utils/injectionKeys.mjs";import{useCharts as m}from"../utils/useCharts.mjs";var c=t({name:"DataChartScatterSimple",__name:"scatter-simple",props:{chartData:{type:Object,required:!0},chartOptions:{type:null,required:!0},lazyLoad:{type:Boolean,required:!1,default:!0}},setup(t,{expose:c}){const i=a(),p=e(o,t=>t,!0),u=r(()=>{const{colDesc:a,xGroupByDesc:e,modelName:r,data:s}=t.chartData,l={title:{text:r},tooltip:{formatter:t=>t.value.length>1?`${t.seriesName} :<br/>${t.value[0]} ${t.value[1]} `:`${t.seriesName} :<br/>${t.name} : ${t.value} `},series:a.map(t=>({symbolSize:20,name:t,data:s.map(a=>[a[t],a[e?.colDesc||""]]),type:"scatter"}))};return p(l,t.chartOptions)}),{myChart:n}=m({chartDOM:i,chartOptions:u,chartData:r(()=>t.chartData),lazyLoad:t.lazyLoad});return c({myChart:n}),(t,a)=>(l(),s("div",{ref_key:"dataChartScatterSimple",ref:i,class:"data-chart-scatter-simple"},null,512))}});export{c as default};
2
- //# sourceMappingURL=scatter-simple.vue2.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scatter-simple.vue2.mjs","sources":["../../../../../../../packages/components/src/data-chart/src/components/scatter-simple.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { EChartsOption, IFormatPublicData } from '../utils/types'\nimport { computed, inject, ref } from 'vue'\nimport { InjectionChartMerge } from '../utils/injectionKeys'\nimport { useCharts } from '../utils/useCharts'\n\ndefineOptions({\n name: 'DataChartScatterSimple',\n})\nconst {\n chartData,\n chartOptions,\n lazyLoad = true,\n} = defineProps<{\n chartData: IFormatPublicData\n chartOptions: EChartsOption\n lazyLoad?: boolean\n}>()\nconst dataChartScatterSimple = ref()\nconst merge = inject(InjectionChartMerge, (v: any) => v, true)\n\nconst scatterChartOptions = computed<EChartsOption>(() => {\n const { colDesc, xGroupByDesc, modelName, data } = chartData\n const config = {\n title: {\n text: modelName,\n },\n tooltip: {\n formatter(params: { value: string, seriesName: string, name: string }) {\n if (params.value.length > 1) {\n return (\n `${params.seriesName\n } :<br/>${params.value[0]\n } ${params.value[1]\n } `\n )\n }\n else {\n return (\n `${params.seriesName\n } :<br/>${params.name\n } : ${params.value\n } `\n )\n }\n },\n },\n series: colDesc.map((colDescItem) => {\n return {\n symbolSize: 20,\n name: colDescItem,\n data: data.map((dataItem) => {\n return [dataItem[colDescItem], dataItem[xGroupByDesc?.colDesc || '']]\n }),\n type: 'scatter',\n }\n }),\n }\n return merge(config, chartOptions)\n})\n\nconst { myChart } = useCharts({\n chartDOM: dataChartScatterSimple,\n chartOptions: scatterChartOptions,\n chartData: computed(() => chartData),\n lazyLoad,\n})\n\n// 暴露 myChart 方法供父组件访问\ndefineExpose({\n myChart,\n})\n</script>\n\n<template>\n <div\n ref=\"dataChartScatterSimple\"\n class=\"data-chart-scatter-simple\"\n />\n</template>\n\n<style scoped lang=\"scss\">\n.data-chart-scatter-simple {\n width: 100%;\n height: 100%;\n}\n</style>\n"],"names":["dataChartScatterSimple","ref","merge","inject","InjectionChartMerge","v","scatterChartOptions","computed","colDesc","xGroupByDesc","modelName","data","__props","chartData","config","title","text","tooltip","formatter","params","value","length","seriesName","name","series","map","colDescItem","symbolSize","dataItem","type","chartOptions","myChart","useCharts","chartDOM","lazyLoad","__expose","_createElementBlock","class"],"mappings":"ubAkBA,MAAMA,EAAyBC,IACzBC,EAAQC,EAAOC,EAAsBC,GAAWA,GAAG,GAEnDC,EAAsBC,EAAwB,KAClD,MAAMC,QAAEA,EAAAC,aAASA,EAAAC,UAAcA,EAAAC,KAAWA,GAASC,EAAAC,UAC7CC,EAAS,CACbC,MAAO,CACLC,KAAMN,GAERO,QAAS,CACPC,UAAUC,GACJA,EAAOC,MAAMC,OAAS,EAEtB,GAAGF,EAAOG,oBACAH,EAAOC,MAAM,MACnBD,EAAOC,MAAM,MAMjB,GAAGD,EAAOG,oBACAH,EAAOI,UACXJ,EAAOC,UAMrBI,OAAQhB,EAAQiB,IAAKC,IACZ,CACLC,WAAY,GACZJ,KAAMG,EACNf,KAAMA,EAAKc,IAAKG,GACP,CAACA,EAASF,GAAcE,EAASnB,GAAcD,SAAW,MAEnEqB,KAAM,cAIZ,OAAO3B,EAAMY,EAAQF,EAAAkB,iBAGjBC,QAAEA,GAAYC,EAAU,CAC5BC,SAAUjC,EACV8B,aAAcxB,EACdO,UAAWN,EAAS,IAAMK,EAAAC,WAC1BqB,SAAOtB,EAAAsB,kBAITC,EAAa,CACXJ,wBAKAK,EAGE,MAAA,SAFI,yBAAJnC,IAAID,EACJqC,MAAM"}
@@ -1,2 +0,0 @@
1
- import t from"../../../../node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.mjs";var e=".data-chart-scatter-simple[data-v-8129b8a5]{height:100%;width:100%}";t(e);export{e as default};
2
- //# sourceMappingURL=scatter-simple.vue3.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scatter-simple.vue3.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import r from"./scatter.vue2.mjs";import"./scatter.vue3.mjs";import t from"../../../../_virtual/_plugin-vue_export-helper.mjs";var e=t(r,[["__scopeId","data-v-b52b34fd"]]);export{e as default};
2
- //# sourceMappingURL=scatter.vue.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scatter.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{defineComponent as t,ref as a,inject as r,computed as e,createElementBlock as s,openBlock as o}from"vue";import{InjectionChartMerge as i}from"../utils/injectionKeys.mjs";import{useCharts as c}from"../utils/useCharts.mjs";var p=t({name:"DataChartScatter",__name:"scatter",props:{chartData:{type:Object,required:!0},chartOptions:{type:null,required:!0},lazyLoad:{type:Boolean,required:!1,default:!0}},setup(t,{expose:p}){const l=a(),h=r(i,t=>t,!0),m=e(()=>h({xAxis:{},yAxis:{},series:[{symbolSize:20,data:[[10,8.04],[8.07,6.95],[13,7.58],[9.05,8.81],[11,8.33],[14,7.66],[13.4,6.81],[10,6.33],[14,8.96],[12.5,6.82],[9.15,7.2],[11.5,7.2],[3.03,4.23],[12.2,7.83],[2.02,4.47],[1.05,3.33],[4.05,4.96],[6.03,7.24],[12,6.26],[12,8.84],[7.08,5.82],[5.02,5.68]],type:"scatter"}]},t.chartOptions)),{myChart:u}=c({chartDOM:l,chartOptions:m,chartData:e(()=>t.chartData),lazyLoad:t.lazyLoad});return p({myChart:u}),(t,a)=>(o(),s("div",{ref_key:"dataChartScatter",ref:l,class:"data-chart-scatter"},null,512))}});export{p as default};
2
- //# sourceMappingURL=scatter.vue2.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scatter.vue2.mjs","sources":["../../../../../../../packages/components/src/data-chart/src/components/scatter.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { EChartsOption, IFormatPublicData } from '../utils/types'\nimport { computed, inject, ref } from 'vue'\nimport { InjectionChartMerge } from '../utils/injectionKeys'\nimport { useCharts } from '../utils/useCharts'\n\ndefineOptions({\n name: 'DataChartScatter',\n})\n\nconst {\n chartData,\n chartOptions,\n lazyLoad = true,\n} = defineProps<{\n chartData: IFormatPublicData\n chartOptions: EChartsOption\n lazyLoad?: boolean\n}>()\n\nconst dataChartScatter = ref()\nconst merge = inject(InjectionChartMerge, (v: any) => v, true)\n\nconst scatterChartOptions = computed<EChartsOption>(() => {\n const config = {\n xAxis: {},\n yAxis: {},\n series: [\n {\n symbolSize: 20,\n data: [\n [10.0, 8.04],\n [8.07, 6.95],\n [13.0, 7.58],\n [9.05, 8.81],\n [11.0, 8.33],\n [14.0, 7.66],\n [13.4, 6.81],\n [10.0, 6.33],\n [14.0, 8.96],\n [12.5, 6.82],\n [9.15, 7.2],\n [11.5, 7.2],\n [3.03, 4.23],\n [12.2, 7.83],\n [2.02, 4.47],\n [1.05, 3.33],\n [4.05, 4.96],\n [6.03, 7.24],\n [12.0, 6.26],\n [12.0, 8.84],\n [7.08, 5.82],\n [5.02, 5.68],\n ],\n type: 'scatter',\n },\n ],\n }\n\n return merge(config, chartOptions)\n})\n\nconst { myChart } = useCharts({\n chartDOM: dataChartScatter,\n chartOptions: scatterChartOptions,\n chartData: computed(() => chartData),\n lazyLoad,\n})\n\n// 暴露 myChart 方法供父组件访问\ndefineExpose({\n myChart,\n})\n</script>\n\n<template>\n <div\n ref=\"dataChartScatter\"\n class=\"data-chart-scatter\"\n />\n</template>\n\n<style scoped lang=\"scss\">\n.data-chart-scatter {\n width: 100%;\n height: 100%;\n}\n</style>\n"],"names":["dataChartScatter","ref","merge","inject","InjectionChartMerge","v","scatterChartOptions","computed","xAxis","yAxis","series","symbolSize","data","type","__props","chartOptions","myChart","useCharts","chartDOM","chartData","lazyLoad","__expose","_createElementBlock","class"],"mappings":"0aAoBA,MAAMA,EAAmBC,IACnBC,EAAQC,EAAOC,EAAsBC,GAAWA,GAAG,GAEnDC,EAAsBC,EAAwB,IAoC3CL,EAnCQ,CACbM,MAAO,CAAA,EACPC,MAAO,CAAA,EACPC,OAAQ,CACN,CACEC,WAAY,GACZC,KAAM,CACJ,CAAC,GAAM,MACP,CAAC,KAAM,MACP,CAAC,GAAM,MACP,CAAC,KAAM,MACP,CAAC,GAAM,MACP,CAAC,GAAM,MACP,CAAC,KAAM,MACP,CAAC,GAAM,MACP,CAAC,GAAM,MACP,CAAC,KAAM,MACP,CAAC,KAAM,KACP,CAAC,KAAM,KACP,CAAC,KAAM,MACP,CAAC,KAAM,MACP,CAAC,KAAM,MACP,CAAC,KAAM,MACP,CAAC,KAAM,MACP,CAAC,KAAM,MACP,CAAC,GAAM,MACP,CAAC,GAAM,MACP,CAAC,KAAM,MACP,CAAC,KAAM,OAETC,KAAM,aAKSC,EAAAC,gBAGjBC,QAAEA,GAAYC,EAAU,CAC5BC,SAAUlB,EACVe,aAAcT,EACda,UAAWZ,EAAS,IAAMO,EAAAK,WAC1BC,SAAON,EAAAM,kBAITC,EAAa,CACXL,wBAKAM,EAGE,MAAA,SAFI,mBAAJrB,IAAID,EACJuB,MAAM"}
@@ -1,2 +0,0 @@
1
- import t from"../../../../node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.mjs";var e=".data-chart-scatter[data-v-b52b34fd]{height:100%;width:100%}";t(e);export{e as default};
2
- //# sourceMappingURL=scatter.vue3.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scatter.vue3.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{defineComponent as e,computed as t,createElementBlock as a,openBlock as o,normalizeClass as l,unref as r,createCommentVNode as c,createVNode as s,createElementVNode as p,toDisplayString as i,withCtx as m,Fragment as n,renderList as u,createBlock as d,createTextVNode as h}from"vue";import{useNamespace as D}from"@qxs-bns/hooks";import{QxsTable as f,QxsTableColumn as b}from"../../../ui/table/index.mjs";import y from"./empty.vue.mjs";const v={key:0,class:"title"};var w=e({name:"DataChartTable",__name:"table",props:{chartData:{type:Object,default:()=>({colDesc:[],xGroupByDesc:[],data:[],modelName:""})}},setup(e){const w=e,x=D("data-chart"),g=t(()=>w.chartData.groupByDesc.find(e=>!e.xAxis));function $(e){if(!e)return 100;const t=e.split("").reduce((e,t)=>/[a-zA-Z0-9]/.test(t)?e+8:/[\u4e00-\u9fa5]/.test(t)?e+14:e+10,0);return Math.max(t+40,100)}return(t,D)=>(o(),a("div",{class:l([r(x).e("table")])},[e.chartData.modelName?(o(),a("p",v,[p("span",null,i(e.chartData.modelName),1)])):c("v-if",!0),s(r(f),{class:"customize-table",data:e.chartData.data,stripe:"",border:"",height:"100%"},{empty:m(()=>[s(y)]),default:m(()=>[(o(!0),a(n,null,u(e.chartData.groupByDesc,(e,t)=>(o(),d(r(b),{key:`${e.colDesc}${e.groupByDesc}${t}`,align:"center","show-overflow-tooltip":"",sortable:"","min-width":`${$(e.colDesc??null)}px`,prop:e.colDesc||""},{header:m(()=>[h(i(e.colDesc),1)]),default:m(t=>[h(i((g.value&&(g.value.colDesc,e.colDesc),t.row[e.colDesc||""]||"--")),1)]),_:2},1032,["min-width","prop"]))),128)),(o(!0),a(n,null,u(e.chartData.colDesc,(e,t)=>(o(),d(r(b),{key:e+t,align:"center","min-width":`${$(e)}px`,label:e,"show-overflow-tooltip":"",sortable:"",prop:e},{header:m(()=>[h(i(e),1)]),_:2},1032,["min-width","label","prop"]))),128))]),_:1},8,["data"])],2))}});export{w as default};
2
- //# sourceMappingURL=table.vue.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table.vue.mjs","sources":["../../../../../../../packages/components/src/data-chart/src/components/table.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { PropType } from 'vue'\nimport type { IFormatPublicData } from '../utils/types'\nimport { useNamespace } from '@qxs-bns/hooks'\nimport { QxsTable, QxsTableColumn } from '../../../ui/table'\nimport { computed } from 'vue'\nimport Empty from './empty.vue'\n\ndefineOptions({\n name: 'DataChartTable',\n})\n\nconst props = defineProps({\n chartData: {\n type: Object as PropType<IFormatPublicData>,\n default: () => ({\n colDesc: [],\n xGroupByDesc: [],\n data: [],\n modelName: '',\n }),\n },\n})\n\nconst ns = useNamespace('data-chart')\n\nconst yGroupByDesc = computed(() => {\n return props.chartData.groupByDesc.find(item => !item.xAxis)\n})\n\nfunction baseWidth(str: string | null): number {\n if (!str) return 100\n const strWidth = str.split('').reduce((width: number, char: string) => {\n if (/[a-zA-Z0-9]/.test(char)) {\n return width + 8\n }\n else if (/[\\u4e00-\\u9fa5]/.test(char)) {\n return width + 14\n }\n return width + 10\n }, 0)\n return Math.max(strWidth + 40, 100)\n}\n</script>\n\n<template>\n <div :class=\"[ns.e('table')]\">\n <p\n v-if=\"chartData.modelName\"\n class=\"title\"\n >\n <span>{{ chartData.modelName }}</span>\n </p>\n <QxsTable\n class=\"customize-table\"\n :data=\"chartData.data\"\n stripe\n border\n height=\"100%\"\n >\n <QxsTableColumn\n v-for=\"(item, index) in chartData.groupByDesc\"\n :key=\"`${item.colDesc}${item.groupByDesc}${index}`\"\n align=\"center\"\n show-overflow-tooltip\n sortable\n :min-width=\"`${baseWidth(item.colDesc ?? null)}px`\"\n :prop=\"item.colDesc || ''\"\n >\n <template #header>\n {{ item.colDesc }}\n </template>\n <template #default=\"scoped\">\n {{ (yGroupByDesc && yGroupByDesc.colDesc === item.colDesc ? scoped.row[item.colDesc || ''] : scoped.row[item.colDesc || '']) || '--' }}\n </template>\n </QxsTableColumn>\n <QxsTableColumn\n v-for=\"(item, index) in chartData.colDesc\"\n :key=\"item + index\"\n align=\"center\"\n :min-width=\"`${baseWidth(item)}px`\"\n :label=\"item\"\n show-overflow-tooltip\n sortable\n :prop=\"item\"\n >\n <template #header>\n {{ item }}\n </template>\n </QxsTableColumn>\n <template #empty>\n <Empty />\n </template>\n </QxsTable>\n </div>\n</template>\n"],"names":["props","__props","ns","useNamespace","yGroupByDesc","computed","chartData","groupByDesc","find","item","xAxis","baseWidth","str","strWidth","split","reduce","width","char","test","Math","max","_createElementBlock","class","_normalizeClass","_unref","e","modelName","_openBlock","_hoisted_1","_createElementVNode","_toDisplayString","_createVNode","QxsTable","data","stripe","border","height","empty","Empty","_Fragment","index","_createBlock","QxsTableColumn","key","colDesc","align","sortable","prop","header","_createTextVNode","default","_withCtx","scoped","value","row","label"],"mappings":"8mBAYA,MAAMA,EAAQC,EAYRC,EAAKC,EAAa,cAElBC,EAAeC,EAAS,IACrBL,EAAMM,UAAUC,YAAYC,KAAKC,IAASA,EAAKC,QAGxD,SAASC,EAAUC,GACjB,IAAKA,EAAK,OAAO,IACjB,MAAMC,EAAWD,EAAIE,MAAM,IAAIC,OAAO,CAACC,EAAeC,IAChD,cAAcC,KAAKD,GACdD,EAAQ,EAER,kBAAkBE,KAAKD,GACvBD,EAAQ,GAEVA,EAAQ,GACd,GACH,OAAOG,KAAKC,IAAIP,EAAW,GAAI,IACjC,mBAIEQ,EAgDM,MAAA,CAhDAC,MAAKC,EAAA,CAAGC,EAAAtB,GAAGuB,EAAC,aAERxB,EAAAK,UAAUoB,WADlBC,IAAAN,EAKI,IALJO,EAKI,CADFC,EAAsC,OAAA,KAAAC,EAA7B7B,EAAAK,UAAUoB,WAAS,mBAE9BK,EAwCWP,EAAAQ,GAAA,CAvCTV,MAAM,kBACLW,KAAMhC,EAAAK,UAAU2B,KACjBC,OAAA,GACAC,OAAA,GACAC,OAAO,SAgCIC,QACT,IAAS,CAATN,EAASO,eA9BT,IAA8C,EADhDX,GAAA,GAAAN,EAeiBkB,SAdStC,EAAAK,UAAUC,YAAW,CAArCE,EAAM+B,SADhBC,EAeiBjB,EAAAkB,GAAA,CAbdC,IAAG,GAAKlC,EAAKmC,UAAUnC,EAAKF,cAAciC,IAC3CK,MAAM,SACN,wBAAA,GACAC,SAAA,GACC,YAAS,GAAKnC,EAAUF,EAAKmC,SAAO,UACpCG,KAAMtC,EAAKmC,SAAO,KAERI,SACT,IAAkB,CAAfC,EAAAnB,EAAArB,EAAKmC,SAAO,KAENM,QAAOC,EACuHC,GAD/G,MACpBhD,EAAAiD,QAAgBjD,QAAawC,QAAYnC,EAAKmC,SAAUQ,EAAOE,IAAI7C,EAAKmC,SAAO,KAAiC,OAAA,8CAGxHjB,GAAA,GAAAN,EAaiBkB,SAZStC,EAAAK,UAAUsC,QAAO,CAAjCnC,EAAM+B,SADhBC,EAaiBjB,EAAAkB,GAAA,CAXdC,IAAKlC,EAAO+B,EACbK,MAAM,SACL,YAAS,GAAKlC,EAAUF,OACxB8C,MAAO9C,EACR,wBAAA,GACAqC,SAAA,GACCC,KAAMtC,IAEIuC,SACT,IAAU,KAAPvC,GAAI"}
@@ -1,2 +0,0 @@
1
- import e from"./table.vue.mjs";export{e as default};
2
- //# sourceMappingURL=table.vue2.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table.vue2.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{defineComponent as e,ref as t,computed as o,provide as r,createBlock as a,openBlock as s,resolveDynamicComponent as m,normalizeClass as p,unref as n}from"vue";import{useNamespace as i}from"@qxs-bns/hooks";import{JsonToExcel as l}from"@qxs-bns/utils";import{cloneDeep as u,merge as c}from"lodash-es";import*as f from"./analyze.mjs";import d from"./components/area.vue.mjs";import y from"./components/bar.vue.mjs";import h from"./components/card.vue.mjs";import j from"./components/funnel.vue.mjs";import v from"./components/line.vue.mjs";import b from"./components/pie.vue.mjs";import g from"./components/radar.vue.mjs";import w from"./components/scatter-simple.vue.mjs";import D from"./components/scatter.vue.mjs";import x from"./components/table.vue.mjs";import*as C from"./utils/config.mjs";import{defaultChartOption as S}from"./utils/config.mjs";import{InjectionChartMerge as T}from"./utils/injectionKeys.mjs";import{safeEvalConfig as q}from"./utils/safe-eval.mjs";import*as N from"./utils/types.mjs";import{useDataToExcelJson as B}from"./utils/useCharts.mjs";var z=e({name:"QxsDataChart",__name:"data-chart",props:{modelName:{type:String,required:!1,default:""},showTypeName:{type:String,required:!1,default:"table"},subShowType:{type:String,required:!1},data:{type:Object,required:!1,default:()=>({data:[],desc:{colDesc:[],showDesc:{showType:0,chartOptions:"{}",jsCodeSnippet:""},groupByDesc:[]}})},chartOptions:{type:null,required:!1,default:()=>({})},jsCodeSnippet:{type:String,required:!1,default:""},lazyLoad:{type:Boolean,required:!1,default:!0}},setup(e,{expose:z}){const O=i("data-chart"),k=t(null),_={analyze:f,config:C,types:N},A={table:x,bar:y,line:v,pie:b,radar:g,scatter:D,funnel:j,area:d,card:h,"scatter-simple":w},L=o(()=>u(S[e.showTypeName])),Q=o(()=>{const{desc:{colDesc:t=[],groupByDesc:o=[]}={},data:r=[]}=e.data;let a=[],s=null;const m=o;a=m?.map(e=>(e.xAxis&&(s=e),e))||[];const p=s&&s.colDesc?r.filter(e=>{const t=s.colDesc;return e&&t&&void 0!==e[t]&&null!==e[t]}):r;return{colDesc:t||[],modelName:e.modelName,subShowType:e.subShowType,xGroupByDesc:s||{colDesc:"",groupByDesc:"",groupByValues:[],xAxis:!1},groupByDesc:a,data:p}});function E(){if("table"===e.showTypeName)return null;const t=k.value;return t&&"function"==typeof t.myChart?t.myChart():null}return z({exportExal:function(){if(0===e.data.data.length)return;const t=B(e.data);l(e.modelName,t)},QxsDataChartConfig:_,myChart:o(()=>E()),getMyChart:E}),r(T,function(t,o){let r=c({},L.value,t,o)||{};if(e.jsCodeSnippet)try{r=q(e.jsCodeSnippet,r)}catch(e){}return r}),(e,t)=>(s(),a(m(A[e.showTypeName]),{ref_key:"myChartRef",ref:k,key:e.showTypeName,class:p([n(O).e("wrapper")]),"sub-show-type":e.subShowType,"chart-data":Q.value,"chart-options":e.chartOptions,"lazy-load":e.lazyLoad},null,8,["class","sub-show-type","chart-data","chart-options","lazy-load"]))}});export{z as default};
2
- //# sourceMappingURL=data-chart.vue.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"data-chart.vue.mjs","sources":["../../../../../../packages/components/src/data-chart/src/data-chart.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ECharts } from 'echarts'\nimport type { EChartData, EChartsOption, IconRow, IFormatPublicData } from './utils/types'\nimport { useNamespace } from '@qxs-bns/hooks'\nimport { JsonToExcel } from '@qxs-bns/utils'\nimport { cloneDeep, merge as lodashMerge } from 'lodash-es'\nimport { computed, provide, ref } from 'vue'\nimport * as analyze from './analyze'\nimport Area from './components/area.vue'\nimport Bar from './components/bar.vue'\nimport Card from './components/card.vue'\nimport Funnel from './components/funnel.vue'\nimport Line from './components/line.vue'\nimport Pie from './components/pie.vue'\nimport Radar from './components/radar.vue'\nimport ScatterSimple from './components/scatter-simple.vue'\nimport Scatter from './components/scatter.vue'\nimport Table from './components/table.vue'\nimport * as config from './utils/config'\nimport { defaultChartOption } from './utils/config'\nimport { InjectionChartMerge } from './utils/injectionKeys'\nimport { safeEvalConfig } from './utils/safe-eval'\nimport * as types from './utils/types'\nimport { useDataToExcelJson } from './utils/useCharts'\n\ndefineOptions({\n name: 'QxsDataChart',\n})\nconst {\n showTypeName = 'table',\n subShowType,\n modelName = '',\n data: propData = {\n data: [],\n desc: {\n colDesc: [],\n showDesc: {\n showType: 0,\n chartOptions: '{}',\n jsCodeSnippet: '',\n },\n groupByDesc: [],\n },\n },\n chartOptions = {},\n jsCodeSnippet = '',\n lazyLoad = true,\n} = defineProps<{\n modelName?: string\n showTypeName?: IconRow['showTypeName']\n subShowType?: string\n data?: EChartData\n chartOptions?: EChartsOption\n jsCodeSnippet?: string\n lazyLoad?: boolean\n}>()\n\nconst ns = useNamespace('data-chart')\n\n// 子组件引用\nconst myChartRef = ref<any>(null)\n\nconst QxsDataChartConfig = {\n analyze,\n config,\n types,\n}\nconst coms: {\n [key: string]: any\n} = {\n 'table': Table,\n 'bar': Bar,\n 'line': Line,\n 'pie': Pie,\n 'radar': Radar,\n 'scatter': Scatter,\n 'funnel': Funnel,\n 'area': Area,\n 'card': Card,\n 'scatter-simple': ScatterSimple,\n}\n\nconst defaultChartOptionCopy = computed(() => {\n return cloneDeep(defaultChartOption[showTypeName])\n})\n\nconst formatPublicData = computed<IFormatPublicData>(() => {\n const { desc: { colDesc = [], groupByDesc = [] } = {}, data = [] } = propData\n\n // 处理 X 轴数据\n let xValue: EChartData['desc']['groupByDesc'] = []\n\n let xGroupByDesc: EChartData['desc']['groupByDesc'][0] | null = null\n const typedGroupByDesc = groupByDesc as EChartData['desc']['groupByDesc']\n xValue = typedGroupByDesc?.map((groupByDescItem) => {\n // if (groupByDescItem.colValues) {\n // groupByDescItem.colValuesDesc = {}\n // groupByDescItem.colValues.split(',')?.forEach((item) => {\n // const [key, value] = item.split(':')\n // groupByDescItem.colValuesDesc[key] = value\n // })\n // }\n if (groupByDescItem.xAxis) {\n xGroupByDesc = groupByDescItem\n }\n return groupByDescItem\n }) || []\n\n // 修复数据过滤逻辑,避免因为字段不存在导致数据被过滤掉\n const dataValue = xGroupByDesc && (xGroupByDesc as EChartData['desc']['groupByDesc'][0]).colDesc\n ? data.filter((item) => {\n const colDescKey = (xGroupByDesc as EChartData['desc']['groupByDesc'][0]).colDesc\n return item && colDescKey && (item[colDescKey] !== undefined && item[colDescKey] !== null)\n })\n : data\n\n // if (xGroupByDesc && xGroupByDesc.colValuesDesc && Object.keys(xGroupByDesc.colValuesDesc).length) {\n // const { colDesc: colDescItem, colValuesDesc } = xGroupByDesc\n // console.log('colDesc: colDescItem, colValuesDesc: ', colDescItem, colValuesDesc)\n // dataValue = dataValue.map((item) => {\n // if (typeof item[colDescItem] === 'number') {\n // item[colDescItem] = colValuesDesc[item[colDescItem]]\n // }\n // return item\n // })\n // }\n\n const mergeConfig = {\n colDesc: colDesc || [],\n modelName,\n subShowType,\n xGroupByDesc: xGroupByDesc || {\n colDesc: '',\n groupByDesc: '',\n groupByValues: [],\n xAxis: false,\n },\n groupByDesc: xValue,\n data: dataValue,\n }\n return mergeConfig\n})\n\n// 导出数据\nfunction exportExal() {\n if (propData.data.length === 0) {\n // useMessage.error('暂无数据')\n console.log('暂无数据')\n return\n }\n const arr = useDataToExcelJson(propData)\n JsonToExcel(modelName, arr)\n}\nfunction merge(config: EChartsOption, defaultConfig: EChartsOption) {\n const mergeOpt = lodashMerge({}, defaultChartOptionCopy.value, config, defaultConfig)\n let conf = mergeOpt || {}\n\n if (jsCodeSnippet) {\n try {\n // 使用安全的配置处理函数\n conf = safeEvalConfig(jsCodeSnippet, conf)\n }\n catch (error) {\n console.error('代码执行失败:', error)\n }\n }\n\n return conf\n}\n\n// 获取内部 myChart 实例的方法\nfunction getMyChart(): ECharts | null {\n // 对于 table 类型,没有 myChart 实例\n if (showTypeName === 'table') {\n return null\n }\n\n // 尝试从子组件获取 myChart 实例\n const childComponent = myChartRef.value\n if (!childComponent) {\n return null\n }\n\n // 检查子组件是否有 myChart 方法(来自 useCharts)\n if (typeof childComponent.myChart === 'function') {\n return childComponent.myChart()\n }\n\n return null\n}\n\n// 为了保持向后兼容,提供 myChart 计算属性\nconst myChart = computed(() => getMyChart())\n\ndefineExpose({\n exportExal,\n QxsDataChartConfig,\n myChart,\n getMyChart,\n})\nprovide(InjectionChartMerge, merge)\n</script>\n\n<template>\n <component\n :is=\"coms[showTypeName]\"\n ref=\"myChartRef\"\n :key=\"showTypeName\"\n :class=\"[ns.e('wrapper')]\"\n :sub-show-type=\"subShowType\"\n :chart-data=\"formatPublicData\"\n :chart-options=\"chartOptions\"\n :lazy-load=\"lazyLoad\"\n />\n</template>\n"],"names":["ns","useNamespace","myChartRef","ref","QxsDataChartConfig","analyze","config","types","coms","table","Table","bar","Bar","line","Line","pie","Pie","radar","Radar","scatter","Scatter","funnel","Funnel","area","Area","card","Card","ScatterSimple","defaultChartOptionCopy","computed","cloneDeep","defaultChartOption","__props","formatPublicData","desc","colDesc","groupByDesc","data","xValue","xGroupByDesc","typedGroupByDesc","map","groupByDescItem","xAxis","dataValue","filter","item","colDescKey","modelName","subShowType","groupByValues","getMyChart","showTypeName","childComponent","value","myChart","__expose","exportExal","length","arr","useDataToExcelJson","JsonToExcel","provide","InjectionChartMerge","defaultConfig","conf","lodashMerge","jsCodeSnippet","safeEvalConfig","error","_createBlock","_resolveDynamicComponent","key","class","_normalizeClass","_unref","e","chartOptions","lazyLoad"],"mappings":"gjDAyDA,MAAMA,EAAKC,EAAa,cAGlBC,EAAaC,EAAS,MAEtBC,EAAqB,CACzBC,UACAC,SACAC,SAEIC,EAEF,CACFC,MAASC,EACTC,IAAOC,EACPC,KAAQC,EACRC,IAAOC,EACPC,MAASC,EACTC,QAAWC,EACXC,OAAUC,EACVC,KAAQC,EACRC,KAAQC,EACR,iBAAkBC,GAGdC,EAAyBC,EAAS,IAC/BC,EAAUC,EAAmBC,kBAGhCC,EAAmBJ,EAA4B,KACnD,MAAQK,MAAMC,QAAEA,EAAU,eAAIC,EAAc,IAAO,CAAA,EAACC,KAAGA,EAAO,IAAOL,EAAAK,KAGrE,IAAIC,EAA4C,GAE5CC,EAA4D,KAChE,MAAMC,EAAmBJ,EACzBE,EAASE,GAAkBC,IAAKC,IAQ1BA,EAAgBC,QAClBJ,EAAeG,GAEVA,KACH,GAGN,MAAME,EAAYL,GAAiBA,EAAsDJ,QACrFE,EAAKQ,OAAQC,IACX,MAAMC,EAAcR,EAAsDJ,QAC1E,OAAOW,GAAQC,QAAoC,IAArBD,EAAKC,IAAkD,OAArBD,EAAKC,KAEvEV,EA0BJ,MAboB,CAClBF,QAASA,GAAW,GACpBa,UAAQhB,EAAAgB,UACRC,YAAUjB,EAAAiB,YACVV,aAAcA,GAAgB,CAC5BJ,QAAS,GACTC,YAAa,GACbc,cAAe,GACfP,OAAO,GAETP,YAAaE,EACbD,KAAMO,KAiCV,SAASO,IAEP,GAAqB,UAAjBnB,EAAAoB,aACF,OAAO,KAIT,MAAMC,EAAiBnD,EAAWoD,MAClC,OAAKD,GAKiC,mBAA3BA,EAAeE,QACjBF,EAAeE,UALf,IASX,QAKAC,EAAa,CACXC,WAnDF,WACE,GAA6B,IAAzBzB,OAASK,KAAKqB,OAGhB,OAEF,MAAMC,EAAMC,EAAmB5B,EAAAK,MAC/BwB,EAAY7B,EAAAgB,UAAWW,EACzB,EA4CEvD,qBACAmD,QALc1B,EAAS,IAAMsB,KAM7BA,eAEFW,EAAQC,EA/CR,SAAezD,EAAuB0D,GAEpC,IAAIC,EADaC,EAAY,CAAA,EAAItC,EAAuB0B,MAAOhD,EAAQ0D,IAChD,CAAA,EAEvB,GAAIhC,EAAAmC,cACF,IAEEF,EAAOG,EAAepC,gBAAeiC,EACvC,OACOI,GAEP,CAGF,OAAOJ,CACT,eAoCEK,EASEC,EARK/D,EAAK4C,EAAAA,eAAY,SAClB,aAAJjD,IAAID,EACHsE,IAAKpB,EAAAA,aACLqB,MAAKC,EAAA,CAAGC,EAAA3E,GAAG4E,EAAC,aACZ,gBAAe3B,EAAAA,YACf,aAAYhB,EAAAqB,MACZ,gBAAeuB,EAAAA,aACf,YAAWC,EAAAA"}
@@ -1,2 +0,0 @@
1
- import a from"./data-chart.vue.mjs";export{a as default};
2
- //# sourceMappingURL=data-chart.vue2.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"data-chart.vue2.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import*as e from"echarts";import{merge as t}from"lodash-es";import{getProvinceCode as o,isProvinceCode as a}from"./mapData.mjs";const s={get:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"showTypeName",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"table";return s.data.find(o=>o[e].toString()===t||o[e]===t)},data:[{showTypeName:"table",label:"表格",coverImg:"table.png",disabled:()=>!1,subTypeList:[],showType:0,baseConfig:{}},{showTypeName:"line",label:"折线图",coverImg:"line-stack.png",showType:1,subTypeList:[{value:"line-simple",icon:"line-smooth",tooltipContent:"折线图"},{value:"area-basic",icon:"chart-line-area",tooltipContent:"折线面积图"}],baseConfig:{tooltip:{confine:!1,trigger:"axis",axisPointer:{type:"line"}},toolbox:{show:!1,showTitle:!1,feature:{saveAsImage:{}}},legend:{type:"scroll",top:"25px"},grid:{left:"0",bottom:"10px",containLabel:!0},xAxis:{type:"category",boundaryGap:!1},yAxis:{type:"value"},dataZoom:[{type:"inside"}]},disabled:(e,t)=>{const o=t?.length;return!(o>=1&&o<2)}},{showTypeName:"bar",label:"柱状图",coverImg:"bar-tick-align.png",showType:2,baseConfig:{legend:{type:"scroll",top:"25px"},tooltip:{confine:!1,trigger:"axis",axisPointer:{type:"shadow"}},toolbox:{show:!1,showTitle:!1,feature:{saveAsImage:{}}},grid:{left:"0",bottom:"20px",containLabel:!0},xAxis:{axisLabel:{showMaxLabel:!0},axisTick:{alignWithLabel:!0}},yAxis:{},dataZoom:[{type:"inside"}]},subTypeList:[{value:"bar-simple",icon:"bar-simple",tooltipContent:"垂直条形图"},{value:"bar-y-category",icon:"bar-y-category",tooltipContent:"水平条形图"}],disabled:(e,t)=>{const o=t?.length;return!(o>=1)}},{showTypeName:"pie",label:"饼图",coverImg:"pie-simple.png",showType:4,subTypeList:[{value:"pie-simple",icon:"pie-simple",tooltipContent:"饼图"},{value:"pie-borderRadius",icon:"pie-borderRadius",tooltipContent:"环形图"}],baseConfig:{tooltip:{confine:!0,formatter:"{a}<br>{b}: {c}({d}%)",trigger:"item"},toolbox:{show:!1,showTitle:!1,feature:{saveAsImage:{}}},legend:{type:"scroll",top:"25px"}},disabled:(e,t)=>{const o=t?.length,a=e?.length;return!(a<=4&&o>0&&o<=1)}},{showTypeName:"area",label:"地图",coverImg:"area.png",showType:5,subTypeList:[],baseConfig:{tooltip:{confine:!0,trigger:"item"},toolbox:{show:!1,showTitle:!1,feature:{saveAsImage:{}}},visualMap:{text:["高","低"],realtime:!1,calculable:!0,inRange:{color:["#E8F4FD","#B8D4F7","#7BA4F0","#4A7BE8","#3562e1"]}}},disabled:(e,t)=>{const o=t?.length,a=t?.some(e=>{let{colDesc:t}=e;return t.includes("省")||t.includes("市")});return!(a&&o>0)}},{showTypeName:"funnel",label:"漏斗图",coverImg:"funnel.png",showType:6,subTypeList:[],baseConfig:{tooltip:{confine:!0,trigger:"item",formatter:"{a} <br/>{b} : {c}"},toolbox:{show:!1,showTitle:!1,feature:{saveAsImage:{}}},legend:{type:"scroll",top:20}},disabled:(e,t)=>{const o=t?.length,a=e?.length;return!(a<=5&&o>0&&o<=1)}},{showTypeName:"card",label:"卡片",coverImg:"card.png",showType:9,subTypeList:[],baseConfig:{},disabled:(e,t)=>{const o=t?.length,a=e?.length;return!(a>0&&o<=1)}},{showTypeName:"radar",label:"雷达图",coverImg:"radar.png",showType:10,subTypeList:[],baseConfig:{legend:{type:"scroll",orient:"vertical",left:"left",top:"25px"},tooltip:{confine:!0,trigger:"item"},toolbox:{show:!1,showTitle:!1,feature:{saveAsImage:{}}},radar:{center:["50%","55%"]}},disabled:(e,t)=>{const o=t?.length;return 1!==o||1!==e.length}},{showTypeName:"scatter-simple",label:"散点图",coverImg:"",showType:11,subTypeList:[],disabled:()=>!1,baseConfig:{grid:{left:"0",bottom:"10px",containLabel:!0},tooltip:{showDelay:0,axisPointer:{show:!0,type:"cross",lineStyle:{type:"dashed",width:1}}},toolbox:{show:!1,showTitle:!1,feature:{saveAsImage:{}}},legend:{type:"scroll",top:"25px"},xAxis:{splitLine:{lineStyle:{type:"dashed"}}},yAxis:{splitLine:{lineStyle:{type:"dashed"}}}}}]};function i(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return s.get("showType",e)}function n(e,o){const a={};return e.forEach(e=>{a[e.showTypeName]=t(e.baseConfig,o)}),a}const l=n(s.data,{backgroundColor:"transparent",title:{textStyle:{fontSize:14,lineHeight:16}}}),r=new Map;function p(){try{const t=e.getMap("china");if(t&&t.geoJson)return t.geoJson}catch(e){}return{type:"FeatureCollection",features:[]}}function c(e){let{adcode:t}=e;const s="https://cdnfile.yaomaitong.cn/ksh/lib/geo-data";if("string"!=typeof t||t.match(/^\d{6}$/)||"中国"===t||"100000"===t||(t=o(t)),r.has(t)){const e=r.get(t);if(e)return Promise.resolve(e)}return(async()=>{try{if("中国"===t||"100000"===t)try{const e=await fetch(`${s}/china.json`);if(e.ok){const o=await e.json();return r.set(t,o),o}}catch(e){}if(a(t))try{const e=await fetch(`${s}/${t}.json`);if(e.ok){const o=await e.json();if(o&&o.features&&o.features.length>0)return r.set(t,o),o}}catch(e){}const e=p();return r.set(t,e),e}catch(e){const o=p();return r.set(t,o),o}})()}export{l as defaultChartOption,c as getGeoJsonData,s as iconList,n as setDefaultChartOption,i as showTypeText};
2
- //# sourceMappingURL=config.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.mjs","sources":["../../../../../../../packages/components/src/data-chart/src/utils/config.ts"],"sourcesContent":["import type { GeoJson, IconRow, IGroupByInfos, ISelectInfos } from './types'\nimport * as echarts from 'echarts'\nimport { merge } from 'lodash-es'\nimport { getProvinceCode, isProvinceCode } from './mapData'\n\n/**\n * 禁用功能函数\n * 判断当前图表类型是否被禁用\n * 调用时机:渲染页面\n * @param {object} selectInfos 选择信息\n * @param {object} groupByInfos 分组信息\n * @param {Message[]|Message} data 数据\n * @returns Boolean 布尔值\n */\nexport const iconList: {\n data: IconRow[]\n get: (type: keyof IconRow, value: any) => IconRow\n} = {\n get: (type: keyof IconRow = 'showTypeName', value: any = 'table') => {\n return iconList.data.find(item => item[type].toString() === value || item[type] === value)!\n },\n data: [\n {\n showTypeName: 'table',\n label: '表格',\n coverImg: 'table.png',\n disabled: () => false,\n subTypeList: [],\n showType: 0,\n baseConfig: {},\n },\n {\n showTypeName: 'line',\n label: '折线图',\n coverImg: 'line-stack.png',\n showType: 1,\n subTypeList: [\n {\n value: 'line-simple',\n icon: 'line-smooth',\n tooltipContent: '折线图',\n },\n {\n value: 'area-basic',\n icon: 'chart-line-area',\n tooltipContent: '折线面积图',\n },\n ],\n baseConfig: {\n tooltip: {\n confine: false,\n trigger: 'axis',\n axisPointer: {\n type: 'line',\n },\n },\n toolbox: {\n show: false,\n showTitle: false,\n feature: {\n // dataView: { readOnly: true },\n // restore: {},\n saveAsImage: {},\n },\n },\n legend: {\n type: 'scroll',\n top: '25px',\n },\n grid: {\n left: '0',\n bottom: '10px',\n containLabel: true,\n },\n xAxis: {\n type: 'category',\n boundaryGap: false,\n },\n yAxis: {\n type: 'value',\n },\n dataZoom: [\n {\n type: 'inside',\n },\n ],\n },\n disabled: (_: ISelectInfos[], groupByInfos: IGroupByInfos[]) => {\n const groupByInfosLenght = groupByInfos?.length\n if (groupByInfosLenght >= 1 && groupByInfosLenght < 2) {\n return false\n }\n return true\n },\n },\n {\n showTypeName: 'bar',\n label: '柱状图',\n coverImg: 'bar-tick-align.png',\n showType: 2,\n baseConfig: {\n legend: {\n type: 'scroll',\n top: '25px',\n },\n tooltip: {\n confine: false,\n trigger: 'axis',\n axisPointer: {\n type: 'shadow',\n },\n },\n toolbox: {\n show: false,\n showTitle: false,\n feature: {\n // dataView: { readOnly: true },\n // restore: {},\n saveAsImage: {},\n // myFull: { // 全屏\n // show: true,\n // title: '全屏',\n // icon: 'path://...',\n // }\n },\n },\n grid: {\n left: '0',\n bottom: '20px',\n containLabel: true,\n },\n xAxis: {\n axisLabel: {\n showMaxLabel: true,\n },\n axisTick: {\n alignWithLabel: true,\n },\n },\n yAxis: {},\n dataZoom: [\n {\n type: 'inside',\n },\n ],\n },\n subTypeList: [\n {\n value: 'bar-simple',\n icon: 'bar-simple',\n tooltipContent: '垂直条形图',\n },\n {\n value: 'bar-y-category',\n icon: 'bar-y-category',\n tooltipContent: '水平条形图',\n },\n ],\n disabled: (_: ISelectInfos[], groupByInfos: IGroupByInfos[]) => {\n const groupByInfosLenght = groupByInfos?.length\n if (groupByInfosLenght >= 1) {\n return false\n }\n return true\n },\n },\n {\n showTypeName: 'pie',\n label: '饼图',\n coverImg: 'pie-simple.png',\n showType: 4,\n subTypeList: [\n {\n value: 'pie-simple',\n icon: 'pie-simple',\n tooltipContent: '饼图',\n },\n {\n value: 'pie-borderRadius',\n icon: 'pie-borderRadius',\n tooltipContent: '环形图',\n },\n ],\n baseConfig: {\n tooltip: {\n confine: true,\n formatter: '{a}<br>{b}: {c}({d}%)',\n trigger: 'item',\n },\n toolbox: {\n show: false,\n showTitle: false,\n feature: {\n // dataView: { readOnly: true },\n // restore: {},\n saveAsImage: {},\n },\n },\n legend: {\n type: 'scroll',\n top: '25px',\n },\n },\n disabled: (selectInfos: ISelectInfos[], groupByInfos: IGroupByInfos[]) => {\n const groupByInfosLenght = groupByInfos?.length\n const selectInfosLength = selectInfos?.length\n if (selectInfosLength <= 4 && groupByInfosLenght > 0 && groupByInfosLenght <= 1) {\n return false\n }\n return true\n },\n },\n {\n showTypeName: 'area',\n label: '地图',\n coverImg: 'area.png',\n showType: 5,\n subTypeList: [],\n baseConfig: {\n tooltip: {\n confine: true,\n trigger: 'item',\n },\n toolbox: {\n show: false,\n showTitle: false,\n feature: {\n // dataView: { readOnly: true },\n // restore: {},\n saveAsImage: {},\n },\n },\n visualMap: {\n text: ['高', '低'],\n realtime: false,\n calculable: true,\n inRange: {\n color: ['#E8F4FD', '#B8D4F7', '#7BA4F0', '#4A7BE8', '#3562e1'],\n },\n },\n },\n disabled: (_: ISelectInfos[], groupByInfos: IGroupByInfos[]) => {\n const groupByInfosLenght = groupByInfos?.length\n const flag = groupByInfos?.some(({ colDesc }) => (colDesc.includes('省') || colDesc.includes('市')))\n if (flag && groupByInfosLenght > 0) {\n return false\n }\n return true\n },\n },\n {\n showTypeName: 'funnel',\n label: '漏斗图',\n coverImg: 'funnel.png',\n showType: 6,\n subTypeList: [],\n baseConfig: {\n tooltip: {\n confine: true,\n trigger: 'item',\n formatter: '{a} <br/>{b} : {c}',\n },\n toolbox: {\n show: false,\n showTitle: false,\n feature: {\n // dataView: { readOnly: true },\n // restore: {},\n saveAsImage: {},\n },\n },\n legend: {\n type: 'scroll',\n top: 20,\n },\n },\n disabled: (selectInfos: ISelectInfos[], groupByInfos: IGroupByInfos[]) => {\n const groupByInfosLenght = groupByInfos?.length\n const selectInfosLength = selectInfos?.length\n if (selectInfosLength <= 5 && groupByInfosLenght > 0 && groupByInfosLenght <= 1) {\n return false\n }\n return true\n },\n },\n\n // { label: 'scatter', value: 7 },\n {\n showTypeName: 'card',\n label: '卡片',\n coverImg: 'card.png',\n showType: 9,\n subTypeList: [],\n baseConfig: {},\n disabled: (selectInfos: ISelectInfos[], groupByInfos: IGroupByInfos[]) => {\n const groupByInfosLenght = groupByInfos?.length\n const selectInfosLength = selectInfos?.length\n if (selectInfosLength > 0 && groupByInfosLenght <= 1) {\n return false\n }\n return true\n },\n },\n {\n showTypeName: 'radar',\n label: '雷达图',\n coverImg: 'radar.png',\n showType: 10,\n subTypeList: [],\n baseConfig: {\n legend: {\n type: 'scroll',\n orient: 'vertical',\n left: 'left',\n top: '25px',\n },\n tooltip: {\n confine: true,\n trigger: 'item',\n },\n toolbox: {\n show: false,\n showTitle: false,\n feature: {\n // dataView: { readOnly: true },\n // restore: {},\n saveAsImage: {},\n },\n },\n radar: {\n // shape: 'circle',\n center: ['50%', '55%'],\n },\n },\n disabled: (selectInfos: ISelectInfos[], groupByInfos: IGroupByInfos[]) => {\n const groupByInfosLenght = groupByInfos?.length\n if (groupByInfosLenght === 1 && selectInfos.length === 1) {\n return false\n }\n return true\n },\n },\n {\n showTypeName: 'scatter-simple',\n label: '散点图',\n coverImg: '',\n showType: 11,\n subTypeList: [],\n disabled: () => false,\n baseConfig: {\n grid: {\n left: '0',\n bottom: '10px',\n containLabel: true,\n },\n tooltip: {\n showDelay: 0,\n axisPointer: {\n show: true,\n type: 'cross',\n lineStyle: {\n type: 'dashed',\n width: 1,\n },\n },\n },\n toolbox: {\n show: false,\n showTitle: false,\n feature: {\n // dataView: { readOnly: true },\n // restore: {},\n saveAsImage: {},\n },\n },\n legend: {\n type: 'scroll',\n top: '25px',\n },\n xAxis: {\n splitLine: {\n lineStyle: {\n type: 'dashed',\n },\n },\n },\n yAxis: {\n splitLine: {\n lineStyle: {\n type: 'dashed',\n },\n },\n },\n },\n },\n ],\n}\n\nexport function showTypeText(showType = 0): IconRow {\n const row = iconList.get('showType', showType)\n return row\n}\n\n// 修改默认配置\nexport function setDefaultChartOption(option: IconRow[], changeConfig: any) {\n const obj: {\n [key in IconRow['showTypeName']]: any\n } = {} as { [key in IconRow['showTypeName']]: any }\n option.forEach((item) => {\n obj[item.showTypeName] = merge(item.baseConfig, changeConfig)\n })\n return obj\n}\nexport const defaultChartOption = setDefaultChartOption(iconList.data, {\n backgroundColor: 'transparent',\n title: {\n textStyle: {\n fontSize: 14,\n lineHeight: 16,\n },\n },\n})\n// 获取地图数据(GeoJson)\n// 添加缓存对象\nconst geoJsonCache = new Map<string, GeoJson>()\n\n// 使用 ECharts 内置的中国地图数据\nfunction getBuiltinChinaMap(): GeoJson {\n try {\n // 尝试获取 ECharts 内置的中国地图数据\n const chinaMap = echarts.getMap('china')\n if (chinaMap && chinaMap.geoJson) {\n return chinaMap.geoJson as GeoJson\n }\n }\n catch (error) {\n console.warn('Failed to get builtin China map:', error)\n }\n\n // 如果获取失败,返回空的地图数据\n return {\n type: 'FeatureCollection',\n features: [],\n } as GeoJson\n}\nexport function getGeoJsonData(options: any): Promise<GeoJson> {\n let { adcode } = options\n const baseUrl = 'https://cdnfile.yaomaitong.cn/ksh/lib/geo-data'\n\n // 如果传入的是省份名称,转换为代码\n if (typeof adcode === 'string' && !adcode.match(/^\\d{6}$/) && adcode !== '中国' && adcode !== '100000') {\n adcode = getProvinceCode(adcode)\n }\n\n // 检查缓存中是否存在对应的 GeoJSON 数据\n if (geoJsonCache.has(adcode)) {\n const cachedGeoJson = geoJsonCache.get(adcode)\n if (cachedGeoJson) {\n return Promise.resolve(cachedGeoJson)\n }\n }\n\n // 构建基础 URL\n return (async () => {\n try {\n // 方案1: 使用本地地图数据\n if (adcode === '中国' || adcode === '100000') {\n try {\n // 优先尝试本地中国地图数据\n const response = await fetch(`${baseUrl}/china.json`)\n if (response.ok) {\n const chinaData = await response.json()\n geoJsonCache.set(adcode, chinaData)\n return chinaData\n }\n }\n catch (error) {\n console.warn('Failed to load local China map data:', error)\n }\n }\n\n // 方案2: 使用本地省级地图数据\n if (isProvinceCode(adcode)) {\n try {\n const response = await fetch(`${baseUrl}/${adcode}.json`)\n if (response.ok) {\n const geoJson = await response.json()\n if (geoJson && geoJson.features && geoJson.features.length > 0) {\n geoJsonCache.set(adcode, geoJson)\n return geoJson\n }\n }\n }\n catch (error) {\n console.warn('Failed to load local province map data:', error)\n }\n }\n\n // 方案3: 使用内置的中国地图数据作为备用\n const builtinMap = getBuiltinChinaMap()\n geoJsonCache.set(adcode, builtinMap)\n return builtinMap\n }\n catch (error) {\n console.error('All map data sources failed, using simple fallback:', error)\n const builtinMap = getBuiltinChinaMap()\n geoJsonCache.set(adcode, builtinMap)\n return builtinMap\n }\n })()\n}\n"],"names":["iconList","get","type","arguments","length","undefined","value","data","find","item","toString","showTypeName","label","coverImg","disabled","subTypeList","showType","baseConfig","icon","tooltipContent","tooltip","confine","trigger","axisPointer","toolbox","show","showTitle","feature","saveAsImage","legend","top","grid","left","bottom","containLabel","xAxis","boundaryGap","yAxis","dataZoom","_","groupByInfos","groupByInfosLenght","axisLabel","showMaxLabel","axisTick","alignWithLabel","formatter","selectInfos","selectInfosLength","visualMap","text","realtime","calculable","inRange","color","flag","some","_ref","colDesc","includes","orient","radar","center","showDelay","lineStyle","width","splitLine","showTypeText","setDefaultChartOption","option","changeConfig","obj","forEach","merge","defaultChartOption","backgroundColor","title","textStyle","fontSize","lineHeight","geoJsonCache","Map","getBuiltinChinaMap","chinaMap","echarts","getMap","geoJson","error","features","getGeoJsonData","options","adcode","baseUrl","match","getProvinceCode","has","cachedGeoJson","Promise","resolve","response","fetch","ok","chinaData","json","set","isProvinceCode","builtinMap"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- const e=Symbol("merge");export{e as InjectionChartMerge};
2
- //# sourceMappingURL=injectionKeys.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"injectionKeys.mjs","sources":["../../../../../../../packages/components/src/data-chart/src/utils/injectionKeys.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\n\nexport const InjectionChartMerge: InjectionKey<(target: any, source: any) => any> = Symbol('merge')\n"],"names":["InjectionChartMerge","Symbol"],"mappings":"MAEaA,EAAuEC,OAAO"}
@@ -1,2 +0,0 @@
1
- const t={"北京市":"110000","天津市":"120000","河北省":"130000","山西省":"140000","内蒙古自治区":"150000","辽宁省":"210000","吉林省":"220000","黑龙江省":"230000","上海市":"310000","江苏省":"320000","浙江省":"330000","安徽省":"340000","福建省":"350000","江西省":"360000","山东省":"370000","河南省":"410000","湖北省":"420000","湖南省":"430000","广东省":"440000","广西壮族自治区":"450000","海南省":"460000","重庆市":"500000","四川省":"510000","贵州省":"520000","云南省":"530000","西藏自治区":"540000","陕西省":"610000","甘肃省":"620000","青海省":"630000","宁夏回族自治区":"640000","新疆维吾尔自治区":"650000","台湾省":"710000","香港特别行政区":"810000","澳门特别行政区":"820000"};function e(e){return t[e]||"100000"}function n(t){return/^\d{6}$/.test(t)&&"100000"!==t}Object.fromEntries(Object.entries(t).map(t=>{let[e,n]=t;return[n,e]}));export{t as PROVINCE_CODES,e as getProvinceCode,n as isProvinceCode};
2
- //# sourceMappingURL=mapData.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapData.mjs","sources":["../../../../../../../packages/components/src/data-chart/src/utils/mapData.ts"],"sourcesContent":["// 免费的地图数据源\nexport const FREE_MAP_SOURCES = {\n // 省级地图数据源\n PROVINCE: {\n // 使用天地图省级数据\n TIANDITU: () => `https://api.tianditu.gov.cn/vec_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=vec&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=你的天地图token`,\n // 使用 DataV 的省级数据\n DATAV: (adcode: string) => `https://geo.datav.aliyun.com/areas_v3/bound/${adcode}_full.json`,\n },\n // 天地图行政区划数据\n TIANDITU_ADMIN: {\n // 获取行政区划边界数据\n BOUNDARY: (adcode: string) => `https://api.tianditu.gov.cn/administrative?postStr={\"searchWord\":\"${adcode}\",\"searchType\":\"11\",\"needSubInfo\":true,\"needAll\":true,\"needPolygon\":true,\"needPre\":true}&type=query&tk=你的天地图token`,\n },\n}\n\n// 中国地图数据 - 使用真实的省级边界数据\nexport const CHINA_MAP_DATA = {\n type: 'FeatureCollection',\n features: [\n // 这里应该包含所有省份的边界数据\n // 由于数据量很大,建议使用外部数据源\n ],\n}\n\n// 获取中国地图数据的函数\nexport async function getChinaMapData(): Promise<any> {\n try {\n // 优先使用 DataV 的中国地图数据\n const response = await fetch('https://geo.datav.aliyun.com/areas_v3/bound/100000_full.json')\n if (response.ok) {\n return await response.json()\n }\n }\n catch (error) {\n console.warn('Failed to fetch China map from DataV:', error)\n }\n\n // 备用方案:使用简化的地图数据\n return {\n type: 'FeatureCollection',\n features: [\n {\n type: 'Feature',\n properties: {\n name: '中国',\n adcode: '100000',\n },\n geometry: {\n type: 'Polygon',\n coordinates: [[\n [73.66, 35.42], [78.91, 35.42], [81.33, 36.08], [85.29, 36.08],\n [88.02, 35.42], [90.16, 35.42], [92.13, 34.76], [94.81, 34.76],\n [97.06, 33.44], [99.43, 32.78], [101.06, 31.46], [102.73, 30.14],\n [104.40, 28.82], [106.07, 27.50], [107.74, 26.18], [109.41, 24.86],\n [111.08, 23.54], [112.75, 22.22], [114.42, 20.90], [116.09, 19.58],\n [117.76, 18.26], [119.43, 16.94], [121.10, 15.62], [122.77, 14.30],\n [124.44, 12.98], [126.11, 11.66], [127.78, 10.34], [129.45, 9.02],\n [131.12, 7.70], [132.79, 6.38], [134.46, 5.06], [135.05, 4.40],\n [135.05, 5.06], [135.05, 6.38], [135.05, 7.70], [135.05, 9.02],\n [135.05, 10.34], [135.05, 11.66], [135.05, 12.98], [135.05, 14.30],\n [135.05, 15.62], [135.05, 16.94], [135.05, 18.26], [135.05, 19.58],\n [135.05, 20.90], [135.05, 22.22], [135.05, 23.54], [135.05, 24.86],\n [135.05, 26.18], [135.05, 27.50], [135.05, 28.82], [135.05, 30.14],\n [135.05, 31.46], [135.05, 32.78], [135.05, 34.10], [135.05, 35.42],\n [134.46, 36.08], [133.79, 36.74], [133.12, 37.40], [132.45, 38.06],\n [131.78, 38.72], [131.11, 39.38], [130.44, 40.04], [129.77, 40.70],\n [129.10, 41.36], [128.43, 42.02], [127.76, 42.68], [127.09, 43.34],\n [126.42, 44.00], [125.75, 44.66], [125.08, 45.32], [124.41, 45.98],\n [123.74, 46.64], [123.07, 47.30], [122.40, 47.96], [121.73, 48.62],\n [121.06, 49.28], [120.39, 49.94], [119.72, 50.60], [119.05, 51.26],\n [118.38, 51.92], [117.71, 52.58], [117.04, 53.24], [116.37, 53.90],\n [115.70, 54.56], [115.03, 55.22], [114.36, 55.88], [113.69, 56.54],\n [113.02, 57.20], [112.35, 57.86], [111.68, 58.52], [111.01, 59.18],\n [110.34, 59.84], [109.67, 60.50], [109.00, 61.16], [108.33, 61.82],\n [107.66, 62.48], [106.99, 63.14], [106.32, 63.80], [105.65, 64.46],\n [104.98, 65.12], [104.31, 65.78], [103.64, 66.44], [102.97, 67.10],\n [102.30, 67.76], [101.63, 68.42], [100.96, 69.08], [100.29, 69.74],\n [99.62, 70.40], [98.95, 71.06], [98.28, 71.72], [97.61, 72.38],\n [96.94, 73.04], [96.27, 73.70], [95.60, 74.36], [94.93, 75.02],\n [94.26, 75.68], [93.59, 76.34], [92.92, 77.00], [92.25, 77.66],\n [91.58, 78.32], [90.91, 78.98], [90.24, 79.64], [89.57, 80.30],\n [88.90, 80.96], [88.23, 81.62], [87.56, 82.28], [86.89, 82.94],\n [86.22, 83.60], [85.55, 84.26], [84.88, 84.92], [84.21, 85.58],\n [83.54, 86.24], [82.87, 86.90], [82.20, 87.56], [81.53, 88.22],\n [80.86, 88.88], [80.19, 89.54], [79.52, 90.20], [78.85, 90.86],\n [78.18, 91.52], [77.51, 92.18], [76.84, 92.84], [76.17, 93.50],\n [75.50, 94.16], [74.83, 94.82], [74.16, 95.48], [73.66, 96.14],\n [73.66, 95.48], [73.66, 94.82], [73.66, 94.16], [73.66, 93.50],\n [73.66, 92.84], [73.66, 92.18], [73.66, 91.52], [73.66, 90.86],\n [73.66, 90.20], [73.66, 89.54], [73.66, 88.88], [73.66, 88.22],\n [73.66, 87.56], [73.66, 86.90], [73.66, 86.24], [73.66, 85.58],\n [73.66, 84.92], [73.66, 84.26], [73.66, 83.60], [73.66, 82.94],\n [73.66, 82.28], [73.66, 81.62], [73.66, 80.96], [73.66, 80.30],\n [73.66, 79.64], [73.66, 78.98], [73.66, 78.32], [73.66, 77.66],\n [73.66, 77.00], [73.66, 76.34], [73.66, 75.68], [73.66, 75.02],\n [73.66, 74.36], [73.66, 73.70], [73.66, 73.04], [73.66, 72.38],\n [73.66, 71.72], [73.66, 71.06], [73.66, 70.40], [73.66, 69.74],\n [73.66, 69.08], [73.66, 68.42], [73.66, 67.76], [73.66, 67.10],\n [73.66, 66.44], [73.66, 65.78], [73.66, 65.12], [73.66, 64.46],\n [73.66, 63.80], [73.66, 63.14], [73.66, 62.48], [73.66, 61.82],\n [73.66, 61.16], [73.66, 60.50], [73.66, 59.84], [73.66, 59.18],\n [73.66, 58.52], [73.66, 57.86], [73.66, 57.20], [73.66, 56.54],\n [73.66, 55.88], [73.66, 55.22], [73.66, 54.56], [73.66, 53.90],\n [73.66, 53.24], [73.66, 52.58], [73.66, 51.92], [73.66, 51.26],\n [73.66, 50.60], [73.66, 49.94], [73.66, 49.28], [73.66, 48.62],\n [73.66, 47.96], [73.66, 47.30], [73.66, 46.64], [73.66, 45.98],\n [73.66, 45.32], [73.66, 44.66], [73.66, 44.00], [73.66, 43.34],\n [73.66, 42.68], [73.66, 42.02], [73.66, 41.36], [73.66, 40.70],\n [73.66, 40.04], [73.66, 39.38], [73.66, 38.72], [73.66, 38.06],\n [73.66, 37.40], [73.66, 36.74], [73.66, 36.08], [73.66, 35.42],\n ]],\n },\n },\n ],\n }\n}\n\n// 省级行政区代码映射\nexport const PROVINCE_CODES = {\n 北京市: '110000',\n 天津市: '120000',\n 河北省: '130000',\n 山西省: '140000',\n 内蒙古自治区: '150000',\n 辽宁省: '210000',\n 吉林省: '220000',\n 黑龙江省: '230000',\n 上海市: '310000',\n 江苏省: '320000',\n 浙江省: '330000',\n 安徽省: '340000',\n 福建省: '350000',\n 江西省: '360000',\n 山东省: '370000',\n 河南省: '410000',\n 湖北省: '420000',\n 湖南省: '430000',\n 广东省: '440000',\n 广西壮族自治区: '450000',\n 海南省: '460000',\n 重庆市: '500000',\n 四川省: '510000',\n 贵州省: '520000',\n 云南省: '530000',\n 西藏自治区: '540000',\n 陕西省: '610000',\n 甘肃省: '620000',\n 青海省: '630000',\n 宁夏回族自治区: '640000',\n 新疆维吾尔自治区: '650000',\n 台湾省: '710000',\n 香港特别行政区: '810000',\n 澳门特别行政区: '820000',\n}\n\n// 省级名称映射(反向查找)\nexport const PROVINCE_NAMES = Object.fromEntries(\n Object.entries(PROVINCE_CODES).map(([name, code]) => [code, name]),\n)\n\n// 获取省级代码\nexport function getProvinceCode(provinceName: string): string {\n return PROVINCE_CODES[provinceName as keyof typeof PROVINCE_CODES] || '100000'\n}\n\n// 获取省级名称\nexport function getProvinceName(provinceCode: string): string {\n return PROVINCE_NAMES[provinceCode] || '中国'\n}\n\n// 判断是否为省级代码\nexport function isProvinceCode(code: string): boolean {\n return /^\\d{6}$/.test(code) && code !== '100000'\n}\n\n// 获取省级地图数据\nexport async function getProvinceMapData(provinceName: string): Promise<any> {\n const provinceCode = getProvinceCode(provinceName)\n\n try {\n const url = `https://geo.datav.aliyun.com/areas_v3/bound/${provinceCode}_full.json`\n\n const response = await fetch(url)\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`)\n }\n\n const data = await response.json()\n return data\n }\n catch (error) {\n console.error('Failed to fetch province map data for:', provinceName, error)\n throw error\n }\n}\n\n// 天地图配置\nexport const TIANDITU_CONFIG = {\n // 天地图 token(需要申请)\n TOKEN: '你的天地图token', // 请替换为您的天地图 token\n // 天地图 API 基础 URL\n BASE_URL: 'https://api.tianditu.gov.cn',\n}\n\n// 获取天地图行政区划数据\nexport async function fetchTiandituBoundary(adcode: string): Promise<any> {\n try {\n const url = FREE_MAP_SOURCES.TIANDITU_ADMIN.BOUNDARY(adcode).replace('你的天地图token', TIANDITU_CONFIG.TOKEN)\n const response = await fetch(url)\n\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`)\n }\n\n const data = await response.json()\n return data\n }\n catch (error) {\n console.error('Failed to fetch Tianditu boundary data:', error)\n throw error\n }\n}\n\n// 获取地图数据的函数\nexport async function fetchMapData(adcode: string): Promise<any> {\n try {\n // 优先尝试从天地图获取数据\n if (TIANDITU_CONFIG.TOKEN !== '你的天地图token') {\n try {\n const tiandituData = await fetchTiandituBoundary(adcode)\n if (tiandituData && tiandituData.data && tiandituData.data.length > 0) {\n // 转换天地图数据为 GeoJSON 格式\n return convertTiandituToGeoJson(tiandituData)\n }\n }\n catch (error) {\n console.warn('Failed to fetch from Tianditu, trying DataV:', error)\n }\n }\n\n // 备用方案:从 DataV 获取数据\n const url = FREE_MAP_SOURCES.PROVINCE.DATAV(adcode)\n console.log('Fetching province map data from:', url)\n const response = await fetch(url)\n\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`)\n }\n\n const data = await response.json()\n console.log('Successfully fetched province map data for:', adcode, data)\n return data\n }\n catch (error) {\n console.error('Failed to fetch map data for adcode:', adcode, error)\n throw error\n }\n}\n\n// 转换天地图数据为 GeoJSON 格式\nfunction convertTiandituToGeoJson(tiandituData: any): any {\n const features = tiandituData.data.map((item: any) => ({\n type: 'Feature',\n properties: {\n name: item.name,\n adcode: item.adcode,\n level: item.level,\n },\n geometry: {\n type: 'Polygon',\n coordinates: item.polygon ? [item.polygon] : [],\n },\n }))\n\n return {\n type: 'FeatureCollection',\n features,\n }\n}\n"],"names":["PROVINCE_CODES","北京市","天津市","河北省","山西省","内蒙古自治区","辽宁省","吉林省","黑龙江省","上海市","江苏省","浙江省","安徽省","福建省","江西省","山东省","河南省","湖北省","湖南省","广东省","广西壮族自治区","海南省","重庆市","四川省","贵州省","云南省","西藏自治区","陕西省","甘肃省","青海省","宁夏回族自治区","新疆维吾尔自治区","台湾省","香港特别行政区","澳门特别行政区","getProvinceCode","provinceName","isProvinceCode","code","test","Object","fromEntries","entries","map","_ref","name"],"mappings":"AAuHO,MAAMA,EAAiB,CAC5BC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,SAAQ,SACRC,MAAK,SACLC,MAAK,SACLC,OAAM,SACNC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,UAAS,SACTC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,QAAO,SACPC,MAAK,SACLC,MAAK,SACLC,MAAK,SACLC,UAAS,SACTC,WAAU,SACVC,MAAK,SACLC,UAAS,SACTC,UAAS,UASJ,SAASC,EAAgBC,GAC9B,OAAOpC,EAAeoC,IAAgD,QACxE,CAQO,SAASC,EAAeC,GAC7B,MAAO,UAAUC,KAAKD,IAAkB,WAATA,CACjC,CAjB8BE,OAAOC,YACnCD,OAAOE,QAAQ1C,GAAgB2C,IAAIC,IAAA,IAAEC,EAAMP,GAAIM,EAAA,MAAM,CAACN,EAAMO"}
@@ -1,2 +0,0 @@
1
- function t(t,e){const n={...{Math:Math,Date:Date,Array:Array,Object:Object,String:String,Number:Number,Boolean:Boolean,console:console,JSON:JSON},config:{...e}},o=new Proxy(n,{has:(t,e)=>!0,get:(t,e)=>{if("symbol"==typeof e){if(e===Symbol.unscopables)return;return Reflect.get(t,e)}return t[e]}});try{const e=`with (sandbox) { ${t} }`;return new Function("sandbox",e)(o),o.config}catch(t){return e}}export{t as safeEvalConfig};
2
- //# sourceMappingURL=safe-eval.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"safe-eval.mjs","sources":["../../../../../../../packages/components/src/data-chart/src/utils/safe-eval.ts"],"sourcesContent":["import type { EChartsOption } from './types'\n\n/**\n * 安全的配置处理函数\n * @param jsCode - JavaScript 代码片段\n * @param config - ECharts 配置对象\n * @returns 处理后的配置对象\n */\nexport function safeEvalConfig(jsCode: string, config: EChartsOption): EChartsOption {\n // 预定义允许的操作和函数\n const allowedGlobals = {\n Math,\n Date,\n Array,\n Object,\n String,\n Number,\n Boolean,\n console,\n JSON,\n }\n\n // 创建安全的执行环境\n const sandbox = {\n ...allowedGlobals,\n config: { ...config },\n }\n\n // 使用 with 和 Proxy 创建安全的执行环境\n const handler: ProxyHandler<typeof sandbox> = {\n has: (_target, _key) => {\n return true // 使所有变量查找都在 sandbox 中\n },\n get: (target, key) => {\n // 处理 Symbol 类型的 key\n if (typeof key === 'symbol') {\n if (key === Symbol.unscopables) {\n return undefined\n }\n return Reflect.get(target, key)\n }\n return target[key as keyof typeof target]\n },\n }\n\n const proxiedSandbox = new Proxy(sandbox, handler)\n\n try {\n // 使用 with 语句创建局部作用域\n const code = `with (sandbox) { ${jsCode} }`\n // eslint-disable-next-line no-new-func\n const fn = new Function('sandbox', code)\n fn(proxiedSandbox)\n\n return proxiedSandbox.config as EChartsOption\n }\n catch (error) {\n console.error('配置处理失败:', error)\n return config\n }\n}\n"],"names":["safeEvalConfig","jsCode","config","sandbox","Math","Date","Array","Object","String","Number","Boolean","console","JSON","proxiedSandbox","Proxy","has","_target","_key","get","target","key","Symbol","unscopables","Reflect","code","Function","fn","error"],"mappings":"AAQO,SAASA,EAAeC,EAAgBC,GAE7C,MAaMC,EAAU,IAbO,CACrBC,UACAC,UACAC,YACAC,cACAC,cACAC,cACAC,gBACAC,gBACAC,WAMAV,OAAQ,IAAKA,IAoBTW,EAAiB,IAAIC,MAAMX,EAhBa,CAC5CY,IAAKA,CAACC,EAASC,KACN,EAETC,IAAKA,CAACC,EAAQC,KAEZ,GAAmB,iBAARA,EAAkB,CAC3B,GAAIA,IAAQC,OAAOC,YACjB,OAEF,OAAOC,QAAQL,IAAIC,EAAQC,EAC7B,CACA,OAAOD,EAAOC,MAMlB,IAEE,MAAMI,EAAO,oBAAoBvB,MAKjC,OAHW,IAAIwB,SAAS,UAAWD,EACnCE,CAAGb,GAEIA,EAAeX,MACxB,OACOyB,GAEL,OAAOzB,CACT,CACF"}
@@ -1,2 +0,0 @@
1
-
2
- //# sourceMappingURL=types.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{useMouseInElement as e,watchDebounced as t,useElementSize as i}from"@vueuse/core";import*as s from"echarts";import{onMounted as n,nextTick as o,onUnmounted as r}from"vue";import a from"../components/empty.svg.mjs";var c=Object.defineProperty,l=(e,t,i)=>((e,t,i)=>t in e?c(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i)(e,"symbol"!=typeof t?t+"":t,i);const u=new class{constructor(){l(this,"observer",null),l(this,"callbacks",new Map)}createObserver(){return"undefined"==typeof IntersectionObserver?null:new IntersectionObserver(e=>{for(const t of e)if(t.isIntersecting){const e=this.callbacks.get(t.target);e&&(e(),this.unobserve(t.target))}},{threshold:0,rootMargin:"200px"})}observe(e,t){this.observer||(this.observer=this.createObserver()),this.observer&&(this.callbacks.set(e,t),this.observer.observe(e))}unobserve(e){this.observer&&(this.observer.unobserve(e),this.callbacks.delete(e))}disconnect(){this.observer&&(this.observer.disconnect(),this.callbacks.clear(),this.observer=null)}};function f(i){let{chartDOM:c,chartData:l,chartOptions:f,initBefore:d,initAfter:v,lazyLoad:b=!0}=i,p=null,g=!1,m=null,w=[];const y=window.devicePixelRatio||1;function D(){if(p){try{p.isDisposed()||p.dispose()}catch(e){}p=null}}function x(){if(!p||p.isDisposed()){if(!c.value)return null;const{clientWidth:e,clientHeight:t}=c.value;if(0===e||0===t)return null;p=s.init(c.value,null,{devicePixelRatio:y,renderer:"svg"})}return p}function O(){c.value&&u.unobserve(c.value)}function k(){if(w.length>0)return;const{isOutside:i}=e(c),s=t(i,e=>{"boolean"==typeof e&&p&&!p.isDisposed()&&function(e){if(p&&!p.isDisposed())try{p.setOption({toolbox:{show:e}})}catch(e){}}(!e)},{debounce:200}),n=t(()=>f.value,async()=>{await async function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];try{p&&!p.isDisposed()||await M(),p?.showLoading(),l.value?.data?.length?(!0===g&&(t[1]||(t[1]={}),t[1].notMerge=!0),g=!1):t=await R(),p?.setOption(...t)}catch(e){p&&!p.isDisposed()&&D(),x(),t=await R("配置项错误"),p?.setOption(...t)}finally{p?.hideLoading()}}(f.value)},{debounce:500,deep:!0,immediate:!0});w.push(s,n)}async function z(){await o();const{clientWidth:e,clientHeight:t}=c.value||{clientWidth:0,clientHeight:0};if(e>0&&t>0){x()&&(v&&v(p),p&&!p.isDisposed()&&h(p,c),k()),O()}else!function(){if(!c.value||"undefined"==typeof ResizeObserver)return;m=new ResizeObserver(e=>{for(const t of e){const{width:e,height:i}=t.contentRect;if(e>0&&i>0){x()&&(v&&v(p),p&&!p.isDisposed()&&h(p,c),k()),m?.disconnect(),m=null,O();break}}}),m.observe(c.value)}()}async function M(){return c.value?(await o(),b?(c.value&&u.observe(c.value,()=>{z()}),p):(await z(),p)):p}function R(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"暂无数据";return new Promise(t=>{const i=new Image;i.src=a,i.onload=()=>{const s=i.width/i.height,n={title:[{text:l.value?.modelName,...f.value.title},{subtext:e,top:"center",left:"center",text:"{a|}",itemGap:-20,subtextStyle:{fontSize:14},textStyle:{align:"center",rich:{a:{height:100/s,width:100,backgroundColor:{image:a}}}}}]};g=!0,t([n,{notMerge:!0,replaceMerge:["xAxis","yAxis","series"],lazyUpdate:!1}])}})}return n(async()=>{d&&await d(),await o(),await M(),p&&!p.isDisposed()&&(v&&v(p),h(p,c),k())}),r(()=>{if(w.forEach(e=>e()),w=[],m&&(m.disconnect(),m=null),O(),p&&!p.isDisposed())try{p.getZr()?.off("mousemove"),p.getZr()?.off("mouseout"),p.getZr()?.off("click"),p.off("click"),D()}catch(e){}}),{myChart:()=>p}}function h(e,s){const{width:n,height:o}=i(s);t([n,o],()=>{if(e&&!e.isDisposed())try{e.resize()}catch(e){}})}function d(e){const{desc:{colDesc:t=[],groupByDesc:i=[]}={},data:s=[]}=e,n=[...i.map(e=>e.colDesc),...t].filter(e=>e),o=s.map(e=>n.map(t=>e[t]||""));return[n,...o]}export{f as useCharts,d as useDataToExcelJson,h as useResize};
2
- //# sourceMappingURL=useCharts.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useCharts.mjs","sources":["../../../../../../../packages/components/src/data-chart/src/utils/useCharts.ts"],"sourcesContent":["import type { ECharts, SetOptionOpts } from 'echarts'\nimport type { Ref } from 'vue'\nimport type { EChartData, EChartsOption, IFormatPublicData } from './types'\nimport { useElementSize, useMouseInElement, watchDebounced } from '@vueuse/core'\nimport * as echarts from 'echarts'\nimport { nextTick, onMounted, onUnmounted } from 'vue'\n\n// 使用别名路径导入 SVG\nimport emptyImg from '../components/empty.svg'\n\n// 全局 IntersectionObserver 管理器\nclass IntersectionObserverManager {\n private observer: IntersectionObserver | null = null\n private callbacks = new Map<Element, () => void>()\n\n private createObserver() {\n if (typeof IntersectionObserver === 'undefined') {\n return null\n }\n\n return new IntersectionObserver(\n (entries) => {\n for (const entry of entries) {\n if (entry.isIntersecting) {\n const callback = this.callbacks.get(entry.target)\n if (callback) {\n callback()\n // 执行回调后移除监听,避免重复初始化\n this.unobserve(entry.target)\n }\n }\n }\n },\n {\n threshold: 0,\n rootMargin: '200px',\n },\n )\n }\n\n observe(element: Element, callback: () => void) {\n if (!this.observer) {\n this.observer = this.createObserver()\n }\n\n if (this.observer) {\n this.callbacks.set(element, callback)\n this.observer.observe(element)\n }\n }\n\n unobserve(element: Element) {\n if (this.observer) {\n this.observer.unobserve(element)\n this.callbacks.delete(element)\n }\n }\n\n disconnect() {\n if (this.observer) {\n this.observer.disconnect()\n this.callbacks.clear()\n this.observer = null\n }\n }\n}\n\n// 全局单例实例\nconst globalIntersectionObserver = new IntersectionObserverManager()\n\nexport function useCharts({ chartDOM, chartData, chartOptions, initBefore, initAfter, lazyLoad = true }: {\n chartDOM: Ref<HTMLElement | null>\n chartData: Ref<IFormatPublicData>\n chartOptions: Ref<EChartsOption>\n initBefore?: () => Promise<void>\n initAfter?: (e: ECharts | null) => void\n lazyLoad?: boolean\n}) {\n // 每个组件实例的独立状态\n let myChart: ECharts | null = null\n let isEmpty = false\n let resizeObserver: ResizeObserver | null = null\n let watchStopHandles: Array<() => void> = [] // 存储 watch 停止函数\n\n // 获取设备像素比\n const dpr = window.devicePixelRatio || 1\n\n function disposeChart() {\n if (myChart) {\n try {\n if (!myChart.isDisposed()) {\n myChart.dispose()\n }\n }\n catch (error) {\n console.warn('Error disposing chart:', error)\n }\n myChart = null\n }\n }\n\n function initChart() {\n if (!(myChart && !myChart.isDisposed())) {\n // 检查 DOM 元素是否存在\n if (!chartDOM.value) {\n console.warn('[ECharts] DOM element not found')\n return null\n }\n\n // 检查容器尺寸\n const { clientWidth, clientHeight } = chartDOM.value\n if (clientWidth === 0 || clientHeight === 0) {\n // 如果容器没有尺寸,返回 null 而不是强制初始化\n console.warn('[ECharts] Container has zero size. Width:', clientWidth, 'Height:', clientHeight, '. Skipping initialization.')\n return null\n }\n\n // 创建 ECharts 实例\n myChart = echarts.init(chartDOM.value, null, {\n devicePixelRatio: dpr,\n renderer: 'svg',\n })\n }\n return myChart\n }\n\n // 清理所有观察器\n function cleanupObservers() {\n // 从全局观察器中移除当前元素\n if (chartDOM.value) {\n globalIntersectionObserver.unobserve(chartDOM.value)\n }\n }\n\n // 初始化 watchDebounced 监听器\n function setupWatchers() {\n if (watchStopHandles.length > 0) {\n return // 已经设置过了,避免重复设置\n }\n\n // 鼠标悬停监听\n const { isOutside: mouseInChart } = useMouseInElement(chartDOM)\n const stopMouseWatch = watchDebounced(mouseInChart, (newVal) => {\n if (typeof newVal !== 'boolean' || (!myChart || myChart.isDisposed())) {\n return\n }\n toggleToolbox(!newVal)\n }, { debounce: 200 })\n\n // 图表选项监听\n const stopOptionsWatch = watchDebounced(\n () => chartOptions.value,\n async () => {\n await renderChart(chartOptions.value)\n },\n { debounce: 500, deep: true, immediate: true },\n )\n\n watchStopHandles.push(stopMouseWatch, stopOptionsWatch)\n }\n\n // 开始初始化流程\n async function startInitialization() {\n // 等待 DOM 渲染完成\n await nextTick()\n\n // 检查容器是否已经有尺寸\n const { clientWidth, clientHeight } = chartDOM.value || { clientWidth: 0, clientHeight: 0 }\n if (clientWidth > 0 && clientHeight > 0) {\n // 直接初始化\n const chart = initChart()\n if (chart) {\n if (initAfter) {\n initAfter(myChart)\n }\n if (myChart && !myChart.isDisposed()) {\n useResize(myChart, chartDOM)\n }\n // 图表初始化成功后,设置监听器\n setupWatchers()\n }\n // 初始化成功后清理观察器\n cleanupObservers()\n }\n else {\n // 如果没有尺寸,使用 ResizeObserver 等待\n setupResizeObserver()\n }\n }\n\n // 使用全局 IntersectionObserver 监听元素是否进入可视区域\n function setupIntersectionObserver() {\n if (!chartDOM.value) {\n return\n }\n\n // 使用全局观察器,避免重复创建\n globalIntersectionObserver.observe(chartDOM.value, () => {\n startInitialization()\n })\n }\n\n // 使用 ResizeObserver 监听容器尺寸变化\n function setupResizeObserver() {\n if (!chartDOM.value || typeof ResizeObserver === 'undefined') {\n return\n }\n\n resizeObserver = new ResizeObserver((entries) => {\n for (const entry of entries) {\n const { width, height } = entry.contentRect\n if (width > 0 && height > 0) {\n // 容器有尺寸了,可以安全初始化\n const chart = initChart()\n if (chart) {\n if (initAfter) {\n initAfter(myChart)\n }\n // 设置 resize 监听\n if (myChart && !myChart.isDisposed()) {\n useResize(myChart, chartDOM)\n }\n // 图表初始化成功后,设置监听器\n setupWatchers()\n }\n // 初始化后停止观察并清理其他观察器\n resizeObserver?.disconnect()\n resizeObserver = null\n cleanupObservers()\n break\n }\n }\n })\n\n resizeObserver.observe(chartDOM.value)\n }\n\n // 安全的初始化函数\n async function safeInitChart() {\n if (!chartDOM.value) {\n return myChart\n }\n\n // 等待 DOM 渲染完成\n await nextTick()\n\n // 如果启用了懒加载\n if (lazyLoad) {\n // 直接设置 IntersectionObserver,让它检测元素是否进入可视区域\n setupIntersectionObserver()\n return myChart\n }\n\n // 非懒加载模式,直接开始初始化流程\n await startInitialization()\n\n return myChart\n }\n\n async function renderChart(...opt: [EChartsOption, SetOptionOpts?]) {\n try {\n // 确保图表已初始化\n if (!myChart || myChart.isDisposed()) {\n await safeInitChart()\n }\n\n myChart?.showLoading()\n if (chartData.value?.data?.length) {\n if (isEmpty === true) {\n if (!opt[1]) {\n opt[1] = {}\n }\n opt[1].notMerge = true\n }\n isEmpty = false\n }\n else {\n // 数据为空时保持原有配置\n opt = await setEmpty()\n }\n myChart?.setOption(...opt)\n }\n catch (error) {\n console.log(`🚀 ~ renderChart ~ error:`, error)\n if (myChart && !myChart.isDisposed()) {\n disposeChart()\n }\n // 如果实例已被销毁,重新创建\n initChart()\n opt = await setEmpty('配置项错误')\n myChart?.setOption(...opt)\n }\n finally {\n myChart?.hideLoading()\n }\n }\n\n function setEmpty(subtext = '暂无数据'): Promise<[EChartsOption, SetOptionOpts]> {\n return new Promise((resolve) => {\n const img = new Image()\n img.src = emptyImg\n\n img.onload = () => {\n const aspectRatio = img.width / img.height\n\n const obj: EChartsOption = {\n title: [{\n text: chartData.value?.modelName,\n ...chartOptions.value.title,\n }, {\n subtext,\n top: 'center',\n left: 'center',\n text: '{a|}',\n itemGap: -20,\n subtextStyle: {\n fontSize: 14,\n },\n textStyle: {\n align: 'center',\n rich: {\n a: {\n height: 100 / aspectRatio,\n width: 100,\n backgroundColor: {\n image: emptyImg,\n },\n },\n },\n },\n }],\n }\n isEmpty = true\n resolve([obj, {\n notMerge: true,\n replaceMerge: ['xAxis', 'yAxis', 'series'],\n lazyUpdate: false,\n }])\n }\n })\n }\n\n function toggleToolbox(show: boolean) {\n // 修改条件判断,移除 isDisposed 检查\n if (myChart && !myChart.isDisposed()) {\n try {\n myChart.setOption({\n toolbox: {\n show,\n },\n })\n }\n catch (error) {\n console.warn('Error toggling toolbox:', error)\n }\n }\n }\n\n // 移除这里的 watchDebounced 调用,改为在图表初始化后调用\n\n onMounted(async () => {\n if (initBefore) {\n await initBefore()\n }\n\n // 等待 DOM 渲染完成\n await nextTick()\n\n // 使用安全的初始化函数\n await safeInitChart()\n\n // 如果图表已经初始化(容器有尺寸),调用 initAfter 和设置 resize\n if (myChart && !myChart.isDisposed()) {\n if (initAfter) {\n initAfter(myChart)\n }\n useResize(myChart, chartDOM)\n // 图表初始化成功后,设置监听器\n setupWatchers()\n }\n })\n\n onUnmounted(() => {\n // 停止所有 watch 监听器\n watchStopHandles.forEach(stop => stop())\n watchStopHandles = []\n\n // 清理 ResizeObserver\n if (resizeObserver) {\n resizeObserver.disconnect()\n resizeObserver = null\n }\n\n // 清理全局 IntersectionObserver 中的当前元素\n cleanupObservers()\n\n if (myChart && !myChart.isDisposed()) {\n try {\n // 清理所有事件监听器\n myChart.getZr()?.off('mousemove')\n myChart.getZr()?.off('mouseout')\n myChart.getZr()?.off('click')\n myChart.off('click')\n disposeChart()\n }\n catch (error) {\n console.warn('Error during chart cleanup:', error)\n }\n }\n })\n\n return {\n myChart: () => myChart,\n }\n}\n\nexport function useResize(myChart: ECharts, chartDOM: Ref<HTMLElement | null>) {\n const { width, height } = useElementSize(chartDOM)\n watchDebounced([width, height], () => {\n if (myChart && !myChart.isDisposed()) {\n try {\n myChart.resize()\n }\n catch (error) {\n console.warn('Error during chart resize:', error)\n }\n }\n })\n}\n\nexport function useDataToExcelJson(dataSource: EChartData) {\n const { desc: { colDesc = [], groupByDesc = [] } = {}, data = [] } = dataSource\n const header = [...groupByDesc.map(item => item.colDesc), ...colDesc].filter(v => v) as string[]\n const json = data.map((item) => {\n return header.map((headerItem) => {\n return item[headerItem as keyof typeof item] || ''\n })\n })\n return [header, ...json]\n}\n"],"names":["globalIntersectionObserver","constructor","__publicField","this","Map","createObserver","IntersectionObserver","entries","entry","isIntersecting","callback","callbacks","get","target","unobserve","threshold","rootMargin","observe","element","observer","set","delete","disconnect","clear","useCharts","_ref","chartDOM","chartData","chartOptions","initBefore","initAfter","lazyLoad","myChart","isEmpty","resizeObserver","watchStopHandles","dpr","window","devicePixelRatio","disposeChart","isDisposed","dispose","error","initChart","value","clientWidth","clientHeight","echarts","init","renderer","cleanupObservers","setupWatchers","length","isOutside","mouseInChart","useMouseInElement","stopMouseWatch","watchDebounced","newVal","show","setOption","toolbox","toggleToolbox","debounce","stopOptionsWatch","async","_len","arguments","opt","Array","_key","safeInitChart","showLoading","data","notMerge","setEmpty","hideLoading","renderChart","deep","immediate","push","startInitialization","nextTick","useResize","ResizeObserver","width","height","contentRect","setupResizeObserver","subtext","Promise","resolve","img","Image","src","emptyImg","onload","aspectRatio","obj","title","text","modelName","top","left","itemGap","subtextStyle","fontSize","textStyle","align","rich","a","backgroundColor","image","replaceMerge","lazyUpdate","onMounted","onUnmounted","forEach","stop","getZr","off","useElementSize","resize","useDataToExcelJson","dataSource","desc","colDesc","groupByDesc","header","map","item","filter","v","json","headerItem"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import*as m from"./components.mjs";import{makeInstaller as o}from"./make-installer.mjs";var r=o(m);export{r as default};
2
- //# sourceMappingURL=defaults.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"defaults.mjs","sources":["../../../../packages/components/src/defaults.ts"],"sourcesContent":["import * as components from './components'\nimport { makeInstaller } from './make-installer'\n\nexport default makeInstaller(components)\n"],"names":["installer","makeInstaller","components"],"mappings":"wFAGA,IAAAA,EAAeC,EAAcC"}
@@ -1,2 +0,0 @@
1
- let n=!1;const o=function(o){!function(){if(!n){const o=document.createElement("style");o.id="qxs-dialog-styles",o.textContent="\n.qxs-dialog-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.5);\n z-index: 9998;\n animation: qxs-overlay-fade-in 0.3s ease;\n}\n.qxs-dialog {\n position: fixed;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: #fff;\n border-radius: 8px;\n box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);\n z-index: 9999;\n min-width: 300px;\n max-width: 90vw;\n display: flex;\n flex-direction: column;\n animation: qxs-dialog-scale-in 0.3s ease;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n}\n.qxs-dialog__header {\n padding: 16px 20px;\n border-bottom: 1px solid #eee;\n font-size: 16px;\n font-weight: 600;\n color: #303133;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n.qxs-dialog__title { flex: 1; }\n.qxs-dialog__close {\n cursor: pointer;\n font-size: 20px;\n color: #909399;\n background: none;\n border: none;\n padding: 0;\n line-height: 1;\n}\n.qxs-dialog__close:hover { color: #409eff; }\n.qxs-dialog__body {\n padding: 20px;\n color: #606266;\n font-size: 14px;\n line-height: 1.6;\n}\n.qxs-dialog__footer {\n padding: 12px 20px;\n border-top: 1px solid #eee;\n display: flex;\n justify-content: flex-end;\n gap: 12px;\n}\n.qxs-dialog__button {\n padding: 8px 20px;\n border-radius: 4px;\n font-size: 14px;\n cursor: pointer;\n border: 1px solid #dcdfe6;\n background-color: #fff;\n color: #606266;\n}\n.qxs-dialog__button:hover { border-color: #409eff; color: #409eff; }\n.qxs-dialog__button--primary { background-color: #409eff; border-color: #409eff; color: #fff; }\n.qxs-dialog__button--primary:hover { background-color: #66b1ff; border-color: #66b1ff; }\n@keyframes qxs-overlay-fade-in { from { opacity: 0; } to { opacity: 1; } }\n@keyframes qxs-dialog-scale-in { from { opacity: 0; transform: translate(-50%, -50%) scale(0.9); } to { opacity: 1; transform: translate(-50%, -50%) scale(1); } }\n",document.head.appendChild(o),n=!0}}();const{title:e="提示",content:t="",width:a="30%",showClose:s=!0,closeOnClickModal:i=!1,closeOnPressEscape:l=!0,confirmButtonText:d="确定",cancelButtonText:r="取消",showConfirmButton:c=!0,showCancelButton:x=!0,onConfirm:f,onCancel:p,onClose:g}=o,u=document.createElement("div");u.className="qxs-dialog-overlay";const _=document.createElement("div");_.className="qxs-dialog",_.style.width=a,_.innerHTML=`\n <div class="qxs-dialog__header">\n <span class="qxs-dialog__title">${e}</span>\n ${s?'<button class="qxs-dialog__close">×</button>':""}\n </div>\n <div class="qxs-dialog__body">${t}</div>\n ${c||x?`\n <div class="qxs-dialog__footer">\n ${x?`<button class="qxs-dialog__button qxs-dialog__button--cancel">${r}</button>`:""}\n ${c?`<button class="qxs-dialog__button qxs-dialog__button--primary qxs-dialog__button--confirm">${d}</button>`:""}\n </div>\n `:""}\n `,document.body.appendChild(u),document.body.appendChild(_);let b=!1;const m=()=>{b||(b=!0,_.style.animation="qxs-dialog-scale-in 0.2s ease reverse",u.style.animation="qxs-overlay-fade-in 0.2s ease reverse",setTimeout(()=>{u.remove(),_.remove(),g?.()},200))},y=async()=>{try{await(f?.()),m()}catch(n){}},q=()=>{p?.(),m()};if(s&&_.querySelector(".qxs-dialog__close")?.addEventListener("click",m),x&&_.querySelector(".qxs-dialog__button--cancel")?.addEventListener("click",q),c&&_.querySelector(".qxs-dialog__button--confirm")?.addEventListener("click",y),i&&u.addEventListener("click",m),l){const n=o=>{"Escape"===o.key&&(m(),document.removeEventListener("keydown",n))};document.addEventListener("keydown",n)}return{close:m}};export{o as QxsDialog,o as default};
2
- //# sourceMappingURL=dialog.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dialog.mjs","sources":["../../../../../../packages/components/src/dialog/src/dialog.ts"],"sourcesContent":["export interface QxsDialogOptions {\n title?: string\n content?: string\n width?: string\n showClose?: boolean\n closeOnClickModal?: boolean\n closeOnPressEscape?: boolean\n confirmButtonText?: string\n cancelButtonText?: string\n showConfirmButton?: boolean\n showCancelButton?: boolean\n onConfirm?: () => void | Promise<void>\n onCancel?: () => void\n onClose?: () => void\n}\n\ninterface QxsDialogInstance {\n close: () => void\n}\n\nconst styles = `\n.qxs-dialog-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.5);\n z-index: 9998;\n animation: qxs-overlay-fade-in 0.3s ease;\n}\n.qxs-dialog {\n position: fixed;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: #fff;\n border-radius: 8px;\n box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);\n z-index: 9999;\n min-width: 300px;\n max-width: 90vw;\n display: flex;\n flex-direction: column;\n animation: qxs-dialog-scale-in 0.3s ease;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n}\n.qxs-dialog__header {\n padding: 16px 20px;\n border-bottom: 1px solid #eee;\n font-size: 16px;\n font-weight: 600;\n color: #303133;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n.qxs-dialog__title { flex: 1; }\n.qxs-dialog__close {\n cursor: pointer;\n font-size: 20px;\n color: #909399;\n background: none;\n border: none;\n padding: 0;\n line-height: 1;\n}\n.qxs-dialog__close:hover { color: #409eff; }\n.qxs-dialog__body {\n padding: 20px;\n color: #606266;\n font-size: 14px;\n line-height: 1.6;\n}\n.qxs-dialog__footer {\n padding: 12px 20px;\n border-top: 1px solid #eee;\n display: flex;\n justify-content: flex-end;\n gap: 12px;\n}\n.qxs-dialog__button {\n padding: 8px 20px;\n border-radius: 4px;\n font-size: 14px;\n cursor: pointer;\n border: 1px solid #dcdfe6;\n background-color: #fff;\n color: #606266;\n}\n.qxs-dialog__button:hover { border-color: #409eff; color: #409eff; }\n.qxs-dialog__button--primary { background-color: #409eff; border-color: #409eff; color: #fff; }\n.qxs-dialog__button--primary:hover { background-color: #66b1ff; border-color: #66b1ff; }\n@keyframes qxs-overlay-fade-in { from { opacity: 0; } to { opacity: 1; } }\n@keyframes qxs-dialog-scale-in { from { opacity: 0; transform: translate(-50%, -50%) scale(0.9); } to { opacity: 1; transform: translate(-50%, -50%) scale(1); } }\n`\n\nlet stylesInjected = false\n\nfunction injectStyles() {\n if (!stylesInjected) {\n const styleEl = document.createElement('style')\n styleEl.id = 'qxs-dialog-styles'\n styleEl.textContent = styles\n document.head.appendChild(styleEl)\n stylesInjected = true\n }\n}\n\nfunction createDialog(options: QxsDialogOptions): QxsDialogInstance {\n injectStyles()\n\n const {\n title = '提示',\n content = '',\n width = '30%',\n showClose = true,\n closeOnClickModal = false,\n closeOnPressEscape = true,\n confirmButtonText = '确定',\n cancelButtonText = '取消',\n showConfirmButton = true,\n showCancelButton = true,\n onConfirm,\n onCancel,\n onClose,\n } = options\n\n const overlay = document.createElement('div')\n overlay.className = 'qxs-dialog-overlay'\n\n const dialog = document.createElement('div')\n dialog.className = 'qxs-dialog'\n dialog.style.width = width\n\n dialog.innerHTML = `\n <div class=\"qxs-dialog__header\">\n <span class=\"qxs-dialog__title\">${title}</span>\n ${showClose ? '<button class=\"qxs-dialog__close\">×</button>' : ''}\n </div>\n <div class=\"qxs-dialog__body\">${content}</div>\n ${showConfirmButton || showCancelButton ? `\n <div class=\"qxs-dialog__footer\">\n ${showCancelButton ? `<button class=\"qxs-dialog__button qxs-dialog__button--cancel\">${cancelButtonText}</button>` : ''}\n ${showConfirmButton ? `<button class=\"qxs-dialog__button qxs-dialog__button--primary qxs-dialog__button--confirm\">${confirmButtonText}</button>` : ''}\n </div>\n ` : ''}\n `\n\n document.body.appendChild(overlay)\n document.body.appendChild(dialog)\n\n let closed = false\n\n const close = () => {\n if (closed) return\n closed = true\n dialog.style.animation = 'qxs-dialog-scale-in 0.2s ease reverse'\n overlay.style.animation = 'qxs-overlay-fade-in 0.2s ease reverse'\n setTimeout(() => {\n overlay.remove()\n dialog.remove()\n onClose?.()\n }, 200)\n }\n\n const handleConfirm = async () => {\n try {\n await onConfirm?.()\n close()\n } catch (error) {\n console.error('Dialog confirm error:', error)\n }\n }\n\n const handleCancel = () => {\n onCancel?.()\n close()\n }\n\n if (showClose) {\n dialog.querySelector('.qxs-dialog__close')?.addEventListener('click', close)\n }\n\n if (showCancelButton) {\n dialog.querySelector('.qxs-dialog__button--cancel')?.addEventListener('click', handleCancel)\n }\n\n if (showConfirmButton) {\n dialog.querySelector('.qxs-dialog__button--confirm')?.addEventListener('click', handleConfirm)\n }\n\n if (closeOnClickModal) {\n overlay.addEventListener('click', close)\n }\n\n if (closeOnPressEscape) {\n const handleKeydown = (e: KeyboardEvent) => {\n if (e.key === 'Escape') {\n close()\n document.removeEventListener('keydown', handleKeydown)\n }\n }\n document.addEventListener('keydown', handleKeydown)\n }\n\n return { close }\n}\n\ninterface QxsDialogFunction {\n (options: QxsDialogOptions): QxsDialogInstance\n}\n\nconst QxsDialog = createDialog as QxsDialogFunction\n\nexport { QxsDialog, type QxsDialogFunction, type QxsDialogInstance }\nexport default QxsDialog\n"],"names":["stylesInjected","QxsDialog","options","styleEl","document","createElement","id","textContent","head","appendChild","injectStyles","title","content","width","showClose","closeOnClickModal","closeOnPressEscape","confirmButtonText","cancelButtonText","showConfirmButton","showCancelButton","onConfirm","onCancel","onClose","overlay","className","dialog","style","innerHTML","body","closed","close","animation","setTimeout","remove","handleConfirm","async","error","handleCancel","querySelector","addEventListener","handleKeydown","e","key","removeEventListener"],"mappings":"AAiGA,IAAIA,GAAiB,EAoHrB,MAAMC,EAxGN,SAAsBC,IAVtB,WACE,IAAKF,EAAgB,CACnB,MAAMG,EAAUC,SAASC,cAAc,SACvCF,EAAQG,GAAK,oBACbH,EAAQI,YAnFG,k+DAoFXH,SAASI,KAAKC,YAAYN,GAC1BH,GAAiB,CACnB,CACF,CAGEU,GAEA,MAAMC,MACJA,EAAQ,KAAAC,QACRA,EAAU,GAAAC,MACVA,EAAQ,MAAAC,UACRA,GAAY,EAAAC,kBACZA,GAAoB,EAAAC,mBACpBA,GAAqB,EAAAC,kBACrBA,EAAoB,KAAAC,iBACpBA,EAAmB,KAAAC,kBACnBA,GAAoB,EAAAC,iBACpBA,GAAmB,EAAAC,UACnBA,EAAAC,SACAA,EAAAC,QACAA,GACErB,EAEEsB,EAAUpB,SAASC,cAAc,OACvCmB,EAAQC,UAAY,qBAEpB,MAAMC,EAAStB,SAASC,cAAc,OACtCqB,EAAOD,UAAY,aACnBC,EAAOC,MAAMd,MAAQA,EAErBa,EAAOE,UAAY,iFAEmBjB,mBAChCG,EAAY,+CAAiD,qDAEjCF,gBAC9BO,GAAqBC,EAAmB,qDAEpCA,EAAmB,iEAAiEF,aAA8B,eAClHC,EAAoB,8FAA8FF,aAA+B,yBAEnJ,SAGNb,SAASyB,KAAKpB,YAAYe,GAC1BpB,SAASyB,KAAKpB,YAAYiB,GAE1B,IAAII,GAAS,EAEb,MAAMC,EAAQA,KACRD,IACJA,GAAS,EACTJ,EAAOC,MAAMK,UAAY,wCACzBR,EAAQG,MAAMK,UAAY,wCAC1BC,WAAW,KACTT,EAAQU,SACRR,EAAOQ,SACPX,OACC,OAGCY,EAAgBC,UACpB,UACQf,OACNU,GACF,OAASM,GAET,GAGIC,EAAeA,KACnBhB,MACAS,KAmBF,GAhBIjB,GACFY,EAAOa,cAAc,uBAAuBC,iBAAiB,QAAST,GAGpEX,GACFM,EAAOa,cAAc,gCAAgCC,iBAAiB,QAASF,GAG7EnB,GACFO,EAAOa,cAAc,iCAAiCC,iBAAiB,QAASL,GAG9EpB,GACFS,EAAQgB,iBAAiB,QAAST,GAGhCf,EAAoB,CACtB,MAAMyB,EAAiBC,IACP,WAAVA,EAAEC,MACJZ,IACA3B,SAASwC,oBAAoB,UAAWH,KAG5CrC,SAASoC,iBAAiB,UAAWC,EACvC,CAEA,MAAO,CAAEV,QACX"}
@@ -1,2 +0,0 @@
1
- import{QxsDialog as s}from"../dialog/src/dialog.mjs";import{QxsMessage as o}from"../message/src/message.mjs";const e={install(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{message:g=!0,dialog:i=!0}=a;g&&(e.config.globalProperties.$qxsMessage=o,e.provide("$qxsMessage",o)),i&&(e.config.globalProperties.$qxsDialog=s,e.provide("$qxsDialog",s))}};export{e as QxsFeedbackPlugin,e as default};
2
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/src/feedback-plugin/index.ts"],"sourcesContent":["import type { App, Plugin } from 'vue'\nimport { QxsDialog } from '../dialog'\nimport { QxsMessage } from '../message'\n\nexport interface QxsFeedbackPluginOptions {\n message?: boolean\n dialog?: boolean\n}\n\nconst QxsFeedbackPlugin: Plugin = {\n install(app: App, options: QxsFeedbackPluginOptions = {}) {\n const {\n message = true,\n dialog = true,\n } = options\n\n if (message) {\n app.config.globalProperties.$qxsMessage = QxsMessage\n app.provide('$qxsMessage', QxsMessage)\n }\n\n if (dialog) {\n app.config.globalProperties.$qxsDialog = QxsDialog\n app.provide('$qxsDialog', QxsDialog)\n }\n },\n}\n\nexport { QxsFeedbackPlugin }\nexport default QxsFeedbackPlugin\n"],"names":["QxsFeedbackPlugin","install","app","options","arguments","length","undefined","message","dialog","config","globalProperties","$qxsMessage","QxsMessage","provide","$qxsDialog","QxsDialog"],"mappings":"6GASA,MAAMA,EAA4B,CAChCC,OAAAA,CAAQC,GAAkD,IAAxCC,EAAAC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAoC,CAAA,EACpD,MAAMG,QACJA,GAAU,EAAAC,OACVA,GAAS,GACPL,EAEAI,IACFL,EAAIO,OAAOC,iBAAiBC,YAAcC,EAC1CV,EAAIW,QAAQ,cAAeD,IAGzBJ,IACFN,EAAIO,OAAOC,iBAAiBI,WAAaC,EACzCb,EAAIW,QAAQ,aAAcE,GAE9B"}
@@ -1,2 +0,0 @@
1
- import{withInstall as o}from"../withInstall.mjs";import t from"./src/file-upload.vue.mjs";const m=o(t);export{m as QxsFileUpload,m as default};
2
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/src/file-upload/index.ts"],"sourcesContent":["import { withInstall } from '../withInstall'\nimport component from './src/file-upload.vue'\n\nconst QxsFileUpload = withInstall(component)\n\nexport {\n QxsFileUpload,\n}\n\nexport default QxsFileUpload\n"],"names":["QxsFileUpload","withInstall","component"],"mappings":"0FAGA,MAAMA,EAAgBC,EAAYC"}
@@ -1,2 +0,0 @@
1
- import e from"./file-upload.vue2.mjs";import"./file-upload.vue3.mjs";import o from"../../../_virtual/_plugin-vue_export-helper.mjs";var p=o(e,[["__scopeId","data-v-1059eba1"]]);export{p as default};
2
- //# sourceMappingURL=file-upload.vue.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-upload.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{defineComponent as e,computed as t,ref as a,createElementBlock as r,openBlock as l,normalizeClass as i,unref as s,createElementVNode as n,createCommentVNode as o,createTextVNode as u,Fragment as p,renderList as c,toDisplayString as d,withModifiers as f,createVNode as m}from"vue";import{useNamespace as v}from"@qxs-bns/hooks";import{QxsMessage as y}from"../../message/src/message.mjs";import{QxsAlert as h}from"../../alert/index.mjs";const g=["accept","multiple"],q=["onClick"];var x=e({name:"QxsFileUpload",__name:"file-upload",props:{action:{type:String,required:!0},headers:{type:Object,required:!1},data:{type:Object,required:!1},name:{type:String,required:!1,default:"file"},size:{type:Number,required:!1,default:20},max:{type:Number,required:!1,default:3},accept:{type:String,required:!1,default:"zip,rar"},files:{type:Array,required:!1,default:()=>[]},notip:{type:Boolean,required:!1,default:!1},ext:{type:Array,required:!1}},emits:["onSuccess"],setup(e,{emit:x}){const b=e,j=x,k=v("file-upload"),z=t(()=>b.accept.split(",")),S=a([...b.files]),C=a(!1),O=e=>{const t=e.name.split(".").at(-1)??"",a=z.value.includes(t),r=e.size/1024/1024<b.size;return a?r?!(S.value.length>=b.max)||(y.warning("文件上传超过限制"),!1):(y.error(`上传文件大小不能超过 ${b.size}MB!`),!1):(y.error(`上传文件只支持 ${z.value.join(" / ")} 格式!`),!1)},$=e=>{C.value=!1;const t=e.dataTransfer?.files;t&&Array.from(t).forEach(e=>{O(e)&&M(e)})},w=e=>{e.preventDefault(),C.value=!0},B=()=>{C.value=!1},D=e=>{const t=e.target,a=t.files;a&&(Array.from(a).forEach(e=>{O(e)&&M(e)}),t.value="")},M=e=>{const t=new FormData;t.append(b.name,e),b.data&&Object.entries(b.data).forEach(([e,a])=>{t.append(e,a)});const a=new XMLHttpRequest;a.open("POST",b.action),b.headers&&Object.entries(b.headers).forEach(([e,t])=>{a.setRequestHeader(e,t)}),a.onload=()=>{if(a.status>=200&&a.status<300){const t=JSON.parse(a.responseText);S.value.push({name:e.name,file:e}),j("onSuccess",t,e,S.value.map(e=>e.file).filter(Boolean))}else y.error("上传失败")},a.onerror=()=>{y.error("上传失败")},a.send(t)};return(e,t)=>(l(),r("div",{class:i(s(k).b())},[n("div",{class:i([s(k).e("control"),{"is-dragging":C.value}]),onDrop:$,onDragover:w,onDragleave:B,onClick:t[0]||(t[0]=t=>e.$refs.fileInput.click())},[n("input",{ref:"fileInput",type:"file",accept:e.accept,multiple:e.max>1,style:{display:"none"},onChange:D},null,40,g),n("div",{class:i(s(k).e("icon"))},t[1]||(t[1]=[n("svg",{viewBox:"0 0 24 24",fill:"currentColor",width:"48",height:"48"},[n("path",{d:"M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"})],-1)]),2),n("div",{class:i(s(k).e("text"))},t[2]||(t[2]=[u(" 将文件拖到此处,或",-1),n("em",null,"点击上传",-1)]),2)],34),S.value.length?(l(),r("div",{key:0,class:i(s(k).e("list"))},[(l(!0),r(p,null,c(S.value,(e,t)=>(l(),r("div",{key:t,class:i(s(k).e("item"))},[n("span",null,d(e.name),1),n("button",{type:"button",class:i(s(k).e("remove")),onClick:f(e=>(e=>{S.value.splice(e,1)})(t),["stop"])}," × ",10,q)],2))),128))],2)):o("v-if",!0),e.notip?o("v-if",!0):(l(),r("div",{key:1,class:i(s(k).e("tip"))},[m(s(h),{title:`上传文件支持 ${z.value.join(" / ")} 格式,单个文件大小不超过 ${e.size}MB,且文件数量不超过 ${e.max} 个`,type:"info"},null,8,["title"])],2))],2))}});export{x as default};
2
- //# sourceMappingURL=file-upload.vue2.mjs.map