@king-one/form-design 0.0.34 → 0.0.36

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 (32) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/es/index.mjs +10 -9
  3. package/dist/es/src/components/form-panel.vue.mjs +56 -55
  4. package/dist/es/src/components/panel/panel-item.vue.mjs +38 -36
  5. package/dist/es/src/components/panel/widget/array-table.vue2.mjs +31 -29
  6. package/dist/es/src/components/panel/widget/grid.vue2.mjs +33 -31
  7. package/dist/es/src/components/panel/widget/object.vue2.mjs +18 -16
  8. package/dist/es/src/config/index.mjs +30 -7
  9. package/dist/es/src/effects/effect-dict.mjs +1 -0
  10. package/dist/es/src/effects/onEffects.mjs +8 -7
  11. package/dist/es/src/hooks/index.mjs +6 -4
  12. package/dist/es/src/hooks/use-actions.mjs +20 -0
  13. package/dist/es/src/index.mjs +9 -8
  14. package/dist/lib/index.js +1 -1
  15. package/dist/lib/src/components/form-panel.vue.js +2 -2
  16. package/dist/lib/src/components/panel/panel-item.vue.js +1 -1
  17. package/dist/lib/src/components/panel/widget/array-table.vue2.js +1 -1
  18. package/dist/lib/src/components/panel/widget/grid.vue2.js +1 -1
  19. package/dist/lib/src/components/panel/widget/object.vue2.js +1 -1
  20. package/dist/lib/src/config/index.js +2 -2
  21. package/dist/lib/src/effects/effect-dict.js +1 -1
  22. package/dist/lib/src/effects/onEffects.js +1 -1
  23. package/dist/lib/src/hooks/index.js +1 -1
  24. package/dist/lib/src/hooks/use-actions.js +1 -0
  25. package/dist/lib/src/index.js +1 -1
  26. package/dist/theme-chalk/icon.css +1 -1
  27. package/dist/theme-chalk/index.css +1 -1
  28. package/dist/types/src/effects/effect-dict.d.ts +1 -0
  29. package/dist/types/src/effects/onEffects.d.ts +1 -0
  30. package/dist/types/src/hooks/index.d.ts +1 -0
  31. package/dist/types/src/hooks/use-actions.d.ts +6 -0
  32. package/package.json +1 -1
@@ -1,35 +1,37 @@
1
- import { defineComponent as w, toRaw as b, openBlock as l, createElementBlock as g, normalizeClass as p, unref as i, createElementVNode as c, toDisplayString as v, createVNode as f, mergeProps as D, withCtx as m, Fragment as S, renderList as A, createBlock as I, renderSlot as R } from "vue";
2
- import _ from "vuedraggable";
3
- import { message as B, Row as N, Col as u } from "ant-design-vue";
1
+ import { defineComponent as A, toRaw as b, openBlock as l, createElementBlock as g, normalizeClass as p, unref as i, createElementVNode as c, toDisplayString as D, createVNode as m, mergeProps as v, withCtx as f, Fragment as S, renderList as I, createBlock as R, renderSlot as _ } from "vue";
2
+ import B from "vuedraggable";
3
+ import { message as N, Row as $, Col as u } from "ant-design-vue";
4
4
  import "../../../index.mjs";
5
5
  import "../../../internal.mjs";
6
6
  import { useNamespace as h } from "../../../hooks/use-namespace/index.mjs";
