diygw-designer 1.1.9 → 1.2.0

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 (133) hide show
  1. package/dist/core/src/components/builder/hooks/useBuilder.d.ts +2 -0
  2. package/dist/core/src/components/builder/src/builder.vue.d.ts +6 -0
  3. package/dist/core/src/components/designer/hooks/useDesigner.d.ts +10 -0
  4. package/dist/core/src/components/designer/src/designer.vue.d.ts +21 -1
  5. package/dist/core/src/components/designer/src/modules/editContainer/nodeItem.vue.cjs +1 -1
  6. package/dist/core/src/components/designer/src/modules/editContainer/nodeItem.vue.js +35 -30
  7. package/dist/core/src/components/designer/src/modules/editContainer/nodes.vue.cjs +1 -1
  8. package/dist/core/src/components/designer/src/modules/editContainer/nodes.vue.d.ts +1 -0
  9. package/dist/core/src/components/designer/src/modules/editContainer/nodes.vue.js +46 -44
  10. package/dist/core/src/components/designer/src/modules/editContainer/previewWidgets.vue.cjs +1 -1
  11. package/dist/core/src/components/designer/src/modules/editContainer/previewWidgets.vue.js +53 -50
  12. package/dist/core/src/components/designer/src/modules/preview/index.vue.d.ts +10 -0
  13. package/dist/core/src/components/designer/src/modules/rightSidebar/index.vue2.cjs +1 -1
  14. package/dist/core/src/components/designer/src/modules/rightSidebar/index.vue2.js +54 -34
  15. package/dist/diygw-designer/element-plus.d.ts +4 -0
  16. package/dist/diygw-designer.css +1 -1
  17. package/dist/element-plus.cjs +1 -0
  18. package/dist/element-plus.js +11 -0
  19. package/dist/hooks/src/common/clipboard.d.ts +4 -0
  20. package/dist/hooks/src/designer/usePageManager.d.ts +2 -0
  21. package/dist/hooks/src/plugin/useComponentManager.cjs +1 -1
  22. package/dist/hooks/src/plugin/useComponentManager.d.ts +8 -0
  23. package/dist/hooks/src/plugin/useComponentManager.js +139 -113
  24. package/dist/hooks/src/plugin/usePageSchema.d.ts +2 -0
  25. package/dist/manager/src/pageManager.d.ts +2 -0
  26. package/dist/style.css +1 -1
  27. package/dist/types/src/diygw-designer.d.ts +2 -0
  28. package/dist/ui/elementPlus/src/button/button.cjs +1 -0
  29. package/dist/ui/elementPlus/src/button/button.js +29 -0
  30. package/dist/ui/elementPlus/src/button/index.cjs +1 -0
  31. package/dist/ui/elementPlus/src/button/index.js +131 -0
  32. package/dist/ui/elementPlus/src/card/card.cjs +1 -0
  33. package/dist/ui/elementPlus/src/card/card.js +31 -0
  34. package/dist/ui/elementPlus/src/card/index.cjs +1 -0
  35. package/dist/ui/elementPlus/src/card/index.js +52 -0
  36. package/dist/ui/elementPlus/src/cascader/index.cjs +1 -0
  37. package/dist/ui/elementPlus/src/cascader/index.js +213 -0
  38. package/dist/ui/elementPlus/src/checkbox/checkbox.cjs +1 -0
  39. package/dist/ui/elementPlus/src/checkbox/checkbox.js +35 -0
  40. package/dist/ui/elementPlus/src/checkbox/index.cjs +1 -0
  41. package/dist/ui/elementPlus/src/checkbox/index.js +138 -0
  42. package/dist/ui/elementPlus/src/col/col.cjs +1 -0
  43. package/dist/ui/elementPlus/src/col/col.js +33 -0
  44. package/dist/ui/elementPlus/src/col/index.cjs +1 -0
  45. package/dist/ui/elementPlus/src/col/index.js +26 -0
  46. package/dist/ui/elementPlus/src/collapse/collapse.cjs +1 -0
  47. package/dist/ui/elementPlus/src/collapse/collapse.js +37 -0
  48. package/dist/ui/elementPlus/src/collapse/index.cjs +1 -0
  49. package/dist/ui/elementPlus/src/collapse/index.js +43 -0
  50. package/dist/ui/elementPlus/src/collapse-item/collapseItem.cjs +1 -0
  51. package/dist/ui/elementPlus/src/collapse-item/collapseItem.js +35 -0
  52. package/dist/ui/elementPlus/src/collapse-item/index.cjs +1 -0
  53. package/dist/ui/elementPlus/src/collapse-item/index.js +14 -0
  54. package/dist/ui/elementPlus/src/color-picker/index.cjs +1 -0
  55. package/dist/ui/elementPlus/src/color-picker/index.js +113 -0
  56. package/dist/ui/elementPlus/src/date-picker/index.cjs +1 -0
  57. package/dist/ui/elementPlus/src/date-picker/index.js +205 -0
  58. package/dist/ui/elementPlus/src/form/form.vue.cjs +1 -0
  59. package/dist/ui/elementPlus/src/form/form.vue.js +4 -0
  60. package/dist/ui/elementPlus/src/form/form.vue2.cjs +1 -0
  61. package/dist/ui/elementPlus/src/form/form.vue2.js +82 -0
  62. package/dist/ui/elementPlus/src/form/index.cjs +1 -0
  63. package/dist/ui/elementPlus/src/form/index.js +150 -0
  64. package/dist/ui/elementPlus/src/formItem/formItem.vue.cjs +1 -0
  65. package/dist/ui/elementPlus/src/formItem/formItem.vue.js +4 -0
  66. package/dist/ui/elementPlus/src/formItem/formItem.vue2.cjs +1 -0
  67. package/dist/ui/elementPlus/src/formItem/formItem.vue2.js +22 -0
  68. package/dist/ui/elementPlus/src/formItem/index.cjs +1 -0
  69. package/dist/ui/elementPlus/src/formItem/index.js +11 -0
  70. package/dist/ui/elementPlus/src/index.cjs +1 -0
  71. package/dist/ui/elementPlus/src/index.js +89 -0
  72. package/dist/ui/elementPlus/src/input/index.cjs +1 -0
  73. package/dist/ui/elementPlus/src/input/index.js +178 -0
  74. package/dist/ui/elementPlus/src/input-number/index.cjs +1 -0
  75. package/dist/ui/elementPlus/src/input-number/index.js +148 -0
  76. package/dist/ui/elementPlus/src/modal/index.cjs +1 -0
  77. package/dist/ui/elementPlus/src/modal/index.js +20 -0
  78. package/dist/ui/elementPlus/src/modal/modal.vue.cjs +1 -0
  79. package/dist/ui/elementPlus/src/modal/modal.vue.js +4 -0
  80. package/dist/ui/elementPlus/src/modal/modal.vue2.cjs +1 -0
  81. package/dist/ui/elementPlus/src/modal/modal.vue2.js +76 -0
  82. package/dist/ui/elementPlus/src/radio/index.cjs +1 -0
  83. package/dist/ui/elementPlus/src/radio/index.js +120 -0
  84. package/dist/ui/elementPlus/src/radio/radio.cjs +1 -0
  85. package/dist/ui/elementPlus/src/radio/radio.js +40 -0
  86. package/dist/ui/elementPlus/src/row/index.cjs +1 -0
  87. package/dist/ui/elementPlus/src/row/index.js +111 -0
  88. package/dist/ui/elementPlus/src/row/row.cjs +1 -0
  89. package/dist/ui/elementPlus/src/row/row.js +37 -0
  90. package/dist/ui/elementPlus/src/select/index.cjs +1 -0
  91. package/dist/ui/elementPlus/src/select/index.js +270 -0
  92. package/dist/ui/elementPlus/src/select/select.cjs +1 -0
  93. package/dist/ui/elementPlus/src/select/select.js +31 -0
  94. package/dist/ui/elementPlus/src/slider/index.cjs +1 -0
  95. package/dist/ui/elementPlus/src/slider/index.js +229 -0
  96. package/dist/ui/elementPlus/src/switch/index.cjs +1 -0
  97. package/dist/ui/elementPlus/src/switch/index.js +145 -0
  98. package/dist/ui/elementPlus/src/tab-pane/index.cjs +1 -0
  99. package/dist/ui/elementPlus/src/tab-pane/index.js +26 -0
  100. package/dist/ui/elementPlus/src/tab-pane/tabPane.vue.cjs +1 -0
  101. package/dist/ui/elementPlus/src/tab-pane/tabPane.vue.js +4 -0
  102. package/dist/ui/elementPlus/src/tab-pane/tabPane.vue2.cjs +1 -0
  103. package/dist/ui/elementPlus/src/tab-pane/tabPane.vue2.js +36 -0
  104. package/dist/ui/elementPlus/src/tabs/index.cjs +1 -0
  105. package/dist/ui/elementPlus/src/tabs/index.js +115 -0
  106. package/dist/ui/elementPlus/src/tabs/tabs.cjs +1 -0
  107. package/dist/ui/elementPlus/src/tabs/tabs.js +54 -0
  108. package/dist/ui/elementPlus/src/textarea/index.cjs +1 -0
  109. package/dist/ui/elementPlus/src/textarea/index.js +155 -0
  110. package/dist/ui/elementPlus/src/upload-file/index.cjs +1 -0
  111. package/dist/ui/elementPlus/src/upload-file/index.js +89 -0
  112. package/dist/ui/elementPlus/src/upload-file/uploadFile.cjs +1 -0
  113. package/dist/ui/elementPlus/src/upload-file/uploadFile.js +98 -0
  114. package/dist/ui/elementPlus/src/upload-image/index.cjs +1 -0
  115. package/dist/ui/elementPlus/src/upload-image/index.js +89 -0
  116. package/dist/ui/elementPlus/src/upload-image/uploadImage.cjs +1 -0
  117. package/dist/ui/elementPlus/src/upload-image/uploadImage.js +124 -0
  118. package/dist/ui-kit/base-ui/src/collapse/collapse.vue.cjs +1 -1
  119. package/dist/ui-kit/base-ui/src/collapse/collapse.vue.js +2 -2
  120. package/dist/ui-kit/base-ui/src/collapse/collapsePanel.vue.cjs +1 -1
  121. package/dist/ui-kit/base-ui/src/collapse/collapsePanel.vue.js +2 -2
  122. package/dist/ui-kit/panel-ui/src/components/EBorderEditor/index.vue.cjs +1 -1
  123. package/dist/ui-kit/panel-ui/src/components/EBorderEditor/index.vue.js +2 -2
  124. package/dist/ui-kit/panel-ui/src/components/EBorderEditor/index.vue2.cjs +1 -1
  125. package/dist/ui-kit/panel-ui/src/components/EBorderEditor/index.vue2.js +1 -1
  126. package/dist/ui-kit/panel-ui/src/components/EShadowEditor/index.vue.cjs +1 -1
  127. package/dist/ui-kit/panel-ui/src/components/EShadowEditor/index.vue.js +2 -2
  128. package/dist/ui-kit/panel-ui/src/components/MonacoEditor/index.vue.cjs +1 -1
  129. package/dist/ui-kit/panel-ui/src/components/MonacoEditor/index.vue.js +2 -2
  130. package/dist/ui-kit/panel-ui/src/rightSidebars/attribute/modules/attributeItem.vue.cjs +1 -1
  131. package/dist/ui-kit/panel-ui/src/rightSidebars/attribute/modules/attributeItem.vue.js +45 -38
  132. package/package.json +9 -2
  133. package/uno.config.ts +36 -0
