@king-one/form-design 0.0.5 → 0.0.6
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/CHANGELOG.md +6 -0
- package/dist/es/index.mjs +13 -11
- package/dist/es/src/components/form-desgin.mjs +32 -29
- package/dist/es/src/components/form-panel.vue.mjs +3 -1
- package/dist/es/src/components/form-setting.vue.mjs +40 -78
- package/dist/es/src/components/index.mjs +1 -0
- package/dist/es/src/components/props/form-config.vue.mjs +78 -0
- package/dist/es/src/components/props/form-config.vue2.mjs +4 -0
- package/dist/es/src/components/props/form-props.vue2.mjs +22 -21
- package/dist/es/src/components/props/index.mjs +3 -2
- package/dist/es/src/components/props/widget/index.mjs +41 -14
- package/dist/es/src/components/types.mjs +7 -1
- package/dist/es/src/config/index.mjs +1 -2
- package/dist/es/src/core/Design.mjs +10 -13
- package/dist/es/src/core/FormSchema.mjs +16 -21
- package/dist/es/src/hooks/use-monaco.mjs +27 -14
- package/dist/es/src/index.mjs +10 -9
- package/dist/lib/index.js +1 -1
- package/dist/lib/src/components/form-desgin.js +1 -1
- package/dist/lib/src/components/form-panel.vue.js +1 -1
- package/dist/lib/src/components/form-setting.vue.js +11 -1
- package/dist/lib/src/components/index.js +1 -1
- package/dist/lib/src/components/props/form-config.vue.js +1 -0
- package/dist/lib/src/components/props/form-config.vue2.js +1 -0
- package/dist/lib/src/components/props/form-props.vue2.js +1 -1
- package/dist/lib/src/components/props/index.js +1 -1
- package/dist/lib/src/components/props/widget/index.js +1 -1
- package/dist/lib/src/components/types.js +1 -1
- package/dist/lib/src/config/index.js +1 -1
- package/dist/lib/src/core/Design.js +1 -1
- package/dist/lib/src/core/FormSchema.js +1 -1
- package/dist/lib/src/hooks/use-monaco.js +1 -1
- package/dist/lib/src/index.js +1 -1
- package/dist/theme-chalk/form-config.css +1 -0
- package/dist/theme-chalk/icon.css +1 -1
- package/dist/theme-chalk/index.css +1 -1
- package/dist/theme-chalk/setting.css +1 -1
- package/dist/types/src/components/form-setting.vue.d.ts +15 -1
- package/dist/types/src/components/index.d.ts +1 -0
- package/dist/types/src/components/panel/index.d.ts +2 -2
- package/dist/types/src/components/props/form-config.vue.d.ts +30 -0
- package/dist/types/src/components/props/index.d.ts +1 -0
- package/dist/types/src/components/props/widget/index.d.ts +8 -3
- package/dist/types/src/components/types.d.ts +11 -1
- package/dist/types/src/core/Design.d.ts +10 -14
- package/dist/types/src/core/FormSchema.d.ts +4 -8
- package/dist/types/src/hooks/use-monaco.d.ts +0 -1
- package/dist/types/src/index.d.ts +1 -0
- package/dist/types/src/types.d.ts +7 -7
- package/package.json +1 -1
|
@@ -1,52 +1,47 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var i = (
|
|
4
|
-
import {
|
|
1
|
+
var n = Object.defineProperty;
|
|
2
|
+
var a = (r, e, t) => e in r ? n(r, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : r[e] = t;
|
|
3
|
+
var i = (r, e, t) => a(r, typeof e != "symbol" ? e + "" : e, t);
|
|
4
|
+
import { ref as m, toRaw as c } from "vue";
|
|
5
5
|
import { uid as h } from "@king-one/utils";
|
|
6
|
-
import { Field as
|
|
6
|
+
import { Field as l } from "./Field.mjs";
|
|
7
7
|
class j {
|
|
8
8
|
constructor() {
|
|
9
9
|
i(this, "version", "1.0.0");
|
|
10
|
-
i(this, "
|
|
11
|
-
layout: "horizontal",
|
|
12
|
-
labelAlign: "left"
|
|
13
|
-
}));
|
|
14
|
-
i(this, "fields", c([]));
|
|
10
|
+
i(this, "fields", m([]));
|
|
15
11
|
}
|
|
16
12
|
getSchema() {
|
|
17
|
-
const e =
|
|
13
|
+
const e = c(this.fields.value), t = this.jsonToschema(e);
|
|
18
14
|
return {
|
|
19
15
|
version: this.version,
|
|
20
16
|
form: {
|
|
21
|
-
|
|
22
|
-
schema: r
|
|
17
|
+
schema: t
|
|
23
18
|
}
|
|
24
19
|
};
|
|
25
20
|
}
|
|
26
21
|
getFieldList() {
|
|
27
|
-
return this.fields.value.map((e) => new
|
|
22
|
+
return this.fields.value.map((e) => new l(e));
|
|
28
23
|
}
|
|
29
24
|
jsonToschema(e, t = {}) {
|
|
30
|
-
return e.forEach((
|
|
31
|
-
const o = this.omit(
|
|
25
|
+
return e.forEach((s) => {
|
|
26
|
+
const o = this.omit(s, ["children"]);
|
|
32
27
|
o.type === "object" || o.type === "void" ? t[o.name] = {
|
|
33
28
|
...o,
|
|
34
|
-
properties: this.jsonToschema(
|
|
29
|
+
properties: this.jsonToschema(s.children)
|
|
35
30
|
} : o.type === "array" ? t[o.name] = {
|
|
36
31
|
...o,
|
|
37
32
|
items: {
|
|
38
33
|
type: "object",
|
|
39
34
|
id: h(),
|
|
40
|
-
properties: this.jsonToschema(
|
|
35
|
+
properties: this.jsonToschema(s.children)
|
|
41
36
|
}
|
|
42
37
|
} : t[o.name] = o;
|
|
43
38
|
}), t;
|
|
44
39
|
}
|
|
45
40
|
omit(e, t) {
|
|
46
|
-
const
|
|
41
|
+
const s = { ...e };
|
|
47
42
|
return t.forEach((o) => {
|
|
48
|
-
delete
|
|
49
|
-
}),
|
|
43
|
+
delete s[o];
|
|
44
|
+
}), s;
|
|
50
45
|
}
|
|
51
46
|
}
|
|
52
47
|
export {
|
|
@@ -1,10 +1,27 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import * as a from "monaco-editor";
|
|
2
|
+
import u from "monaco-editor/esm/vs/language/json/json.worker?worker";
|
|
3
|
+
import { onMounted as l } from "vue";
|
|
4
|
+
function c(r) {
|
|
5
|
+
window.MonacoEnvironment = {
|
|
6
|
+
// getWorker() {
|
|
7
|
+
// return new Promise(() => {})
|
|
8
|
+
// }
|
|
9
|
+
getWorker(o, n) {
|
|
10
|
+
switch (n) {
|
|
11
|
+
case "json":
|
|
12
|
+
return new u({ name: n });
|
|
13
|
+
default:
|
|
14
|
+
return new Promise(() => {
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
};
|
|
3
19
|
let e = null;
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
20
|
+
const t = async (o) => {
|
|
21
|
+
e && e.setValue(JSON.stringify(o, null, 2));
|
|
22
|
+
};
|
|
23
|
+
return l(() => {
|
|
24
|
+
r.value && (e = a.editor.create(r.value, {
|
|
8
25
|
value: "",
|
|
9
26
|
readOnly: !0,
|
|
10
27
|
automaticLayout: !0,
|
|
@@ -18,15 +35,11 @@ function i(t) {
|
|
|
18
35
|
// 取消代码后面一大段空白
|
|
19
36
|
overviewRulerBorder: !1
|
|
20
37
|
// 不要滚动条的边框
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
initEditor: r,
|
|
25
|
-
setEditorValue: async (a) => {
|
|
26
|
-
e || await r(), e.setValue(JSON.stringify(a, null, 2));
|
|
27
|
-
}
|
|
38
|
+
}));
|
|
39
|
+
}), {
|
|
40
|
+
setEditorValue: t
|
|
28
41
|
};
|
|
29
42
|
}
|
|
30
43
|
export {
|
|
31
|
-
|
|
44
|
+
c as useMonaco
|
|
32
45
|
};
|
package/dist/es/src/index.mjs
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
import "./style/index.mjs";
|
|
2
2
|
import "./components/panel/panel-item.vue2.mjs";
|
|
3
|
-
import { useInjectDesignContext as
|
|
3
|
+
import { useInjectDesignContext as n } from "./context/design.mjs";
|
|
4
4
|
import { default as a } from "./components/form-desgin.mjs";
|
|
5
5
|
import { CreateFormDesign as s } from "./core/index.mjs";
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
6
|
+
import "./components/index.mjs";
|
|
7
|
+
import { BaseSchema as f, ExtendSchema as g, LayoutSchema as D } from "./config/index.mjs";
|
|
8
|
+
import { onDesignFieldChange as h, onDesignInit as d } from "./effects/onEffects.mjs";
|
|
8
9
|
export {
|
|
9
|
-
|
|
10
|
+
f as BaseSchema,
|
|
10
11
|
s as CreateFormDesign,
|
|
11
|
-
|
|
12
|
+
g as ExtendSchema,
|
|
12
13
|
a as FormDesign,
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
D as LayoutSchema,
|
|
15
|
+
h as onDesignFieldChange,
|
|
16
|
+
d as onDesignInit,
|
|
17
|
+
n as useInjectDesignContext
|
|
17
18
|
};
|
package/dist/lib/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./src/index.js");const t=require("./src/components/panel/panel-item.vue.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./src/index.js");const t=require("./src/components/panel/panel-item.vue.js"),r=require("./src/context/design.js"),i=require("./src/components/form-desgin.js"),o=require("./src/core/index.js"),s=require("./src/components/props/form-config.vue.js"),e=require("./src/config/index.js"),n=require("./src/effects/onEffects.js");exports.FormPanelItem=t.default;exports.useInjectDesignContext=r.useInjectDesignContext;exports.FormDesign=i.default;exports.CreateFormDesign=o.CreateFormDesign;exports.FormConfig=s.default;exports.BaseSchema=e.BaseSchema;exports.ExtendSchema=e.ExtendSchema;exports.LayoutSchema=e.LayoutSchema;exports.onDesignFieldChange=n.onDesignFieldChange;exports.onDesignInit=n.onDesignInit;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../internal.js");const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../internal.js");const s=require("../context/design.js");require("./index.js");const i=require("./types.js"),c=require("../utils/merge.js"),l=require("../hooks/use-namespace/index.js"),g=require("./form-material.vue.js"),_=require("./form-panel.vue.js"),p=require("./form-setting.vue.js"),{b:d}=l.useNamespace("main"),f={config:{theme:"dark",tags:["frontend","vue"]}},m={config:{language:"zh-CN",tags:["typescript","javascript"]}},v=c.merge(f,m,{});console.log(v);const q=e.defineComponent({name:"FormDesign",props:i.FormDesignProps,setup(u,{slots:n}){const{toolbar:o,setting:r}=n,t=e.ref(!1);return s.useProvideDragContext({isDrag:t,updateDrag:a=>{t.value=a}}),s.useProvideDesignContext(u.design),()=>e.h("form",{class:d()},[e.h(g.default),e.h(_.default,{},{toolbar:o}),e.h(p.default,null,{default:()=>r==null?void 0:r()})])}});exports.default=q;
|
|
@@ -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 a=require("ant-design-vue"),w=require("vuedraggable"),d=require("../context/design.js");require("./panel/panel-item.vue2.js");require("./index.js");const k=require("../hooks/use-monaco.js"),b=require("../hooks/use-namespace/index.js"),m=require("./form-icon.vue2.js"),x=require("./panel/panel-item.vue.js"),S={class:"left"},q={class:"right"},y={class:"content-panel"},D={key:0,class:"prompt"},z={class:"form-item"},I={ref:"contentEditorTel",class:"content-editor"},T=e.defineComponent({name:"FormPanel",__name:"form-panel",setup(F){const f=e.useTemplateRef("contentEditorTel"),{isDrag:p}=d.useInjectDragContext(),{setEditorValue:_}=k.useMonaco(f),r=e.ref(!1),s=d.useInjectDesignContext(),{fields:l}=s;function g(){
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../internal.js");const a=require("ant-design-vue"),w=require("vuedraggable"),d=require("../context/design.js");require("./panel/panel-item.vue2.js");require("./index.js");const k=require("../hooks/use-monaco.js"),b=require("../hooks/use-namespace/index.js"),m=require("./form-icon.vue2.js"),x=require("./panel/panel-item.vue.js"),S={class:"left"},q={class:"right"},y={class:"content-panel"},D={key:0,class:"prompt"},z={class:"form-item"},I={ref:"contentEditorTel",class:"content-editor"},T=e.defineComponent({name:"FormPanel",__name:"form-panel",setup(F){const f=e.useTemplateRef("contentEditorTel"),{isDrag:p}=d.useInjectDragContext(),{setEditorValue:_}=k.useMonaco(f),r=e.ref(!1),s=d.useInjectDesignContext(),{fields:l}=s;function g(){_(s.getFormSchema()).then(()=>{r.value=!r.value})}function v(){}const{b:h,e:c,em:i}=b.useNamespace("panel");function C(){const{shared:o}=s,{key:t}=o.draggedContext;return t!==""}function V(o,t){const n=e.toRaw(o),{oldIndex:N}=t,u=n[N];if(u){const{shared:E}=s;E.draggedContext.key=u.key}}return(o,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(h)())},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(c)("toolbar"))},[e.createElementVNode("div",S,[e.createVNode(e.unref(a.Tooltip),{placement:"bottom"},{title:e.withCtx(()=>t[1]||(t[1]=[e.createElementVNode("span",null,"全部删除",-1)])),default:e.withCtx(()=>[e.createVNode(e.unref(m.default),{name:"delete1",class:e.normalizeClass(e.unref(i)("toolbar","icon")),size:18,onClick:v},null,8,["class"])]),_:1}),e.createVNode(e.unref(a.Tooltip),{placement:"bottom"},{title:e.withCtx(()=>t[2]||(t[2]=[e.createElementVNode("span",null,"查看JSON Schema",-1)])),default:e.withCtx(()=>[e.createVNode(e.unref(m.default),{name:"code",class:e.normalizeClass(e.unref(i)("toolbar","icon")),size:18,onClick:g},null,8,["class"])]),_:1}),e.createCommentVNode(` <FormIcon name="desktop" />
|
|
2
2
|
<FormIcon name="mobile" /> `)]),e.createElementVNode("div",q,[e.renderSlot(o.$slots,"toolbar")])],2),e.createCommentVNode(' ref="contentTelRef" '),e.createElementVNode("div",{class:e.normalizeClass(e.unref(c)("content"))},[e.withDirectives(e.createElementVNode("div",y,[!e.unref(p)&&e.unref(l).length===0?(e.openBlock(),e.createElementBlock("div",D," 👈 请在左侧选择控件并拖至此处 ")):e.createCommentVNode("v-if",!0),e.createVNode(e.unref(a.Form),{autocomplete:"off",class:"design-from","label-align":"left"},{default:e.withCtx(()=>[e.createVNode(e.unref(w),{class:"drag-from",list:e.unref(l),group:{name:"form",put:C},animation:300,sort:!0,"item-key":"id","chosen-class":"choose",onStart:t[0]||(t[0]=n=>V(e.unref(l),n))},{item:e.withCtx(({element:n})=>[e.createElementVNode("div",z,[e.renderSlot(o.$slots,`panel-${n.key}`,{},()=>[e.createVNode(x.default,{field:n,space:e.unref(l)},null,8,["field","space"])])])]),_:3},8,["list","group"])]),_:3})],512),[[e.vShow,!r.value]]),e.withDirectives(e.createElementVNode("div",I,null,512),[[e.vShow,r.value]])],2)],2))}});exports.default=T;
|
|
@@ -1 +1,11 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),c=require("ant-design-vue");require("../hooks/index.js");require("./form-icon.vue.js");require("./base/collapse.vue.js");const n=require("../hooks/use-namespace/index.js"),u=require("./base/collapse.vue2.js"),l=require("./form-icon.vue2.js"),p={style:{height:"100%"}},d={class:"setting-aside"},m=e.defineComponent({name:"FormSetting",__name:"form-setting",setup(_){const{b:a}=n.useNamespace("setting"),{b:o}=n.useNamespace("setting-collapse"),t=e.ref(!0),r=e.computed(()=>[a(),!t.value&&o()]);return(i,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.value)},[e.createVNode(u.default,null,{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",p,[e.createElementVNode("aside",d,[e.createCommentVNode(` <Tabs size="small" centered class="setting-tabs">
|
|
2
|
+
<TabPane key="1" tab="组件配置">
|
|
3
|
+
<Collapse v-if="Object.keys(checkedField).length && CollapsePanels.length">
|
|
4
|
+
<component :is="item" v-for="item in CollapsePanels" :key="item.key" />
|
|
5
|
+
</Collapse>
|
|
6
|
+
<Empty v-else style="margin-top: 50px;" description="请选择添加的组件" />
|
|
7
|
+
</TabPane>
|
|
8
|
+
<TabPane key="2" tab="表单配置">
|
|
9
|
+
<FormProps />
|
|
10
|
+
</TabPane>
|
|
11
|
+
</Tabs> `),e.renderSlot(i.$slots,"default",{},()=>[e.createVNode(e.unref(c.Empty),{class:"setting-empty",description:"暂无配置项"})])])],512),[[e.vShow,t.value]])]),_:3}),e.createElementVNode("div",{class:"setting-collapse",onClick:s[0]||(s[0]=v=>t.value=!t.value)},[t.value?(e.openBlock(),e.createBlock(l.default,{key:1,name:"double-right",size:18})):(e.openBlock(),e.createBlock(l.default,{key:0,name:"double-left",size:18}))])],2))}});exports.default=m;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";require("./form-material.vue2.js");require("./form-setting.vue2.js");require("./form-panel.vue2.js");require("./form-icon.vue.js");
|
|
1
|
+
"use strict";require("./form-material.vue2.js");require("./form-setting.vue2.js");require("./form-panel.vue2.js");require("./form-icon.vue.js");require("./props/index.js");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),t=require("ant-design-vue");require("../../internal.js");const i=require("../types.js");require("./form-props.vue.js");const l=require("./widget/index.js");require("@king-one/form-design/dist/theme-chalk/form-config.css");const p=require("../../context/design.js"),d=require("../../hooks/use-namespace/index.js"),f=require("./form-props.vue2.js"),m=e.defineComponent({__name:"form-config",props:i.FormConfigProps,setup(o){const s=o,{checkedField:c}=p.useInjectDesignContext(),r=e.computed(()=>c.value.key||""),{b:a}=d.useNamespace("form-config"),n=l.expandProps(s.expandProps);return(u,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(a)())},[e.createVNode(e.unref(t.Tabs),{size:"small",centered:"",class:"setting-tabs"},{default:e.withCtx(()=>[e.createVNode(e.unref(t.TabPane),{key:"1",tab:"组件配置"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.unref(n)[r.value]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)[r.value]),{key:0})):(e.openBlock(),e.createBlock(e.unref(t.Empty),{key:1,style:{"margin-top":"50px"},description:"当前组件不支持配置"}))],64)):(e.openBlock(),e.createBlock(e.unref(t.Empty),{key:1,style:{"margin-top":"50px"},description:"请选择添加的组件"}))]),_:1}),e.createVNode(e.unref(t.TabPane),{key:"2",tab:"表单配置"},{default:e.withCtx(()=>[e.renderSlot(u.$slots,"formProps",{},()=>[e.createVNode(f.default)])]),_:3})]),_:3})],2))}});exports.default=m;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./form-config.vue.js");exports.default=e.default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),t=require("ant-design-vue")
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),t=require("ant-design-vue"),u={style:{padding:"10px"}},i=e.defineComponent({__name:"form-props",setup(s){const l=e.reactive({layout:"horizontal",labelAlign:"left"}),n=[{value:"horizontal",label:"水平"},{value:"vertical",label:"垂直"}],r=[{value:"left",label:"左对齐"},{value:"right",label:"右对齐"}];return(d,o)=>(e.openBlock(),e.createElementBlock("div",u,[e.createCommentVNode(` :label-col="{ style: { width: '85px' } }" `),e.createVNode(e.unref(t.Form),{layout:"vertical"},{default:e.withCtx(()=>[e.createVNode(e.unref(t.FormItem),{label:"表单布局",tooltip:"表单布局"},{default:e.withCtx(()=>[e.createVNode(e.unref(t.Select),{value:l.layout,"onUpdate:value":o[0]||(o[0]=a=>l.layout=a),options:n},null,8,["value"])]),_:1}),e.createVNode(e.unref(t.FormItem),{label:"标签对齐方式",tooltip:"标签对齐方式"},{default:e.withCtx(()=>[e.createVNode(e.unref(t.Select),{value:l.labelAlign,"onUpdate:value":o[1]||(o[1]=a=>l.labelAlign=a),options:r},null,8,["value"])]),_:1})]),_:1})]))}});exports.default=i;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./form-props.vue.js");const e=require("./widget/index.js");exports.widgetProps=e.widgetProps;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./form-props.vue.js");const e=require("./widget/index.js");require("./form-config.vue2.js");exports.widgetProps=e.widgetProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./InputProps.vue.js");require("./TextareaProps.vue.js");require("./InputNumberProps.vue.js");require("./BaseProps.vue.js");const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("vue"),f=require("ant-design-vue");require("./InputProps.vue.js");require("./TextareaProps.vue.js");require("./InputNumberProps.vue.js");require("./BaseProps.vue.js");const a=require("./InputProps.vue2.js"),c=require("./TextareaProps.vue2.js"),i=require("./InputNumberProps.vue2.js"),o=require("./BaseProps.vue2.js"),m={"k-input":a.default,"k-textarea":c.default,"k-input-number":i.default},_={"k-input":{component:[o.default,a.default]},"k-textarea":{component:[o.default,c.default]},"k-input-number":{component:[o.default,i.default]}};function g(r=[]){const t={};for(const[e,l]of Object.entries(_)){const s=[...l.component];for(const p of r){const{keys:n}=p;(Array.isArray(n)?n.includes(e):n.test(e))&&s.push(p.component)}t[e]=d(e,s)}return t}function d(r,t){return u.defineComponent({name:`${r}-props`,inheritAttrs:!1,setup(){return()=>u.h(f.Collapse,null,{default:()=>t.map(e=>u.h(e))})}})}exports.components=m;exports.expandProps=g;exports.propsWidgetDecorator=d;exports.widgetProps=_;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=r=>r,o={name:{type:String,required:!0},size:{type:Number},color:{type:String}},t={design:{type:Object,required:!0}},i={icon:{type:e([Object,String]),required:!0}};exports.FormDesignProps=t;exports.definePropType=e;exports.iconProps=o;exports.widgetIconProps=i;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=r=>r,o={name:{type:String,required:!0},size:{type:Number},color:{type:String}},t={design:{type:Object,required:!0}},n={expandProps:{type:Array,default:()=>[]}},i={icon:{type:e([Object,String]),required:!0}};exports.FormConfigProps=n;exports.FormDesignProps=t;exports.definePropType=e;exports.iconProps=o;exports.widgetIconProps=i;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={name:"布局组件",key:"layout",widget:[{title:"表单布局",icon:"k-form-grid",key:"form-layout",type:"void","k-component":"FormLayout"}]},t={name:"基础组件",key:"basic",widget:[{title:"输入框",key:"k-input",type:"string",icon:"form-input","k-component":"Input","k-component-props":{placeholder:"请输入"}},{title:"多文本输入框",key:"k-textarea",type:"string",icon:"form-textarea","k-component":"Textarea","k-component-props":{placeholder:"请输入"}},{title:"数字输入框",key:"k-input-number",type:"number",icon:"form-number","k-component":"InputNumber","k-component-props":{placeholder:"请输入"}},{title:"下拉选择框",key:"k-select",type:"string",icon:"form-select","k-component":"Select",enum:[{label:"选项1",value:"1"},{label:"选项2",value:"2"}],"k-component-props":{placeholder:"请选择"}}]},o={name:"扩展组件",key:"extend",widget:[{title:"对象容器",key:"k-object",type:"object",icon:"form-object",
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={name:"布局组件",key:"layout",widget:[{title:"表单布局",icon:"k-form-grid",key:"form-layout",type:"void","k-component":"FormLayout"}]},t={name:"基础组件",key:"basic",widget:[{title:"输入框",key:"k-input",type:"string",icon:"form-input","k-component":"Input","k-component-props":{placeholder:"请输入"}},{title:"多文本输入框",key:"k-textarea",type:"string",icon:"form-textarea","k-component":"Textarea","k-component-props":{placeholder:"请输入"}},{title:"数字输入框",key:"k-input-number",type:"number",icon:"form-number","k-component":"InputNumber","k-component-props":{placeholder:"请输入"}},{title:"下拉选择框",key:"k-select",type:"string",icon:"form-select","k-component":"Select",enum:[{label:"选项1",value:"1"},{label:"选项2",value:"2"}],"k-component-props":{placeholder:"请选择"}}]},o={name:"扩展组件",key:"extend",widget:[{title:"对象容器",key:"k-object",type:"object",icon:"form-object",children:[]},{title:"数组容器",key:"k-array-card",type:"array",icon:"form-list",children:[],"k-component":"ArrayCard"},{title:"明细表",key:"k-table",type:"array",icon:"form-table","k-component":"FormLayout"}]};exports.BaseSchema=t;exports.ExtendSchema=o;exports.LayoutSchema=e;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var h=Object.defineProperty;var c=(
|
|
1
|
+
"use strict";var h=Object.defineProperty;var c=(r,e,s)=>e in r?h(r,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):r[e]=s;var t=(r,e,s)=>c(r,typeof e!="symbol"?e+"":e,s);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("vue");require("../effects/index.js");const d=require("../components/panel/index.js");require("../components/props/index.js");const g=require("../plugins/index.js"),p=require("./Heart.js"),a=require("./FormSchema.js"),l=require("../components/props/widget/index.js"),m=require("../effects/effective.js");class f{constructor(e){t(this,"schema");t(this,"heart");t(this,"plugin");t(this,"FormSchema",new a.FormSchema);t(this,"props");t(this,"checkedField",u.ref({}));t(this,"shared",{draggedContext:{key:""},panelWidgets:{},propsWidgets:{}});t(this,"extendFormProps",[]);t(this,"notify",(e,...s)=>{this.heart.publish(e,...s)});const{extendFormProps:s=[],propsWidgets:i={},panelWidgets:o={},...n}=e;this.shared.panelWidgets={...d.widgetPanels,...o},this.shared.propsWidgets={...l.widgetProps,...i},this.props={...n},this.schema=e.schema,this.plugin=new g.Plugin,this.heart=new p.Heart({lifecycles:this.lifecycles,context:this}),this.extendFormProps=s}use(e){this.plugin.use(e)}getFormSchema(){return this.FormSchema.getSchema()}getFieldList(){return this.FormSchema.getFieldList()}get lifecycles(){return this.props.effects?m.runEffects(this,this.props.effects):[]}get hooks(){return this.plugin.hooks}get fields(){return this.FormSchema.fields}}exports.FormDesign=f;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var c=Object.defineProperty;var a=(s,e,t)=>e in s?c(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var o=(s,e,t)=>a(s,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),l=require("@king-one/utils"),h=require("./Field.js");class d{constructor(){o(this,"version","1.0.0");o(this,"fields",n.ref([]))}getSchema(){const e=n.toRaw(this.fields.value),t=this.jsonToschema(e);return{version:this.version,form:{schema:t}}}getFieldList(){return this.fields.value.map(e=>new h.Field(e))}jsonToschema(e,t={}){return e.forEach(i=>{const r=this.omit(i,["children"]);r.type==="object"||r.type==="void"?t[r.name]={...r,properties:this.jsonToschema(i.children)}:r.type==="array"?t[r.name]={...r,items:{type:"object",id:l.uid(),properties:this.jsonToschema(i.children)}}:t[r.name]=r}),t}omit(e,t){const i={...e};return t.forEach(r=>{delete i[r]}),i}}exports.FormSchema=d;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("monaco-editor"),a=require("monaco-editor/esm/vs/language/json/json.worker?worker"),c=require("vue");function l(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const s=l(u);function i(e){window.MonacoEnvironment={getWorker(n,o){switch(o){case"json":return new a({name:o});default:return new Promise(()=>{})}}};let t=null;const r=async n=>{t&&t.setValue(JSON.stringify(n,null,2))};return c.onMounted(()=>{e.value&&(t=s.editor.create(e.value,{value:"",readOnly:!0,automaticLayout:!0,scrollbar:{verticalScrollbarSize:5},theme:"vs",language:"json",selectOnLineNumbers:!0,scrollBeyondLastLine:!0,overviewRulerBorder:!1}))}),{setEditorValue:r}}exports.useMonaco=i;
|
package/dist/lib/src/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./style/index.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")
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./style/index.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");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.onDesignFieldChange=n.onDesignFieldChange;exports.onDesignInit=n.onDesignInit;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.k-design-form-config .setting-tabs{height:100%}.k-design-form-config .setting-tabs .ant-tabs-content{height:100%;overflow:auto}.k-design-form-config .ant-collapse{border-radius:0;border-left:none;border-right:none}.k-design-form-config .ant-collapse-header{padding:5px 10px!important}.k-design-form-config .ant-collapse-item{border-radius:0!important}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
@font-face{font-family:iconfont-design;src:url(fonts/iconfont.woff2?t=
|
|
1
|
+
@font-face{font-family:iconfont-design;src:url(fonts/iconfont.woff2?t=55242) format("woff2"),url(fonts/iconfont.woff?t=53702) format("woff"),url(fonts/iconfont.ttf?t=42043) 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 +1 @@
|
|
|
1
|
-
:root{--king-color-white:#ffffff;--king-color-primary:#409eff;--king-color-primary-light-3:#79bbff;--king-color-primary-light-5:#a0cfff;--king-color-primary-light-7:#c6e2ff;--king-color-primary-light-8:#d9ecff;--king-color-primary-light-9:#ecf5ff;--king-color-success:#67c23a;--king-color-success-light-3:#95d475;--king-color-success-light-5:#b3e19d;--king-color-success-light-7:#d1edc4;--king-color-success-light-8:#e1f3d8;--king-color-success-light-9:#f0f9eb;--king-color-warning:#e6a23c;--king-color-warning-light-3:#eebe77;--king-color-warning-light-5:#f3d19e;--king-color-warning-light-7:#f8e3c5;--king-color-warning-light-8:#faecd8;--king-color-warning-light-9:#fdf6ec;--king-color-danger:#f56c6c;--king-color-danger-light-3:#f89898;--king-color-danger-light-5:#fab6b6;--king-color-danger-light-7:#fcd3d3;--king-color-danger-light-8:#fde2e2;--king-color-danger-light-9:#fef0f0;--king-color-error:#f56c6c;--king-color-error-light-3:#f89898;--king-color-error-light-5:#fab6b6;--king-color-error-light-7:#fcd3d3;--king-color-error-light-8:#fde2e2;--king-color-error-light-9:#fef0f0;--king-color-info:#909399;--king-color-info-light-3:#b1b3b8;--king-color-info-light-5:#c8c9cc;--king-color-info-light-7:#dedfe0;--king-color-info-light-8:#e9e9eb;--king-color-info-light-9:#f4f4f5;--king-transition-duration:0.3s}.k-design-main{width:100%;height:100%;display:flex;background:#f8f8f8;overflow:hidden;overflow-x:auto;font-size:13px;text-align:initial}.k-design-main,.k-design-main *{box-sizing:border-box}.k-design-material{flex:0 0 320px;height:100%;border:1px solid var(--king-color-info-light-7)}.k-design-material .k-design-toolbar{height:50px;display:flex;justify-content:center;align-items:center}.k-design-material .k-design-toolbar .toolbar-button{width:120px;text-align:center}.k-design-material .k-design-widget{padding:0 10px}.k-design-material .k-design-widget .widget-group-name{color:var(--king-color-info);font-size:14px;margin:10px 0}.k-design-material .k-design-widget .widget-list-drag{display:flex;flex-flow:row wrap;margin-left:-5px;margin-right:-5px;row-gap:10px}.k-design-material .k-design-widget .widget-col{padding-left:5px;padding-right:5px;width:50%}.k-design-material .k-design-widget .widget-col .widget-item{display:flex;align-items:center;padding:8px 10px;background:#fff;border:1px solid var(--king-color-info-light-9);border-radius:5px;cursor:pointer;font-size:13px}.k-design-material .k-design-widget .widget-item:hover{color:var(--king-color-primary);border-color:var(--king-color-primary-light-3)}.k-design-material .k-design-widget .widget-item-icon{margin-right:5px}.k-design-setting{flex:0;height:100%;border:1px solid var(--king-color-info-light-7);position:relative;background:#fff}.k-design-setting .setting-aside{height:100%;width:320px}.k-design-setting .setting-
|
|
1
|
+
:root{--king-color-white:#ffffff;--king-color-primary:#409eff;--king-color-primary-light-3:#79bbff;--king-color-primary-light-5:#a0cfff;--king-color-primary-light-7:#c6e2ff;--king-color-primary-light-8:#d9ecff;--king-color-primary-light-9:#ecf5ff;--king-color-success:#67c23a;--king-color-success-light-3:#95d475;--king-color-success-light-5:#b3e19d;--king-color-success-light-7:#d1edc4;--king-color-success-light-8:#e1f3d8;--king-color-success-light-9:#f0f9eb;--king-color-warning:#e6a23c;--king-color-warning-light-3:#eebe77;--king-color-warning-light-5:#f3d19e;--king-color-warning-light-7:#f8e3c5;--king-color-warning-light-8:#faecd8;--king-color-warning-light-9:#fdf6ec;--king-color-danger:#f56c6c;--king-color-danger-light-3:#f89898;--king-color-danger-light-5:#fab6b6;--king-color-danger-light-7:#fcd3d3;--king-color-danger-light-8:#fde2e2;--king-color-danger-light-9:#fef0f0;--king-color-error:#f56c6c;--king-color-error-light-3:#f89898;--king-color-error-light-5:#fab6b6;--king-color-error-light-7:#fcd3d3;--king-color-error-light-8:#fde2e2;--king-color-error-light-9:#fef0f0;--king-color-info:#909399;--king-color-info-light-3:#b1b3b8;--king-color-info-light-5:#c8c9cc;--king-color-info-light-7:#dedfe0;--king-color-info-light-8:#e9e9eb;--king-color-info-light-9:#f4f4f5;--king-transition-duration:0.3s}.k-design-main{width:100%;height:100%;display:flex;background:#f8f8f8;overflow:hidden;overflow-x:auto;font-size:13px;text-align:initial}.k-design-main,.k-design-main *{box-sizing:border-box}.k-design-material{flex:0 0 320px;height:100%;border:1px solid var(--king-color-info-light-7)}.k-design-material .k-design-toolbar{height:50px;display:flex;justify-content:center;align-items:center}.k-design-material .k-design-toolbar .toolbar-button{width:120px;text-align:center}.k-design-material .k-design-widget{padding:0 10px}.k-design-material .k-design-widget .widget-group-name{color:var(--king-color-info);font-size:14px;margin:10px 0}.k-design-material .k-design-widget .widget-list-drag{display:flex;flex-flow:row wrap;margin-left:-5px;margin-right:-5px;row-gap:10px}.k-design-material .k-design-widget .widget-col{padding-left:5px;padding-right:5px;width:50%}.k-design-material .k-design-widget .widget-col .widget-item{display:flex;align-items:center;padding:8px 10px;background:#fff;border:1px solid var(--king-color-info-light-9);border-radius:5px;cursor:pointer;font-size:13px}.k-design-material .k-design-widget .widget-item:hover{color:var(--king-color-primary);border-color:var(--king-color-primary-light-3)}.k-design-material .k-design-widget .widget-item-icon{margin-right:5px}.k-design-setting{flex:0;height:100%;border:1px solid var(--king-color-info-light-7);position:relative;background:#fff}.k-design-setting .setting-aside{height:100%;width:320px}.k-design-setting .setting-aside .setting-empty{margin-top:50px}.k-design-setting .setting-collapse{position:absolute;left:-25px;top:8px;cursor:pointer;border-left:none}.form-design-collapse-enter-active,.form-design-collapse-leave-active{transition:var(--form-design-collapse-duration) max-width linear,var(--form-design-collapse-duration) padding-left linear,var(--form-design-collapse-duration) padding-right linear}:root{--form-design-collapse-duration:0.3s}.k-design-panel{flex:1;min-width:800px;border-top:1px solid var(--king-color-info-light-7);border-bottom:1px solid var(--king-color-info-light-7);display:flex;flex-direction:column}.k-design-panel .k-design-panel__toolbar{min-height:38px;background:#fff;display:flex;justify-content:space-between;align-items:center;padding:5px 10px;border-bottom:1px solid var(--king-color-info-light-9)}.k-design-panel .k-design-panel__toolbar .k-design-panel__toolbar--icon{cursor:pointer;margin-right:5px}.k-design-panel .k-design-panel__toolbar .right{padding-right:25px;display:flex;align-items:center}.k-design-panel .k-design-panel__content{flex:1;overflow:hidden;position:relative}.k-design-panel .k-design-panel__content .design-from{height:100%}.k-design-panel .k-design-panel__content .content-panel{height:100%;overflow:auto}.k-design-panel .k-design-panel__content .content-panel .prompt{margin:0 auto;width:65%;max-width:400px;padding:35px 20px;border-radius:10px;border:1px dashed rgba(25,31,37,.12);margin-top:50px;text-align:center;font-size:14px;color:#7a7a7a}.k-design-panel .k-design-panel__content .content-editor{height:100%;overflow:hidden}.k-design-panel .k-design-panel__content .drag-from{min-height:100%;padding-bottom:20px}.k-design-panel .k-design-panel__content .drag-from .widget-col{background-color:#fff}.k-design-panel .k-design-panel__content .drag-from .widget-col .widget-item{display:flex;padding:10px}.k-design-panel .k-design-panel__content .drag-from .widget-col .widget-item .widget-item-icon{margin-right:5px}@font-face{font-family:iconfont-design;src:url(fonts/iconfont.woff2?t=10161) format("woff2"),url(fonts/iconfont.woff?t=30856) format("woff"),url(fonts/iconfont.ttf?t=48244) 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"}.k-design-panel-item{cursor:move;border:1px dashed transparent;padding:10px;background-color:#fff;margin-bottom:10px;position:relative}.k-design-panel-item .k-design-panel-item__form{margin-bottom:0;cursor:move}.k-design-panel-item .k-design-panel-item__form *{cursor:move}.k-design-panel-item .k-design-panel-item__error{color:var(--king-color-error)}.k-design-panel-item .icons{position:absolute;right:0;bottom:0;background-color:#fff;border:1px solid var(--king-color-primary);border-bottom:0;border-right:0;padding:0 7px;cursor:pointer;border-top-left-radius:10px}.k-design-panel-item .icons .panel-icon{color:var(--king-color-primary);cursor:pointer}.k-design-panel-item .icons .panel-icon{margin-right:5px}.k-design-panel-item .icons .panel-exclamation-icon{color:var(--king-color-error)}.k-design-panel-item--active{border-color:var(--king-color-primary);border-left:4px solid var(--king-color-primary)}.k-design-panel-item--error{border-color:var(--king-color-error)}.k-design-panel-item--error .icons{border-color:var(--king-color-error)}.k-design-panel-drag{min-height:60px;background-color:#f5f6f6;padding:10px 5px}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.k-design-setting{flex:0;height:100%;border:1px solid var(--king-color-info-light-7);position:relative;background:#fff}.k-design-setting .setting-aside{height:100%;width:320px}.k-design-setting .setting-
|
|
1
|
+
.k-design-setting{flex:0;height:100%;border:1px solid var(--king-color-info-light-7);position:relative;background:#fff}.k-design-setting .setting-aside{height:100%;width:320px}.k-design-setting .setting-aside .setting-empty{margin-top:50px}.k-design-setting .setting-collapse{position:absolute;left:-25px;top:8px;cursor:pointer;border-left:none}
|
|
@@ -1,3 +1,17 @@
|
|
|
1
1
|
import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
2
|
-
declare
|
|
2
|
+
declare function __VLS_template(): {
|
|
3
|
+
slots: {
|
|
4
|
+
default?(_: {}): any;
|
|
5
|
+
};
|
|
6
|
+
refs: {};
|
|
7
|
+
attrs: Partial<{}>;
|
|
8
|
+
};
|
|
9
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
10
|
+
declare const __VLS_component: DefineComponent<{}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
11
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
3
12
|
export default _default;
|
|
13
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
14
|
+
new (): {
|
|
15
|
+
$slots: S;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
@@ -2,3 +2,4 @@ export { default as FormMaterial } from './form-material.vue';
|
|
|
2
2
|
export { default as FormSetting } from './form-setting.vue';
|
|
3
3
|
export { default as FormPanel } from './form-panel.vue';
|
|
4
4
|
export { default as FormIcon } from './form-icon.vue';
|
|
5
|
+
export { FormConfig } from './props';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const widgetPanels: Record<string,
|
|
1
|
+
import { ComponentWidgetType } from '../../types';
|
|
2
|
+
export declare const widgetPanels: Record<string, ComponentWidgetType>;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { DefineComponent, ExtractPropTypes, PropType, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
2
|
+
import { ExpandPropsType } from '../types';
|
|
3
|
+
declare function __VLS_template(): {
|
|
4
|
+
slots: {
|
|
5
|
+
formProps?(_: {}): any;
|
|
6
|
+
};
|
|
7
|
+
refs: {};
|
|
8
|
+
attrs: Partial<{}>;
|
|
9
|
+
};
|
|
10
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
11
|
+
declare const __VLS_component: DefineComponent<ExtractPropTypes<{
|
|
12
|
+
readonly expandProps: {
|
|
13
|
+
readonly type: PropType< ExpandPropsType[]>;
|
|
14
|
+
readonly default: () => never[];
|
|
15
|
+
};
|
|
16
|
+
}>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly< ExtractPropTypes<{
|
|
17
|
+
readonly expandProps: {
|
|
18
|
+
readonly type: PropType< ExpandPropsType[]>;
|
|
19
|
+
readonly default: () => never[];
|
|
20
|
+
};
|
|
21
|
+
}>> & Readonly<{}>, {
|
|
22
|
+
readonly expandProps: ExpandPropsType[];
|
|
23
|
+
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
24
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
25
|
+
export default _default;
|
|
26
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
27
|
+
new (): {
|
|
28
|
+
$slots: S;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
1
|
+
import { PropsWidgetType } from '@king-one/form-design/src/types';
|
|
2
|
+
import { Component, DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions, VNode, RendererNode, RendererElement } from 'vue';
|
|
3
|
+
import { ExpandPropsType } from '../../types';
|
|
3
4
|
export declare const components: {
|
|
4
5
|
'k-input': DefineComponent<{}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
5
6
|
'k-textarea': DefineComponent<{}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
6
7
|
'k-input-number': DefineComponent<{}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
7
8
|
};
|
|
8
|
-
export declare const widgetProps: Record<string,
|
|
9
|
+
export declare const widgetProps: Record<string, PropsWidgetType>;
|
|
10
|
+
export declare function expandProps(expandSchema?: ExpandPropsType[]): Record<string, Component>;
|
|
11
|
+
export declare function propsWidgetDecorator(key: string, components: Component[]): DefineComponent<{}, () => VNode<RendererNode, RendererElement, {
|
|
12
|
+
[key: string]: any;
|
|
13
|
+
}>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { FormDesignInstance } from '@king-one/form-design/src/types';
|
|
2
|
-
import { PropType, VNode, RendererNode, RendererElement } from 'vue';
|
|
2
|
+
import { Component, PropType, VNode, RendererNode, RendererElement } from 'vue';
|
|
3
|
+
export interface ExpandPropsType {
|
|
4
|
+
component: Component;
|
|
5
|
+
keys: Array<string> | RegExp;
|
|
6
|
+
}
|
|
3
7
|
export declare const definePropType: <T>(val: any) => PropType<T>;
|
|
4
8
|
export declare const iconProps: {
|
|
5
9
|
readonly name: {
|
|
@@ -19,6 +23,12 @@ export declare const FormDesignProps: {
|
|
|
19
23
|
readonly required: true;
|
|
20
24
|
};
|
|
21
25
|
};
|
|
26
|
+
export declare const FormConfigProps: {
|
|
27
|
+
readonly expandProps: {
|
|
28
|
+
readonly type: PropType<ExpandPropsType[]>;
|
|
29
|
+
readonly default: () => never[];
|
|
30
|
+
};
|
|
31
|
+
};
|
|
22
32
|
export declare const widgetIconProps: {
|
|
23
33
|
readonly icon: {
|
|
24
34
|
readonly type: PropType<string | VNode< RendererNode, RendererElement, {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { DesignParams, DesignSchema, FieldSchema, FormDesignPlugin,
|
|
2
|
-
import { Ref, VNode
|
|
1
|
+
import { ComponentWidgetType, DesignParams, DesignSchema, FieldSchema, FormDesignPlugin, PropsWidgetType, valueType } from '@king-one/form-design/src/types';
|
|
2
|
+
import { Ref, VNode } from 'vue';
|
|
3
3
|
import { Field } from './Field';
|
|
4
4
|
import { SyncBailHook, UnsetAdditionalOptions } from '@king-one/tapable';
|
|
5
5
|
export declare class FormDesign {
|
|
@@ -18,7 +18,7 @@ export declare class FormDesign {
|
|
|
18
18
|
title: string;
|
|
19
19
|
key: string;
|
|
20
20
|
type: valueType;
|
|
21
|
-
'k-component'
|
|
21
|
+
'k-component'?: string | undefined;
|
|
22
22
|
enum?: any[] | undefined;
|
|
23
23
|
items?: any[] | undefined;
|
|
24
24
|
children?: any[] | undefined;
|
|
@@ -43,7 +43,7 @@ export declare class FormDesign {
|
|
|
43
43
|
title: string;
|
|
44
44
|
key: string;
|
|
45
45
|
type: valueType;
|
|
46
|
-
'k-component'
|
|
46
|
+
'k-component'?: string | undefined;
|
|
47
47
|
enum?: any[] | undefined;
|
|
48
48
|
items?: any[] | undefined;
|
|
49
49
|
children?: any[] | undefined;
|
|
@@ -90,7 +90,7 @@ export declare class FormDesign {
|
|
|
90
90
|
title: string;
|
|
91
91
|
key: string;
|
|
92
92
|
type: valueType;
|
|
93
|
-
'k-component'
|
|
93
|
+
'k-component'?: string | undefined;
|
|
94
94
|
enum?: any[] | undefined;
|
|
95
95
|
items?: any[] | undefined;
|
|
96
96
|
children?: any[] | undefined;
|
|
@@ -115,7 +115,7 @@ export declare class FormDesign {
|
|
|
115
115
|
title: string;
|
|
116
116
|
key: string;
|
|
117
117
|
type: valueType;
|
|
118
|
-
'k-component'
|
|
118
|
+
'k-component'?: string | undefined;
|
|
119
119
|
enum?: any[] | undefined;
|
|
120
120
|
items?: any[] | undefined;
|
|
121
121
|
children?: any[] | undefined;
|
|
@@ -157,8 +157,8 @@ export declare class FormDesign {
|
|
|
157
157
|
draggedContext: {
|
|
158
158
|
key: string;
|
|
159
159
|
};
|
|
160
|
-
panelWidgets: Record<string,
|
|
161
|
-
|
|
160
|
+
panelWidgets: Record<string, ComponentWidgetType>;
|
|
161
|
+
propsWidgets: Record<string, PropsWidgetType>;
|
|
162
162
|
};
|
|
163
163
|
extendFormProps: NonNullable<DesignParams["extendFormProps"]>;
|
|
164
164
|
constructor(params: DesignParams);
|
|
@@ -168,14 +168,10 @@ export declare class FormDesign {
|
|
|
168
168
|
version: string;
|
|
169
169
|
form: {
|
|
170
170
|
schema: {};
|
|
171
|
-
layout: "horizontal" | "vertical";
|
|
172
|
-
labelAlign: "left" | "right" | "top";
|
|
173
|
-
style?: CSSProperties;
|
|
174
171
|
};
|
|
175
172
|
};
|
|
176
173
|
getFieldList(): Field[];
|
|
177
174
|
private get lifecycles();
|
|
178
|
-
getFormProps(): FormProps;
|
|
179
175
|
get hooks(): {
|
|
180
176
|
beforeDelete: SyncBailHook<FieldSchema, boolean, UnsetAdditionalOptions>;
|
|
181
177
|
};
|
|
@@ -183,7 +179,7 @@ export declare class FormDesign {
|
|
|
183
179
|
title: string;
|
|
184
180
|
key: string;
|
|
185
181
|
type: valueType;
|
|
186
|
-
'k-component'
|
|
182
|
+
'k-component'?: string | undefined;
|
|
187
183
|
enum?: any[] | undefined;
|
|
188
184
|
items?: any[] | undefined;
|
|
189
185
|
children?: any[] | undefined;
|
|
@@ -207,7 +203,7 @@ export declare class FormDesign {
|
|
|
207
203
|
title: string;
|
|
208
204
|
key: string;
|
|
209
205
|
type: valueType;
|
|
210
|
-
'k-component'
|
|
206
|
+
'k-component'?: string | undefined;
|
|
211
207
|
enum?: any[] | undefined;
|
|
212
208
|
items?: any[] | undefined;
|
|
213
209
|
children?: any[] | undefined;
|