@farris/ui-vue 1.4.0 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/components/avatar/index.esm.js +2 -1
  2. package/components/avatar/index.umd.cjs +1 -1
  3. package/components/checkbox/index.esm.js +2 -1
  4. package/components/checkbox/index.umd.cjs +1 -1
  5. package/components/combo-list/index.esm.js +2 -1
  6. package/components/combo-list/index.umd.cjs +1 -1
  7. package/components/condition/index.css +1 -1
  8. package/components/condition/index.esm.js +715 -704
  9. package/components/condition/index.umd.cjs +1 -1
  10. package/components/content-container/index.css +1 -1
  11. package/components/content-container/index.esm.js +1180 -1169
  12. package/components/content-container/index.umd.cjs +1 -1
  13. package/components/data-grid/index.css +1 -1
  14. package/components/data-grid/index.esm.js +2949 -2901
  15. package/components/data-grid/index.umd.cjs +1 -1
  16. package/components/data-view/index.css +1 -1
  17. package/components/data-view/index.esm.js +609 -598
  18. package/components/data-view/index.umd.cjs +1 -1
  19. package/components/date-picker/index.esm.js +3 -2
  20. package/components/date-picker/index.umd.cjs +1 -1
  21. package/components/designer-canvas/index.css +1 -1
  22. package/components/designer-canvas/index.esm.js +2081 -2062
  23. package/components/designer-canvas/index.umd.cjs +1 -1
  24. package/components/designer-outline/index.css +1 -1
  25. package/components/drawer/index.esm.js +23 -21
  26. package/components/drawer/index.umd.cjs +1 -1
  27. package/components/dynamic-form/index.css +1 -1
  28. package/components/dynamic-form/index.esm.js +2745 -2691
  29. package/components/dynamic-form/index.umd.cjs +1 -1
  30. package/components/external-container/index.css +1 -1
  31. package/components/external-container/index.esm.js +1322 -1311
  32. package/components/external-container/index.umd.cjs +1 -1
  33. package/components/field-selector/index.css +1 -1
  34. package/components/field-selector/index.esm.js +85 -74
  35. package/components/field-selector/index.umd.cjs +1 -1
  36. package/components/filter-bar/index.esm.js +4618 -4320
  37. package/components/filter-bar/index.umd.cjs +3 -3
  38. package/components/flow-canvas/index.css +1 -1
  39. package/components/flow-canvas/index.esm.js +1982 -1963
  40. package/components/flow-canvas/index.umd.cjs +1 -1
  41. package/components/input-group/index.esm.js +2 -1
  42. package/components/input-group/index.umd.cjs +1 -1
  43. package/components/list-view/index.css +1 -1
  44. package/components/list-view/index.esm.js +822 -811
  45. package/components/list-view/index.umd.cjs +1 -1
  46. package/components/lookup/index.css +1 -1
  47. package/components/lookup/index.esm.js +3268 -3219
  48. package/components/lookup/index.umd.cjs +1 -1
  49. package/components/mapping-editor/index.css +1 -1
  50. package/components/mapping-editor/index.esm.js +1985 -1937
  51. package/components/mapping-editor/index.umd.cjs +1 -1
  52. package/components/number-range/index.esm.js +136 -135
  53. package/components/number-range/index.umd.cjs +1 -1
  54. package/components/number-spinner/index.esm.js +2 -1
  55. package/components/number-spinner/index.umd.cjs +1 -1
  56. package/components/order/index.esm.js +2 -1
  57. package/components/order/index.umd.cjs +1 -1
  58. package/components/property-editor/index.esm.js +2 -1
  59. package/components/property-editor/index.umd.cjs +1 -1
  60. package/components/property-panel/index.esm.js +295 -283
  61. package/components/property-panel/index.umd.cjs +2 -2
  62. package/components/query-solution/index.css +1 -1
  63. package/components/query-solution/index.esm.js +5430 -5374
  64. package/components/query-solution/index.umd.cjs +7 -7
  65. package/components/radio-group/index.esm.js +2 -1
  66. package/components/radio-group/index.umd.cjs +1 -1
  67. package/components/schema-selector/index.css +1 -1
  68. package/components/schema-selector/index.esm.js +1259 -1248
  69. package/components/schema-selector/index.umd.cjs +2 -2
  70. package/components/section/index.css +1 -1
  71. package/components/section/index.esm.js +1272 -1261
  72. package/components/section/index.umd.cjs +1 -1
  73. package/components/switch/index.esm.js +2 -1
  74. package/components/switch/index.umd.cjs +1 -1
  75. package/components/textarea/index.esm.js +14 -13
  76. package/components/textarea/index.umd.cjs +1 -1
  77. package/components/time-picker/index.esm.js +2 -1
  78. package/components/time-picker/index.umd.cjs +1 -1
  79. package/components/tree-grid/index.css +1 -1
  80. package/components/tree-grid/index.esm.js +715 -704
  81. package/components/tree-grid/index.umd.cjs +1 -1
  82. package/components/tree-view/index.css +1 -1
  83. package/components/tree-view/index.esm.js +107 -96
  84. package/components/tree-view/index.umd.cjs +1 -1
  85. package/farris.all.esm.js +14687 -14334
  86. package/farris.all.umd.cjs +11 -11
  87. package/index.css +1 -1
  88. package/package.json +1 -1
  89. package/types/condition/src/composition/condition-value/input-group-value.d.ts +1 -1
  90. package/types/dynamic-form/src/component/dynamic-form-label/dynamic-form-label.component.d.ts +6 -0
  91. package/types/dynamic-form/src/component/dynamic-form-label/dynamic-form-label.props.d.ts +8 -0
  92. package/types/dynamic-form/src/composition/form-binding-resolver-design.d.ts +6 -0
  93. package/types/filter-bar/src/components/drawer.component.d.ts +4 -0
  94. package/types/filter-bar/src/components/filter-item/filter-item.component.d.ts +10 -0
  95. package/types/filter-bar/src/components/filter-item/filter-item.props.d.ts +3 -0
  96. package/types/filter-bar/src/components/filter-item-condition/filter-item-condition.component.d.ts +11 -0
  97. package/types/filter-bar/src/components/filter-item-condition/filter-item-condition.props.d.ts +3 -0
  98. package/types/filter-bar/src/composition/types.d.ts +2 -0
  99. package/types/filter-bar/src/composition/use-condition.d.ts +19 -0
  100. package/types/filter-bar/src/filter-bar.component.d.ts +2 -1
  101. package/types/filter-bar/src/types.d.ts +4 -6
  102. package/types/filter-bar/src/components/filter-item.component.d.ts +0 -5
  103. /package/types/filter-bar/src/components/{toolbar-component.d.ts → toolbar.component.d.ts} +0 -0
@@ -901,7 +901,8 @@ class Ht extends jt {
901
901
  disableOccupiedFields: !0
902
902
  },
903
903
  textField: "bindingField"
904
- }
904
+ },
905
+ refreshPanelAfterChanged: !0
905
906
  }
906
907
  },