@@ -44,6 +44,8 @@ export declare function useBuilder(): {
44
44
  field?: string | undefined;
45
45
  id?: string | undefined;
46
46
  input?: boolean | undefined;
47
+ isHideToolbar?: boolean | undefined;
48
+ isNotLayout?: boolean | undefined;
47
49
  label?: string | undefined;
48
50
  noFormItem?: boolean | undefined;
49
51
  on?: {
@@ -51,6 +51,8 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {
51
51
  field?: string | undefined;
52
52
  id?: string | undefined;
53
53
  input?: boolean | undefined;
54
+ isHideToolbar?: boolean | undefined;
55
+ isNotLayout?: boolean | undefined;
54
56
  label?: string | undefined;
55
57
  noFormItem?: boolean | undefined;
56
58
  on?: {
@@ -140,6 +142,8 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {
140
142
  field?: string | undefined;
141
143
  id?: string | undefined;
142
144
  input?: boolean | undefined;
145
+ isHideToolbar?: boolean | undefined;
146
+ isNotLayout?: boolean | undefined;
143
147
  label?: string | undefined;
144
148
  noFormItem?: boolean | undefined;
145
149
  on?: {
@@ -223,6 +227,8 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {
223
227
  field?: string | undefined;
224
228
  id?: string | undefined;
225
229
  input?: boolean | undefined;
230
+ isHideToolbar?: boolean | undefined;
231
+ isNotLayout?: boolean | undefined;
226
232
  label?: string | undefined;
227
233
  noFormItem?: boolean | undefined;
228
234
  on?: {
@@ -42,6 +42,8 @@ export declare function useDesigner(props: any, emit: any): {
42
42
  field?: string | undefined;
43
43
  id?: string | undefined;
44
44
  input?: boolean | undefined;
45
+ isHideToolbar?: boolean | undefined;
46
+ isNotLayout?: boolean | undefined;
45
47
  label?: string | undefined;
46
48
  noFormItem?: boolean | undefined;
47
49
  on?: {
@@ -93,6 +95,8 @@ export declare function useDesigner(props: any, emit: any): {
93
95
  field?: string | undefined;
94
96
  id?: string | undefined;
95
97
  input?: boolean | undefined;
98
+ isHideToolbar?: boolean | undefined;
99
+ isNotLayout?: boolean | undefined;
96
100
  label?: string | undefined;
97
101
  noFormItem?: boolean | undefined;
98
102
  on?: {
@@ -189,6 +193,8 @@ export declare function useDesigner(props: any, emit: any): {
189
193
  field?: string | undefined;
190
194
  id?: string | undefined;
191
195
  input?: boolean | undefined;
196
+ isHideToolbar?: boolean | undefined;
197
+ isNotLayout?: boolean | undefined;
192
198
  label?: string | undefined;
193
199
  noFormItem?: boolean | undefined;
194
200
  on?: {
@@ -225,6 +231,8 @@ export declare function useDesigner(props: any, emit: any): {
225
231
  field?: string | undefined;
226
232
  id?: string | undefined;
227
233
  input?: boolean | undefined;
234
+ isHideToolbar?: boolean | undefined;
235
+ isNotLayout?: boolean | undefined;
228
236
  label?: string | undefined;
229
237
  noFormItem?: boolean | undefined;
230
238
  on?: {
@@ -261,6 +269,8 @@ export declare function useDesigner(props: any, emit: any): {
261
269
  field?: string | undefined;
262
270
  id?: string | undefined;
263
271
  input?: boolean | undefined;
272
+ isHideToolbar?: boolean | undefined;
273
+ isNotLayout?: boolean | undefined;
264
274
  label?: string | undefined;
265
275
  noFormItem?: boolean | undefined;
266
276
  on?: {
@@ -87,6 +87,8 @@ declare function __VLS_template(): {
87
87
  field?: string | undefined;
88
88
  id?: string | undefined;
89
89
  input?: boolean | undefined;
90
+ isHideToolbar?: boolean | undefined;
91
+ isNotLayout?: boolean | undefined;
90
92
  label?: string | undefined;
91
93
  noFormItem?: boolean | undefined;
92
94
  on?: {
@@ -168,6 +170,8 @@ declare function __VLS_template(): {
168
170
  field?: string | undefined;
169
171
  id?: string | undefined;
170
172
  input?: boolean | undefined;
173
+ isHideToolbar?: boolean | undefined;
174
+ isNotLayout?: boolean | undefined;
171
175
  label?: string | undefined;
172
176
  noFormItem?: boolean | undefined;
173
177
  on?: {
@@ -257,6 +261,8 @@ declare function __VLS_template(): {
257
261
  field?: string | undefined;
258
262
  id?: string | undefined;
259
263
  input?: boolean | undefined;
264
+ isHideToolbar?: boolean | undefined;
265
+ isNotLayout?: boolean | undefined;
260
266
  label?: string | undefined;
261
267
  noFormItem?: boolean | undefined;
262
268
  on?: {
@@ -352,6 +358,8 @@ declare function __VLS_template(): {
352
358
  field?: string | undefined;
353
359
  id?: string | undefined;
354
360
  input?: boolean | undefined;
361
+ isHideToolbar?: boolean | undefined;
362
+ isNotLayout?: boolean | undefined;
355
363
  label?: string | undefined;
356
364
  noFormItem?: boolean | undefined;
357
365
  on?: {
@@ -433,6 +441,8 @@ declare function __VLS_template(): {
433
441
  field?: string | undefined;
434
442
  id?: string | undefined;
435
443
  input?: boolean | undefined;
444
+ isHideToolbar?: boolean | undefined;
445
+ isNotLayout?: boolean | undefined;
436
446
  label?: string | undefined;
437
447
  noFormItem?: boolean | undefined;
438
448
  on?: {
@@ -579,9 +589,9 @@ declare const __VLS_component: import('vue').DefineComponent<DesignerProps, {
579
589
  onToggleDeviceMode?: ((...args: any[]) => any) | undefined;
580
590
  }>, {
581
591
  title: string;
582
- disabledZoom: boolean;
583
592
  showHiddenItems: boolean;
584
593
  draggable: boolean;
594
+ disabledZoom: boolean;
585
595
  canvasMode: "desktop" | "mobile" | "tablet";
586
596
  formMode: boolean;
587
597
  hiddenHeader: boolean;
@@ -647,6 +657,8 @@ declare const __VLS_component: import('vue').DefineComponent<DesignerProps, {
647
657
  field?: string | undefined;
648
658
  id?: string | undefined;
649
659
  input?: boolean | undefined;
660
+ isHideToolbar?: boolean | undefined;
661
+ isNotLayout?: boolean | undefined;
650
662
  label?: string | undefined;
651
663
  noFormItem?: boolean | undefined;
652
664
  on?: {
@@ -728,6 +740,8 @@ declare const __VLS_component: import('vue').DefineComponent<DesignerProps, {
728
740
  field?: string | undefined;
729
741
  id?: string | undefined;
730
742
  input?: boolean | undefined;
743
+ isHideToolbar?: boolean | undefined;
744
+ isNotLayout?: boolean | undefined;
731
745
  label?: string | undefined;
732
746
  noFormItem?: boolean | undefined;
733
747
  on?: {
@@ -817,6 +831,8 @@ declare const __VLS_component: import('vue').DefineComponent<DesignerProps, {
817
831
  field?: string | undefined;
818
832
  id?: string | undefined;
819
833
  input?: boolean | undefined;
834
+ isHideToolbar?: boolean | undefined;
835
+ isNotLayout?: boolean | undefined;
820
836
  label?: string | undefined;
821
837
  noFormItem?: boolean | undefined;
822
838
  on?: {
@@ -912,6 +928,8 @@ declare const __VLS_component: import('vue').DefineComponent<DesignerProps, {
912
928
  field?: string | undefined;
913
929
  id?: string | undefined;
914
930
  input?: boolean | undefined;
931
+ isHideToolbar?: boolean | undefined;
932
+ isNotLayout?: boolean | undefined;
915
933
  label?: string | undefined;
916
934
  noFormItem?: boolean | undefined;
917
935
  on?: {
@@ -993,6 +1011,8 @@ declare const __VLS_component: import('vue').DefineComponent<DesignerProps, {
993
1011
  field?: string | undefined;
994
1012
  id?: string | undefined;
995
1013
  input?: boolean | undefined;
1014
+ isHideToolbar?: boolean | undefined;
1015
+ isNotLayout?: boolean | undefined;
996
1016
  label?: string | undefined;
997
1017
  noFormItem?: boolean | undefined;
998
1018
  on?: {
@@ -1 +1 @@
1
- "use strict";const e=require("vue");;/* empty css */;/* empty css */;/* empty css */const _=require("../../../../../../../ui-kit/base-ui/src/node/node.vue.cjs");;/* empty css */require("jsep");require("@vueuse/core");require("../../../../../../../hooks/src/store/index.cjs");const y=require("../../../../../../../hooks/src/designer/useDesignerContext.cjs"),f=require("../../../../../../../hooks/src/designer/useNodeAttrs.cjs"),d=require("../../../../../../../manager/src/pluginManager.cjs");require("vue-draggable-plus");const q=require("./nodes.vue.cjs"),k=e.defineComponent({name:"EpicNodeItem",__name:"nodeItem",props:{draggable:{type:Boolean,default:!0},schema:{}},setup(m){const n=m,u=e.useAttrs(),{pageSchema:l,props:p}=y.useDesignerContext();e.provide(f.NODE_ATTRS_KEY,u);const h=e.computed(()=>!n.schema.children);function g(){var t,s,r;const a=n.schema;return!n.draggable||a.id===((t=l.schemas[0])==null?void 0:t.id)||(r=(s=d.pluginManager.component.getConfigByType(a.type))==null?void 0:s.editConstraints)!=null&&r.immovable?"node-drag-disabled":"node-drag-enabled"}return(a,t)=>{var r,c,i;const s=e.resolveComponent("EpicNodeItem");return e.openBlock(),e.createBlock(e.unref(_),{"component-schema":n.schema,"data-diygw-id":n.schema.id,class:e.normalizeClass(["edit-draggable-widget",[g(),h.value?"diygw-node-leaf":""]]),"show-hidden-items":(r=e.unref(p))==null?void 0:r.showHiddenItems},e.createSlots({_:2},[(i=(c=e.unref(d.pluginManager).component.getConfigByType(n.schema.type))==null?void 0:c.editConstraints)!=null&&i.childImmovable?{name:"edit-node",fn:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.schema.children,o=>(e.openBlock(),e.createBlock(s,{key:o.id,schema:o,draggable:!1},null,8,["schema"]))),128))]),key:"0"}:{name:"edit-node",fn:e.withCtx(()=>[n.schema.children?(e.openBlock(),e.createBlock(q,{schemas:n.schema.children,"onUpdate:schemas":t[0]||(t[0]=o=>n.schema.children=o),key:n.schema.children.length},null,8,["schemas"])):e.createCommentVNode("",!0)]),key:"1"}]),1032,["component-schema","data-diygw-id","show-hidden-items","class"])}}});module.exports=k;
1
+ "use strict";const e=require("vue");;/* empty css */;/* empty css */;/* empty css */const y=require("../../../../../../../ui-kit/base-ui/src/node/node.vue.cjs");;/* empty css */require("jsep");require("@vueuse/core");require("../../../../../../../hooks/src/store/index.cjs");const _=require("../../../../../../../hooks/src/designer/useDesignerContext.cjs"),C=require("../../../../../../../hooks/src/designer/useNodeAttrs.cjs"),l=require("../../../../../../../manager/src/pluginManager.cjs");require("vue-draggable-plus");const q=require("./nodes.vue.cjs"),k=e.defineComponent({name:"EpicNodeItem",__name:"nodeItem",props:{draggable:{type:Boolean,default:!0},schema:{}},setup(d){const r=d,m=e.useAttrs(),{pageSchema:u,props:p}=_.useDesignerContext();e.provide(C.NODE_ATTRS_KEY,m);const g=e.computed(()=>!r.schema.children);function h(){var n,o,s;const t=r.schema;return!r.draggable||t.id===((n=u.schemas[0])==null?void 0:n.id)||(s=(o=l.pluginManager.component.getConfigByType(t.type))==null?void 0:o.editConstraints)!=null&&s.immovable?"node-drag-disabled":"node-drag-enabled"}const f=e.computed(()=>{const t=r.schema.props||{},n={};return t.direction&&(n.flexDirection=t.direction),t.wrap&&(n.flexWrap=t.wrap),t.justifyContent&&(n.justifyContent=t.justifyContent),t.alignItems&&(n.alignItems=t.alignItems),t.gap&&(n.gap=t.gap),Object.keys(n).length>0&&(n.display="flex"),n});return(t,n)=>{var s,a,c;const o=e.resolveComponent("EpicNodeItem");return e.openBlock(),e.createBlock(e.unref(y),{"component-schema":r.schema,"data-diygw-id":r.schema.id,class:e.normalizeClass(["edit-draggable-widget",[h(),g.value?"diygw-node-leaf":""]]),"show-hidden-items":(s=e.unref(p))==null?void 0:s.showHiddenItems},e.createSlots({_:2},[(c=(a=e.unref(l.pluginManager).component.getConfigByType(r.schema.type))==null?void 0:a.editConstraints)!=null&&c.childImmovable?{name:"edit-node",fn:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.schema.children,i=>(e.openBlock(),e.createBlock(o,{key:i.id,schema:i,draggable:!1},null,8,["schema"]))),128))]),key:"0"}:{name:"edit-node",fn:e.withCtx(()=>[r.schema.children?(e.openBlock(),e.createBlock(q,{schemas:r.schema.children,"onUpdate:schemas":n[0]||(n[0]=i=>r.schema.children=i),key:r.schema.children.length,style:e.normalizeStyle(f.value)},null,8,["schemas","style"])):e.createCommentVNode("",!0)]),key:"1"}]),1032,["component-schema","data-diygw-id","show-hidden-items","class"])}}});module.exports=k;
@@ -1,18 +1,18 @@
1
- import { defineComponent as C, useAttrs as b, provide as w, computed as k, resolveComponent as B, createBlock as s, openBlock as a, unref as i, normalizeClass as E, createSlots as I, withCtx as p, createElementBlock as N, Fragment as v, renderList as x, createCommentVNode as T } from "vue";
1
+ import { defineComponent as w, useAttrs as x, provide as I, computed as l, resolveComponent as k, createBlock as r, openBlock as a, unref as m, normalizeClass as v, createSlots as B, withCtx as p, createElementBlock as E, Fragment as N, renderList as S, createCommentVNode as j, normalizeStyle as D } from "vue";
2
2
  /* empty css */
3
3
  /* empty css */
4
4
  /* empty css */
5
- import D from "../../../../../../../ui-kit/base-ui/src/node/node.vue.js";
5
+ import T from "../../../../../../../ui-kit/base-ui/src/node/node.vue.js";
6
6
  /* empty css */
7
7
  import "jsep";
8
8
  import "@vueuse/core";
9
9
  import "../../../../../../../hooks/src/store/index.js";
10
- import { useDesignerContext as S } from "../../../../../../../hooks/src/designer/useDesignerContext.js";
10
+ import { useDesignerContext as z } from "../../../../../../../hooks/src/designer/useDesignerContext.js";
11
11
  import { NODE_ATTRS_KEY as A } from "../../../../../../../hooks/src/designer/useNodeAttrs.js";
12
- import { pluginManager as l } from "../../../../../../../manager/src/pluginManager.js";
12
+ import { pluginManager as f } from "../../../../../../../manager/src/pluginManager.js";
13
13
  import "vue-draggable-plus";
14
14
  import L from "./nodes.vue.js";
15
- const G = /* @__PURE__ */ C({
15
+ const J = /* @__PURE__ */ w({
16
16
  name: "EpicNodeItem",
17
17
  __name: "nodeItem",
18
18
  props: {
@@ -20,29 +20,33 @@ const G = /* @__PURE__ */ C({
20
20
  schema: {}
21
21
  },
22
22
  setup(h) {
23
- const e = h, g = b(), { pageSchema: f, props: u } = S();
24
- w(A, g);
25
- const y = k(() => !e.schema.children);
23
+ const n = h, g = x(), { pageSchema: u, props: y } = z();
24
+ I(A, g);
25
+ const C = l(() => !n.schema.children);
26
26
  function _() {
27
- var t, n, o;
28
- const r = e.schema;
29
- return !e.draggable || r.id === ((t = f.schemas[0]) == null ? void 0 : t.id) || (o = (n = l.component.getConfigByType(r.type)) == null ? void 0 : n.editConstraints) != null && o.immovable ? "node-drag-disabled" : "node-drag-enabled";
27
+ var t, i, o;
28
+ const e = n.schema;
29
+ return !n.draggable || e.id === ((t = u.schemas[0]) == null ? void 0 : t.id) || (o = (i = f.component.getConfigByType(e.type)) == null ? void 0 : i.editConstraints) != null && o.immovable ? "node-drag-disabled" : "node-drag-enabled";
30
30
  }
31
- return (r, t) => {
32
- var o, d, c;
33
- const n = B("EpicNodeItem");
34
- return a(), s(i(D), {
35
- "component-schema": e.schema,
36
- "data-diygw-id": e.schema.id,
37
- class: E(["edit-draggable-widget", [_(), y.value ? "diygw-node-leaf" : ""]]),
38
- "show-hidden-items": (o = i(u)) == null ? void 0 : o.showHiddenItems
39
- }, I({ _: 2 }, [
40
- (c = (d = i(l).component.getConfigByType(e.schema.type)) == null ? void 0 : d.editConstraints) != null && c.childImmovable ? {
31
+ const b = l(() => {
32
+ const e = n.schema.props || {}, t = {};
33
+ return e.direction && (t.flexDirection = e.direction), e.wrap && (t.flexWrap = e.wrap), e.justifyContent && (t.justifyContent = e.justifyContent), e.alignItems && (t.alignItems = e.alignItems), e.gap && (t.gap = e.gap), Object.keys(t).length > 0 && (t.display = "flex"), t;
34
+ });
35
+ return (e, t) => {
36
+ var o, c, d;
37
+ const i = k("EpicNodeItem");
38
+ return a(), r(m(T), {
39
+ "component-schema": n.schema,
40
+ "data-diygw-id": n.schema.id,
41
+ class: v(["edit-draggable-widget", [_(), C.value ? "diygw-node-leaf" : ""]]),
42
+ "show-hidden-items": (o = m(y)) == null ? void 0 : o.showHiddenItems
43
+ }, B({ _: 2 }, [
44
+ (d = (c = m(f).component.getConfigByType(n.schema.type)) == null ? void 0 : c.editConstraints) != null && d.childImmovable ? {
41
45
  name: "edit-node",
42
46
  fn: p(() => [
43
- (a(!0), N(v, null, x(e.schema.children, (m) => (a(), s(n, {
44
- key: m.id,
45
- schema: m,
47
+ (a(!0), E(N, null, S(n.schema.children, (s) => (a(), r(i, {
48
+ key: s.id,
49
+ schema: s,
46
50
  draggable: !1
47
51
  }, null, 8, ["schema"]))), 128))
48
52
  ]),
@@ -50,11 +54,12 @@ const G = /* @__PURE__ */ C({
50
54
  } : {
51
55
  name: "edit-node",
52
56
  fn: p(() => [
53
- e.schema.children ? (a(), s(L, {
54
- schemas: e.schema.children,
55
- "onUpdate:schemas": t[0] || (t[0] = (m) => e.schema.children = m),
56
- key: e.schema.children.length
57
- }, null, 8, ["schemas"])) : T("", !0)
57
+ n.schema.children ? (a(), r(L, {
58
+ schemas: n.schema.children,
59
+ "onUpdate:schemas": t[0] || (t[0] = (s) => n.schema.children = s),
60
+ key: n.schema.children.length,
61
+ style: D(b.value)
62
+ }, null, 8, ["schemas", "style"])) : j("", !0)
58
63
  ]),
59
64
  key: "1"
60
65
  }
@@ -63,5 +68,5 @@ const G = /* @__PURE__ */ C({
63
68
  }
64
69
  });
65
70
  export {
66
- G as default
71
+ J as default
67
72
  };
@@ -1 +1 @@
1
- "use strict";const o=require("vue"),I=require("vue-draggable-plus");;/* empty css */;/* empty css */;/* empty css */require("../../../../../../../manager/src/pluginManager.cjs");;/* empty css */require("jsep");require("@vueuse/core");require("../../../../../../../hooks/src/store/index.cjs");const D=require("../../../../../../../hooks/src/designer/useDesignerContext.cjs"),C=require("../../../../../../../hooks/src/designer/usePageManager.cjs"),B=require("./nodeItem.vue.cjs"),N=o.defineComponent({name:"EditNodeItem",__name:"nodes",props:{schemas:{}},emits:["update:schemas"],setup(m,{emit:f}){const h=m,y=f,s=D.useDesignerContext(),d=s.revoke,q=C.usePageManager(),i=o.computed({get:()=>h.schemas,set:e=>y("update:schemas",e)}),a=o.ref(!1);function c(e){var n,g,p;if(!(e!=null&&e.closest))return null;if((n=e.dataset)!=null&&n.diygwId)return u(e.dataset.diygwId);if(!e.classList.contains("diygw-draggable-range")){const r=e.querySelector(":scope > [data-diygw-id]");if((g=r==null?void 0:r.dataset)!=null&&g.diygwId)return u(r.dataset.diygwId)}const t=e.closest("[data-diygw-id]");return(p=t==null?void 0:t.dataset)!=null&&p.diygwId?u(t.dataset.diygwId):null}function u(e){var n;const t=q.findInstance(e);return((n=t==null?void 0:t.exposed)==null?void 0:n.schema)||null}function l(e){const t=c(e.item??e.target);e.stopPropagation(),s.setSelectedNode(t)}function v(e){const t=c(e.target);e.stopPropagation(),s.setHoverNode(t)}function w(e){s.setSelectedNode(e.clonedData),d.push("插入组件",!0),a.value=!1}function _(){a.value=!0}function k(){a.value&&d.push("拖拽组件",!0),a.value=!1}return(e,t)=>(o.openBlock(),o.createBlock(o.unref(I.VueDraggable),{modelValue:i.value,"onUpdate:modelValue":t[0]||(t[0]=n=>i.value=n),"item-key":"id","component-data":{type:"transition-group"},class:"diygw-draggable-range",animation:200,group:"edit-draggable","ghost-class":"diygw-moveing",onMouseover:o.withModifiers(v,["stop"]),onChange:_,onAdd:w,onEnd:k,onClick:o.withModifiers(l,["stop"]),onChoose:l},{default:o.withCtx(()=>[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(i.value,n=>(o.openBlock(),o.createBlock(B,{key:n.id,schema:n},null,8,["schema"]))),128))]),_:1},8,["modelValue"]))}});module.exports=N;
1
+ "use strict";const t=require("vue"),I=require("vue-draggable-plus");;/* empty css */;/* empty css */;/* empty css */require("../../../../../../../manager/src/pluginManager.cjs");;/* empty css */require("jsep");require("@vueuse/core");require("../../../../../../../hooks/src/store/index.cjs");const D=require("../../../../../../../hooks/src/designer/useDesignerContext.cjs"),C=require("../../../../../../../hooks/src/designer/usePageManager.cjs"),S=require("./nodeItem.vue.cjs"),B=t.defineComponent({name:"EditNodeItem",__name:"nodes",props:{schemas:{},style:{}},emits:["update:schemas"],setup(f,{emit:h}){const d=f,y=h,n=D.useDesignerContext(),c=n.revoke,q=C.usePageManager(),i=t.computed({get:()=>d.schemas,set:e=>y("update:schemas",e)}),a=t.ref(!1);function l(e){var o,m,p;if(!(e!=null&&e.closest))return null;if((o=e.dataset)!=null&&o.diygwId)return u(e.dataset.diygwId);if(!e.classList.contains("diygw-draggable-range")){const r=e.querySelector(":scope > [data-diygw-id]");if((m=r==null?void 0:r.dataset)!=null&&m.diygwId)return u(r.dataset.diygwId)}const s=e.closest("[data-diygw-id]");return(p=s==null?void 0:s.dataset)!=null&&p.diygwId?u(s.dataset.diygwId):null}function u(e){var o;const s=q.findInstance(e);return((o=s==null?void 0:s.exposed)==null?void 0:o.schema)||null}function g(e){const s=l(e.item??e.target);e.stopPropagation(),n.setSelectedNode(s)}function v(e){const s=l(e.target);e.stopPropagation(),n.setHoverNode(s)}function w(e){n.setSelectedNode(e.clonedData),c.push("插入组件",!0),a.value=!1}function _(){a.value=!0}function k(){a.value&&c.push("拖拽组件",!0),a.value=!1}return(e,s)=>(t.openBlock(),t.createBlock(t.unref(I.VueDraggable),{modelValue:i.value,"onUpdate:modelValue":s[0]||(s[0]=o=>i.value=o),"item-key":"id","component-data":{type:"transition-group"},class:"diygw-draggable-range",animation:200,style:t.normalizeStyle(d.style),group:"edit-draggable","ghost-class":"diygw-moveing",onMouseover:t.withModifiers(v,["stop"]),onChange:_,onAdd:w,onEnd:k,onClick:t.withModifiers(g,["stop"]),onChoose:g},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.value,o=>(t.openBlock(),t.createBlock(S,{key:o.id,schema:o},null,8,["schema"]))),128))]),_:1},8,["modelValue","style"]))}});module.exports=B;
@@ -1,6 +1,7 @@
1
1
  import { ComponentSchema } from '../../../../../../../types/src/index';
2
2
  type __VLS_Props = {
3
3
  schemas: ComponentSchema[];
4
+ style?: Record<string, string>;
4
5
  };
5
6
  declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
6
7
  "update:schemas": (...args: any[]) => void;
@@ -1,5 +1,5 @@
1
- import { defineComponent as S, computed as _, ref as x, createBlock as g, openBlock as r, unref as b, withModifiers as f, withCtx as B, createElementBlock as E, Fragment as M, renderList as V } from "vue";
2
- import { VueDraggable as P } from "vue-draggable-plus";
1
+ import { defineComponent as N, computed as _, ref as x, createBlock as f, openBlock as r, unref as b, withModifiers as h, normalizeStyle as B, withCtx as E, createElementBlock as M, Fragment as V, renderList as P } from "vue";
2
+ import { VueDraggable as A } from "vue-draggable-plus";
3
3
  /* empty css */
4
4
  /* empty css */
5
5
  /* empty css */
@@ -8,84 +8,86 @@ import "../../../../../../../manager/src/pluginManager.js";
8
8
  import "jsep";
9
9
  import "@vueuse/core";
10
10
  import "../../../../../../../hooks/src/store/index.js";
11
- import { useDesignerContext as A } from "../../../../../../../hooks/src/designer/useDesignerContext.js";
12
- import { usePageManager as H } from "../../../../../../../hooks/src/designer/usePageManager.js";
13
- import L from "./nodeItem.vue.js";
14
- const W = /* @__PURE__ */ S({
11
+ import { useDesignerContext as H } from "../../../../../../../hooks/src/designer/useDesignerContext.js";
12
+ import { usePageManager as L } from "../../../../../../../hooks/src/designer/usePageManager.js";
13
+ import q from "./nodeItem.vue.js";
14
+ const X = /* @__PURE__ */ N({
15
15
  name: "EditNodeItem",
16
16
  __name: "nodes",
17
17
  props: {
18
- schemas: {}
18
+ schemas: {},
19
+ style: {}
19
20
  },
20
21
  emits: ["update:schemas"],
21
- setup(h, { emit: y }) {
22
- const w = h, v = y, a = A(), c = a.revoke, I = H(), d = _({
23
- get: () => w.schemas,
22
+ setup(y, { emit: w }) {
23
+ const l = y, v = w, a = H(), c = a.revoke, I = L(), d = _({
24
+ get: () => l.schemas,
24
25
  set: (e) => v("update:schemas", e)
25
- }), n = x(!1);
26
+ }), s = x(!1);
26
27
  function u(e) {
27
- var t, l, p;
28
+ var o, p, g;
28
29
  if (!(e != null && e.closest)) return null;
29
- if ((t = e.dataset) != null && t.diygwId)
30
+ if ((o = e.dataset) != null && o.diygwId)
30
31
  return i(e.dataset.diygwId);
31
32
  if (!e.classList.contains("diygw-draggable-range")) {
32
- const s = e.querySelector(":scope > [data-diygw-id]");
33
- if ((l = s == null ? void 0 : s.dataset) != null && l.diygwId)
34
- return i(s.dataset.diygwId);
33
+ const n = e.querySelector(":scope > [data-diygw-id]");
34
+ if ((p = n == null ? void 0 : n.dataset) != null && p.diygwId)
35
+ return i(n.dataset.diygwId);
35
36
  }
36
- const o = e.closest("[data-diygw-id]");
37
- return (p = o == null ? void 0 : o.dataset) != null && p.diygwId ? i(o.dataset.diygwId) : null;
37
+ const t = e.closest("[data-diygw-id]");
38
+ return (g = t == null ? void 0 : t.dataset) != null && g.diygwId ? i(t.dataset.diygwId) : null;
38
39
  }
39
40
  function i(e) {
40
- var t;
41
- const o = I.findInstance(e);
42
- return ((t = o == null ? void 0 : o.exposed) == null ? void 0 : t.schema) || null;
41
+ var o;
42
+ const t = I.findInstance(e);
43
+ return ((o = t == null ? void 0 : t.exposed) == null ? void 0 : o.schema) || null;
43
44
  }
44
45
  function m(e) {
45
- const o = u(e.item ?? e.target);
46
- e.stopPropagation(), a.setSelectedNode(o);
46
+ const t = u(e.item ?? e.target);
47
+ e.stopPropagation(), a.setSelectedNode(t);
47
48
  }
48
49
  function k(e) {
49
- const o = u(e.target);
50
- e.stopPropagation(), a.setHoverNode(o);
50
+ const t = u(e.target);
51
+ e.stopPropagation(), a.setHoverNode(t);
51
52
  }
52
- function C(e) {
53
- a.setSelectedNode(e.clonedData), c.push("插入组件", !0), n.value = !1;
53
+ function S(e) {
54
+ a.setSelectedNode(e.clonedData), c.push("插入组件", !0), s.value = !1;
54
55
  }
55
- function D() {
56
- n.value = !0;
56
+ function C() {
57
+ s.value = !0;
57
58
  }
58
- function N() {
59
- n.value && c.push("拖拽组件", !0), n.value = !1;
59
+ function D() {
60
+ s.value && c.push("拖拽组件", !0), s.value = !1;
60
61
  }
61
- return (e, o) => (r(), g(b(P), {
62
+ return (e, t) => (r(), f(b(A), {
62
63
  modelValue: d.value,
63
- "onUpdate:modelValue": o[0] || (o[0] = (t) => d.value = t),
64
+ "onUpdate:modelValue": t[0] || (t[0] = (o) => d.value = o),
64
65
  "item-key": "id",
65
66
  "component-data": {
66
67
  type: "transition-group"
67
68
  },
68
69
  class: "diygw-draggable-range",
69
70
  animation: 200,
71
+ style: B(l.style),
70
72
  group: "edit-draggable",
71
73
  "ghost-class": "diygw-moveing",
72
- onMouseover: f(k, ["stop"]),
73
- onChange: D,
74
- onAdd: C,
75
- onEnd: N,
76
- onClick: f(m, ["stop"]),
74
+ onMouseover: h(k, ["stop"]),
75
+ onChange: C,
76
+ onAdd: S,
77
+ onEnd: D,
78
+ onClick: h(m, ["stop"]),
77
79
  onChoose: m
78
80
  }, {
79
- default: B(() => [
80
- (r(!0), E(M, null, V(d.value, (t) => (r(), g(L, {
81
- key: t.id,
82
- schema: t
81
+ default: E(() => [
82
+ (r(!0), M(V, null, P(d.value, (o) => (r(), f(q, {
83
+ key: o.id,
84
+ schema: o
83
85
  }, null, 8, ["schema"]))), 128))
84
86
  ]),
85
87
  _: 1
86
- }, 8, ["modelValue"]));
88
+ }, 8, ["modelValue", "style"]));
87
89
  }
88
90
  });
89
91
  export {
90
- W as default
92
+ X as default
91
93
  };
@@ -1 +1 @@
1
- "use strict";const e=require("vue");;/* empty css */const V=require("../../../../../../../ui-kit/base-ui/src/icon/icon.vue.cjs");;/* empty css */;/* empty css */const ne=require("../../../../../../../utils/src/common/data.cjs");require("jsep");const oe=require("../../../../../../../hooks/src/common/element.cjs"),$=require("@vueuse/core"),re=require("../../../../../../../hooks/src/store/index.cjs"),le=require("../../../../../../../hooks/src/designer/useDesignerContext.cjs"),se=require("../../../../../../../hooks/src/designer/usePageManager.cjs"),M=require("../../../../../../../manager/src/pluginManager.cjs");;/* empty css */require("vue-draggable-plus");const ie={class:"diygw-widget-action-item whitespace-nowrap"},ce={key:0,class:"flex items-center"},ae=e.defineComponent({__name:"previewWidgets",setup(ue,{expose:I}){const y=se.usePageManager(),l=le.useDesignerContext(),z=l.props,S=l.pageSchema,g=e.ref(null),m=e.ref(null),f=e.ref(null),C=e.ref(!1),B=e.ref(!0),w=e.ref("top"),{canvasScale:_,disabledZoom:R}=re.useStore();let o=null;const P=e.computed(()=>{const t=l.state.selectedNode;return!(!(t!=null&&t.id)||z.lockDefaultSchemaEdit&&y.defaultComponentIds.value.includes(t==null?void 0:t.id))}),L=t=>{var u,c;const n=t.id;if((u=t.props)!=null&&u.hidden)return null;const i=M.pluginManager.component.getConfigByType(t.type)??null;if(!n||!y.findInstance(n))return null;if(i!=null&&i.defaultSchema.input&&(t==null?void 0:t.noFormItem)!==!0)return(c=y.findInstance(`${n}_formItem`))==null?void 0:c.vnode.el;const r=y.findInstance(n),a=r==null?void 0:r.vnode.el;return!a||!a.getBoundingClientRect?null:a},x=e.computed(()=>l.state.selectedNode?L(l.state.selectedNode):null),T=e.computed(()=>!l.state.hoverNode||l.state.hoverNode.id===S.schemas[0].id?null:L(l.state.hoverNode)),{mutationObserver:H,observerConfig:Q}=D(b),{startTimedQuery:W,stopTimedQuery:F}=oe.useTimedQuery(b);e.watch(()=>x.value,t=>{if(t){C.value=!0,H.observe(t,Q);const n=t.parentNode;n&&(n.addEventListener("dragstart",()=>{B.value=!1,W()}),n.addEventListener("dragend",()=>{B.value=!0,F()})),b()}else C.value=!1});const{mutationObserver:X,observerConfig:Y}=D(q);e.watch(()=>T.value,t=>{t&&(X.observe(t,Y),q())});let O=0,k=0;function b(){var N;const t=x.value;if(!t||!o)return;const{left:n,top:i}=o.getBoundingClientRect();let r=(N=t.getBoundingClientRect)==null?void 0:N.call(t);!r&&t.nextElementSibling&&(r=t.nextElementSibling.getBoundingClientRect());const{height:a,left:u,top:c,width:d}=r,s=R.value?1:_.value,v=c-i+((o==null?void 0:o.scrollTop)??0)*s,h=u-n+((o==null?void 0:o.scrollLeft)??0)*s,p=a/s;g.value&&(g.value.style.width=`${d/s}px`,g.value.style.height=`${p}px`,g.value.style.top=`${v/s}px`,g.value.style.left=`${h/s}px`,A(v,h)),f.value&&(v<45&&p<800?(f.value.style.top="",f.value.style.bottom="-32px",f.value.style["border-radius"]="4px",w.value="bottom"):v<45?(f.value.style.top="0px",f.value.style["border-radius"]="0px 0px 4px 0",w.value="center"):(f.value.style.top="-32px",f.value.style["border-radius"]="4px",w.value="top"))}function A(t,n){var E;if(S.schemas[0].id===((E=l.state.selectedNode)==null?void 0:E.id))return;const i=x.value;if(!o||!i)return;const r=o.getBoundingClientRect(),{height:a,width:u}=i.getBoundingClientRect(),c=R.value?1:_.value,d=t/c-r.top;let s=n/c-r.left+u/c;s<r.width&&(s=0);const v=t+a,h=n+u;if(Math.abs(d-O)<10&&Math.abs(s-k)<10)return;O=d,k=s;const p=o.scrollTop,N=o.scrollTop+r.height,G=o.scrollLeft,J=o.scrollLeft+r.width,K=t/c,U=v/c,ee=n/c,te=h/c;U>p&&K<N&&te>G&&ee<J||(o.scrollTop=d,o.scrollLeft=s)}function q(){var p;const t=T.value;if(!t||!o)return;const{left:n,top:i}=o.getBoundingClientRect();let r=(p=t.getBoundingClientRect)==null?void 0:p.call(t);!r&&t.nextElementSibling&&(r=t.nextElementSibling.getBoundingClientRect());const{height:a,left:u,top:c,width:d}=r,s=R.value?1:_.value,v=c-i+(o.scrollTop??0)*s,h=u-n+(o.scrollLeft??0)*s;m.value&&(m.value.style.width=`${d/s}px`,m.value.style.height=`${a/s}px`,m.value.style.top=`${v/s}px`,m.value.style.left=`${h/s}px`)}function D(t){const n=window.MutationObserver,i={attributes:!0,childList:!0,subtree:!0};return{mutationObserver:new n(t),observerConfig:i}}function Z(){var i;const t=ne.findSchemaInfoById(S.schemas,((i=l.state.selectedNode)==null?void 0:i.id)??"root");if(!t)return!1;const{parentSchema:n}=t;l.setSelectedNode(n)}function j(t){o=t,o==null||o.addEventListener("scroll",()=>{b()}),$.useResizeObserver(x,()=>{setTimeout(b,150)}),$.useResizeObserver(T,q)}return I({handleInit:j}),(t,n)=>{var i,r,a,u,c;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.withDirectives(e.createElementVNode("div",{ref_key:"selectorRef",ref:g,class:e.normalizeClass(["diygw-selected-widget z-999 pointer-events-none absolute",`${w.value} ${B.value?"transition-all":""}`])},[e.createElementVNode("div",{ref_key:"actionBoxRef",ref:f,class:"diygw-widget-action-box"},[e.createElementVNode("div",ie,e.toDisplayString((r=e.unref(M.pluginManager).component.getConfigByType(((i=e.unref(l).state.selectedNode)==null?void 0:i.type)??""))==null?void 0:r.defaultSchema.label),1),P.value?(e.openBlock(),e.createElementBlock("div",ce,[e.createElementVNode("div",{title:"选择父节点",class:"diygw-widget-action-item pointer-events-auto",onClick:Z},[e.createVNode(e.unref(V),{name:"icon--diygw--upward"})]),e.createElementVNode("div",{title:"复制",class:"diygw-widget-action-item pointer-events-auto",onClick:n[0]||(n[0]=(...d)=>e.unref(l).handleDuplicate&&e.unref(l).handleDuplicate(...d))},[e.createVNode(e.unref(V),{name:"icon--diygw--copy-all-outline-rounded"})]),e.createElementVNode("div",{title:"删除",class:"diygw-widget-action-item pointer-events-auto",onClick:n[1]||(n[1]=(...d)=>e.unref(l).handleDelete&&e.unref(l).handleDelete(...d))},[e.createVNode(e.unref(V),{name:"icon--diygw--delete-outline-rounded"})])])):e.createCommentVNode("",!0)],512)],2),[[e.vShow,C.value&&((a=e.unref(l).state.selectedNode)==null?void 0:a.id)!=="root"]]),e.withDirectives(e.createElementVNode("div",{ref_key:"hoverWidgetRef",ref:m,class:"diygw-hover-widget z-998 pointer-events-none absolute"},null,512),[[e.vShow,e.unref(l).state.hoverNode&&((u=e.unref(l).state.selectedNode)==null?void 0:u.id)!==((c=e.unref(l).state.hoverNode)==null?void 0:c.id)]])],64)}}});module.exports=ae;
1
+ "use strict";const e=require("vue");;/* empty css */const V=require("../../../../../../../ui-kit/base-ui/src/icon/icon.vue.cjs");;/* empty css */;/* empty css */const ne=require("../../../../../../../utils/src/common/data.cjs");require("jsep");const oe=require("../../../../../../../hooks/src/common/element.cjs"),$=require("@vueuse/core"),re=require("../../../../../../../hooks/src/store/index.cjs"),le=require("../../../../../../../hooks/src/designer/useDesignerContext.cjs"),se=require("../../../../../../../hooks/src/designer/usePageManager.cjs"),M=require("../../../../../../../manager/src/pluginManager.cjs");;/* empty css */require("vue-draggable-plus");const ie={class:"diygw-widget-action-item whitespace-nowrap"},ce={key:0,class:"flex items-center"},ae=e.defineComponent({__name:"previewWidgets",setup(ue,{expose:I}){const y=se.usePageManager(),l=le.useDesignerContext(),z=l.props,S=l.pageSchema,g=e.ref(null),m=e.ref(null),f=e.ref(null),C=e.ref(!1),B=e.ref(!0),w=e.ref("top"),{canvasScale:_,disabledZoom:R}=re.useStore();let o=null;const P=e.computed(()=>{const t=l.state.selectedNode;return!(!(t!=null&&t.id)||z.lockDefaultSchemaEdit&&y.defaultComponentIds.value.includes(t==null?void 0:t.id))}),L=t=>{var u,c;const n=t.id;if((u=t.props)!=null&&u.hidden)return null;const i=M.pluginManager.component.getConfigByType(t.type)??null;if(!n||!y.findInstance(n))return null;if(i!=null&&i.defaultSchema.input&&(t==null?void 0:t.noFormItem)!==!0)return(c=y.findInstance(`${n}_formItem`))==null?void 0:c.vnode.el;const s=y.findInstance(n),a=s==null?void 0:s.vnode.el;return!a||!a.getBoundingClientRect?null:a},x=e.computed(()=>l.state.selectedNode?L(l.state.selectedNode):null),T=e.computed(()=>!l.state.hoverNode||l.state.hoverNode.id===S.schemas[0].id?null:L(l.state.hoverNode)),{mutationObserver:H,observerConfig:Q}=D(b),{startTimedQuery:W,stopTimedQuery:F}=oe.useTimedQuery(b);e.watch(()=>x.value,t=>{if(t){C.value=!0,H.observe(t,Q);const n=t.parentNode;n&&(n.addEventListener("dragstart",()=>{B.value=!1,W()}),n.addEventListener("dragend",()=>{B.value=!0,F()})),b()}else C.value=!1});const{mutationObserver:X,observerConfig:Y}=D(q);e.watch(()=>T.value,t=>{t&&(X.observe(t,Y),q())});let O=0,k=0;function b(){var N;const t=x.value;if(!t||!o)return;const{left:n,top:i}=o.getBoundingClientRect();let s=(N=t.getBoundingClientRect)==null?void 0:N.call(t);!s&&t.nextElementSibling&&(s=t.nextElementSibling.getBoundingClientRect());const{height:a,left:u,top:c,width:d}=s,r=R.value?1:_.value,v=c-i+((o==null?void 0:o.scrollTop)??0)*r,h=u-n+((o==null?void 0:o.scrollLeft)??0)*r,p=a/r;g.value&&(g.value.style.width=`${d/r}px`,g.value.style.height=`${p}px`,g.value.style.top=`${v/r}px`,g.value.style.left=`${h/r}px`,A(v,h)),f.value&&(v<45&&p<800?(f.value.style.top="",f.value.style.bottom="-32px",f.value.style["border-radius"]="4px",w.value="bottom"):v<45?(f.value.style.top="0px",f.value.style["border-radius"]="0px 0px 4px 0",w.value="center"):(f.value.style.top="-32px",f.value.style["border-radius"]="4px",w.value="top"))}function A(t,n){var E;if(S.schemas[0].id===((E=l.state.selectedNode)==null?void 0:E.id))return;const i=x.value;if(!o||!i)return;const s=o.getBoundingClientRect(),{height:a,width:u}=i.getBoundingClientRect(),c=R.value?1:_.value,d=t/c-s.top;let r=n/c-s.left+u/c;r<s.width&&(r=0);const v=t+a,h=n+u;if(Math.abs(d-O)<10&&Math.abs(r-k)<10)return;O=d,k=r;const p=o.scrollTop,N=o.scrollTop+s.height,G=o.scrollLeft,J=o.scrollLeft+s.width,K=t/c,U=v/c,ee=n/c,te=h/c;U>p&&K<N&&te>G&&ee<J||(o.scrollTop=d,o.scrollLeft=r)}function q(){var p;const t=T.value;if(!t||!o)return;const{left:n,top:i}=o.getBoundingClientRect();let s=(p=t.getBoundingClientRect)==null?void 0:p.call(t);!s&&t.nextElementSibling&&(s=t.nextElementSibling.getBoundingClientRect());const{height:a,left:u,top:c,width:d}=s,r=R.value?1:_.value,v=c-i+(o.scrollTop??0)*r,h=u-n+(o.scrollLeft??0)*r;m.value&&(m.value.style.width=`${d/r}px`,m.value.style.height=`${a/r}px`,m.value.style.top=`${v/r}px`,m.value.style.left=`${h/r}px`)}function D(t){const n=window.MutationObserver,i={attributes:!0,childList:!0,subtree:!0};return{mutationObserver:new n(t),observerConfig:i}}function Z(){var i;const t=ne.findSchemaInfoById(S.schemas,((i=l.state.selectedNode)==null?void 0:i.id)??"root");if(!t)return!1;const{parentSchema:n}=t;l.setSelectedNode(n)}function j(t){o=t,o==null||o.addEventListener("scroll",()=>{b()}),$.useResizeObserver(x,()=>{setTimeout(b,150)}),$.useResizeObserver(T,q)}return I({handleInit:j}),(t,n)=>{var i,s,a,u,c,d;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.withDirectives(e.createElementVNode("div",{ref_key:"selectorRef",ref:g,class:e.normalizeClass(["diygw-selected-widget z-999 pointer-events-none absolute",`${w.value} ${B.value?"transition-all":""}`])},[e.createElementVNode("div",{ref_key:"actionBoxRef",ref:f,class:"diygw-widget-action-box"},[e.createElementVNode("div",ie,e.toDisplayString((s=e.unref(M.pluginManager).component.getConfigByType(((i=e.unref(l).state.selectedNode)==null?void 0:i.type)??""))==null?void 0:s.defaultSchema.label),1),P.value?(e.openBlock(),e.createElementBlock("div",ce,[e.createElementVNode("div",{title:"选择父节点",class:"diygw-widget-action-item pointer-events-auto",onClick:Z},[e.createVNode(e.unref(V),{name:"icon--diygw--upward"})]),e.createElementVNode("div",{title:"复制",class:"diygw-widget-action-item pointer-events-auto",onClick:n[0]||(n[0]=(...r)=>e.unref(l).handleDuplicate&&e.unref(l).handleDuplicate(...r))},[e.createVNode(e.unref(V),{name:"icon--diygw--copy-all-outline-rounded"})]),e.createElementVNode("div",{title:"删除",class:"diygw-widget-action-item pointer-events-auto",onClick:n[1]||(n[1]=(...r)=>e.unref(l).handleDelete&&e.unref(l).handleDelete(...r))},[e.createVNode(e.unref(V),{name:"icon--diygw--delete-outline-rounded"})])])):e.createCommentVNode("",!0)],512)],2),[[e.vShow,C.value&&!((a=e.unref(l).state.selectedNode)!=null&&a.isHideToolbar)&&((u=e.unref(l).state.selectedNode)==null?void 0:u.id)!=="root"]]),e.withDirectives(e.createElementVNode("div",{ref_key:"hoverWidgetRef",ref:m,class:"diygw-hover-widget z-998 pointer-events-none absolute"},null,512),[[e.vShow,e.unref(l).state.hoverNode&&((c=e.unref(l).state.selectedNode)==null?void 0:c.id)!==((d=e.unref(l).state.hoverNode)==null?void 0:d.id)]])],64)}}});module.exports=ae;