@duxweb/dvha-pro 1.1.29 → 1.1.31

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 (529) hide show
  1. package/dist/cjs/_virtual/_rolldown/runtime.cjs +1 -0
  2. package/dist/cjs/app.cjs +1 -1
  3. package/dist/cjs/component.cjs +1 -1
  4. package/dist/cjs/components/card/card.cjs +1 -1
  5. package/dist/cjs/components/card/index.cjs +1 -0
  6. package/dist/cjs/components/card/store.cjs +1 -1
  7. package/dist/cjs/components/carousel/carousel.cjs +1 -1
  8. package/dist/cjs/components/carousel/index.cjs +1 -0
  9. package/dist/cjs/components/cascaderPanel/cascaderPanel.cjs +1 -1
  10. package/dist/cjs/components/cascaderPanel/index.cjs +1 -0
  11. package/dist/cjs/components/chart/echart.cjs +1 -1
  12. package/dist/cjs/components/chart/index.cjs +1 -0
  13. package/dist/cjs/components/code/code.cjs +1 -1
  14. package/dist/cjs/components/code/index.cjs +1 -0
  15. package/dist/cjs/components/crop/imageCrop.cjs +1 -1
  16. package/dist/cjs/components/crop/imageCropModal.cjs +1 -1
  17. package/dist/cjs/components/crop/index.cjs +1 -0
  18. package/dist/cjs/components/dashboard/hello.cjs +1 -1
  19. package/dist/cjs/components/dashboard/helloBig.cjs +1 -1
  20. package/dist/cjs/components/dashboard/index.cjs +1 -0
  21. package/dist/cjs/components/dashboard/quick.cjs +1 -1
  22. package/dist/cjs/components/data/dynamicData.cjs +1 -1
  23. package/dist/cjs/components/data/dynamicSelect.cjs +1 -1
  24. package/dist/cjs/components/data/index.cjs +1 -0
  25. package/dist/cjs/components/data/selectModal.cjs +1 -1
  26. package/dist/cjs/components/designEditor/components/grid.cjs +1 -1
  27. package/dist/cjs/components/designEditor/components/index.cjs +1 -0
  28. package/dist/cjs/components/designEditor/editor/hook.cjs +1 -1
  29. package/dist/cjs/components/designEditor/editor/index.cjs +1 -0
  30. package/dist/cjs/components/designEditor/editor/preview.cjs +1 -1
  31. package/dist/cjs/components/designEditor/editor/setting.cjs +1 -1
  32. package/dist/cjs/components/designEditor/editor.cjs +1 -1
  33. package/dist/cjs/components/designEditor/index.cjs +1 -0
  34. package/dist/cjs/components/dialog/dialog.cjs +1 -1
  35. package/dist/cjs/components/dialog/index.cjs +1 -0
  36. package/dist/cjs/components/draw/drawApps.cjs +1 -1
  37. package/dist/cjs/components/draw/drawAuth.cjs +1 -1
  38. package/dist/cjs/components/draw/drawEmpty.cjs +1 -1
  39. package/dist/cjs/components/draw/drawEmptyForm.cjs +1 -1
  40. package/dist/cjs/components/draw/drawError.cjs +1 -1
  41. package/dist/cjs/components/draw/index.cjs +1 -0
  42. package/dist/cjs/components/drawer/drawer.cjs +1 -1
  43. package/dist/cjs/components/drawer/drawerPage.cjs +1 -1
  44. package/dist/cjs/components/drawer/index.cjs +1 -0
  45. package/dist/cjs/components/editor/aiEditor.cjs +2 -2
  46. package/dist/cjs/components/editor/index.cjs +1 -0
  47. package/dist/cjs/components/flowEditor/components/fieldConfig.cjs +1 -1
  48. package/dist/cjs/components/flowEditor/components/index.cjs +1 -0
  49. package/dist/cjs/components/flowEditor/components/jsonEditor.cjs +1 -1
  50. package/dist/cjs/components/flowEditor/components/kvInput.cjs +1 -1
  51. package/dist/cjs/components/flowEditor/components/nodeCard.cjs +1 -1
  52. package/dist/cjs/components/flowEditor/components/note.cjs +1 -1
  53. package/dist/cjs/components/flowEditor/components/setting.cjs +1 -1
  54. package/dist/cjs/components/flowEditor/components/toolbar.cjs +1 -1
  55. package/dist/cjs/components/flowEditor/flowEditor.cjs +1 -1
  56. package/dist/cjs/components/flowEditor/index.cjs +1 -0
  57. package/dist/cjs/components/flowEditor/nodes/dynamicNodeFactory.cjs +1 -1
  58. package/dist/cjs/components/flowEditor/nodes/endNode.cjs +1 -1
  59. package/dist/cjs/components/flowEditor/nodes/index.cjs +1 -1
  60. package/dist/cjs/components/flowEditor/nodes/processNode.cjs +1 -1
  61. package/dist/cjs/components/flowEditor/nodes/startNode.cjs +1 -1
  62. package/dist/cjs/components/flowEditor/utils/nodeDataUtils.cjs +1 -1
  63. package/dist/cjs/components/form/drawerForm.cjs +1 -1
  64. package/dist/cjs/components/form/formItem.cjs +1 -1
  65. package/dist/cjs/components/form/formLayout.cjs +1 -1
  66. package/dist/cjs/components/form/index.cjs +1 -0
  67. package/dist/cjs/components/form/modalForm.cjs +1 -1
  68. package/dist/cjs/components/form/pageForm.cjs +1 -1
  69. package/dist/cjs/components/form/pageTabForm.cjs +1 -1
  70. package/dist/cjs/components/form/settingForm.cjs +1 -1
  71. package/dist/cjs/components/formEditor/base/base.cjs +1 -1
  72. package/dist/cjs/components/formEditor/base/index.cjs +1 -0
  73. package/dist/cjs/components/formEditor/base/json.cjs +1 -1
  74. package/dist/cjs/components/formEditor/base/options.cjs +1 -1
  75. package/dist/cjs/components/formEditor/base/setting.cjs +1 -1
  76. package/dist/cjs/components/formEditor/components/cascader.cjs +1 -1
  77. package/dist/cjs/components/formEditor/components/cascaderAsync.cjs +1 -1
  78. package/dist/cjs/components/formEditor/components/checkbox.cjs +1 -1
  79. package/dist/cjs/components/formEditor/components/color.cjs +1 -1
  80. package/dist/cjs/components/formEditor/components/date.cjs +1 -1
  81. package/dist/cjs/components/formEditor/components/dynamicInput.cjs +1 -1
  82. package/dist/cjs/components/formEditor/components/dynamicTags.cjs +1 -1
  83. package/dist/cjs/components/formEditor/components/editor.cjs +1 -1
  84. package/dist/cjs/components/formEditor/components/fileUpload.cjs +1 -1
  85. package/dist/cjs/components/formEditor/components/imageUpload.cjs +1 -1
  86. package/dist/cjs/components/formEditor/components/index.cjs +1 -0
  87. package/dist/cjs/components/formEditor/components/input.cjs +1 -1
  88. package/dist/cjs/components/formEditor/components/inputNumber.cjs +1 -1
  89. package/dist/cjs/components/formEditor/components/mentionAsync.cjs +1 -1
  90. package/dist/cjs/components/formEditor/components/radio.cjs +1 -1
  91. package/dist/cjs/components/formEditor/components/region.cjs +1 -1
  92. package/dist/cjs/components/formEditor/components/select.cjs +1 -1
  93. package/dist/cjs/components/formEditor/components/selectAsync.cjs +1 -1
  94. package/dist/cjs/components/formEditor/components/sider.cjs +1 -1
  95. package/dist/cjs/components/formEditor/components/switch.cjs +1 -1
  96. package/dist/cjs/components/formEditor/components/time.cjs +1 -1
  97. package/dist/cjs/components/formEditor/components/transferAsync.cjs +1 -1
  98. package/dist/cjs/components/formEditor/components/treeSelect.cjs +1 -1
  99. package/dist/cjs/components/formEditor/components/treeSelectAsync.cjs +1 -1
  100. package/dist/cjs/components/formEditor/editor.cjs +1 -1
  101. package/dist/cjs/components/formEditor/index.cjs +1 -0
  102. package/dist/cjs/components/formEditor/json.cjs +1 -1
  103. package/dist/cjs/components/formEditor/preview.cjs +1 -1
  104. package/dist/cjs/components/formEditor/renderer.cjs +1 -1
  105. package/dist/cjs/components/icon/icon.cjs +1 -1
  106. package/dist/cjs/components/icon/iconPicker.cjs +1 -1
  107. package/dist/cjs/components/icon/index.cjs +1 -0
  108. package/dist/cjs/components/index.cjs +1 -0
  109. package/dist/cjs/components/layout/filter.cjs +1 -1
  110. package/dist/cjs/components/layout/filterLayout.cjs +1 -1
  111. package/dist/cjs/components/layout/grid.cjs +1 -1
  112. package/dist/cjs/components/layout/index.cjs +1 -0
  113. package/dist/cjs/components/layout/list.cjs +1 -1
  114. package/dist/cjs/components/layout/table.cjs +1 -1
  115. package/dist/cjs/components/layout/tools.cjs +1 -1
  116. package/dist/cjs/components/level/index.cjs +1 -0
  117. package/dist/cjs/components/level/level.cjs +1 -1
  118. package/dist/cjs/components/list/card.cjs +1 -1
  119. package/dist/cjs/components/list/index.cjs +1 -0
  120. package/dist/cjs/components/list/list.cjs +1 -1
  121. package/dist/cjs/components/mapCoord/index.cjs +1 -0
  122. package/dist/cjs/components/mapCoord/mapCoord.cjs +1 -1
  123. package/dist/cjs/components/media/index.cjs +1 -0
  124. package/dist/cjs/components/media/media.cjs +1 -1
  125. package/dist/cjs/components/modal/index.cjs +1 -0
  126. package/dist/cjs/components/modal/modal.cjs +1 -1
  127. package/dist/cjs/components/modal/modalPage.cjs +1 -1
  128. package/dist/cjs/components/modal/modalTab.cjs +1 -1
  129. package/dist/cjs/components/panel/alert.cjs +1 -1
  130. package/dist/cjs/components/panel/collapse.cjs +1 -1
  131. package/dist/cjs/components/panel/index.cjs +1 -0
  132. package/dist/cjs/components/panel/setting.cjs +1 -1
  133. package/dist/cjs/components/posterEditor/components/CanvasRuler.cjs +1 -1
  134. package/dist/cjs/components/posterEditor/elements/circle.cjs +1 -1
  135. package/dist/cjs/components/posterEditor/elements/image.cjs +1 -1
  136. package/dist/cjs/components/posterEditor/elements/index.cjs +1 -1
  137. package/dist/cjs/components/posterEditor/elements/rect.cjs +1 -1
  138. package/dist/cjs/components/posterEditor/elements/text.cjs +1 -1
  139. package/dist/cjs/components/posterEditor/hooks/index.cjs +1 -0
  140. package/dist/cjs/components/posterEditor/hooks/usePosterEditor.cjs +1 -1
  141. package/dist/cjs/components/posterEditor/index.cjs +1 -0
  142. package/dist/cjs/components/posterEditor/pages/LeftToolbar.cjs +1 -1
  143. package/dist/cjs/components/posterEditor/pages/Panel.cjs +1 -1
  144. package/dist/cjs/components/posterEditor/pages/PanelItem.cjs +1 -1
  145. package/dist/cjs/components/posterEditor/pages/RightPanel.cjs +1 -1
  146. package/dist/cjs/components/posterEditor/pages/index.cjs +1 -0
  147. package/dist/cjs/components/posterEditor/posterEditor.cjs +1 -1
  148. package/dist/cjs/components/schemaEditor/index.cjs +1 -0
  149. package/dist/cjs/components/schemaEditor/schemaEditor.cjs +1 -1
  150. package/dist/cjs/components/select/checkboxTag.cjs +1 -1
  151. package/dist/cjs/components/select/dateTag.cjs +1 -1
  152. package/dist/cjs/components/select/index.cjs +1 -0
  153. package/dist/cjs/components/select/radioTag.cjs +1 -1
  154. package/dist/cjs/components/select/selectCard.cjs +1 -1
  155. package/dist/cjs/components/spec/index.cjs +1 -0
  156. package/dist/cjs/components/spec/spec.cjs +1 -1
  157. package/dist/cjs/components/spec/specEditor.cjs +1 -1
  158. package/dist/cjs/components/stats/index.cjs +1 -0
  159. package/dist/cjs/components/stats/number.cjs +1 -1
  160. package/dist/cjs/components/stats/realTime.cjs +1 -1
  161. package/dist/cjs/components/status/blockEmpty.cjs +1 -1
  162. package/dist/cjs/components/status/index.cjs +1 -0
  163. package/dist/cjs/components/status/listEmpty.cjs +1 -1
  164. package/dist/cjs/components/table/index.cjs +1 -0
  165. package/dist/cjs/components/table/table.cjs +1 -1
  166. package/dist/cjs/components/table/tablePage.cjs +1 -1
  167. package/dist/cjs/components/textImageEditor/index.cjs +1 -0
  168. package/dist/cjs/components/textImageEditor/textImageEditor.cjs +1 -1
  169. package/dist/cjs/components/textImageEditor/textModal.cjs +1 -1
  170. package/dist/cjs/components/tree/index.cjs +1 -0
  171. package/dist/cjs/components/tree/treeFilter.cjs +1 -1
  172. package/dist/cjs/components/upload/config.cjs +1 -1
  173. package/dist/cjs/components/upload/file.cjs +1 -1
  174. package/dist/cjs/components/upload/image.cjs +1 -1
  175. package/dist/cjs/components/upload/index.cjs +1 -0
  176. package/dist/cjs/components/upload/manage/item.cjs +1 -1
  177. package/dist/cjs/components/upload/manager.cjs +1 -1
  178. package/dist/cjs/components/upload/selectFile.cjs +1 -1
  179. package/dist/cjs/components/upload/video.cjs +1 -1
  180. package/dist/cjs/components/widget/avatar.cjs +1 -1
  181. package/dist/cjs/components/widget/connect.cjs +1 -1
  182. package/dist/cjs/components/widget/image.cjs +1 -1
  183. package/dist/cjs/components/widget/index.cjs +1 -0
  184. package/dist/cjs/components/widget/placeholder.cjs +1 -1
  185. package/dist/cjs/config/echart.cjs +1 -1
  186. package/dist/cjs/config/index.cjs +1 -0
  187. package/dist/cjs/config/uno.cjs +1 -1
  188. package/dist/cjs/config/validate.cjs +1 -1
  189. package/dist/cjs/dvha-pro.css +2 -1
  190. package/dist/cjs/hooks/action.cjs +1 -1
  191. package/dist/cjs/hooks/dialog.cjs +1 -1
  192. package/dist/cjs/hooks/download.cjs +1 -1
  193. package/dist/cjs/hooks/drawer.cjs +1 -1
  194. package/dist/cjs/hooks/echart.cjs +1 -1
  195. package/dist/cjs/hooks/image.cjs +1 -1
  196. package/dist/cjs/hooks/index.cjs +1 -0
  197. package/dist/cjs/hooks/level.cjs +1 -1
  198. package/dist/cjs/hooks/modal.cjs +1 -1
  199. package/dist/cjs/hooks/table/color.cjs +1 -1
  200. package/dist/cjs/hooks/table/column.cjs +1 -1
  201. package/dist/cjs/hooks/table/copy.cjs +1 -1
  202. package/dist/cjs/hooks/table/hidden.cjs +1 -1
  203. package/dist/cjs/hooks/table/image.cjs +1 -1
  204. package/dist/cjs/hooks/table/index.cjs +1 -0
  205. package/dist/cjs/hooks/table/input.cjs +1 -1
  206. package/dist/cjs/hooks/table/map.cjs +1 -1
  207. package/dist/cjs/hooks/table/media.cjs +1 -1
  208. package/dist/cjs/hooks/table/status.cjs +1 -1
  209. package/dist/cjs/hooks/table/switch.cjs +1 -1
  210. package/dist/cjs/hooks/table.cjs +1 -1
  211. package/dist/cjs/hooks/ui.cjs +1 -1
  212. package/dist/cjs/index.cjs +1 -1
  213. package/dist/cjs/langs/en-US.cjs +1 -0
  214. package/dist/cjs/langs/zh-CN.cjs +1 -0
  215. package/dist/cjs/main.cjs +1 -1
  216. package/dist/cjs/pages/authLayout.cjs +1 -1
  217. package/dist/cjs/pages/index.cjs +1 -0
  218. package/dist/cjs/pages/layout/global.cjs +1 -1
  219. package/dist/cjs/pages/layout/page.cjs +1 -1
  220. package/dist/cjs/pages/layout/tab.cjs +1 -1
  221. package/dist/cjs/pages/layout.cjs +1 -1
  222. package/dist/cjs/pages/loading.cjs +1 -1
  223. package/dist/cjs/pages/login.cjs +1 -1
  224. package/dist/cjs/pages/menu/avatar.cjs +1 -1
  225. package/dist/cjs/pages/menu/button.cjs +1 -1
  226. package/dist/cjs/pages/menu/cmd.cjs +1 -1
  227. package/dist/cjs/pages/menu/dark.cjs +1 -1
  228. package/dist/cjs/pages/menu/index.cjs +1 -0
  229. package/dist/cjs/pages/menu/menuApp.cjs +1 -1
  230. package/dist/cjs/pages/menu/menuMain.cjs +1 -1
  231. package/dist/cjs/pages/menu/mobile.cjs +1 -1
  232. package/dist/cjs/pages/menu/notice.cjs +1 -1
  233. package/dist/cjs/pages/page.cjs +1 -1
  234. package/dist/cjs/pages/page403.cjs +1 -1
  235. package/dist/cjs/pages/page404.cjs +1 -1
  236. package/dist/cjs/pages/page500.cjs +1 -1
  237. package/dist/cjs/pages/pageEmpty.cjs +1 -1
  238. package/dist/cjs/pages/pageException.cjs +1 -1
  239. package/dist/cjs/pages/pageLoading.cjs +1 -1
  240. package/dist/cjs/pages/pageStatus.cjs +1 -1
  241. package/dist/cjs/static/images/icon/audio.cjs +1 -0
  242. package/dist/cjs/static/images/icon/excel.cjs +1 -0
  243. package/dist/cjs/static/images/icon/file.cjs +1 -0
  244. package/dist/cjs/static/images/icon/folder.cjs +1 -0
  245. package/dist/cjs/static/images/icon/pdf.cjs +1 -0
  246. package/dist/cjs/static/images/icon/ppt.cjs +1 -0
  247. package/dist/cjs/static/images/icon/video.cjs +1 -0
  248. package/dist/cjs/static/images/icon/word.cjs +1 -0
  249. package/dist/cjs/stores/index.cjs +1 -0
  250. package/dist/cjs/stores/ui.cjs +1 -1
  251. package/dist/cjs/theme/index.cjs +1 -0
  252. package/dist/cjs/theme/naiveTheme.cjs +1 -1
  253. package/dist/cjs/theme/presetTheme.cjs +1 -1
  254. package/dist/cjs/theme/{uno.css.cjs → uno.cjs} +6 -3
  255. package/dist/esm/app.js +13 -19
  256. package/dist/esm/component.js +66 -89
  257. package/dist/esm/components/card/card.js +117 -114
  258. package/dist/esm/components/card/index.js +2 -0
  259. package/dist/esm/components/card/store.js +39 -57
  260. package/dist/esm/components/carousel/carousel.js +25 -33
  261. package/dist/esm/components/carousel/index.js +1 -0
  262. package/dist/esm/components/cascaderPanel/cascaderPanel.js +321 -376
  263. package/dist/esm/components/cascaderPanel/index.js +1 -0
  264. package/dist/esm/components/chart/echart.js +38 -109
  265. package/dist/esm/components/chart/index.js +1 -0
  266. package/dist/esm/components/code/code.js +36 -42
  267. package/dist/esm/components/code/index.js +1 -0
  268. package/dist/esm/components/crop/imageCrop.js +65 -138
  269. package/dist/esm/components/crop/imageCropModal.js +82 -115
  270. package/dist/esm/components/crop/index.js +2 -0
  271. package/dist/esm/components/dashboard/hello.js +24 -36
  272. package/dist/esm/components/dashboard/helloBig.js +395 -342
  273. package/dist/esm/components/dashboard/index.js +3 -0
  274. package/dist/esm/components/dashboard/quick.js +50 -55
  275. package/dist/esm/components/data/dynamicData.js +152 -177
  276. package/dist/esm/components/data/dynamicSelect.js +69 -140
  277. package/dist/esm/components/data/index.js +3 -0
  278. package/dist/esm/components/data/selectModal.js +78 -163
  279. package/dist/esm/components/designEditor/components/grid.js +109 -191
  280. package/dist/esm/components/designEditor/components/index.js +1 -0
  281. package/dist/esm/components/designEditor/editor/hook.js +74 -86
  282. package/dist/esm/components/designEditor/editor/index.js +3 -0
  283. package/dist/esm/components/designEditor/editor/preview.js +46 -64
  284. package/dist/esm/components/designEditor/editor/setting.js +52 -153
  285. package/dist/esm/components/designEditor/editor.js +125 -155
  286. package/dist/esm/components/designEditor/index.js +7 -0
  287. package/dist/esm/components/dialog/dialog.js +70 -121
  288. package/dist/esm/components/dialog/index.js +1 -0
  289. package/dist/esm/components/draw/drawApps.js +182 -144
  290. package/dist/esm/components/draw/drawAuth.js +54 -49
  291. package/dist/esm/components/draw/drawEmpty.js +100 -91
  292. package/dist/esm/components/draw/drawEmptyForm.js +131 -127
  293. package/dist/esm/components/draw/drawError.js +275 -241
  294. package/dist/esm/components/draw/index.js +5 -0
  295. package/dist/esm/components/drawer/drawer.js +52 -69
  296. package/dist/esm/components/drawer/drawerPage.js +36 -54
  297. package/dist/esm/components/drawer/index.js +2 -0
  298. package/dist/esm/components/editor/aiEditor.js +246 -289
  299. package/dist/esm/components/editor/index.js +1 -0
  300. package/dist/esm/components/flowEditor/components/fieldConfig.js +235 -243
  301. package/dist/esm/components/flowEditor/components/index.js +6 -0
  302. package/dist/esm/components/flowEditor/components/jsonEditor.js +39 -52
  303. package/dist/esm/components/flowEditor/components/kvInput.js +56 -66
  304. package/dist/esm/components/flowEditor/components/nodeCard.js +167 -201
  305. package/dist/esm/components/flowEditor/components/note.js +31 -36
  306. package/dist/esm/components/flowEditor/components/setting.js +181 -318
  307. package/dist/esm/components/flowEditor/components/toolbar.js +100 -119
  308. package/dist/esm/components/flowEditor/flowEditor.js +234 -325
  309. package/dist/esm/components/flowEditor/index.js +14 -0
  310. package/dist/esm/components/flowEditor/nodes/dynamicNodeFactory.js +287 -428
  311. package/dist/esm/components/flowEditor/nodes/endNode.js +56 -143
  312. package/dist/esm/components/flowEditor/nodes/index.js +6 -68
  313. package/dist/esm/components/flowEditor/nodes/processNode.js +55 -142
  314. package/dist/esm/components/flowEditor/nodes/startNode.js +55 -142
  315. package/dist/esm/components/flowEditor/utils/nodeDataUtils.js +120 -91
  316. package/dist/esm/components/form/drawerForm.js +62 -177
  317. package/dist/esm/components/form/formItem.js +69 -95
  318. package/dist/esm/components/form/formLayout.js +36 -39
  319. package/dist/esm/components/form/index.js +7 -0
  320. package/dist/esm/components/form/modalForm.js +58 -170
  321. package/dist/esm/components/form/pageForm.js +75 -177
  322. package/dist/esm/components/form/pageTabForm.js +69 -171
  323. package/dist/esm/components/form/settingForm.js +61 -156
  324. package/dist/esm/components/formEditor/base/base.js +48 -135
  325. package/dist/esm/components/formEditor/base/index.js +4 -0
  326. package/dist/esm/components/formEditor/base/json.js +28 -38
  327. package/dist/esm/components/formEditor/base/options.js +35 -47
  328. package/dist/esm/components/formEditor/base/setting.js +35 -125
  329. package/dist/esm/components/formEditor/components/cascader.js +136 -232
  330. package/dist/esm/components/formEditor/components/cascaderAsync.js +130 -228
  331. package/dist/esm/components/formEditor/components/checkbox.js +129 -226
  332. package/dist/esm/components/formEditor/components/color.js +85 -171
  333. package/dist/esm/components/formEditor/components/date.js +153 -240
  334. package/dist/esm/components/formEditor/components/dynamicInput.js +146 -241
  335. package/dist/esm/components/formEditor/components/dynamicTags.js +78 -164
  336. package/dist/esm/components/formEditor/components/editor.js +79 -154
  337. package/dist/esm/components/formEditor/components/fileUpload.js +104 -190
  338. package/dist/esm/components/formEditor/components/imageUpload.js +99 -183
  339. package/dist/esm/components/formEditor/components/index.js +23 -0
  340. package/dist/esm/components/formEditor/components/input.js +132 -226
  341. package/dist/esm/components/formEditor/components/inputNumber.js +113 -203
  342. package/dist/esm/components/formEditor/components/mentionAsync.js +102 -195
  343. package/dist/esm/components/formEditor/components/radio.js +127 -225
  344. package/dist/esm/components/formEditor/components/region.js +94 -181
  345. package/dist/esm/components/formEditor/components/select.js +126 -216
  346. package/dist/esm/components/formEditor/components/selectAsync.js +127 -229
  347. package/dist/esm/components/formEditor/components/sider.js +93 -183
  348. package/dist/esm/components/formEditor/components/switch.js +83 -168
  349. package/dist/esm/components/formEditor/components/time.js +97 -185
  350. package/dist/esm/components/formEditor/components/transferAsync.js +109 -208
  351. package/dist/esm/components/formEditor/components/treeSelect.js +126 -220
  352. package/dist/esm/components/formEditor/components/treeSelectAsync.js +101 -194
  353. package/dist/esm/components/formEditor/editor.js +165 -213
  354. package/dist/esm/components/formEditor/index.js +2 -0
  355. package/dist/esm/components/formEditor/json.js +17 -23
  356. package/dist/esm/components/formEditor/preview.js +27 -37
  357. package/dist/esm/components/formEditor/renderer.js +121 -171
  358. package/dist/esm/components/icon/icon.js +38 -109
  359. package/dist/esm/components/icon/iconPicker.js +59 -78
  360. package/dist/esm/components/icon/index.js +2 -0
  361. package/dist/esm/components/index.js +130 -0
  362. package/dist/esm/components/layout/filter.js +15 -27
  363. package/dist/esm/components/layout/filterLayout.js +24 -30
  364. package/dist/esm/components/layout/grid.js +17 -23
  365. package/dist/esm/components/layout/index.js +6 -0
  366. package/dist/esm/components/layout/list.js +402 -621
  367. package/dist/esm/components/layout/table.js +410 -632
  368. package/dist/esm/components/layout/tools.js +56 -153
  369. package/dist/esm/components/level/index.js +1 -0
  370. package/dist/esm/components/level/level.js +62 -136
  371. package/dist/esm/components/list/card.js +73 -94
  372. package/dist/esm/components/list/index.js +2 -0
  373. package/dist/esm/components/list/list.js +39 -54
  374. package/dist/esm/components/mapCoord/index.js +1 -0
  375. package/dist/esm/components/mapCoord/mapCoord.js +173 -214
  376. package/dist/esm/components/media/index.js +1 -0
  377. package/dist/esm/components/media/media.js +92 -101
  378. package/dist/esm/components/modal/index.js +3 -0
  379. package/dist/esm/components/modal/modal.js +51 -81
  380. package/dist/esm/components/modal/modalPage.js +41 -56
  381. package/dist/esm/components/modal/modalTab.js +50 -69
  382. package/dist/esm/components/panel/alert.js +30 -53
  383. package/dist/esm/components/panel/collapse.js +25 -45
  384. package/dist/esm/components/panel/index.js +3 -0
  385. package/dist/esm/components/panel/setting.js +28 -50
  386. package/dist/esm/components/posterEditor/components/CanvasRuler.js +101 -112
  387. package/dist/esm/components/posterEditor/elements/circle.js +133 -126
  388. package/dist/esm/components/posterEditor/elements/image.js +138 -130
  389. package/dist/esm/components/posterEditor/elements/index.js +32 -44
  390. package/dist/esm/components/posterEditor/elements/rect.js +174 -170
  391. package/dist/esm/components/posterEditor/elements/text.js +216 -205
  392. package/dist/esm/components/posterEditor/hooks/index.js +1 -0
  393. package/dist/esm/components/posterEditor/hooks/usePosterEditor.js +420 -433
  394. package/dist/esm/components/posterEditor/index.js +4 -0
  395. package/dist/esm/components/posterEditor/pages/LeftToolbar.js +31 -39
  396. package/dist/esm/components/posterEditor/pages/Panel.js +16 -30
  397. package/dist/esm/components/posterEditor/pages/PanelItem.js +11 -21
  398. package/dist/esm/components/posterEditor/pages/RightPanel.js +301 -439
  399. package/dist/esm/components/posterEditor/pages/index.js +2 -0
  400. package/dist/esm/components/posterEditor/posterEditor.js +149 -246
  401. package/dist/esm/components/schemaEditor/index.js +1 -0
  402. package/dist/esm/components/schemaEditor/schemaEditor.js +417 -555
  403. package/dist/esm/components/select/checkboxTag.js +48 -52
  404. package/dist/esm/components/select/dateTag.js +114 -127
  405. package/dist/esm/components/select/index.js +4 -0
  406. package/dist/esm/components/select/radioTag.js +48 -52
  407. package/dist/esm/components/select/selectCard.js +96 -101
  408. package/dist/esm/components/spec/index.js +2 -0
  409. package/dist/esm/components/spec/spec.js +195 -293
  410. package/dist/esm/components/spec/specEditor.js +220 -350
  411. package/dist/esm/components/stats/index.js +2 -0
  412. package/dist/esm/components/stats/number.js +34 -48
  413. package/dist/esm/components/stats/realTime.js +74 -98
  414. package/dist/esm/components/status/blockEmpty.js +153 -156
  415. package/dist/esm/components/status/index.js +2 -0
  416. package/dist/esm/components/status/listEmpty.js +20 -27
  417. package/dist/esm/components/table/index.js +2 -0
  418. package/dist/esm/components/table/table.js +46 -136
  419. package/dist/esm/components/table/tablePage.js +36 -57
  420. package/dist/esm/components/textImageEditor/index.js +1 -0
  421. package/dist/esm/components/textImageEditor/textImageEditor.js +270 -401
  422. package/dist/esm/components/textImageEditor/textModal.js +69 -76
  423. package/dist/esm/components/tree/index.js +1 -0
  424. package/dist/esm/components/tree/treeFilter.js +161 -224
  425. package/dist/esm/components/upload/config.js +18 -20
  426. package/dist/esm/components/upload/file.js +232 -316
  427. package/dist/esm/components/upload/image.js +169 -244
  428. package/dist/esm/components/upload/index.js +5 -0
  429. package/dist/esm/components/upload/manage/item.js +130 -209
  430. package/dist/esm/components/upload/manager.js +337 -453
  431. package/dist/esm/components/upload/selectFile.js +57 -71
  432. package/dist/esm/components/upload/video.js +224 -339
  433. package/dist/esm/components/widget/avatar.js +58 -58
  434. package/dist/esm/components/widget/connect.js +126 -118
  435. package/dist/esm/components/widget/image.js +17 -23
  436. package/dist/esm/components/widget/index.js +4 -0
  437. package/dist/esm/components/widget/placeholder.js +67 -66
  438. package/dist/esm/config/echart.js +323 -454
  439. package/dist/esm/config/index.js +3 -0
  440. package/dist/esm/config/uno.js +17 -34
  441. package/dist/esm/config/validate.js +9 -13
  442. package/dist/esm/dvha-pro.css +2 -1
  443. package/dist/esm/hooks/action.js +173 -200
  444. package/dist/esm/hooks/dialog.js +28 -92
  445. package/dist/esm/hooks/download.js +138 -146
  446. package/dist/esm/hooks/drawer.js +6 -72
  447. package/dist/esm/hooks/echart.js +484 -479
  448. package/dist/esm/hooks/image.js +20 -21
  449. package/dist/esm/hooks/index.js +18 -0
  450. package/dist/esm/hooks/level.js +59 -74
  451. package/dist/esm/hooks/modal.js +6 -72
  452. package/dist/esm/hooks/table/color.js +8 -18
  453. package/dist/esm/hooks/table/column.js +30 -32
  454. package/dist/esm/hooks/table/copy.js +17 -29
  455. package/dist/esm/hooks/table/hidden.js +33 -45
  456. package/dist/esm/hooks/table/image.js +27 -95
  457. package/dist/esm/hooks/table/index.js +7 -0
  458. package/dist/esm/hooks/table/input.js +85 -115
  459. package/dist/esm/hooks/table/map.js +5 -20
  460. package/dist/esm/hooks/table/media.js +17 -82
  461. package/dist/esm/hooks/table/status.js +21 -30
  462. package/dist/esm/hooks/table/switch.js +54 -64
  463. package/dist/esm/hooks/table.js +67 -91
  464. package/dist/esm/hooks/ui.js +12 -14
  465. package/dist/esm/index.js +149 -319
  466. package/dist/esm/langs/en-US.js +89 -0
  467. package/dist/esm/langs/zh-CN.js +89 -0
  468. package/dist/esm/main.js +14 -18
  469. package/dist/esm/pages/authLayout.js +30 -66
  470. package/dist/esm/pages/index.js +20 -0
  471. package/dist/esm/pages/layout/global.js +48 -80
  472. package/dist/esm/pages/layout/page.js +29 -113
  473. package/dist/esm/pages/layout/tab.js +84 -97
  474. package/dist/esm/pages/layout.js +9 -13
  475. package/dist/esm/pages/loading.js +7 -13
  476. package/dist/esm/pages/login.js +88 -185
  477. package/dist/esm/pages/menu/avatar.js +155 -266
  478. package/dist/esm/pages/menu/button.js +33 -103
  479. package/dist/esm/pages/menu/cmd.js +97 -198
  480. package/dist/esm/pages/menu/dark.js +40 -53
  481. package/dist/esm/pages/menu/index.js +7 -0
  482. package/dist/esm/pages/menu/menuApp.js +105 -226
  483. package/dist/esm/pages/menu/menuMain.js +68 -159
  484. package/dist/esm/pages/menu/mobile.js +20 -88
  485. package/dist/esm/pages/menu/notice.js +99 -211
  486. package/dist/esm/pages/page.js +41 -49
  487. package/dist/esm/pages/page403.js +37 -44
  488. package/dist/esm/pages/page404.js +38 -104
  489. package/dist/esm/pages/page500.js +35 -43
  490. package/dist/esm/pages/pageEmpty.js +19 -24
  491. package/dist/esm/pages/pageException.js +35 -43
  492. package/dist/esm/pages/pageLoading.js +16 -21
  493. package/dist/esm/pages/pageStatus.js +24 -100
  494. package/dist/esm/static/images/icon/audio.js +2 -0
  495. package/dist/esm/static/images/icon/excel.js +2 -0
  496. package/dist/esm/static/images/icon/file.js +2 -0
  497. package/dist/esm/static/images/icon/folder.js +2 -0
  498. package/dist/esm/static/images/icon/pdf.js +2 -0
  499. package/dist/esm/static/images/icon/ppt.js +2 -0
  500. package/dist/esm/static/images/icon/video.js +2 -0
  501. package/dist/esm/static/images/icon/word.js +2 -0
  502. package/dist/esm/stores/index.js +1 -0
  503. package/dist/esm/stores/ui.js +35 -32
  504. package/dist/esm/theme/index.js +2 -0
  505. package/dist/esm/theme/naiveTheme.js +74 -82
  506. package/dist/esm/theme/presetTheme.js +9 -11
  507. package/dist/esm/theme/uno.js +2 -0
  508. package/package.json +3 -3
  509. package/dist/cjs/langs/en-US.json.cjs +0 -1
  510. package/dist/cjs/langs/zh-CN.json.cjs +0 -1
  511. package/dist/cjs/static/images/icon/audio.svg.cjs +0 -1
  512. package/dist/cjs/static/images/icon/excel.svg.cjs +0 -1
  513. package/dist/cjs/static/images/icon/file.svg.cjs +0 -1
  514. package/dist/cjs/static/images/icon/folder.svg.cjs +0 -1
  515. package/dist/cjs/static/images/icon/pdf.svg.cjs +0 -1
  516. package/dist/cjs/static/images/icon/ppt.svg.cjs +0 -1
  517. package/dist/cjs/static/images/icon/video.svg.cjs +0 -1
  518. package/dist/cjs/static/images/icon/word.svg.cjs +0 -1
  519. package/dist/esm/langs/en-US.json.js +0 -15
  520. package/dist/esm/langs/zh-CN.json.js +0 -15
  521. package/dist/esm/static/images/icon/audio.svg.js +0 -4
  522. package/dist/esm/static/images/icon/excel.svg.js +0 -4
  523. package/dist/esm/static/images/icon/file.svg.js +0 -4
  524. package/dist/esm/static/images/icon/folder.svg.js +0 -4
  525. package/dist/esm/static/images/icon/pdf.svg.js +0 -4
  526. package/dist/esm/static/images/icon/ppt.svg.js +0 -4
  527. package/dist/esm/static/images/icon/video.svg.js +0 -4
  528. package/dist/esm/static/images/icon/word.svg.js +0 -4
  529. package/dist/esm/theme/uno.css.js +0 -1667
