cnhis-design-vue 3.1.45-beta.3 → 3.1.45-beta.4

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.
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,provide as r,toRaw as t,openBlock as i,createElementBlock as a,normalizeStyle as n,unref as s,createElementVNode as m,createVNode as l,mergeProps as f,withCtx as c,createTextVNode as u}from"vue";import{useTheme as d}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{cloneDeep as p,isArray as g,isFunction as h}from"lodash-es";import{uuidGenerator as v}from"../../../shared/utils/index.js";import _ from"../../../shared/components/VueDraggable/src/vuedraggable.js";import C from"./components/FormConfigCreator.vue.js";import j from"./components/FormConfigDragDisplay.vue.js";import y from"./components/FormConfigEdit.vue.js";import x from"./components/FormConfigMaterialItem.js";import{useDataNormalize as F}from"./hooks/useDataNormalize.js";import{InjectionFieldList as V,InjectionMaterialList as b,InjectionActiveFieldItem as k,FORM_CONFIG_GROUP as D}from"./constants/index.js";import"@vicons/ionicons5";import"naive-ui";import"./utils/index.js";import{useSortableConfig as R}from"./hooks/useSortalbeConfig.js";import"./hooks/useConfigurationField.js";const E=["id"],H={class:"form-config__material"},I=m("header",{class:"form-config__materialHeader"},"物料区",-1),L={class:"form-config__displayWrapper"},N={class:"form-config__displayHeader"},O={class:"form-config__config"},S=m("header",{class:"form-config__configHeader"},"配置区",-1),T={class:"form-config__configContent"};var A=e({__name:"FormConfig",props:{maxHeight:{type:String},fieldVisitor:{type:Object},textFormatter:{type:Function},formRenderRef:{type:Object}},setup(e,{expose:A}){const B=e,M=v(),U=d(),{getCommonConfig:w}=R(),z=o([]);r(V,z);const W=o([]);function q(e){z.value.some((o=>o.key===e.key))||z.value.push(e)}r(b,W);const G=(e,o)=>h(B.textFormatter)?B.textFormatter(e,o):o,J=o();r(k,J);const K=o(),{transform:P,inverseTransform:Q}=F(B);return A({loadData({fieldList:e}){let o=[],r=[];e.forEach((e=>function(e){"LINE_BAR"===e.type&&(e.children=[]);!1===e.show?r.push(e):o.push(e),"COMBINATION"===e.type&&g(e.children)&&e.children.length&&e.children.forEach((e=>{e.__isCombinationChild=!0}))}(p(t(e))))),z.value=P(o),W.value=r,J.value=void 0},validate(){var e;return null==(e=K.value)?void 0:e.validate()},getData:()=>({fieldList:Q(p(t(z.value))),materialList:Q(p(t(W.value)))})}),(o,r)=>(i(),a("section",{class:"form-config",style:n({"--max-height":e.maxHeight,...s(U)}),id:s(M)},[m("section",H,[I,l(s(_),f(s(w)(),{class:"form-config__materialContent",modelValue:W.value,"onUpdate:modelValue":r[0]||(r[0]=e=>W.value=e)}),{item:c((({element:e})=>[l(s(x),{"form-config-item":e,"text-formatter":G},null,8,["form-config-item"])])),_:1},16,["modelValue"])]),m("section",L,[m("header",N,[u(" 布局区 "),l(C,{onSubmit:q})]),l(j,{class:"form-config__displayContent",group:s(D),"text-formatter":G,modelValue:z.value,"onUpdate:modelValue":r[1]||(r[1]=e=>z.value=e)},null,8,["group","modelValue"])]),m("section",O,[S,m("section",T,[l(y,{ref_key:"formConfigEditRef",ref:K,uuid:s(M),"form-render-ref":e.formRenderRef},null,8,["uuid","form-render-ref"])])])],12,E))}});export{A as default};
1
+ import{defineComponent as e,provide as o,ref as t,computed as a,toRaw as r,openBlock as i,createElementBlock as l,normalizeStyle as n,unref as s,createElementVNode as m,createVNode as f,mergeProps as u,withCtx as c,createBlock as d,isRef as p,createCommentVNode as v,createTextVNode as g}from"vue";import{useTheme as h}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isArray as _,cloneDeep as y,isFunction as x}from"lodash-es";import{uuidGenerator as C}from"../../../shared/utils/index.js";import j from"../../../shared/components/VueDraggable/src/vuedraggable.js";import k from"./components/FormConfigCreator.vue.js";import L from"./components/FormConfigDragDisplay.vue.js";import F from"./components/FormConfigEdit.vue.js";import b from"./components/FormConfigMaterialItem.js";import{useDataNormalize as M}from"./hooks/useDataNormalize.js";import{InjectionFormConfigEmit as V,InjectionFieldList as E,InjectionMaterialList as I,InjectionActiveFieldItem as D,FORM_CONFIG_GROUP as R}from"./constants/index.js";import"@vicons/ionicons5";import{NSelect as H}from"naive-ui";import"./utils/index.js";import{useSortableConfig as N}from"./hooks/useSortalbeConfig.js";import"./hooks/useConfigurationField.js";const O=["id"],A={class:"form-config__material"},S=m("header",{class:"form-config__materialHeader"},"物料区",-1),T={class:"form-config__displayWrapper"},U={class:"form-config__displayHeader"},w={class:"form-config__config"},B=m("header",{class:"form-config__configHeader"},"配置区",-1),z={class:"form-config__configContent"};var W=e({__name:"FormConfig",props:{maxHeight:{type:String},fieldVisitor:{type:Object},textFormatter:{type:Function},formRenderRef:{type:Object},extraMaterialList:{type:[Array,Function]}},emits:["addItem","removeItem"],setup(e,{expose:W,emit:q}){const G=e;o(V,q);const J=C(),K=h(),{getCommonConfig:P}=N(),Q=t([]);o(E,Q);const X=t([]);function Y(e){Q.value.some((o=>o.key===e.key))||Q.value.push(e)}o(I,X);const Z=(e,o)=>x(G.textFormatter)?G.textFormatter(e,o):o,$=t();o(D,$);const ee=t(),{transform:oe,inverseTransform:te}=M(G),ae=a({get:()=>null,set(e){if(!e)return;const o=ie.value.find((o=>o.key===e));o&&(o.__extra=!0,X.value.push(o),q("addItem",o))}}),re=t([]),ie=a((()=>_(re.value)?re.value.filter((e=>!X.value.find((o=>o.key===e.key))&&!Q.value.find((o=>o.key===e.key)))):[]));async function le(){G.extraMaterialList&&!re.value.length&&(re.value=x(G.extraMaterialList)?await G.extraMaterialList():G.extraMaterialList)}return W({loadData({fieldList:e}){let o=[],t=[];e.forEach((e=>function(e){"LINE_BAR"===e.type&&(e.children=[]);!1===e.show?t.push(e):o.push(e),"COMBINATION"===e.type&&_(e.children)&&e.children.length&&e.children.forEach((e=>{e.__isCombinationChild=!0}))}(y(r(e))))),Q.value=oe(o),X.value=t,$.value=void 0},validate(){var e;return null==(e=ee.value)?void 0:e.validate()},getData:()=>({fieldList:te(y(r(Q.value))),materialList:te(y(r(X.value)))}),clearExtraList(){re.value=[]}}),(o,t)=>(i(),l("section",{class:"form-config",style:n({"--max-height":e.maxHeight,...s(K)}),id:s(J)},[m("section",A,[S,f(s(j),u(s(P)(),{class:"form-config__materialContent",modelValue:X.value,"onUpdate:modelValue":t[0]||(t[0]=e=>X.value=e)}),{item:c((({element:e})=>[f(s(b),{"form-config-item":e,"text-formatter":Z,"material-List":X.value},null,8,["form-config-item","material-List"])])),_:1},16,["modelValue"]),e.extraMaterialList?(i(),d(s(H),{key:0,class:"form-config__materialExtraList",filterable:"",value:s(ae),"onUpdate:value":t[1]||(t[1]=e=>p(ae)?ae.value=e:null),placeholder:"请选择额外物料",options:s(ie),"label-field":"name","value-field":"key",onFocus:le},null,8,["value","options"])):v("v-if",!0)]),m("section",T,[m("header",U,[g(" 布局区 "),f(k,{onSubmit:Y})]),f(L,{class:"form-config__displayContent",group:s(R),"text-formatter":Z,modelValue:Q.value,"onUpdate:modelValue":t[2]||(t[2]=e=>Q.value=e)},null,8,["group","modelValue"])]),m("section",w,[B,m("section",z,[f(F,{ref_key:"formConfigEditRef",ref:ee,uuid:s(J),"form-render-ref":e.formRenderRef},null,8,["uuid","form-render-ref"])])])],12,O))}});export{W as default};
@@ -1 +1 @@
1
- import{defineComponent as e,openBlock as t,createBlock as o,unref as r,mergeProps as m,withCtx as i,createElementVNode as n,normalizeStyle as a,resolveDynamicComponent as s}from"vue";import f from"../../../../shared/components/VueDraggable/src/vuedraggable.js";import{usePresetRenderer as u}from"../hooks/usePresetRenderer.js";import{useSortableConfig as d}from"../hooks/useSortalbeConfig.js";import"../hooks/useConfigurationField.js";import{layoutWidthEnum2Column as p}from"../utils/index.js";const g=["data-type","data-required"];var l=e({__name:"FormConfigDragDisplay",props:{formConfigItem:{type:Object},textFormatter:{type:Function,required:!0}},setup(e){function l(e){return{"--item-column":e?p(e.layoutWidthEnum):24}}const{getRenderer:c}=u(),{getCommonConfig:y}=d();return(u,d)=>(t(),o(r(f),m(r(y)(e.formConfigItem),{style:l(e.formConfigItem)}),{item:i((({element:m})=>[n("div",{class:"form-config__displayContentItem","data-type":m.type,"data-required":m.required,style:a(l(m))},[(t(),o(s(r(c)(m)),{"form-config-item":m,textFormatter:e.textFormatter},null,8,["form-config-item","textFormatter"]))],12,g)])),_:1},16,["style"]))}});export{l as default};
1
+ import{defineComponent as e,openBlock as t,createBlock as r,unref as o,mergeProps as m,withCtx as a,createElementVNode as i,normalizeStyle as n,resolveDynamicComponent as s}from"vue";import f from"../../../../shared/components/VueDraggable/src/vuedraggable.js";import{usePresetRenderer as u}from"../hooks/usePresetRenderer.js";import{useSortableConfig as d}from"../hooks/useSortalbeConfig.js";import"../hooks/useConfigurationField.js";import{layoutWidthEnum2Column as p}from"../utils/index.js";const g=["data-type","data-required","data-extra"];var l=e({__name:"FormConfigDragDisplay",props:{formConfigItem:{type:Object},textFormatter:{type:Function,required:!0}},setup(e){function l(e){return{"--item-column":e?p(e.layoutWidthEnum):24}}const{getRenderer:c}=u(),{getCommonConfig:y}=d();return(u,d)=>(t(),r(o(f),m(o(y)(e.formConfigItem),{style:l(e.formConfigItem)}),{item:a((({element:m})=>[i("div",{class:"form-config__displayContentItem","data-type":m.type,"data-required":!!m.required,"data-extra":!!m.__extra,style:n(l(m))},[(t(),r(s(o(c)(m)),{"form-config-item":m,textFormatter:e.textFormatter},null,8,["form-config-item","textFormatter"]))],12,g)])),_:1},16,["style"]))}});export{l as default};
@@ -3441,6 +3441,7 @@ declare const _default: import("vue").DefineComponent<{
3441
3441
  } | undefined;