907
908
  setPropertyRelates(s, u) {
@@ -1 +1 @@
1
- (function(L,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../common/index.umd.js"),require("lodash-es"),require("../designer-canvas/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("../data-grid/index.umd.js"),require("../notify/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../common/index.umd.js","lodash-es","../designer-canvas/index.umd.js","../dynamic-resolver/index.umd.js","../tags/index.umd.js","../popover/index.umd.js","../data-grid/index.umd.js","../notify/index.umd.js"],t):(L=typeof globalThis<"u"?globalThis:L||self,t(L["radio-group"]={},L.Vue,L.common,L.LodashES,L.designerCanvas,L.dynamicResolver,L.FTags,L.FPopover,L.FDataGrid,L.notify))})(this,function(L,t,R,H,re,se,Fe,xe,ke,Be){"use strict";var Rt=Object.defineProperty;var qt=(L,t,R)=>t in L?Rt(L,t,{enumerable:!0,configurable:!0,writable:!0,value:R}):L[t]=R;var N=(L,t,R)=>qt(L,typeof t!="symbol"?t+"":t,R);const ce={value:{type:String,default:""},modelValue:{type:String,default:""},name:{type:String,default:""},label:{type:String,default:""},id:{type:String,default:""}},ue=Symbol("radioGroupContext"),Z=t.defineComponent({name:"FRadio",props:ce,emits:["update:value"],setup(e,n){const o=t.inject(ue,null),{buttonClass:a,checked:l,disabled:i,name:c,shouldRenderButton:u,shouldRenderNative:d,onClickRadio:s}=R.useCheck(e,n,o==null?void 0:o.parentProps,o==null?void 0:o.parentContext);return t.onMounted(()=>{}),()=>{var p,r,f,g;return t.createVNode(t.Fragment,null,[u.value&&t.createVNode("div",{class:a.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:s},[(r=(p=n.slots).default)==null?void 0:r.call(p)]),d.value&&t.createVNode("div",{class:"custom-control custom-radio",onClick:s},[t.createVNode("input",{type:"radio",class:"custom-control-input",name:c.value,id:e.id,value:e.value,checked:l.value,disabled:i.value},null),t.createVNode("div",{class:"custom-control-label"},[(g=(f=n.slots).default)==null?void 0:g.call(f)])])])}}});function Ve(e,n,o){return n}function Ee(e,n,o){return n}const de={},fe={};function ee(e){const{properties:n,title:o,ignore:a}=e,l=a&&Array.isArray(a),i=Object.keys(n).reduce((c,u)=>((!l||!a.find(d=>d===u))&&(c[u]=n[u].type==="object"&&n[u].properties?ee(n[u]):H.cloneDeep(n[u].default)),c),{});if(o&&(!l||!a.find(c=>c==="id"))){const c=o.toLowerCase().replace(/-/g,"_");i.id=`${c}_${Math.random().toString().slice(2,6)}`}return i}function Te(e){const{properties:n,title:o,required:a}=e;if(a&&Array.isArray(a)){const l=a.reduce((i,c)=>(i[c]=n[c].type==="object"&&n[c].properties?ee(n[c]):H.cloneDeep(n[c].default),i),{});if(o&&a.find(i=>i==="id")){const i=o.toLowerCase().replace(/-/g,"_");l.id=`${i}_${Math.random().toString().slice(2,6)}`}return l}return{type:o}}function pe(e,n={},o){const a=de[e];if(a){let l=Te(a);const i=fe[e];return l=i?i({getSchemaByType:pe},l,n,o):l,l}return null}function Se(e,n){const o=ee(n);return Object.keys(o).reduce((a,l)=>(Object.prototype.hasOwnProperty.call(e,l)&&(a[l]&&H.isPlainObject(a[l])&&H.isPlainObject(e[l]||!e[l])?Object.assign(a[l],e[l]||{}):a[l]=e[l]),a),o),o}function Ne(e,n){return Object.keys(e).filter(a=>e[a]!=null).reduce((a,l)=>{if(n.has(l)){const i=n.get(l);if(typeof i=="string")a[i]=e[l];else{const c=i(l,e[l],e);Object.assign(a,c)}}else a[l]=e[l];return a},{})}function Ie(e,n,o=new Map){const a=Se(e,n);return Ne(a,o)}function Pe(e={}){function n(s,p,r,f){if(typeof r=="number")return f[s].length===r;if(typeof r=="object"){const g=Object.keys(r)[0],h=r[g];if(g==="not")return Number(f[s].length)!==Number(h);if(g==="moreThan")return Number(f[s].length)>=Number(h);if(g==="lessThan")return Number(f[s].length)<=Number(h)}return!1}function o(s,p,r,f){return f[s]&&f[s].propertyValue&&String(f[s].propertyValue.value)===String(r)}const a=new Map([["length",n],["getProperty",o]]);Object.keys(e).reduce((s,p)=>(s.set(p,e[p]),s),a);function l(s,p){const r=s;return typeof p=="number"?[{target:r,operator:"length",param:null,value:Number(p)}]:typeof p=="boolean"?[{target:r,operator:"getProperty",param:s,value:!!p}]:typeof p=="object"?Object.keys(p).map(f=>{if(f==="length")return{target:r,operator:"length",param:null,value:p[f]};const g=f,h=p[f];return{target:r,operator:"getProperty",param:g,value:h}}):[]}function i(s){return Object.keys(s).reduce((r,f)=>{const g=l(f,s[f]);return r.push(...g),r},[])}function c(s,p){if(a.has(s.operator)){const r=a.get(s.operator);return r&&r(s.target,s.param,s.value,p)||!1}return!1}function u(s,p){return i(s).reduce((g,h)=>g&&c(h,p),!0)}function d(s,p){const r=Object.keys(s),f=r.includes("allOf"),g=r.includes("anyOf"),h=f||g,V=(h?s[h?f?"allOf":"anyOf":"allOf"]:[s]).map(E=>u(E,p));return f?!V.includes(!1):V.includes(!0)}return{parseValueSchema:d}}const F={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"},"query-solution":{type:"query-solution",name:"筛选方案",icon:"QueryScheme"}},Oe={},De={};Pe();function me(e,n,o=new Map,a=(c,u,d,s)=>u,l={},i=c=>c){return de[n.title]=n,fe[n.title]=a,Oe[n.title]=l,De[n.title]=i,(c={})=>{const u=Ie(c,n,o),d=Object.keys(e).reduce((s,p)=>(s[p]=e[p].default,s),{});return Object.assign(d,u)}}function Le(e,n){return{customClass:n.class,customStyle:n.style}}const $e=new Map([["appearance",Le]]),je=new Map([]),Ae={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/radio-group.schema.json",title:"radio-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a radio-group",type:"string"},type:{description:"The type string of radio-group component",type:"string",default:"radio-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0},textField:{description:"",type:"string",default:"name"},valueField:{description:"",type:"string",default:"value"},data:{description:"",type:"array"},direction:{description:"",type:"string",default:"horizontal"}},required:["type"],ignore:["id","appearance","binding","visible"]},_={...{checked:{type:Boolean,default:!1},direction:{type:String,default:"horizontal"},type:{type:String,default:"default"},size:{type:String,default:"middle"},options:{type:Object,default:[]}},id:String,disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},enumData:{type:Array,default:[]},data:{type:Array,default:[]},modelValue:{type:String,default:""},name:{type:String,default:""},tabIndex:{type:Number,default:-1},textField:{type:String,default:"name"},valueField:{type:String,default:"value"}},te=me(_,Ae,$e,Ve);function ye(e,n,o){const a=t.computed(()=>!e.disabled),l=t.computed(()=>e.data||e.enumData||e.options||[]);function i(d){return d[e.valueField]}function c(d){return d[e.textField]}function u(d,s){if(a.value){const p=i(d);o.value!==p&&(o.value=p,n.emit("changeValue",p),n.emit("update:modelValue",p))}s.stopPropagation()}return{enumData:l,getValue:i,getText:c,onClickRadio:u}}const q=t.defineComponent({name:"FRadioGroup",props:_,emits:["changeValue","update:modelValue"],setup(e,n){const o=t.ref(e.modelValue),{enumData:a,onClickRadio:l,getValue:i,getText:c}=ye(e,n,o),u=t.computed(()=>({"farris-checkradio-hor":e.direction==="horizontal"})),d=t.ref([]);return t.provide(ue,{radios:d,parentProps:e,parentContext:n}),t.watch(()=>e.modelValue,s=>{o.value=s}),()=>t.createVNode("div",{class:["farris-input-wrap","btn-group",u.value]},[n.slots.default?n.slots.default():a.value.map((s,p)=>{const r="radio_"+e.id+e.name+s[e.valueField];return t.createVNode("div",{class:"custom-control custom-radio"},[t.createVNode("input",{type:"radio",class:"custom-control-input",name:r,id:r,value:i(s),checked:i(s)===o.value,disabled:e.readonly||e.disabled,tabindex:e.tabIndex,onClick:f=>l(s,f)},null),t.createVNode("label",{class:"custom-control-label",for:r},[c(s)])])})])}});function ze(e,n,o){var P;const a=o&&o.getStyles&&o.getStyles()||"",l=o&&o.getDesignerClass&&o.getDesignerClass()||"",i=t.ref();function c(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function u(){return!1}function d(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function s(){return(n==null?void 0:n.schema.componentType)==="frame"?!0:o&&o.hideNestedPaddingInDesginerView?o.hideNestedPaddingInDesginerView():!1}function p(m){if(!m||!m.value)return null;if(m.value.schema&&m.value.schema.type==="component")return m.value;const C=t.ref(m==null?void 0:m.value.parent),y=p(C);return y||null}function r(m=n){var $;const{componentInstance:C,designerItemElementRef:y}=m;if(!C||!C.value)return null;const{getCustomButtons:k}=C.value;return C.value.canMove||k&&(($=k())!=null&&$.length)?y:r(m.parent)}function f(m){return!!o&&o.canAccepts(m)}function g(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function h(){}function v(m,C){!m||!C||o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(m,C)}function B(m,C){const{componentType:y}=m;let k=pe(y,m,C);o&&o.onResolveNewComponentSchema&&(k=o.onResolveNewComponentSchema(m,k));const $=y.toLowerCase().replace(/-/g,"_");return k&&!k.id&&k.type===y&&(k.id=`${$}_${Math.random().toString().slice(2,6)}`),k}function V(m){}function T(...m){if(o&&o.getPropsConfig)return o.getPropsConfig(...m)}function E(){o&&o.onRemoveComponent&&o.onRemoveComponent(),n!=null&&n.schema.contents&&n.schema.contents.map(m=>{let C=m.id;m.type==="component-ref"&&(C=m.component);const y=e.value.querySelectorAll(`#${C}-design-item`);y!=null&&y.length&&Array.from(y).map(k=>{var $;($=k==null?void 0:k.componentInstance)!=null&&$.value.onRemoveComponent&&k.componentInstance.value.onRemoveComponent()})})}function w(){if(o&&o.getCustomButtons)return o.getCustomButtons()}function S(m){if(o&&o.onPropertyChanged)return o.onPropertyChanged(m)}return i.value={canMove:c(),canSelectParent:u(),canDelete:d(),canNested:!s(),contents:n==null?void 0:n.schema.contents,elementRef:e,parent:(P=n==null?void 0:n.parent)==null?void 0:P.componentInstance,schema:n==null?void 0:n.schema,styles:a,designerClass:l,canAccepts:f,getBelongedComponentInstance:p,getDraggableDesignItemElement:r,getDraggingDisplayText:g,getPropConfig:T,getDragScopeElement:h,onAcceptMovedChildElement:v,onChildElementMovedOut:V,addNewChildComponentSchema:B,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||t.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||t.ref(!1),onRemoveComponent:E,getCustomButtons:w,onPropertyChanged:S},i}class Re{constructor(n,o){N(this,"componentId");N(this,"viewModelId");N(this,"eventsEditorUtils");N(this,"formSchemaUtils");N(this,"formMetadataConverter");N(this,"designViewModelUtils");N(this,"designViewModelField");N(this,"controlCreatorUtils");N(this,"designerHostService");N(this,"schemaService",null);N(this,"metadataService",null);N(this,"propertyConfig",{type:"object",categories:{}});var a;this.componentId=n,this.designerHostService=o,this.eventsEditorUtils=o.eventsEditorUtils,this.formSchemaUtils=o.formSchemaUtils,this.formMetadataConverter=o.formMetadataConverter,this.viewModelId=((a=this.formSchemaUtils)==null?void 0:a.getViewModelIdByComponentId(n))||"",this.designViewModelUtils=o.designViewModelUtils,this.controlCreatorUtils=o.controlCreatorUtils,this.metadataService=o.metadataService,this.schemaService=o.schemaService}getTableInfo(){var n;return(n=this.schemaService)==null?void 0:n.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(n){var a;const o=n.binding&&n.binding.type==="Form"&&n.binding.field;if(o){if(!this.designViewModelField){const l=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=l.fields.find(i=>i.id===o)}n.updateOn=(a=this.designViewModelField)==null?void 0:a.updateOn}}getBasicPropConfig(n){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",editable:!1,data:[{value:n.type,name:F[n.type].name}]}}}}}getAppearanceConfig(n=null){return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}updateElementByParentContainer(n,o){const a=o&&o.parent&&o.parent.schema;if(!a)return;const l=a.contents.findIndex(c=>c.id===n),i=H.cloneDeep(a.contents[l]);a.contents.splice(l,1),a.contents.splice(l,0,i)}}const U=class U{static getEditorTypesByMDataType(n){const o=U.fieldControlTypeMapping[n];return o||[{key:"",value:""}]}static getAllInputTypes(){const n=[];for(const o in U.fieldControlTypeMapping)U.fieldControlTypeMapping[o].forEach(a=>{n.find(l=>l.key===a.key&&l.value===a.value)||n.push({key:a.key,value:a.value})});return n}static mappingDomPropAndSchemaProp(n){var l;const o=(l=n.editor)==null?void 0:l.type;if(!o)return[];const a=[];switch(a.push({domField:"editor.required",schemaField:"require"}),a.push({domField:"editor.readonly",schemaField:"readonly"}),o){case F["data-grid-column"].type:case F["tree-grid-column"].type:{a.push({domField:"title",schemaField:"name"});break}default:a.push({domField:"label",schemaField:"name"})}return(o===F["input-group"].type||o===F.textarea.type||o===F["number-spinner"].type)&&a.push({domField:"editor.maxLength",schemaField:"type.length"}),o===F["number-spinner"].type&&a.push({domField:"editor.precision",schemaField:"type.precision"}),(o===F["combo-list"].type||o===F["radio-group"].type)&&a.push({domField:"editor.data",schemaField:"type.enumValues"}),o===F["date-picker"].type&&(a.push({domField:"editor.displayFormat",schemaField:"editor.format"}),a.push({domField:"editor.fieldType",schemaField:"type.name"})),o===F["number-spinner"].type&&(a.push({domField:"editor.max",schemaField:"editor.maxValue"}),a.push({domField:"editor.min",schemaField:"editor.minValue"})),o===F.lookup.type&&(a.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),a.push({domField:"editor.valueField",schemaField:"editor.valueField"}),a.push({domField:"editor.textField",schemaField:"editor.textField"}),a.push({domField:"editor.displayType",schemaField:"editor.displayType"}),a.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),a.push({domField:"editor.helpId",schemaField:"editor.helpId"})),a.push({domField:"path",schemaField:"bindingPath"}),a.push({domField:"binding.path",schemaField:"bindingField"}),a.push({domField:"binding.fullPath",schemaField:"path"}),(o===F["data-grid-column"].type||o===F["tree-grid-column"].type)&&a.push({domField:"field",schemaField:"bindingPath"}),a}};N(U,"fieldControlTypeMapping",{String:[{key:F["input-group"].type,value:F["input-group"].name},{key:F.lookup.type,value:F.lookup.name},{key:F["date-picker"].type,value:F["date-picker"].name},{key:F["check-group"].type,value:F["check-group"].name},{key:F["radio-group"].type,value:F["radio-group"].name},{key:F["combo-list"].type,value:F["combo-list"].name},{key:F.textarea.type,value:F.textarea.name}],Text:[{key:F.textarea.type,value:F.textarea.name},{key:F.lookup.type,value:F.lookup.name}],Decimal:[{key:F["number-spinner"].type,value:F["number-spinner"].name}],Integer:[{key:F["number-spinner"].type,value:F["number-spinner"].name}],Number:[{key:F["number-spinner"].type,value:F["number-spinner"].name}],BigNumber:[{key:F["number-spinner"].type,value:F["number-spinner"].name}],Date:[{key:F["date-picker"].type,value:F["date-picker"].name}],DateTime:[{key:F["date-picker"].type,value:F["date-picker"].name}],Boolean:[{key:F.switch.type,value:F.switch.name},{key:F["check-box"].type,value:F["check-box"].name}],Enum:[{key:F["combo-list"].type,value:F["combo-list"].name},{key:F["radio-group"].type,value:F["radio-group"].name}],Object:[{key:F.lookup.type,value:F.lookup.name},{key:F["combo-list"].type,value:F["combo-list"].name},{key:F["radio-group"].type,value:F["radio-group"].name}]});let J=U;const qe=t.ref(0);class We{constructor(){N(this,"label","");N(this,"id","");N(this,"columnInSM",12);N(this,"columnInMD",6);N(this,"columnInLG",3);N(this,"columnInEL",2);N(this,"displayWidthInSM",1);N(this,"displayWidthInMD",1);N(this,"displayWidthInLG",1);N(this,"displayWidthInEL",1);N(this,"displayColumnCountAtBreakPoint","md");N(this,"tagRow",0);N(this,"showTopBorder",0);N(this,"group",1);N(this,"isSupportedClass",!0);N(this,"fieldSetId","")}}function He(e){let n,o;const a=new Map;let l=[];function i(p,r){const g=p.split(" ").filter(T=>T.startsWith("col-"));if(g.length===0){r.isSupportedClass=!1;return}let h=g.find(T=>/^col-([1-9]|10|11|12)$/.test(T)),v=g.find(T=>/^col-md-([1-9]|10|11|12)$/.test(T)),B=g.find(T=>/^col-xl-([1-9]|10|11|12)$/.test(T)),V=g.find(T=>/^col-el-([1-9]|10|11|12)$/.test(T));h=h||"col-12",r.columnInSM=parseInt(h.replace("col-",""),10),r.displayWidthInSM=r.columnInSM/12,r.displayWidthInSM!==1&&(r.isSupportedClass=!1),v=v||"col-md-"+r.columnInSM,r.columnInMD=parseInt(v.replace("col-md-",""),10),r.displayWidthInMD=r.columnInMD/6,[1,2].includes(r.displayWidthInMD)||(r.isSupportedClass=!1),B=B||"col-xl-"+r.columnInMD,r.columnInLG=parseInt(B.replace("col-xl-",""),10),r.displayWidthInLG=r.columnInLG/3,[1,2,3,4].includes(r.displayWidthInLG)||(r.isSupportedClass=!1),V=V||"col-el-"+r.columnInLG,r.columnInEL=parseInt(V.replace("col-el-",""),10),r.displayWidthInEL=r.columnInEL/2,[1,2,3,4,5,6].includes(r.displayWidthInEL)||(r.isSupportedClass=!1)}function c(p,r,f,g=!1){let h=!1;p.contents.forEach(v=>{if(v.type==="fieldset"){f+=1,c(v,r,f,!0),h=!0;return}h&&(f+=1,h=!1);const B=v.appearance&&v.appearance.class,V=new We;B?i(B,V):V.isSupportedClass=!1,V.label=v.label||v.id,V.id=v.id,V.group=f,g&&(V.fieldSetId=p.id),o===v.id&&(n=f),a.set(v.id,v),r.push(V)})}function u(p){const r=e.getComponentById(p);if(!r||!r.componentType||!r.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const f=e.selectNode(r,g=>g.type===re.DgControl["response-form"].type);return!f||!f.contents||f.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:f}}function d(p,r){r=r||p.id;const{result:f,message:g,formNode:h}=u(r);if(!f)return{result:f,message:g};o=p.id,l=[],a.clear();const v=h.contents[0].type===re.DgControl.fieldset.type?0:1;c(h,l,v);const B=l.find(T=>!T.isSupportedClass);return{defaultState:{defaultGroupNumber:n||1,model:B?"customize":"standard"},importData:l}}function s(p,r){r=r;const{result:f,formNode:g}=u(r);if(!f)return"";const h=[];return p.forEach(v=>{var T;const B=a.get(v.id),V=B.appearance&&B.appearance.class;if(V){const w=V.split(" ").filter(k=>!k.startsWith("col-")),S="col-"+v.columnInSM,P="col-md-"+v.columnInMD,m="col-xl-"+v.columnInLG,C="col-el-"+v.columnInEL,y=[S,P,m,C].concat(w);B.appearance.class=y.join(" ")}if(v.fieldSetId){const E=g.contents.find(S=>S.id===v.fieldSetId),w=h.find(S=>S.id===v.fieldSetId);w?(T=w.contents)==null||T.push(B):(h.push(E),E.contents=[B])}else h.push(B)}),g.contents=h,g.id}return{checkCanFindFormNode:u,checkCanOpenLayoutEditor:d,changeFormControlsByResponseLayoutConfig:s,getResonseFormLayoutConfig:c}}class Ue extends Re{constructor(o,a){super(o,a);N(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=He(this.formSchemaUtils)}getPropertyConfig(o,a){return this.propertyConfig.categories.basic=this.getBasicProperties(o,a),this.propertyConfig.categories.appearance=this.getAppearanceProperties(o,a),this.propertyConfig.categories.editor=this.getEditorProperties(o),this.propertyConfig}getBasicProperties(o,a){var i;const l=this;return this.setDesignViewModelField(o),{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:l.designViewModelField?J.getEditorTypesByMDataType((i=l.designViewModelField.type)==null?void 0:i.name):J.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:o,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"}}},setPropertyRelates(c,u){if(c)switch(c&&c.propertyID){case"type":{l.changeControlType(o,c,a);break}case"label":{c.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(o,a){const l=this;return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的内联样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:l.responseLayoutEditorFunction.checkCanOpenLayoutEditor(o,l.componentId)}}},setPropertyRelates(i,c){if(i)switch(i&&i.propertyID){case"responseLayout":l.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(i.propertyValue,l.componentId||o.id),l.updateUnifiedLayoutAfterResponseLayoutChanged(l.componentId),l.updateElementByParentContainer(o.id,a),delete o.responseLayout;break;case"class":l.updateUnifiedLayoutAfterControlChanged(i.propertyValue,o.id,this.componentId),l.updateElementByParentContainer(o.id,a);break}}}}getEditorProperties(o){return this.getComponentConfig(o)}changeControlType(o,a,l){var p,r,f,g;const i=a.propertyValue,c=l&&l.parent&&l.parent.schema;if(!c)return;const u=c.contents.findIndex(h=>h.id===o.id),d=c.contents[u];let s;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:i},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),s=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,i)),s||(s=this.controlCreatorUtils.createFormGroupWithoutField(i)),Object.assign(s,{id:d.id,appearance:d.appearance,size:d.size,label:d.label,binding:d.binding,visible:d.visible}),Object.assign(s.editor,{isTextArea:s.isTextArea&&d.isTextArea,placeholder:(p=d.editor)==null?void 0:p.placeholder,holdPlace:(r=d.editor)==null?void 0:r.holdPlace,readonly:(f=d.editor)==null?void 0:f.readonly,required:(g=d.editor)==null?void 0:g.required}),c.contents.splice(u,1),c.contents.splice(u,0,s),l.schema=Object.assign(d,s),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(h=>h.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(h=>h.classList.remove("dgComponentFocused")),qe.value++}getComponentConfig(o,a={},l={},i){const c=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},a),u=Object.assign({readonly:{description:"",title:"只读",type:"boolean",editor:{enableClear:!0,editable:!0}},disabled:{description:"",title:"禁用",type:"boolean",visible:!1},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}},l);return{...c,properties:{...u},setPropertyRelates:i}}updateUnifiedLayoutAfterControlChanged(o,a,l){const i=o.split(" ");let c=i.find(r=>/^col-([1-9]|10|11|12)$/.test(r)),u=i.find(r=>/^col-md-([1-9]|10|11|12)$/.test(r)),d=i.find(r=>/^col-xl-([1-9]|10|11|12)$/.test(r)),s=i.find(r=>/^col-el-([1-9]|10|11|12)$/.test(r));c=c||"col-12",u=u||"col-md-"+c.replace("col-",""),d=d||"col-xl-"+u.replace("col-md-",""),s=s||"col-el-"+d.replace("col-xl-","");const p={id:a,columnInSM:parseInt(c.replace("col-",""),10),columnInMD:parseInt(u.replace("col-md-",""),10),columnInLG:parseInt(d.replace("col-xl-",""),10),columnInEL:parseInt(s.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(l,p)}updateUnifiedLayoutAfterResponseLayoutChanged(o,a){const{formNode:l}=this.responseLayoutEditorFunction.checkCanFindFormNode(o);if(!l||!l.unifiedLayout)return;const i=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(l,i,1),a){const h=i.find(v=>v.id===a.id);Object.assign(h||{},a)}const c=i.map(h=>h.columnInSM),u=i.map(h=>h.columnInMD),d=i.map(h=>h.columnInLG),s=i.map(h=>h.columnInEL),p=this.checkIsUniqueColumn(c)?c[0]:null,r=this.checkIsUniqueColumn(u)?u[0]:null,f=this.checkIsUniqueColumn(d)?d[0]:null,g=this.checkIsUniqueColumn(s)?s[0]:null;Object.assign(l.unifiedLayout,{uniqueColClassInSM:p,uniqueColClassInMD:r,uniqueColClassInLG:f,uniqueColClassInEL:g})}checkIsUniqueColumn(o){const a=new Set(o);return Array.from(a).length===1}getItemCollectionEditor(o,a,l){return a=a||"value",l=l||"name",{editor:{columns:[{field:a,title:"值",dataType:"string"},{field:l,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:a,nameField:l,requiredFields:[a,l],uniqueFields:[a,l],readonly:this.checkEnumDataReadonly(o)}}}checkEnumDataReadonly(o){return!o.binding||o.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===R.FormSchemaEntityFieldType$Type.EnumType)}}class Ge extends Ue{constructor(n,o){super(n,o)}getEditorProperties(n){const o=this,a=o.getComponentConfig(n,{type:"radio-group"},{disabled:{visible:!1},placeholder:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"horizontal",value:"横向"},{key:"vertical",value:"纵向"}]}},textField:{visible:!1,description:"",title:"显示文本字段",type:"string"},valueField:{visible:!1,description:"",title:"值字段",type:"string"},data:{description:"",title:"数据",type:"array",$converter:"/converter/enum-data.converter",...o.getItemCollectionEditor(n,n.editor.valueField,n.editor.textField),refreshPanelAfterChanged:!0}});return a.setPropertyRelates=function(l){if(l)switch(l.propertyID){case"data":{l.propertyValue.parameters&&(n.editor.valueField=l.propertyValue.parameters.valueField,n.editor.textField=l.propertyValue.parameters.nameField),!o.checkEnumDataReadonly(n)&&n.formatter&&(n.formatter.data=[...l.propertyValue.value]);break}}},a}}function Xe(e,n){const o=e.schema;function a(l,i){return new Ge(l,n).getPropertyConfig(o,i)}return{getPropsConfig:a}}const Ye=t.defineComponent({name:"FRadioGroupDesign",props:_,emits:["changeValue","update:modelValue"],setup(e,n){const o=t.ref(e.modelValue),{enumData:a,onClickRadio:l,getValue:i,getText:c}=ye(e,n,o),u=t.computed(()=>({"farris-checkradio-hor":e.direction==="horizontal"})),d=t.ref(),s=t.inject("designer-host-service"),p=t.inject("design-item-context"),r=Xe(p,s),f=ze(d,p,r);t.onMounted(()=>{d.value.componentInstance=f});const g=t.computed(()=>{if(!a.value||a.value.length===0){const h=[];return[{value:"example1",name:"示例一"},{value:"example2",name:"示例二"}].map(v=>{const B={};B[e.valueField]=v.value,B[e.textField]=v.name,h.push(B)}),h}return a.value});return n.expose(f.value),()=>t.createVNode("div",{class:["farris-input-wrap",u.value],ref:d},[g.value.map((h,v)=>{const B="radio_"+e.name+v;return t.createVNode("div",{class:"custom-control custom-radio"},[t.createVNode("input",{type:"radio",class:"custom-control-input",name:e.name,id:B,value:i(h),checked:i(h)===o.value,disabled:e.disabled,tabindex:e.tabIndex,onClick:V=>l(h,V)},null),t.createVNode("label",{class:"custom-control-label",for:B},[c(h)])])})])}}),_e=new Map([["appearance",se.resolveAppearance]]);function Je(e,n,o){return n}const Qe={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"button-edit"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},forcePlaceholder:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},autoComplete:{description:"",type:"boolean",default:!1},buttonContent:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},inputType:{description:"",type:"string",enum:["text","tag"],default:"text"},multiSelect:{description:"",type:"boolean",default:!1},popup:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},Ke={title:"buttonEdit",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}}}}},he={id:String,buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:Number,tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"}};me(he,Qe,_e,Je,Ke);const Ze={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},et=t.defineComponent({name:"FOverlay",props:Ze,emits:["click"],setup(e,n){const o=t.ref(e.popupContentPosition),a=t.ref(e.host),l=t.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function i(u){n.emit("click"),u.preventDefault(),u.stopPropagation()}t.computed(()=>{const u=a.value;if(u){const d=u.getBoundingClientRect(),{left:s,top:p,height:r}=d;return{left:s,top:p+r}}return o.value});const c=t.computed(()=>({}));return()=>t.createVNode(t.Teleport,{to:"body"},{default:()=>{var u,d;return[t.createVNode("div",{class:"overlay-container",onClick:s=>i(s),style:l.value},[t.createVNode("div",{style:c.value},[(d=(u=n.slots).default)==null?void 0:d.call(u)])])]}})}});function tt(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function nt(e){const n=document.createElement("div");n.style.display="contents";let o;const a=e.onClickCallback||(()=>{}),l=()=>{a(),o&&o.unmount()};return o=t.createApp({setup(){t.onUnmounted(()=>{document.body.removeChild(n)});const i=tt(e);return()=>t.createVNode(et,{"popup-content-position":e.popupPosition,host:e.host,onClick:l,backgroundColor:e.backgroundColor},{default:()=>[i&&i()]})}}),document.body.appendChild(n),o.mount(n),o}class ot{static show(n){return nt(n)}}const at={class:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},resizeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1},dialogType:{type:String,default:""},src:{type:String,default:""}};class j{constructor(n,o){this.x=n,this.y=o}static getTransformInfo(n){const a=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(a.length>=6){const l=parseInt(a[4],10),i=parseInt(a[5],10);return{x:l,y:i}}return{x:0,y:0}}static fromEvent(n,o=null){if(this.isMouseEvent(n))return new j(n.clientX,n.clientY);if(o===null||n.changedTouches.length===1)return new j(n.changedTouches[0].clientX,n.changedTouches[0].clientY);for(let a=0;a<n.changedTouches.length;a++)if(n.changedTouches[a].target===o)return new j(n.changedTouches[a].clientX,n.changedTouches[a].clientY)}static isMouseEvent(n){return Object.prototype.toString.apply(n).indexOf("MouseEvent")===8}static isIPosition(n){return!!n&&"x"in n&&"y"in n}static getCurrent(n){const o=new j(0,0);if(window){const a=window.getComputedStyle(n);if(a){const l=parseInt(a.getPropertyValue("left"),10),i=parseInt(a.getPropertyValue("top"),10);o.x=isNaN(l)?0:l,o.y=isNaN(i)?0:i}return o}return null}static copy(n){return new j(0,0).set(n)}get value(){return{x:this.x,y:this.y}}add(n){return this.x+=n.x,this.y+=n.y,this}subtract(n){return this.x-=n.x,this.y-=n.y,this}multiply(n){this.x*=n,this.y*=n}divide(n){this.x/=n,this.y/=n}reset(){return this.x=0,this.y=0,this}set(n){return this.x=n.x,this.y=n.y,this}}class W{constructor(n,o){this.width=n,this.height=o}static getCurrent(n){const o=new W(0,0);if(window){const a=window.getComputedStyle(n);return a&&(o.width=parseInt(a.getPropertyValue("width"),10),o.height=parseInt(a.getPropertyValue("height"),10)),o}return null}static copy(n){return new W(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function lt(e,n){const o=t.ref(),a=t.ref(),l=t.ref(),i=t.ref(),c=t.ref(),u=t.ref(),d=t.ref(),s=t.ref(),p=t.ref(),r=t.ref(),f=t.ref(),g=t.ref(),h=t.ref(e.draggable),v=t.ref(!1);function B(){const M=a.value||document.body,x=window.getComputedStyle(M);if(!x||!o.value)return;const O=j.getTransformInfo(o.value),I={};d.value&&(I.deltaL=o.value.offsetLeft-d.value.x,I.deltaT=o.value.offsetTop-d.value.y);const A=x.getPropertyValue("position");I.width=M.clientWidth,I.height=M.clientHeight,I.pr=parseInt(x.getPropertyValue("padding-right"),10),I.pb=parseInt(x.getPropertyValue("padding-bottom"),10),I.position=x.getPropertyValue("position"),A==="static"&&(M.style.position="relative"),I.translateX=O.x,I.translateY=O.y,r.value=I}function V(M){if(o.value){i.value=W.getCurrent(o.value),c.value=j.getCurrent(o.value),u.value=i.value?W.copy(i.value):null,d.value=c.value?j.copy(c.value):null,B();const x=M.target.getAttribute("type")||"";s.value={n:!!x.match(/n/),s:!!x.match(/s/),w:!!x.match(/w/),e:!!x.match(/e/)}}}function T(){var M,x,O,I;if(o.value){const A=o.value;s.value&&((s.value.n||s.value.s)&&((M=u.value)!=null&&M.height)&&(A.style.height=u.value.height+"px"),(s.value.w||s.value.e)&&((x=u.value)!=null&&x.width)&&(A.style.width=u.value.width+"px"),d.value&&((O=d.value)!=null&&O.x&&(A.style.left=d.value.x+"px"),(I=d.value)!=null&&I.y&&(A.style.top=d.value.y+"px")))}}function E(){const M=e.minHeight?e.minHeight:1,x=e.minWidth?e.minWidth:1;u.value&&d.value&&s.value&&i.value&&(u.value.height<M&&(u.value.height=M,s.value.n&&c.value&&(d.value.y=c.value.y+(i.value.height-M))),u.value.width<x&&(u.value.width=x,s.value.w&&c.value&&(d.value.x=c.value.x+(i.value.width-x))),e.maxHeight&&u.value.height>e.maxHeight&&(u.value.height=e.maxHeight,c.value&&s.value.n&&(d.value.y=c.value.y+(i.value.height-e.maxHeight))),e.maxWidth&&u.value.width>e.maxWidth&&(u.value.width=e.maxWidth,s.value.w&&c.value&&(d.value.x=c.value.x+(i.value.width-e.maxWidth))))}function w(){if(a.value){const M=r.value;if(d.value&&u.value&&s.value&&i.value){const x=M.width-M.pr-M.deltaL-M.translateX-d.value.x,O=M.height-M.pb-M.deltaT-M.translateY-d.value.y;s.value.n&&d.value.y+M.translateY<0&&c.value&&(d.value.y=-M.translateY,u.value.height=i.value.height+c.value.y+M.translateY),s.value.w&&d.value.x+M.translateX<0&&c.value&&(d.value.x=-M.translateX,u.value.width=i.value.width+c.value.x+M.translateX),u.value.width>x&&(u.value.width=x),u.value.height>O&&(u.value.height=O)}}}function S(M){if(!l.value||!i.value||!c.value||!s.value)return;M.subtract(l.value);const x=M.x,O=M.y;s.value.n?(d.value.y=c.value.y+O,u.value.height=i.value.height-O):s.value.s&&(u.value.height=i.value.height+O),s.value.e?u.value.width=i.value.width+x:s.value.w&&(u.value.width=i.value.width-x,d.value.x=c.value.x+x),w(),E(),T()}function P(M){if(!p.value)return;const x=j.fromEvent(M);x&&S(x)}function m(){if(o.value){const{width:M,height:x,x:O,y:I}=o.value.getBoundingClientRect(),A=j.getTransformInfo(o.value);return{size:{width:M,height:x},position:{x:O-A.x,y:I-A.y}}}return null}function C(M){if(o.value){const x=m();f.value=x}l.value=void 0,i.value=null,c.value=null,u.value=null,d.value=null,s.value=null,p.value=null,document.removeEventListener("mousemove",P),document.removeEventListener("mouseup",C)}function y(){document.addEventListener("mousemove",P),document.addEventListener("mouseup",C)}function k(M){M instanceof MouseEvent&&M.button===2||h.value&&(document.body.click(),M.stopPropagation(),M.preventDefault(),l.value=j.fromEvent(M),p.value=M.target,V(M),y())}function $(M){return o.value=M,t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:x=>k(x)},null)])}function z(M=!0){document.body.click();const x=a.value||document.body,O=W.getCurrent(x),I=o.value;M&&I&&(g.value=m(),g.value.transform=I.style.transform),O&&I&&(u.value=O,I.style.height=u.value.height-14+"px",I.style.width=u.value.width-14+"px",I.style.left="7px",I.style.top="7px",I.style.transform="",f.value={size:u.value,position:{x:0,y:0}},h.value=!1,v.value=!0)}function X(){var M,x;if(document.body.click(),g.value){const O={width:g.value.size.width||0,height:g.value.size.height||0},I={x:(window.innerWidth-O.width)/2,y:(window.innerHeight-O.height)/2};(M=u.value)==null||M.set(O),(x=d.value)==null||x.set(I);const A=o.value;A.style.height=O.height+"px",A.style.width=O.width+"px",A.style.left=`${I.x}px`,A.style.top=`${I.y}px`,A.style.transform="",f.value={size:O,position:I},h.value=e.draggable,v.value=!1}}function ne(){if(o.value){const M=W.getCurrent(o.value);if(M){const{width:x,height:O}=M;o.value.style.left=`${(window.innerWidth-x)/2}px`,o.value.style.top=`${(window.innerHeight-O)/2}px`,o.value.style.transform=""}}}function oe(){const M=()=>{v.value?z(!1):ne(),document.body.click()};return window.addEventListener("resize",M),()=>{window.removeEventListener("resize",M)}}const Q=oe();return{renderResizeBar:$,boundingElement:a,resizedEventParam:f,maximize:z,restore:X,allowDrag:h,isMaximized:v,unWindowResizeHandle:Q}}function it(e,n,o){const a=t.ref(),l=t.ref(e.draggable),i=t.ref(e.lockAxis),c=t.ref(),u=t.ref(),d=t.ref(!1),s=t.ref(new j(0,0)),p=t.ref(new j(0,0)),r=t.ref(new j(0,0)),f=t.ref(new j(0,0));t.watch(()=>o.value,m=>{c.value.style.cursor=m?"move":"default"});function g(m,C){if(C.tagName==="BUTTON")return!1;if(C===m)return!0;for(const y in C.children)if(Object.prototype.hasOwnProperty.call(C.children,y)&&g(m,C.children[y]))return!0;return!1}function h(){var k,$;let m=r.value.x+p.value.x,C=r.value.y+p.value.y;i.value==="x"?(m=((k=s.value)==null?void 0:k.x)||0,r.value.x=0):i.value==="y"&&(C=(($=s.value)==null?void 0:$.y)||0,r.value.y=0);const y=`translate3d(${Math.round(m)}px, ${Math.round(C)}px, 0px)`;a.value&&(a.value.style.transform=y),f.value.x=m,f.value.y=C}function v(){if(!u.value||!a.value)return null;const m=u.value.getBoundingClientRect(),C=a.value.getBoundingClientRect(),y={top:m.top<C.top,right:m.right>C.right,bottom:m.bottom>C.bottom,left:m.left<C.left};return y.top||(r.value.y-=C.top-m.top),y.bottom||(r.value.y-=C.bottom-m.bottom),y.right||(r.value.x-=C.right-m.right),y.left||(r.value.x-=C.left-m.left),h(),y}function B(m){m&&(s.value&&m.subtract(s.value),r.value.set(m),h(),v())}function V(m){d.value&&l.value&&(m.stopPropagation(),m.preventDefault(),B(j.fromEvent(m,c.value)))}function T(){var m;d.value&&(d.value=!1,p.value.add(r.value),r.value.reset(),(m=a.value)==null||m.classList.remove("ng-dragging"),document.removeEventListener("mousemove",V),document.removeEventListener("mouseup",T))}function E(){!d.value&&c.value&&(d.value=!0,c.value.classList.add("ng-dragging"),document.addEventListener("mousemove",V),document.addEventListener("mouseup",T))}function w(){if(a.value){const m=j.getTransformInfo(a.value);p.value.set(m);return}p.value.reset()}function S(m){if(!o.value||m instanceof MouseEvent&&m.button===2)return;const C=m.target||m.srcElement;c.value!==void 0&&C&&!g(C,c.value)||l.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),s.value=j.fromEvent(m,a.value),w(),E())}function P(m,C,y){if(l.value&&C){if(m)c.value=m;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)c.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const k=C.querySelector(e.dragHandle);k&&(c.value=k)}}a.value=C,u.value=y,c.value?(c.value.classList.add("ng-draggable"),c.value.addEventListener("mousedown",S)):l.value=!1}}return{registerDraggle:P,resetTranslate:w}}function ge(e,n){if(e){const o=a=>{a.key.toLowerCase()===e.toLowerCase()&&n({event:a,key:e})};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}}}function rt(e,n){const o=t.ref(e.enableEsc);let a=null;return o.value?(a=ge("Escape",l=>{n.emit("esc",{event:l.event,type:"esc"})}),{remove:a}):null}function st(e,n){const o=t.ref(e.enableEnter);let a=null;return o.value?(a=ge("Enter",l=>{n.emit("enter",{event:l.event,type:"enter"})}),{remove:a}):null}const G=t.defineComponent({name:"FModal",props:at,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter"],setup(e,n){const o=t.ref(e.width||300),a=t.ref(e.height||200),l=t.ref(e.modelValue),i=t.ref(""),c=t.ref(e.class),u=t.ref(e.fitContent),d=t.ref(e.showHeader),s=t.ref(""),p=t.ref(e.showCloseButton),r=t.ref(e.showMaxButton),f=t.ref(!1),g=t.ref(e.dialogType),h=t.ref(e.src),v=t.ref(""),B=t.ref(e.showButtons),V=t.ref(e.title),T=t.ref(e.resizeable),E=t.ref(e.containment||null),w=t.ref();function S(b,D){l.value=!1,n.emit("update:modelValue",!1),D!=null&&n.emit(D?"accept":"cancel"),n.emit("closed",b)}const P=[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:b=>{S(b,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:b=>{S(b,!0)}}],m=t.ref(e.buttons&&e.buttons.length?e.buttons:P),C=t.computed(()=>!!s.value),y=t.computed(()=>!!B.value&&!!m.value),k=t.ref(),$=t.ref(),z=t.ref(!1),{renderResizeBar:X,maximize:ne,restore:oe,boundingElement:Q,resizedEventParam:M,allowDrag:x,unWindowResizeHandle:O}=lt(e),{registerDraggle:I}=it(e,n,x);function A(){const b=document.querySelectorAll(".farris-modal").length;(!b||b-1<=0)&&document.body.classList.remove("modal-open"),w.value&&w.value.classList.remove("show")}t.watch(()=>e.title,(b,D)=>{b!==D&&(V.value=b)}),t.watch(()=>e.modelValue,(b,D)=>{b!==D&&(l.value=b,b||A())}),t.watch(()=>e.showHeader,(b,D)=>{b!==D&&(d.value=b)}),t.watch(()=>e.showButtons,(b,D)=>{b!==D&&(B.value=b)}),t.watch(()=>M.value,(b,D)=>{const Y=b||{},K=D||{};JSON.stringify(Y)!==JSON.stringify(K)&&n.emit("resize",{newSize:b,oldSize:D})});const ae=t.computed(()=>(l.value&&document.body.classList.add("modal-open"),l.value)),kt=t.computed(()=>{const b={modal:!0,"farris-modal":!0,fade:!0};return b["f-modal-fitContent"]=!!u.value,b.show=!!ae.value,b}),Bt=t.computed(()=>{var Y;const b={"modal-dialog":!0},D=(Y=c.value)==null?void 0:Y.split(" ");return D==null||D.reduce((K,zt)=>(K[zt]=!0,K),b),b}),Vt=t.computed(()=>({position:"absolute",top:`${(window.innerHeight-a.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:u.value?"auto":`${a.value}px`})),Et=t.computed(()=>({"modal-content":!0,"modal-content-has-header":d.value})),Tt=t.computed(()=>{const b={display:d.value?"":"none"};return b["pointer-events"]=x.value?"auto":"none",b}),St=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:z.value})),Nt=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":g.value==="iframe"}));function It(){return{}}const Pt=t.computed(()=>{const b={textAlgin:v.value},D=It();return Object.assign(b,D)});function Me(b){if(b.stopPropagation(),z.value){z.value=!1,oe();return}ne(),z.value=!0}async function Ot(b,D){b.handle&&await b.handle(D,b)&&n.emit("closed",D)}function Dt(b){b.width&&(o.value=b.width),b.height&&(a.value=b.height),b.buttons&&(m.value=b.buttons),b.title&&(V.value=b.title)}let le=null,ie=null;t.onMounted(()=>{$.value&&!E.value&&(E.value=$.value.parentElement,Q.value=E.value,I(k.value,$.value,Q.value)),ae.value&&document.body.classList.add("modal-open"),le=rt(e,n),ie=st(e,n)}),t.onUnmounted(()=>{O&&O(),le&&le.remove(),ie&&ie.remove()}),n.expose({modalElementRef:$,updateModalOptions:Dt,close:S,maxDialog:Me});function Lt(){return t.createVNode("ul",null,[f.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),r.value&&t.createVNode("li",{onClick:Me,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:St.value},null)]),p.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:b=>S(b,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}function $t(){return t.createVNode("div",{class:"modal-footer",style:Pt.value},[m.value&&m.value.map(b=>t.createVNode("button",{name:b.name,type:"button",class:b.class+(b.iconClass?" btn-icontext":""),onClick:D=>{Ot(b,D)}},[!!b.iconClass&&t.createVNode("i",{class:b.iconClass},null),b.text]))])}function jt(){return t.createVNode("div",{ref:k,class:"modal-header",style:Tt.value},[t.createVNode("div",{class:"modal-title"},[C.value&&t.createVNode("span",{class:s.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[V.value])]),t.createVNode("div",{class:"actions"},[Lt()])])}function At(b){b.stopPropagation()}return()=>t.createVNode(t.Teleport,{to:"body"},{default:()=>[ae.value&&t.createVNode(t.Transition,{name:"fade",appear:!0},{default:()=>{var b,D;return[t.createVNode("div",{class:kt.value,style:"display: block",ref:w,onClick:At},[t.createVNode("div",{id:i.value,class:Bt.value,style:Vt.value,ref:$},[t.createVNode("div",{class:Et.value},[d.value&&jt(),t.createVNode("div",{class:Nt.value},[(D=(b=n.slots).default)==null?void 0:D.call(b),g.value==="iframe"&&t.createVNode("iframe",{title:i.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:h.value},null)]),y.value&&$t()]),!u.value&&T.value&&$.value&&!z.value&&X($.value)])])]}})]})}});function ve(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function ct(e){const n=document.createElement("div");n.style.display="contents";const o=t.createApp({setup(a,l){t.onUnmounted(()=>{document.body.removeChild(n)});const i=t.ref(),c=t.ref(e.class||""),u=t.ref(!!e.showButtons),d=t.ref(!!e.showHeader),s=t.ref(e.showCloseButton==null?!0:e.showCloseButton),p=t.ref(!0),r=t.ref(e.title||""),f=e.acceptCallback||(()=>{}),g=e.rejectCallback||(()=>{}),h=e.closedCallback||(T=>{}),v=e.resizeHandle||(T=>{}),B=ve(e),V=T=>{p.value=!1,o.unmount(),h(T)};return t.onMounted(()=>{}),l.expose({modalRef:i}),()=>t.createVNode(G,{ref:i,class:c.value,modelValue:p.value,"onUpdate:modelValue":T=>p.value=T,title:r.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":d.value,"show-buttons":u.value,"show-close-button":s.value,"show-max-button":!1,onAccept:f,onCancel:g,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:V,onResize:v},{default:()=>[B&&B(o)]})}});return document.body.appendChild(n),o.mount(n),o}class ut{constructor(n){N(this,"appContext",null);N(this,"modalRef",t.ref());N(this,"activeModalIndex",t.ref(0));N(this,"modalRefs",{});N(this,"isUseEscCloseModal",t.ref(!1));N(this,"activeModalInstance",t.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=n,this.appContext=n?n._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(n,o){const{width:a,height:l}={width:window.innerWidth,height:window.innerHeight};return a<n&&(n=a),l<o&&(o=l),{width:n,height:o}}static show(n){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return ct(o)}open(n){const o=document.createDocumentFragment();n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const a=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},n)),l=t.ref(!0),i=a.value.acceptCallback||(()=>{}),c=a.value.rejectCallback||(()=>{}),u=a.value.closedCallback||((w,S)=>{}),d=a.value.resizeHandle||(w=>{});let s;const p=ve(a.value),r=w=>{var P;l.value=!1;const S=(P=w==null?void 0:w.target)==null?void 0:P.classList.contains("modal_close");u(w,this.isUseEscCloseModal.value?"esc":S?"icon":"button")},f=w=>{r(w),s&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,o),s=null,this.modalRef.value=null,this.modalRefs){const S=Object.keys(this.modalRefs).map(P=>Number(P));S.length>0?this.activeModalIndex.value=Math.max(...S):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},g=w=>{var S;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((S=this.activeModalInstance.value)==null||S.close(w==null?void 0:w.event))},{width:h,height:v}=a.value,B=this.adaptToWindow(h||500,v||320);Object.assign(a.value,B);const V=()=>t.createVNode(G,t.mergeProps({ref:this.modalRef,modelValue:l.value,"onUpdate:modelValue":w=>l.value=w},a.value,{onAccept:i,onCancel:c,onClosed:f,onResize:d,onEsc:g}),{default:()=>[p&&p(this.app)]});return s=(w=>{const S=t.h(V,w);return S.appContext=this.appContext,t.render(S,o),S})({...a.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:w=>{a.value={...a.value,...w},s&&t.render(t.cloneVNode(s,{...a}),o)},destroy:f,modalRef:this.activeModalInstance}}}const be=Symbol("FModalService");G.install=e=>{e.component(G.name,G);const n=new ut(e);e.provide(be,n),e.provide("FModalService",n)};function Ce(e,n){function o(){const a=e.beforeOpen||e.beforeClickButton||null;let l=Promise.resolve(!0);if(a){const i=a(n.value);if(typeof i>"u")return l;typeof i=="boolean"?l=Promise.resolve(i):l=i}return l}return{judgeCanOpen:o}}function dt(e,n,o,a,l){const i=t.ref(e.buttonBehavior),c=t.ref(e.popupOnInput),u=t.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:d}=Ce(e,l),s=t.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),p=t.inject(be,null),r=t.ref();async function f(v){if(await d()&&s.value){const B=!!n.slots.default;if(i.value==="Modal"){const V=e.modalOptions,T=p==null?void 0:p.open({...V,render:()=>n.slots.default&&n.slots.default()});r.value=T==null?void 0:T.modalRef}i.value==="Overlay"&&ot.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),B&&i.value==="Popup"&&a.togglePopup(!0),B&&c.value&&a.hidePopup(),n.emit("clickButton",{origin:v,value:e.modelValue})}}function g(v){n.emit("mouseEnterIcon",v)}function h(v){n.emit("mouseLeaveIcon",v)}return{buttonGroupClass:u,onClickButton:f,onMouseEnterButton:g,onMouseLeaveButton:h,modalRef:r}}function ft(e,n,o,a,l,i){const c=t.ref(!1),u=t.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:d}=i;function s(g){c.value=g}t.watch(l,()=>{s(!!l.value)});function p(g){const h=!e.readonly&&!e.disable&&e.editable,v=!e.editable;g.stopPropagation(),(h||v)&&(d(""),s(!c.value),n.emit("clear"))}function r(g){if(u.value){if(!o.value){s(!1);return}!e.disable&&!e.readonly&&s(!0)}}function f(g){u.value&&s(!1)}return{enableClearButton:u,showClearButton:c,onClearValue:p,onMouseEnterTextBox:r,onMouseLeaveTextBox:f}}function pt(e,n,o,a,l){const i=t.computed(()=>e.popupOnInput),c=t.computed(()=>e.popupOnFocus),{shouldPopupContent:u}=l,d=t.computed(()=>e.enableTitle?o.value:""),s=t.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),p=t.computed(()=>e.readonly||!e.editable),r=t.ref(!1),f=t.computed(()=>!e.disable&&r.value),g=t.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),h=t.computed(()=>({"input-group":!0,"f-state-disabled":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly&&!e.disable,"f-state-focus":f.value}));function v(y,k=!0){o.value=y,k&&(n.emit("change",y),n.emit("update:modelValue",y))}function B(y){u.value=!1,v(y,!0)}t.watch(()=>e.modelValue,y=>{o.value=y});function V(y){r.value=!1,n.emit("blur",y),y.stopPropagation()}function T(y){n.emit("click",y),!e.disable&&!e.readonly&&e.popupOnClick&&l.togglePopup()}function E(y){e.disable||(r.value=!0,p.value||(n.emit("focus",y),c.value&&!u.value&&l.popup()))}function w(y){n.emit("input",y.target.value);const k=y.target.value;a.value=k,o.value!==k&&v(k,e.updateOn==="change"),i.value&&!u.value&&l.popup()}function S(y){y.target.tagName!=="INPUT"&&y.preventDefault(),y.stopPropagation()}function P(y){n.emit("keydown",y)}function m(y){y.key==="Enter"&&(i.value||c.value)&&l.hidePopup(),n.emit("keyup",y)}function C(y){const k=y.target.value;y.stopPropagation(),v(k)}return{hasFocusedTextBox:f,isTextBoxReadonly:p,textBoxClass:g,textBoxPlaceholder:s,textBoxTitle:d,inputGroupClass:h,changeTextBoxValue:v,commitValue:B,onBlurTextBox:V,onClickTextBox:T,onFocusTextBox:E,onInput:w,onKeyDownTextBox:P,onKeyUpTextBox:m,onMouseDownTextBox:S,onTextBoxValueChange:C}}function mt(e,n,o,a){const l=t.ref(),i=t.ref(!1),{judgeCanOpen:c}=Ce(e,a);function u(){const r=l.value;r&&r.show(o.value)}async function d(r=!1){if(!!n.slots.default){if(!r&&!i.value&&!await c())return;i.value=!i.value,await t.nextTick(),u()}}async function s(r=!1){if(!!n.slots.default){if(!r&&!await c())return;i.value=!0,await t.nextTick(),u()}}function p(){i.value=!1}return{hidePopup:p,popup:s,shouldPopupContent:i,togglePopup:d,popoverRef:l}}function yt(e,n,o){const a=t.ref(),{isTextBoxReadonly:l,textBoxClass:i,textBoxPlaceholder:c,textBoxTitle:u,onBlurTextBox:d,onClickTextBox:s,onFocusTextBox:p,onInput:r,onKeyDownTextBox:f,onKeyUpTextBox:g,onMouseDownTextBox:h,onTextBoxValueChange:v}=o;return t.onMounted(()=>{var B,V;e.selectOnCreated&&((B=a.value)==null||B.select()),e.focusOnCreated&&((V=a.value)==null||V.focus())}),()=>t.createVNode("input",{ref:a,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:i.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:c.value,readonly:l.value,tabindex:e.tabIndex,title:u.value,type:e.inputType,value:n.value,onBlur:d,onChange:v,onClick:s,onFocus:p,onInput:r,onKeydown:f,onKeyup:g,onMousedown:h},null)}function ht(e,n,o){const a=t.ref(e.separator),{changeTextBoxValue:l}=o,i=t.computed(()=>n.value?n.value.split(a.value).map(u=>({name:u,selectable:!0})):[]);function c(u){l(u.map(d=>d.name).join(a.value),!0)}return()=>t.createVNode(Fe,{id:`${e.id}-tag-editor`,class:"form-control",data:i.value,showClose:!0,showInput:!0,onChange:c},null)}function gt(e,n,o,a){const{buttonGroupClass:l,onClickButton:i,onMouseEnterButton:c,onMouseLeaveButton:u}=o,{enableClearButton:d,showClearButton:s,onClearValue:p}=a,r=t.ref();return{renderButtonGroup:()=>t.createVNode("div",{id:`${e.id}-button-group`,class:l.value},[d.value&&t.withDirectives(t.createVNode("span",{class:"input-group-text input-group-clear",onClick:p},[t.createVNode("i",{class:"f-icon modal_close"},null)]),[[t.vShow,s.value]]),n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",onClick:i,onMouseenter:c,onMouseleave:u},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:r,onClick:i,onMouseenter:c,onMouseleave:u},null):null]),buttonHandleElement:r}}function vt(e,n,o){const a=t.ref(e.popupMinWidth),{hidePopup:l,popoverRef:i}=o;return()=>t.createVNode(xe,{id:`${e.id}-popover`,ref:i,visible:!0,placement:e.placement,host:e.popupHost,"keep-width-with-reference":e.keepWidthWithReference,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:a.value,offsetX:e.popupOffsetX,onHidden:l},{default:()=>{var c,u;return[(u=(c=n.slots).default)==null?void 0:u.call(c)]}})}const bt=t.defineComponent({name:"FButtonEdit",props:he,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,n){const o=t.ref(),a=t.ref(e.customClass),l=t.ref(e.modelValue),i=mt(e,n,o,l),{shouldPopupContent:c,hidePopup:u,togglePopup:d}=i,s=dt(e,n,o,i,l),p=t.ref(""),r=pt(e,n,l,p,i),{hasFocusedTextBox:f,commitValue:g,inputGroupClass:h}=r,v=ft(e,n,l,f,p,r),{onMouseEnterTextBox:B,onMouseLeaveTextBox:V}=v,T=t.computed(()=>{const y={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return a.value&&a.value.split(" ").reduce((k,$)=>(k[$]=!0,k),y),y});function E(){return e.multiSelect&&e.inputType==="tag"?ht(e,l,r):yt(e,l,r)}let w=E();t.watch([()=>e.multiSelect,()=>e.inputType],()=>{w=E()});const{renderButtonGroup:S,buttonHandleElement:P}=gt(e,n,s,v),m=vt(e,n,i),C={commitValue:g,elementRef:o,hidePopup:u,shouldPopupContent:c,togglePopup:d,openDialog:()=>{P.value&&e.buttonBehavior==="Modal"&&P.value.click()},getModal:()=>{var y;return e.buttonBehavior==="Modal"?(y=s.modalRef.value)==null?void 0:y.value:null}};return t.onMounted(()=>{o.value.componentInstance=C,window.onresize=()=>{document.body.click()}}),n.expose(C),()=>t.createVNode(t.Fragment,null,[t.createVNode("div",t.mergeProps(n.attrs,{ref:o,class:T.value,id:e.id}),[t.createVNode("div",{id:`${e.id}-input-group`,class:h.value,onMouseenter:B,onMouseleave:V},[w(),S()])]),c.value&&m()])}}),Ct={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/radio-group.schema.json",title:"item-collection-editor",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a item-collection-editor",type:"string"},type:{description:"The type string of item-collection-editor component",type:"string",default:"item-collection-editor"},requiredFields:{description:"",type:"array",default:[]},uniqueFields:{description:"",type:"array",default:[]},dynamicMappingKeys:{type:"boolean",default:!1},columns:{description:"",type:"array",default:[]},modalTitle:{description:"",type:"string",default:""},canEmpty:{description:"",type:"boolean",default:!0},valueField:{description:"",type:"string",default:"value"},nameField:{description:"",type:"string",default:"name"},idField:{description:"",type:"string",default:"value"},readonly:{description:"",type:"boolean",default:!1},modelValue:{description:"",type:"string",default:""}},required:["id","type"],ignore:[]},we={requiredFields:{type:Array,default:[]},uniqueFields:{type:Array,default:[]},dynamicMappingKeys:{type:Boolean,default:!1},columns:{type:Array,default:[]},modalTitle:{type:String,default:"项编辑器"},canEmpty:{type:Boolean,default:!0},valueField:{type:String,default:"value"},nameField:{type:String,default:"name"},idField:{type:String,default:"value"},readonly:{type:Boolean,default:!1},modelValue:{type:Array,default:[]}},wt=se.createPropsResolver(we,Ct,je,Ee),Mt={requiredFields:{type:Array,default:[]},uniqueFields:{type:Array,default:[]},dynamicMappingKeys:{type:Boolean,default:!1},columns:{type:Array,default:[]},canEmpty:{type:Boolean,default:!0},valueField:{type:String,default:"value"},nameField:{type:String,default:"value"},datas:{type:Array,default:[]},readonly:{type:Boolean,default:!1}},Ft=t.defineComponent({name:"FItemCollectionEditorInner",props:Mt,emits:["change"],setup(e,n){const{guid:o}=R.useGuid(),a=new Be.FNotifyService,l=t.ref(e.valueField),i=t.ref(e.nameField),c={editMode:"cell"},u={fitColumns:!0},d=t.ref(),s=e.columns;let p=e.datas;function r(){const E={};return s.forEach(w=>{w.editor&&(w.editor.type==="checkbox"||w.editor.type==="switch")?E[w.field]=!1:E[w.field]=""}),E}function f(){if(e.dynamicMappingKeys){const E="请先填写XXX",w=l.value.trim()?i.value.trim()?"":"枚举名称字段":"枚举值字段";return a.warning({position:"top-center",message:E.replace("XXX",w)}),!1}return!0}function g(E){const w="不允许重复。";if(!f())return!1;if(!E||E.length===0)return e.canEmpty?!0:(a.warning({position:"top-center",message:"请添加值"}),!1);const S=e.requiredFields||[],P="不允许为空";for(const C of E)for(const y of Object.keys(C)){const k=s.find($=>$.field===y);if(k&&k.editor&&(k.editor.type==="checkbox"||k.editor.type==="switch")){if(S.includes(y)&&(C[y]===null||C[y]===void 0))return a.warning({position:"top-center",message:k.title+P}),!1}else if(S.includes(y)&&(C[y]===void 0||C[y]===""||C[y]===null))return a.warning({position:"top-center",message:k.title+P}),!1}const m=e.uniqueFields||[];for(const C of m){const y=E.map(z=>z[C]),k=new Set(y),$=Array.from(k);if(y.length!==$.length){const z=s.find(X=>X.field===C);return a.warning({position:"top-center",message:z.title+w}),!1}}return!0}function h(){if(e.readonly||!f())return;const E=r(),w=o();p.push({hId:w,...E}),d.value.updateDataSource(p),d.value.selectItemById(w)}function v(){p&&p.length>0&&d.value.selectItemById(p[0].hId)}function B(){p=[...d.value.getVisibleData().filter(w=>!w.checked).map(w=>w.raw)],d.value.updateDataSource(p),v()}function V(E){if(!E||E.length===0)return E;const w=[];return E.forEach(S=>{const{value:P,name:m,...C}=S,y=Object.assign({},C);y[l.value.trim()]=P,y[i.value.trim()]=m,w.push(y)}),w}function T(){d.value.endEditCell();let E=[];return d.value.getVisibleData().forEach(w=>{const{hId:S,...P}=w.raw,m={};for(const C in P)C.startsWith("_")||(m[C]=P[C]);E.push(m)}),g(E)?(e.dynamicMappingKeys?(E=V(E),n.emit("change",{value:E,parameters:{valueField:l.value.trim(),nameField:i.value.trim()}})):n.emit("change",{value:E}),!0):!1}return n.expose({clickConfirm:T}),t.onMounted(()=>{v()}),()=>t.createVNode("div",{class:"f-utils-fill-flex-column"},[!e.readonly&&t.createVNode("div",{class:"mb-1 py-1 ml-1"},[t.createVNode("button",{class:"btn f-rt-btn f-btn-ml btn-primary",onClick:()=>h()},[t.createTextVNode("新增")]),t.createVNode("button",{class:"btn f-rt-btn f-btn-ml btn-secondary",onClick:()=>B()},[t.createTextVNode("删除")])]),t.createVNode("div",{class:"f-utils-fill border",style:"margin:0 8px;border-radius:12px;"},[t.createVNode(ke,{ref:d,showBorder:!0,idField:"hId",columns:s,data:p,editable:!e.readonly,"edit-option":c,columnOption:u,fit:!0},null)])])}}),xt=t.defineComponent({name:"FItemCollectionEditor",props:we,components:{},emits:["change"],setup(e,n){const{guid:o}=R.useGuid(),a=t.ref(`共 ${(e.modelValue||[]).length} 项`),l=t.ref(e.valueField),i=t.ref(e.nameField),c=t.ref();function u(){let f=[];return e.dynamicMappingKeys?(f=[],l.value=l.value.trim(),i.value=i.value.trim(),(e.modelValue||[]).forEach(g=>{if(l.value&&i.value){const{[l.value]:h,[i.value]:v,...B}=g,V=B||{};V.value=h,V.name=v,V.hId=o(),f.push(V)}})):(f=H.cloneDeep(e.modelValue||[]),f.forEach(g=>{g.hId=o()})),f}function d(){let f=[];return e.columns&&e.columns.length>0?f=e.columns:f=[{field:e.valueField,title:"值",dataType:"string"},{field:e.nameField,title:"名称",dataType:"string"}],f}function s(){}const p={fitContent:!1,width:900,height:600,title:"项编辑器",buttons:[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:f=>!0},{name:"accept",text:"确定",class:"btn btn-primary",handle:f=>!!c.value.clickConfirm()}]};function r(f){a.value=`共 ${f.value.length} 项`,n.emit("change",f)}return t.watch(()=>e.modelValue,f=>{a.value=`共 ${(e.modelValue||[]).length} 项`}),t.onMounted(()=>{}),()=>t.createVNode(bt,{"button-behavior":"Modal","modal-options":p,modelValue:a.value,"onUpdate:modelValue":f=>a.value=f,editable:!1,beforeOpen:s},{default:()=>[t.createVNode("div",{class:"f-utils-absolute-all f-utils-flex-column"},[e.dynamicMappingKeys&&t.createVNode("div",{class:"farris-form-controls-inline p-2 f-form-layout farris-form f-form-lable-auto"},[t.createVNode("div",{class:"farris-group-wrap mr-3"},[t.createVNode("div",{class:"form-group farris-form-group"},[t.createVNode("label",{class:"col-form-label"},[t.createVNode("span",{class:"farris-label-info text-danger"},[t.createTextVNode("*")]),t.createVNode("span",{class:"farris-label-text"},[t.createTextVNode("枚举值字段")])]),t.createVNode("div",{class:"farris-input-wrap"},[t.withDirectives(t.createVNode("input",{type:"input",class:"form-control","onUpdate:modelValue":f=>l.value=f,readonly:e.readonly},null),[[t.vModelText,l.value]])])])]),t.createVNode("div",{class:"farris-group-wrap"},[t.createVNode("div",{class:"form-group farris-form-group"},[t.createVNode("label",{class:"col-form-label"},[t.createVNode("span",{class:"farris-label-info text-danger"},[t.createTextVNode("*")]),t.createVNode("span",{class:"farris-label-text"},[t.createTextVNode("枚举名称字段")])]),t.createVNode("div",{class:"farris-input-wrap"},[t.withDirectives(t.createVNode("input",{type:"input",class:"form-control","onUpdate:modelValue":f=>i.value=f,readonly:e.readonly},null),[[t.vModelText,i.value]])])])])]),t.createVNode(Ft,{ref:c,valueField:l.value,nameField:i.value,requiredFields:e.requiredFields,uniqueFields:e.uniqueFields,dynamicMappingKeys:e.dynamicMappingKeys,readonly:e.readonly,canEmpty:e.canEmpty,datas:u(),columns:d(),onChange:f=>r(f)},null)])]})}});q.install=e=>{e.component(q.name,q),e.component(Z.name,Z)},q.register=(e,n,o,a)=>{e["radio-group"]=q,n["radio-group"]=te,e["item-collection-editor"]=xt,n["item-collection-editor"]=wt},q.registerDesigner=(e,n,o)=>{e["radio-group"]=Ye,n["radio-group"]=te},L.Radio=Z,L.RadioGroup=q,L.default=q,L.propsResolver=te,L.radioGroupProps=_,L.radioProps=ce,Object.defineProperties(L,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(L,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../common/index.umd.js"),require("lodash-es"),require("../designer-canvas/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("../data-grid/index.umd.js"),require("../notify/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../common/index.umd.js","lodash-es","../designer-canvas/index.umd.js","../dynamic-resolver/index.umd.js","../tags/index.umd.js","../popover/index.umd.js","../data-grid/index.umd.js","../notify/index.umd.js"],t):(L=typeof globalThis<"u"?globalThis:L||self,t(L["radio-group"]={},L.Vue,L.common,L.LodashES,L.designerCanvas,L.dynamicResolver,L.FTags,L.FPopover,L.FDataGrid,L.notify))})(this,function(L,t,R,H,re,se,Fe,xe,ke,Be){"use strict";var Rt=Object.defineProperty;var qt=(L,t,R)=>t in L?Rt(L,t,{enumerable:!0,configurable:!0,writable:!0,value:R}):L[t]=R;var N=(L,t,R)=>qt(L,typeof t!="symbol"?t+"":t,R);const ce={value:{type:String,default:""},modelValue:{type:String,default:""},name:{type:String,default:""},label:{type:String,default:""},id:{type:String,default:""}},ue=Symbol("radioGroupContext"),Z=t.defineComponent({name:"FRadio",props:ce,emits:["update:value"],setup(e,n){const o=t.inject(ue,null),{buttonClass:a,checked:l,disabled:i,name:c,shouldRenderButton:u,shouldRenderNative:d,onClickRadio:s}=R.useCheck(e,n,o==null?void 0:o.parentProps,o==null?void 0:o.parentContext);return t.onMounted(()=>{}),()=>{var p,r,f,g;return t.createVNode(t.Fragment,null,[u.value&&t.createVNode("div",{class:a.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:s},[(r=(p=n.slots).default)==null?void 0:r.call(p)]),d.value&&t.createVNode("div",{class:"custom-control custom-radio",onClick:s},[t.createVNode("input",{type:"radio",class:"custom-control-input",name:c.value,id:e.id,value:e.value,checked:l.value,disabled:i.value},null),t.createVNode("div",{class:"custom-control-label"},[(g=(f=n.slots).default)==null?void 0:g.call(f)])])])}}});function Ve(e,n,o){return n}function Ee(e,n,o){return n}const de={},fe={};function ee(e){const{properties:n,title:o,ignore:a}=e,l=a&&Array.isArray(a),i=Object.keys(n).reduce((c,u)=>((!l||!a.find(d=>d===u))&&(c[u]=n[u].type==="object"&&n[u].properties?ee(n[u]):H.cloneDeep(n[u].default)),c),{});if(o&&(!l||!a.find(c=>c==="id"))){const c=o.toLowerCase().replace(/-/g,"_");i.id=`${c}_${Math.random().toString().slice(2,6)}`}return i}function Te(e){const{properties:n,title:o,required:a}=e;if(a&&Array.isArray(a)){const l=a.reduce((i,c)=>(i[c]=n[c].type==="object"&&n[c].properties?ee(n[c]):H.cloneDeep(n[c].default),i),{});if(o&&a.find(i=>i==="id")){const i=o.toLowerCase().replace(/-/g,"_");l.id=`${i}_${Math.random().toString().slice(2,6)}`}return l}return{type:o}}function pe(e,n={},o){const a=de[e];if(a){let l=Te(a);const i=fe[e];return l=i?i({getSchemaByType:pe},l,n,o):l,l}return null}function Se(e,n){const o=ee(n);return Object.keys(o).reduce((a,l)=>(Object.prototype.hasOwnProperty.call(e,l)&&(a[l]&&H.isPlainObject(a[l])&&H.isPlainObject(e[l]||!e[l])?Object.assign(a[l],e[l]||{}):a[l]=e[l]),a),o),o}function Ne(e,n){return Object.keys(e).filter(a=>e[a]!=null).reduce((a,l)=>{if(n.has(l)){const i=n.get(l);if(typeof i=="string")a[i]=e[l];else{const c=i(l,e[l],e);Object.assign(a,c)}}else a[l]=e[l];return a},{})}function Ie(e,n,o=new Map){const a=Se(e,n);return Ne(a,o)}function Pe(e={}){function n(s,p,r,f){if(typeof r=="number")return f[s].length===r;if(typeof r=="object"){const g=Object.keys(r)[0],h=r[g];if(g==="not")return Number(f[s].length)!==Number(h);if(g==="moreThan")return Number(f[s].length)>=Number(h);if(g==="lessThan")return Number(f[s].length)<=Number(h)}return!1}function o(s,p,r,f){return f[s]&&f[s].propertyValue&&String(f[s].propertyValue.value)===String(r)}const a=new Map([["length",n],["getProperty",o]]);Object.keys(e).reduce((s,p)=>(s.set(p,e[p]),s),a);function l(s,p){const r=s;return typeof p=="number"?[{target:r,operator:"length",param:null,value:Number(p)}]:typeof p=="boolean"?[{target:r,operator:"getProperty",param:s,value:!!p}]:typeof p=="object"?Object.keys(p).map(f=>{if(f==="length")return{target:r,operator:"length",param:null,value:p[f]};const g=f,h=p[f];return{target:r,operator:"getProperty",param:g,value:h}}):[]}function i(s){return Object.keys(s).reduce((r,f)=>{const g=l(f,s[f]);return r.push(...g),r},[])}function c(s,p){if(a.has(s.operator)){const r=a.get(s.operator);return r&&r(s.target,s.param,s.value,p)||!1}return!1}function u(s,p){return i(s).reduce((g,h)=>g&&c(h,p),!0)}function d(s,p){const r=Object.keys(s),f=r.includes("allOf"),g=r.includes("anyOf"),h=f||g,V=(h?s[h?f?"allOf":"anyOf":"allOf"]:[s]).map(E=>u(E,p));return f?!V.includes(!1):V.includes(!0)}return{parseValueSchema:d}}const F={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"},"query-solution":{type:"query-solution",name:"筛选方案",icon:"QueryScheme"}},Oe={},De={};Pe();function me(e,n,o=new Map,a=(c,u,d,s)=>u,l={},i=c=>c){return de[n.title]=n,fe[n.title]=a,Oe[n.title]=l,De[n.title]=i,(c={})=>{const u=Ie(c,n,o),d=Object.keys(e).reduce((s,p)=>(s[p]=e[p].default,s),{});return Object.assign(d,u)}}function Le(e,n){return{customClass:n.class,customStyle:n.style}}const $e=new Map([["appearance",Le]]),je=new Map([]),Ae={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/radio-group.schema.json",title:"radio-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a radio-group",type:"string"},type:{description:"The type string of radio-group component",type:"string",default:"radio-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0},textField:{description:"",type:"string",default:"name"},valueField:{description:"",type:"string",default:"value"},data:{description:"",type:"array"},direction:{description:"",type:"string",default:"horizontal"}},required:["type"],ignore:["id","appearance","binding","visible"]},_={...{checked:{type:Boolean,default:!1},direction:{type:String,default:"horizontal"},type:{type:String,default:"default"},size:{type:String,default:"middle"},options:{type:Object,default:[]}},id:String,disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},enumData:{type:Array,default:[]},data:{type:Array,default:[]},modelValue:{type:String,default:""},name:{type:String,default:""},tabIndex:{type:Number,default:-1},textField:{type:String,default:"name"},valueField:{type:String,default:"value"}},te=me(_,Ae,$e,Ve);function ye(e,n,o){const a=t.computed(()=>!e.disabled),l=t.computed(()=>e.data||e.enumData||e.options||[]);function i(d){return d[e.valueField]}function c(d){return d[e.textField]}function u(d,s){if(a.value){const p=i(d);o.value!==p&&(o.value=p,n.emit("changeValue",p),n.emit("update:modelValue",p))}s.stopPropagation()}return{enumData:l,getValue:i,getText:c,onClickRadio:u}}const q=t.defineComponent({name:"FRadioGroup",props:_,emits:["changeValue","update:modelValue"],setup(e,n){const o=t.ref(e.modelValue),{enumData:a,onClickRadio:l,getValue:i,getText:c}=ye(e,n,o),u=t.computed(()=>({"farris-checkradio-hor":e.direction==="horizontal"})),d=t.ref([]);return t.provide(ue,{radios:d,parentProps:e,parentContext:n}),t.watch(()=>e.modelValue,s=>{o.value=s}),()=>t.createVNode("div",{class:["farris-input-wrap","btn-group",u.value]},[n.slots.default?n.slots.default():a.value.map((s,p)=>{const r="radio_"+e.id+e.name+s[e.valueField];return t.createVNode("div",{class:"custom-control custom-radio"},[t.createVNode("input",{type:"radio",class:"custom-control-input",name:r,id:r,value:i(s),checked:i(s)===o.value,disabled:e.readonly||e.disabled,tabindex:e.tabIndex,onClick:f=>l(s,f)},null),t.createVNode("label",{class:"custom-control-label",for:r},[c(s)])])})])}});function ze(e,n,o){var P;const a=o&&o.getStyles&&o.getStyles()||"",l=o&&o.getDesignerClass&&o.getDesignerClass()||"",i=t.ref();function c(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function u(){return!1}function d(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function s(){return(n==null?void 0:n.schema.componentType)==="frame"?!0:o&&o.hideNestedPaddingInDesginerView?o.hideNestedPaddingInDesginerView():!1}function p(m){if(!m||!m.value)return null;if(m.value.schema&&m.value.schema.type==="component")return m.value;const C=t.ref(m==null?void 0:m.value.parent),y=p(C);return y||null}function r(m=n){var $;const{componentInstance:C,designerItemElementRef:y}=m;if(!C||!C.value)return null;const{getCustomButtons:k}=C.value;return C.value.canMove||k&&(($=k())!=null&&$.length)?y:r(m.parent)}function f(m){return!!o&&o.canAccepts(m)}function g(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function h(){}function v(m,C){!m||!C||o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(m,C)}function B(m,C){const{componentType:y}=m;let k=pe(y,m,C);o&&o.onResolveNewComponentSchema&&(k=o.onResolveNewComponentSchema(m,k));const $=y.toLowerCase().replace(/-/g,"_");return k&&!k.id&&k.type===y&&(k.id=`${$}_${Math.random().toString().slice(2,6)}`),k}function V(m){}function T(...m){if(o&&o.getPropsConfig)return o.getPropsConfig(...m)}function E(){o&&o.onRemoveComponent&&o.onRemoveComponent(),n!=null&&n.schema.contents&&n.schema.contents.map(m=>{let C=m.id;m.type==="component-ref"&&(C=m.component);const y=e.value.querySelectorAll(`#${C}-design-item`);y!=null&&y.length&&Array.from(y).map(k=>{var $;($=k==null?void 0:k.componentInstance)!=null&&$.value.onRemoveComponent&&k.componentInstance.value.onRemoveComponent()})})}function w(){if(o&&o.getCustomButtons)return o.getCustomButtons()}function S(m){if(o&&o.onPropertyChanged)return o.onPropertyChanged(m)}return i.value={canMove:c(),canSelectParent:u(),canDelete:d(),canNested:!s(),contents:n==null?void 0:n.schema.contents,elementRef:e,parent:(P=n==null?void 0:n.parent)==null?void 0:P.componentInstance,schema:n==null?void 0:n.schema,styles:a,designerClass:l,canAccepts:f,getBelongedComponentInstance:p,getDraggableDesignItemElement:r,getDraggingDisplayText:g,getPropConfig:T,getDragScopeElement:h,onAcceptMovedChildElement:v,onChildElementMovedOut:V,addNewChildComponentSchema:B,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||t.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||t.ref(!1),onRemoveComponent:E,getCustomButtons:w,onPropertyChanged:S},i}class Re{constructor(n,o){N(this,"componentId");N(this,"viewModelId");N(this,"eventsEditorUtils");N(this,"formSchemaUtils");N(this,"formMetadataConverter");N(this,"designViewModelUtils");N(this,"designViewModelField");N(this,"controlCreatorUtils");N(this,"designerHostService");N(this,"schemaService",null);N(this,"metadataService",null);N(this,"propertyConfig",{type:"object",categories:{}});var a;this.componentId=n,this.designerHostService=o,this.eventsEditorUtils=o.eventsEditorUtils,this.formSchemaUtils=o.formSchemaUtils,this.formMetadataConverter=o.formMetadataConverter,this.viewModelId=((a=this.formSchemaUtils)==null?void 0:a.getViewModelIdByComponentId(n))||"",this.designViewModelUtils=o.designViewModelUtils,this.controlCreatorUtils=o.controlCreatorUtils,this.metadataService=o.metadataService,this.schemaService=o.schemaService}getTableInfo(){var n;return(n=this.schemaService)==null?void 0:n.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(n){var a;const o=n.binding&&n.binding.type==="Form"&&n.binding.field;if(o){if(!this.designViewModelField){const l=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=l.fields.find(i=>i.id===o)}n.updateOn=(a=this.designViewModelField)==null?void 0:a.updateOn}}getBasicPropConfig(n){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",editable:!1,data:[{value:n.type,name:F[n.type].name}]}}}}}getAppearanceConfig(n=null){return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}updateElementByParentContainer(n,o){const a=o&&o.parent&&o.parent.schema;if(!a)return;const l=a.contents.findIndex(c=>c.id===n),i=H.cloneDeep(a.contents[l]);a.contents.splice(l,1),a.contents.splice(l,0,i)}}const U=class U{static getEditorTypesByMDataType(n){const o=U.fieldControlTypeMapping[n];return o||[{key:"",value:""}]}static getAllInputTypes(){const n=[];for(const o in U.fieldControlTypeMapping)U.fieldControlTypeMapping[o].forEach(a=>{n.find(l=>l.key===a.key&&l.value===a.value)||n.push({key:a.key,value:a.value})});return n}static mappingDomPropAndSchemaProp(n){var l;const o=(l=n.editor)==null?void 0:l.type;if(!o)return[];const a=[];switch(a.push({domField:"editor.required",schemaField:"require"}),a.push({domField:"editor.readonly",schemaField:"readonly"}),o){case F["data-grid-column"].type:case F["tree-grid-column"].type:{a.push({domField:"title",schemaField:"name"});break}default:a.push({domField:"label",schemaField:"name"})}return(o===F["input-group"].type||o===F.textarea.type||o===F["number-spinner"].type)&&a.push({domField:"editor.maxLength",schemaField:"type.length"}),o===F["number-spinner"].type&&a.push({domField:"editor.precision",schemaField:"type.precision"}),(o===F["combo-list"].type||o===F["radio-group"].type)&&a.push({domField:"editor.data",schemaField:"type.enumValues"}),o===F["date-picker"].type&&(a.push({domField:"editor.displayFormat",schemaField:"editor.format"}),a.push({domField:"editor.fieldType",schemaField:"type.name"})),o===F["number-spinner"].type&&(a.push({domField:"editor.max",schemaField:"editor.maxValue"}),a.push({domField:"editor.min",schemaField:"editor.minValue"})),o===F.lookup.type&&(a.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),a.push({domField:"editor.valueField",schemaField:"editor.valueField"}),a.push({domField:"editor.textField",schemaField:"editor.textField"}),a.push({domField:"editor.displayType",schemaField:"editor.displayType"}),a.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),a.push({domField:"editor.helpId",schemaField:"editor.helpId"})),a.push({domField:"path",schemaField:"bindingPath"}),a.push({domField:"binding.path",schemaField:"bindingField"}),a.push({domField:"binding.fullPath",schemaField:"path"}),(o===F["data-grid-column"].type||o===F["tree-grid-column"].type)&&a.push({domField:"field",schemaField:"bindingPath"}),a}};N(U,"fieldControlTypeMapping",{String:[{key:F["input-group"].type,value:F["input-group"].name},{key:F.lookup.type,value:F.lookup.name},{key:F["date-picker"].type,value:F["date-picker"].name},{key:F["check-group"].type,value:F["check-group"].name},{key:F["radio-group"].type,value:F["radio-group"].name},{key:F["combo-list"].type,value:F["combo-list"].name},{key:F.textarea.type,value:F.textarea.name}],Text:[{key:F.textarea.type,value:F.textarea.name},{key:F.lookup.type,value:F.lookup.name}],Decimal:[{key:F["number-spinner"].type,value:F["number-spinner"].name}],Integer:[{key:F["number-spinner"].type,value:F["number-spinner"].name}],Number:[{key:F["number-spinner"].type,value:F["number-spinner"].name}],BigNumber:[{key:F["number-spinner"].type,value:F["number-spinner"].name}],Date:[{key:F["date-picker"].type,value:F["date-picker"].name}],DateTime:[{key:F["date-picker"].type,value:F["date-picker"].name}],Boolean:[{key:F.switch.type,value:F.switch.name},{key:F["check-box"].type,value:F["check-box"].name}],Enum:[{key:F["combo-list"].type,value:F["combo-list"].name},{key:F["radio-group"].type,value:F["radio-group"].name}],Object:[{key:F.lookup.type,value:F.lookup.name},{key:F["combo-list"].type,value:F["combo-list"].name},{key:F["radio-group"].type,value:F["radio-group"].name}]});let J=U;const qe=t.ref(0);class We{constructor(){N(this,"label","");N(this,"id","");N(this,"columnInSM",12);N(this,"columnInMD",6);N(this,"columnInLG",3);N(this,"columnInEL",2);N(this,"displayWidthInSM",1);N(this,"displayWidthInMD",1);N(this,"displayWidthInLG",1);N(this,"displayWidthInEL",1);N(this,"displayColumnCountAtBreakPoint","md");N(this,"tagRow",0);N(this,"showTopBorder",0);N(this,"group",1);N(this,"isSupportedClass",!0);N(this,"fieldSetId","")}}function He(e){let n,o;const a=new Map;let l=[];function i(p,r){const g=p.split(" ").filter(T=>T.startsWith("col-"));if(g.length===0){r.isSupportedClass=!1;return}let h=g.find(T=>/^col-([1-9]|10|11|12)$/.test(T)),v=g.find(T=>/^col-md-([1-9]|10|11|12)$/.test(T)),B=g.find(T=>/^col-xl-([1-9]|10|11|12)$/.test(T)),V=g.find(T=>/^col-el-([1-9]|10|11|12)$/.test(T));h=h||"col-12",r.columnInSM=parseInt(h.replace("col-",""),10),r.displayWidthInSM=r.columnInSM/12,r.displayWidthInSM!==1&&(r.isSupportedClass=!1),v=v||"col-md-"+r.columnInSM,r.columnInMD=parseInt(v.replace("col-md-",""),10),r.displayWidthInMD=r.columnInMD/6,[1,2].includes(r.displayWidthInMD)||(r.isSupportedClass=!1),B=B||"col-xl-"+r.columnInMD,r.columnInLG=parseInt(B.replace("col-xl-",""),10),r.displayWidthInLG=r.columnInLG/3,[1,2,3,4].includes(r.displayWidthInLG)||(r.isSupportedClass=!1),V=V||"col-el-"+r.columnInLG,r.columnInEL=parseInt(V.replace("col-el-",""),10),r.displayWidthInEL=r.columnInEL/2,[1,2,3,4,5,6].includes(r.displayWidthInEL)||(r.isSupportedClass=!1)}function c(p,r,f,g=!1){let h=!1;p.contents.forEach(v=>{if(v.type==="fieldset"){f+=1,c(v,r,f,!0),h=!0;return}h&&(f+=1,h=!1);const B=v.appearance&&v.appearance.class,V=new We;B?i(B,V):V.isSupportedClass=!1,V.label=v.label||v.id,V.id=v.id,V.group=f,g&&(V.fieldSetId=p.id),o===v.id&&(n=f),a.set(v.id,v),r.push(V)})}function u(p){const r=e.getComponentById(p);if(!r||!r.componentType||!r.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const f=e.selectNode(r,g=>g.type===re.DgControl["response-form"].type);return!f||!f.contents||f.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:f}}function d(p,r){r=r||p.id;const{result:f,message:g,formNode:h}=u(r);if(!f)return{result:f,message:g};o=p.id,l=[],a.clear();const v=h.contents[0].type===re.DgControl.fieldset.type?0:1;c(h,l,v);const B=l.find(T=>!T.isSupportedClass);return{defaultState:{defaultGroupNumber:n||1,model:B?"customize":"standard"},importData:l}}function s(p,r){r=r;const{result:f,formNode:g}=u(r);if(!f)return"";const h=[];return p.forEach(v=>{var T;const B=a.get(v.id),V=B.appearance&&B.appearance.class;if(V){const w=V.split(" ").filter(k=>!k.startsWith("col-")),S="col-"+v.columnInSM,P="col-md-"+v.columnInMD,m="col-xl-"+v.columnInLG,C="col-el-"+v.columnInEL,y=[S,P,m,C].concat(w);B.appearance.class=y.join(" ")}if(v.fieldSetId){const E=g.contents.find(S=>S.id===v.fieldSetId),w=h.find(S=>S.id===v.fieldSetId);w?(T=w.contents)==null||T.push(B):(h.push(E),E.contents=[B])}else h.push(B)}),g.contents=h,g.id}return{checkCanFindFormNode:u,checkCanOpenLayoutEditor:d,changeFormControlsByResponseLayoutConfig:s,getResonseFormLayoutConfig:c}}class Ue extends Re{constructor(o,a){super(o,a);N(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=He(this.formSchemaUtils)}getPropertyConfig(o,a){return this.propertyConfig.categories.basic=this.getBasicProperties(o,a),this.propertyConfig.categories.appearance=this.getAppearanceProperties(o,a),this.propertyConfig.categories.editor=this.getEditorProperties(o),this.propertyConfig}getBasicProperties(o,a){var i;const l=this;return this.setDesignViewModelField(o),{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:l.designViewModelField?J.getEditorTypesByMDataType((i=l.designViewModelField.type)==null?void 0:i.name):J.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:o,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0}},setPropertyRelates(c,u){if(c)switch(c&&c.propertyID){case"type":{l.changeControlType(o,c,a);break}case"label":{c.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(o,a){const l=this;return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的内联样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:l.responseLayoutEditorFunction.checkCanOpenLayoutEditor(o,l.componentId)}}},setPropertyRelates(i,c){if(i)switch(i&&i.propertyID){case"responseLayout":l.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(i.propertyValue,l.componentId||o.id),l.updateUnifiedLayoutAfterResponseLayoutChanged(l.componentId),l.updateElementByParentContainer(o.id,a),delete o.responseLayout;break;case"class":l.updateUnifiedLayoutAfterControlChanged(i.propertyValue,o.id,this.componentId),l.updateElementByParentContainer(o.id,a);break}}}}getEditorProperties(o){return this.getComponentConfig(o)}changeControlType(o,a,l){var p,r,f,g;const i=a.propertyValue,c=l&&l.parent&&l.parent.schema;if(!c)return;const u=c.contents.findIndex(h=>h.id===o.id),d=c.contents[u];let s;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:i},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),s=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,i)),s||(s=this.controlCreatorUtils.createFormGroupWithoutField(i)),Object.assign(s,{id:d.id,appearance:d.appearance,size:d.size,label:d.label,binding:d.binding,visible:d.visible}),Object.assign(s.editor,{isTextArea:s.isTextArea&&d.isTextArea,placeholder:(p=d.editor)==null?void 0:p.placeholder,holdPlace:(r=d.editor)==null?void 0:r.holdPlace,readonly:(f=d.editor)==null?void 0:f.readonly,required:(g=d.editor)==null?void 0:g.required}),c.contents.splice(u,1),c.contents.splice(u,0,s),l.schema=Object.assign(d,s),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(h=>h.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(h=>h.classList.remove("dgComponentFocused")),qe.value++}getComponentConfig(o,a={},l={},i){const c=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},a),u=Object.assign({readonly:{description:"",title:"只读",type:"boolean",editor:{enableClear:!0,editable:!0}},disabled:{description:"",title:"禁用",type:"boolean",visible:!1},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}},l);return{...c,properties:{...u},setPropertyRelates:i}}updateUnifiedLayoutAfterControlChanged(o,a,l){const i=o.split(" ");let c=i.find(r=>/^col-([1-9]|10|11|12)$/.test(r)),u=i.find(r=>/^col-md-([1-9]|10|11|12)$/.test(r)),d=i.find(r=>/^col-xl-([1-9]|10|11|12)$/.test(r)),s=i.find(r=>/^col-el-([1-9]|10|11|12)$/.test(r));c=c||"col-12",u=u||"col-md-"+c.replace("col-",""),d=d||"col-xl-"+u.replace("col-md-",""),s=s||"col-el-"+d.replace("col-xl-","");const p={id:a,columnInSM:parseInt(c.replace("col-",""),10),columnInMD:parseInt(u.replace("col-md-",""),10),columnInLG:parseInt(d.replace("col-xl-",""),10),columnInEL:parseInt(s.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(l,p)}updateUnifiedLayoutAfterResponseLayoutChanged(o,a){const{formNode:l}=this.responseLayoutEditorFunction.checkCanFindFormNode(o);if(!l||!l.unifiedLayout)return;const i=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(l,i,1),a){const h=i.find(v=>v.id===a.id);Object.assign(h||{},a)}const c=i.map(h=>h.columnInSM),u=i.map(h=>h.columnInMD),d=i.map(h=>h.columnInLG),s=i.map(h=>h.columnInEL),p=this.checkIsUniqueColumn(c)?c[0]:null,r=this.checkIsUniqueColumn(u)?u[0]:null,f=this.checkIsUniqueColumn(d)?d[0]:null,g=this.checkIsUniqueColumn(s)?s[0]:null;Object.assign(l.unifiedLayout,{uniqueColClassInSM:p,uniqueColClassInMD:r,uniqueColClassInLG:f,uniqueColClassInEL:g})}checkIsUniqueColumn(o){const a=new Set(o);return Array.from(a).length===1}getItemCollectionEditor(o,a,l){return a=a||"value",l=l||"name",{editor:{columns:[{field:a,title:"值",dataType:"string"},{field:l,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:a,nameField:l,requiredFields:[a,l],uniqueFields:[a,l],readonly:this.checkEnumDataReadonly(o)}}}checkEnumDataReadonly(o){return!o.binding||o.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===R.FormSchemaEntityFieldType$Type.EnumType)}}class Ge extends Ue{constructor(n,o){super(n,o)}getEditorProperties(n){const o=this,a=o.getComponentConfig(n,{type:"radio-group"},{disabled:{visible:!1},placeholder:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"horizontal",value:"横向"},{key:"vertical",value:"纵向"}]}},textField:{visible:!1,description:"",title:"显示文本字段",type:"string"},valueField:{visible:!1,description:"",title:"值字段",type:"string"},data:{description:"",title:"数据",type:"array",$converter:"/converter/enum-data.converter",...o.getItemCollectionEditor(n,n.editor.valueField,n.editor.textField),refreshPanelAfterChanged:!0}});return a.setPropertyRelates=function(l){if(l)switch(l.propertyID){case"data":{l.propertyValue.parameters&&(n.editor.valueField=l.propertyValue.parameters.valueField,n.editor.textField=l.propertyValue.parameters.nameField),!o.checkEnumDataReadonly(n)&&n.formatter&&(n.formatter.data=[...l.propertyValue.value]);break}}},a}}function Xe(e,n){const o=e.schema;function a(l,i){return new Ge(l,n).getPropertyConfig(o,i)}return{getPropsConfig:a}}const Ye=t.defineComponent({name:"FRadioGroupDesign",props:_,emits:["changeValue","update:modelValue"],setup(e,n){const o=t.ref(e.modelValue),{enumData:a,onClickRadio:l,getValue:i,getText:c}=ye(e,n,o),u=t.computed(()=>({"farris-checkradio-hor":e.direction==="horizontal"})),d=t.ref(),s=t.inject("designer-host-service"),p=t.inject("design-item-context"),r=Xe(p,s),f=ze(d,p,r);t.onMounted(()=>{d.value.componentInstance=f});const g=t.computed(()=>{if(!a.value||a.value.length===0){const h=[];return[{value:"example1",name:"示例一"},{value:"example2",name:"示例二"}].map(v=>{const B={};B[e.valueField]=v.value,B[e.textField]=v.name,h.push(B)}),h}return a.value});return n.expose(f.value),()=>t.createVNode("div",{class:["farris-input-wrap",u.value],ref:d},[g.value.map((h,v)=>{const B="radio_"+e.name+v;return t.createVNode("div",{class:"custom-control custom-radio"},[t.createVNode("input",{type:"radio",class:"custom-control-input",name:e.name,id:B,value:i(h),checked:i(h)===o.value,disabled:e.disabled,tabindex:e.tabIndex,onClick:V=>l(h,V)},null),t.createVNode("label",{class:"custom-control-label",for:B},[c(h)])])})])}}),_e=new Map([["appearance",se.resolveAppearance]]);function Je(e,n,o){return n}const Qe={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"button-edit"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},forcePlaceholder:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},autoComplete:{description:"",type:"boolean",default:!1},buttonContent:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},inputType:{description:"",type:"string",enum:["text","tag"],default:"text"},multiSelect:{description:"",type:"boolean",default:!1},popup:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},Ke={title:"buttonEdit",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}}}}},he={id:String,buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:Number,tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"}};me(he,Qe,_e,Je,Ke);const Ze={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},et=t.defineComponent({name:"FOverlay",props:Ze,emits:["click"],setup(e,n){const o=t.ref(e.popupContentPosition),a=t.ref(e.host),l=t.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function i(u){n.emit("click"),u.preventDefault(),u.stopPropagation()}t.computed(()=>{const u=a.value;if(u){const d=u.getBoundingClientRect(),{left:s,top:p,height:r}=d;return{left:s,top:p+r}}return o.value});const c=t.computed(()=>({}));return()=>t.createVNode(t.Teleport,{to:"body"},{default:()=>{var u,d;return[t.createVNode("div",{class:"overlay-container",onClick:s=>i(s),style:l.value},[t.createVNode("div",{style:c.value},[(d=(u=n.slots).default)==null?void 0:d.call(u)])])]}})}});function tt(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function nt(e){const n=document.createElement("div");n.style.display="contents";let o;const a=e.onClickCallback||(()=>{}),l=()=>{a(),o&&o.unmount()};return o=t.createApp({setup(){t.onUnmounted(()=>{document.body.removeChild(n)});const i=tt(e);return()=>t.createVNode(et,{"popup-content-position":e.popupPosition,host:e.host,onClick:l,backgroundColor:e.backgroundColor},{default:()=>[i&&i()]})}}),document.body.appendChild(n),o.mount(n),o}class ot{static show(n){return nt(n)}}const at={class:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},resizeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1},dialogType:{type:String,default:""},src:{type:String,default:""}};class j{constructor(n,o){this.x=n,this.y=o}static getTransformInfo(n){const a=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(a.length>=6){const l=parseInt(a[4],10),i=parseInt(a[5],10);return{x:l,y:i}}return{x:0,y:0}}static fromEvent(n,o=null){if(this.isMouseEvent(n))return new j(n.clientX,n.clientY);if(o===null||n.changedTouches.length===1)return new j(n.changedTouches[0].clientX,n.changedTouches[0].clientY);for(let a=0;a<n.changedTouches.length;a++)if(n.changedTouches[a].target===o)return new j(n.changedTouches[a].clientX,n.changedTouches[a].clientY)}static isMouseEvent(n){return Object.prototype.toString.apply(n).indexOf("MouseEvent")===8}static isIPosition(n){return!!n&&"x"in n&&"y"in n}static getCurrent(n){const o=new j(0,0);if(window){const a=window.getComputedStyle(n);if(a){const l=parseInt(a.getPropertyValue("left"),10),i=parseInt(a.getPropertyValue("top"),10);o.x=isNaN(l)?0:l,o.y=isNaN(i)?0:i}return o}return null}static copy(n){return new j(0,0).set(n)}get value(){return{x:this.x,y:this.y}}add(n){return this.x+=n.x,this.y+=n.y,this}subtract(n){return this.x-=n.x,this.y-=n.y,this}multiply(n){this.x*=n,this.y*=n}divide(n){this.x/=n,this.y/=n}reset(){return this.x=0,this.y=0,this}set(n){return this.x=n.x,this.y=n.y,this}}class W{constructor(n,o){this.width=n,this.height=o}static getCurrent(n){const o=new W(0,0);if(window){const a=window.getComputedStyle(n);return a&&(o.width=parseInt(a.getPropertyValue("width"),10),o.height=parseInt(a.getPropertyValue("height"),10)),o}return null}static copy(n){return new W(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function lt(e,n){const o=t.ref(),a=t.ref(),l=t.ref(),i=t.ref(),c=t.ref(),u=t.ref(),d=t.ref(),s=t.ref(),p=t.ref(),r=t.ref(),f=t.ref(),g=t.ref(),h=t.ref(e.draggable),v=t.ref(!1);function B(){const M=a.value||document.body,x=window.getComputedStyle(M);if(!x||!o.value)return;const O=j.getTransformInfo(o.value),I={};d.value&&(I.deltaL=o.value.offsetLeft-d.value.x,I.deltaT=o.value.offsetTop-d.value.y);const A=x.getPropertyValue("position");I.width=M.clientWidth,I.height=M.clientHeight,I.pr=parseInt(x.getPropertyValue("padding-right"),10),I.pb=parseInt(x.getPropertyValue("padding-bottom"),10),I.position=x.getPropertyValue("position"),A==="static"&&(M.style.position="relative"),I.translateX=O.x,I.translateY=O.y,r.value=I}function V(M){if(o.value){i.value=W.getCurrent(o.value),c.value=j.getCurrent(o.value),u.value=i.value?W.copy(i.value):null,d.value=c.value?j.copy(c.value):null,B();const x=M.target.getAttribute("type")||"";s.value={n:!!x.match(/n/),s:!!x.match(/s/),w:!!x.match(/w/),e:!!x.match(/e/)}}}function T(){var M,x,O,I;if(o.value){const A=o.value;s.value&&((s.value.n||s.value.s)&&((M=u.value)!=null&&M.height)&&(A.style.height=u.value.height+"px"),(s.value.w||s.value.e)&&((x=u.value)!=null&&x.width)&&(A.style.width=u.value.width+"px"),d.value&&((O=d.value)!=null&&O.x&&(A.style.left=d.value.x+"px"),(I=d.value)!=null&&I.y&&(A.style.top=d.value.y+"px")))}}function E(){const M=e.minHeight?e.minHeight:1,x=e.minWidth?e.minWidth:1;u.value&&d.value&&s.value&&i.value&&(u.value.height<M&&(u.value.height=M,s.value.n&&c.value&&(d.value.y=c.value.y+(i.value.height-M))),u.value.width<x&&(u.value.width=x,s.value.w&&c.value&&(d.value.x=c.value.x+(i.value.width-x))),e.maxHeight&&u.value.height>e.maxHeight&&(u.value.height=e.maxHeight,c.value&&s.value.n&&(d.value.y=c.value.y+(i.value.height-e.maxHeight))),e.maxWidth&&u.value.width>e.maxWidth&&(u.value.width=e.maxWidth,s.value.w&&c.value&&(d.value.x=c.value.x+(i.value.width-e.maxWidth))))}function w(){if(a.value){const M=r.value;if(d.value&&u.value&&s.value&&i.value){const x=M.width-M.pr-M.deltaL-M.translateX-d.value.x,O=M.height-M.pb-M.deltaT-M.translateY-d.value.y;s.value.n&&d.value.y+M.translateY<0&&c.value&&(d.value.y=-M.translateY,u.value.height=i.value.height+c.value.y+M.translateY),s.value.w&&d.value.x+M.translateX<0&&c.value&&(d.value.x=-M.translateX,u.value.width=i.value.width+c.value.x+M.translateX),u.value.width>x&&(u.value.width=x),u.value.height>O&&(u.value.height=O)}}}function S(M){if(!l.value||!i.value||!c.value||!s.value)return;M.subtract(l.value);const x=M.x,O=M.y;s.value.n?(d.value.y=c.value.y+O,u.value.height=i.value.height-O):s.value.s&&(u.value.height=i.value.height+O),s.value.e?u.value.width=i.value.width+x:s.value.w&&(u.value.width=i.value.width-x,d.value.x=c.value.x+x),w(),E(),T()}function P(M){if(!p.value)return;const x=j.fromEvent(M);x&&S(x)}function m(){if(o.value){const{width:M,height:x,x:O,y:I}=o.value.getBoundingClientRect(),A=j.getTransformInfo(o.value);return{size:{width:M,height:x},position:{x:O-A.x,y:I-A.y}}}return null}function C(M){if(o.value){const x=m();f.value=x}l.value=void 0,i.value=null,c.value=null,u.value=null,d.value=null,s.value=null,p.value=null,document.removeEventListener("mousemove",P),document.removeEventListener("mouseup",C)}function y(){document.addEventListener("mousemove",P),document.addEventListener("mouseup",C)}function k(M){M instanceof MouseEvent&&M.button===2||h.value&&(document.body.click(),M.stopPropagation(),M.preventDefault(),l.value=j.fromEvent(M),p.value=M.target,V(M),y())}function $(M){return o.value=M,t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:x=>k(x)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:x=>k(x)},null)])}function z(M=!0){document.body.click();const x=a.value||document.body,O=W.getCurrent(x),I=o.value;M&&I&&(g.value=m(),g.value.transform=I.style.transform),O&&I&&(u.value=O,I.style.height=u.value.height-14+"px",I.style.width=u.value.width-14+"px",I.style.left="7px",I.style.top="7px",I.style.transform="",f.value={size:u.value,position:{x:0,y:0}},h.value=!1,v.value=!0)}function X(){var M,x;if(document.body.click(),g.value){const O={width:g.value.size.width||0,height:g.value.size.height||0},I={x:(window.innerWidth-O.width)/2,y:(window.innerHeight-O.height)/2};(M=u.value)==null||M.set(O),(x=d.value)==null||x.set(I);const A=o.value;A.style.height=O.height+"px",A.style.width=O.width+"px",A.style.left=`${I.x}px`,A.style.top=`${I.y}px`,A.style.transform="",f.value={size:O,position:I},h.value=e.draggable,v.value=!1}}function ne(){if(o.value){const M=W.getCurrent(o.value);if(M){const{width:x,height:O}=M;o.value.style.left=`${(window.innerWidth-x)/2}px`,o.value.style.top=`${(window.innerHeight-O)/2}px`,o.value.style.transform=""}}}function oe(){const M=()=>{v.value?z(!1):ne(),document.body.click()};return window.addEventListener("resize",M),()=>{window.removeEventListener("resize",M)}}const Q=oe();return{renderResizeBar:$,boundingElement:a,resizedEventParam:f,maximize:z,restore:X,allowDrag:h,isMaximized:v,unWindowResizeHandle:Q}}function it(e,n,o){const a=t.ref(),l=t.ref(e.draggable),i=t.ref(e.lockAxis),c=t.ref(),u=t.ref(),d=t.ref(!1),s=t.ref(new j(0,0)),p=t.ref(new j(0,0)),r=t.ref(new j(0,0)),f=t.ref(new j(0,0));t.watch(()=>o.value,m=>{c.value.style.cursor=m?"move":"default"});function g(m,C){if(C.tagName==="BUTTON")return!1;if(C===m)return!0;for(const y in C.children)if(Object.prototype.hasOwnProperty.call(C.children,y)&&g(m,C.children[y]))return!0;return!1}function h(){var k,$;let m=r.value.x+p.value.x,C=r.value.y+p.value.y;i.value==="x"?(m=((k=s.value)==null?void 0:k.x)||0,r.value.x=0):i.value==="y"&&(C=(($=s.value)==null?void 0:$.y)||0,r.value.y=0);const y=`translate3d(${Math.round(m)}px, ${Math.round(C)}px, 0px)`;a.value&&(a.value.style.transform=y),f.value.x=m,f.value.y=C}function v(){if(!u.value||!a.value)return null;const m=u.value.getBoundingClientRect(),C=a.value.getBoundingClientRect(),y={top:m.top<C.top,right:m.right>C.right,bottom:m.bottom>C.bottom,left:m.left<C.left};return y.top||(r.value.y-=C.top-m.top),y.bottom||(r.value.y-=C.bottom-m.bottom),y.right||(r.value.x-=C.right-m.right),y.left||(r.value.x-=C.left-m.left),h(),y}function B(m){m&&(s.value&&m.subtract(s.value),r.value.set(m),h(),v())}function V(m){d.value&&l.value&&(m.stopPropagation(),m.preventDefault(),B(j.fromEvent(m,c.value)))}function T(){var m;d.value&&(d.value=!1,p.value.add(r.value),r.value.reset(),(m=a.value)==null||m.classList.remove("ng-dragging"),document.removeEventListener("mousemove",V),document.removeEventListener("mouseup",T))}function E(){!d.value&&c.value&&(d.value=!0,c.value.classList.add("ng-dragging"),document.addEventListener("mousemove",V),document.addEventListener("mouseup",T))}function w(){if(a.value){const m=j.getTransformInfo(a.value);p.value.set(m);return}p.value.reset()}function S(m){if(!o.value||m instanceof MouseEvent&&m.button===2)return;const C=m.target||m.srcElement;c.value!==void 0&&C&&!g(C,c.value)||l.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),s.value=j.fromEvent(m,a.value),w(),E())}function P(m,C,y){if(l.value&&C){if(m)c.value=m;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)c.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const k=C.querySelector(e.dragHandle);k&&(c.value=k)}}a.value=C,u.value=y,c.value?(c.value.classList.add("ng-draggable"),c.value.addEventListener("mousedown",S)):l.value=!1}}return{registerDraggle:P,resetTranslate:w}}function ge(e,n){if(e){const o=a=>{a.key.toLowerCase()===e.toLowerCase()&&n({event:a,key:e})};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}}}function rt(e,n){const o=t.ref(e.enableEsc);let a=null;return o.value?(a=ge("Escape",l=>{n.emit("esc",{event:l.event,type:"esc"})}),{remove:a}):null}function st(e,n){const o=t.ref(e.enableEnter);let a=null;return o.value?(a=ge("Enter",l=>{n.emit("enter",{event:l.event,type:"enter"})}),{remove:a}):null}const G=t.defineComponent({name:"FModal",props:at,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter"],setup(e,n){const o=t.ref(e.width||300),a=t.ref(e.height||200),l=t.ref(e.modelValue),i=t.ref(""),c=t.ref(e.class),u=t.ref(e.fitContent),d=t.ref(e.showHeader),s=t.ref(""),p=t.ref(e.showCloseButton),r=t.ref(e.showMaxButton),f=t.ref(!1),g=t.ref(e.dialogType),h=t.ref(e.src),v=t.ref(""),B=t.ref(e.showButtons),V=t.ref(e.title),T=t.ref(e.resizeable),E=t.ref(e.containment||null),w=t.ref();function S(b,D){l.value=!1,n.emit("update:modelValue",!1),D!=null&&n.emit(D?"accept":"cancel"),n.emit("closed",b)}const P=[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:b=>{S(b,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:b=>{S(b,!0)}}],m=t.ref(e.buttons&&e.buttons.length?e.buttons:P),C=t.computed(()=>!!s.value),y=t.computed(()=>!!B.value&&!!m.value),k=t.ref(),$=t.ref(),z=t.ref(!1),{renderResizeBar:X,maximize:ne,restore:oe,boundingElement:Q,resizedEventParam:M,allowDrag:x,unWindowResizeHandle:O}=lt(e),{registerDraggle:I}=it(e,n,x);function A(){const b=document.querySelectorAll(".farris-modal").length;(!b||b-1<=0)&&document.body.classList.remove("modal-open"),w.value&&w.value.classList.remove("show")}t.watch(()=>e.title,(b,D)=>{b!==D&&(V.value=b)}),t.watch(()=>e.modelValue,(b,D)=>{b!==D&&(l.value=b,b||A())}),t.watch(()=>e.showHeader,(b,D)=>{b!==D&&(d.value=b)}),t.watch(()=>e.showButtons,(b,D)=>{b!==D&&(B.value=b)}),t.watch(()=>M.value,(b,D)=>{const Y=b||{},K=D||{};JSON.stringify(Y)!==JSON.stringify(K)&&n.emit("resize",{newSize:b,oldSize:D})});const ae=t.computed(()=>(l.value&&document.body.classList.add("modal-open"),l.value)),kt=t.computed(()=>{const b={modal:!0,"farris-modal":!0,fade:!0};return b["f-modal-fitContent"]=!!u.value,b.show=!!ae.value,b}),Bt=t.computed(()=>{var Y;const b={"modal-dialog":!0},D=(Y=c.value)==null?void 0:Y.split(" ");return D==null||D.reduce((K,zt)=>(K[zt]=!0,K),b),b}),Vt=t.computed(()=>({position:"absolute",top:`${(window.innerHeight-a.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:u.value?"auto":`${a.value}px`})),Et=t.computed(()=>({"modal-content":!0,"modal-content-has-header":d.value})),Tt=t.computed(()=>{const b={display:d.value?"":"none"};return b["pointer-events"]=x.value?"auto":"none",b}),St=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:z.value})),Nt=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":g.value==="iframe"}));function It(){return{}}const Pt=t.computed(()=>{const b={textAlgin:v.value},D=It();return Object.assign(b,D)});function Me(b){if(b.stopPropagation(),z.value){z.value=!1,oe();return}ne(),z.value=!0}async function Ot(b,D){b.handle&&await b.handle(D,b)&&n.emit("closed",D)}function Dt(b){b.width&&(o.value=b.width),b.height&&(a.value=b.height),b.buttons&&(m.value=b.buttons),b.title&&(V.value=b.title)}let le=null,ie=null;t.onMounted(()=>{$.value&&!E.value&&(E.value=$.value.parentElement,Q.value=E.value,I(k.value,$.value,Q.value)),ae.value&&document.body.classList.add("modal-open"),le=rt(e,n),ie=st(e,n)}),t.onUnmounted(()=>{O&&O(),le&&le.remove(),ie&&ie.remove()}),n.expose({modalElementRef:$,updateModalOptions:Dt,close:S,maxDialog:Me});function Lt(){return t.createVNode("ul",null,[f.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),r.value&&t.createVNode("li",{onClick:Me,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:St.value},null)]),p.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:b=>S(b,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}function $t(){return t.createVNode("div",{class:"modal-footer",style:Pt.value},[m.value&&m.value.map(b=>t.createVNode("button",{name:b.name,type:"button",class:b.class+(b.iconClass?" btn-icontext":""),onClick:D=>{Ot(b,D)}},[!!b.iconClass&&t.createVNode("i",{class:b.iconClass},null),b.text]))])}function jt(){return t.createVNode("div",{ref:k,class:"modal-header",style:Tt.value},[t.createVNode("div",{class:"modal-title"},[C.value&&t.createVNode("span",{class:s.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[V.value])]),t.createVNode("div",{class:"actions"},[Lt()])])}function At(b){b.stopPropagation()}return()=>t.createVNode(t.Teleport,{to:"body"},{default:()=>[ae.value&&t.createVNode(t.Transition,{name:"fade",appear:!0},{default:()=>{var b,D;return[t.createVNode("div",{class:kt.value,style:"display: block",ref:w,onClick:At},[t.createVNode("div",{id:i.value,class:Bt.value,style:Vt.value,ref:$},[t.createVNode("div",{class:Et.value},[d.value&&jt(),t.createVNode("div",{class:Nt.value},[(D=(b=n.slots).default)==null?void 0:D.call(b),g.value==="iframe"&&t.createVNode("iframe",{title:i.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:h.value},null)]),y.value&&$t()]),!u.value&&T.value&&$.value&&!z.value&&X($.value)])])]}})]})}});function ve(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function ct(e){const n=document.createElement("div");n.style.display="contents";const o=t.createApp({setup(a,l){t.onUnmounted(()=>{document.body.removeChild(n)});const i=t.ref(),c=t.ref(e.class||""),u=t.ref(!!e.showButtons),d=t.ref(!!e.showHeader),s=t.ref(e.showCloseButton==null?!0:e.showCloseButton),p=t.ref(!0),r=t.ref(e.title||""),f=e.acceptCallback||(()=>{}),g=e.rejectCallback||(()=>{}),h=e.closedCallback||(T=>{}),v=e.resizeHandle||(T=>{}),B=ve(e),V=T=>{p.value=!1,o.unmount(),h(T)};return t.onMounted(()=>{}),l.expose({modalRef:i}),()=>t.createVNode(G,{ref:i,class:c.value,modelValue:p.value,"onUpdate:modelValue":T=>p.value=T,title:r.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":d.value,"show-buttons":u.value,"show-close-button":s.value,"show-max-button":!1,onAccept:f,onCancel:g,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:V,onResize:v},{default:()=>[B&&B(o)]})}});return document.body.appendChild(n),o.mount(n),o}class ut{constructor(n){N(this,"appContext",null);N(this,"modalRef",t.ref());N(this,"activeModalIndex",t.ref(0));N(this,"modalRefs",{});N(this,"isUseEscCloseModal",t.ref(!1));N(this,"activeModalInstance",t.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=n,this.appContext=n?n._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(n,o){const{width:a,height:l}={width:window.innerWidth,height:window.innerHeight};return a<n&&(n=a),l<o&&(o=l),{width:n,height:o}}static show(n){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return ct(o)}open(n){const o=document.createDocumentFragment();n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const a=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},n)),l=t.ref(!0),i=a.value.acceptCallback||(()=>{}),c=a.value.rejectCallback||(()=>{}),u=a.value.closedCallback||((w,S)=>{}),d=a.value.resizeHandle||(w=>{});let s;const p=ve(a.value),r=w=>{var P;l.value=!1;const S=(P=w==null?void 0:w.target)==null?void 0:P.classList.contains("modal_close");u(w,this.isUseEscCloseModal.value?"esc":S?"icon":"button")},f=w=>{r(w),s&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,o),s=null,this.modalRef.value=null,this.modalRefs){const S=Object.keys(this.modalRefs).map(P=>Number(P));S.length>0?this.activeModalIndex.value=Math.max(...S):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},g=w=>{var S;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((S=this.activeModalInstance.value)==null||S.close(w==null?void 0:w.event))},{width:h,height:v}=a.value,B=this.adaptToWindow(h||500,v||320);Object.assign(a.value,B);const V=()=>t.createVNode(G,t.mergeProps({ref:this.modalRef,modelValue:l.value,"onUpdate:modelValue":w=>l.value=w},a.value,{onAccept:i,onCancel:c,onClosed:f,onResize:d,onEsc:g}),{default:()=>[p&&p(this.app)]});return s=(w=>{const S=t.h(V,w);return S.appContext=this.appContext,t.render(S,o),S})({...a.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:w=>{a.value={...a.value,...w},s&&t.render(t.cloneVNode(s,{...a}),o)},destroy:f,modalRef:this.activeModalInstance}}}const be=Symbol("FModalService");G.install=e=>{e.component(G.name,G);const n=new ut(e);e.provide(be,n),e.provide("FModalService",n)};function Ce(e,n){function o(){const a=e.beforeOpen||e.beforeClickButton||null;let l=Promise.resolve(!0);if(a){const i=a(n.value);if(typeof i>"u")return l;typeof i=="boolean"?l=Promise.resolve(i):l=i}return l}return{judgeCanOpen:o}}function dt(e,n,o,a,l){const i=t.ref(e.buttonBehavior),c=t.ref(e.popupOnInput),u=t.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:d}=Ce(e,l),s=t.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),p=t.inject(be,null),r=t.ref();async function f(v){if(await d()&&s.value){const B=!!n.slots.default;if(i.value==="Modal"){const V=e.modalOptions,T=p==null?void 0:p.open({...V,render:()=>n.slots.default&&n.slots.default()});r.value=T==null?void 0:T.modalRef}i.value==="Overlay"&&ot.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),B&&i.value==="Popup"&&a.togglePopup(!0),B&&c.value&&a.hidePopup(),n.emit("clickButton",{origin:v,value:e.modelValue})}}function g(v){n.emit("mouseEnterIcon",v)}function h(v){n.emit("mouseLeaveIcon",v)}return{buttonGroupClass:u,onClickButton:f,onMouseEnterButton:g,onMouseLeaveButton:h,modalRef:r}}function ft(e,n,o,a,l,i){const c=t.ref(!1),u=t.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:d}=i;function s(g){c.value=g}t.watch(l,()=>{s(!!l.value)});function p(g){const h=!e.readonly&&!e.disable&&e.editable,v=!e.editable;g.stopPropagation(),(h||v)&&(d(""),s(!c.value),n.emit("clear"))}function r(g){if(u.value){if(!o.value){s(!1);return}!e.disable&&!e.readonly&&s(!0)}}function f(g){u.value&&s(!1)}return{enableClearButton:u,showClearButton:c,onClearValue:p,onMouseEnterTextBox:r,onMouseLeaveTextBox:f}}function pt(e,n,o,a,l){const i=t.computed(()=>e.popupOnInput),c=t.computed(()=>e.popupOnFocus),{shouldPopupContent:u}=l,d=t.computed(()=>e.enableTitle?o.value:""),s=t.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),p=t.computed(()=>e.readonly||!e.editable),r=t.ref(!1),f=t.computed(()=>!e.disable&&r.value),g=t.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),h=t.computed(()=>({"input-group":!0,"f-state-disabled":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly&&!e.disable,"f-state-focus":f.value}));function v(y,k=!0){o.value=y,k&&(n.emit("change",y),n.emit("update:modelValue",y))}function B(y){u.value=!1,v(y,!0)}t.watch(()=>e.modelValue,y=>{o.value=y});function V(y){r.value=!1,n.emit("blur",y),y.stopPropagation()}function T(y){n.emit("click",y),!e.disable&&!e.readonly&&e.popupOnClick&&l.togglePopup()}function E(y){e.disable||(r.value=!0,p.value||(n.emit("focus",y),c.value&&!u.value&&l.popup()))}function w(y){n.emit("input",y.target.value);const k=y.target.value;a.value=k,o.value!==k&&v(k,e.updateOn==="change"),i.value&&!u.value&&l.popup()}function S(y){y.target.tagName!=="INPUT"&&y.preventDefault(),y.stopPropagation()}function P(y){n.emit("keydown",y)}function m(y){y.key==="Enter"&&(i.value||c.value)&&l.hidePopup(),n.emit("keyup",y)}function C(y){const k=y.target.value;y.stopPropagation(),v(k)}return{hasFocusedTextBox:f,isTextBoxReadonly:p,textBoxClass:g,textBoxPlaceholder:s,textBoxTitle:d,inputGroupClass:h,changeTextBoxValue:v,commitValue:B,onBlurTextBox:V,onClickTextBox:T,onFocusTextBox:E,onInput:w,onKeyDownTextBox:P,onKeyUpTextBox:m,onMouseDownTextBox:S,onTextBoxValueChange:C}}function mt(e,n,o,a){const l=t.ref(),i=t.ref(!1),{judgeCanOpen:c}=Ce(e,a);function u(){const r=l.value;r&&r.show(o.value)}async function d(r=!1){if(!!n.slots.default){if(!r&&!i.value&&!await c())return;i.value=!i.value,await t.nextTick(),u()}}async function s(r=!1){if(!!n.slots.default){if(!r&&!await c())return;i.value=!0,await t.nextTick(),u()}}function p(){i.value=!1}return{hidePopup:p,popup:s,shouldPopupContent:i,togglePopup:d,popoverRef:l}}function yt(e,n,o){const a=t.ref(),{isTextBoxReadonly:l,textBoxClass:i,textBoxPlaceholder:c,textBoxTitle:u,onBlurTextBox:d,onClickTextBox:s,onFocusTextBox:p,onInput:r,onKeyDownTextBox:f,onKeyUpTextBox:g,onMouseDownTextBox:h,onTextBoxValueChange:v}=o;return t.onMounted(()=>{var B,V;e.selectOnCreated&&((B=a.value)==null||B.select()),e.focusOnCreated&&((V=a.value)==null||V.focus())}),()=>t.createVNode("input",{ref:a,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:i.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:c.value,readonly:l.value,tabindex:e.tabIndex,title:u.value,type:e.inputType,value:n.value,onBlur:d,onChange:v,onClick:s,onFocus:p,onInput:r,onKeydown:f,onKeyup:g,onMousedown:h},null)}function ht(e,n,o){const a=t.ref(e.separator),{changeTextBoxValue:l}=o,i=t.computed(()=>n.value?n.value.split(a.value).map(u=>({name:u,selectable:!0})):[]);function c(u){l(u.map(d=>d.name).join(a.value),!0)}return()=>t.createVNode(Fe,{id:`${e.id}-tag-editor`,class:"form-control",data:i.value,showClose:!0,showInput:!0,onChange:c},null)}function gt(e,n,o,a){const{buttonGroupClass:l,onClickButton:i,onMouseEnterButton:c,onMouseLeaveButton:u}=o,{enableClearButton:d,showClearButton:s,onClearValue:p}=a,r=t.ref();return{renderButtonGroup:()=>t.createVNode("div",{id:`${e.id}-button-group`,class:l.value},[d.value&&t.withDirectives(t.createVNode("span",{class:"input-group-text input-group-clear",onClick:p},[t.createVNode("i",{class:"f-icon modal_close"},null)]),[[t.vShow,s.value]]),n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",onClick:i,onMouseenter:c,onMouseleave:u},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:r,onClick:i,onMouseenter:c,onMouseleave:u},null):null]),buttonHandleElement:r}}function vt(e,n,o){const a=t.ref(e.popupMinWidth),{hidePopup:l,popoverRef:i}=o;return()=>t.createVNode(xe,{id:`${e.id}-popover`,ref:i,visible:!0,placement:e.placement,host:e.popupHost,"keep-width-with-reference":e.keepWidthWithReference,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:a.value,offsetX:e.popupOffsetX,onHidden:l},{default:()=>{var c,u;return[(u=(c=n.slots).default)==null?void 0:u.call(c)]}})}const bt=t.defineComponent({name:"FButtonEdit",props:he,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,n){const o=t.ref(),a=t.ref(e.customClass),l=t.ref(e.modelValue),i=mt(e,n,o,l),{shouldPopupContent:c,hidePopup:u,togglePopup:d}=i,s=dt(e,n,o,i,l),p=t.ref(""),r=pt(e,n,l,p,i),{hasFocusedTextBox:f,commitValue:g,inputGroupClass:h}=r,v=ft(e,n,l,f,p,r),{onMouseEnterTextBox:B,onMouseLeaveTextBox:V}=v,T=t.computed(()=>{const y={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return a.value&&a.value.split(" ").reduce((k,$)=>(k[$]=!0,k),y),y});function E(){return e.multiSelect&&e.inputType==="tag"?ht(e,l,r):yt(e,l,r)}let w=E();t.watch([()=>e.multiSelect,()=>e.inputType],()=>{w=E()});const{renderButtonGroup:S,buttonHandleElement:P}=gt(e,n,s,v),m=vt(e,n,i),C={commitValue:g,elementRef:o,hidePopup:u,shouldPopupContent:c,togglePopup:d,openDialog:()=>{P.value&&e.buttonBehavior==="Modal"&&P.value.click()},getModal:()=>{var y;return e.buttonBehavior==="Modal"?(y=s.modalRef.value)==null?void 0:y.value:null}};return t.onMounted(()=>{o.value.componentInstance=C,window.onresize=()=>{document.body.click()}}),n.expose(C),()=>t.createVNode(t.Fragment,null,[t.createVNode("div",t.mergeProps(n.attrs,{ref:o,class:T.value,id:e.id}),[t.createVNode("div",{id:`${e.id}-input-group`,class:h.value,onMouseenter:B,onMouseleave:V},[w(),S()])]),c.value&&m()])}}),Ct={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/radio-group.schema.json",title:"item-collection-editor",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a item-collection-editor",type:"string"},type:{description:"The type string of item-collection-editor component",type:"string",default:"item-collection-editor"},requiredFields:{description:"",type:"array",default:[]},uniqueFields:{description:"",type:"array",default:[]},dynamicMappingKeys:{type:"boolean",default:!1},columns:{description:"",type:"array",default:[]},modalTitle:{description:"",type:"string",default:""},canEmpty:{description:"",type:"boolean",default:!0},valueField:{description:"",type:"string",default:"value"},nameField:{description:"",type:"string",default:"name"},idField:{description:"",type:"string",default:"value"},readonly:{description:"",type:"boolean",default:!1},modelValue:{description:"",type:"string",default:""}},required:["id","type"],ignore:[]},we={requiredFields:{type:Array,default:[]},uniqueFields:{type:Array,default:[]},dynamicMappingKeys:{type:Boolean,default:!1},columns:{type:Array,default:[]},modalTitle:{type:String,default:"项编辑器"},canEmpty:{type:Boolean,default:!0},valueField:{type:String,default:"value"},nameField:{type:String,default:"name"},idField:{type:String,default:"value"},readonly:{type:Boolean,default:!1},modelValue:{type:Array,default:[]}},wt=se.createPropsResolver(we,Ct,je,Ee),Mt={requiredFields:{type:Array,default:[]},uniqueFields:{type:Array,default:[]},dynamicMappingKeys:{type:Boolean,default:!1},columns:{type:Array,default:[]},canEmpty:{type:Boolean,default:!0},valueField:{type:String,default:"value"},nameField:{type:String,default:"value"},datas:{type:Array,default:[]},readonly:{type:Boolean,default:!1}},Ft=t.defineComponent({name:"FItemCollectionEditorInner",props:Mt,emits:["change"],setup(e,n){const{guid:o}=R.useGuid(),a=new Be.FNotifyService,l=t.ref(e.valueField),i=t.ref(e.nameField),c={editMode:"cell"},u={fitColumns:!0},d=t.ref(),s=e.columns;let p=e.datas;function r(){const E={};return s.forEach(w=>{w.editor&&(w.editor.type==="checkbox"||w.editor.type==="switch")?E[w.field]=!1:E[w.field]=""}),E}function f(){if(e.dynamicMappingKeys){const E="请先填写XXX",w=l.value.trim()?i.value.trim()?"":"枚举名称字段":"枚举值字段";return a.warning({position:"top-center",message:E.replace("XXX",w)}),!1}return!0}function g(E){const w="不允许重复。";if(!f())return!1;if(!E||E.length===0)return e.canEmpty?!0:(a.warning({position:"top-center",message:"请添加值"}),!1);const S=e.requiredFields||[],P="不允许为空";for(const C of E)for(const y of Object.keys(C)){const k=s.find($=>$.field===y);if(k&&k.editor&&(k.editor.type==="checkbox"||k.editor.type==="switch")){if(S.includes(y)&&(C[y]===null||C[y]===void 0))return a.warning({position:"top-center",message:k.title+P}),!1}else if(S.includes(y)&&(C[y]===void 0||C[y]===""||C[y]===null))return a.warning({position:"top-center",message:k.title+P}),!1}const m=e.uniqueFields||[];for(const C of m){const y=E.map(z=>z[C]),k=new Set(y),$=Array.from(k);if(y.length!==$.length){const z=s.find(X=>X.field===C);return a.warning({position:"top-center",message:z.title+w}),!1}}return!0}function h(){if(e.readonly||!f())return;const E=r(),w=o();p.push({hId:w,...E}),d.value.updateDataSource(p),d.value.selectItemById(w)}function v(){p&&p.length>0&&d.value.selectItemById(p[0].hId)}function B(){p=[...d.value.getVisibleData().filter(w=>!w.checked).map(w=>w.raw)],d.value.updateDataSource(p),v()}function V(E){if(!E||E.length===0)return E;const w=[];return E.forEach(S=>{const{value:P,name:m,...C}=S,y=Object.assign({},C);y[l.value.trim()]=P,y[i.value.trim()]=m,w.push(y)}),w}function T(){d.value.endEditCell();let E=[];return d.value.getVisibleData().forEach(w=>{const{hId:S,...P}=w.raw,m={};for(const C in P)C.startsWith("_")||(m[C]=P[C]);E.push(m)}),g(E)?(e.dynamicMappingKeys?(E=V(E),n.emit("change",{value:E,parameters:{valueField:l.value.trim(),nameField:i.value.trim()}})):n.emit("change",{value:E}),!0):!1}return n.expose({clickConfirm:T}),t.onMounted(()=>{v()}),()=>t.createVNode("div",{class:"f-utils-fill-flex-column"},[!e.readonly&&t.createVNode("div",{class:"mb-1 py-1 ml-1"},[t.createVNode("button",{class:"btn f-rt-btn f-btn-ml btn-primary",onClick:()=>h()},[t.createTextVNode("新增")]),t.createVNode("button",{class:"btn f-rt-btn f-btn-ml btn-secondary",onClick:()=>B()},[t.createTextVNode("删除")])]),t.createVNode("div",{class:"f-utils-fill border",style:"margin:0 8px;border-radius:12px;"},[t.createVNode(ke,{ref:d,showBorder:!0,idField:"hId",columns:s,data:p,editable:!e.readonly,"edit-option":c,columnOption:u,fit:!0},null)])])}}),xt=t.defineComponent({name:"FItemCollectionEditor",props:we,components:{},emits:["change"],setup(e,n){const{guid:o}=R.useGuid(),a=t.ref(`共 ${(e.modelValue||[]).length} 项`),l=t.ref(e.valueField),i=t.ref(e.nameField),c=t.ref();function u(){let f=[];return e.dynamicMappingKeys?(f=[],l.value=l.value.trim(),i.value=i.value.trim(),(e.modelValue||[]).forEach(g=>{if(l.value&&i.value){const{[l.value]:h,[i.value]:v,...B}=g,V=B||{};V.value=h,V.name=v,V.hId=o(),f.push(V)}})):(f=H.cloneDeep(e.modelValue||[]),f.forEach(g=>{g.hId=o()})),f}function d(){let f=[];return e.columns&&e.columns.length>0?f=e.columns:f=[{field:e.valueField,title:"值",dataType:"string"},{field:e.nameField,title:"名称",dataType:"string"}],f}function s(){}const p={fitContent:!1,width:900,height:600,title:"项编辑器",buttons:[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:f=>!0},{name:"accept",text:"确定",class:"btn btn-primary",handle:f=>!!c.value.clickConfirm()}]};function r(f){a.value=`共 ${f.value.length} 项`,n.emit("change",f)}return t.watch(()=>e.modelValue,f=>{a.value=`共 ${(e.modelValue||[]).length} 项`}),t.onMounted(()=>{}),()=>t.createVNode(bt,{"button-behavior":"Modal","modal-options":p,modelValue:a.value,"onUpdate:modelValue":f=>a.value=f,editable:!1,beforeOpen:s},{default:()=>[t.createVNode("div",{class:"f-utils-absolute-all f-utils-flex-column"},[e.dynamicMappingKeys&&t.createVNode("div",{class:"farris-form-controls-inline p-2 f-form-layout farris-form f-form-lable-auto"},[t.createVNode("div",{class:"farris-group-wrap mr-3"},[t.createVNode("div",{class:"form-group farris-form-group"},[t.createVNode("label",{class:"col-form-label"},[t.createVNode("span",{class:"farris-label-info text-danger"},[t.createTextVNode("*")]),t.createVNode("span",{class:"farris-label-text"},[t.createTextVNode("枚举值字段")])]),t.createVNode("div",{class:"farris-input-wrap"},[t.withDirectives(t.createVNode("input",{type:"input",class:"form-control","onUpdate:modelValue":f=>l.value=f,readonly:e.readonly},null),[[t.vModelText,l.value]])])])]),t.createVNode("div",{class:"farris-group-wrap"},[t.createVNode("div",{class:"form-group farris-form-group"},[t.createVNode("label",{class:"col-form-label"},[t.createVNode("span",{class:"farris-label-info text-danger"},[t.createTextVNode("*")]),t.createVNode("span",{class:"farris-label-text"},[t.createTextVNode("枚举名称字段")])]),t.createVNode("div",{class:"farris-input-wrap"},[t.withDirectives(t.createVNode("input",{type:"input",class:"form-control","onUpdate:modelValue":f=>i.value=f,readonly:e.readonly},null),[[t.vModelText,i.value]])])])])]),t.createVNode(Ft,{ref:c,valueField:l.value,nameField:i.value,requiredFields:e.requiredFields,uniqueFields:e.uniqueFields,dynamicMappingKeys:e.dynamicMappingKeys,readonly:e.readonly,canEmpty:e.canEmpty,datas:u(),columns:d(),onChange:f=>r(f)},null)])]})}});q.install=e=>{e.component(q.name,q),e.component(Z.name,Z)},q.register=(e,n,o,a)=>{e["radio-group"]=q,n["radio-group"]=te,e["item-collection-editor"]=xt,n["item-collection-editor"]=wt},q.registerDesigner=(e,n,o)=>{e["radio-group"]=Ye,n["radio-group"]=te},L.Radio=Z,L.RadioGroup=q,L.default=q,L.propsResolver=te,L.radioGroupProps=_,L.radioProps=ce,Object.defineProperties(L,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
@@ -1 +1 @@
1
- @charset "UTF-8";.f-navlookup-recommandLabel{height:18px;font-family:PingFangSC-Regular;font-size:13px;color:#3d4c6b;font-weight:400;cursor:pointer}.f-navlookup-recentHeader{height:32px;background:#fafaff;width:100%;display:flex;align-items:center;padding-left:10px;cursor:pointer;border:1px solid rgba(233,236,243,1)}.fv-grid-disabled{color:#a8adb8;background:#fafafc}.form-group-in-canvas .f-cmp-inputgroup .f-state-readonly .input-group-append{display:flex!important}.component-btn-group{flex-direction:row-reverse;position:absolute;z-index:800;background:#fff;display:none;top:-26px;right:0}.component-btn-group>div{position:fixed}.farris-component.farris-nested{padding:10px!important;border:dotted 2px #e8e8e8}.farris-component.farris-nested.dgComponentFocused{border:dotted 2px #388fff}.farris-component.can-move{padding:2px}.farris-component.dgComponentSelected>.component-btn-group{display:flex}.component-btn-group .component-settings-button{display:flex;cursor:pointer;float:right;margin-left:4px;padding:0;font-size:10px;line-height:1.2em;border-radius:2px 2px 0 0;width:24px!important;height:24px!important;color:#fff!important;background:#388fff!important}.component-btn-group .component-settings-button .f-icon{font-size:18px;margin:0 auto;line-height:20px}.component-btn-group .component-settings-button .f-icon.f-icon-yxs_move{cursor:move}.farris-component-content-container .drag-container{display:inherit;flex-direction:inherit;flex-shrink:1;flex-grow:1;flex-basis:0%;flex-wrap:inherit;justify-content:inherit;align-items:inherit;width:100%;overflow:inherit;height:inherit}.gu-mirror{position:fixed!important;margin:0!important;z-index:9999!important;opacity:.8;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";filter:alpha(opacity=80)}.gu-mirror.undroppable .component-settings-button .f-icon-yxs_move{cursor:no-drop}.component-btn-group .component-settings-button .f-icon.f-icon-yxs_delete{color:#fff!important;background:#388fff!important}.gu-hide{display:none!important}.gu-unselectable{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}.gu-transit{opacity:.2;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";filter:alpha(opacity=20)}.drag-over:not(.no-drop){background-color:#f3f8ff!important}.gu-unselectable .farris-component.dgComponentSelected>.component-btn-group{display:none}.gu-unselectable .gu-mirror.farris-component.dgComponentSelected>.component-btn-group{display:flex}.gu-transit.farris-component.dgComponentSelected>.component-btn-group{display:none}.gu-mirror.farris-component.dgComponentSelected{position:fixed!important}.gu-mirror.farris-component.dgComponentSelected>.component-btn-group>div{position:relative;top:0!important;left:0!important}.gu-mirror.farris-component.dgComponentSelected>.component-btn-group{width:max-content}.dgComponentFocused{border-top:2px dotted #388fff!important;border-left:2px dotted #388fff!important;border-right:2px dotted #388fff!important;border-bottom:2px dotted #388fff!important}.dgComponentSelected{border-top:2px solid #388fff!important;border-left:2px solid #388fff!important;border-right:2px solid #388fff!important;border-bottom:2px solid #388fff!important}.editorDiv{background-color:#dbe6f7;overflow-x:auto}.editorPanel{position:relative;height:100%;min-width:900px}.editorDiv .f-struct-like-card{display:block}.editorDiv .farris-tabs.f-tabs-content-fill .f-struct-is-subgrid .f-grid-is-sub{width:100%}.ide-framework .cdk-overlay-container{z-index:1100}.editorDiv .f-struct-wrapper{margin-bottom:15px}.f-struct-wrapper+.f-struct-wrapper{position:relative;display:inherit;margin-bottom:15px}.f-page-is-mainsubcard .f-page-main .f-struct-wrapper{background:#fff}.editorDiv .f-page-navigate .f-page{position:absolute!important}.editorDiv .f-page-navigate .f-page.f-page-card .f-page-main>.drag-container{display:block;overflow:unset}.editorDiv .f-page.f-page-navigate.f-page-is-listnav-with-header .f-page-main .f-page-content-main{display:block}.smooth-dnd-ghost{z-index:1100!important}.editorDiv .farris-oa-page.f-page-card .f-page-main{display:block!important;overflow:auto!important}.editorDiv .f-page-has-scheme .f-page-main.farris-component{margin-top:0}.dropdown-menu.show{z-index:860}.f-struct-subsub-wrapper{padding-top:0!important}.gu-mirror.undroppable{cursor:no-drop}.gu-insertion{position:fixed;z-index:840!important;pointer-events:none!important;background-color:#388fff;height:4px;overflow:hidden}.editorPanel .f-page:before{display:initial!important}.editorPanel .f-page .f-page-main{margin-right:.5rem!important;margin-left:.5rem!important;margin-bottom:.5rem!important}.editorPanel .f-page.f-page-is-listnav .f-page-main{margin-top:.5rem!important}.editorPanel .f-page .f-page-main .f-page-main{margin:0!important}.editorPanel .f-page.f-page-has-scheme .f-page-header{margin:0 .5rem}.f-section-scheme{background:#fff;margin:.5625rem .5rem 0}.farris-component-tabs .farris-tabs-content.f-utils-fill-flex-column .farris-component-tab-page:has(.farris-tab-page-active){display:flex!important;overflow:hidden;flex-shrink:1;flex-grow:1;flex-basis:0;flex-direction:column!important}.response-layout{border:dotted 2px #e8e8e8}.response-layout .response-layout-item{border-right:dotted 2px #e8e8e8}.response-layout .response-layout-item:not(:last-child){padding-right:8px!important}.fade-enter-active,.fade-leave-active{transition:opacity .5s ease}.fade-enter-from,.fade-leave-to{opacity:0}.fv-resizable-handle{position:absolute;font-size:.1px;display:block;touch-action:none}.fv-resizable-handle:hover{background:#2a87ff12}.fv-resizable-handle.fv-resizable-n{cursor:n-resize;height:.4375rem;width:100%;top:-.3125rem;left:0}.fv-resizable-handle.fv-resizable-e{cursor:e-resize;width:.4375rem;right:-.3125rem;height:100%;top:0}.fv-resizable-handle.fv-resizable-s{cursor:s-resize;height:.4375rem;width:100%;bottom:-.3125rem;left:0}.fv-resizable-handle.fv-resizable-w{cursor:w-resize;height:100%;width:.4375rem;left:-.3125rem;top:0}.fv-resizable-handle.fv-resizable-ne{cursor:ne-resize;width:.75rem;height:.75rem;right:1px;top:1px}.fv-resizable-handle.fv-resizable-se{cursor:se-resize;width:.75rem;height:.75rem;right:1px;bottom:1px}.fv-resizable-handle.fv-resizable-nw{cursor:nw-resize;width:.75rem;height:.75rem;left:1px;top:1px}.fv-resizable-handle.fv-resizable-sw{cursor:sw-resize;width:.75rem;height:.75rem;left:1px;bottom:1px}.exception_wrap{max-width:750px;display:flex;overflow:hidden;position:relative}.exception_error_msg{line-height:1.5;max-height:3em;overflow:hidden;min-height:66px;text-overflow:ellipsis;-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box}.exception_error_msg:before{content:"";float:right;width:0;height:100%;margin-bottom:-24px}.exception_error_msg:after{content:"";width:100%;height:100%;position:absolute;background-color:#fff}.exception_wrap .swith{float:right;clear:both;color:#2a87ff}.exception_wrap .swith:after{content:"展开";padding-left:15px;cursor:pointer}.exp_switch:checked+.exception_error_msg{max-height:480px;-webkit-line-clamp:20!important}.exp_switch:checked+.exception_error_msg .swith:after{content:"收起";cursor:pointer}.exp_switch:checked+.exception_error_msg:after{visibility:hidden}.exp_switch:checked+.exception_error_msg .swith:before{content:""}.screenGroup{background:#ffffffe6;box-shadow:0 0 3px #024bc133;border-radius:8px;padding:2px 14px;margin:5px auto;flex:1 1 0!important}.screenGroup .screenName{width:90px;font-family:PingFangSC-Regular;font-size:14px;line-height:24px;color:#2a87ff;height:32px;padding:4px;text-align:left}.screenGroup .screen-input{flex:1 1 0}.screenGroup farris-combo-list{width:84px}.screenGroup .columnText{line-height:26px}.applyBtn{margin-top:5px;display:flex;justify-content:center}.applyBtn .btn{width:110px}.en .screenGroup{width:100%;flex-direction:column;align-items:flex-start}.en .screenGroup>div{width:100%;padding:0 10px 10px 0;margin-left:0!important}.en .screenGroup .screenName{width:auto}.en .screenGroup farris-combo-list{flex:1}.en .screenGroup .columnText{width:50px}.f-schema-selector-search{width:220px;height:26.6px;background:#fff;border-radius:6px;float:right;margin-right:40px}.f-schema-selector .farris-tabs-header{display:flex;align-items:center;min-width:400px;width:100%;height:44px;border:1px solid #e5e9ef;background:#f9f9fc;margin:0!important;padding:.75rem 0 .75rem 5rem!important}.f-schema-selector .farris-tabs-header .nav-item{margin-right:5rem!important}.f-schema-selector .container{padding:0;max-width:none!important}.f-navForm-item{margin:20px 0 2px 20px;padding:15px 0 8px 18px;border:1px solid #e5e9ef;width:283px;height:90px;background:#fff;border:1px solid rgba(218,227,255,1);border-radius:11px;display:flex;cursor:pointer}.f-listview-active .f-navForm-item,.f-listview-active .f-navForm-item:hover,.f-listview-active .f-navlookup-item,.f-listview-active .f-navlookup-item:hover{background-color:#c9e1ff!important}.f-navForm-leftIcon{flex:1}.f-navForm-itemIcon{width:42px;height:42px;background-image:linear-gradient(-45deg,#41d2bd,#1fc8dc);border-radius:12px}.f-navForm-rightText{flex:4}.f-navForm-item:hover{background-color:#edf5fc!important;cursor:pointer}.f-navForm-item-active{align-content:space-between;padding:15px 0 8px 18px;width:283px;height:90px;background:#fff;border:1px solid rgba(218,227,255,1);border-radius:11px;display:flex;border:1px solid #e5e9ef;background-color:#edf5fc!important;margin:20px 0 2px 20px;cursor:pointer}.f-navForm-name{width:fit-content;max-width:200px;display:inline-block;vertical-align:center;height:20px;font-family:PingFangSC-Regular;font-size:14px;color:#2e4c70;font-weight:400;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.f-navForm-source{width:fit-content;max-width:200px;height:22px;font-family:PingFangSC-Regular;font-size:13px;color:#8999b9;font-weight:400;background:#f7f9fc;border-radius:4px;padding:2px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.f-navlookup-item{height:62px;padding:15px 0 8px 18px;border:1px solid #e5e9ef}.f-navlookup-item:hover{background-color:#edf5fc!important;cursor:pointer}.f-navlookup-item-active{height:62px;padding:15px 0 8px 18px;border:1px solid #e5e9ef;background-color:#edf5fc!important}.f-navlookup-itemIcon{width:16px;height:16px;padding:1px;margin-right:6px;background-color:#dcf4e8;display:inline-block}.f-navlookup-name{width:80%;height:18px;font-family:PingFangSC-Regular;font-size:13px;color:#2d2f33;font-weight:400;overflow:hidden;display:inline-block;vertical-align:top}.f-navlookup-source{width:100%;height:17px;font-family:PingFangSC-Regular;font-size:12px;color:#949ba7;font-weight:400}.f-navUdt-item{border:1px solid #e5e9ef;width:115px;height:100px;background:#fafbfc;border-radius:8px;margin-right:10px;position:relative;z-index:2000;margin-top:10px;cursor:pointer}.f-navUdt-item:hover{background-color:#edf5fc!important;cursor:pointer}.f-navUdt-item-active{border:1px solid #e5e9ef;background-color:#edf5fc!important;width:115px;height:100px;border-radius:8px;margin-right:10px;position:relative;z-index:2000;margin-top:10px;cursor:pointer}.f-navUdt-name{width:98%;height:18px;font-family:PingFangSC-Regular;font-size:13px;color:#2d2f33;font-weight:400;overflow:hidden;display:inline-block;vertical-align:top;text-align:center}.f-navUdt-code{width:98%;font-family:PingFangSC-Regular;font-weight:400;overflow:hidden;display:inline-block;vertical-align:top;height:17px;font-size:12px;color:#a6aebe;text-align:center}.f-navSelector{background-color:#fff;display:flex;margin:0 24px;border:1px solid #e5e9ef;border-radius:8px;height:100%;overflow:hidden}.f-navSelector-left{flex:2;background-color:#fff;display:flex;flex-direction:column;border-right:1px solid #e5e9ef;border-radius:8px 0 0 8px;width:180px;padding-top:6px}.f-navSelector-right{flex:8}.f-navSelector-leftCategory{min-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:32px;font-family:PingFangSC-Regular;font-size:13px;color:#2d2f33;line-height:18px;font-weight:400;padding:7px 0 7px 15px;cursor:pointer;margin-right:5px;margin-left:5px}.f-navSelector-leftCategory:hover{min-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:32px;font-family:PingFangSC-Regular;font-size:13px;color:#2d2f33;line-height:18px;font-weight:400;padding:7px 0 7px 15px;background:#f7f8fb}.f-listview-active .f-navSelector-leftCategory{background:#c9e1ff;border-radius:8px}.f-navSelector-header{display:flex;min-width:400px;height:44px;align-items:center;border-bottom:1px solid #e5e9ef;background:#f9f9fc;top:0;z-index:2;border-radius:0 8px 0 0}.f-navSelector-recommand{flex:2;text-align:center;display:flex;justify-content:center;align-items:center}.f-navSelector-recommand-text{width:80px;height:22px;font-family:PingFangSC-Regular;font-size:16px;color:#2d2f33;text-align:center;font-weight:400;margin-left:5px}.f-navSelector-recommand-text-focus{width:32px;height:44px;color:#2a87ff;border-bottom:3px solid blue;font-family:PingFangSC-Medium;font-size:16px;font-weight:500;padding-top:12px}.f-navSelector-remainder{flex:12}.f-navSelector-search{width:220px;height:26.6px;background:#fff;border-radius:6px;float:right;margin-right:40px}.f-navSelector-content{width:100%;min-width:400px;overflow-y:auto;display:flex;overflow-x:hidden;border-radius:0 8px 0 0;flex-direction:column;padding-bottom:1px}
1
+ @charset "UTF-8";.f-navlookup-recommandLabel{height:18px;font-family:PingFangSC-Regular;font-size:13px;color:#3d4c6b;font-weight:400;cursor:pointer}.f-navlookup-recentHeader{height:32px;background:#fafaff;width:100%;display:flex;align-items:center;padding-left:10px;cursor:pointer;border:1px solid rgba(233,236,243,1)}.fv-grid-disabled{color:#a8adb8;background:#fafafc}.form-group-in-canvas .f-cmp-inputgroup .f-state-readonly .input-group-append{display:flex!important}.component-btn-group{flex-direction:row-reverse;position:absolute;z-index:800;background:#fff;display:none;top:-26px;right:0}.component-btn-group>div{position:fixed}.farris-component.farris-nested{padding:10px!important;border:dotted 2px #e8e8e8}.farris-component.farris-nested.dgComponentFocused{border:dotted 2px #388fff}.farris-component.can-move{padding:2px}.farris-component.dgComponentSelected>.component-btn-group{display:flex}.component-btn-group .component-settings-button{display:flex;cursor:pointer;float:right;margin-left:4px;padding:0;font-size:10px;line-height:1.2em;border-radius:2px 2px 0 0;width:24px!important;height:24px!important;color:#fff!important;background:#388fff!important}.component-btn-group .component-settings-button .f-icon{font-size:18px;margin:0 auto;line-height:20px}.component-btn-group .component-settings-button .f-icon.f-icon-yxs_move{cursor:move}.farris-component-content-container .drag-container{display:inherit;flex-direction:inherit;flex-shrink:1;flex-grow:1;flex-basis:0%;flex-wrap:inherit;justify-content:inherit;align-items:inherit;width:100%;overflow:inherit;height:inherit}.gu-mirror{position:fixed!important;margin:0!important;z-index:9999!important;opacity:.8;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";filter:alpha(opacity=80)}.gu-mirror.undroppable .component-settings-button .f-icon-yxs_move{cursor:no-drop}.component-btn-group .component-settings-button .f-icon.f-icon-yxs_delete{color:#fff!important;background:#388fff!important}.gu-hide{display:none!important}.gu-unselectable{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}.gu-transit{opacity:.2;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";filter:alpha(opacity=20)}.drag-over:not(.no-drop){background-color:#f3f8ff!important}.gu-unselectable .farris-component.dgComponentSelected>.component-btn-group{display:none}.gu-unselectable .gu-mirror.farris-component.dgComponentSelected>.component-btn-group{display:flex}.gu-transit.farris-component.dgComponentSelected>.component-btn-group{display:none}.gu-mirror.farris-component.dgComponentSelected{position:fixed!important}.gu-mirror.farris-component.dgComponentSelected>.component-btn-group>div{position:relative;top:0!important;left:0!important}.gu-mirror.farris-component.dgComponentSelected>.component-btn-group{width:max-content}.dgComponentFocused{border-top:2px dotted #388fff!important;border-left:2px dotted #388fff!important;border-right:2px dotted #388fff!important;border-bottom:2px dotted #388fff!important}.dgComponentSelected{border-top:2px solid #388fff!important;border-left:2px solid #388fff!important;border-right:2px solid #388fff!important;border-bottom:2px solid #388fff!important}.editorDiv{background-color:#dbe6f7;overflow-x:auto}.editorPanel{position:relative;height:100%;min-width:900px}.editorDiv .f-struct-like-card{display:block}.editorDiv .farris-tabs.f-tabs-content-fill .f-struct-is-subgrid .f-grid-is-sub{width:100%}.ide-framework .cdk-overlay-container{z-index:1100}.editorDiv .f-struct-wrapper{margin-bottom:15px}.f-struct-wrapper+.f-struct-wrapper{position:relative;display:inherit;margin-bottom:15px}.f-page-is-mainsubcard .f-page-main .f-struct-wrapper{background:#fff}.editorDiv .f-page-navigate .f-page{position:absolute!important}.editorDiv .f-page-navigate .f-page.f-page-card .f-page-main>.drag-container{display:block;overflow:unset}.editorDiv .f-page.f-page-navigate.f-page-is-listnav-with-header .f-page-main .f-page-content-main{display:block}.smooth-dnd-ghost{z-index:1100!important}.editorDiv .farris-oa-page.f-page-card .f-page-main{display:block!important;overflow:auto!important}.editorDiv .f-page-has-scheme .f-page-main.farris-component{margin-top:0}.dropdown-menu.show{z-index:860}.f-struct-subsub-wrapper{padding-top:0!important}.gu-mirror.undroppable{cursor:no-drop}.gu-insertion{position:fixed;z-index:840!important;pointer-events:none!important;background-color:#388fff;height:4px;overflow:hidden}.editorPanel .f-page:before{display:initial!important}.editorPanel .f-page .f-page-main{margin-right:.5rem!important;margin-left:.5rem!important;margin-bottom:.5rem!important}.editorPanel .f-page.f-page-is-listnav .f-page-main{margin-top:.5rem!important}.editorPanel .f-page .f-page-main .f-page-main{margin:0!important}.editorPanel .f-page.f-page-has-scheme .f-page-header{margin:0 .5rem}.f-section-scheme{background:#fff;margin:.5625rem .5rem 0}.farris-component-tabs .farris-tabs-content.f-utils-fill-flex-column .farris-component-tab-page:has(.farris-tab-page-active){display:flex!important;overflow:hidden;flex-shrink:1;flex-grow:1;flex-basis:0;flex-direction:column!important}.response-layout{border:dotted 2px #e8e8e8}.response-layout .response-layout-item{border-right:dotted 2px #e8e8e8}.response-layout .response-layout-item:not(:last-child){padding-right:8px!important}.fade-enter-active,.fade-leave-active{transition:opacity .5s ease}.fade-enter-from,.fade-leave-to{opacity:0}.fv-resizable-handle{position:absolute;font-size:.1px;display:block;touch-action:none}.fv-resizable-handle:hover{background:#2a87ff12}.fv-resizable-handle.fv-resizable-n{cursor:n-resize;height:.4375rem;width:100%;top:-.3125rem;left:0}.fv-resizable-handle.fv-resizable-e{cursor:e-resize;width:.4375rem;right:-.3125rem;height:100%;top:0}.fv-resizable-handle.fv-resizable-s{cursor:s-resize;height:.4375rem;width:100%;bottom:-.3125rem;left:0}.fv-resizable-handle.fv-resizable-w{cursor:w-resize;height:100%;width:.4375rem;left:-.3125rem;top:0}.fv-resizable-handle.fv-resizable-ne{cursor:ne-resize;width:.75rem;height:.75rem;right:1px;top:1px}.fv-resizable-handle.fv-resizable-se{cursor:se-resize;width:.75rem;height:.75rem;right:1px;bottom:1px}.fv-resizable-handle.fv-resizable-nw{cursor:nw-resize;width:.75rem;height:.75rem;left:1px;top:1px}.fv-resizable-handle.fv-resizable-sw{cursor:sw-resize;width:.75rem;height:.75rem;left:1px;bottom:1px}.property-item .form-group{margin-bottom:2px}.property-item .col-form-label{line-height:26px}.property-item .row-item{align-items:center}.wide-panel .row-item{display:flex}.wide-panel .row-item .component{flex:1 1 0}.wide-panel .row-item label{width:89px;text-align:right;padding-right:10px}.wrap{overflow:hidden;text-overflow:ellipsis}.propertyCascadeItem{background-color:transparent!important;border:none!important}.propertyCascadeItem .card-header{background-color:transparent!important;padding:4px 0!important;color:inherit!important}.propertyCascadeItem .card-header .panel-item-title{width:100%;position:relative;font-size:inherit!important}.propertyCascadeItem .card-header .panel-item-title .farris-input-wrap{margin-left:-5px;margin-right:-5px}.propertyCascadeItem .form-group .col-form-label .f-icon{color:#a3a3a3!important}.propertyCascadeItem .f-accordion-collapse,.propertyCascadeItem .f-accordion-expand{right:0;left:auto!important;top:6px;color:#6b94ec!important;position:absolute}.propertyCascadeItem .card-body{padding:3px 12px!important;background:#fffc;border-radius:8px;margin:4px 0}.propertyCascadeItem .card-body.hidden{display:none}.landscape{display:none;flex-shrink:0;align-items:center;justify-content:flex-end}.wide-panel .vertical{display:none}.wide-panel .landscape{display:block;padding:0;overflow:hidden}.wide-panel .line-item{display:flex}.wide-panel .line-item .f-header{margin-bottom:0}.wide-panel .line-item .f-section-formgroup-legend{width:89px;text-align:right;padding-right:13px}.wide-panel .line-item .farris-input-wrap{flex:1 1 0}:host{width:inherit;height:inherit}.property-panel{position:relative}.property-panel .switcher{position:absolute;top:9px;right:0;width:40px;text-align:center}.property-panel .switcher i{color:#4190ff;font-size:12px;cursor:pointer}.property-panel .side-panel{width:41px;background-color:#fff;padding-top:45px;text-align:center}.property-panel .side-panel .icon{display:block;text-align:center;color:#4190ff;margin-bottom:10px}.property-panel .side-panel span{writing-mode:vertical-rl;font-size:14px}.propertyPanel{width:300px;height:100%;color:#000000bf;background:#f3f8ff!important;border-color:#d8dbe2!important;display:flex}.propertyPanel .title{position:relative;background:#d0d8e9!important;flex-wrap:wrap;border:0}.propertyPanel .title.p-right{padding-right:40px}.propertyPanel .title>.title-label{line-height:34px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:12px;padding-right:12px;color:#333;font-size:13px;font-weight:600;cursor:pointer}.propertyPanel .title>.title-label.active{background:#8fb1df!important}.propertyPanel .title .title-actions{position:absolute;right:10px;top:0;padding-left:35px;height:35px;-ms-flex:1;flex:1;box-sizing:border-box}.propertyPanel .title .title-actions{position:absolute;right:10px;top:0}.propertyPanel .property-grid .group-label{line-height:30px;display:block;padding-left:13px;cursor:pointer;background:#e2e9f6!important;color:#435069!important;font-weight:600!important;border-radius:6px}.propertyPanel .search .textbox{padding-left:10px}.propertyPanel .search .input-group{border-radius:0}.propertyPanel .panel-body{overflow:auto;height:100%}.propertyPanel .property-grid{list-style:none;margin:0 10px;padding:0}.propertyPanel .property-grid li{padding:2px 0}.propertyPanel .panel-body .property-grid .group-label+div{padding-bottom:14px!important;padding-top:.25rem!important}.propertyPanel .action-item{cursor:pointer;display:inline-block;transition:transform 50ms ease;position:relative;padding:0}.propertyPanel .action-item>.f-icon{color:#424242bf;line-height:35px;font-weight:600}.propertyPanel .search .input-group-clear{border-radius:0!important}.white-theme .propertyPanel{background:#fff!important;border:1px solid #D8DCE6!important}.white-theme .propertyPanel .title{overflow:visible;background:#fff!important;justify-content:space-around}.white-theme .propertyPanel{background:#fff!important}.white-theme .propertyPanel .title{overflow:visible;background:#fff!important;flex-wrap:wrap;text-align:center}.white-theme .propertyPanel .title>.title-label{font-weight:400!important;border-bottom:0;background:#fff!important;flex:1;color:#83849b}.white-theme .propertyPanel .title>.title-label>span{padding:0 14px 7px}.white-theme .propertyPanel .title>.title-label.active>span{border-bottom:2px solid #5b89fe;color:#5b89fe;border-radius:1.5px}.white-theme .propertyPanel .title.only{text-align:left}.white-theme .propertyPanel .property-grid .group-label{background:#fff!important;line-height:30px;font-weight:400!important;font-size:13px;color:#3f4764!important;border-radius:6px;background:#eef4ff!important;color:#435069!important}.white-theme .propertyPanel .property-grid .group-label .f-icon{color:#5d89fe;font-size:13px}.exception_wrap{max-width:750px;display:flex;overflow:hidden;position:relative}.exception_error_msg{line-height:1.5;max-height:3em;overflow:hidden;min-height:66px;text-overflow:ellipsis;-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box}.exception_error_msg:before{content:"";float:right;width:0;height:100%;margin-bottom:-24px}.exception_error_msg:after{content:"";width:100%;height:100%;position:absolute;background-color:#fff}.exception_wrap .swith{float:right;clear:both;color:#2a87ff}.exception_wrap .swith:after{content:"展开";padding-left:15px;cursor:pointer}.exp_switch:checked+.exception_error_msg{max-height:480px;-webkit-line-clamp:20!important}.exp_switch:checked+.exception_error_msg .swith:after{content:"收起";cursor:pointer}.exp_switch:checked+.exception_error_msg:after{visibility:hidden}.exp_switch:checked+.exception_error_msg .swith:before{content:""}.screenGroup{background:#ffffffe6;box-shadow:0 0 3px #024bc133;border-radius:8px;padding:2px 14px;margin:5px auto;flex:1 1 0!important}.screenGroup .screenName{width:90px;font-family:PingFangSC-Regular;font-size:14px;line-height:24px;color:#2a87ff;height:32px;padding:4px;text-align:left}.screenGroup .screen-input{flex:1 1 0}.screenGroup farris-combo-list{width:84px}.screenGroup .columnText{line-height:26px}.applyBtn{margin-top:5px;display:flex;justify-content:center}.applyBtn .btn{width:110px}.en .screenGroup{width:100%;flex-direction:column;align-items:flex-start}.en .screenGroup>div{width:100%;padding:0 10px 10px 0;margin-left:0!important}.en .screenGroup .screenName{width:auto}.en .screenGroup farris-combo-list{flex:1}.en .screenGroup .columnText{width:50px}.f-schema-selector-search{width:220px;height:26.6px;background:#fff;border-radius:6px;float:right;margin-right:40px}.f-schema-selector .farris-tabs-header{display:flex;align-items:center;min-width:400px;width:100%;height:44px;border:1px solid #e5e9ef;background:#f9f9fc;margin:0!important;padding:.75rem 0 .75rem 5rem!important}.f-schema-selector .farris-tabs-header .nav-item{margin-right:5rem!important}.f-schema-selector .container{padding:0;max-width:none!important}.f-navForm-item{margin:20px 0 2px 20px;padding:15px 0 8px 18px;border:1px solid #e5e9ef;width:283px;height:90px;background:#fff;border:1px solid rgba(218,227,255,1);border-radius:11px;display:flex;cursor:pointer}.f-listview-active .f-navForm-item,.f-listview-active .f-navForm-item:hover,.f-listview-active .f-navlookup-item,.f-listview-active .f-navlookup-item:hover{background-color:#c9e1ff!important}.f-navForm-leftIcon{flex:1}.f-navForm-itemIcon{width:42px;height:42px;background-image:linear-gradient(-45deg,#41d2bd,#1fc8dc);border-radius:12px}.f-navForm-rightText{flex:4}.f-navForm-item:hover{background-color:#edf5fc!important;cursor:pointer}.f-navForm-item-active{align-content:space-between;padding:15px 0 8px 18px;width:283px;height:90px;background:#fff;border:1px solid rgba(218,227,255,1);border-radius:11px;display:flex;border:1px solid #e5e9ef;background-color:#edf5fc!important;margin:20px 0 2px 20px;cursor:pointer}.f-navForm-name{width:fit-content;max-width:200px;display:inline-block;vertical-align:center;height:20px;font-family:PingFangSC-Regular;font-size:14px;color:#2e4c70;font-weight:400;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.f-navForm-source{width:fit-content;max-width:200px;height:22px;font-family:PingFangSC-Regular;font-size:13px;color:#8999b9;font-weight:400;background:#f7f9fc;border-radius:4px;padding:2px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.f-navlookup-item{height:62px;padding:15px 0 8px 18px;border:1px solid #e5e9ef}.f-navlookup-item:hover{background-color:#edf5fc!important;cursor:pointer}.f-navlookup-item-active{height:62px;padding:15px 0 8px 18px;border:1px solid #e5e9ef;background-color:#edf5fc!important}.f-navlookup-itemIcon{width:16px;height:16px;padding:1px;margin-right:6px;background-color:#dcf4e8;display:inline-block}.f-navlookup-name{width:80%;height:18px;font-family:PingFangSC-Regular;font-size:13px;color:#2d2f33;font-weight:400;overflow:hidden;display:inline-block;vertical-align:top}.f-navlookup-source{width:100%;height:17px;font-family:PingFangSC-Regular;font-size:12px;color:#949ba7;font-weight:400}.f-navUdt-item{border:1px solid #e5e9ef;width:115px;height:100px;background:#fafbfc;border-radius:8px;margin-right:10px;position:relative;z-index:2000;margin-top:10px;cursor:pointer}.f-navUdt-item:hover{background-color:#edf5fc!important;cursor:pointer}.f-navUdt-item-active{border:1px solid #e5e9ef;background-color:#edf5fc!important;width:115px;height:100px;border-radius:8px;margin-right:10px;position:relative;z-index:2000;margin-top:10px;cursor:pointer}.f-navUdt-name{width:98%;height:18px;font-family:PingFangSC-Regular;font-size:13px;color:#2d2f33;font-weight:400;overflow:hidden;display:inline-block;vertical-align:top;text-align:center}.f-navUdt-code{width:98%;font-family:PingFangSC-Regular;font-weight:400;overflow:hidden;display:inline-block;vertical-align:top;height:17px;font-size:12px;color:#a6aebe;text-align:center}.f-navSelector{background-color:#fff;display:flex;margin:0 24px;border:1px solid #e5e9ef;border-radius:8px;height:100%;overflow:hidden}.f-navSelector-left{flex:2;background-color:#fff;display:flex;flex-direction:column;border-right:1px solid #e5e9ef;border-radius:8px 0 0 8px;width:180px;padding-top:6px}.f-navSelector-right{flex:8}.f-navSelector-leftCategory{min-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:32px;font-family:PingFangSC-Regular;font-size:13px;color:#2d2f33;line-height:18px;font-weight:400;padding:7px 0 7px 15px;cursor:pointer;margin-right:5px;margin-left:5px}.f-navSelector-leftCategory:hover{min-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:32px;font-family:PingFangSC-Regular;font-size:13px;color:#2d2f33;line-height:18px;font-weight:400;padding:7px 0 7px 15px;background:#f7f8fb}.f-listview-active .f-navSelector-leftCategory{background:#c9e1ff;border-radius:8px}.f-navSelector-header{display:flex;min-width:400px;height:44px;align-items:center;border-bottom:1px solid #e5e9ef;background:#f9f9fc;top:0;z-index:2;border-radius:0 8px 0 0}.f-navSelector-recommand{flex:2;text-align:center;display:flex;justify-content:center;align-items:center}.f-navSelector-recommand-text{width:80px;height:22px;font-family:PingFangSC-Regular;font-size:16px;color:#2d2f33;text-align:center;font-weight:400;margin-left:5px}.f-navSelector-recommand-text-focus{width:32px;height:44px;color:#2a87ff;border-bottom:3px solid blue;font-family:PingFangSC-Medium;font-size:16px;font-weight:500;padding-top:12px}.f-navSelector-remainder{flex:12}.f-navSelector-search{width:220px;height:26.6px;background:#fff;border-radius:6px;float:right;margin-right:40px}.f-navSelector-content{width:100%;min-width:400px;overflow-y:auto;display:flex;overflow-x:hidden;border-radius:0 8px 0 0;flex-direction:column;padding-bottom:1px}