@kp-ui/lowcode 1.0.99 → 1.0.101

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.
package/index.js CHANGED
@@ -1,55 +1,55 @@
1
1
  /* empty css */
2
- import { default as g } from "./src/components/form-designer/index.vue.js";
3
- import { default as h } from "./src/components/form-render/index.vue.js";
2
+ import { default as h } from "./src/components/form-designer/index.vue.js";
3
+ import { default as W } from "./src/components/form-render/index.vue.js";
4
4
  import "./_virtual/virtual_svg-icons-register.js";
5
- import { addAdvancedFieldSchema as M, addBasicFieldSchema as W, addContainerWidgetSchema as w, addCustomWidgetSchema as S } from "./src/components/form-designer/widget-panel/widgetsConfig.js";
6
- import { basicFieldsEnums as b } from "./src/components/form-designer/widget-panel/basicFieldsEnums.js";
7
- import { default as I } from "./src/components/form-designer/form-widget/container-widget/containerMixin.js";
8
- import { default as P } from "./src/components/form-designer/form-widget/container-widget/container-wrapper.vue.js";
9
- import i from "./src/components/form-designer/form-widget/container-widget/index.js";
10
- import m from "./src/components/form-render/container-item/index.js";
11
- import { default as B } from "./src/components/form-designer/form-widget/field-widget/index.js";
12
- import { default as L } from "./src/components/form-designer/refMixinDesign.js";
13
- import { default as A } from "./src/components/form-render/refMixin.js";
14
- import { default as j } from "./src/components/form-render/container-item/container-item-wrapper.vue.js";
15
- import { default as q } from "./src/components/form-render/container-item/containerItemMixin.js";
16
- import { default as G } from "./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue.js";
17
- import { default as J } from "./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue.js";
18
- import { default as N } from "./src/components/form-designer/form-widget/field-widget/fieldMixin.js";
19
- import { openCustomerModal as f } from "./src/components/public/CustomerModal/useCustomerModal.js";
20
- import { default as Q } from "./src/components/form-render/SubmitButtonRender.vue.js";
21
- import { default as U } from "./src/utils/emitter.js";
22
- import { useLowcode as Y } from "./src/hooks/useLowcode.js";
23
- const u = (r) => {
24
- const { app: e, http: o, factoryRender: t } = r;
25
- e.config.globalProperties.$http = o, e.config.globalProperties.$factoryRender = t, e.config.globalProperties.$openCustomerModal = f, e.use(i), e.use(m);
26
- const a = window.$vform ?? {};
5
+ import { addAdvancedFieldSchema as b, addBasicFieldSchema as w, addContainerWidgetSchema as I, addCustomWidgetSchema as S } from "./src/components/form-designer/widget-panel/widgetsConfig.js";
6
+ import { basicFieldsEnums as P } from "./src/components/form-designer/widget-panel/basicFieldsEnums.js";
7
+ import { default as y } from "./src/components/form-designer/form-widget/container-widget/containerMixin.js";
8
+ import { default as B } from "./src/components/form-designer/form-widget/container-widget/container-wrapper.vue.js";
9
+ import n from "./src/components/form-designer/form-widget/container-widget/index.js";
10
+ import p from "./src/components/form-render/container-item/index.js";
11
+ import { default as L } from "./src/components/form-designer/form-widget/field-widget/index.js";
12
+ import { default as V } from "./src/components/form-designer/refMixinDesign.js";
13
+ import { default as j } from "./src/components/form-render/refMixin.js";
14
+ import { default as q } from "./src/components/form-render/container-item/container-item-wrapper.vue.js";
15
+ import { default as G } from "./src/components/form-render/container-item/containerItemMixin.js";
16
+ import { default as J } from "./src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue.js";
17
+ import { default as N } from "./src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue.js";
18
+ import { default as Q } from "./src/components/form-designer/form-widget/field-widget/fieldMixin.js";
19
+ import { openCustomerModal as d } from "./src/components/public/CustomerModal/useCustomerModal.js";
20
+ import { default as X } from "./src/components/form-render/SubmitButtonRender.vue.js";
21
+ import { default as Z } from "./src/utils/emitter.js";
22
+ import { useLowcode as ee } from "./src/hooks/useLowcode.js";
23
+ const g = (r) => {
24
+ const { app: e, http: o, factoryRender: t, useMountApp: a, getUserInfo: f } = r;
25
+ e.config.globalProperties.$http = o, e.config.globalProperties.$getUserInfo = f, e.config.globalProperties.$factoryRender = t, e.config.globalProperties.$openCustomerModal = (m) => d(m, a), e.use(n), e.use(p);
26
+ const i = window.$vform ?? {};
27
27
  window.$vform = {
28
- ...a,
28
+ ...i,
29
29
  $http: o
30
30
  };
31
31
  };
32
32
  export {
33
- j as ContainerItemWrapper,
34
- P as ContainerWrapper,
35
- B as FieldComponents,
36
- J as FormItemWrapper,
37
- G as StaticContentWrapper,
38
- Q as SubmitButtonRender,
39
- g as VFormDesigner,
40
- h as VFormRender,
41
- M as addAdvancedFieldSchema,
42
- W as addBasicFieldSchema,
43
- w as addContainerWidgetSchema,
33
+ q as ContainerItemWrapper,
34
+ B as ContainerWrapper,
35
+ L as FieldComponents,
36
+ N as FormItemWrapper,
37
+ J as StaticContentWrapper,
38
+ X as SubmitButtonRender,
39
+ h as VFormDesigner,
40
+ W as VFormRender,
41
+ b as addAdvancedFieldSchema,
42
+ w as addBasicFieldSchema,
43
+ I as addContainerWidgetSchema,
44
44
  S as addCustomWidgetSchema,
45
- b as basicFieldsEnums,
46
- q as containerItemMixin,
47
- I as containerMixin,
48
- U as emitter,
49
- N as fieldMixin,
50
- A as refMixin,
51
- L as refMixinDesign,
52
- u as registerLowcodeCore,
53
- Y as useLowcode
45
+ P as basicFieldsEnums,
46
+ G as containerItemMixin,
47
+ y as containerMixin,
48
+ Z as emitter,
49
+ Q as fieldMixin,
50
+ j as refMixin,
51
+ V as refMixinDesign,
52
+ g as registerLowcodeCore,
53
+ ee as useLowcode
54
54
  };
55
55
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../install.ts"],"sourcesContent":["// 导出基础组件\nimport '@/styles/global.less';\nimport VFormDesigner from '@/components/form-designer/index.vue';\nimport VFormRender from '@/components/form-render/index.vue';\n\nimport 'virtual:svg-icons-register';\n\n// 导出配置相关\nexport {\n addContainerWidgetSchema,\n addBasicFieldSchema,\n addAdvancedFieldSchema,\n addCustomWidgetSchema\n} from '@/components/form-designer/widget-panel/widgetsConfig';\n\nimport { basicFieldsEnums } from '@/components/form-designer/widget-panel/basicFieldsEnums';\n\n// 导出容器相关\nexport { default as containerMixin } from '@/components/form-designer/form-widget/container-widget/containerMixin';\nexport { default as ContainerWrapper } from '@/components/form-designer/form-widget/container-widget/container-wrapper.vue';\nimport ContainerWidgets from '@/components/form-designer/form-widget/container-widget/index';\nimport ContainerItems from '@/components/form-render/container-item/index';\n\n// 导出字段相关\nexport { default as FieldComponents } from '@/components/form-designer/form-widget/field-widget/index';\nexport { default as refMixinDesign } from '@/components/form-designer/refMixinDesign';\nexport { default as refMixin } from '@/components/form-render/refMixin';\nexport { default as ContainerItemWrapper } from '@/components/form-render/container-item/container-item-wrapper.vue';\nexport { default as containerItemMixin } from '@/components/form-render/container-item/containerItemMixin';\nexport { default as StaticContentWrapper } from '@/components/form-designer/form-widget/field-widget/static-content-wrapper.vue';\nexport { default as FormItemWrapper } from '@/components/form-designer/form-widget/field-widget/form-item-wrapper.vue';\nexport { default as fieldMixin } from '@/components/form-designer/form-widget/field-widget/fieldMixin';\n\nimport { openCustomerModal } from '@/components/public/CustomerModal/useCustomerModal';\nimport type { App } from 'vue';\nimport type { AxiosInstance } from 'axios';\nexport { default as SubmitButtonRender } from '@/components/form-render/SubmitButtonRender.vue';\n\n// 导出工具\nexport { default as emitter } from '@/utils/emitter';\n\nexport { useLowcode } from '@/hooks/useLowcode';\n\ninterface RegisterLowcodeCoreParams {\n app: App;\n http: AxiosInstance;\n factoryRender: (name: any, props: any) => any;\n}\n// 注册 HTTP\nexport const registerLowcodeCore = (params: RegisterLowcodeCoreParams) => {\n const { app, http, factoryRender } = params;\n\n app.config.globalProperties.$http = http;\n app.config.globalProperties.$factoryRender = factoryRender;\n app.config.globalProperties.$openCustomerModal = openCustomerModal;\n\n app.use(ContainerWidgets);\n app.use(ContainerItems);\n\n const vfrom = window.$vform ?? {};\n window.$vform = {\n ...vfrom,\n $http: http\n };\n};\n\nexport { basicFieldsEnums, VFormDesigner, VFormRender };\n"],"names":["registerLowcodeCore","params","app","http","factoryRender","openCustomerModal","ContainerWidgets","ContainerItems","vfrom"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAiDO,MAAMA,IAAsB,CAACC,MAAsC;AACtE,QAAM,EAAE,KAAAC,GAAK,MAAAC,GAAM,eAAAC,EAAA,IAAkBH;AAErC,EAAAC,EAAI,OAAO,iBAAiB,QAAQC,GACpCD,EAAI,OAAO,iBAAiB,iBAAiBE,GAC7CF,EAAI,OAAO,iBAAiB,qBAAqBG,GAEjDH,EAAI,IAAII,CAAgB,GACxBJ,EAAI,IAAIK,CAAc;AAEtB,QAAMC,IAAQ,OAAO,UAAU,CAAA;AAC/B,SAAO,SAAS;AAAA,IACZ,GAAGA;AAAA,IACH,OAAOL;AAAA,EAAA;AAEf;"}
1
+ {"version":3,"file":"index.js","sources":["../install.ts"],"sourcesContent":["// 导出基础组件\nimport '@/styles/global.less';\nimport VFormDesigner from '@/components/form-designer/index.vue';\nimport VFormRender from '@/components/form-render/index.vue';\n\nimport 'virtual:svg-icons-register';\n\n// 导出配置相关\nexport {\n addContainerWidgetSchema,\n addBasicFieldSchema,\n addAdvancedFieldSchema,\n addCustomWidgetSchema\n} from '@/components/form-designer/widget-panel/widgetsConfig';\n\nimport { basicFieldsEnums } from '@/components/form-designer/widget-panel/basicFieldsEnums';\n\n// 导出容器相关\nexport { default as containerMixin } from '@/components/form-designer/form-widget/container-widget/containerMixin';\nexport { default as ContainerWrapper } from '@/components/form-designer/form-widget/container-widget/container-wrapper.vue';\nimport ContainerWidgets from '@/components/form-designer/form-widget/container-widget/index';\nimport ContainerItems from '@/components/form-render/container-item/index';\n\n// 导出字段相关\nexport { default as FieldComponents } from '@/components/form-designer/form-widget/field-widget/index';\nexport { default as refMixinDesign } from '@/components/form-designer/refMixinDesign';\nexport { default as refMixin } from '@/components/form-render/refMixin';\nexport { default as ContainerItemWrapper } from '@/components/form-render/container-item/container-item-wrapper.vue';\nexport { default as containerItemMixin } from '@/components/form-render/container-item/containerItemMixin';\nexport { default as StaticContentWrapper } from '@/components/form-designer/form-widget/field-widget/static-content-wrapper.vue';\nexport { default as FormItemWrapper } from '@/components/form-designer/form-widget/field-widget/form-item-wrapper.vue';\nexport { default as fieldMixin } from '@/components/form-designer/form-widget/field-widget/fieldMixin';\n\nimport { openCustomerModal } from '@/components/public/CustomerModal/useCustomerModal';\nimport type { App } from 'vue';\nimport type { AxiosInstance } from 'axios';\nexport { default as SubmitButtonRender } from '@/components/form-render/SubmitButtonRender.vue';\n\n// 导出工具\nexport { default as emitter } from '@/utils/emitter';\n\nexport { useLowcode } from '@/hooks/useLowcode';\n\ninterface RegisterLowcodeCoreParams {\n app: App;\n http: AxiosInstance;\n factoryRender: (name: any, props: any) => any;\n useMountApp?: () => void;\n getUserInfo?: () => any;\n}\n// 注册 HTTP\nexport const registerLowcodeCore = (params: RegisterLowcodeCoreParams) => {\n const { app, http, factoryRender, useMountApp, getUserInfo } = params;\n\n app.config.globalProperties.$http = http;\n app.config.globalProperties.$getUserInfo = getUserInfo;\n app.config.globalProperties.$factoryRender = factoryRender;\n app.config.globalProperties.$openCustomerModal = ops => openCustomerModal(ops, useMountApp);\n\n app.use(ContainerWidgets);\n app.use(ContainerItems);\n\n const vfrom = window.$vform ?? {};\n window.$vform = {\n ...vfrom,\n $http: http\n };\n};\n\nexport { basicFieldsEnums, VFormDesigner, VFormRender };\n"],"names":["registerLowcodeCore","params","app","http","factoryRender","useMountApp","getUserInfo","ops","openCustomerModal","ContainerWidgets","ContainerItems","vfrom"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAmDO,MAAMA,IAAsB,CAACC,MAAsC;AACtE,QAAM,EAAE,KAAAC,GAAK,MAAAC,GAAM,eAAAC,GAAe,aAAAC,GAAa,aAAAC,MAAgBL;AAE/D,EAAAC,EAAI,OAAO,iBAAiB,QAAQC,GACpCD,EAAI,OAAO,iBAAiB,eAAeI,GAC3CJ,EAAI,OAAO,iBAAiB,iBAAiBE,GAC7CF,EAAI,OAAO,iBAAiB,qBAAqB,CAAAK,MAAOC,EAAkBD,GAAKF,CAAW,GAE1FH,EAAI,IAAIO,CAAgB,GACxBP,EAAI,IAAIQ,CAAc;AAEtB,QAAMC,IAAQ,OAAO,UAAU,CAAA;AAC/B,SAAO,SAAS;AAAA,IACZ,GAAGA;AAAA,IACH,OAAOR;AAAA,EAAA;AAEf;"}
package/package.json CHANGED
@@ -1,11 +1,15 @@
1
1
  {
2
2
  "name": "@kp-ui/lowcode",
3
- "version": "1.0.99",
3
+ "version": "1.0.101",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
7
7
  "module": "index.js",
8
8
  "dependencies": {
9
+ "vite": "6.3.3",
10
+ "pinia": "3.0.1",
11
+ "vue": "3.5.17",
12
+ "tailwindcss": "3.4.9",
9
13
  "@kp-ui/i18n": "0.0.8",
10
14
  "ace-builds": "1.42.0",
11
15
  "@kp-ui/tool": "1.0.33",
@@ -1,25 +1,25 @@
1
- import w from "./widget-panel/index.vue.js";
2
- import F from "./toolbar-panel/index.vue.js";
3
- import b from "./setting-panel/index.vue.js";
4
- import y from "./form-widget/index.vue.js";
5
- import { createDesigner as R } from "./designer.js";
6
- import { TpfConfigProvider as x } from "tmgc2-share";
7
- import { traverseAllWidgets as E, getAllContainerWidgets as c, getAllFieldWidgets as m, deepClone as u, addWindowResizeHandler as J } from "../../utils/util.js";
8
- import S, { changeLocale as D } from "../../utils/i18n.js";
9
- import { isEmpty as H } from "lodash-es";
10
- import { resolveComponent as n, createBlock as A, openBlock as P, withCtx as r, createVNode as i, createSlots as B, renderList as N, renderSlot as V, createElementVNode as a } from "vue";
1
+ import L from "./widget-panel/index.vue.js";
2
+ import w from "./toolbar-panel/index.vue.js";
3
+ import F from "./setting-panel/index.vue.js";
4
+ import b from "./form-widget/index.vue.js";
5
+ import { createDesigner as y } from "./designer.js";
6
+ import { TpfConfigProvider as R } from "tmgc2-share";
7
+ import { traverseAllWidgets as x, getAllContainerWidgets as f, getAllFieldWidgets as c, deepClone as m, addWindowResizeHandler as E } from "../../utils/util.js";
8
+ import J, { changeLocale as S } from "../../utils/i18n.js";
9
+ import { isEmpty as D } from "lodash-es";
10
+ import { resolveComponent as r, createBlock as H, openBlock as A, withCtx as n, createVNode as o, createSlots as P, renderList as B, renderSlot as N, createElementVNode as V } from "vue";
11
11
  /* empty css */
12
12
  import T from "../../../_virtual/_plugin-vue_export-helper.js";
13
13
  const U = {
14
14
  name: "VFormDesigner",
15
15
  componentName: "VFormDesigner",
16
- mixins: [S],
16
+ mixins: [J],
17
17
  components: {
18
- TpfConfigProvider: x,
19
- WidgetPanel: w,
20
- ToolbarPanel: F,
21
- SettingPanel: b,
22
- VFormWidget: y
18
+ TpfConfigProvider: R,
19
+ WidgetPanel: L,
20
+ ToolbarPanel: w,
21
+ SettingPanel: F,
22
+ VFormWidget: b
23
23
  },
24
24
  props: {
25
25
  /* 保存jsonApi */
@@ -91,7 +91,7 @@ const U = {
91
91
  chatUrl: "https://www.vform666.com/pages/chat-group/",
92
92
  subScribeUrl: "https://www.vform666.com/pages/pro/",
93
93
  scrollerHeight: 0,
94
- designer: R(this),
94
+ designer: y(this),
95
95
  fieldList: []
96
96
  };
97
97
  },
@@ -105,7 +105,7 @@ const U = {
105
105
  created() {
106
106
  },
107
107
  mounted() {
108
- this.initLocale(), this.scrollerHeight = window.innerHeight - 56 - 36 + "px", J(() => {
108
+ this.initLocale(), this.scrollerHeight = window.innerHeight - 56 - 36 + "px", E(() => {
109
109
  this.$nextTick(() => {
110
110
  this.scrollerHeight = window.innerHeight - 56 - 36 + "px";
111
111
  });
@@ -126,7 +126,7 @@ const U = {
126
126
  * @param {*} importObj
127
127
  */
128
128
  setJsonImport(e = {}) {
129
- if (!H(e))
129
+ if (!D(e))
130
130
  try {
131
131
  if (!e || !e.formConfig)
132
132
  throw new Error(this.i18nt("designer.hint.invalidJsonFormat"));
@@ -139,7 +139,7 @@ const U = {
139
139
  console.log("test", e), console.log("test222222", t);
140
140
  },
141
141
  changeLanguage(e) {
142
- D(e);
142
+ S(e);
143
143
  },
144
144
  initLocale() {
145
145
  this.curLocale = localStorage.getItem("lowcode_local"), this.vsCodeFlag ? this.curLocale = this.curLocale || "en-US" : this.curLocale = this.curLocale || "zh-CN", this.curLangName = this.i18nt("application." + this.curLocale), this.changeLanguage(this.curLocale);
@@ -154,8 +154,8 @@ const U = {
154
154
  },
155
155
  getFormJson() {
156
156
  return {
157
- widgetList: u(this.designer.widgetList),
158
- formConfig: u(this.designer.formConfig)
157
+ widgetList: m(this.designer.widgetList),
158
+ formConfig: m(this.designer.formConfig)
159
159
  };
160
160
  },
161
161
  clearDesigner() {
@@ -203,14 +203,14 @@ const U = {
203
203
  * @returns {*[]}
204
204
  */
205
205
  getFieldWidgets(e = null) {
206
- return e ? m(e) : m(this.designer.widgetList);
206
+ return e ? c(e) : c(this.designer.widgetList);
207
207
  },
208
208
  /**
209
209
  * 获取所有容器组件
210
210
  * @returns {*[]}
211
211
  */
212
212
  getContainerWidgets(e = null) {
213
- return e ? c(e) : c(this.designer.widgetList);
213
+ return e ? f(e) : f(this.designer.widgetList);
214
214
  },
215
215
  /**
216
216
  * 升级表单json,以补充最新的组件属性
@@ -221,7 +221,7 @@ const U = {
221
221
  this.$message.error("Invalid form json!");
222
222
  return;
223
223
  }
224
- return E(e.widgetList, (t) => {
224
+ return x(e.widgetList, (t) => {
225
225
  this.designer.upgradeWidgetConfig(t);
226
226
  }), this.designer.upgradeFormConfig(e.formConfig), e;
227
227
  },
@@ -265,78 +265,70 @@ const U = {
265
265
  //TODO: 增加更多方法!!
266
266
  }
267
267
  }, I = { class: "container-scroll-bar" };
268
- function k(e, t, s, M, o, l) {
269
- const p = n("WidgetPanel"), g = n("a-layout-sider"), W = n("toolbar-panel"), _ = n("a-layout-header"), v = n("VFormWidget"), d = n("a-layout-content"), C = n("setting-panel"), h = n("a-layout"), L = n("TpfConfigProvider");
270
- return P(), A(L, null, {
271
- default: r(() => [
272
- i(h, { class: "main-container full-height" }, {
273
- default: r(() => [
274
- i(h, null, {
275
- default: r(() => [
276
- i(g, {
277
- width: o.leftWidth,
268
+ function k(e, t, s, M, i, l) {
269
+ const u = r("WidgetPanel"), d = r("a-layout-sider"), p = r("toolbar-panel"), W = r("a-layout-header"), _ = r("VFormWidget"), a = r("a-layout-content"), v = r("setting-panel"), g = r("a-layout"), C = r("TpfConfigProvider");
270
+ return A(), H(C, null, {
271
+ default: n(() => [
272
+ o(g, { class: "main-container full-height" }, {
273
+ default: n(() => [
274
+ o(g, null, {
275
+ default: n(() => [
276
+ o(d, {
277
+ width: i.leftWidth,
278
278
  class: "side-panel"
279
279
  }, {
280
- default: r(() => [
281
- i(p, { designer: o.designer }, null, 8, ["designer"])
280
+ default: n(() => [
281
+ o(u, { designer: i.designer }, null, 8, ["designer"])
282
282
  ]),
283
283
  _: 1
284
284
  }, 8, ["width"]),
285
- i(d, { class: "center-layout-container" }, {
286
- default: r(() => [
287
- i(_, { class: "toolbar-header" }, {
288
- default: r(() => [
289
- i(W, {
285
+ o(a, { class: "center-layout-container" }, {
286
+ default: n(() => [
287
+ o(W, { class: "toolbar-header" }, {
288
+ default: n(() => [
289
+ o(p, {
290
290
  saveJsonApi: s.saveJsonApi,
291
- designer: o.designer,
291
+ designer: i.designer,
292
292
  "global-dsv": s.globalDsv,
293
293
  changeLeftWidth: l.changeLeftWidth,
294
294
  changeRightWidth: l.changeRightWidth,
295
- leftWidth: o.leftWidth,
296
- rightWidth: o.rightWidth,
295
+ leftWidth: i.leftWidth,
296
+ rightWidth: i.rightWidth,
297
297
  ref: "toolbarRef"
298
- }, B({ _: 2 }, [
299
- N(e.$slots, (j, f) => ({
300
- name: f,
301
- fn: r(() => [
302
- V(e.$slots, f, {}, void 0, !0)
298
+ }, P({ _: 2 }, [
299
+ B(e.$slots, (j, h) => ({
300
+ name: h,
301
+ fn: n(() => [
302
+ N(e.$slots, h, {}, void 0, !0)
303
303
  ])
304
304
  }))
305
305
  ]), 1032, ["saveJsonApi", "designer", "global-dsv", "changeLeftWidth", "changeRightWidth", "leftWidth", "rightWidth"])
306
306
  ]),
307
307
  _: 3
308
308
  }),
309
- i(d, { class: "form-widget-main" }, {
310
- default: r(() => [
311
- a("div", I, [
312
- i(v, {
313
- designer: o.designer,
314
- "form-config": o.designer.formConfig,
309
+ o(a, { class: "form-widget-main" }, {
310
+ default: n(() => [
311
+ V("div", I, [
312
+ o(_, {
313
+ designer: i.designer,
314
+ "form-config": i.designer.formConfig,
315
315
  "global-dsv": s.globalDsv,
316
316
  ref: "formRef"
317
317
  }, null, 8, ["designer", "form-config", "global-dsv"])
318
318
  ])
319
319
  ]),
320
320
  _: 1
321
- }),
322
- i(d, { class: "form-widget-footer" }, {
323
- default: r(() => t[0] || (t[0] = [
324
- a("div", { id: "footerLeft" }, null, -1),
325
- a("div", { id: "footerRight" }, null, -1)
326
- ])),
327
- _: 1,
328
- __: [0]
329
321
  })
330
322
  ]),
331
323
  _: 3
332
324
  }),
333
- i(g, { width: o.rightWidth }, {
334
- default: r(() => [
335
- i(C, {
336
- designer: o.designer,
337
- "selected-widget": o.designer.selectedWidget,
325
+ o(d, { width: i.rightWidth }, {
326
+ default: n(() => [
327
+ o(v, {
328
+ designer: i.designer,
329
+ "selected-widget": i.designer.selectedWidget,
338
330
  "global-dsv": s.globalDsv,
339
- "form-config": o.designer.formConfig,
331
+ "form-config": i.designer.formConfig,
340
332
  onEditEventHandler: l.testEEH
341
333
  }, null, 8, ["designer", "selected-widget", "global-dsv", "form-config", "onEditEventHandler"])
342
334
  ]),
@@ -352,7 +344,7 @@ function k(e, t, s, M, o, l) {
352
344
  _: 3
353
345
  });
354
346
  }
355
- const ie = /* @__PURE__ */ T(U, [["render", k], ["__scopeId", "data-v-eba90d91"]]);
347
+ const ie = /* @__PURE__ */ T(U, [["render", k], ["__scopeId", "data-v-1e27946d"]]);
356
348
  export {
357
349
  ie as default
358
350
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue.js","sources":["../../../../src/components/form-designer/index.vue"],"sourcesContent":["<template>\n <TpfConfigProvider>\n <a-layout class=\"main-container full-height\">\n <a-layout>\n <a-layout-sider :width=\"leftWidth\" class=\"side-panel\">\n <WidgetPanel :designer=\"designer\" />\n </a-layout-sider>\n\n <a-layout-content class=\"center-layout-container\">\n <a-layout-header class=\"toolbar-header\">\n <toolbar-panel\n :saveJsonApi=\"saveJsonApi\"\n :designer=\"designer\"\n :global-dsv=\"globalDsv\"\n :changeLeftWidth=\"changeLeftWidth\"\n :changeRightWidth=\"changeRightWidth\"\n :leftWidth=\"leftWidth\"\n :rightWidth=\"rightWidth\"\n ref=\"toolbarRef\"\n >\n <template v-for=\"(idx, slotName) in $slots\" #[slotName]>\n <slot :name=\"slotName\"></slot>\n </template>\n </toolbar-panel>\n </a-layout-header>\n <a-layout-content class=\"form-widget-main\">\n <div class=\"container-scroll-bar\">\n <VFormWidget\n :designer=\"designer\"\n :form-config=\"designer.formConfig\"\n :global-dsv=\"globalDsv\"\n ref=\"formRef\"\n />\n </div>\n </a-layout-content>\n <a-layout-content class=\"form-widget-footer\">\n <div id=\"footerLeft\"></div>\n <div id=\"footerRight\"></div>\n </a-layout-content>\n </a-layout-content>\n <a-layout-sider :width=\"rightWidth\">\n <setting-panel\n :designer=\"designer\"\n :selected-widget=\"designer.selectedWidget\"\n :global-dsv=\"globalDsv\"\n :form-config=\"designer.formConfig\"\n @edit-event-handler=\"testEEH\"\n />\n </a-layout-sider>\n </a-layout>\n </a-layout>\n </TpfConfigProvider>\n</template>\n\n<script>\n import WidgetPanel from './widget-panel/index.vue';\n import ToolbarPanel from './toolbar-panel/index.vue';\n import SettingPanel from './setting-panel/index.vue';\n import VFormWidget from './form-widget/index.vue';\n import { createDesigner } from '@/components/form-designer/designer';\n import { TpfConfigProvider } from 'tmgc2-share';\n import {\n addWindowResizeHandler,\n deepClone,\n getAllContainerWidgets,\n getAllFieldWidgets,\n traverseAllWidgets\n } from '@/utils/util';\n import i18n, { changeLocale } from '@/utils/i18n';\n import { isEmpty } from 'lodash-es';\n\n export default {\n name: 'VFormDesigner',\n componentName: 'VFormDesigner',\n mixins: [i18n],\n components: {\n TpfConfigProvider,\n WidgetPanel,\n ToolbarPanel,\n SettingPanel,\n VFormWidget\n },\n props: {\n /* 保存jsonApi */\n\n saveJsonApi: {\n type: Function,\n default: null\n },\n /* 后端字段列表API */\n fieldListApi: {\n type: Function,\n default: null\n },\n\n /* 禁止显示的组件名称数组 */\n bannedWidgets: {\n type: Array,\n default: () => []\n },\n /* 设计器配置参数 */\n designerConfig: {\n type: Object,\n default: () => {\n return {\n languageMenu: true, //是否显示语言切换菜单\n // externalLink: true, //是否显示GitHub、文档等外部链接\n // formTemplates: true, //是否显示表单模板\n eventCollapse: true, //是否显示组件事件属性折叠面板\n widgetNameReadonly: false, //禁止修改组件名称\n\n clearDesignerButton: true, //是否显示清空设计器按钮\n previewFormButton: true, //是否显示预览表单按钮\n importJsonButton: true, //是否显示导入JSON按钮\n exportJsonButton: true, //是否显示导出JSON器按钮\n exportCodeButton: true, //是否显示导出代码按钮\n // generateSFCButton: true, //是否显示生成SFC按钮\n\n toolbarMaxWidth: 450, //设计器工具按钮栏最大宽度(单位像素)\n toolbarMinWidth: 300, //设计器工具按钮栏最小宽度(单位像素)\n\n presetCssCode: '', //设计器预设CSS样式代码\n\n resetFormJson: false //是否在设计器初始化时将表单内容重置为空\n };\n }\n },\n\n /* 全局数据源变量 */\n globalDsv: {\n type: Object,\n default: () => ({})\n }\n },\n data() {\n return {\n leftWidth: 270,\n rightWidth: 300,\n curLangName: '',\n curLocale: '',\n isLoading: false, //是否正在加载中\n vsCodeFlag: false,\n caseName: '',\n\n docUrl: 'https://www.vform666.com/document3.html',\n gitUrl: 'https://github.com/vform666/variant-form3-vite',\n chatUrl: 'https://www.vform666.com/pages/chat-group/',\n subScribeUrl: 'https://www.vform666.com/pages/pro/',\n\n scrollerHeight: 0,\n\n designer: createDesigner(this),\n\n fieldList: []\n };\n },\n provide() {\n return {\n serverFieldList: () => this.fieldList,\n getDesignerConfig: () => this.designerConfig,\n getBannedWidgets: () => this.bannedWidgets\n };\n },\n created() {\n // this.vsCodeFlag = getQueryParam('vscode') == 1;\n // this.caseName = getQueryParam('case');\n },\n mounted() {\n this.initLocale();\n\n this.scrollerHeight = window.innerHeight - 56 - 36 + 'px';\n addWindowResizeHandler(() => {\n this.$nextTick(() => {\n this.scrollerHeight = window.innerHeight - 56 - 36 + 'px';\n });\n });\n\n this.loadFieldListFromServer();\n },\n methods: {\n setLoading(flag) {\n this.isLoading = flag;\n },\n changeLeftWidth() {\n if (this.leftWidth === 270) {\n this.leftWidth = 0;\n } else {\n this.leftWidth = 270;\n }\n },\n changeRightWidth() {\n if (this.rightWidth === 300) {\n this.rightWidth = 0;\n } else {\n this.rightWidth = 300;\n }\n },\n /**\n * json回填\n * @param {*} importObj\n */\n setJsonImport(importObj = {}) {\n if (isEmpty(importObj)) return;\n try {\n if (!importObj || !importObj.formConfig) {\n throw new Error(this.i18nt('designer.hint.invalidJsonFormat'));\n }\n\n // const fJsonVer = importObj?.formConfig?.jsonVersion || '';\n // if (!fJsonVer || fJsonVer !== 3) {\n // throw new Error(this.i18nt('designer.hint.jsonVersionMismatch'));\n // }\n\n this.designer.loadFormJson(importObj);\n\n this.designer.emitHistoryChange();\n\n this.designer.emitEvent('form-json-imported', []);\n } catch (ex) {\n this.$message.error(ex + '');\n }\n },\n testEEH(eventName, eventParams) {\n console.log('test', eventName);\n console.log('test222222', eventParams);\n },\n\n changeLanguage(langName) {\n changeLocale(langName);\n },\n initLocale() {\n this.curLocale = localStorage.getItem('lowcode_local');\n if (!!this.vsCodeFlag) {\n this.curLocale = this.curLocale || 'en-US';\n } else {\n this.curLocale = this.curLocale || 'zh-CN';\n }\n this.curLangName = this.i18nt('application.' + this.curLocale);\n this.changeLanguage(this.curLocale);\n },\n\n async loadFieldListFromServer() {\n if (!this.fieldListApi) {\n return;\n }\n this.fieldList = await this.fieldListApi();\n console.log('this.fieldList: ', this.fieldList);\n },\n setFormJson(formJson) {\n console.log('formJson: ', formJson);\n let modifiedFlag = false;\n if (!!formJson) {\n if (typeof formJson === 'string') {\n //TODO\n modifiedFlag = this.designer.loadFormJson(JSON.parse(formJson));\n } else if (formJson.constructor === Object) {\n modifiedFlag = this.designer.loadFormJson(formJson);\n }\n\n if (modifiedFlag) {\n this.designer.emitHistoryChange();\n }\n }\n },\n\n getFormJson() {\n return {\n widgetList: deepClone(this.designer.widgetList),\n formConfig: deepClone(this.designer.formConfig)\n };\n },\n\n clearDesigner() {\n this.$refs.toolbarRef.clearFormWidget();\n },\n\n /**\n * 刷新表单设计器\n */\n refreshDesigner() {\n //this.designer.loadFormJson( this.getFormJson() ) //只有第一次调用生效??\n\n const fJson = this.getFormJson();\n this.designer.clearDesigner(true); //不触发历史记录变更\n this.designer.loadFormJson(fJson);\n },\n\n /**\n * 预览表单\n */\n previewForm() {\n this.$refs.toolbarRef.previewForm();\n },\n\n /**\n * 导入表单JSON\n */\n importJson() {\n this.$refs.toolbarRef.importJson();\n },\n\n /**\n * 导出表单JSON\n */\n exportJson() {\n this.$refs.toolbarRef.exportJson();\n },\n\n /**\n * 导出Vue/HTML代码\n */\n exportCode() {\n this.$refs.toolbarRef.exportCode();\n },\n\n /**\n * 生成SFC代码\n */\n generateSFC() {\n this.$refs.toolbarRef.generateSFC();\n },\n\n /**\n * 获取所有字段组件\n * @returns {*[]}\n */\n getFieldWidgets(widgetList = null) {\n return !!widgetList\n ? getAllFieldWidgets(widgetList)\n : getAllFieldWidgets(this.designer.widgetList);\n },\n\n /**\n * 获取所有容器组件\n * @returns {*[]}\n */\n getContainerWidgets(widgetList = null) {\n return !!widgetList\n ? getAllContainerWidgets(widgetList)\n : getAllContainerWidgets(this.designer.widgetList);\n },\n\n /**\n * 升级表单json,以补充最新的组件属性\n * @param formJson\n */\n upgradeFormJson(formJson) {\n if (!formJson.widgetList || !formJson.formConfig) {\n this.$message.error('Invalid form json!');\n return;\n }\n\n traverseAllWidgets(formJson.widgetList, w => {\n this.designer.upgradeWidgetConfig(w);\n });\n this.designer.upgradeFormConfig(formJson.formConfig);\n\n return formJson;\n },\n\n getWidgetRef(widgetName, showError = false) {\n return this.$refs['formRef'].getWidgetRef(widgetName, showError);\n },\n\n getSelectedWidgetRef() {\n return this.$refs['formRef'].getSelectedWidgetRef();\n },\n\n /**\n * 添加数据源对象\n * @param dsObj\n */\n addDataSource(dsObj) {\n this.designer.formConfig.dataSources.push(dsObj);\n },\n\n /**\n * 增加外部组件引用,可通过getEC()方法获取外部组件,以便在VForm内部调用外部组件方法\n * @param componentName 外部组件名称\n * @param externalComponent 外部组件实例\n */\n addEC(componentName, externalComponent) {\n this.externalComponents[componentName] = externalComponent;\n },\n\n /**\n * 判断外部组件是否可获取\n * @param componentName 外部组件名称\n * @returns {boolean}\n */\n hasEC(componentName) {\n return this.externalComponents.hasOwnProperty(componentName);\n },\n\n /**\n * 获取外部组件实例\n * @param componentName\n * @returns {*}\n */\n getEC(componentName) {\n return this.externalComponents[componentName];\n }\n\n //TODO: 增加更多方法!!\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .ant-layout.main-container {\n background: #fff;\n\n .ant-layout-sider {\n background: #fff;\n }\n\n :deep(aside) {\n /* 防止aside样式被外部样式覆盖!! */\n margin: 0;\n padding: 0;\n background: inherit;\n }\n }\n\n .ant-layout.full-height {\n height: 100%;\n overflow-y: hidden;\n }\n\n .ant-layout-content.center-layout-container {\n min-width: 680px;\n border-left: 2px dotted #ebeef5;\n border-right: 2px dotted #ebeef5;\n display: flex;\n flex-direction: column;\n }\n .form-widget-footer {\n flex: 0 0 50px;\n align-items: center;\n background: #fff;\n display: flex;\n justify-content: space-between;\n padding: 0 15px;\n }\n\n .ant-layout-header.main-header {\n border-bottom: 2px dotted #ebeef5;\n background: #fff;\n padding: 0;\n\n height: 48px !important;\n line-height: 48px !important;\n min-width: 800px;\n }\n\n div.main-title {\n font-size: 18px;\n color: #242424;\n display: flex;\n align-items: center;\n justify-items: center;\n\n img {\n cursor: pointer;\n width: 36px;\n height: 36px;\n }\n\n span.bold {\n font-size: 20px;\n font-weight: bold;\n margin: 0 6px 0 6px;\n }\n\n span.version-span {\n font-size: 14px;\n color: #101f1c;\n margin-left: 6px;\n }\n }\n\n .float-left {\n float: left;\n }\n\n .float-right {\n float: right;\n }\n\n div.external-link {\n display: flex;\n align-items: center;\n\n a {\n font-size: 13px;\n text-decoration: none;\n margin-right: 10px;\n color: #606266;\n }\n }\n\n .ant-layout-header.toolbar-header {\n font-size: 14px;\n border-bottom: 1px dotted #cccccc;\n height: 42px !important;\n background: #fff;\n padding: 0;\n }\n\n .ant-layout-sider.side-panel {\n width: 260px !important;\n overflow-y: hidden;\n }\n // .left-aside-toggle-bar {\n // position: relative;\n // width: 0px;\n // .icons {\n // position: absolute;\n // right: 100%;\n // top: 50%;\n // transform: translate(100%, -50%);\n // z-index: 9999;\n // background: #fff;\n // width: 12px !important;\n // height: 36px !important;\n // }\n // }\n\n .ant-layout-content.form-widget-main {\n padding: 0;\n position: relative;\n overflow-x: hidden;\n flex: 1 0 0;\n }\n\n .container-scroll-bar {\n height: 100%;\n & > :deep(.form-widget-container) {\n height: 100%;\n }\n }\n</style>\n"],"names":["_sfc_main","i18n","TpfConfigProvider","WidgetPanel","ToolbarPanel","SettingPanel","VFormWidget","createDesigner","addWindowResizeHandler","flag","importObj","isEmpty","ex","eventName","eventParams","langName","changeLocale","formJson","modifiedFlag","deepClone","fJson","widgetList","getAllFieldWidgets","getAllContainerWidgets","traverseAllWidgets","w","widgetName","showError","dsObj","componentName","externalComponent","_hoisted_1","_createBlock","_component_TpfConfigProvider","_createVNode","_component_a_layout","_component_a_layout_sider","$data","_component_WidgetPanel","_component_a_layout_content","_component_a_layout_header","_component_toolbar_panel","$props","$options","_ctx","idx","slotName","_renderSlot","_createElementVNode","_component_VFormWidget","_cache","_component_setting_panel"],"mappings":"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"}
1
+ {"version":3,"file":"index.vue.js","sources":["../../../../src/components/form-designer/index.vue"],"sourcesContent":["<template>\n <TpfConfigProvider>\n <a-layout class=\"main-container full-height\">\n <a-layout>\n <a-layout-sider :width=\"leftWidth\" class=\"side-panel\">\n <WidgetPanel :designer=\"designer\" />\n </a-layout-sider>\n\n <a-layout-content class=\"center-layout-container\">\n <a-layout-header class=\"toolbar-header\">\n <toolbar-panel\n :saveJsonApi=\"saveJsonApi\"\n :designer=\"designer\"\n :global-dsv=\"globalDsv\"\n :changeLeftWidth=\"changeLeftWidth\"\n :changeRightWidth=\"changeRightWidth\"\n :leftWidth=\"leftWidth\"\n :rightWidth=\"rightWidth\"\n ref=\"toolbarRef\"\n >\n <template v-for=\"(idx, slotName) in $slots\" #[slotName]>\n <slot :name=\"slotName\"></slot>\n </template>\n </toolbar-panel>\n </a-layout-header>\n <a-layout-content class=\"form-widget-main\">\n <div class=\"container-scroll-bar\">\n <VFormWidget\n :designer=\"designer\"\n :form-config=\"designer.formConfig\"\n :global-dsv=\"globalDsv\"\n ref=\"formRef\"\n />\n </div>\n </a-layout-content>\n </a-layout-content>\n <a-layout-sider :width=\"rightWidth\">\n <setting-panel\n :designer=\"designer\"\n :selected-widget=\"designer.selectedWidget\"\n :global-dsv=\"globalDsv\"\n :form-config=\"designer.formConfig\"\n @edit-event-handler=\"testEEH\"\n />\n </a-layout-sider>\n </a-layout>\n </a-layout>\n </TpfConfigProvider>\n</template>\n\n<script>\n import WidgetPanel from './widget-panel/index.vue';\n import ToolbarPanel from './toolbar-panel/index.vue';\n import SettingPanel from './setting-panel/index.vue';\n import VFormWidget from './form-widget/index.vue';\n import { createDesigner } from '@/components/form-designer/designer';\n import { TpfConfigProvider } from 'tmgc2-share';\n import {\n addWindowResizeHandler,\n deepClone,\n getAllContainerWidgets,\n getAllFieldWidgets,\n traverseAllWidgets\n } from '@/utils/util';\n import i18n, { changeLocale } from '@/utils/i18n';\n import { isEmpty } from 'lodash-es';\n\n export default {\n name: 'VFormDesigner',\n componentName: 'VFormDesigner',\n mixins: [i18n],\n components: {\n TpfConfigProvider,\n WidgetPanel,\n ToolbarPanel,\n SettingPanel,\n VFormWidget\n },\n props: {\n /* 保存jsonApi */\n\n saveJsonApi: {\n type: Function,\n default: null\n },\n /* 后端字段列表API */\n fieldListApi: {\n type: Function,\n default: null\n },\n\n /* 禁止显示的组件名称数组 */\n bannedWidgets: {\n type: Array,\n default: () => []\n },\n /* 设计器配置参数 */\n designerConfig: {\n type: Object,\n default: () => {\n return {\n languageMenu: true, //是否显示语言切换菜单\n // externalLink: true, //是否显示GitHub、文档等外部链接\n // formTemplates: true, //是否显示表单模板\n eventCollapse: true, //是否显示组件事件属性折叠面板\n widgetNameReadonly: false, //禁止修改组件名称\n\n clearDesignerButton: true, //是否显示清空设计器按钮\n previewFormButton: true, //是否显示预览表单按钮\n importJsonButton: true, //是否显示导入JSON按钮\n exportJsonButton: true, //是否显示导出JSON器按钮\n exportCodeButton: true, //是否显示导出代码按钮\n // generateSFCButton: true, //是否显示生成SFC按钮\n\n toolbarMaxWidth: 450, //设计器工具按钮栏最大宽度(单位像素)\n toolbarMinWidth: 300, //设计器工具按钮栏最小宽度(单位像素)\n\n presetCssCode: '', //设计器预设CSS样式代码\n\n resetFormJson: false //是否在设计器初始化时将表单内容重置为空\n };\n }\n },\n\n /* 全局数据源变量 */\n globalDsv: {\n type: Object,\n default: () => ({})\n }\n },\n data() {\n return {\n leftWidth: 270,\n rightWidth: 300,\n curLangName: '',\n curLocale: '',\n isLoading: false, //是否正在加载中\n vsCodeFlag: false,\n caseName: '',\n\n docUrl: 'https://www.vform666.com/document3.html',\n gitUrl: 'https://github.com/vform666/variant-form3-vite',\n chatUrl: 'https://www.vform666.com/pages/chat-group/',\n subScribeUrl: 'https://www.vform666.com/pages/pro/',\n\n scrollerHeight: 0,\n\n designer: createDesigner(this),\n\n fieldList: []\n };\n },\n provide() {\n return {\n serverFieldList: () => this.fieldList,\n getDesignerConfig: () => this.designerConfig,\n getBannedWidgets: () => this.bannedWidgets\n };\n },\n created() {\n // this.vsCodeFlag = getQueryParam('vscode') == 1;\n // this.caseName = getQueryParam('case');\n },\n mounted() {\n this.initLocale();\n\n this.scrollerHeight = window.innerHeight - 56 - 36 + 'px';\n addWindowResizeHandler(() => {\n this.$nextTick(() => {\n this.scrollerHeight = window.innerHeight - 56 - 36 + 'px';\n });\n });\n\n this.loadFieldListFromServer();\n },\n methods: {\n setLoading(flag) {\n this.isLoading = flag;\n },\n changeLeftWidth() {\n if (this.leftWidth === 270) {\n this.leftWidth = 0;\n } else {\n this.leftWidth = 270;\n }\n },\n changeRightWidth() {\n if (this.rightWidth === 300) {\n this.rightWidth = 0;\n } else {\n this.rightWidth = 300;\n }\n },\n /**\n * json回填\n * @param {*} importObj\n */\n setJsonImport(importObj = {}) {\n if (isEmpty(importObj)) return;\n try {\n if (!importObj || !importObj.formConfig) {\n throw new Error(this.i18nt('designer.hint.invalidJsonFormat'));\n }\n\n // const fJsonVer = importObj?.formConfig?.jsonVersion || '';\n // if (!fJsonVer || fJsonVer !== 3) {\n // throw new Error(this.i18nt('designer.hint.jsonVersionMismatch'));\n // }\n\n this.designer.loadFormJson(importObj);\n\n this.designer.emitHistoryChange();\n\n this.designer.emitEvent('form-json-imported', []);\n } catch (ex) {\n this.$message.error(ex + '');\n }\n },\n testEEH(eventName, eventParams) {\n console.log('test', eventName);\n console.log('test222222', eventParams);\n },\n\n changeLanguage(langName) {\n changeLocale(langName);\n },\n initLocale() {\n this.curLocale = localStorage.getItem('lowcode_local');\n if (!!this.vsCodeFlag) {\n this.curLocale = this.curLocale || 'en-US';\n } else {\n this.curLocale = this.curLocale || 'zh-CN';\n }\n this.curLangName = this.i18nt('application.' + this.curLocale);\n this.changeLanguage(this.curLocale);\n },\n\n async loadFieldListFromServer() {\n if (!this.fieldListApi) {\n return;\n }\n this.fieldList = await this.fieldListApi();\n console.log('this.fieldList: ', this.fieldList);\n },\n setFormJson(formJson) {\n console.log('formJson: ', formJson);\n let modifiedFlag = false;\n if (!!formJson) {\n if (typeof formJson === 'string') {\n //TODO\n modifiedFlag = this.designer.loadFormJson(JSON.parse(formJson));\n } else if (formJson.constructor === Object) {\n modifiedFlag = this.designer.loadFormJson(formJson);\n }\n\n if (modifiedFlag) {\n this.designer.emitHistoryChange();\n }\n }\n },\n\n getFormJson() {\n return {\n widgetList: deepClone(this.designer.widgetList),\n formConfig: deepClone(this.designer.formConfig)\n };\n },\n\n clearDesigner() {\n this.$refs.toolbarRef.clearFormWidget();\n },\n\n /**\n * 刷新表单设计器\n */\n refreshDesigner() {\n //this.designer.loadFormJson( this.getFormJson() ) //只有第一次调用生效??\n\n const fJson = this.getFormJson();\n this.designer.clearDesigner(true); //不触发历史记录变更\n this.designer.loadFormJson(fJson);\n },\n\n /**\n * 预览表单\n */\n previewForm() {\n this.$refs.toolbarRef.previewForm();\n },\n\n /**\n * 导入表单JSON\n */\n importJson() {\n this.$refs.toolbarRef.importJson();\n },\n\n /**\n * 导出表单JSON\n */\n exportJson() {\n this.$refs.toolbarRef.exportJson();\n },\n\n /**\n * 导出Vue/HTML代码\n */\n exportCode() {\n this.$refs.toolbarRef.exportCode();\n },\n\n /**\n * 生成SFC代码\n */\n generateSFC() {\n this.$refs.toolbarRef.generateSFC();\n },\n\n /**\n * 获取所有字段组件\n * @returns {*[]}\n */\n getFieldWidgets(widgetList = null) {\n return !!widgetList\n ? getAllFieldWidgets(widgetList)\n : getAllFieldWidgets(this.designer.widgetList);\n },\n\n /**\n * 获取所有容器组件\n * @returns {*[]}\n */\n getContainerWidgets(widgetList = null) {\n return !!widgetList\n ? getAllContainerWidgets(widgetList)\n : getAllContainerWidgets(this.designer.widgetList);\n },\n\n /**\n * 升级表单json,以补充最新的组件属性\n * @param formJson\n */\n upgradeFormJson(formJson) {\n if (!formJson.widgetList || !formJson.formConfig) {\n this.$message.error('Invalid form json!');\n return;\n }\n\n traverseAllWidgets(formJson.widgetList, w => {\n this.designer.upgradeWidgetConfig(w);\n });\n this.designer.upgradeFormConfig(formJson.formConfig);\n\n return formJson;\n },\n\n getWidgetRef(widgetName, showError = false) {\n return this.$refs['formRef'].getWidgetRef(widgetName, showError);\n },\n\n getSelectedWidgetRef() {\n return this.$refs['formRef'].getSelectedWidgetRef();\n },\n\n /**\n * 添加数据源对象\n * @param dsObj\n */\n addDataSource(dsObj) {\n this.designer.formConfig.dataSources.push(dsObj);\n },\n\n /**\n * 增加外部组件引用,可通过getEC()方法获取外部组件,以便在VForm内部调用外部组件方法\n * @param componentName 外部组件名称\n * @param externalComponent 外部组件实例\n */\n addEC(componentName, externalComponent) {\n this.externalComponents[componentName] = externalComponent;\n },\n\n /**\n * 判断外部组件是否可获取\n * @param componentName 外部组件名称\n * @returns {boolean}\n */\n hasEC(componentName) {\n return this.externalComponents.hasOwnProperty(componentName);\n },\n\n /**\n * 获取外部组件实例\n * @param componentName\n * @returns {*}\n */\n getEC(componentName) {\n return this.externalComponents[componentName];\n }\n\n //TODO: 增加更多方法!!\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .ant-layout.main-container {\n background: #fff;\n\n .ant-layout-sider {\n background: #fff;\n }\n\n :deep(aside) {\n /* 防止aside样式被外部样式覆盖!! */\n margin: 0;\n padding: 0;\n background: inherit;\n }\n }\n\n .ant-layout.full-height {\n height: 100%;\n overflow-y: hidden;\n }\n\n .ant-layout-content.center-layout-container {\n min-width: 680px;\n border-left: 2px dotted #ebeef5;\n border-right: 2px dotted #ebeef5;\n display: flex;\n flex-direction: column;\n }\n .form-widget-footer {\n flex: 0 0 50px;\n align-items: center;\n background: #fff;\n display: flex;\n justify-content: space-between;\n padding: 0 15px;\n }\n\n .ant-layout-header.main-header {\n border-bottom: 2px dotted #ebeef5;\n background: #fff;\n padding: 0;\n\n height: 48px !important;\n line-height: 48px !important;\n min-width: 800px;\n }\n\n div.main-title {\n font-size: 18px;\n color: #242424;\n display: flex;\n align-items: center;\n justify-items: center;\n\n img {\n cursor: pointer;\n width: 36px;\n height: 36px;\n }\n\n span.bold {\n font-size: 20px;\n font-weight: bold;\n margin: 0 6px 0 6px;\n }\n\n span.version-span {\n font-size: 14px;\n color: #101f1c;\n margin-left: 6px;\n }\n }\n\n .float-left {\n float: left;\n }\n\n .float-right {\n float: right;\n }\n\n div.external-link {\n display: flex;\n align-items: center;\n\n a {\n font-size: 13px;\n text-decoration: none;\n margin-right: 10px;\n color: #606266;\n }\n }\n\n .ant-layout-header.toolbar-header {\n font-size: 14px;\n border-bottom: 1px dotted #cccccc;\n height: 42px !important;\n background: #fff;\n padding: 0;\n }\n\n .ant-layout-sider.side-panel {\n width: 260px !important;\n overflow-y: hidden;\n }\n // .left-aside-toggle-bar {\n // position: relative;\n // width: 0px;\n // .icons {\n // position: absolute;\n // right: 100%;\n // top: 50%;\n // transform: translate(100%, -50%);\n // z-index: 9999;\n // background: #fff;\n // width: 12px !important;\n // height: 36px !important;\n // }\n // }\n\n .ant-layout-content.form-widget-main {\n padding: 0;\n position: relative;\n overflow-x: hidden;\n flex: 1 0 0;\n }\n\n .container-scroll-bar {\n height: 100%;\n & > :deep(.form-widget-container) {\n height: 100%;\n }\n }\n</style>\n"],"names":["_sfc_main","i18n","TpfConfigProvider","WidgetPanel","ToolbarPanel","SettingPanel","VFormWidget","createDesigner","addWindowResizeHandler","flag","importObj","isEmpty","ex","eventName","eventParams","langName","changeLocale","formJson","modifiedFlag","deepClone","fJson","widgetList","getAllFieldWidgets","getAllContainerWidgets","traverseAllWidgets","w","widgetName","showError","dsObj","componentName","externalComponent","_hoisted_1","_createBlock","_component_TpfConfigProvider","_createVNode","_component_a_layout","_component_a_layout_sider","$data","_component_WidgetPanel","_component_a_layout_content","_component_a_layout_header","_component_toolbar_panel","$props","$options","_ctx","idx","slotName","_renderSlot","_createElementVNode","_component_VFormWidget","_component_setting_panel"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import o from "./index.vue2.js";
2
2
  /* empty css */
3
3
  import r from "../../../../_virtual/_plugin-vue_export-helper.js";
4
- const f = /* @__PURE__ */ r(o, [["__scopeId", "data-v-700f328e"]]);
4
+ const e = /* @__PURE__ */ r(o, [["__scopeId", "data-v-296f9fed"]]);
5
5
  export {
6
- f as default
6
+ e as default
7
7
  };
8
8
  //# sourceMappingURL=index.vue.js.map