3442
3442
  __new?: boolean | undefined;
3443
3443
  __isCombinationChild?: boolean | undefined;
3444
+ __extra?: boolean | undefined;
3444
3445
  }[] | undefined;
3445
3446
  originalSetting?: {
3446
3447
  [x: string]: any;
@@ -5137,6 +5138,7 @@ declare const _default: import("vue").DefineComponent<{
5137
5138
  } | undefined;
5138
5139
  __new?: boolean | undefined;
5139
5140
  __isCombinationChild?: boolean | undefined;
5141
+ __extra?: boolean | undefined;
5140
5142
  }>;
5141
5143
  generateFieldListByFormConfigItem: (formConfigItem: FormConfigItem, fieldItem?: FieldItem | undefined) => FieldItem[];
5142
5144
  showModal: import("vue").Ref<boolean>;
@@ -9,6 +9,10 @@ declare const FormConfigMaterialItem: import("vue").DefineComponent<{
9
9
  type: PropType<FormConfigTextFormatter>;
10
10
  required: true;
11
11
  };
12
+ materialList: {
13
+ type: PropType<FormConfigItem[]>;
14
+ default: () => never[];
15
+ };
12
16
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
13
17
  formConfigItem: {
14
18
  type: PropType<FormConfigItem>;
@@ -18,5 +22,11 @@ declare const FormConfigMaterialItem: import("vue").DefineComponent<{
18
22
  type: PropType<FormConfigTextFormatter>;
19
23
  required: true;
20
24
  };
21
- }>>, {}>;
25
+ materialList: {
26
+ type: PropType<FormConfigItem[]>;
27
+ default: () => never[];
28
+ };
29
+ }>>, {
30
+ materialList: FormConfigItem[];
31
+ }>;
22
32
  export default FormConfigMaterialItem;