@@ -1,434 +1,421 @@
1
- import { useThrottleFn as fe } from "@vueuse/core";
2
- import { Canvas as be, FabricImage as pe } from "fabric";
3
- import { ref as f, computed as m, watch as Ie, nextTick as Y, markRaw as ke } from "vue";
4
- import { getElementConfig as I } from "../elements/index.js";
5
- function Me(k = {}) {
6
- const n = f(null), P = f(null), l = f({
7
- width: k.width || 750,
8
- height: k.height || 1e3,
9
- backgroundColor: k.backgroundColor || "#ffffff",
10
- backgroundImage: k.backgroundImage || "",
11
- elements: []
12
- }), h = f([]), O = f(!1), B = f(1), y = f(0), A = f(0);
13
- let M = null, D = () => {
14
- }, F = 0;
15
- const T = () => `element_${++F}`, b = () => {
16
- O.value || (O.value = !0, Y(() => {
17
- D(JSON.stringify(l.value)), O.value = !1;
18
- }));
19
- }, C = () => {
20
- if (!n.value)
21
- return;
22
- const t = n.value.getObjects(), e = [];
23
- t.forEach((o) => {
24
- const a = o.elementId;
25
- if (!a)
26
- return;
27
- const s = l.value.elements.find((i) => i.id === a);
28
- if (!s)
29
- return;
30
- const u = I(s.type);
31
- if (!u)
32
- return;
33
- const r = u.getPropsFromFabricObject(o);
34
- e.push({
35
- ...s,
36
- ...r,
37
- id: s.id,
38
- type: s.type
39
- });
40
- }), l.value.elements = e;
41
- }, g = fe(() => {
42
- C(), b();
43
- }, 100), w = () => {
44
- if (!n.value)
45
- return;
46
- const t = n.value.getActiveObjects(), e = n.value.getActiveObject();
47
- t.length > 0 ? h.value = [...t] : e ? h.value = [e] : h.value = [];
48
- }, z = () => {
49
- h.value = [];
50
- }, L = (t) => {
51
- if (!t.target)
52
- return;
53
- const e = t.target, o = e.elementId, s = l.value.elements.find((i) => i.id === o)?.type, u = e.scaleX || 1, r = e.scaleY || 1;
54
- if (u !== 1 || r !== 1) {
55
- if (s === "circle") {
56
- const i = Math.max(u, r), d = Math.round((e.radius || 50) * i);
57
- e.set({ radius: d, scaleX: 1, scaleY: 1 });
58
- } else if (s !== "image") {
59
- const i = Math.round(e.width * u), d = Math.round(e.height * r);
60
- e.set({ width: i, height: d, scaleX: 1, scaleY: 1 });
61
- }
62
- e.setCoords();
63
- }
64
- g();
65
- }, H = (t) => {
66
- const e = t.target;
67
- if (!e)
68
- return;
69
- const o = e.elementId;
70
- if (!o)
71
- return;
72
- const a = l.value.elements.find((s) => s.id === o);
73
- if (a) {
74
- if (a.type === "circle") {
75
- const s = Math.max(e.scaleX || 1, e.scaleY || 1);
76
- e.set({ scaleX: s, scaleY: s }), e.setCoords();
77
- }
78
- if (a.type === "rect") {
79
- const s = e.__corner;
80
- if (s && ["tl", "tr", "bl", "br"].includes(s)) {
81
- const r = Math.max(Math.abs(e.scaleX || 1), Math.abs(e.scaleY || 1));
82
- e.set({
83
- scaleX: e.scaleX >= 0 ? r : -r,
84
- scaleY: e.scaleY >= 0 ? r : -r
85
- }), e.setCoords();
86
- }
87
- }
88
- if (a.type === "image") {
89
- const s = e.__corner;
90
- if (s && ["tl", "tr", "bl", "br"].includes(s)) {
91
- const r = Math.max(Math.abs(e.scaleX || 1), Math.abs(e.scaleY || 1));
92
- e.set({
93
- scaleX: e.scaleX >= 0 ? r : -r,
94
- scaleY: e.scaleY >= 0 ? r : -r
95
- }), e.setCoords();
96
- }
97
- }
98
- }
99
- }, _ = () => {
100
- n.value && (n.value.on("selection:created", w), n.value.on("selection:updated", w), n.value.on("selection:cleared", z), n.value.on("mouse:down", () => setTimeout(w, 10)), n.value.on("mouse:up", () => setTimeout(w, 10)), n.value.on("object:modified", L), n.value.on("object:scaling", H), n.value.on("path:created", g), n.value.on("object:moving", g), n.value.on("object:rotating", g), n.value.on("object:skewing", g), n.value.on("object:added", g), n.value.on("object:removed", g), n.value.on("custom:text:changed", (t) => {
101
- t.target && t.newText !== void 0 && t.target.elementId && g();
102
- }));
103
- }, E = () => {
104
- if (!n.value)
105
- return;
106
- const t = B.value || 1;
107
- n.value.setZoom(t), n.value.setDimensions({
108
- width: l.value.width * t,
109
- height: l.value.height * t
110
- }), n.value.backgroundColor = l.value.backgroundColor, n.value.renderAll(), n.value.getObjects().forEach((e) => e.setCoords());
111
- }, x = () => {
112
- if (!M)
113
- return;
114
- const t = M.getBoundingClientRect();
115
- y.value = t.width - 40, A.value = t.height - 40;
116
- const e = y.value / l.value.width, o = A.value / l.value.height, a = Math.min(e, o, 1);
117
- B.value = a, n.value && (n.value.setZoom(a), n.value.setDimensions({
118
- width: l.value.width * a,
119
- height: l.value.height * a
120
- }), n.value.renderAll(), n.value.getObjects().forEach((s) => s.setCoords()));
121
- }, S = (t) => {
122
- M = t, Y(x);
123
- const e = new ResizeObserver(x);
124
- return e.observe(t), () => e.disconnect();
125
- }, J = (t, e) => {
126
- const o = l.value.width, a = l.value.height, s = t.getBoundingRect();
127
- switch (e) {
128
- case "center-horizontal":
129
- t.set("left", Math.round(t.left + (o / 2 - s.left - s.width / 2)));
130
- break;
131
- case "center-vertical":
132
- t.set("top", Math.round(t.top + (a / 2 - s.top - s.height / 2)));
133
- break;
134
- case "center-both":
135
- t.set({
136
- left: Math.round(t.left + (o / 2 - s.left - s.width / 2)),
137
- top: Math.round(t.top + (a / 2 - s.top - s.height / 2))
138
- });
139
- break;
140
- case "move-up":
141
- n.value?.bringObjectForward(t);
142
- break;
143
- case "move-down":
144
- n.value?.sendObjectBackwards(t);
145
- break;
146
- case "move-to-front":
147
- n.value?.bringObjectToFront(t);
148
- break;
149
- case "move-to-back":
150
- n.value?.sendObjectToBack(t);
151
- break;
152
- }
153
- t.setCoords(), n.value?.renderAll();
154
- }, K = (t) => {
155
- if (t.length < 3)
156
- return;
157
- const e = [...t].sort((d, c) => d.getBoundingRect().left - c.getBoundingRect().left), o = e[0].getBoundingRect(), a = e[e.length - 1].getBoundingRect(), s = a.left + a.width - o.left, u = e.reduce((d, c) => d + c.getBoundingRect().width, 0), r = (s - u) / (e.length - 1);
158
- let i = o.left + o.width + r;
159
- for (let d = 1; d < e.length - 1; d++) {
160
- const c = e[d], v = c.getBoundingRect();
161
- c.set("left", Math.round(c.left + (i - v.left))), i += v.width + r;
162
- }
163
- }, U = (t) => {
164
- if (t.length < 3)
165
- return;
166
- const e = [...t].sort((d, c) => d.getBoundingRect().top - c.getBoundingRect().top), o = e[0].getBoundingRect(), a = e[e.length - 1].getBoundingRect(), s = a.top + a.height - o.top, u = e.reduce((d, c) => d + c.getBoundingRect().height, 0), r = (s - u) / (e.length - 1);
167
- let i = o.top + o.height + r;
168
- for (let d = 1; d < e.length - 1; d++) {
169
- const c = e[d], v = c.getBoundingRect();
170
- c.set("top", Math.round(c.top + (i - v.top))), i += v.height + r;
171
- }
172
- }, W = (t, e) => {
173
- if (t.length < 2)
174
- return;
175
- const o = t.map((c) => c.getBoundingRect()), a = Math.min(...o.map((c) => c.left)), s = Math.max(...o.map((c) => c.left + c.width)), u = Math.min(...o.map((c) => c.top)), r = Math.max(...o.map((c) => c.top + c.height)), i = (a + s) / 2, d = (u + r) / 2;
176
- switch (e) {
177
- case "left":
178
- t.forEach((c) => {
179
- const v = c.getBoundingRect();
180
- c.set("left", Math.round(c.left + (a - v.left)));
181
- });
182
- break;
183
- case "right":
184
- t.forEach((c) => {
185
- const v = c.getBoundingRect();
186
- c.set("left", Math.round(c.left + (s - v.left - v.width)));
187
- });
188
- break;
189
- case "top":
190
- t.forEach((c) => {
191
- const v = c.getBoundingRect();
192
- c.set("top", Math.round(c.top + (u - v.top)));
193
- });
194
- break;
195
- case "bottom":
196
- t.forEach((c) => {
197
- const v = c.getBoundingRect();
198
- c.set("top", Math.round(c.top + (r - v.top - v.height)));
199
- });
200
- break;
201
- case "center-horizontal":
202
- t.forEach((c) => {
203
- const v = c.getBoundingRect(), j = v.left + v.width / 2;
204
- c.set("left", Math.round(c.left + (i - j)));
205
- });
206
- break;
207
- case "center-vertical":
208
- t.forEach((c) => {
209
- const v = c.getBoundingRect(), j = v.top + v.height / 2;
210
- c.set("top", Math.round(c.top + (d - j)));
211
- });
212
- break;
213
- case "distribute-horizontal":
214
- K(t);
215
- break;
216
- case "distribute-vertical":
217
- U(t);
218
- break;
219
- }
220
- t.forEach((c) => c.setCoords()), n.value?.renderAll();
221
- }, N = (t, e) => (P.value = t, n.value = ke(new be(t, {
222
- selection: !0,
223
- preserveObjectStacking: !0,
224
- uniformScaling: !1,
225
- uniScaleKey: "shiftKey",
226
- altActionKey: "altKey"
227
- })), _(), E(), e && S(e), n.value), Z = async (t, e = {}) => {
228
- const o = I(t);
229
- if (!o || !n.value)
230
- return;
231
- const a = T(), s = l.value.width / 2, u = l.value.height / 2, r = {
232
- ...o.defaultProps,
233
- left: Math.round(s - (o.defaultProps.width || 100) / 2),
234
- top: Math.round(u - (o.defaultProps.height || 50) / 2),
235
- ...e,
236
- id: a
237
- }, i = await o.createFabricObject(r);
238
- if (!i)
239
- return;
240
- i.elementId = a, n.value.add(i), i.setCoords(), n.value.setActiveObject(i), n.value.renderAll();
241
- const d = r;
242
- return l.value.elements.push(d), a;
243
- }, $ = () => {
244
- if (!n.value || h.value.length === 0)
245
- return;
246
- n.value.getActiveObjects().forEach((e) => {
247
- const o = e.elementId;
248
- if (o) {
249
- const a = l.value.elements.findIndex((s) => s.id === o);
250
- a !== -1 && l.value.elements.splice(a, 1);
251
- }
252
- n.value?.remove(e);
253
- }), n.value.discardActiveObject(), h.value = [], n.value.renderAll();
254
- }, V = () => {
255
- n.value?.discardActiveObject(), n.value?.renderAll();
256
- }, q = (t, e, o) => {
257
- const a = l.value.elements.findIndex((i) => i.id === t);
258
- if (a === -1)
259
- return;
260
- const s = l.value.elements[a], u = I(s.type);
261
- if (!u)
262
- return;
263
- l.value.elements[a] = {
264
- ...s,
265
- [e]: o
266
- };
267
- const r = n.value?.getObjects().find((i) => i.elementId === t);
268
- r && u.onPropsChange && (u.onPropsChange(l.value.elements[a], r), r.setCoords(), n.value?.renderAll());
269
- }, G = m(() => {
270
- if (h.value.length !== 1 || l.value.elements.length <= 1)
271
- return !1;
272
- const e = h.value[0].elementId;
273
- if (!e)
274
- return !1;
275
- const o = l.value.elements.findIndex((a) => a.id === e);
276
- return o !== -1 && o < l.value.elements.length - 1;
277
- }), Q = m(() => {
278
- if (h.value.length !== 1 || l.value.elements.length <= 1)
279
- return !1;
280
- const e = h.value[0].elementId;
281
- return e ? l.value.elements.findIndex((a) => a.id === e) > 0 : !1;
282
- }), ee = m(() => {
283
- if (h.value.length !== 1 || l.value.elements.length <= 1)
284
- return !1;
285
- const e = h.value[0].elementId;
286
- if (!e)
287
- return !1;
288
- const o = l.value.elements.findIndex((a) => a.id === e);
289
- return o !== -1 && o < l.value.elements.length - 1;
290
- }), te = m(() => {
291
- if (h.value.length !== 1 || l.value.elements.length <= 1)
292
- return !1;
293
- const e = h.value[0].elementId;
294
- return e ? l.value.elements.findIndex((a) => a.id === e) > 0 : !1;
295
- }), ne = (t) => {
296
- const e = n.value?.getActiveObjects() || [];
297
- if (e.length === 1) {
298
- if (J(e[0], t), ["move-up", "move-down", "move-to-front", "move-to-back"].includes(t)) {
299
- const o = e[0].elementId;
300
- if (o) {
301
- const a = l.value.elements.findIndex((s) => s.id === o);
302
- if (a !== -1) {
303
- const s = l.value.elements[a];
304
- switch (l.value.elements.splice(a, 1), t) {
305
- case "move-up":
306
- l.value.elements.splice(Math.min(a + 1, l.value.elements.length), 0, s);
307
- break;
308
- case "move-down":
309
- l.value.elements.splice(Math.max(a - 1, 0), 0, s);
310
- break;
311
- case "move-to-front":
312
- l.value.elements.push(s);
313
- break;
314
- case "move-to-back":
315
- l.value.elements.unshift(s);
316
- break;
317
- }
318
- }
319
- }
320
- }
321
- } else e.length > 1 && W(e, t);
322
- }, ae = () => {
323
- n.value && (n.value.clear(), l.value.elements = [], h.value = []);
324
- }, le = async (t) => {
325
- if (t)
326
- try {
327
- const e = JSON.parse(t);
328
- if (l.value = {
329
- width: e.width || 750,
330
- height: e.height || 1e3,
331
- backgroundColor: e.backgroundColor || "#ffffff",
332
- backgroundImage: e.backgroundImage || "",
333
- elements: e.elements || []
334
- }, n.value) {
335
- n.value.clear(), n.value.setDimensions({
336
- width: l.value.width,
337
- height: l.value.height
338
- }), n.value.backgroundColor = l.value.backgroundColor, l.value.backgroundImage && X(l.value.backgroundImage);
339
- const o = l.value.elements.map(async (a) => {
340
- const s = I(a.type);
341
- if (!s)
342
- return;
343
- const u = await s.createFabricObject(a);
344
- u && (u.elementId = a.id, n.value?.add(u));
345
- });
346
- Promise.all(o).then(() => {
347
- E(), n.value?.renderAll(), b();
348
- });
349
- }
350
- } catch (e) {
351
- console.error("Failed to load data:", e);
352
- }
353
- }, oe = (t) => {
354
- D = t?.onDataChange || (() => {
355
- });
356
- }, se = () => {
357
- n.value && (n.value.dispose(), n.value = null);
358
- }, R = m(() => h.value.length === 1 ? h.value[0] : null), p = m(() => {
359
- if (!R.value)
360
- return null;
361
- const t = R.value.elementId;
362
- return l.value.elements.find((e) => e.id === t) || null;
363
- }), ce = m(() => p.value ? I(p.value.type) : null), re = m(() => h.value.length > 1), ue = (t) => {
364
- if (p.value)
365
- return p.value[t];
366
- }, ie = m(() => h.value.map((t) => {
367
- const e = t.elementId;
368
- return l.value.elements.find((o) => o.id === e);
369
- }).filter((t) => !!t)), de = (t, e) => {
370
- l.value.width = t, l.value.height = e, n.value && (n.value.setDimensions({ width: t, height: e }), x(), n.value.renderAll()), b();
371
- }, ve = (t) => {
372
- l.value.backgroundColor = t, n.value && (n.value.backgroundColor = t, n.value.renderAll()), b();
373
- }, X = (t) => {
374
- !n.value || !t || pe.fromURL(t, {
375
- crossOrigin: "anonymous"
376
- }).then((e) => {
377
- n.value && (n.value.backgroundImage = e, n.value.renderAll());
378
- }).catch((e) => {
379
- console.error("Failed to load background image:", e);
380
- });
381
- }, he = (t) => {
382
- l.value.backgroundImage = t, t ? X(t) : n.value && (n.value.backgroundImage = void 0, n.value.renderAll()), b();
383
- }, ge = () => {
384
- C(), b();
385
- }, me = () => {
386
- C();
387
- const t = JSON.stringify(l.value, null, 2), e = new Blob([t], { type: "application/json" }), o = URL.createObjectURL(e), a = document.createElement("a");
388
- a.href = o, a.download = `poster-${Date.now()}.json`, document.body.appendChild(a), a.click(), document.body.removeChild(a), URL.revokeObjectURL(o);
389
- };
390
- return Ie(
391
- l,
392
- () => {
393
- g();
394
- },
395
- { deep: !0 }
396
- ), {
397
- initCanvas: N,
398
- destroy: se,
399
- setCallbacks: oe,
400
- addElement: Z,
401
- deleteSelectedElements: $,
402
- updateElementProperty: q,
403
- alignElements: ne,
404
- canMoveUp: G,
405
- canMoveDown: Q,
406
- canMoveToFront: ee,
407
- canMoveToBack: te,
408
- clearCanvas: ae,
409
- loadData: le,
410
- updateData: b,
411
- canvas: n,
412
- canvasData: l,
413
- selectedElements: h,
414
- canvasScale: B,
415
- currentElement: R,
416
- currentElementData: p,
417
- currentElementConfig: ce,
418
- hasMultipleSelection: re,
419
- clearSelection: V,
420
- updateCanvasSize: E,
421
- setupAutoResize: S,
422
- getSelectedElementProperty: ue,
423
- selectedElementsData: ie,
424
- syncAllFabricObjectsToData: C,
425
- updateCanvasSettings: de,
426
- updateCanvasBackground: ve,
427
- updateCanvasBackgroundImage: he,
428
- saveData: ge,
429
- exportJson: me
430
- };
1
+ import { getElementConfig as e } from "../elements/index.js";
2
+ import { computed as t, markRaw as n, nextTick as r, ref as i, watch as a } from "vue";
3
+ import { useThrottleFn as o } from "@vueuse/core";
4
+ import { Canvas as s, FabricImage as c } from "fabric";
5
+ function l(l = {}) {
6
+ let u = i(null), d = i(null), f = i({
7
+ width: l.width || 750,
8
+ height: l.height || 1e3,
9
+ backgroundColor: l.backgroundColor || "#ffffff",
10
+ backgroundImage: l.backgroundImage || "",
11
+ elements: []
12
+ }), p = i([]), m = i(!1), h = i(1), g = i(0), _ = i(0), v = null, y = () => {}, b = 0, x = () => `element_${++b}`, S = () => {
13
+ m.value || (m.value = !0, r(() => {
14
+ y(JSON.stringify(f.value)), m.value = !1;
15
+ }));
16
+ }, C = () => {
17
+ if (!u.value) return;
18
+ let t = u.value.getObjects(), n = [];
19
+ t.forEach((t) => {
20
+ let r = t.elementId;
21
+ if (!r) return;
22
+ let i = f.value.elements.find((e) => e.id === r);
23
+ if (!i) return;
24
+ let a = e(i.type);
25
+ if (!a) return;
26
+ let o = a.getPropsFromFabricObject(t);
27
+ n.push({
28
+ ...i,
29
+ ...o,
30
+ id: i.id,
31
+ type: i.type
32
+ });
33
+ }), f.value.elements = n;
34
+ }, w = o(() => {
35
+ C(), S();
36
+ }, 100), T = () => {
37
+ if (!u.value) return;
38
+ let e = u.value.getActiveObjects(), t = u.value.getActiveObject();
39
+ e.length > 0 ? p.value = [...e] : t ? p.value = [t] : p.value = [];
40
+ }, E = () => {
41
+ p.value = [];
42
+ }, D = (e) => {
43
+ if (!e.target) return;
44
+ let t = e.target, n = t.elementId, r = f.value.elements.find((e) => e.id === n)?.type, i = t.scaleX || 1, a = t.scaleY || 1;
45
+ if (i !== 1 || a !== 1) {
46
+ if (r === "circle") {
47
+ let e = Math.max(i, a), n = Math.round((t.radius || 50) * e);
48
+ t.set({
49
+ radius: n,
50
+ scaleX: 1,
51
+ scaleY: 1
52
+ });
53
+ } else if (r !== "image") {
54
+ let e = Math.round(t.width * i), n = Math.round(t.height * a);
55
+ t.set({
56
+ width: e,
57
+ height: n,
58
+ scaleX: 1,
59
+ scaleY: 1
60
+ });
61
+ }
62
+ t.setCoords();
63
+ }
64
+ w();
65
+ }, O = (e) => {
66
+ let t = e.target;
67
+ if (!t) return;
68
+ let n = t.elementId;
69
+ if (!n) return;
70
+ let r = f.value.elements.find((e) => e.id === n);
71
+ if (r) {
72
+ if (r.type === "circle") {
73
+ let e = Math.max(t.scaleX || 1, t.scaleY || 1);
74
+ t.set({
75
+ scaleX: e,
76
+ scaleY: e
77
+ }), t.setCoords();
78
+ }
79
+ if (r.type === "rect") {
80
+ let e = t.__corner;
81
+ if (e && [
82
+ "tl",
83
+ "tr",
84
+ "bl",
85
+ "br"
86
+ ].includes(e)) {
87
+ let e = Math.max(Math.abs(t.scaleX || 1), Math.abs(t.scaleY || 1));
88
+ t.set({
89
+ scaleX: t.scaleX >= 0 ? e : -e,
90
+ scaleY: t.scaleY >= 0 ? e : -e
91
+ }), t.setCoords();
92
+ }
93
+ }
94
+ if (r.type === "image") {
95
+ let e = t.__corner;
96
+ if (e && [
97
+ "tl",
98
+ "tr",
99
+ "bl",
100
+ "br"
101
+ ].includes(e)) {
102
+ let e = Math.max(Math.abs(t.scaleX || 1), Math.abs(t.scaleY || 1));
103
+ t.set({
104
+ scaleX: t.scaleX >= 0 ? e : -e,
105
+ scaleY: t.scaleY >= 0 ? e : -e
106
+ }), t.setCoords();
107
+ }
108
+ }
109
+ }
110
+ }, ee = () => {
111
+ u.value && (u.value.on("selection:created", T), u.value.on("selection:updated", T), u.value.on("selection:cleared", E), u.value.on("mouse:down", () => setTimeout(T, 10)), u.value.on("mouse:up", () => setTimeout(T, 10)), u.value.on("object:modified", D), u.value.on("object:scaling", O), u.value.on("path:created", w), u.value.on("object:moving", w), u.value.on("object:rotating", w), u.value.on("object:skewing", w), u.value.on("object:added", w), u.value.on("object:removed", w), u.value.on("custom:text:changed", (e) => {
112
+ e.target && e.newText !== void 0 && e.target.elementId && w();
113
+ }));
114
+ }, k = () => {
115
+ if (!u.value) return;
116
+ let e = h.value || 1;
117
+ u.value.setZoom(e), u.value.setDimensions({
118
+ width: f.value.width * e,
119
+ height: f.value.height * e
120
+ }), u.value.backgroundColor = f.value.backgroundColor, u.value.renderAll(), u.value.getObjects().forEach((e) => e.setCoords());
121
+ }, A = () => {
122
+ if (!v) return;
123
+ let e = v.getBoundingClientRect();
124
+ g.value = e.width - 40, _.value = e.height - 40;
125
+ let t = g.value / f.value.width, n = _.value / f.value.height, r = Math.min(t, n, 1);
126
+ h.value = r, u.value && (u.value.setZoom(r), u.value.setDimensions({
127
+ width: f.value.width * r,
128
+ height: f.value.height * r
129
+ }), u.value.renderAll(), u.value.getObjects().forEach((e) => e.setCoords()));
130
+ }, j = (e) => {
131
+ v = e, r(A);
132
+ let t = new ResizeObserver(A);
133
+ return t.observe(e), () => t.disconnect();
134
+ }, M = (e, t) => {
135
+ let n = f.value.width, r = f.value.height, i = e.getBoundingRect();
136
+ switch (t) {
137
+ case "center-horizontal":
138
+ e.set("left", Math.round(e.left + (n / 2 - i.left - i.width / 2)));
139
+ break;
140
+ case "center-vertical":
141
+ e.set("top", Math.round(e.top + (r / 2 - i.top - i.height / 2)));
142
+ break;
143
+ case "center-both":
144
+ e.set({
145
+ left: Math.round(e.left + (n / 2 - i.left - i.width / 2)),
146
+ top: Math.round(e.top + (r / 2 - i.top - i.height / 2))
147
+ });
148
+ break;
149
+ case "move-up":
150
+ u.value?.bringObjectForward(e);
151
+ break;
152
+ case "move-down":
153
+ u.value?.sendObjectBackwards(e);
154
+ break;
155
+ case "move-to-front":
156
+ u.value?.bringObjectToFront(e);
157
+ break;
158
+ case "move-to-back":
159
+ u.value?.sendObjectToBack(e);
160
+ break;
161
+ }
162
+ e.setCoords(), u.value?.renderAll();
163
+ }, N = (e) => {
164
+ if (e.length < 3) return;
165
+ let t = [...e].sort((e, t) => e.getBoundingRect().left - t.getBoundingRect().left), n = t[0].getBoundingRect(), r = t[t.length - 1].getBoundingRect(), i = (r.left + r.width - n.left - t.reduce((e, t) => e + t.getBoundingRect().width, 0)) / (t.length - 1), a = n.left + n.width + i;
166
+ for (let e = 1; e < t.length - 1; e++) {
167
+ let n = t[e], r = n.getBoundingRect();
168
+ n.set("left", Math.round(n.left + (a - r.left))), a += r.width + i;
169
+ }
170
+ }, P = (e) => {
171
+ if (e.length < 3) return;
172
+ let t = [...e].sort((e, t) => e.getBoundingRect().top - t.getBoundingRect().top), n = t[0].getBoundingRect(), r = t[t.length - 1].getBoundingRect(), i = (r.top + r.height - n.top - t.reduce((e, t) => e + t.getBoundingRect().height, 0)) / (t.length - 1), a = n.top + n.height + i;
173
+ for (let e = 1; e < t.length - 1; e++) {
174
+ let n = t[e], r = n.getBoundingRect();
175
+ n.set("top", Math.round(n.top + (a - r.top))), a += r.height + i;
176
+ }
177
+ }, F = (e, t) => {
178
+ if (e.length < 2) return;
179
+ let n = e.map((e) => e.getBoundingRect()), r = Math.min(...n.map((e) => e.left)), i = Math.max(...n.map((e) => e.left + e.width)), a = Math.min(...n.map((e) => e.top)), o = Math.max(...n.map((e) => e.top + e.height)), s = (r + i) / 2, c = (a + o) / 2;
180
+ switch (t) {
181
+ case "left":
182
+ e.forEach((e) => {
183
+ let t = e.getBoundingRect();
184
+ e.set("left", Math.round(e.left + (r - t.left)));
185
+ });
186
+ break;
187
+ case "right":
188
+ e.forEach((e) => {
189
+ let t = e.getBoundingRect();
190
+ e.set("left", Math.round(e.left + (i - t.left - t.width)));
191
+ });
192
+ break;
193
+ case "top":
194
+ e.forEach((e) => {
195
+ let t = e.getBoundingRect();
196
+ e.set("top", Math.round(e.top + (a - t.top)));
197
+ });
198
+ break;
199
+ case "bottom":
200
+ e.forEach((e) => {
201
+ let t = e.getBoundingRect();
202
+ e.set("top", Math.round(e.top + (o - t.top - t.height)));
203
+ });
204
+ break;
205
+ case "center-horizontal":
206
+ e.forEach((e) => {
207
+ let t = e.getBoundingRect(), n = t.left + t.width / 2;
208
+ e.set("left", Math.round(e.left + (s - n)));
209
+ });
210
+ break;
211
+ case "center-vertical":
212
+ e.forEach((e) => {
213
+ let t = e.getBoundingRect(), n = t.top + t.height / 2;
214
+ e.set("top", Math.round(e.top + (c - n)));
215
+ });
216
+ break;
217
+ case "distribute-horizontal":
218
+ N(e);
219
+ break;
220
+ case "distribute-vertical":
221
+ P(e);
222
+ break;
223
+ }
224
+ e.forEach((e) => e.setCoords()), u.value?.renderAll();
225
+ }, I = (e, t) => (d.value = e, u.value = n(new s(e, {
226
+ selection: !0,
227
+ preserveObjectStacking: !0,
228
+ uniformScaling: !1,
229
+ uniScaleKey: "shiftKey",
230
+ altActionKey: "altKey"
231
+ })), ee(), k(), t && j(t), u.value), L = async (t, n = {}) => {
232
+ let r = e(t);
233
+ if (!r || !u.value) return;
234
+ let i = x(), a = f.value.width / 2, o = f.value.height / 2, s = {
235
+ ...r.defaultProps,
236
+ left: Math.round(a - (r.defaultProps.width || 100) / 2),
237
+ top: Math.round(o - (r.defaultProps.height || 50) / 2),
238
+ ...n,
239
+ id: i
240
+ }, c = await r.createFabricObject(s);
241
+ if (!c) return;
242
+ c.elementId = i, u.value.add(c), c.setCoords(), u.value.setActiveObject(c), u.value.renderAll();
243
+ let l = s;
244
+ return f.value.elements.push(l), i;
245
+ }, R = () => {
246
+ !u.value || p.value.length === 0 || (u.value.getActiveObjects().forEach((e) => {
247
+ let t = e.elementId;
248
+ if (t) {
249
+ let e = f.value.elements.findIndex((e) => e.id === t);
250
+ e !== -1 && f.value.elements.splice(e, 1);
251
+ }
252
+ u.value?.remove(e);
253
+ }), u.value.discardActiveObject(), p.value = [], u.value.renderAll());
254
+ }, z = () => {
255
+ u.value?.discardActiveObject(), u.value?.renderAll();
256
+ }, B = (t, n, r) => {
257
+ let i = f.value.elements.findIndex((e) => e.id === t);
258
+ if (i === -1) return;
259
+ let a = f.value.elements[i], o = e(a.type);
260
+ if (!o) return;
261
+ f.value.elements[i] = {
262
+ ...a,
263
+ [n]: r
264
+ };
265
+ let s = u.value?.getObjects().find((e) => e.elementId === t);
266
+ s && o.onPropsChange && (o.onPropsChange(f.value.elements[i], s), s.setCoords(), u.value?.renderAll());
267
+ }, V = t(() => {
268
+ if (p.value.length !== 1 || f.value.elements.length <= 1) return !1;
269
+ let e = p.value[0].elementId;
270
+ if (!e) return !1;
271
+ let t = f.value.elements.findIndex((t) => t.id === e);
272
+ return t !== -1 && t < f.value.elements.length - 1;
273
+ }), H = t(() => {
274
+ if (p.value.length !== 1 || f.value.elements.length <= 1) return !1;
275
+ let e = p.value[0].elementId;
276
+ return e ? f.value.elements.findIndex((t) => t.id === e) > 0 : !1;
277
+ }), U = t(() => {
278
+ if (p.value.length !== 1 || f.value.elements.length <= 1) return !1;
279
+ let e = p.value[0].elementId;
280
+ if (!e) return !1;
281
+ let t = f.value.elements.findIndex((t) => t.id === e);
282
+ return t !== -1 && t < f.value.elements.length - 1;
283
+ }), W = t(() => {
284
+ if (p.value.length !== 1 || f.value.elements.length <= 1) return !1;
285
+ let e = p.value[0].elementId;
286
+ return e ? f.value.elements.findIndex((t) => t.id === e) > 0 : !1;
287
+ }), G = (e) => {
288
+ let t = u.value?.getActiveObjects() || [];
289
+ if (t.length === 1) {
290
+ if (M(t[0], e), [
291
+ "move-up",
292
+ "move-down",
293
+ "move-to-front",
294
+ "move-to-back"
295
+ ].includes(e)) {
296
+ let n = t[0].elementId;
297
+ if (n) {
298
+ let t = f.value.elements.findIndex((e) => e.id === n);
299
+ if (t !== -1) {
300
+ let n = f.value.elements[t];
301
+ switch (f.value.elements.splice(t, 1), e) {
302
+ case "move-up":
303
+ f.value.elements.splice(Math.min(t + 1, f.value.elements.length), 0, n);
304
+ break;
305
+ case "move-down":
306
+ f.value.elements.splice(Math.max(t - 1, 0), 0, n);
307
+ break;
308
+ case "move-to-front":
309
+ f.value.elements.push(n);
310
+ break;
311
+ case "move-to-back":
312
+ f.value.elements.unshift(n);
313
+ break;
314
+ }
315
+ }
316
+ }
317
+ }
318
+ } else t.length > 1 && F(t, e);
319
+ }, K = () => {
320
+ u.value && (u.value.clear(), f.value.elements = [], p.value = []);
321
+ }, q = async (t) => {
322
+ if (t) try {
323
+ let n = JSON.parse(t);
324
+ if (f.value = {
325
+ width: n.width || 750,
326
+ height: n.height || 1e3,
327
+ backgroundColor: n.backgroundColor || "#ffffff",
328
+ backgroundImage: n.backgroundImage || "",
329
+ elements: n.elements || []
330
+ }, u.value) {
331
+ u.value.clear(), u.value.setDimensions({
332
+ width: f.value.width,
333
+ height: f.value.height
334
+ }), u.value.backgroundColor = f.value.backgroundColor, f.value.backgroundImage && $(f.value.backgroundImage);
335
+ let t = f.value.elements.map(async (t) => {
336
+ let n = e(t.type);
337
+ if (!n) return;
338
+ let r = await n.createFabricObject(t);
339
+ r && (r.elementId = t.id, u.value?.add(r));
340
+ });
341
+ Promise.all(t).then(() => {
342
+ k(), u.value?.renderAll(), S();
343
+ });
344
+ }
345
+ } catch (e) {
346
+ console.error("Failed to load data:", e);
347
+ }
348
+ }, J = (e) => {
349
+ y = e?.onDataChange || (() => {});
350
+ }, Y = () => {
351
+ u.value &&= (u.value.dispose(), null);
352
+ }, X = t(() => p.value.length === 1 ? p.value[0] : null), Z = t(() => {
353
+ if (!X.value) return null;
354
+ let e = X.value.elementId;
355
+ return f.value.elements.find((t) => t.id === e) || null;
356
+ }), Q = t(() => Z.value ? e(Z.value.type) : null), te = t(() => p.value.length > 1), ne = (e) => {
357
+ if (Z.value) return Z.value[e];
358
+ }, re = t(() => p.value.map((e) => {
359
+ let t = e.elementId;
360
+ return f.value.elements.find((e) => e.id === t);
361
+ }).filter((e) => !!e)), ie = (e, t) => {
362
+ f.value.width = e, f.value.height = t, u.value && (u.value.setDimensions({
363
+ width: e,
364
+ height: t
365
+ }), A(), u.value.renderAll()), S();
366
+ }, ae = (e) => {
367
+ f.value.backgroundColor = e, u.value && (u.value.backgroundColor = e, u.value.renderAll()), S();
368
+ }, $ = (e) => {
369
+ !u.value || !e || c.fromURL(e, { crossOrigin: "anonymous" }).then((e) => {
370
+ u.value && (u.value.backgroundImage = e, u.value.renderAll());
371
+ }).catch((e) => {
372
+ console.error("Failed to load background image:", e);
373
+ });
374
+ };
375
+ return a(f, () => {
376
+ w();
377
+ }, { deep: !0 }), {
378
+ initCanvas: I,
379
+ destroy: Y,
380
+ setCallbacks: J,
381
+ addElement: L,
382
+ deleteSelectedElements: R,
383
+ updateElementProperty: B,
384
+ alignElements: G,
385
+ canMoveUp: V,
386
+ canMoveDown: H,
387
+ canMoveToFront: U,
388
+ canMoveToBack: W,
389
+ clearCanvas: K,
390
+ loadData: q,
391
+ updateData: S,
392
+ canvas: u,
393
+ canvasData: f,
394
+ selectedElements: p,
395
+ canvasScale: h,
396
+ currentElement: X,
397
+ currentElementData: Z,
398
+ currentElementConfig: Q,
399
+ hasMultipleSelection: te,
400
+ clearSelection: z,
401
+ updateCanvasSize: k,
402
+ setupAutoResize: j,
403
+ getSelectedElementProperty: ne,
404
+ selectedElementsData: re,
405
+ syncAllFabricObjectsToData: C,
406
+ updateCanvasSettings: ie,
407
+ updateCanvasBackground: ae,
408
+ updateCanvasBackgroundImage: (e) => {
409
+ f.value.backgroundImage = e, e ? $(e) : u.value && (u.value.backgroundImage = void 0, u.value.renderAll()), S();
410
+ },
411
+ saveData: () => {
412
+ C(), S();
413
+ },
414
+ exportJson: () => {
415
+ C();
416
+ let e = JSON.stringify(f.value, null, 2), t = new Blob([e], { type: "application/json" }), n = URL.createObjectURL(t), r = document.createElement("a");
417
+ r.href = n, r.download = `poster-${Date.now()}.json`, document.body.appendChild(r), r.click(), document.body.removeChild(r), URL.revokeObjectURL(n);
418
+ }
419
+ };
431
420
  }
432
- export {
433
- Me as usePosterEditor
434
- };
421
+ export { l as usePosterEditor };