7
- import { useInjectDesignContext as $ } from "../../../context/design.mjs";
8
- import E from "../panel-item.vue.mjs";
9
- const V = { class: "form-item" }, J = /* @__PURE__ */ w({
7
+ import { useInjectDesignContext as E } from "../../../context/design.mjs";
8
+ import { useDesignActions as V } from "../../../hooks/use-actions.mjs";
9
+ import j from "../panel-item.vue.mjs";
10
+ const z = { class: "form-item" }, O = /* @__PURE__ */ A({
10
11
  __name: "grid",
11
12
  props: {
12
13
  field: {}
13
14
  },
14
15
  setup(a) {
15
- const { b: x } = h("grid-widget"), { b: k } = h("panel-drag"), d = $();
16
- function y(o, r) {
17
- const n = b(o), { oldIndex: s } = r, e = n[s];
16
+ const { b: x } = h("grid-widget"), { b: k } = h("panel-drag"), s = E(), { dragAddAction: y } = V(s);
17
+ function C(o, r) {
18
+ const n = b(o), { oldIndex: d } = r, e = n[d];
18
19
  if (e) {
19
- const { shared: t } = d;
20
+ const { shared: t } = s;
20
21
  t.draggedContext.key = e.key, t.draggedContext.field = e;
21
22
  }
22
23
  }
23
- function C() {
24
- const { shared: o } = d, { field: r } = o.draggedContext, n = {
24
+ function w() {
25
+ const { shared: o } = s, { field: r } = o.draggedContext, n = {
25
26
  source: r,
26
27
  traget: a.field.children,
27
28
  region: "k-grid"
28
29
  };
29
- if (d.hooks.syncDragAdd.call(n), !d.dragAddResult.every((e) => e)) {
30
+ if (s.hooks.syncDragAdd.call(n), !s.dragAddResult.every((e) => e)) {
30
31
  const e = a.field.children.findIndex((t) => t.id === r.id);
31
- e !== -1 && (a.field.children.splice(e, 1), B.warning("不能将该控件拖拽到明细表中"));
32
+ e !== -1 && (a.field.children.splice(e, 1), N.warning("不能将该控件拖拽到明细表中"));
32
33
  }
34
+ y();
33
35
  }
34
36
  return (o, r) => (l(), g(
35
37
  "div",
@@ -40,27 +42,27 @@ const V = { class: "form-item" }, J = /* @__PURE__ */ w({
40
42
  c(
41
43
  "div",
42
44
  null,
43
- v(o.field.title),
45
+ D(o.field.title),
44
46
  1
45
47
  /* TEXT */
46
48
  ),
47
- f(
48
- i(N),
49
- D(i(u)["x-component-props"], { class: "grid-row" }),
49
+ m(
50
+ i($),
51
+ v(i(u)["x-component-props"], { class: "grid-row" }),
50
52
  {
51
- default: m(() => [
53
+ default: f(() => [
52
54
  (l(!0), g(
53
55
  S,
54
56
  null,
55
- A(o.field.children, (n, s) => {
57
+ I(o.field.children, (n, d) => {
56
58
  var e;
57
- return l(), I(i(u), {
58
- key: s,
59
+ return l(), R(i(u), {
60
+ key: d,
59
61
  span: ((e = n["x-component-props"]) == null ? void 0 : e.span) || 12,
60
62
  class: "grid-col"
61
63
  }, {
62
- default: m(() => [
63
- f(i(_), {
64
+ default: f(() => [
65
+ m(i(B), {
64
66
  list: n.children,
65
67
  group: { name: "form" },
66
68
  animation: 300,
@@ -68,13 +70,13 @@ const V = { class: "form-item" }, J = /* @__PURE__ */ w({
68
70
  class: p(i(k)()),
69
71
  "item-key": "id",
70
72
  "chosen-class": "choose",
71
- onStart: (t) => y(n.children, t),
72
- onAdd: C
73
+ onStart: (t) => C(n.children, t),
74
+ onAdd: w
73
75
  }, {
74
- item: m(({ element: t }) => [
75
- c("div", V, [
76
- R(o.$slots, `panel-${t.key}`, {}, () => [
77
- f(i(E), {
76
+ item: f(({ element: t }) => [
77
+ c("div", z, [
78
+ _(o.$slots, `panel-${t.key}`, {}, () => [
79
+ m(i(j), {
78
80
  field: t,
79
81
  space: n.children
80
82
  }, null, 8, ["field", "space"])
@@ -113,5 +115,5 @@ const V = { class: "form-item" }, J = /* @__PURE__ */ w({
113
115
  }
114
116
  });
115
117
  export {
116
- J as default
118
+ O as default
117
119
  };
@@ -1,27 +1,28 @@
1
- import { defineComponent as p, toRaw as u, openBlock as h, createElementBlock as k, createElementVNode as r, toDisplayString as x, createVNode as c, unref as l, normalizeClass as y, withCtx as C, renderSlot as b } from "vue";
1
+ import { defineComponent as u, toRaw as h, openBlock as A, createElementBlock as k, createElementVNode as r, toDisplayString as x, createVNode as c, unref as l, normalizeClass as y, withCtx as C, renderSlot as b } from "vue";
2
2
  import v from "vuedraggable";
3
3
  import "../../../internal.mjs";
4
4
  import "../../../index.mjs";
5
- import { message as A } from "ant-design-vue";
5
+ import { message as D } from "ant-design-vue";
6
6
  import { useInjectDesignContext as w } from "../../../context/design.mjs";
7
- import { useNamespace as D } from "../../../hooks/use-namespace/index.mjs";
8
- import I from "../panel-item.vue.mjs";
9
- const S = { class: "form-item" }, q = /* @__PURE__ */ p({
7
+ import { useNamespace as I } from "../../../hooks/use-namespace/index.mjs";
8
+ import { useDesignActions as S } from "../../../hooks/use-actions.mjs";
9
+ import j from "../panel-item.vue.mjs";
10
+ const N = { class: "form-item" }, H = /* @__PURE__ */ u({
10
11
  inheritAttrs: !1,
11
12
  __name: "object",
12
13
  props: {
13
14
  field: {}
14
15
  },
15
16
  setup(s) {
16
- const i = w(), { b: f } = D("panel-drag");
17
- function m(e, t) {
18
- const n = u(e), { oldIndex: a } = t, o = n[a];
17
+ const i = w(), { b: f } = I("panel-drag"), { dragAddAction: m } = S(i);
18
+ function g(e, t) {
19
+ const n = h(e), { oldIndex: a } = t, o = n[a];
19
20
  if (o) {
20
21
  const { shared: d } = i;
21
22
  d.draggedContext.key = o.key, d.draggedContext.field = o;
22
23
  }
23
24
  }
24
- function g() {
25
+ function p() {
25
26
  console.log("dragAdd");
26
27
  const { shared: e } = i, { field: t } = e.draggedContext, n = {
27
28
  source: t,
@@ -30,10 +31,11 @@ const S = { class: "form-item" }, q = /* @__PURE__ */ p({
30
31
  };
31
32
  if (i.hooks.syncDragAdd.call(n), !i.dragAddResult.every((o) => o)) {
32
33
  const o = s.field.children.findIndex((d) => d.id === t.id);
33
- o !== -1 && (s.field.children.splice(o, 1), A.warning("不能将该控件拖拽到对象容器中"));
34
+ o !== -1 && (s.field.children.splice(o, 1), D.warning("不能将该控件拖拽到对象容器中"));
34
35
  }
36
+ m();
35
37
  }
36
- return (e, t) => (h(), k("div", null, [
38
+ return (e, t) => (A(), k("div", null, [
37
39
  r(
38
40
  "div",
39
41
  null,
@@ -50,13 +52,13 @@ const S = { class: "form-item" }, q = /* @__PURE__ */ p({
50
52
  sort: !0,
51
53
  "item-key": "id",
52
54
  "chosen-class": "choose",
53
- onStart: t[0] || (t[0] = (n) => m(e.field.children, n)),
54
- onAdd: g
55
+ onStart: t[0] || (t[0] = (n) => g(e.field.children, n)),
56
+ onAdd: p
55
57
  }, {
56
58
  item: C(({ element: n }) => [
57
- r("div", S, [
59
+ r("div", N, [
58
60
  b(e.$slots, `panel-${n.key}`, {}, () => [
59
- c(l(I), {
61
+ c(l(j), {
60
62
  field: n,
61
63
  space: e.field.children
62
64
  }, null, 8, ["field", "space"])
@@ -78,5 +80,5 @@ const S = { class: "form-item" }, q = /* @__PURE__ */ p({
78
80
  }
79
81
  });
80
82
  export {
81
- q as default
83
+ H as default
82
84
  };
@@ -1,5 +1,5 @@
1
1
  import { valueTypeMap as e } from "../types.mjs";
2
- const o = {
2
+ const r = {
3
3
  name: "布局组件",
4
4
  key: "layout",
5
5
  widget: [
@@ -15,7 +15,7 @@ const o = {
15
15
  "x-decorator": "Void"
16
16
  }
17
17
  ]
18
- }, r = {
18
+ }, o = {
19
19
  name: "基础组件",
20
20
  key: "basic",
21
21
  widget: [
@@ -202,7 +202,15 @@ const o = {
202
202
  },
203
203
  name: "date",
204
204
  "x-component": "DateRange",
205
+ "x-validator": [
206
+ {
207
+ type: "array",
208
+ required: !0,
209
+ message: "请选择日期范围"
210
+ }
211
+ ],
205
212
  "x-component-props": {
213
+ format: "YYYY-MM-DD HH:mm",
206
214
  valueFormat: "YYYY-MM-DD HH:mm",
207
215
  showTime: { format: "HH:mm", minuteStep: 30 },
208
216
  placeholder: [
@@ -217,8 +225,10 @@ const o = {
217
225
  name: "hours",
218
226
  "x-component": "HalfInputNumber",
219
227
  "x-component-props": {
220
- placeholder: "请输入"
228
+ placeholder: "请输入",
229
+ addonAfter: "小时"
221
230
  },
231
+ required: !0,
222
232
  "x-validator": [
223
233
  {
224
234
  validator: `{{const sourceValue = $parent.date
@@ -236,6 +246,11 @@ const o = {
236
246
  return true
237
247
  }
238
248
  }}`
249
+ },
250
+ {
251
+ type: "number",
252
+ min: 0.5,
253
+ message: "必须大于0.5小时"
239
254
  }
240
255
  ]
241
256
  }
@@ -247,9 +262,17 @@ const o = {
247
262
  name: "total",
248
263
  "x-component": "HalfInputNumber",
249
264
  "x-component-props": {
250
- placeholder: "请输入"
265
+ placeholder: "请输入",
266
+ disabled: !0,
267
+ addonAfter: "小时"
251
268
  },
252
- required: !0,
269
+ "x-validator": [
270
+ {
271
+ type: "number",
272
+ min: 0.5,
273
+ message: "必须大于0.5小时"
274
+ }
275
+ ],
253
276
  "x-reactions": {
254
277
  dependencies: [
255
278
  {
@@ -425,8 +448,8 @@ const o = {
425
448
  // }
426
449
  ];
427
450
  export {
428
- r as BaseSchema,
451
+ o as BaseSchema,
429
452
  a as ExtendSchema,
430
- o as LayoutSchema,
453
+ r as LayoutSchema,
431
454
  n as tempSchema
432
455
  };
@@ -1,4 +1,5 @@
1
1
  const n = {
2
+ on_DESIGN_CHANGE: "onDesignChange",
2
3
  ON_DESIGN_FIELD_CHANGE: "onDesignFieldChange",
3
4
  ON_DESIGN_INIT: "onDesignInit"
4
5
  };
@@ -1,12 +1,13 @@
1
- import { createEffectHook as f } from "./effective.mjs";
1
+ import { createEffectHook as D } from "./effective.mjs";
2
2
  import { DesignEffectDict as e } from "./effect-dict.mjs";
3
- function t(n) {
4
- return f(n, (...o) => (i) => {
5
- i(...o);
3
+ function n(o) {
4
+ return D(o, (...t) => (i) => {
5
+ i(...t);
6
6
  });
7
7
  }
8
- const D = t(e.ON_DESIGN_INIT), E = t(e.ON_DESIGN_FIELD_CHANGE);
8
+ const r = n(e.ON_DESIGN_INIT), E = n(e.on_DESIGN_CHANGE), s = n(e.ON_DESIGN_FIELD_CHANGE);
9
9
  export {
10
- E as onDesignFieldChange,
11
- D as onDesignInit
10
+ E as onDesignChange,
11
+ s as onDesignFieldChange,
12
+ r as onDesignInit
12
13
  };
@@ -1,7 +1,9 @@
1
- import { defaultNamespace as s, namespaceContextKey as m, useGetDerivedNamespace as p, useNamespace as t } from "./use-namespace/index.mjs";
1
+ import { defaultNamespace as s, namespaceContextKey as t, useGetDerivedNamespace as m, useNamespace as o } from "./use-namespace/index.mjs";
2
+ import { useDesignActions as c } from "./use-actions.mjs";
2
3
  export {
3
4
  s as defaultNamespace,
4
- m as namespaceContextKey,
5
- p as useGetDerivedNamespace,
6
- t as useNamespace
5
+ t as namespaceContextKey,
6
+ c as useDesignActions,
7
+ m as useGetDerivedNamespace,
8
+ o as useNamespace
7
9
  };
@@ -0,0 +1,20 @@
1
+ import { DesignEffectDict as t } from "../effects/effect-dict.mjs";
2
+ function s(n) {
3
+ const e = () => {
4
+ n.notify(t.on_DESIGN_CHANGE);
5
+ };
6
+ return {
7
+ dragAddAction: () => {
8
+ e();
9
+ },
10
+ deleteFieldAction: () => {
11
+ e();
12
+ },
13
+ clearFieldsAction: () => {
14
+ n.clearFields(), e();
15
+ }
16
+ };
17
+ }
18
+ export {
19
+ s as useDesignActions
20
+ };
@@ -2,19 +2,20 @@ import "./components/base/Carousel.vue2.mjs";
2
2
  import "./components/panel/panel-item.vue2.mjs";
3
3
  import { useInjectDesignContext as i } from "./context/design.mjs";
4
4
  import { default as p } from "./components/form-desgin.mjs";
5
- import { CreateFormDesign as x } from "./core/index.mjs";
5
+ import { CreateFormDesign as g } from "./core/index.mjs";
6
6
  import "./components/index.mjs";
7
- import { BaseSchema as g, ExtendSchema as c, LayoutSchema as h, tempSchema as D } from "./config/index.mjs";
8
- import { onDesignFieldChange as d, onDesignInit as u } from "./effects/onEffects.mjs";
7
+ import { BaseSchema as f, ExtendSchema as h, LayoutSchema as D, tempSchema as c } from "./config/index.mjs";
8
+ import { onDesignChange as S, onDesignFieldChange as d, onDesignInit as u } from "./effects/onEffects.mjs";
9
9
  import "./utils/index.mjs";
10
10
  export {
11
- g as BaseSchema,
12
- x as CreateFormDesign,
13
- c as ExtendSchema,
11
+ f as BaseSchema,
12
+ g as CreateFormDesign,
13
+ h as ExtendSchema,
14
14
  p as FormDesign,
15
- h as LayoutSchema,
15
+ D as LayoutSchema,
16
+ S as onDesignChange,
16
17
  d as onDesignFieldChange,
17
18
  u as onDesignInit,
18
- D as tempSchema,
19
+ c as tempSchema,
19
20
  i as useInjectDesignContext
20
21
  };
package/dist/lib/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./src/index.js");const n=require("./src/components/base/Carousel.vue.js"),r=require("./src/components/panel/panel-item.vue.js"),s=require("./src/context/design.js"),o=require("./src/components/form-desgin.js"),i=require("./src/core/index.js"),u=require("./src/components/props/form-config.vue.js"),a=require("./src/utils/schema.js"),e=require("./src/config/index.js"),t=require("./src/effects/onEffects.js");exports.Carousel=n.default;exports.FormPanelItem=r.default;exports.useInjectDesignContext=s.useInjectDesignContext;exports.FormDesign=o.default;exports.CreateFormDesign=i.CreateFormDesign;exports.FormConfig=u.default;exports.jsonToSchema=a.jsonToSchema;exports.BaseSchema=e.BaseSchema;exports.ExtendSchema=e.ExtendSchema;exports.LayoutSchema=e.LayoutSchema;exports.tempSchema=e.tempSchema;exports.onDesignFieldChange=t.onDesignFieldChange;exports.onDesignInit=t.onDesignInit;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./src/index.js");const t=require("./src/components/base/Carousel.vue.js"),r=require("./src/components/panel/panel-item.vue.js"),s=require("./src/context/design.js"),o=require("./src/components/form-desgin.js"),i=require("./src/core/index.js"),u=require("./src/components/props/form-config.vue.js"),a=require("./src/utils/schema.js"),e=require("./src/config/index.js"),n=require("./src/effects/onEffects.js");exports.Carousel=t.default;exports.FormPanelItem=r.default;exports.useInjectDesignContext=s.useInjectDesignContext;exports.FormDesign=o.default;exports.CreateFormDesign=i.CreateFormDesign;exports.FormConfig=u.default;exports.jsonToSchema=a.jsonToSchema;exports.BaseSchema=e.BaseSchema;exports.ExtendSchema=e.ExtendSchema;exports.LayoutSchema=e.LayoutSchema;exports.tempSchema=e.tempSchema;exports.onDesignChange=n.onDesignChange;exports.onDesignFieldChange=n.onDesignFieldChange;exports.onDesignInit=n.onDesignInit;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../internal.js");const s=require("ant-design-vue"),k=require("vuedraggable"),f=require("../context/design.js");require("./panel/panel-item.vue2.js");const x=require("./base/json-preview.vue.js");require("./index.js");const w=require("../hooks/use-namespace/index.js"),p=require("./form-icon.vue2.js"),b=require("./panel/panel-item.vue.js"),E={class:"left"},S={class:"right"},q={class:"content-panel"},y={key:0,class:"prompt"},D={class:"form-item"},z={class:"content-editor"},F=e.defineComponent({name:"FormPanel",__name:"form-panel",setup(I){const i=e.ref({}),{isDrag:g}=f.useInjectDragContext(),r=e.ref(!1),n=f.useInjectDesignContext(),{fields:l}=n;function _(){r.value=!r.value,e.nextTick(()=>{i.value=n.getFormSchema()})}const{b:v,e:d,em:u}=w.useNamespace("panel");function C(a,t){const o=e.toRaw(a),{oldIndex:V}=t,c=o[V];if(c){const{shared:m}=n;m.draggedContext.key=c.key,m.draggedContext.field=c}}async function h(){const{shared:a}=n,{field:t}=a.draggedContext,o={source:t,traget:l.value,region:"form-panel"};n.hooks.syncDragAdd.call(o),n.setCheckedField(t)}function N(){s.Modal.confirm({title:"提示?",content:"确定要清空所有字段吗?",okText:"确定",cancelText:"取消",onOk(){n.clearFields()},onCancel(){console.log("Cancel")}})}return(a,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(v)())},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(d)("toolbar"))},[e.createElementVNode("div",E,[e.createVNode(e.unref(s.Tooltip),{placement:"bottom"},{title:e.withCtx(()=>t[1]||(t[1]=[e.createElementVNode("span",null,"全部删除",-1)])),default:e.withCtx(()=>[e.createVNode(e.unref(p.default),{name:"delete1",class:e.normalizeClass(e.unref(u)("toolbar","icon")),size:18,onClick:N},null,8,["class"])]),_:1}),e.createVNode(e.unref(s.Tooltip),{placement:"bottom"},{title:e.withCtx(()=>t[2]||(t[2]=[e.createElementVNode("span",null,"查看JSON Schema",-1)])),default:e.withCtx(()=>[e.createVNode(e.unref(p.default),{name:"code",class:e.normalizeClass(e.unref(u)("toolbar","icon")),size:18,onClick:_},null,8,["class"])]),_:1}),e.createCommentVNode(` <FormIcon name="desktop" />
2
- <FormIcon name="mobile" /> `)]),e.createElementVNode("div",S,[e.renderSlot(a.$slots,"toolbar")])],2),e.createCommentVNode(' ref="contentTelRef" '),e.createElementVNode("div",{class:e.normalizeClass(e.unref(d)("content"))},[e.withDirectives(e.createElementVNode("div",q,[!e.unref(g)&&e.unref(l).length===0?(e.openBlock(),e.createElementBlock("div",y," 👈 请在左侧选择控件并拖至此处 ")):e.createCommentVNode("v-if",!0),e.createVNode(e.unref(s.Form),{autocomplete:"off",class:"design-from","label-align":"left"},{default:e.withCtx(()=>[e.createVNode(e.unref(k),{class:"drag-from",list:e.unref(l),group:{name:"form"},animation:300,sort:!0,"item-key":"id","chosen-class":"choose",onStart:t[0]||(t[0]=o=>C(e.unref(l),o)),onAdd:h},{item:e.withCtx(({element:o})=>[e.createElementVNode("div",D,[e.renderSlot(a.$slots,`panel-${o.key}`,{},()=>[e.createVNode(b.default,{field:o,space:e.unref(l)},null,8,["field","space"])])])]),_:3},8,["list"])]),_:3})],512),[[e.vShow,!r.value]]),e.withDirectives(e.createElementVNode("div",z,[e.createVNode(x.default,{data:i.value},null,8,["data"])],512),[[e.vShow,r.value]])],2)],2))}});exports.default=F;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../internal.js");const l=require("ant-design-vue"),w=require("vuedraggable"),f=require("../context/design.js");require("./panel/panel-item.vue2.js");const b=require("./base/json-preview.vue.js");require("./index.js");const q=require("../hooks/use-actions.js"),E=require("../hooks/use-namespace/index.js"),g=require("./form-icon.vue2.js"),S=require("./panel/panel-item.vue.js"),D={class:"left"},y={class:"right"},A={class:"content-panel"},z={key:0,class:"prompt"},F={class:"form-item"},I={class:"content-editor"},T=e.defineComponent({name:"FormPanel",__name:"form-panel",setup(j){const i=e.ref({}),{isDrag:p}=f.useInjectDragContext(),r=e.ref(!1),o=f.useInjectDesignContext(),{fields:s}=o,{dragAddAction:_,clearFieldsAction:v}=q.useDesignActions(o);function C(){r.value=!r.value,e.nextTick(()=>{i.value=o.getFormSchema()})}const{b:h,e:d,em:u}=E.useNamespace("panel");function N(a,t){const n=e.toRaw(a),{oldIndex:x}=t,c=n[x];if(c){const{shared:m}=o;m.draggedContext.key=c.key,m.draggedContext.field=c}}async function V(){const{shared:a}=o,{field:t}=a.draggedContext,n={source:t,traget:s.value,region:"form-panel"};o.hooks.syncDragAdd.call(n),o.setCheckedField(t),_()}function k(){l.Modal.confirm({title:"提示?",content:"确定要清空所有字段吗?",okText:"确定",cancelText:"取消",onOk(){v()},onCancel(){console.log("Cancel")}})}return(a,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(h)())},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(d)("toolbar"))},[e.createElementVNode("div",D,[e.createVNode(e.unref(l.Tooltip),{placement:"bottom"},{title:e.withCtx(()=>t[1]||(t[1]=[e.createElementVNode("span",null,"全部删除",-1)])),default:e.withCtx(()=>[e.createVNode(e.unref(g.default),{name:"delete1",class:e.normalizeClass(e.unref(u)("toolbar","icon")),size:18,onClick:k},null,8,["class"])]),_:1}),e.createVNode(e.unref(l.Tooltip),{placement:"bottom"},{title:e.withCtx(()=>t[2]||(t[2]=[e.createElementVNode("span",null,"查看JSON Schema",-1)])),default:e.withCtx(()=>[e.createVNode(e.unref(g.default),{name:"code",class:e.normalizeClass(e.unref(u)("toolbar","icon")),size:18,onClick:C},null,8,["class"])]),_:1}),e.createCommentVNode(` <FormIcon name="desktop" />
2
+ <FormIcon name="mobile" /> `)]),e.createElementVNode("div",y,[e.renderSlot(a.$slots,"toolbar")])],2),e.createCommentVNode(' ref="contentTelRef" '),e.createElementVNode("div",{class:e.normalizeClass(e.unref(d)("content"))},[e.withDirectives(e.createElementVNode("div",A,[!e.unref(p)&&e.unref(s).length===0?(e.openBlock(),e.createElementBlock("div",z," 👈 请在左侧选择控件并拖至此处 ")):e.createCommentVNode("v-if",!0),e.createVNode(e.unref(l.Form),{autocomplete:"off",class:"design-from","label-align":"left"},{default:e.withCtx(()=>[e.createVNode(e.unref(w),{class:"drag-from",list:e.unref(s),group:{name:"form"},animation:300,sort:!0,"item-key":"id","chosen-class":"choose",onStart:t[0]||(t[0]=n=>N(e.unref(s),n)),onAdd:V},{item:e.withCtx(({element:n})=>[e.createElementVNode("div",F,[e.renderSlot(a.$slots,`panel-${n.key}`,{},()=>[e.createVNode(S.default,{field:n,space:e.unref(s)},null,8,["field","space"])])])]),_:3},8,["list"])]),_:3})],512),[[e.vShow,!r.value]]),e.withDirectives(e.createElementVNode("div",I,[e.createVNode(b.default,{data:i.value},null,8,["data"])],512),[[e.vShow,r.value]])],2)],2))}});exports.default=T;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),v=require("ant-design-vue");require("../../internal.js");const N=require("../../context/design.js");require("../index.js");const V=require("../../hooks/use-namespace/index.js"),c=require("../form-icon.vue2.js"),_={key:2,class:"icons"},z=e.defineComponent({__name:"panel-item",props:{field:{},space:{},hideTitle:{type:Boolean}},setup(C){const l=C,{b:y,e:d,m:u}=V.useNamespace("panel-item"),r=N.useInjectDesignContext(),{checkedField:s,shared:B}=r;function h(t,n={}){return Object.entries(t).forEach(([i,o])=>{typeof o=="function"?n[i]=e.defineAsyncComponent(o):n[i]=o}),n}const f=h(B.panelWidgets);function g(t){r.setCheckedField(t)}const a=e.computed(()=>{var n,i;return((i=(n=l.field["x-design-props"])==null?void 0:n.validate)==null?void 0:i.status)==="error"}),b=e.computed(()=>{var n;const t=[y()];return((n=s.value)==null?void 0:n.id)===l.field.id&&t.push(u("active")),a.value&&t.push(u("error")),t});function q(){if(!r.hooks.beforeDelete.call(l.field))return;const n=l.space.findIndex(i=>i.id===l.field.id);n!==-1&&l.space.splice(n,1)}return(t,n)=>{var i,o,p,m,k;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(b.value),onClick:n[0]||(n[0]=e.withModifiers(D=>g(t.field),["stop"]))},[e.unref(f)[t.field.key]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(f)[t.field.key]),{key:0,"hide-title":t.hideTitle,field:t.field},null,8,["hide-title","field"])):(e.openBlock(),e.createBlock(e.unref(v.FormItem),{key:1,class:e.normalizeClass(e.unref(d)("form")),label:t.field.title},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(e.unref(d)("error"))}," 未定义组件 ",2)]),_:1},8,["class","label"])),((i=e.unref(s))==null?void 0:i.id)===t.field.id||a.value?(e.openBlock(),e.createElementBlock("div",_,[((o=e.unref(s))==null?void 0:o.id)===t.field.id?(e.openBlock(),e.createBlock(e.unref(c.default),{key:0,name:"copy",class:"panel-icon",size:15})):e.createCommentVNode("v-if",!0),((p=e.unref(s))==null?void 0:p.id)===t.field.id?(e.openBlock(),e.createBlock(e.unref(c.default),{key:1,name:"delete1",class:"panel-icon",size:15,onClick:q})):e.createCommentVNode("v-if",!0),e.createVNode(e.unref(v.Tooltip),{title:(k=(m=t.field["x-design-props"])==null?void 0:m.validate)==null?void 0:k.message,color:"pink"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createBlock(e.unref(c.default),{key:0,name:"exclamation-circle-filled",size:13,class:"panel-exclamation-icon"})):e.createCommentVNode("v-if",!0)]),_:1},8,["title"])])):e.createCommentVNode("v-if",!0)],2)}}});exports.default=z;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),v=require("ant-design-vue");require("../../internal.js");const V=require("../../context/design.js");require("../index.js");require("../../hooks/index.js");const _=require("../../hooks/use-namespace/index.js"),c=require("../form-icon.vue2.js"),z=require("../../hooks/use-actions.js"),D={key:2,class:"icons"},I=e.defineComponent({__name:"panel-item",props:{field:{},space:{},hideTitle:{type:Boolean}},setup(C){const l=C,{b:y,e:d,m:u}=_.useNamespace("panel-item"),s=V.useInjectDesignContext(),{checkedField:r,shared:B}=s,{deleteFieldAction:h}=z.useDesignActions(s);function g(t,n={}){return Object.entries(t).forEach(([i,o])=>{typeof o=="function"?n[i]=e.defineAsyncComponent(o):n[i]=o}),n}const f=g(B.panelWidgets);function q(t){s.setCheckedField(t),h()}const a=e.computed(()=>{var n,i;return((i=(n=l.field["x-design-props"])==null?void 0:n.validate)==null?void 0:i.status)==="error"}),b=e.computed(()=>{var n;const t=[y()];return((n=r.value)==null?void 0:n.id)===l.field.id&&t.push(u("active")),a.value&&t.push(u("error")),t});function N(){if(!s.hooks.beforeDelete.call(l.field))return;const n=l.space.findIndex(i=>i.id===l.field.id);n!==-1&&l.space.splice(n,1)}return(t,n)=>{var i,o,p,m,k;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(b.value),onClick:n[0]||(n[0]=e.withModifiers(A=>q(t.field),["stop"]))},[e.unref(f)[t.field.key]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(f)[t.field.key]),{key:0,"hide-title":t.hideTitle,field:t.field},null,8,["hide-title","field"])):(e.openBlock(),e.createBlock(e.unref(v.FormItem),{key:1,class:e.normalizeClass(e.unref(d)("form")),label:t.field.title},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(e.unref(d)("error"))}," 未定义组件 ",2)]),_:1},8,["class","label"])),((i=e.unref(r))==null?void 0:i.id)===t.field.id||a.value?(e.openBlock(),e.createElementBlock("div",D,[((o=e.unref(r))==null?void 0:o.id)===t.field.id?(e.openBlock(),e.createBlock(e.unref(c.default),{key:0,name:"copy",class:"panel-icon",size:15})):e.createCommentVNode("v-if",!0),((p=e.unref(r))==null?void 0:p.id)===t.field.id?(e.openBlock(),e.createBlock(e.unref(c.default),{key:1,name:"delete1",class:"panel-icon",size:15,onClick:N})):e.createCommentVNode("v-if",!0),e.createVNode(e.unref(v.Tooltip),{title:(k=(m=t.field["x-design-props"])==null?void 0:m.validate)==null?void 0:k.message,color:"pink"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createBlock(e.unref(c.default),{key:0,name:"exclamation-circle-filled",size:13,class:"panel-exclamation-icon"})):e.createCommentVNode("v-if",!0)]),_:1},8,["title"])])):e.createCommentVNode("v-if",!0)],2)}}});exports.default=I;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),u=require("vuedraggable");require("../../../index.js");require("../../../internal.js");const g=require("ant-design-vue"),f=require("../../../context/design.js"),m=require("../../../hooks/use-namespace/index.js"),v=require("../panel-item.vue.js"),b={class:"array-table-box"},y={class:"array-table-drag"},p={class:"form-item"},h={class:"table-item"},N={class:"array-table-drag-header"},V={class:"array-table-drag-content"},_=e.defineComponent({name:"ArrayTable",__name:"array-table",props:{field:{}},setup(i){const n=f.useInjectDesignContext(),{b:l}=m.useNamespace("array-table");function o(){const{shared:a}=n,{field:t}=a.draggedContext,d={source:t,traget:i.field.children,region:"k-array-card"};if(n.hooks.syncDragAdd.call(d),!n.dragAddResult.every(r=>r)){const r=i.field.children.findIndex(c=>c.id===t.id);r!==-1&&(i.field.children.splice(r,1),g.message.warning("不能将该控件拖拽到列表容器中"))}const s=i.field.children.find(r=>r.id===t.id);if(s){const r=s["x-decorator-props"]||{};s["x-decorator-props"]={...r,hideTitle:!0}}}return(a,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(l)())},[t[1]||(t[1]=e.createElementVNode("div",null,"明细列表",-1)),e.createElementVNode("div",b,[t[0]||(t[0]=e.createElementVNode("div",{class:"array-table-left"},[e.createElementVNode("div",{class:"array-table-drag-header"}," 表头 "),e.createElementVNode("div",{class:"array-table-drag-content"})],-1)),e.createElementVNode("div",y,[e.createVNode(e.unref(u),{class:"widget-drag",list:a.field.children,group:{name:"form",direction:"vertical",removeCloneOnHide:!1},animation:300,sort:!0,"item-key":"id","drag-class":"table-item-drag-class",onAdd:o},{item:e.withCtx(({element:d})=>[e.createElementVNode("div",p,[e.renderSlot(a.$slots,`panel-${d.key}`,{},()=>[e.createElementVNode("div",h,[e.createElementVNode("div",N,e.toDisplayString(d.title),1),e.createElementVNode("div",V,[e.createVNode(e.unref(v.default),{field:d,space:a.field.children,"hide-title":""},null,8,["field","space"])])])])])]),_:3},8,["list"])])]),t[2]||(t[2]=e.createElementVNode("div",{style:{color:"#c0bebe","text-align":"center",width:"90%",padding:"5px"}}," ☝ 拖拽控件到明细列表 ",-1))],2))}});exports.default=_;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),g=require("vuedraggable");require("../../../index.js");require("../../../internal.js");const f=require("ant-design-vue"),m=require("../../../context/design.js"),v=require("../../../hooks/use-namespace/index.js"),b=require("../../../hooks/use-actions.js"),y=require("../panel-item.vue.js"),p={class:"array-table-box"},h={class:"array-table-drag"},N={class:"form-item"},V={class:"table-item"},_={class:"array-table-drag-header"},E={class:"array-table-drag-content"},x=e.defineComponent({name:"ArrayTable",__name:"array-table",props:{field:{}},setup(n){const i=m.useInjectDesignContext(),{b:l}=v.useNamespace("array-table"),{dragAddAction:o}=b.useDesignActions(i);function c(){const{shared:a}=i,{field:t}=a.draggedContext,d={source:t,traget:n.field.children,region:"k-array-card"};if(i.hooks.syncDragAdd.call(d),!i.dragAddResult.every(r=>r)){const r=n.field.children.findIndex(u=>u.id===t.id);r!==-1&&(n.field.children.splice(r,1),f.message.warning("不能将该控件拖拽到列表容器中"))}const s=n.field.children.find(r=>r.id===t.id);if(s){const r=s["x-decorator-props"]||{};s["x-decorator-props"]={...r,hideTitle:!0}}o()}return(a,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(l)())},[t[1]||(t[1]=e.createElementVNode("div",null,"明细列表",-1)),e.createElementVNode("div",p,[t[0]||(t[0]=e.createElementVNode("div",{class:"array-table-left"},[e.createElementVNode("div",{class:"array-table-drag-header"}," 表头 "),e.createElementVNode("div",{class:"array-table-drag-content"})],-1)),e.createElementVNode("div",h,[e.createVNode(e.unref(g),{class:"widget-drag",list:a.field.children,group:{name:"form",direction:"vertical",removeCloneOnHide:!1},animation:300,sort:!0,"item-key":"id","drag-class":"table-item-drag-class",onAdd:c},{item:e.withCtx(({element:d})=>[e.createElementVNode("div",N,[e.renderSlot(a.$slots,`panel-${d.key}`,{},()=>[e.createElementVNode("div",V,[e.createElementVNode("div",_,e.toDisplayString(d.title),1),e.createElementVNode("div",E,[e.createVNode(e.unref(y.default),{field:d,space:a.field.children,"hide-title":""},null,8,["field","space"])])])])])]),_:3},8,["list"])])]),t[2]||(t[2]=e.createElementVNode("div",{style:{color:"#c0bebe","text-align":"center",width:"90%",padding:"5px"}}," ☝ 拖拽控件到明细列表 ",-1))],2))}});exports.default=x;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),p=require("vuedraggable"),l=require("ant-design-vue");require("../../../index.js");require("../../../internal.js");const c=require("../../../hooks/use-namespace/index.js"),h=require("../../../context/design.js"),x=require("../panel-item.vue.js"),k={class:"form-item"},C=e.defineComponent({__name:"grid",props:{field:{}},setup(a){const{b:u}=c.useNamespace("grid-widget"),{b:g}=c.useNamespace("panel-drag"),o=h.useInjectDesignContext();function f(s,i){const r=e.toRaw(s),{oldIndex:d}=i,t=r[d];if(t){const{shared:n}=o;n.draggedContext.key=t.key,n.draggedContext.field=t}}function m(){const{shared:s}=o,{field:i}=s.draggedContext,r={source:i,traget:a.field.children,region:"k-grid"};if(o.hooks.syncDragAdd.call(r),!o.dragAddResult.every(t=>t)){const t=a.field.children.findIndex(n=>n.id===i.id);t!==-1&&(a.field.children.splice(t,1),l.message.warning("不能将该控件拖拽到明细表中"))}}return(s,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(u)())},[e.createElementVNode("div",null,e.toDisplayString(s.field.title),1),e.createVNode(e.unref(l.Row),e.mergeProps(e.unref(l.Col)["x-component-props"],{class:"grid-row"}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.field.children,(r,d)=>{var t;return e.openBlock(),e.createBlock(e.unref(l.Col),{key:d,span:((t=r["x-component-props"])==null?void 0:t.span)||12,class:"grid-col"},{default:e.withCtx(()=>[e.createVNode(e.unref(p),{list:r.children,group:{name:"form"},animation:300,sort:!0,class:e.normalizeClass(e.unref(g)()),"item-key":"id","chosen-class":"choose",onStart:n=>f(r.children,n),onAdd:m},{item:e.withCtx(({element:n})=>[e.createElementVNode("div",k,[e.renderSlot(s.$slots,`panel-${n.key}`,{},()=>[e.createVNode(e.unref(x.default),{field:n,space:r.children},null,8,["field","space"])])])]),_:2},1032,["list","class","onStart"])]),_:2},1032,["span"])}),128))]),_:3},16),i[0]||(i[0]=e.createElementVNode("div",{style:{color:"#c0bebe","text-align":"center",width:"90%",padding:"5px"}}," ☝ 拖拽控件到容器内部 ",-1))],2))}});exports.default=C;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),h=require("vuedraggable"),a=require("ant-design-vue");require("../../../index.js");require("../../../internal.js");const c=require("../../../hooks/use-namespace/index.js"),x=require("../../../context/design.js"),k=require("../../../hooks/use-actions.js"),C=require("../panel-item.vue.js"),y={class:"form-item"},_=e.defineComponent({__name:"grid",props:{field:{}},setup(l){const{b:u}=c.useNamespace("grid-widget"),{b:g}=c.useNamespace("panel-drag"),o=x.useInjectDesignContext(),{dragAddAction:f}=k.useDesignActions(o);function m(s,i){const r=e.toRaw(s),{oldIndex:d}=i,t=r[d];if(t){const{shared:n}=o;n.draggedContext.key=t.key,n.draggedContext.field=t}}function p(){const{shared:s}=o,{field:i}=s.draggedContext,r={source:i,traget:l.field.children,region:"k-grid"};if(o.hooks.syncDragAdd.call(r),!o.dragAddResult.every(t=>t)){const t=l.field.children.findIndex(n=>n.id===i.id);t!==-1&&(l.field.children.splice(t,1),a.message.warning("不能将该控件拖拽到明细表中"))}f()}return(s,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(u)())},[e.createElementVNode("div",null,e.toDisplayString(s.field.title),1),e.createVNode(e.unref(a.Row),e.mergeProps(e.unref(a.Col)["x-component-props"],{class:"grid-row"}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.field.children,(r,d)=>{var t;return e.openBlock(),e.createBlock(e.unref(a.Col),{key:d,span:((t=r["x-component-props"])==null?void 0:t.span)||12,class:"grid-col"},{default:e.withCtx(()=>[e.createVNode(e.unref(h),{list:r.children,group:{name:"form"},animation:300,sort:!0,class:e.normalizeClass(e.unref(g)()),"item-key":"id","chosen-class":"choose",onStart:n=>m(r.children,n),onAdd:p},{item:e.withCtx(({element:n})=>[e.createElementVNode("div",y,[e.renderSlot(s.$slots,`panel-${n.key}`,{},()=>[e.createVNode(e.unref(C.default),{field:n,space:r.children},null,8,["field","space"])])])]),_:2},1032,["list","class","onStart"])]),_:2},1032,["span"])}),128))]),_:3},16),i[0]||(i[0]=e.createElementVNode("div",{style:{color:"#c0bebe","text-align":"center",width:"90%",padding:"5px"}}," ☝ 拖拽控件到容器内部 ",-1))],2))}});exports.default=_;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),f=require("vuedraggable");require("../../../internal.js");require("../../../index.js");const g=require("ant-design-vue"),m=require("../../../context/design.js"),p=require("../../../hooks/use-namespace/index.js"),h=require("../panel-item.vue.js"),v={class:"form-item"},y=e.defineComponent({inheritAttrs:!1,__name:"object",props:{field:{}},setup(o){const r=m.useInjectDesignContext(),{b:a}=p.useNamespace("panel-drag");function c(t,n){const d=e.toRaw(t),{oldIndex:l}=n,i=d[l];if(i){const{shared:s}=r;s.draggedContext.key=i.key,s.draggedContext.field=i}}function u(){console.log("dragAdd");const{shared:t}=r,{field:n}=t.draggedContext,d={source:n,traget:o.field.children,region:"k-object"};if(r.hooks.syncDragAdd.call(d),!r.dragAddResult.every(i=>i)){const i=o.field.children.findIndex(s=>s.id===n.id);i!==-1&&(o.field.children.splice(i,1),g.message.warning("不能将该控件拖拽到对象容器中"))}}return(t,n)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",null,e.toDisplayString(t.field.title),1),e.createElementVNode("div",null,[e.createVNode(e.unref(f),{list:t.field.children,class:e.normalizeClass(e.unref(a)()),group:{name:"form"},animation:300,sort:!0,"item-key":"id","chosen-class":"choose",onStart:n[0]||(n[0]=d=>c(t.field.children,d)),onAdd:u},{item:e.withCtx(({element:d})=>[e.createElementVNode("div",v,[e.renderSlot(t.$slots,`panel-${d.key}`,{},()=>[e.createVNode(e.unref(h.default),{field:d,space:t.field.children},null,8,["field","space"])])])]),_:3},8,["list","class"]),n[1]||(n[1]=e.createElementVNode("div",{style:{color:"#c0bebe","text-align":"center",width:"90%",padding:"5px"}}," ☝ 拖拽控件到布局容器内部 ",-1))])]))}});exports.default=y;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),f=require("vuedraggable");require("../../../internal.js");require("../../../index.js");const m=require("ant-design-vue"),p=require("../../../context/design.js"),h=require("../../../hooks/use-namespace/index.js"),v=require("../../../hooks/use-actions.js"),y=require("../panel-item.vue.js"),A={class:"form-item"},q=e.defineComponent({inheritAttrs:!1,__name:"object",props:{field:{}},setup(o){const s=p.useInjectDesignContext(),{b:a}=h.useNamespace("panel-drag"),{dragAddAction:c}=v.useDesignActions(s);function u(t,n){const i=e.toRaw(t),{oldIndex:l}=n,d=i[l];if(d){const{shared:r}=s;r.draggedContext.key=d.key,r.draggedContext.field=d}}function g(){console.log("dragAdd");const{shared:t}=s,{field:n}=t.draggedContext,i={source:n,traget:o.field.children,region:"k-object"};if(s.hooks.syncDragAdd.call(i),!s.dragAddResult.every(d=>d)){const d=o.field.children.findIndex(r=>r.id===n.id);d!==-1&&(o.field.children.splice(d,1),m.message.warning("不能将该控件拖拽到对象容器中"))}c()}return(t,n)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",null,e.toDisplayString(t.field.title),1),e.createElementVNode("div",null,[e.createVNode(e.unref(f),{list:t.field.children,class:e.normalizeClass(e.unref(a)()),group:{name:"form"},animation:300,sort:!0,"item-key":"id","chosen-class":"choose",onStart:n[0]||(n[0]=i=>u(t.field.children,i)),onAdd:g},{item:e.withCtx(({element:i})=>[e.createElementVNode("div",A,[e.renderSlot(t.$slots,`panel-${i.key}`,{},()=>[e.createVNode(e.unref(y.default),{field:i,space:t.field.children},null,8,["field","space"])])])]),_:3},8,["list","class"]),n[1]||(n[1]=e.createElementVNode("div",{style:{color:"#c0bebe","text-align":"center",width:"90%",padding:"5px"}}," ☝ 拖拽控件到布局容器内部 ",-1))])]))}});exports.default=q;
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../types.js"),t={name:"布局组件",key:"layout",widget:[{title:"栅格布局",icon:"k-form-grid",key:"k-grid",type:e.valueTypeMap.void,"x-component":"FormGrid","x-component-props":{gutter:20},"x-decorator":"Void"}]},a={name:"基础组件",key:"basic",widget:[{title:"输入框",key:"k-input",type:e.valueTypeMap.string,icon:"form-input","x-component":"Input","x-component-props":{placeholder:"请输入"}},{title:"多文本输入框",key:"k-textarea",type:e.valueTypeMap.string,icon:"form-textarea","x-component":"Textarea","x-component-props":{placeholder:"请输入"}},{title:"数字输入框",key:"k-input-number",type:e.valueTypeMap.number,icon:"form-number","x-component":"InputNumber","x-component-props":{placeholder:"请输入",precision:0}},{title:"下拉选择框",key:"k-select",type:e.valueTypeMap.array,items:{type:e.valueTypeMap.string},icon:"form-select","x-component":"Select",enum:[{label:"选项1",value:"1"},{label:"选项2",value:"2"}],"x-component-props":{placeholder:"请选择",allowClear:!0,mode:"multiple"},"x-decorator":"FormItem"},{title:"日期范围",key:"k-date-range",type:e.valueTypeMap.array,format:"date",items:{type:e.valueTypeMap.string,format:"date"},icon:"form-date","x-component":"DateRange","x-component-props":{valueFormat:"YYYY-MM-DD",placeholder:["开始日期","结束日期"]}},{title:"单个日期",key:"k-date-single",type:e.valueTypeMap.string,format:"date",icon:"form-date","x-component":"InputNumber","x-component-props":{placeholder:"请输入",formatData:"YYYY-MM-DD"}},{title:"地区选择",key:"k-form-area",type:e.valueTypeMap.object,icon:"form-area","x-component":"FormArea",children:[{type:e.valueTypeMap.string,name:"province"},{type:e.valueTypeMap.string,name:"city"}]}]},o={name:"扩展组件",key:"extend",widget:[{title:"对象容器",key:"k-object",type:e.valueTypeMap.object,icon:"form-object",children:[]},{title:"列表容器",key:"k-array-card",type:e.valueTypeMap.array,icon:"form-list",children:[],"x-component":"ArrayCard","x-decorator":"Void"},{title:"明细表",key:"k-table",type:e.valueTypeMap.array,icon:"form-table","x-component":"ArrayTable",children:[],"x-decorator-props":{labelAlign:"top"}}]},r=[{name:"加班模版",key:"overtime",icon:"form-kit-overtime",schema:{title:"加班模版",key:"k-overtime",type:e.valueTypeMap.object,name:"overtime",id:"overtime","x-design-props":{validate:{status:"",message:""}},children:[{type:e.valueTypeMap.array,name:"details",title:"加班明细","x-component":"ArrayCard","x-decorator":"Void",children:[{type:e.valueTypeMap.array,title:"加班日期",items:{type:e.valueTypeMap.string,format:"date"},name:"date","x-component":"DateRange","x-component-props":{valueFormat:"YYYY-MM-DD HH:mm",showTime:{format:"HH:mm",minuteStep:30},placeholder:["开始日期","结束日期"]}},{type:e.valueTypeMap.number,title:"加班时长",name:"hours","x-component":"HalfInputNumber","x-component-props":{placeholder:"请输入"},"x-validator":[{validator:`{{const sourceValue = $parent.date
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../types.js"),t={name:"布局组件",key:"layout",widget:[{title:"栅格布局",icon:"k-form-grid",key:"k-grid",type:e.valueTypeMap.void,"x-component":"FormGrid","x-component-props":{gutter:20},"x-decorator":"Void"}]},a={name:"基础组件",key:"basic",widget:[{title:"输入框",key:"k-input",type:e.valueTypeMap.string,icon:"form-input","x-component":"Input","x-component-props":{placeholder:"请输入"}},{title:"多文本输入框",key:"k-textarea",type:e.valueTypeMap.string,icon:"form-textarea","x-component":"Textarea","x-component-props":{placeholder:"请输入"}},{title:"数字输入框",key:"k-input-number",type:e.valueTypeMap.number,icon:"form-number","x-component":"InputNumber","x-component-props":{placeholder:"请输入",precision:0}},{title:"下拉选择框",key:"k-select",type:e.valueTypeMap.array,items:{type:e.valueTypeMap.string},icon:"form-select","x-component":"Select",enum:[{label:"选项1",value:"1"},{label:"选项2",value:"2"}],"x-component-props":{placeholder:"请选择",allowClear:!0,mode:"multiple"},"x-decorator":"FormItem"},{title:"日期范围",key:"k-date-range",type:e.valueTypeMap.array,format:"date",items:{type:e.valueTypeMap.string,format:"date"},icon:"form-date","x-component":"DateRange","x-component-props":{valueFormat:"YYYY-MM-DD",placeholder:["开始日期","结束日期"]}},{title:"单个日期",key:"k-date-single",type:e.valueTypeMap.string,format:"date",icon:"form-date","x-component":"InputNumber","x-component-props":{placeholder:"请输入",formatData:"YYYY-MM-DD"}},{title:"地区选择",key:"k-form-area",type:e.valueTypeMap.object,icon:"form-area","x-component":"FormArea",children:[{type:e.valueTypeMap.string,name:"province"},{type:e.valueTypeMap.string,name:"city"}]}]},r={name:"扩展组件",key:"extend",widget:[{title:"对象容器",key:"k-object",type:e.valueTypeMap.object,icon:"form-object",children:[]},{title:"列表容器",key:"k-array-card",type:e.valueTypeMap.array,icon:"form-list",children:[],"x-component":"ArrayCard","x-decorator":"Void"},{title:"明细表",key:"k-table",type:e.valueTypeMap.array,icon:"form-table","x-component":"ArrayTable",children:[],"x-decorator-props":{labelAlign:"top"}}]},o=[{name:"加班模版",key:"overtime",icon:"form-kit-overtime",schema:{title:"加班模版",key:"k-overtime",type:e.valueTypeMap.object,name:"overtime",id:"overtime","x-design-props":{validate:{status:"",message:""}},children:[{type:e.valueTypeMap.array,name:"details",title:"加班明细","x-component":"ArrayCard","x-decorator":"Void",children:[{type:e.valueTypeMap.array,title:"加班日期",items:{type:e.valueTypeMap.string,format:"date"},name:"date","x-component":"DateRange","x-validator":[{type:"array",required:!0,message:"请选择日期范围"}],"x-component-props":{format:"YYYY-MM-DD HH:mm",valueFormat:"YYYY-MM-DD HH:mm",showTime:{format:"HH:mm",minuteStep:30},placeholder:["开始日期","结束日期"]}},{type:e.valueTypeMap.number,title:"加班时长",name:"hours","x-component":"HalfInputNumber","x-component-props":{placeholder:"请输入",addonAfter:"小时"},required:!0,"x-validator":[{validator:`{{const sourceValue = $parent.date
2
2
  if (!sourceValue || !sourceValue.length) {
3
3
  return true
4
4
  }else{
@@ -12,4 +12,4 @@
12
12
  }
13
13
  return true
14
14
  }
15
- }}`}]}]},{type:e.valueTypeMap.number,title:"总时长",name:"total","x-component":"HalfInputNumber","x-component-props":{placeholder:"请输入"},required:!0,"x-reactions":{dependencies:[{property:"value",type:"string",source:".details",name:"details"}],fulfill:{state:{value:"{{$deps.details.reduce((acc, cur) => acc + cur.hours, 0)}}"}}}}]}}];exports.BaseSchema=a;exports.ExtendSchema=o;exports.LayoutSchema=t;exports.tempSchema=r;
15
+ }}`},{type:"number",min:.5,message:"必须大于0.5小时"}]}]},{type:e.valueTypeMap.number,title:"总时长",name:"total","x-component":"HalfInputNumber","x-component-props":{placeholder:"请输入",disabled:!0,addonAfter:"小时"},"x-validator":[{type:"number",min:.5,message:"必须大于0.5小时"}],"x-reactions":{dependencies:[{property:"value",type:"string",source:".details",name:"details"}],fulfill:{state:{value:"{{$deps.details.reduce((acc, cur) => acc + cur.hours, 0)}}"}}}}]}}];exports.BaseSchema=a;exports.ExtendSchema=r;exports.LayoutSchema=t;exports.tempSchema=o;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={ON_DESIGN_FIELD_CHANGE:"onDesignFieldChange",ON_DESIGN_INIT:"onDesignInit"};exports.DesignEffectDict=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={on_DESIGN_CHANGE:"onDesignChange",ON_DESIGN_FIELD_CHANGE:"onDesignFieldChange",ON_DESIGN_INIT:"onDesignInit"};exports.DesignEffectDict=e;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./effective.js"),e=require("./effect-dict.js");function t(n){return o.createEffectHook(n,(...i)=>c=>{c(...i)})}const f=t(e.DesignEffectDict.ON_DESIGN_INIT),s=t(e.DesignEffectDict.ON_DESIGN_FIELD_CHANGE);exports.onDesignFieldChange=s;exports.onDesignInit=f;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./effective.js"),e=require("./effect-dict.js");function n(t){return o.createEffectHook(t,(...i)=>c=>{c(...i)})}const D=n(e.DesignEffectDict.ON_DESIGN_INIT),s=n(e.DesignEffectDict.on_DESIGN_CHANGE),f=n(e.DesignEffectDict.ON_DESIGN_FIELD_CHANGE);exports.onDesignChange=s;exports.onDesignFieldChange=f;exports.onDesignInit=D;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./use-namespace/index.js");exports.defaultNamespace=e.defaultNamespace;exports.namespaceContextKey=e.namespaceContextKey;exports.useGetDerivedNamespace=e.useGetDerivedNamespace;exports.useNamespace=e.useNamespace;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./use-namespace/index.js"),s=require("./use-actions.js");exports.defaultNamespace=e.defaultNamespace;exports.namespaceContextKey=e.namespaceContextKey;exports.useGetDerivedNamespace=e.useGetDerivedNamespace;exports.useNamespace=e.useNamespace;exports.useDesignActions=s.useDesignActions;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("../effects/effect-dict.js");function i(t){const e=()=>{t.notify(n.DesignEffectDict.on_DESIGN_CHANGE)};return{dragAddAction:()=>{e()},deleteFieldAction:()=>{e()},clearFieldsAction:()=>{t.clearFields(),e()}}}exports.useDesignActions=i;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./components/base/Carousel.vue2.js");require("./components/panel/panel-item.vue2.js");const i=require("./context/design.js"),t=require("./components/form-desgin.js"),r=require("./core/index.js");require("./components/index.js");const e=require("./config/index.js"),n=require("./effects/onEffects.js");require("./utils/index.js");exports.useInjectDesignContext=i.useInjectDesignContext;exports.FormDesign=t.default;exports.CreateFormDesign=r.CreateFormDesign;exports.BaseSchema=e.BaseSchema;exports.ExtendSchema=e.ExtendSchema;exports.LayoutSchema=e.LayoutSchema;exports.tempSchema=e.tempSchema;exports.onDesignFieldChange=n.onDesignFieldChange;exports.onDesignInit=n.onDesignInit;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./components/base/Carousel.vue2.js");require("./components/panel/panel-item.vue2.js");const i=require("./context/design.js"),t=require("./components/form-desgin.js"),r=require("./core/index.js");require("./components/index.js");const e=require("./config/index.js"),n=require("./effects/onEffects.js");require("./utils/index.js");exports.useInjectDesignContext=i.useInjectDesignContext;exports.FormDesign=t.default;exports.CreateFormDesign=r.CreateFormDesign;exports.BaseSchema=e.BaseSchema;exports.ExtendSchema=e.ExtendSchema;exports.LayoutSchema=e.LayoutSchema;exports.tempSchema=e.tempSchema;exports.onDesignChange=n.onDesignChange;exports.onDesignFieldChange=n.onDesignFieldChange;exports.onDesignInit=n.onDesignInit;
@@ -1 +1 @@
1
- @font-face{font-family:iconfont-design;src:url(fonts/iconfont.woff2?t=31355) format("woff2"),url(fonts/iconfont.woff?t=1074) format("woff"),url(fonts/iconfont.ttf?t=18131) format("truetype")}.k-design-icon{font-family:iconfont-design!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-from-design-exclamation-circle-filled:before{content:"\e670"}.icon-from-design-exclamation-circle:before{content:"\e660"}.icon-from-design-form-object:before{content:"\e666"}.icon-from-design-form-list:before{content:"\e667"}.icon-from-design-form-table:before{content:"\e66f"}.icon-from-design-copy:before{content:"\e65d"}.icon-from-design-form-radio:before{content:"\e698"}.icon-from-design-form-daterange:before{content:"\e699"}.icon-from-design-form-money:before{content:"\e69a"}.icon-from-design-form-kit-leave:before{content:"\e69b"}.icon-from-design-form-kit-reimbursement:before{content:"\e69c"}.icon-from-design-form-kit-out:before{content:"\e69d"}.icon-from-design-form-kit-replenish:before{content:"\e69e"}.icon-from-design-form-kit-overtime:before{content:"\e69f"}.icon-from-design-form-number:before{content:"\e6a0"}.icon-from-design-form-textarea:before{content:"\e6a1"}.icon-from-design-form-select:before{content:"\e6a2"}.icon-from-design-form-kit-transfer:before{content:"\e6a3"}.icon-from-design-form-right:before{content:"\e6a4"}.icon-from-design-form-checkbox:before{content:"\e687"}.icon-from-design-form-area:before{content:"\e688"}.icon-from-design-form-del:before{content:"\e689"}.icon-from-design-form-contact-person:before{content:"\e68a"}.icon-from-design-form-default:before{content:"\e68b"}.icon-from-design-form-date:before{content:"\e68c"}.icon-from-design-form-drag:before{content:"\e68d"}.icon-from-design-form-desctext:before{content:"\e68e"}.icon-from-design-form-fileupload:before{content:"\e68f"}.icon-from-design-form-input:before{content:"\e690"}.icon-from-design-form-grid:before{content:"\e691"}.icon-from-design-form-imgupload:before{content:"\e692"}.icon-from-design-form-hot-city:before{content:"\e693"}.icon-from-design-form-kit-leave-2:before{content:"\e694"}.icon-from-design-form-inputNumber:before{content:"\e695"}.icon-from-design-form-kit-business-trip:before{content:"\e696"}.icon-from-design-shouzhixiangyou:before{content:"\e615"}.icon-from-design-xiangzuohuangse:before{content:"\e60a"}.icon-from-design-code:before{content:"\e65a"}.icon-from-design-desktop:before{content:"\e65b"}.icon-from-design-delete1:before{content:"\e65c"}.icon-from-design-double-left:before{content:"\e65e"}.icon-from-design-double-right:before{content:"\e65f"}.icon-from-design-mobile:before{content:"\e668"}.icon-from-design-question-circle:before{content:"\e66c"}.icon-from-design-sound:before{content:"\e672"}
1
+ @font-face{font-family:iconfont-design;src:url(fonts/iconfont.woff2?t=14015) format("woff2"),url(fonts/iconfont.woff?t=91418) format("woff"),url(fonts/iconfont.ttf?t=42402) format("truetype")}.k-design-icon{font-family:iconfont-design!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-from-design-exclamation-circle-filled:before{content:"\e670"}.icon-from-design-exclamation-circle:before{content:"\e660"}.icon-from-design-form-object:before{content:"\e666"}.icon-from-design-form-list:before{content:"\e667"}.icon-from-design-form-table:before{content:"\e66f"}.icon-from-design-copy:before{content:"\e65d"}.icon-from-design-form-radio:before{content:"\e698"}.icon-from-design-form-daterange:before{content:"\e699"}.icon-from-design-form-money:before{content:"\e69a"}.icon-from-design-form-kit-leave:before{content:"\e69b"}.icon-from-design-form-kit-reimbursement:before{content:"\e69c"}.icon-from-design-form-kit-out:before{content:"\e69d"}.icon-from-design-form-kit-replenish:before{content:"\e69e"}.icon-from-design-form-kit-overtime:before{content:"\e69f"}.icon-from-design-form-number:before{content:"\e6a0"}.icon-from-design-form-textarea:before{content:"\e6a1"}.icon-from-design-form-select:before{content:"\e6a2"}.icon-from-design-form-kit-transfer:before{content:"\e6a3"}.icon-from-design-form-right:before{content:"\e6a4"}.icon-from-design-form-checkbox:before{content:"\e687"}.icon-from-design-form-area:before{content:"\e688"}.icon-from-design-form-del:before{content:"\e689"}.icon-from-design-form-contact-person:before{content:"\e68a"}.icon-from-design-form-default:before{content:"\e68b"}.icon-from-design-form-date:before{content:"\e68c"}.icon-from-design-form-drag:before{content:"\e68d"}.icon-from-design-form-desctext:before{content:"\e68e"}.icon-from-design-form-fileupload:before{content:"\e68f"}.icon-from-design-form-input:before{content:"\e690"}.icon-from-design-form-grid:before{content:"\e691"}.icon-from-design-form-imgupload:before{content:"\e692"}.icon-from-design-form-hot-city:before{content:"\e693"}.icon-from-design-form-kit-leave-2:before{content:"\e694"}.icon-from-design-form-inputNumber:before{content:"\e695"}.icon-from-design-form-kit-business-trip:before{content:"\e696"}.icon-from-design-shouzhixiangyou:before{content:"\e615"}.icon-from-design-xiangzuohuangse:before{content:"\e60a"}.icon-from-design-code:before{content:"\e65a"}.icon-from-design-desktop:before{content:"\e65b"}.icon-from-design-delete1:before{content:"\e65c"}.icon-from-design-double-left:before{content:"\e65e"}.icon-from-design-double-right:before{content:"\e65f"}.icon-from-design-mobile:before{content:"\e668"}.icon-from-design-question-circle:before{content:"\e66c"}.icon-from-design-sound:before{content:"\e672"}