@@ -1 +1 @@
1
- import{defineComponent as o,createVNode as e,mergeProps as t}from"vue";import"@vicons/ionicons5";import"lodash-es";import"naive-ui";import"../../../../shared/components/VueDraggable/src/vuedraggable.js";import r from"./renderer/DefaultNode.vue.js";import"../../../../shared/utils/index.js";import"../hooks/useConfigurationField.js";import{layoutWidthEnum2Column as i}from"../utils/index.js";const s=o({props:{formConfigItem:{type:Object,required:!0},textFormatter:{type:Function,required:!0}},setup:o=>()=>e(r,t({style:{"--item-column":i(o.formConfigItem.layoutWidthEnum)},class:"form-config__displayContentItem",showCloseButton:!1,allowClick:!1},o),null)});export{s as default};
1
+ import{defineComponent as e,inject as o,createVNode as t,mergeProps as r}from"vue";import{CloseCircle as i}from"@vicons/ionicons5";import{NButton as n,NIcon as s}from"naive-ui";import"lodash-es";import{InjectionFormConfigEmit as m,InjectionActiveFieldItem as a}from"../constants/index.js";import"../../../../shared/components/VueDraggable/src/vuedraggable.js";import l from"./renderer/DefaultNode.vue.js";import"../../../../shared/utils/index.js";import"../hooks/useConfigurationField.js";import{layoutWidthEnum2Column as u}from"../utils/index.js";const f=e({props:{formConfigItem:{type:Object,required:!0},textFormatter:{type:Function,required:!0},materialList:{type:Array,default:()=>[]}},setup(e){const f=o(m),c=o(a);function d(){const o=e.materialList.findIndex((o=>o.key===e.formConfigItem.key));if(!~o)return;const[t]=e.materialList.splice(o,1);f("removeItem",t),c.value===t&&(c.value=void 0)}return()=>t(l,r({style:{"--item-column":u(e.formConfigItem.layoutWidthEnum)},class:"form-config__displayContentItem",showCloseButton:!1,allowClick:!1},e),{default:()=>e.formConfigItem.__extra?t(n,{text:!0,class:"form-config__renderer--closeButton","text-color":"#a5a5a5",onClick:d},{icon:()=>t(s,{component:i},null)}):null})}});export{f as default};
@@ -45,9 +45,11 @@ declare const _default: import("vue").DefineComponent<{
45
45
  classList: import("vue").ComputedRef<(string | {
46
46
  'is-active': boolean;
47
47
  'is-disabled': boolean;
48
+ 'is-extra': boolean | undefined;
48
49
  })[]>;
49
50
  disabled: import("vue").ComputedRef<boolean>;
50
51
  displayText: import("vue").ComputedRef<string>;
52
+ showCloseBtn: import("vue").ComputedRef<boolean | undefined>;
51
53
  NEllipsis: any;
52
54
  CloseButton: import("vue").DefineComponent<{
53
55
  formConfigItem: {
@@ -1 +1 @@
1
- import{defineComponent as e,inject as o,computed as t,openBlock as r,createElementBlock as i,mergeProps as f,unref as m,withModifiers as n,createVNode as a,normalizeClass as l,withCtx as s,createTextVNode as u,toDisplayString as d,createBlock as C,createCommentVNode as c}from"vue";import{NEllipsis as p}from"naive-ui";import g from"./CloseButton.vue.js";import{InjectionActiveFieldItem as I,WidgetTextMap as _}from"../../constants/index.js";import{bindHover as v}from"../../utils/index.js";const y=["onClick","data-type"];var k=e({__name:"DefaultNode",props:{formConfigItem:{type:Object,required:!0},textFormatter:{type:Function,required:!0},showCloseButton:{type:Boolean,default:!0},allowClick:{type:Boolean,default:!0}},setup(e){const k=e,q=o(I);function x(){k.allowClick&&(q.value=k.formConfigItem)}const B=t((()=>["form-config__renderer--default",{"is-required":k.formConfigItem.required}])),b=t((()=>[{"is-active":q.value===k.formConfigItem,"is-disabled":j.value},"form-config__renderer","form-config__renderer--defaultWrapper"])),j=t((()=>!1===k.formConfigItem.editable)),w=t((()=>{const e=_.get(k.formConfigItem.type);return k.textFormatter(k.formConfigItem,`${k.formConfigItem.name}${e?`(${e})`:""}`)}));return(o,t)=>(r(),i("div",f(m(v)(e.formConfigItem),{onClick:n(x,["stop"]),class:m(b),"data-type":e.formConfigItem.type}),[a(m(p),{class:l(m(B))},{default:s((()=>[u(d(m(w)),1)])),_:1},8,["class"]),!e.showCloseButton||e.formConfigItem.required||e.formConfigItem.__isCombinationChild?c("v-if",!0):(r(),C(g,{key:0,"form-config-item":e.formConfigItem},null,8,["form-config-item"]))],16,y))}});export{k as default};
1
+ import{defineComponent as e,inject as o,computed as t,openBlock as r,createElementBlock as i,mergeProps as f,unref as m,withModifiers as n,createVNode as a,normalizeClass as l,withCtx as s,createTextVNode as u,toDisplayString as d,renderSlot as C,createBlock as c,createCommentVNode as g}from"vue";import{NEllipsis as p}from"naive-ui";import I from"./CloseButton.vue.js";import{InjectionActiveFieldItem as _,WidgetTextMap as v}from"../../constants/index.js";import{bindHover as y}from"../../utils/index.js";const x=["onClick","data-type"];var k=e({__name:"DefaultNode",props:{formConfigItem:{type:Object,required:!0},textFormatter:{type:Function,required:!0},showCloseButton:{type:Boolean,default:!0},allowClick:{type:Boolean,default:!0}},setup(e){const k=e,q=o(_);function B(){k.allowClick&&(q.value=k.formConfigItem)}const b=t((()=>["form-config__renderer--default",{"is-required":k.formConfigItem.required}])),j=t((()=>{var e;return[{"is-active":q.value===k.formConfigItem,"is-disabled":w.value,"is-extra":null==(e=k.formConfigItem)?void 0:e.__extra},"form-config__renderer","form-config__renderer--defaultWrapper"]})),w=t((()=>!1===k.formConfigItem.editable)),$=t((()=>{const e=v.get(k.formConfigItem.type);return k.textFormatter(k.formConfigItem,`${k.formConfigItem.name}${e?`(${e})`:""}`)})),h=t((()=>k.showCloseButton&&(!k.formConfigItem.required&&!k.formConfigItem.__isCombinationChild||k.formConfigItem.__extra)));return(o,t)=>(r(),i("div",f(m(y)(e.formConfigItem),{onClick:n(B,["stop"]),class:m(j),"data-type":e.formConfigItem.type}),[a(m(p),{class:l(m(b))},{default:s((()=>[u(d(m($)),1)])),_:1},8,["class"]),C(o.$slots,"default"),m(h)?(r(),c(I,{key:0,"form-config-item":e.formConfigItem},null,8,["form-config-item"])):g("v-if",!0)],16,x))}});export{k as default};
@@ -81,3 +81,4 @@ export declare const FORM_CONFIG_GROUP = "__display";
81
81
  export declare const InjectionFieldList: InjectionKey<Ref<FormConfigItem[]>>;
82
82
  export declare const InjectionMaterialList: InjectionKey<Ref<FormConfigItem[]>>;
83
83
  export declare const InjectionActiveFieldItem: InjectionKey<Ref<UndefinedAble<FormConfigItem>>>;
84
+ export declare const InjectionFormConfigEmit: InjectionKey<(event: 'addItem' | 'removeItem', ...args: unknown[]) => void>;
@@ -1 +1 @@
1
- import{range as e}from"lodash-es";const t=new Map([["LINE_BAR","分线栏"],["NEWLINE","分行符"]]);var n=(e=>(e.NAME="name",e.NOTES="notes",e.DEFAULT_VALUE="defaultValue",e.LAYOUT_WIDTH_ENUM="layoutWidthEnum",e.DESC="desc",e.DEFAULT_EXPAND="defaultExpand",e.FOLD="fold",e.REQUIRED="required",e.EDITABLE="editable",e.SHOW="show",e.ROWS="initialHigh",e))(n||{});function l(){return{option:[{text:"整行",value:"ALL_LINE"},{text:"半行",value:"HALF_LINE"},{text:"5/6",value:"FIVE_SIX"},{text:"2/3",value:"TWO_THREE"},{text:"1/3",value:"ONE_THREE"},{text:"3/4",value:"THREE_FOUR"},{text:"1/4",value:"ONE_FOUR"},{text:"1/6",value:"ONE_SIX"},{text:"1/8",value:"ONE_EIGHT"}]}}function u(){return{option:e(1,11).map((e=>({text:`${e}行`,value:e})))}}function i(){return{open:{describe:"默认展开",value:!0},close:{describe:"默认收起",value:!1}}}function o(){return{open:{describe:"可折叠",value:!0},close:{describe:"不可折叠",value:!1}}}function a(){return{open:{describe:"可编辑",value:!0},close:{describe:"不可编辑",value:!1}}}function r(){return{open:{describe:"必填",value:!0},close:{describe:"不必填",value:!1}}}function E(){return{open:{describe:"显示",value:!0},close:{describe:"隐藏",value:!1}}}const c="__display",s=Symbol("InjectionFieldList"),d=Symbol("InjectionMaterialList"),v=Symbol("InjectionActiveFieldItem");export{n as EditAbleField,c as FORM_CONFIG_GROUP,v as InjectionActiveFieldItem,s as InjectionFieldList,d as InjectionMaterialList,t as WidgetTextMap,a as isEditOptionConfig,o as isNotFoldOptionConfig,r as isNullOptionConfig,i as isShowOptionConfig,E as isVisibleOptionConfig,u as rowsOptionConfig,l as widgetWidthOptionConfig};
1
+ import{range as e}from"lodash-es";const t=new Map([["LINE_BAR","分线栏"],["NEWLINE","分行符"]]);var n=(e=>(e.NAME="name",e.NOTES="notes",e.DEFAULT_VALUE="defaultValue",e.LAYOUT_WIDTH_ENUM="layoutWidthEnum",e.DESC="desc",e.DEFAULT_EXPAND="defaultExpand",e.FOLD="fold",e.REQUIRED="required",e.EDITABLE="editable",e.SHOW="show",e.ROWS="initialHigh",e))(n||{});function l(){return{option:[{text:"整行",value:"ALL_LINE"},{text:"半行",value:"HALF_LINE"},{text:"5/6",value:"FIVE_SIX"},{text:"2/3",value:"TWO_THREE"},{text:"1/3",value:"ONE_THREE"},{text:"3/4",value:"THREE_FOUR"},{text:"1/4",value:"ONE_FOUR"},{text:"1/6",value:"ONE_SIX"},{text:"1/8",value:"ONE_EIGHT"}]}}function o(){return{option:e(1,11).map((e=>({text:`${e}行`,value:e})))}}function i(){return{open:{describe:"默认展开",value:!0},close:{describe:"默认收起",value:!1}}}function u(){return{open:{describe:"可折叠",value:!0},close:{describe:"不可折叠",value:!1}}}function a(){return{open:{describe:"可编辑",value:!0},close:{describe:"不可编辑",value:!1}}}function r(){return{open:{describe:"必填",value:!0},close:{describe:"不必填",value:!1}}}function E(){return{open:{describe:"显示",value:!0},close:{describe:"隐藏",value:!1}}}const c="__display",s=Symbol("InjectionFieldList"),d=Symbol("InjectionMaterialList"),v=Symbol("InjectionActiveFieldItem"),I=Symbol("InjectionFormConfigEmit");export{n as EditAbleField,c as FORM_CONFIG_GROUP,v as InjectionActiveFieldItem,s as InjectionFieldList,I as InjectionFormConfigEmit,d as InjectionMaterialList,t as WidgetTextMap,a as isEditOptionConfig,u as isNotFoldOptionConfig,r as isNullOptionConfig,i as isShowOptionConfig,E as isVisibleOptionConfig,o as rowsOptionConfig,l as widgetWidthOptionConfig};
@@ -1 +1 @@
1
- import{findAncestor as o}from"../../../../shared/utils/index.js";import{FORM_CONFIG_GROUP as s}from"../constants/index.js";function t(){let t,e=null;function i({target:o,item:s}){e=setTimeout((()=>{o.classList.add("is-choosing-area"),s.classList.add("is-choosing")}),200)}function a({from:o,to:s,target:t,item:i}){clearTimeout(e),[o,s,t].forEach((o=>{o.classList.remove("is-choosing-area")})),i.classList.remove("is-choosing")}function n({to:s,from:e,dragged:i}){return("LINE_BAR"!==i.dataset.type||!o(s,(o=>"LINE_BAR"===o.dataset.type)))&&(("true"!==i.dataset.required||!o(s,(o=>o.classList.contains("form-config__materialContent"))))&&(null==t||t.classList.remove("is-choosing-area"),t=s,s!==e&&e.classList.remove("is-choosing-area"),void s.classList.add("is-choosing-area")))}return{getCommonConfig:o=>({move:n,onChoose:i,onUnchoose:a,tag:"section",forceFallback:!1,animation:"150","item-key":"key",group:"COMBINATION"===(null==o?void 0:o.type)?o.key:s})}}export{t as useSortableConfig};
1
+ import{findAncestor as o}from"../../../../shared/utils/index.js";import{FORM_CONFIG_GROUP as t}from"../constants/index.js";function e(){let e,s=null;function i({target:o,item:t}){s=setTimeout((()=>{o.classList.add("is-choosing-area"),t.classList.add("is-choosing")}),200)}function a({from:o,to:t,target:e,item:i}){clearTimeout(s),[o,t,e].forEach((o=>{o.classList.remove("is-choosing-area")})),i.classList.remove("is-choosing")}function n({to:t,from:s,dragged:i}){return("LINE_BAR"!==i.dataset.type||!o(t,(o=>"LINE_BAR"===o.dataset.type)))&&(("true"!==i.dataset.required||"true"===i.dataset.extra||!o(t,(o=>o.classList.contains("form-config__materialContent"))))&&(null==e||e.classList.remove("is-choosing-area"),e=t,t!==s&&s.classList.remove("is-choosing-area"),void t.classList.add("is-choosing-area")))}return{getCommonConfig:o=>({move:n,onChoose:i,onUnchoose:a,tag:"section",forceFallback:!1,animation:"150","item-key":"key",group:"COMBINATION"===(null==o?void 0:o.type)?o.key:t})}}export{e as useSortableConfig};
@@ -30,6 +30,7 @@ export declare type FormConfigItem = {
30
30
  originalSetting: FieldItem;
31
31
  __new: boolean;
32
32
  __isCombinationChild: boolean;
33
+ __extra: boolean;
33
34
  }>;
34
35
  export interface FormConfigTextFormatter {
35
36
  (formConfigItem: FormConfigItem, parsedText: string): string;
@@ -38,6 +39,7 @@ export interface FormConfigExpose {
38
39
  loadData(payload: Record<'fieldList', FormConfigItem[]>): void;
39
40
  validate(): Promise<unknown>;
40
41
  getData(): Record<'fieldList' | 'materialList', FormConfigItem[]>;
42
+ clearExtraList(): void;
41
43
  }
42
44
  interface FieldVisitorContext {
43
45
  field: FieldItem;
@@ -1 +1 @@
1
- .form-config{display:flex;justify-content:space-between}.form-config__material{border-radius:8px;box-sizing:border-box;flex-shrink:0;padding:16px;width:200px}.form-config__materialHeader{align-items:center;display:flex;height:40px;justify-content:space-between}.form-config__materialContent{border:1px dashed hsla(0,0%,50%,.35);border-radius:8px;box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;gap:8px;max-height:var(--max-height);min-height:200px;overflow-y:auto;padding:16px}.form-config__displayWrapper{border-radius:8px;box-sizing:border-box;flex-shrink:0;flex:1;min-width:400px;padding:16px 0}.form-config__displayHeader{align-items:center;display:flex;height:40px;justify-content:space-between}.form-config__displayContent{border:1px dashed hsla(0,0%,50%,.35);border-radius:8px;box-sizing:border-box;display:grid!important;flex-shrink:0;gap:8px;grid-template-columns:repeat(24,minmax(0,1fr));height:fit-content;max-height:var(--max-height);overflow-y:auto;padding:16px}.form-config__displayContentItem{grid-column:span var(--item-column) /span var(--item-column);position:relative}.form-config__config{border-radius:8px;box-sizing:border-box;flex-shrink:0;padding:16px;width:240px}.form-config__configHeader{align-items:center;display:flex;height:40px;justify-content:space-between}.form-config__configContent{border:none;border-radius:8px;box-sizing:border-box;flex-shrink:0;max-height:var(--max-height);overflow-y:auto;padding:16px}.form-config__renderer{box-sizing:border-box;cursor:move;justify-content:flex-start;width:100%}.form-config__renderer--default{align-items:center;box-sizing:border-box;display:flex;padding:8px 0;position:relative;user-select:none;width:100%}.form-config__renderer--defaultWrapper{align-items:center;border-radius:2px;box-sizing:border-box;display:inline-flex;height:34px;padding:0 14px;transition:all .3s linear}.form-config__renderer--defaultWrapper.is-disabled{background-color:transparent;border:1px dashed var(--c-primary-color)}.form-config__renderer--defaultWrapper:not(.is-disabled){background-color:rgba(46,51,56,.05);border:1px dashed transparent}.form-config__renderer--defaultWrapper:not(.is-disabled):hover{background-color:rgba(46,51,56,.09)}.form-config__renderer--defaultWrapper:not(.is-disabled):active{background-color:rgba(46,51,56,.15)}.form-config__renderer--complex{border:1px dashed var(--c-primary-color);border-radius:8px;padding:8px}.form-config__renderer--complexHeader{display:flex;justify-content:center;margin-top:-8px;padding:8px;position:relative}.form-config__renderer--complex--grid{display:grid!important;gap:8px;grid-column:span var(--item-column) /span var(--item-column);grid-template-columns:repeat(24,minmax(0,1fr));min-height:24px}.form-config__renderer--complex--flex{display:flex;min-height:24px}.form-config .is-required{padding-left:16px!important}.form-config .is-required:before{color:red;content:"*";left:8px;position:absolute}.form-config .is-active{color:var(--c-primary-color)!important}.form-config .is-choosing{box-shadow:inset var(--c-primary-color) 0 0 0 2px;opacity:.7}.form-config .is-choosing-area{background:hsla(0,0%,50%,.1)}.form-config [is-hovering=true] .form-config__renderer--closeButton{visibility:visible}.form-config .form-config__renderer--closeButton{position:absolute;right:4px;top:50%;transform:translateY(-50%);visibility:hidden}
1
+ .form-config,.form-config__material{display:flex;justify-content:space-between}.form-config__material{border-radius:8px;box-sizing:border-box;flex-direction:column;flex-shrink:0;padding:16px;width:200px}.form-config__materialHeader{align-items:center;display:flex;height:40px;justify-content:space-between}.form-config__materialContent{border:1px dashed hsla(0,0%,50%,.35);border-radius:8px;box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;flex:1;gap:8px;max-height:var(--max-height);min-height:200px;overflow-y:auto;padding:16px}.form-config__materialExtraList{margin-top:12px}.form-config__displayWrapper{border-radius:8px;box-sizing:border-box;flex-shrink:0;flex:1;min-width:400px;padding:16px 0}.form-config__displayHeader{align-items:center;display:flex;height:40px;justify-content:space-between}.form-config__displayContent{border:1px dashed hsla(0,0%,50%,.35);border-radius:8px;box-sizing:border-box;display:grid!important;flex-shrink:0;gap:8px;grid-template-columns:repeat(24,minmax(0,1fr));height:fit-content;max-height:var(--max-height);overflow-y:auto;padding:16px}.form-config__displayContentItem{grid-column:span var(--item-column) /span var(--item-column);position:relative}.form-config__config{border-radius:8px;box-sizing:border-box;flex-shrink:0;padding:16px;width:240px}.form-config__configHeader{align-items:center;display:flex;height:40px;justify-content:space-between}.form-config__configContent{border:none;border-radius:8px;box-sizing:border-box;flex-shrink:0;max-height:var(--max-height);min-height:38px;overflow-y:auto;padding:16px}.form-config__renderer{box-sizing:border-box;cursor:move;justify-content:flex-start;width:100%}.form-config__renderer--default{align-items:center;box-sizing:border-box;display:flex;padding:8px 0;position:relative;user-select:none;width:100%}.form-config__renderer--defaultWrapper{align-items:center;border-radius:2px;box-sizing:border-box;display:inline-flex;height:34px;padding:0 14px;transition:all .3s linear}.form-config__renderer--defaultWrapper.is-disabled{background-color:transparent;border:1px dashed var(--c-primary-color)}.form-config__renderer--defaultWrapper:not(.is-disabled){background-color:rgba(46,51,56,.05);border:1px dashed transparent}.form-config__renderer--defaultWrapper:not(.is-disabled):hover{background-color:rgba(46,51,56,.09)}.form-config__renderer--defaultWrapper:not(.is-disabled):active{background-color:rgba(46,51,56,.15)}.form-config__renderer--complex{border:1px dashed var(--c-primary-color);border-radius:8px;padding:8px}.form-config__renderer--complexHeader{display:flex;justify-content:center;margin-top:-8px;padding:8px;position:relative}.form-config__renderer--complex--grid{display:grid!important;gap:8px;grid-column:span var(--item-column) /span var(--item-column);grid-template-columns:repeat(24,minmax(0,1fr));min-height:24px}.form-config__renderer--complex--flex{display:flex;min-height:24px}.form-config .is-required{padding-left:16px!important}.form-config .is-required:before{color:red;content:"*";left:8px;position:absolute}.form-config .is-extra:before{border-bottom:6px solid transparent;border-left:6px solid var(--c-primary-color);border-right:6px solid transparent;border-top:6px solid var(--c-primary-color);content:"";height:0;left:0;position:absolute;top:0;width:0}.form-config .is-active{color:var(--c-primary-color)!important}.form-config .is-choosing{box-shadow:inset var(--c-primary-color) 0 0 0 2px;opacity:.7}.form-config .is-choosing-area{background:hsla(0,0%,50%,.1)}.form-config [is-hovering=true] .form-config__renderer--closeButton{visibility:visible}.form-config .form-config__renderer--closeButton{position:absolute;right:4px;top:50%;transform:translateY(-50%);visibility:hidden}