@farris/ui-vue 1.2.4 → 1.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/accordion/index.esm.js +58 -58
- package/components/accordion/index.umd.cjs +1 -1
- package/components/accordion/package.json +1 -1
- package/components/avatar/index.esm.js +124 -116
- package/components/avatar/index.umd.cjs +1 -1
- package/components/avatar/package.json +1 -1
- package/components/border-editor/package.json +1 -1
- package/components/button/package.json +1 -1
- package/components/button-edit/index.css +1 -0
- package/components/button-edit/package.json +1 -1
- package/components/button-group/package.json +1 -1
- package/components/calculator/package.json +1 -1
- package/components/calendar/package.json +1 -1
- package/components/capsule/index.esm.js +1 -1
- package/components/capsule/index.umd.cjs +1 -1
- package/components/capsule/package.json +1 -1
- package/components/checkbox/index.esm.js +219 -209
- package/components/checkbox/index.umd.cjs +1 -1
- package/components/checkbox/package.json +1 -1
- package/components/color-picker/package.json +1 -1
- package/components/combo-list/index.esm.js +36 -28
- package/components/combo-list/index.umd.cjs +1 -1
- package/components/combo-list/package.json +1 -1
- package/components/combo-tree/index.esm.js +340 -107
- package/components/combo-tree/index.umd.cjs +1 -1
- package/components/combo-tree/package.json +1 -1
- package/components/common/index.esm.js +2 -2
- package/components/common/index.umd.cjs +1 -1
- package/components/common/package.json +1 -1
- package/components/component/index.esm.js +36 -29
- package/components/component/index.umd.cjs +1 -1
- package/components/component/package.json +1 -1
- package/components/condition/index.esm.js +406 -402
- package/components/condition/index.umd.cjs +1 -1
- package/components/condition/package.json +1 -1
- package/components/content-container/index.esm.js +9 -13
- package/components/content-container/index.umd.cjs +1 -1
- package/components/content-container/package.json +1 -1
- package/components/{tree-grid/style.css → data-grid/index.css} +1 -1
- package/components/data-grid/index.esm.js +4439 -4273
- package/components/data-grid/index.umd.cjs +1 -1
- package/components/data-grid/package.json +1 -1
- package/components/data-view/index.esm.js +2904 -2892
- package/components/data-view/index.umd.cjs +1 -1
- package/components/data-view/package.json +1 -1
- package/components/date-picker/index.esm.js +250 -242
- package/components/date-picker/index.umd.cjs +1 -1
- package/components/date-picker/package.json +1 -1
- package/components/designer-canvas/index.css +1 -0
- package/components/designer-canvas/index.esm.js +24 -21
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/designer-canvas/package.json +1 -1
- package/components/designer-outline/index.esm.js +44 -42
- package/components/designer-outline/index.umd.cjs +1 -1
- package/components/designer-outline/package.json +1 -1
- package/components/designer-toolbox/index.esm.js +28 -467
- package/components/designer-toolbox/index.umd.cjs +1 -1
- package/components/designer-toolbox/package.json +1 -1
- package/components/discussion-editor/package.json +1 -1
- package/components/discussion-list/package.json +1 -1
- package/components/drawer/package.json +1 -1
- package/components/dropdown/index.esm.js +86 -86
- package/components/dropdown/index.umd.cjs +1 -1
- package/components/dropdown/package.json +1 -1
- package/components/dynamic-form/index.esm.js +984 -928
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/dynamic-form/package.json +1 -1
- package/components/dynamic-resolver/index.esm.js +56 -47
- package/components/dynamic-resolver/index.umd.cjs +1 -1
- package/components/dynamic-resolver/package.json +1 -1
- package/components/dynamic-view/index.esm.js +281 -277
- package/components/dynamic-view/index.umd.cjs +1 -1
- package/components/dynamic-view/package.json +1 -1
- package/components/enum-editor/package.json +1 -1
- package/components/events-editor/package.json +1 -1
- package/components/expression-editor/package.json +1 -1
- package/components/external-container/index.css +1 -0
- package/components/external-container/index.esm.js +1917 -1901
- package/components/external-container/index.umd.cjs +1 -1
- package/components/external-container/package.json +1 -1
- package/components/field-selector/index.css +1 -0
- package/components/field-selector/index.esm.js +4185 -4023
- package/components/field-selector/index.umd.cjs +1 -1
- package/components/field-selector/package.json +1 -1
- package/components/filter-bar/{style.css → index.css} +1 -1
- package/components/filter-bar/index.esm.js +595 -581
- package/components/filter-bar/index.umd.cjs +1 -1
- package/components/filter-bar/package.json +1 -1
- package/components/flow-canvas/index.css +1 -0
- package/components/flow-canvas/index.esm.js +38 -35
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/flow-canvas/package.json +1 -1
- package/components/image-cropper/package.json +1 -1
- package/components/input-group/index.esm.js +256 -248
- package/components/input-group/index.umd.cjs +1 -1
- package/components/input-group/package.json +1 -1
- package/components/layout/package.json +1 -1
- package/components/list-nav/package.json +1 -1
- package/components/list-view/index.esm.js +1522 -1519
- package/components/list-view/index.umd.cjs +1 -1
- package/components/list-view/package.json +1 -1
- package/components/loading/package.json +1 -1
- package/components/locale/package.json +1 -1
- package/components/lookup/index.css +1 -0
- package/components/lookup/index.esm.js +4629 -4410
- package/components/lookup/index.umd.cjs +1 -1
- package/components/lookup/package.json +1 -1
- package/components/mapping-editor/index.css +1 -0
- package/components/mapping-editor/index.esm.js +4454 -4255
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/mapping-editor/package.json +1 -1
- package/components/message-box/index.css +1 -0
- package/components/message-box/index.esm.js +397 -386
- package/components/message-box/index.umd.cjs +1 -1
- package/components/message-box/package.json +1 -1
- package/components/modal/index.css +1 -0
- package/components/modal/index.esm.js +308 -297
- package/components/modal/index.umd.cjs +1 -1
- package/components/modal/package.json +1 -1
- package/components/nav/index.esm.js +511 -469
- package/components/nav/index.umd.cjs +2 -2
- package/components/nav/package.json +1 -1
- package/components/notify/package.json +1 -1
- package/components/order/index.esm.js +972 -920
- package/components/order/index.umd.cjs +1 -1
- package/components/order/package.json +1 -1
- package/components/page-footer/package.json +1 -1
- package/components/page-header/index.esm.js +917 -893
- package/components/page-header/index.umd.cjs +1 -1
- package/components/page-header/package.json +1 -1
- package/components/pagination/index.esm.js +491 -449
- package/components/pagination/index.umd.cjs +1 -1
- package/components/pagination/package.json +1 -1
- package/components/popover/package.json +1 -1
- package/components/progress/package.json +1 -1
- package/components/property-editor/index.esm.js +108 -101
- package/components/property-editor/index.umd.cjs +2 -2
- package/components/property-editor/package.json +1 -1
- package/components/property-panel/index.esm.js +361 -349
- package/components/property-panel/index.umd.cjs +1 -1
- package/components/property-panel/package.json +1 -1
- package/components/radio-button/package.json +1 -1
- package/components/radio-group/index.esm.js +72 -64
- package/components/radio-group/index.umd.cjs +1 -1
- package/components/radio-group/package.json +1 -1
- package/components/rate/package.json +1 -1
- package/components/response-layout/package.json +1 -1
- package/components/response-layout-editor/{style.css → index.css} +1 -1
- package/components/response-layout-editor/index.esm.js +452 -439
- package/components/response-layout-editor/index.umd.cjs +1 -1
- package/components/response-layout-editor/package.json +1 -1
- package/components/response-toolbar/index.esm.js +610 -592
- package/components/response-toolbar/index.umd.cjs +1 -1
- package/components/response-toolbar/package.json +1 -1
- package/components/schema-selector/index.css +1 -0
- package/components/schema-selector/index.esm.js +4041 -3749
- package/components/schema-selector/index.umd.cjs +8 -1
- package/components/schema-selector/package.json +1 -1
- package/components/search-box/package.json +1 -1
- package/components/section/index.esm.js +21 -14
- package/components/section/index.umd.cjs +1 -1
- package/components/section/package.json +1 -1
- package/components/smoke-detector/package.json +1 -1
- package/components/spacing-editor/package.json +1 -1
- package/components/splitter/package.json +1 -1
- package/components/step/package.json +1 -1
- package/components/switch/index.esm.js +159 -178
- package/components/switch/index.umd.cjs +1 -1
- package/components/switch/package.json +1 -1
- package/components/tabs/index.css +1 -0
- package/components/tabs/index.esm.js +1450 -1408
- package/components/tabs/index.umd.cjs +1 -1
- package/components/tabs/package.json +1 -1
- package/components/tags/package.json +1 -1
- package/components/text/package.json +1 -1
- package/components/textarea/index.esm.js +86 -78
- package/components/textarea/index.umd.cjs +1 -1
- package/components/textarea/package.json +1 -1
- package/components/time-picker/index.css +1 -0
- package/components/time-picker/index.esm.js +387 -379
- package/components/time-picker/index.umd.cjs +1 -1
- package/components/time-picker/package.json +1 -1
- package/components/tooltip/package.json +1 -1
- package/components/transfer/index.esm.js +95 -93
- package/components/transfer/index.umd.cjs +1 -1
- package/components/transfer/package.json +1 -1
- package/components/{data-grid/style.css → tree-grid/index.css} +1 -1
- package/components/tree-grid/index.esm.js +4437 -4271
- package/components/tree-grid/index.umd.cjs +1 -1
- package/components/tree-grid/package.json +1 -1
- package/components/tree-view/index.esm.js +1989 -1985
- package/components/tree-view/index.umd.cjs +1 -1
- package/components/tree-view/package.json +1 -1
- package/components/uploader/package.json +1 -1
- package/components/verify-detail/package.json +1 -1
- package/components/video/package.json +1 -1
- package/components/weather/package.json +1 -1
- package/farris.all.esm.js +12989 -12513
- package/farris.all.umd.cjs +9 -9
- package/index.css +1 -0
- package/package.json +2 -2
- package/types/combo-tree/src/combo-tree.props.d.ts +4 -0
- package/types/combo-tree/src/components/tree-container.component.d.ts +13 -3
- package/types/combo-tree/src/components/tree-container.props.d.ts +15 -1
- package/types/combo-tree/src/schema/schema-mapper.d.ts +2 -0
- package/types/combo-tree/src/schema/schema-resolver.d.ts +2 -0
- package/types/components.d.ts +1 -0
- package/types/condition/index.d.ts +60 -1
- package/types/data-grid/index.d.ts +5 -5
- package/types/data-grid/src/data-grid.component.d.ts +2 -2
- package/types/data-grid/src/designer/data-grid.design.component.d.ts +2 -2
- package/types/data-grid/src/property-config/data-grid.property-config.d.ts +1 -1
- package/types/data-view/components/column-setting/column-setting.component.d.ts +2 -1
- package/types/data-view/composition/types.d.ts +2 -0
- package/types/designer-canvas/src/composition/dg-control.d.ts +8 -8
- package/types/designer-canvas/src/composition/types.d.ts +1 -0
- package/types/dynamic-form/src/designer/use-designer-rules.d.ts +3 -3
- package/types/dynamic-form/src/types.d.ts +1 -1
- package/types/dynamic-resolver/index.d.ts +1 -0
- package/types/dynamic-resolver/src/converter/pagination.converter.d.ts +6 -0
- package/types/dynamic-resolver/src/visible-prop-resolver.d.ts +3 -0
- package/types/list-view/src/composition/types.d.ts +1 -1
- package/types/lookup/src/designer/use-lookup-rules.d.ts +3 -0
- package/types/lookup/src/property-config/converters/lookup-property.converter.d.ts +8 -0
- package/types/lookup/src/property-config/lookup.property-config.d.ts +29 -25
- package/types/mapping-editor/src/mapping-editor.props.d.ts +8 -0
- package/types/message-box/index.d.ts +84 -1
- package/types/modal/src/modal.component.d.ts +3 -3
- package/types/modal/src/modal.props.d.ts +3 -5
- package/types/notify/index.d.ts +84 -1
- package/types/page-header/src/page-header.props.d.ts +7 -0
- package/types/page-header/src/property-config/page-header.property-config.d.ts +1 -1
- package/types/property-panel/src/composition/entity/base-property.d.ts +2 -0
- package/types/response-toolbar/index.d.ts +9 -3
- package/types/response-toolbar/src/property-config/response-toolbar-item.property-config.d.ts +1 -1
- package/types/response-toolbar/src/property-config/response-toolbar.property-config.d.ts +1 -1
- package/types/response-toolbar/src/response-toolbar.component.d.ts +4 -2
- package/types/response-toolbar/src/response-toolbar.props.d.ts +9 -2
- package/types/schema-selector/src/composition/types.d.ts +3 -1
- package/types/schema-selector/src/schema-selector-editor.component.d.ts +5 -1
- package/types/tabs/src/designer/tab-toolbar.design.component.d.ts +1 -1
- package/types/tabs/src/tabs.props.d.ts +8 -0
- package/types/tree-grid/src/schema/column-resolver.d.ts +3 -0
- package/components/button-edit/style.css +0 -1
- package/components/designer-canvas/style.css +0 -1
- package/components/external-container/style.css +0 -1
- package/components/field-selector/style.css +0 -1
- package/components/flow-canvas/style.css +0 -1
- package/components/lookup/style.css +0 -1
- package/components/mapping-editor/style.css +0 -1
- package/components/message-box/style.css +0 -1
- package/components/modal/style.css +0 -1
- package/components/schema-selector/style.css +0 -1
- package/components/tabs/style.css +0 -1
- package/components/time-picker/style.css +0 -1
- package/style.css +0 -1
- package/types/tabs/src/designer/tab-toolbar-item.props.d.ts +0 -19
- /package/components/border-editor/{style.css → index.css} +0 -0
- /package/components/checkbox/{style.css → index.css} +0 -0
- /package/components/date-picker/{style.css → index.css} +0 -0
- /package/components/designer-outline/{style.css → index.css} +0 -0
- /package/components/designer-toolbox/{style.css → index.css} +0 -0
- /package/components/discussion-editor/{style.css → index.css} +0 -0
- /package/components/discussion-list/{style.css → index.css} +0 -0
- /package/components/drawer/{style.css → index.css} +0 -0
- /package/components/events-editor/{style.css → index.css} +0 -0
- /package/components/list-view/{style.css → index.css} +0 -0
- /package/components/order/{style.css → index.css} +0 -0
- /package/components/property-editor/{style.css → index.css} +0 -0
- /package/components/property-panel/{style.css → index.css} +0 -0
- /package/components/radio-button/{style.css → index.css} +0 -0
- /package/components/radio-group/{style.css → index.css} +0 -0
- /package/components/smoke-detector/{style.css → index.css} +0 -0
- /package/components/spacing-editor/{style.css → index.css} +0 -0
- /package/components/splitter/{style.css → index.css} +0 -0
- /package/components/switch/{style.css → index.css} +0 -0
- /package/components/transfer/{style.css → index.css} +0 -0
- /package/components/uploader/{style.css → index.css} +0 -0
- /package/components/weather/{style.css → index.css} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(C,o){typeof exports=="object"&&typeof module<"u"?o(exports,require("vue"),require("lodash-es"),require("@farris/ui-vue/components/common")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","@farris/ui-vue/components/common"],o):(C=typeof globalThis<"u"?globalThis:C||self,o(C.checkbox={},C.Vue,C.LodashES,C.common))})(this,function(C,o,w,$){"use strict";var fe=Object.defineProperty;var he=(C,o,w)=>o in C?fe(C,o,{enumerable:!0,configurable:!0,writable:!0,value:w}):C[o]=w;var F=(C,o,w)=>he(C,typeof o!="symbol"?o+"":o,w);const J={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-box",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"checkbox"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},text:{description:"",type:"string",default:""},value:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},z={},I={};function L(n){const{properties:e,title:t}=n,r=Object.keys(e).reduce((l,d)=>(l[d]=e[d].type==="object"&&e[d].properties?L(e[d]):w.cloneDeep(e[d].default),l),{});return r.id=`${t}-${Date.now()}`,r}function j(n,e={}){const t=z[n];if(t){let r=L(t);const l=I[n];return r=l?l({getSchemaByType:j},r,e):r,r}return null}function K(n,e){const t=L(e);return Object.keys(n).reduce((r,l)=>(r[l]=n[l],r),t),t}function ee(n,e){return Object.keys(n).filter(r=>n[r]!=null).reduce((r,l)=>{if(e.has(l)){const d=e.get(l);if(typeof d=="string")r[d]=n[l];else{const y=d(l,n[l],n);Object.assign(r,y)}}else r[l]=n[l];return r},{})}function te(n,e,t=new Map){const r=K(n,e);return ee(r,t)}function ne(n={}){function e(i,u,a,p){if(typeof a=="number")return p[i].length===a;if(typeof a=="object"){const s=Object.keys(a)[0],f=a[s];if(s==="not")return Number(p[i].length)!==Number(f);if(s==="moreThan")return Number(p[i].length)>=Number(f);if(s==="lessThan")return Number(p[i].length)<=Number(f)}return!1}function t(i,u,a,p){return p[i]&&p[i].propertyValue&&String(p[i].propertyValue.value)===String(a)}const r=new Map([["length",e],["getProperty",t]]);Object.keys(n).reduce((i,u)=>(i.set(u,n[u]),i),r);function l(i,u){const a=i;return typeof u=="number"?[{target:a,operator:"length",param:null,value:Number(u)}]:typeof u=="boolean"?[{target:a,operator:"getProperty",param:i,value:!!u}]:typeof u=="object"?Object.keys(u).map(p=>{if(p==="length")return{target:a,operator:"length",param:null,value:u[p]};const s=p,f=u[p];return{target:a,operator:"getProperty",param:s,value:f}}):[]}function d(i){return Object.keys(i).reduce((a,p)=>{const s=l(p,i[p]);return a.push(...s),a},[])}function y(i,u){if(r.has(i.operator)){const a=r.get(i.operator);return a&&a(i.target,i.param,i.value,u)||!1}return!1}function m(i,u){return d(i).reduce((s,f)=>s&&y(f,u),!0)}function h(i,u){const a=Object.keys(i),p=a.includes("allOf"),s=a.includes("anyOf"),f=p||s,b=(f?i[f?p?"allOf":"anyOf":"allOf"]:[i]).map(B=>m(B,u));return p?!b.includes(!1):b.includes(!0)}return{parseValueSchema:h}}const c={Button:{type:"Button",name:"按钮",icon:"Button"},ButtonGroup:{type:"ButtonGroup",name:"按钮组",icon:"ButtonGroup"},ToolBar:{type:"ToolBar",name:"工具栏",icon:"ButtonGroup"},ToolBarItem:{type:"ToolBarItem",name:"工具栏项",icon:"Button"},ContentContainer:{type:"ContentContainer",name:"容器",icon:"ContentContainer"},DisplayField:{type:"DisplayField",name:"标签",icon:"DisplayField"},"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"},FlexLayout:{type:"FlexLayout",name:"弹性布局"},FlowLayout:{type:"FlowLayout",name:"流布局"},ResponseLayout:{type:"ResponseLayout",name:"布局容器",icon:"ResponseLayout3"},ResponseLayoutItem:{type:"ResponseLayoutItem",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},TreeGridField:{type:"TreeGridField",name:"树表格列"},FieldSet:{type:"FieldSet",name:"分组",icon:"FieldSet"},Form:{type:"Form",name:"卡片面板",icon:"Form"},QueryForm:{type:"QueryForm",name:"查询面板",icon:"Form"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},Panel:{type:"Panel",name:"面板",icon:"ContentContainer"},Module:{type:"Module",name:"模块",icon:"Module"},Component:{type:"Component",name:"组件",icon:"Component"},ExternalContainer:{type:"ExternalContainer",name:"外部容器",icon:"ContentContainer"},Image:{type:"Image",name:"图像",icon:"Image"},ImageUpload:{type:"ImageUpload",name:"图片上传",icon:"imageupload"},HiddenContainer:{type:"HiddenContainer",name:"隐藏区域",icon:"ContentContainer"},ModalContainer:{type:"ModalContainer",name:"弹窗容器",icon:"ContentContainer"},RouteContainer:{type:"RouteContainer",name:"路由区域",icon:"ContentContainer"},Tab:{type:"Tab",name:"标签页",icon:"Tab"},TabPage:{type:"TabPage",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},Tag:{type:"Tag",name:"Tag",icon:"Tag"},Sidebar:{type:"Sidebar",name:"侧边栏",icon:"Sidebar"},HtmlTemplate:{type:"HtmlTemplate",name:"模版容器",icon:"HtmlTemplate"},ListView:{type:"ListView",name:"列表",icon:"ListView"},RichTextBox:{type:"RichTextBox",name:"富文本",icon:"RichTextBox"},TimeSpinner:{type:"TimeSpinner",name:"时间调节器",icon:"TimePicker"},TimePicker:{type:"TimePicker",name:"时间选择",icon:"TimePicker"},Section:{type:"Section",name:"分组面板",icon:"Section"},SectionToolbar:{type:"SectionToolbar",name:"分组面板工具栏"},SectionToolbarItem:{type:"SectionToolbarItem",name:"分组面板按钮"},QueryScheme:{type:"QueryScheme",name:"筛选方案",icon:"QueryScheme"},FormHeader:{type:"FormHeader",name:"翻页"},Splitter:{type:"Splitter",name:"分栏面板",icon:"Splitter"},SplitterPane:{type:"SplitterPane",name:"分栏面板项",dependentParentControl:"Splitter"},WizardDetail:{type:"WizardDetail",name:"向导详情页"},WizardDetailContainer:{type:"WizardDetailContainer",name:"向导详情容器"},Wizard:{type:"Wizard",name:"向导",icon:"Wizard"},MultiSelect:{type:"MultiSelect",name:"数据分配",icon:"MultiSelect"},Steps:{type:"Steps",name:"步骤条",icon:"Steps"},avatar:{type:"avatar",name:"头像",icon:"Avatar"},ListFilter:{type:"ListFilter",name:"筛选条",icon:"ListFilter"},ListNav:{type:"ListNav",name:"列表导航",icon:"ListNav"},NumberRange:{type:"NumberRange",name:"数字区间选择",icon:"NumericBox"},Scrollspy:{type:"Scrollspy",name:"滚动监听",icon:"Scrollspy"},LanguageTextBox:{type:"LanguageTextBox",name:"多语言输入框",icon:"LanguageTextBox"},ComponentRef:{type:"ComponentRef",name:"组件引用节点"},FileUpload:{type:"FileUpload",name:"附件上传",icon:"FileUpload"},FilePreview:{type:"FilePreview",name:"附件预览",icon:"FilePreview"},ViewChange:{type:"ViewChange",name:"多视图切换",icon:"Button"},MultiViewContainer:{type:"MultiViewContainer",name:"多视图",icon:"MultiViewContainer"},MultiViewItem:{type:"MultiViewItem",name:"多视图项",dependentParentControl:"MultiViewContainer"},Footer:{type:"Footer",name:"页脚"},DiscussionEditor:{type:"DiscussionEditor",name:"评论编辑区",icon:"DiscussionEditor"},DiscussionList:{type:"DiscussionList",name:"评论列表",icon:"DiscussionList"},NavTab:{type:"NavTab",name:"标签类导航",icon:"NavTab"},Tags:{type:"Tags",name:"标记组",icon:"Tags"},Portlet:{type:"Portlet",name:"小部件",icon:"dingzhi"},Header:{type:"Header",name:"页头",icon:"Header"},ModalFooter:{type:"ModalFooter",name:"弹窗页脚",icon:"ModalFooter"},ScrollCollapsibleArea:{type:"ScrollCollapsibleArea",name:"滚动收折区域",icon:"ScrollCollapsibleArea"},PersonnelSelector:{type:"PersonnelSelector",name:"人员选择",icon:"PersonnelSelector"},Table:{type:"Table",name:"表格",icon:"DataGrid"},LoopContainer:{type:"LoopContainer",name:"循环容器",icon:"ContentContainer"},FileUploadPreview:{type:"FileUploadPreview",name:"附件上传预览",icon:"FileUpload"},DynamicArea:{type:"DynamicArea",name:"动态区域",icon:"ContentContainer"},DynamicAreaItem:{type:"DynamicAreaItem",name:"动态区域项",icon:"ContentContainer"},TabToolbar:{type:"TabToolbar",name:"标签页工具栏",icon:"TabToolbar"},HeaderToolBar:{type:"HeaderToolBar",name:"头部组件工具栏",icon:"HeaderToolBar"},ModalFooterToolBar:{type:"ModalFooterToolBar",name:"底部组件工具栏",icon:"ModalFooterToolBar"},HeaderToolBarItem:{type:"HeaderToolBarItem",name:"头部组件工具栏按钮",icon:"HeaderToolBarItem"},ModalFooterToolBarItem:{type:"ModalFooterToolBarItem",name:"底部组件工具栏按钮",icon:"ModalFooterToolBarItem"},OrganizationSelector:{type:"OrganizationSelector",name:"组织选择",icon:"OrganizationSelector"},AdminOrganizationSelector:{type:"AdminOrganizationSelector",name:"组织选择",icon:"OrganizationSelector"},EmployeeSelector:{type:"EmployeeSelector",name:"人员选择",icon:"PersonnelSelector"},OaRelation:{type:"OaRelation",name:"关联行政审批",icon:"TextBox"},CitySelector:{type:"CitySelector",name:"城市选择",icon:"CitySelector"},ExtIntergration:{type:"ExtIntergration",name:"外部服务集成",icon:"ViewModel"},AppointmentCalendar:{type:"AppointmentCalendar",name:"预约日历",icon:"DateBox"},Charts:{type:"Charts",name:"图表",icon:"Charts"},QdpFramework:{type:"QdpFramework",name:"查询结果工具栏",icon:"QdpFramework"},SpreadSheet:{type:"SpreadSheet",name:"查询表格控件",icon:"Charts"},QdpConditionDialog:{type:"QdpConditionDialog",name:"查询筛选对话框",icon:"ContentContainer"},QdpConditionDialogTab:{type:"QdpConditionDialogTab",name:"查询筛选标签页",icon:"Tab"},ApprovalLogs:{type:"ApprovalLogs",name:"审批记录",icon:"ApprovalLogs"},ApprovalComments:{type:"ApprovalComments",name:"审批意见",icon:"shenpiyijian"}},oe={},re={};ne();function H(n,e,t=new Map,r=(y,m,h)=>m,l={},d=y=>y){return z[e.title]=e,I[e.title]=r,oe[e.title]=l,re[e.title]=d,(y={})=>{const m=te(y,e,t),h=Object.keys(n).reduce((i,u)=>(i[u]=n[u].default,i),{});return Object.assign(h,m)}}function ae(n,e){return{customClass:e.class,customStyle:e.style}}const q=new Map([["appearance",ae]]);function W(n,e,t){return e}const E={id:{Type:String,default:""},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},indeterminate:{Type:Boolean,default:!1},modelValue:{Type:Boolean,default:!1},focusOnCreated:{type:Boolean,default:!1},value:{type:String,default:""},name:{type:String,default:""},label:{type:String,default:""},checked:{type:Boolean,default:!1}},U=H(E,J,q,W),N=o.defineComponent({name:"FCheckBox",props:E,emits:["change","changeValue","update:modelValue","update:checked"],setup(n,e){const t=o.inject($.CHECKBOX_CONTEXT,null),{buttonClass:r,disabled:l,name:d,shouldRenderButton:y,shouldRenderNative:m,shouldRenderTag:h,tagClass:i,checked:u,onClickCheckBox:a}=$.useCheck(n,e,t==null?void 0:t.parentProps,t==null?void 0:t.parentContext);o.ref();const p=o.ref(n.id),s=o.ref(n.customClass),f=o.ref(n.modelValue),v=o.ref(n.indeterminate);return o.computed(()=>{const k={"custom-control":!0,"custom-checkbox":!0};return s.value&&s.value.split(" ").reduce((b,M)=>(b[M]=!0,b),k),k}),o.watch(()=>n.modelValue,k=>{f.value=k}),o.watch(()=>n.indeterminate,k=>{v.value=k}),o.onMounted(()=>{}),()=>{var k,b,M,B,D,x;return o.createVNode(o.Fragment,null,[y.value&&o.createVNode("div",{class:r.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:a},[(b=(k=e.slots).default)==null?void 0:b.call(k)]),h.value&&o.createVNode("div",{class:i.value,onClick:a},[o.createVNode("div",{class:"title"},[(B=(M=e.slots).default)==null?void 0:B.call(M)]),o.createVNode("div",{class:"tip"},null),o.createVNode("span",{class:"f-icon f-icon-check f-radio-icon"},null)]),m.value&&o.createVNode("div",{class:"custom-control custom-checkbox",onClick:a},[o.createVNode("input",{type:"checkbox",class:"custom-control-input",name:d.value,id:p,value:n.value,checked:u.value,disabled:l.value},null),o.createVNode("div",{class:"custom-control-label"},[(x=(D=e.slots).default)==null?void 0:x.call(D)])])])}}}),ie={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"checkbox"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{description:"",type:"boolean",default:!1},textField:{description:"",type:"string",default:"name"},valueField:{description:"",type:"string",default:"value"},enumData:{description:"",type:"array"},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},A={...{checked:{type:Boolean,default:!1},mode:{type:String,default:"default"},type:{type:String,default:"secondary"},size:{type:String,default:"middle"}},id:String,disabled:{type:Boolean,default:!1},enumData:{type:Array,default:[{name:"示例1",value:"example1"},{name:"示例2",value:"example2"}]},horizontal:{type:Boolean,default:!1},isStringValue:{type:Boolean,default:!0},loadData:{type:Function},modelValue:[String,Array],name:{type:String,default:""},separator:{type:String,default:","},tabIndex:{type:Number,default:0},textField:{type:String,default:"name"},valueField:{type:String,default:"value"}},G=H(A,ie,q,W);function Q(n,e,t){const r=o.computed(()=>!n.disabled),l=o.ref(n.enumData);function d(a){return a[n.valueField]}function y(a){return a[n.textField]}function m(a){return a?n.isStringValue?a.split(n.separator):a:[]}function h(a){const s=l.value.map(f=>d(f)).filter(f=>a.some(v=>v===String(f)));return n.isStringValue?s.join(n.separator):s}function i(a){const p=String(d(a));return m(t.value).some(f=>f===p)}function u(a,p){if(r.value){let s=m(t.value)||[];const f=String(d(a));!s||!s.length?s.push(f):s.some(v=>v===f)?s=s.filter(v=>v!==f):s.push(f),t.value=h(s),e.emit("changeValue",t.value),e.emit("update:modelValue",t.value)}p.stopPropagation()}return{enumData:l,getValue:d,getText:y,checked:i,onClickCheckbox:u}}const V=o.defineComponent({name:"FCheckGroup",props:A,emits:["changeValue","update:modelValue"],setup(n,e){const t=o.ref(n.modelValue),r=o.ref(n.horizontal),l=o.ref(n.tabIndex),d=o.ref(n.name),{enumData:y,onClickCheckbox:m,getValue:h,getText:i,checked:u}=Q(n,e,t),a=o.computed(()=>({"farris-checkradio-hor":r.value}));o.watch(()=>n.modelValue,s=>{t.value=s});const p=o.ref([]);return o.provide($.CHECKBOX_CONTEXT,{values:p,parentProps:n,parentContext:e}),()=>o.createVNode("div",{class:["farris-input-wrap",a.value]},[e.slots.default?e.slots.default():y.value.map((s,f)=>{const v="checkbox_"+d.value+f;return o.createVNode("div",{class:"custom-control custom-checkbox"},[o.createVNode("input",{type:"checkbox",class:"custom-control-input",name:d.value,id:v,value:h(s),checked:u(s),disabled:n.disabled,tabindex:l.value,onClick:k=>m(s,k)},null),o.createVNode("label",{class:"custom-control-label",for:v,title:i(s)},[i(s)])])})])}});function _(n,e,t){var x;function r(){t!=null&&t.resolveComponentContext&&t.resolveComponentContext()}r();const l=t&&t.getStyles&&t.getStyles()||"",d=t&&t.getDesignerClass&&t.getDesignerClass()||"",y=o.ref();function m(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanMoveComponent?t.checkCanMoveComponent():!0}function h(){return!1}function i(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanDeleteComponent?t.checkCanDeleteComponent():!0}function u(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:t&&t.hideNestedPaddingInDesginerView?t.hideNestedPaddingInDesginerView():!1}function a(g){if(!g||!g.value)return null;if(g.value.schema&&g.value.schema.type==="component")return g.value;const S=o.ref(g==null?void 0:g.value.parent),T=a(S);return T||null}function p(g=e){const{componentInstance:S,designerItemElementRef:T}=g;return!S||!S.value?null:S.value.canMove?T:p(g.parent)}function s(g){return!!t&&t.canAccepts(g)}function f(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function v(){}function k(g,S){S&&t!=null&&t.onAcceptMovedChildElement&&t.onAcceptMovedChildElement(S)}function b(g){const{componentType:S}=g;let T=j(S,g);t&&t.onResolveNewComponentSchema&&(T=t.onResolveNewComponentSchema(g,T));const O=S.toLowerCase().replace("-","_");return T&&!T.id&&T.type===S&&(T.id=`${O}_${Math.random().toString().slice(2,6)}`),T}function M(g,S){const T=String(g.getAttribute("data-controltype")),O=g.getAttribute("data-feature"),Z=O?JSON.parse(O):{};Z.parentComponentInstance=y.value;let P=j(T,Z);t&&t.onAcceptNewChildElement&&(P=t.onAcceptNewChildElement(g,S,P));const ye=T.toLowerCase().replace("-","_");return P&&!P.id&&P.type===T&&(P.id=`${ye}_${Math.random().toString().slice(2,6)}`),P}function B(g){}function D(...g){if(t&&t.getPropsConfig)return t.getPropsConfig(...g)}return y.value={canMove:m(),canSelectParent:h(),canDelete:i(),canNested:!u(),contents:e==null?void 0:e.schema.contents,elementRef:n,parent:(x=e==null?void 0:e.parent)==null?void 0:x.componentInstance,schema:e==null?void 0:e.schema,styles:l,designerClass:d,canAccepts:s,getBelongedComponentInstance:a,getDraggableDesignItemElement:p,getDraggingDisplayText:f,getPropConfig:D,getDragScopeElement:v,onAcceptMovedChildElement:k,onAcceptNewChildElement:M,onChildElementMovedOut:B,addNewChildComponentSchema:b,updateDragAndDropRules:r,triggerBelongedComponentToMoveWhenMoved:!!t&&t.triggerBelongedComponentToMoveWhenMoved||o.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!t&&t.triggerBelongedComponentToDeleteWhenDeleted||o.ref(!1)},y}function X(n,e){n.schema;const t=o.ref(!0),r=o.ref(!0);function l(a){return!1}function d(){return!1}function y(){return!1}function m(){return!0}function h(a){}function i(){}function u(a){return null}return{canAccepts:l,checkCanDeleteComponent:d,checkCanMoveComponent:y,hideNestedPaddingInDesginerView:m,onAcceptMovedChildElement:h,resolveComponentContext:i,triggerBelongedComponentToMoveWhenMoved:t,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}class R{static getEditorTypesByMDataType(e){return this.fieldControlTypeMapping[e]}}F(R,"fieldControlTypeMapping",{String:[{key:c["input-group"].type,value:c["input-group"].name},{key:c.lookup.type,value:c.lookup.name},{key:c.Image.type,value:c.Image.name},{key:c["date-picker"].type,value:c["date-picker"].name},{key:c["check-box"].type,value:c["check-box"].name},{key:c["radio-group"].type,value:c["radio-group"].name},{key:c["combo-list"].type,value:c["combo-list"].name},{key:c.textarea.type,value:c.textarea.name}],Text:[{key:c.textarea.type,value:c.textarea.name},{key:c.avatar.type,value:c.avatar.name},{key:c.lookup.type,value:c.lookup.name}],Decimal:[{key:c["number-spinner"].type,value:c["number-spinner"].name}],Integer:[{key:c["number-spinner"].type,value:c["number-spinner"].name}],Number:[{key:c["number-spinner"].type,value:c["number-spinner"].name}],BigNumber:[{key:c["number-spinner"].type,value:c["number-spinner"].name}],Date:[{key:c["date-picker"].type,value:c["date-picker"].name}],DateTime:[{key:c["date-picker"].type,value:c["date-picker"].name}],Boolean:[{key:c.switch.type,value:c.switch.name},{key:c["check-box"].type,value:c["check-box"].name}],Enum:[{key:c["combo-list"].type,value:c["combo-list"].name},{key:c["radio-group"].type,value:c["radio-group"].name}],Object:[{key:c.lookup.type,value:c.lookup.name},{key:c["combo-list"].type,value:c["combo-list"].name},{key:c["radio-group"].type,value:c["radio-group"].name}],EmployeeSelector:[{key:c.EmployeeSelector.type,value:c.EmployeeSelector.name}],AdminOrganizationSelector:[{key:c.AdminOrganizationSelector.type,value:c.AdminOrganizationSelector.name}]});class ce{constructor(e,t){F(this,"componentId");F(this,"viewModelId");F(this,"eventsEditorUtils");F(this,"formSchemaUtils");F(this,"formMetadataConverter");F(this,"designViewModelUtils");F(this,"designViewModelField");F(this,"controlCreatorUtils");F(this,"designerHostService");F(this,"metadataService",null);F(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=e,this.designerHostService=t,this.eventsEditorUtils=t.eventsEditorUtils,this.formSchemaUtils=t.formSchemaUtils,this.formMetadataConverter=t.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=t.designViewModelUtils,this.controlCreatorUtils=t.controlCreatorUtils,this.metadataService=t.metadataService}setDesignViewModelField(e){const t=e.binding&&e.binding.type==="Form"&&e.binding.field;if(t){if(!this.designViewModelField){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(l=>l.id===t)}e.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(e,t){}getBasicPropConfig(e){var t=this;return this.setDesignViewModelField(e),{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",data:R.getEditorTypesByMDataType(t.designViewModelField.type.name)}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"}},setPropertyRelates(r,l){if(r)switch(r&&r.propertyID){case"type":{t.changeControlType(e,r);break}}}}}changeControlType(e,t){var i,u,a,p,s;const r=t.propertyValue,l=this.formSchemaUtils.getComponentById(this.componentId);let d=this.getControlParentContainer(e.id,l);if(!d)return;const y=d.contents.findIndex(f=>f.id===e.id),m=d.contents[y];let h;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:r},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),h=this.controlCreatorUtils.setFormFieldProperty("Form",this.designViewModelField,null,r)),Object.assign(h,{id:m.id,appearance:m.appearance,size:m.size,label:m.label}),Object.assign(h.editor,{isTextArea:h.isTextArea&&m.isTextArea,type:r||"",placeHolder:(i=m.editor)==null?void 0:i.placeHolder,holdPlace:(u=m.editor)==null?void 0:u.holdPlace,readonly:(a=m.editor)==null?void 0:a.readonly,require:(p=m.editor)==null?void 0:p.require,visible:(s=m.editor)==null?void 0:s.visible}),d.contents.splice(y,1,h)}getAppearanceConfig(e=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"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!1,editor:{type:"response-layout-editor-setting"},$converter:"/converter/response-form-layout.converter"}}}}getControlParentContainer(e,t){let r;if(!t||!t.contents||t.contents.length===0)return null;for(const l of t.contents){if(l.id===e)return r=t,t;if(r=this.getControlParentContainer(e,l),r)return r}}getBindingFieldEditorOptions(e){const t=this.formSchemaUtils.getFormMetadataBasicInfo();return{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:e,formBasicInfo:t},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],beforeOpenDialog:r=>{const l=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);r.instance.loadData(l)},textField:"bindingField"}}}class Y extends ce{constructor(e,t){super(e,t)}getBasicProperties(e){let t=this.getBasicPropConfig(e);return t.properties.binding=this.getFieldSelectorOptions(e),t}getAppearanceProperties(e){return this.getAppearanceConfig(e)}getEditorProperties(e){return this.getComponentConfig(e)}getPropertyConfig(e){return this.propertyConfig.categories.basic=this.getBasicProperties(e),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getFieldSelectorOptions(e){const t=this.formSchemaUtils.getFormMetadataBasicInfo(),r=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);return{description:"绑定的表单字段",title:"绑定",$converter:"/converter/field-selector.converter",editor:{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:e,formBasicInfo:t},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],data:r}}}getComponentConfig(e,t={},r={}){const l=Object.assign({description:"组件信息",title:"组件信息",type:"input-group",$converter:"/converter/property-editor.converter"},t),d=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},r);return{...l,properties:{...d}}}}class le extends Y{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"check-group"},{placeholder:{visible:!1},textField:{description:"",title:"文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},enumData:{visible:!1,description:"",type:"array"}})}}class se extends Y{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"check-group"},{placeholder:{visible:!1},text:{description:"",title:"显示文本",type:"string"},value:{description:"",title:"选中值",type:"string"}})}}function pe(n,e){const{canAccepts:t,checkCanDeleteComponent:r,checkCanMoveComponent:l,hideNestedPaddingInDesginerView:d,onAcceptMovedChildElement:y,resolveComponentContext:m,triggerBelongedComponentToMoveWhenMoved:h,triggerBelongedComponentToDeleteWhenDeleted:i}=X(n),u=n.schema;function a(p){return new le(p,e).getPropertyConfig(u)}return{canAccepts:t,checkCanDeleteComponent:r,checkCanMoveComponent:l,hideNestedPaddingInDesginerView:d,onAcceptMovedChildElement:y,resolveComponentContext:m,triggerBelongedComponentToMoveWhenMoved:h,triggerBelongedComponentToDeleteWhenDeleted:i,getPropsConfig:a}}function de(n,e){const{canAccepts:t,checkCanDeleteComponent:r,checkCanMoveComponent:l,hideNestedPaddingInDesginerView:d,onAcceptMovedChildElement:y,resolveComponentContext:m,triggerBelongedComponentToMoveWhenMoved:h,triggerBelongedComponentToDeleteWhenDeleted:i}=X(n),u=n.schema;function a(p){return new se(p,e).getPropertyConfig(u)}return{canAccepts:t,checkCanDeleteComponent:r,checkCanMoveComponent:l,hideNestedPaddingInDesginerView:d,onAcceptMovedChildElement:y,resolveComponentContext:m,triggerBelongedComponentToMoveWhenMoved:h,triggerBelongedComponentToDeleteWhenDeleted:i,getPropsConfig:a}}const ue=o.defineComponent({name:"FCheckboxGroupDesign",props:A,emits:["changeValue","update:modelValue"],setup(n,e){const t=o.ref(n.modelValue),r=o.ref(n.horizontal),l=o.ref(n.tabIndex),d=o.ref(n.name),y=o.computed(()=>({"farris-checkradio-hor":r.value})),{enumData:m,onClickCheckbox:h,getValue:i,getText:u,checked:a}=Q(n,e,t),p=o.ref(),s=o.inject("designer-host-service"),f=o.inject("design-item-context"),v=pe(f,s),k=_(p,f,v);return o.onMounted(()=>{p.value.componentInstance=k}),e.expose(k.value),o.watch(()=>n.modelValue,b=>{t.value=b,e.emit("changeValue",t.value)}),()=>o.createVNode("div",{ref:p,class:["farris-input-wrap",y.value]},[m.value.map((b,M)=>{const B="checkbox_"+d.value+M;return o.createVNode("div",{class:"custom-control custom-checkbox"},[o.createVNode("input",{type:"checkbox",class:"custom-control-input",name:d.value,id:B,value:i(b),checked:a(b),disabled:n.disabled,tabindex:l.value,onClick:D=>h(b,D)},null),o.createVNode("label",{class:"custom-control-label",for:B,title:u(b)},[u(b)])])})])}}),me=o.defineComponent({name:"FCheckBoxDesign",props:E,emits:[],setup(n,e){const t=o.ref(),r=o.ref(n.id),l=o.ref(n.indeterminate),d=o.inject("designer-host-service"),y=o.inject("design-item-context"),m=de(y,d),h=_(t,y,m);return o.onMounted(()=>{t.value.componentInstance=h}),o.watch(()=>n.indeterminate,i=>{l.value=i}),e.expose(h.value),()=>o.createVNode("div",{ref:t,dragref:`${y.schema.id}-container`,class:"drag-container custom-control custom-checkbox"},[o.createVNode("input",{type:"checkbox",class:"custom-control-input",id:r,value:n.value,checked:n.modelValue,disabled:n.disabled},null)])}});V.install=n=>{n.component(V.name,V),n.component(N.name,N)},V.register=(n,e,t,r)=>{n["check-box"]=N,e["check-box"]=U,n["check-group"]=V,e["check-group"]=G},V.registerDesigner=(n,e,t)=>{n["check-box"]=me,e["check-box"]=U,n["check-group"]=ue,e["check-group"]=G},C.FCheckBox=N,C.FCheckBoxGroup=V,C.checkBoxGroupPropsResolver=G,C.checkBoxProps=E,C.checkBoxPropsResolver=U,C.checkboxGroupProps=A,C.default=V,Object.defineProperties(C,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(b,o){typeof exports=="object"&&typeof module<"u"?o(exports,require("vue"),require("lodash-es"),require("@farris/ui-vue/components/common")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","@farris/ui-vue/components/common"],o):(b=typeof globalThis<"u"?globalThis:b||self,o(b.checkbox={},b.Vue,b.LodashES,b.common))})(this,function(b,o,P,$){"use strict";var fe=Object.defineProperty;var he=(b,o,P)=>o in b?fe(b,o,{enumerable:!0,configurable:!0,writable:!0,value:P}):b[o]=P;var M=(b,o,P)=>he(b,typeof o!="symbol"?o+"":o,P);const J={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-box",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"checkbox"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},text:{description:"",type:"string",default:""},value:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},z={},I={};function L(n){const{properties:e,title:t}=n,r=Object.keys(e).reduce((i,s)=>(i[s]=e[s].type==="object"&&e[s].properties?L(e[s]):P.cloneDeep(e[s].default),i),{});return r.id=`${t}-${Date.now()}`,r}function j(n,e={}){const t=z[n];if(t){let r=L(t);const i=I[n];return r=i?i({getSchemaByType:j},r,e):r,r}return null}function K(n,e){const t=L(e);return Object.keys(n).reduce((r,i)=>(r[i]=n[i],r),t),t}function ee(n,e){return Object.keys(n).filter(r=>n[r]!=null).reduce((r,i)=>{if(e.has(i)){const s=e.get(i);if(typeof s=="string")r[s]=n[i];else{const y=s(i,n[i],n);Object.assign(r,y)}}else r[i]=n[i];return r},{})}function te(n,e,t=new Map){const r=K(n,e);return ee(r,t)}function ne(n={}){function e(c,u,a,d){if(typeof a=="number")return d[c].length===a;if(typeof a=="object"){const p=Object.keys(a)[0],f=a[p];if(p==="not")return Number(d[c].length)!==Number(f);if(p==="moreThan")return Number(d[c].length)>=Number(f);if(p==="lessThan")return Number(d[c].length)<=Number(f)}return!1}function t(c,u,a,d){return d[c]&&d[c].propertyValue&&String(d[c].propertyValue.value)===String(a)}const r=new Map([["length",e],["getProperty",t]]);Object.keys(n).reduce((c,u)=>(c.set(u,n[u]),c),r);function i(c,u){const a=c;return typeof u=="number"?[{target:a,operator:"length",param:null,value:Number(u)}]:typeof u=="boolean"?[{target:a,operator:"getProperty",param:c,value:!!u}]:typeof u=="object"?Object.keys(u).map(d=>{if(d==="length")return{target:a,operator:"length",param:null,value:u[d]};const p=d,f=u[d];return{target:a,operator:"getProperty",param:p,value:f}}):[]}function s(c){return Object.keys(c).reduce((a,d)=>{const p=i(d,c[d]);return a.push(...p),a},[])}function y(c,u){if(r.has(c.operator)){const a=r.get(c.operator);return a&&a(c.target,c.param,c.value,u)||!1}return!1}function m(c,u){return s(c).reduce((p,f)=>p&&y(f,u),!0)}function h(c,u){const a=Object.keys(c),d=a.includes("allOf"),p=a.includes("anyOf"),f=d||p,C=(f?c[f?d?"allOf":"anyOf":"allOf"]:[c]).map(V=>m(V,u));return d?!C.includes(!1):C.includes(!0)}return{parseValueSchema:h}}const l={Button:{type:"Button",name:"按钮",icon:"Button"},ButtonGroup:{type:"ButtonGroup",name:"按钮组",icon:"ButtonGroup"},"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"},DisplayField:{type:"DisplayField",name:"标签",icon:"DisplayField"},"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"},FlexLayout:{type:"FlexLayout",name:"弹性布局"},FlowLayout:{type:"FlowLayout",name:"流布局"},ResponseLayout:{type:"ResponseLayout",name:"布局容器",icon:"ResponseLayout3"},ResponseLayoutItem:{type:"ResponseLayoutItem",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},TreeGridField:{type:"TreeGridField",name:"树表格列"},FieldSet:{type:"FieldSet",name:"分组",icon:"FieldSet"},Form:{type:"Form",name:"卡片面板",icon:"Form"},QueryForm:{type:"QueryForm",name:"查询面板",icon:"Form"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},Panel:{type:"Panel",name:"面板",icon:"ContentContainer"},Module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},ExternalContainer:{type:"ExternalContainer",name:"外部容器",icon:"ContentContainer"},Image:{type:"Image",name:"图像",icon:"Image"},ImageUpload:{type:"ImageUpload",name:"图片上传",icon:"imageupload"},HiddenContainer:{type:"HiddenContainer",name:"隐藏区域",icon:"ContentContainer"},ModalContainer:{type:"ModalContainer",name:"弹窗容器",icon:"ContentContainer"},RouteContainer:{type:"RouteContainer",name:"路由区域",icon:"ContentContainer"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},Tag:{type:"Tag",name:"Tag",icon:"Tag"},Sidebar:{type:"Sidebar",name:"侧边栏",icon:"Sidebar"},HtmlTemplate:{type:"HtmlTemplate",name:"模版容器",icon:"HtmlTemplate"},ListView:{type:"ListView",name:"列表",icon:"ListView"},RichTextBox:{type:"RichTextBox",name:"富文本",icon:"RichTextBox"},TimeSpinner:{type:"TimeSpinner",name:"时间调节器",icon:"TimePicker"},TimePicker:{type:"TimePicker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},SectionToolbar:{type:"SectionToolbar",name:"分组面板工具栏"},SectionToolbarItem:{type:"SectionToolbarItem",name:"分组面板按钮"},QueryScheme:{type:"QueryScheme",name:"筛选方案",icon:"QueryScheme"},FormHeader:{type:"FormHeader",name:"翻页"},Splitter:{type:"Splitter",name:"分栏面板",icon:"Splitter"},SplitterPane:{type:"SplitterPane",name:"分栏面板项",dependentParentControl:"Splitter"},WizardDetail:{type:"WizardDetail",name:"向导详情页"},WizardDetailContainer:{type:"WizardDetailContainer",name:"向导详情容器"},Wizard:{type:"Wizard",name:"向导",icon:"Wizard"},MultiSelect:{type:"MultiSelect",name:"数据分配",icon:"MultiSelect"},Steps:{type:"Steps",name:"步骤条",icon:"Steps"},avatar:{type:"avatar",name:"头像",icon:"Avatar"},ListFilter:{type:"ListFilter",name:"筛选条",icon:"ListFilter"},ListNav:{type:"ListNav",name:"列表导航",icon:"ListNav"},NumberRange:{type:"NumberRange",name:"数字区间选择",icon:"NumericBox"},Scrollspy:{type:"Scrollspy",name:"滚动监听",icon:"Scrollspy"},LanguageTextBox:{type:"LanguageTextBox",name:"多语言输入框",icon:"LanguageTextBox"},ComponentRef:{type:"ComponentRef",name:"组件引用节点"},FileUpload:{type:"FileUpload",name:"附件上传",icon:"FileUpload"},FilePreview:{type:"FilePreview",name:"附件预览",icon:"FilePreview"},ViewChange:{type:"ViewChange",name:"多视图切换",icon:"Button"},MultiViewContainer:{type:"MultiViewContainer",name:"多视图",icon:"MultiViewContainer"},MultiViewItem:{type:"MultiViewItem",name:"多视图项",dependentParentControl:"MultiViewContainer"},Footer:{type:"Footer",name:"页脚"},DiscussionEditor:{type:"DiscussionEditor",name:"评论编辑区",icon:"DiscussionEditor"},DiscussionList:{type:"DiscussionList",name:"评论列表",icon:"DiscussionList"},NavTab:{type:"NavTab",name:"标签类导航",icon:"NavTab"},Tags:{type:"Tags",name:"标记组",icon:"Tags"},Portlet:{type:"Portlet",name:"小部件",icon:"dingzhi"},"page-header":{type:"page-header",name:"页头",icon:"Header"},ModalFooter:{type:"ModalFooter",name:"弹窗页脚",icon:"ModalFooter"},ScrollCollapsibleArea:{type:"ScrollCollapsibleArea",name:"滚动收折区域",icon:"ScrollCollapsibleArea"},PersonnelSelector:{type:"PersonnelSelector",name:"人员选择",icon:"PersonnelSelector"},Table:{type:"Table",name:"表格",icon:"DataGrid"},LoopContainer:{type:"LoopContainer",name:"循环容器",icon:"ContentContainer"},FileUploadPreview:{type:"FileUploadPreview",name:"附件上传预览",icon:"FileUpload"},DynamicArea:{type:"DynamicArea",name:"动态区域",icon:"ContentContainer"},DynamicAreaItem:{type:"DynamicAreaItem",name:"动态区域项",icon:"ContentContainer"},TabToolbar:{type:"TabToolbar",name:"标签页工具栏",icon:"TabToolbar"},HeaderToolBar:{type:"HeaderToolBar",name:"头部组件工具栏",icon:"HeaderToolBar"},ModalFooterToolBar:{type:"ModalFooterToolBar",name:"底部组件工具栏",icon:"ModalFooterToolBar"},HeaderToolBarItem:{type:"HeaderToolBarItem",name:"头部组件工具栏按钮",icon:"HeaderToolBarItem"},ModalFooterToolBarItem:{type:"ModalFooterToolBarItem",name:"底部组件工具栏按钮",icon:"ModalFooterToolBarItem"},OrganizationSelector:{type:"OrganizationSelector",name:"组织选择",icon:"OrganizationSelector"},AdminOrganizationSelector:{type:"AdminOrganizationSelector",name:"组织选择",icon:"OrganizationSelector"},EmployeeSelector:{type:"EmployeeSelector",name:"人员选择",icon:"PersonnelSelector"},OaRelation:{type:"OaRelation",name:"关联行政审批",icon:"TextBox"},CitySelector:{type:"CitySelector",name:"城市选择",icon:"CitySelector"},ExtIntergration:{type:"ExtIntergration",name:"外部服务集成",icon:"ViewModel"},AppointmentCalendar:{type:"AppointmentCalendar",name:"预约日历",icon:"DateBox"},Charts:{type:"Charts",name:"图表",icon:"Charts"},QdpFramework:{type:"QdpFramework",name:"查询结果工具栏",icon:"QdpFramework"},SpreadSheet:{type:"SpreadSheet",name:"查询表格控件",icon:"Charts"},QdpConditionDialog:{type:"QdpConditionDialog",name:"查询筛选对话框",icon:"ContentContainer"},QdpConditionDialogTab:{type:"QdpConditionDialogTab",name:"查询筛选标签页",icon:"Tab"},ApprovalLogs:{type:"ApprovalLogs",name:"审批记录",icon:"ApprovalLogs"},ApprovalComments:{type:"ApprovalComments",name:"审批意见",icon:"shenpiyijian"}},oe={},re={};ne();function q(n,e,t=new Map,r=(y,m,h)=>m,i={},s=y=>y){return z[e.title]=e,I[e.title]=r,oe[e.title]=i,re[e.title]=s,(y={})=>{const m=te(y,e,t),h=Object.keys(n).reduce((c,u)=>(c[u]=n[u].default,c),{});return Object.assign(h,m)}}function ae(n,e){return{customClass:e.class,customStyle:e.style}}const W=new Map([["appearance",ae]]);function H(n,e,t){return e}const E={id:{Type:String,default:""},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},indeterminate:{Type:Boolean,default:!1},modelValue:{Type:Boolean,default:!1},focusOnCreated:{type:Boolean,default:!1},value:{type:String,default:""},name:{type:String,default:""},label:{type:String,default:""},checked:{type:Boolean,default:!1}},U=q(E,J,W,H),N=o.defineComponent({name:"FCheckBox",props:E,emits:["change","changeValue","update:modelValue","update:checked"],setup(n,e){const t=o.inject($.CHECKBOX_CONTEXT,null),{buttonClass:r,disabled:i,name:s,shouldRenderButton:y,shouldRenderNative:m,shouldRenderTag:h,tagClass:c,checked:u,onClickCheckBox:a}=$.useCheck(n,e,t==null?void 0:t.parentProps,t==null?void 0:t.parentContext);o.ref();const d=o.ref(n.id),p=o.ref(n.customClass),f=o.ref(n.modelValue),v=o.ref(n.indeterminate);return o.computed(()=>{const k={"custom-control":!0,"custom-checkbox":!0};return p.value&&p.value.split(" ").reduce((C,F)=>(C[F]=!0,C),k),k}),o.watch(()=>n.modelValue,k=>{f.value=k}),o.watch(()=>n.indeterminate,k=>{v.value=k}),o.onMounted(()=>{}),()=>{var k,C,F,V,D,x;return o.createVNode(o.Fragment,null,[y.value&&o.createVNode("div",{class:r.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:a},[(C=(k=e.slots).default)==null?void 0:C.call(k)]),h.value&&o.createVNode("div",{class:c.value,onClick:a},[o.createVNode("div",{class:"title"},[(V=(F=e.slots).default)==null?void 0:V.call(F)]),o.createVNode("div",{class:"tip"},null),o.createVNode("span",{class:"f-icon f-icon-check f-radio-icon"},null)]),m.value&&o.createVNode("div",{class:"custom-control custom-checkbox",onClick:a},[o.createVNode("input",{type:"checkbox",class:"custom-control-input",name:s.value,id:d,value:n.value,checked:u.value,disabled:i.value},null),o.createVNode("div",{class:"custom-control-label"},[(x=(D=e.slots).default)==null?void 0:x.call(D)])])])}}}),ie={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"checkbox"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{description:"",type:"boolean",default:!1},textField:{description:"",type:"string",default:"name"},valueField:{description:"",type:"string",default:"value"},enumData:{description:"",type:"array"},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},A={...{checked:{type:Boolean,default:!1},mode:{type:String,default:"default"},type:{type:String,default:"secondary"},size:{type:String,default:"middle"}},id:String,disabled:{type:Boolean,default:!1},enumData:{type:Array,default:[{name:"示例1",value:"example1"},{name:"示例2",value:"example2"}]},horizontal:{type:Boolean,default:!1},isStringValue:{type:Boolean,default:!0},loadData:{type:Function},modelValue:[String,Array],name:{type:String,default:""},separator:{type:String,default:","},tabIndex:{type:Number,default:0},textField:{type:String,default:"name"},valueField:{type:String,default:"value"}},G=q(A,ie,W,H);function Q(n,e,t){const r=o.computed(()=>!n.disabled),i=o.ref(n.enumData);function s(a){return a[n.valueField]}function y(a){return a[n.textField]}function m(a){return a?n.isStringValue?a.split(n.separator):a:[]}function h(a){const p=i.value.map(f=>s(f)).filter(f=>a.some(v=>v===String(f)));return n.isStringValue?p.join(n.separator):p}function c(a){const d=String(s(a));return m(t.value).some(f=>f===d)}function u(a,d){if(r.value){let p=m(t.value)||[];const f=String(s(a));!p||!p.length?p.push(f):p.some(v=>v===f)?p=p.filter(v=>v!==f):p.push(f),t.value=h(p),e.emit("changeValue",t.value),e.emit("update:modelValue",t.value)}d.stopPropagation()}return{enumData:i,getValue:s,getText:y,checked:c,onClickCheckbox:u}}const B=o.defineComponent({name:"FCheckGroup",props:A,emits:["changeValue","update:modelValue"],setup(n,e){const t=o.ref(n.modelValue),r=o.ref(n.horizontal),i=o.ref(n.tabIndex),s=o.ref(n.name),{enumData:y,onClickCheckbox:m,getValue:h,getText:c,checked:u}=Q(n,e,t),a=o.computed(()=>({"farris-checkradio-hor":r.value}));o.watch(()=>n.modelValue,p=>{t.value=p});const d=o.ref([]);return o.provide($.CHECKBOX_CONTEXT,{values:d,parentProps:n,parentContext:e}),()=>o.createVNode("div",{class:["farris-input-wrap",a.value]},[e.slots.default?e.slots.default():y.value.map((p,f)=>{const v="checkbox_"+s.value+f;return o.createVNode("div",{class:"custom-control custom-checkbox"},[o.createVNode("input",{type:"checkbox",class:"custom-control-input",name:s.value,id:v,value:h(p),checked:u(p),disabled:n.disabled,tabindex:i.value,onClick:k=>m(p,k)},null),o.createVNode("label",{class:"custom-control-label",for:v,title:c(p)},[c(p)])])})])}});function _(n,e,t){var x;function r(){t!=null&&t.resolveComponentContext&&t.resolveComponentContext()}r();const i=t&&t.getStyles&&t.getStyles()||"",s=t&&t.getDesignerClass&&t.getDesignerClass()||"",y=o.ref();function m(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanMoveComponent?t.checkCanMoveComponent():!0}function h(){return!1}function c(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanDeleteComponent?t.checkCanDeleteComponent():!0}function u(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:t&&t.hideNestedPaddingInDesginerView?t.hideNestedPaddingInDesginerView():!1}function a(g){if(!g||!g.value)return null;if(g.value.schema&&g.value.schema.type==="component")return g.value;const S=o.ref(g==null?void 0:g.value.parent),T=a(S);return T||null}function d(g=e){const{componentInstance:S,designerItemElementRef:T}=g;return!S||!S.value?null:S.value.canMove?T:d(g.parent)}function p(g){return!!t&&t.canAccepts(g)}function f(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function v(){}function k(g,S){S&&t!=null&&t.onAcceptMovedChildElement&&t.onAcceptMovedChildElement(S)}function C(g){const{componentType:S}=g;let T=j(S,g);t&&t.onResolveNewComponentSchema&&(T=t.onResolveNewComponentSchema(g,T));const O=S.toLowerCase().replace("-","_");return T&&!T.id&&T.type===S&&(T.id=`${O}_${Math.random().toString().slice(2,6)}`),T}function F(g,S){const T=String(g.getAttribute("data-controltype")),O=g.getAttribute("data-feature"),Z=O?JSON.parse(O):{};Z.parentComponentInstance=y.value;let w=j(T,Z);t&&t.onAcceptNewChildElement&&(w=t.onAcceptNewChildElement(g,S,w));const ye=T.toLowerCase().replace("-","_");return w&&!w.id&&w.type===T&&(w.id=`${ye}_${Math.random().toString().slice(2,6)}`),w}function V(g){}function D(...g){if(t&&t.getPropsConfig)return t.getPropsConfig(...g)}return y.value={canMove:m(),canSelectParent:h(),canDelete:c(),canNested:!u(),contents:e==null?void 0:e.schema.contents,elementRef:n,parent:(x=e==null?void 0:e.parent)==null?void 0:x.componentInstance,schema:e==null?void 0:e.schema,styles:i,designerClass:s,canAccepts:p,getBelongedComponentInstance:a,getDraggableDesignItemElement:d,getDraggingDisplayText:f,getPropConfig:D,getDragScopeElement:v,onAcceptMovedChildElement:k,onAcceptNewChildElement:F,onChildElementMovedOut:V,addNewChildComponentSchema:C,updateDragAndDropRules:r,triggerBelongedComponentToMoveWhenMoved:!!t&&t.triggerBelongedComponentToMoveWhenMoved||o.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!t&&t.triggerBelongedComponentToDeleteWhenDeleted||o.ref(!1)},y}function X(n,e){n.schema;const t=o.ref(!0),r=o.ref(!0);function i(a){return!1}function s(){return!1}function y(){return!1}function m(){return!0}function h(a){}function c(){}function u(a){return null}return{canAccepts:i,checkCanDeleteComponent:s,checkCanMoveComponent:y,hideNestedPaddingInDesginerView:m,onAcceptMovedChildElement:h,resolveComponentContext:c,triggerBelongedComponentToMoveWhenMoved:t,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}class R{static getEditorTypesByMDataType(e){const t=this.fieldControlTypeMapping[e];return t||[{key:"",value:""}]}}M(R,"fieldControlTypeMapping",{String:[{key:l["input-group"].type,value:l["input-group"].name},{key:l.lookup.type,value:l.lookup.name},{key:l.Image.type,value:l.Image.name},{key:l["date-picker"].type,value:l["date-picker"].name},{key:l["check-box"].type,value:l["check-box"].name},{key:l["radio-group"].type,value:l["radio-group"].name},{key:l["combo-list"].type,value:l["combo-list"].name},{key:l.textarea.type,value:l.textarea.name}],Text:[{key:l.textarea.type,value:l.textarea.name},{key:l.avatar.type,value:l.avatar.name},{key:l.lookup.type,value:l.lookup.name}],Decimal:[{key:l["number-spinner"].type,value:l["number-spinner"].name}],Integer:[{key:l["number-spinner"].type,value:l["number-spinner"].name}],Number:[{key:l["number-spinner"].type,value:l["number-spinner"].name}],BigNumber:[{key:l["number-spinner"].type,value:l["number-spinner"].name}],Date:[{key:l["date-picker"].type,value:l["date-picker"].name}],DateTime:[{key:l["date-picker"].type,value:l["date-picker"].name}],Boolean:[{key:l.switch.type,value:l.switch.name},{key:l["check-box"].type,value:l["check-box"].name}],Enum:[{key:l["combo-list"].type,value:l["combo-list"].name},{key:l["radio-group"].type,value:l["radio-group"].name}],Object:[{key:l.lookup.type,value:l.lookup.name},{key:l["combo-list"].type,value:l["combo-list"].name},{key:l["radio-group"].type,value:l["radio-group"].name}],EmployeeSelector:[{key:l.EmployeeSelector.type,value:l.EmployeeSelector.name}],AdminOrganizationSelector:[{key:l.AdminOrganizationSelector.type,value:l.AdminOrganizationSelector.name}]});class ce{constructor(e,t){M(this,"componentId");M(this,"viewModelId");M(this,"eventsEditorUtils");M(this,"formSchemaUtils");M(this,"formMetadataConverter");M(this,"designViewModelUtils");M(this,"designViewModelField");M(this,"controlCreatorUtils");M(this,"designerHostService");M(this,"schemaService",null);M(this,"metadataService",null);M(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=e,this.designerHostService=t,this.eventsEditorUtils=t.eventsEditorUtils,this.formSchemaUtils=t.formSchemaUtils,this.formMetadataConverter=t.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=t.designViewModelUtils,this.controlCreatorUtils=t.controlCreatorUtils,this.metadataService=t.metadataService,this.schemaService=t.schemaService}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){const t=e.binding&&e.binding.type==="Form"&&e.binding.field;if(t){if(!this.designViewModelField){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(i=>i.id===t)}e.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(e,t){}getBasicPropConfig(e){var r,i;var t=this;return this.setDesignViewModelField(e),{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",data:R.getEditorTypesByMDataType(((i=(r=t.designViewModelField)==null?void 0:r.type)==null?void 0:i.name)||""),editable:!1}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"}},setPropertyRelates(s,y){if(s)switch(s&&s.propertyID){case"type":{t.changeControlType(e,s);break}}}}}changeControlType(e,t){var c,u,a,d,p;const r=t.propertyValue,i=this.formSchemaUtils.getComponentById(this.componentId);let s=this.getControlParentContainer(e.id,i);if(!s)return;const y=s.contents.findIndex(f=>f.id===e.id),m=s.contents[y];let h;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:r},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),h=this.controlCreatorUtils.setFormFieldProperty("Form",this.designViewModelField,null,r)),Object.assign(h,{id:m.id,appearance:m.appearance,size:m.size,label:m.label}),Object.assign(h.editor,{isTextArea:h.isTextArea&&m.isTextArea,type:r||"",placeHolder:(c=m.editor)==null?void 0:c.placeHolder,holdPlace:(u=m.editor)==null?void 0:u.holdPlace,readonly:(a=m.editor)==null?void 0:a.readonly,require:(d=m.editor)==null?void 0:d.require,visible:(p=m.editor)==null?void 0:p.visible}),s.contents.splice(y,1,h)}getAppearanceConfig(e=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"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!1,editor:{type:"response-layout-editor-setting"},$converter:"/converter/response-form-layout.converter"}}}}getControlParentContainer(e,t){let r;if(!t||!t.contents||t.contents.length===0)return null;for(const i of t.contents){if(i.id===e)return r=t,t;if(r=this.getControlParentContainer(e,i),r)return r}}getBindingFieldEditorOptions(e){const t=this.formSchemaUtils.getFormMetadataBasicInfo();return{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:e,formBasicInfo:t},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],beforeOpenDialog:r=>{const i=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);r.instance.loadData(i)},textField:"bindingField"}}}class Y extends ce{constructor(e,t){super(e,t)}getBasicProperties(e){let t=this.getBasicPropConfig(e);return t.properties.binding=this.getFieldSelectorOptions(e),t}getAppearanceProperties(e){return this.getAppearanceConfig(e)}getEditorProperties(e){return this.getComponentConfig(e)}getPropertyConfig(e){return this.propertyConfig.categories.basic=this.getBasicProperties(e),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getFieldSelectorOptions(e){const t=this.formSchemaUtils.getFormMetadataBasicInfo(),r=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);return{description:"绑定的表单字段",title:"绑定",$converter:"/converter/field-selector.converter",editor:{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:e,formBasicInfo:t},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],data:r}}}getComponentConfig(e,t={},r={}){const i=Object.assign({description:"组件信息",title:"组件信息",type:"input-group",$converter:"/converter/property-editor.converter"},t),s=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},r);return{...i,properties:{...s}}}}class le extends Y{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"check-group"},{placeholder:{visible:!1},textField:{description:"",title:"文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},enumData:{visible:!1,description:"",type:"array"}})}}class se extends Y{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"check-group"},{placeholder:{visible:!1},text:{description:"",title:"显示文本",type:"string"},value:{description:"",title:"选中值",type:"string"}})}}function pe(n,e){const{canAccepts:t,checkCanDeleteComponent:r,checkCanMoveComponent:i,hideNestedPaddingInDesginerView:s,onAcceptMovedChildElement:y,resolveComponentContext:m,triggerBelongedComponentToMoveWhenMoved:h,triggerBelongedComponentToDeleteWhenDeleted:c}=X(n),u=n.schema;function a(d){return new le(d,e).getPropertyConfig(u)}return{canAccepts:t,checkCanDeleteComponent:r,checkCanMoveComponent:i,hideNestedPaddingInDesginerView:s,onAcceptMovedChildElement:y,resolveComponentContext:m,triggerBelongedComponentToMoveWhenMoved:h,triggerBelongedComponentToDeleteWhenDeleted:c,getPropsConfig:a}}function de(n,e){const{canAccepts:t,checkCanDeleteComponent:r,checkCanMoveComponent:i,hideNestedPaddingInDesginerView:s,onAcceptMovedChildElement:y,resolveComponentContext:m,triggerBelongedComponentToMoveWhenMoved:h,triggerBelongedComponentToDeleteWhenDeleted:c}=X(n),u=n.schema;function a(d){return new se(d,e).getPropertyConfig(u)}return{canAccepts:t,checkCanDeleteComponent:r,checkCanMoveComponent:i,hideNestedPaddingInDesginerView:s,onAcceptMovedChildElement:y,resolveComponentContext:m,triggerBelongedComponentToMoveWhenMoved:h,triggerBelongedComponentToDeleteWhenDeleted:c,getPropsConfig:a}}const ue=o.defineComponent({name:"FCheckboxGroupDesign",props:A,emits:["changeValue","update:modelValue"],setup(n,e){const t=o.ref(n.modelValue),r=o.ref(n.horizontal),i=o.ref(n.tabIndex),s=o.ref(n.name),y=o.computed(()=>({"farris-checkradio-hor":r.value})),{enumData:m,onClickCheckbox:h,getValue:c,getText:u,checked:a}=Q(n,e,t),d=o.ref(),p=o.inject("designer-host-service"),f=o.inject("design-item-context"),v=pe(f,p),k=_(d,f,v);return o.onMounted(()=>{d.value.componentInstance=k}),e.expose(k.value),o.watch(()=>n.modelValue,C=>{t.value=C,e.emit("changeValue",t.value)}),()=>o.createVNode("div",{ref:d,class:["farris-input-wrap",y.value]},[m.value.map((C,F)=>{const V="checkbox_"+s.value+F;return o.createVNode("div",{class:"custom-control custom-checkbox"},[o.createVNode("input",{type:"checkbox",class:"custom-control-input",name:s.value,id:V,value:c(C),checked:a(C),disabled:n.disabled,tabindex:i.value,onClick:D=>h(C,D)},null),o.createVNode("label",{class:"custom-control-label",for:V,title:u(C)},[u(C)])])})])}}),me=o.defineComponent({name:"FCheckBoxDesign",props:E,emits:[],setup(n,e){const t=o.ref(),r=o.ref(n.id),i=o.ref(n.indeterminate),s=o.inject("designer-host-service"),y=o.inject("design-item-context"),m=de(y,s),h=_(t,y,m);return o.onMounted(()=>{t.value.componentInstance=h}),o.watch(()=>n.indeterminate,c=>{i.value=c}),e.expose(h.value),()=>o.createVNode("div",{ref:t,dragref:`${y.schema.id}-container`,class:"drag-container custom-control custom-checkbox"},[o.createVNode("input",{type:"checkbox",class:"custom-control-input",id:r,value:n.value,checked:n.modelValue,disabled:n.disabled},null),o.createVNode("div",{class:"custom-control-label"},null)])}});B.install=n=>{n.component(B.name,B),n.component(N.name,N)},B.register=(n,e,t,r)=>{n["check-box"]=N,e["check-box"]=U,n["check-group"]=B,e["check-group"]=G},B.registerDesigner=(n,e,t)=>{n["check-box"]=me,e["check-box"]=U,n["check-group"]=ue,e["check-group"]=G},b.FCheckBox=N,b.FCheckBoxGroup=B,b.checkBoxGroupPropsResolver=G,b.checkBoxProps=E,b.checkBoxPropsResolver=U,b.checkboxGroupProps=A,b.default=B,Object.defineProperties(b,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var C = (e, t, n) =>
|
|
4
|
-
import { defineComponent as I, ref as f, watch as x, computed as
|
|
1
|
+
var j = Object.defineProperty;
|
|
2
|
+
var H = (e, t, n) => t in e ? j(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
|
|
3
|
+
var C = (e, t, n) => H(e, typeof t != "symbol" ? t + "" : t, n);
|
|
4
|
+
import { defineComponent as I, ref as f, watch as x, computed as B, createVNode as M, inject as D, onMounted as z } from "vue";
|
|
5
5
|
import { cloneDeep as $ } from "lodash-es";
|
|
6
6
|
import G from "@farris/ui-vue/components/list-view";
|
|
7
7
|
import L from "@farris/ui-vue/components/button-edit";
|
|
@@ -91,9 +91,9 @@ function _(e = {}) {
|
|
|
91
91
|
const l = {
|
|
92
92
|
Button: { type: "Button", name: "按钮", icon: "Button" },
|
|
93
93
|
ButtonGroup: { type: "ButtonGroup", name: "按钮组", icon: "ButtonGroup" },
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
94
|
+
"response-toolbar": { type: "response-toolbar", name: "工具栏", icon: "ButtonGroup" },
|
|
95
|
+
"response-toolbar-item": { type: "response-toolbar-item", name: "工具栏项", icon: "Button" },
|
|
96
|
+
"content-container": { type: "content-container", name: "容器", icon: "ContentContainer" },
|
|
97
97
|
DisplayField: { type: "DisplayField", name: "标签", icon: "DisplayField" },
|
|
98
98
|
"input-group": { type: "input-group", name: "文本", icon: "TextBox" },
|
|
99
99
|
textarea: { type: "textarea", name: "多行文本", icon: "MultiTextBox" },
|
|
@@ -120,15 +120,15 @@ const l = {
|
|
|
120
120
|
"data-grid-column": { type: "data-grid-column", name: "表格列" },
|
|
121
121
|
Panel: { type: "Panel", name: "面板", icon: "ContentContainer" },
|
|
122
122
|
Module: { type: "Module", name: "模块", icon: "Module" },
|
|
123
|
-
|
|
123
|
+
component: { type: "component", name: "组件", icon: "Component" },
|
|
124
124
|
ExternalContainer: { type: "ExternalContainer", name: "外部容器", icon: "ContentContainer" },
|
|
125
125
|
Image: { type: "Image", name: "图像", icon: "Image" },
|
|
126
126
|
ImageUpload: { type: "ImageUpload", name: "图片上传", icon: "imageupload" },
|
|
127
127
|
HiddenContainer: { type: "HiddenContainer", name: "隐藏区域", icon: "ContentContainer" },
|
|
128
128
|
ModalContainer: { type: "ModalContainer", name: "弹窗容器", icon: "ContentContainer" },
|
|
129
129
|
RouteContainer: { type: "RouteContainer", name: "路由区域", icon: "ContentContainer" },
|
|
130
|
-
|
|
131
|
-
|
|
130
|
+
tabs: { type: "tabs", name: "标签页", icon: "Tab" },
|
|
131
|
+
"tab-page": { type: "tab-page", name: "标签页项", dependentParentControl: "Tab" },
|
|
132
132
|
"tab-toolbar-item": { type: "tab-toolbar-item", name: "标签页工具栏按钮", icon: "Button" },
|
|
133
133
|
Tag: { type: "Tag", name: "Tag", icon: "Tag" },
|
|
134
134
|
Sidebar: { type: "Sidebar", name: "侧边栏", icon: "Sidebar" },
|
|
@@ -137,7 +137,7 @@ const l = {
|
|
|
137
137
|
RichTextBox: { type: "RichTextBox", name: "富文本", icon: "RichTextBox" },
|
|
138
138
|
TimeSpinner: { type: "TimeSpinner", name: "时间调节器", icon: "TimePicker" },
|
|
139
139
|
TimePicker: { type: "TimePicker", name: "时间选择", icon: "TimePicker" },
|
|
140
|
-
|
|
140
|
+
section: { type: "section", name: "分组面板", icon: "Section" },
|
|
141
141
|
SectionToolbar: { type: "SectionToolbar", name: "分组面板工具栏" },
|
|
142
142
|
SectionToolbarItem: { type: "SectionToolbarItem", name: "分组面板按钮" },
|
|
143
143
|
QueryScheme: { type: "QueryScheme", name: "筛选方案", icon: "QueryScheme" },
|
|
@@ -167,7 +167,7 @@ const l = {
|
|
|
167
167
|
NavTab: { type: "NavTab", name: "标签类导航", icon: "NavTab" },
|
|
168
168
|
Tags: { type: "Tags", name: "标记组", icon: "Tags" },
|
|
169
169
|
Portlet: { type: "Portlet", name: "小部件", icon: "dingzhi" },
|
|
170
|
-
|
|
170
|
+
"page-header": { type: "page-header", name: "页头", icon: "Header" },
|
|
171
171
|
ModalFooter: { type: "ModalFooter", name: "弹窗页脚", icon: "ModalFooter" },
|
|
172
172
|
ScrollCollapsibleArea: { type: "ScrollCollapsibleArea", name: "滚动收折区域", icon: "ScrollCollapsibleArea" },
|
|
173
173
|
PersonnelSelector: { type: "PersonnelSelector", name: "人员选择", icon: "PersonnelSelector" },
|
|
@@ -267,7 +267,7 @@ const ne = /* @__PURE__ */ new Map([
|
|
|
267
267
|
valueField: {
|
|
268
268
|
description: "",
|
|
269
269
|
type: "string",
|
|
270
|
-
default: "
|
|
270
|
+
default: "value"
|
|
271
271
|
},
|
|
272
272
|
titleField: {
|
|
273
273
|
description: "",
|
|
@@ -523,7 +523,7 @@ const P = {
|
|
|
523
523
|
x(e.dataSource, () => {
|
|
524
524
|
n.value = e.dataSource;
|
|
525
525
|
});
|
|
526
|
-
const g =
|
|
526
|
+
const g = B(() => e.enableSearch ? "SearchBar" : "ContentHeader"), c = B(() => {
|
|
527
527
|
const i = {};
|
|
528
528
|
return d.value !== void 0 && (i.width = `${d.value}px`), p.value !== void 0 && p.value > 0 && (i.maxHeight = `${p.value}px`), i;
|
|
529
529
|
});
|
|
@@ -578,9 +578,9 @@ function fe(e) {
|
|
|
578
578
|
const { url: i, method: a = "GET", headers: u = {}, body: y = null } = e.remote, S = a.toLowerCase() == "get" ? { method: a, headers: u } : { method: a, headers: u, body: y };
|
|
579
579
|
let F = !1;
|
|
580
580
|
fetch(i, S).then((h) => {
|
|
581
|
-
var T,
|
|
581
|
+
var T, w;
|
|
582
582
|
if (h.status === 200)
|
|
583
|
-
return F = !!((
|
|
583
|
+
return F = !!((w = (T = h.headers) == null ? void 0 : T.get("content-type")) != null && w.includes("application/json")), F ? h.text() : h.json();
|
|
584
584
|
throw new Error(h.statusText);
|
|
585
585
|
}).then((h) => {
|
|
586
586
|
o.value = F ? JSON.parse(h) : h;
|
|
@@ -610,7 +610,7 @@ const k = /* @__PURE__ */ I({
|
|
|
610
610
|
editable: c,
|
|
611
611
|
modelValue: s,
|
|
612
612
|
getSelectedItemsByDisplayText: i
|
|
613
|
-
} = fe(e), a =
|
|
613
|
+
} = fe(e), a = B(() => e.multiSelect), u = B(() => n.value ? n.value.elementRef.getBoundingClientRect().width : 0);
|
|
614
614
|
function y() {
|
|
615
615
|
!a.value && n.value && n.value.hidePopup();
|
|
616
616
|
}
|
|
@@ -630,13 +630,13 @@ const k = /* @__PURE__ */ I({
|
|
|
630
630
|
function T() {
|
|
631
631
|
return g.value;
|
|
632
632
|
}
|
|
633
|
-
function
|
|
633
|
+
function w(b) {
|
|
634
634
|
t.emit("input", b);
|
|
635
635
|
}
|
|
636
636
|
return t.expose({
|
|
637
637
|
getDisplayText: T
|
|
638
|
-
}), x([() => e.disabled, () => e.editable, () => e.enableClear, () => e.enableSearch, () => e.readonly], ([b, v, R, U,
|
|
639
|
-
o.value = b, c.value = v, r.value = R, d.value = U, p.value =
|
|
638
|
+
}), x([() => e.disabled, () => e.editable, () => e.enableClear, () => e.enableSearch, () => e.readonly], ([b, v, R, U, N]) => {
|
|
639
|
+
o.value = b, c.value = v, r.value = R, d.value = U, p.value = N;
|
|
640
640
|
}), () => M(L, {
|
|
641
641
|
ref: n,
|
|
642
642
|
id: e.id,
|
|
@@ -659,7 +659,7 @@ const k = /* @__PURE__ */ I({
|
|
|
659
659
|
onClear: h,
|
|
660
660
|
onClick: F,
|
|
661
661
|
onChange: V,
|
|
662
|
-
onInput:
|
|
662
|
+
onInput: w,
|
|
663
663
|
beforeOpen: e.beforeOpen
|
|
664
664
|
}, {
|
|
665
665
|
default: () => [M(ge, {
|
|
@@ -714,7 +714,8 @@ function he(e, t) {
|
|
|
714
714
|
}
|
|
715
715
|
class A {
|
|
716
716
|
static getEditorTypesByMDataType(t) {
|
|
717
|
-
|
|
717
|
+
const n = this.fieldControlTypeMapping[t];
|
|
718
|
+
return n || [{ key: "", value: "" }];
|
|
718
719
|
}
|
|
719
720
|
}
|
|
720
721
|
/**
|
|
@@ -786,13 +787,18 @@ class be {
|
|
|
786
787
|
C(this, "designViewModelField");
|
|
787
788
|
C(this, "controlCreatorUtils");
|
|
788
789
|
C(this, "designerHostService");
|
|
790
|
+
C(this, "schemaService", null);
|
|
789
791
|
C(this, "metadataService", null);
|
|
790
792
|
C(this, "propertyConfig", {
|
|
791
793
|
type: "object",
|
|
792
794
|
categories: {}
|
|
793
795
|
});
|
|
794
796
|
var o;
|
|
795
|
-
this.componentId = t, this.designerHostService = n, this.eventsEditorUtils = n.eventsEditorUtils, this.formSchemaUtils = n.formSchemaUtils, this.formMetadataConverter = n.formMetadataConverter, this.viewModelId = ((o = this.formSchemaUtils) == null ? void 0 : o.getViewModelIdByComponentId(t)) || "", this.designViewModelUtils = n.designViewModelUtils, this.controlCreatorUtils = n.controlCreatorUtils, this.metadataService = n.metadataService;
|
|
797
|
+
this.componentId = t, this.designerHostService = n, this.eventsEditorUtils = n.eventsEditorUtils, this.formSchemaUtils = n.formSchemaUtils, this.formMetadataConverter = n.formMetadataConverter, this.viewModelId = ((o = this.formSchemaUtils) == null ? void 0 : o.getViewModelIdByComponentId(t)) || "", this.designViewModelUtils = n.designViewModelUtils, this.controlCreatorUtils = n.controlCreatorUtils, this.metadataService = n.metadataService, this.schemaService = n.schemaService;
|
|
798
|
+
}
|
|
799
|
+
getTableInfo() {
|
|
800
|
+
var t;
|
|
801
|
+
return (t = this.schemaService) == null ? void 0 : t.getTableInfoByViewModelId(this.viewModelId);
|
|
796
802
|
}
|
|
797
803
|
setDesignViewModelField(t) {
|
|
798
804
|
const n = t.binding && t.binding.type === "Form" && t.binding.field;
|
|
@@ -807,6 +813,7 @@ class be {
|
|
|
807
813
|
changeFieldEditorType(t, n) {
|
|
808
814
|
}
|
|
809
815
|
getBasicPropConfig(t) {
|
|
816
|
+
var o, r;
|
|
810
817
|
var n = this;
|
|
811
818
|
return this.setDesignViewModelField(t), {
|
|
812
819
|
description: "Basic Information",
|
|
@@ -828,7 +835,8 @@ class be {
|
|
|
828
835
|
type: "combo-list",
|
|
829
836
|
textField: "value",
|
|
830
837
|
valueField: "key",
|
|
831
|
-
data: A.getEditorTypesByMDataType(n.designViewModelField.type.name)
|
|
838
|
+
data: A.getEditorTypesByMDataType(((r = (o = n.designViewModelField) == null ? void 0 : o.type) == null ? void 0 : r.name) || ""),
|
|
839
|
+
editable: !1
|
|
832
840
|
}
|
|
833
841
|
},
|
|
834
842
|
label: {
|
|
@@ -837,11 +845,11 @@ class be {
|
|
|
837
845
|
$converter: "/converter/form-group-label.converter"
|
|
838
846
|
}
|
|
839
847
|
},
|
|
840
|
-
setPropertyRelates(
|
|
841
|
-
if (
|
|
842
|
-
switch (
|
|
848
|
+
setPropertyRelates(d, p) {
|
|
849
|
+
if (d)
|
|
850
|
+
switch (d && d.propertyID) {
|
|
843
851
|
case "type": {
|
|
844
|
-
n.changeControlType(t,
|
|
852
|
+
n.changeControlType(t, d);
|
|
845
853
|
break;
|
|
846
854
|
}
|
|
847
855
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(h,l){typeof exports=="object"&&typeof module<"u"?l(exports,require("vue"),require("lodash-es"),require("@farris/ui-vue/components/list-view"),require("@farris/ui-vue/components/button-edit"),require("@farris/ui-vue/components/designer-canvas/src/composition/function/use-designer-component")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","@farris/ui-vue/components/list-view","@farris/ui-vue/components/button-edit","@farris/ui-vue/components/designer-canvas/src/composition/function/use-designer-component"],l):(h=typeof globalThis<"u"?globalThis:h||self,l(h["combo-list"]={},h.Vue,h.LodashES,h.FListView,h.FButtonEdit,h.useDesignerComponent))})(this,function(h,l,F,A,I,R){"use strict";var ue=Object.defineProperty;var pe=(h,l,F)=>l in h?ue(h,l,{enumerable:!0,configurable:!0,writable:!0,value:F}):h[l]=F;var v=(h,l,F)=>pe(h,typeof l!="symbol"?l+"":l,F);const N={},U={};function D(e){const{properties:t,title:n}=e,o=Object.keys(t).reduce((c,u)=>(c[u]=t[u].type==="object"&&t[u].properties?D(t[u]):F.cloneDeep(t[u].default),c),{});return o.id=`${n}-${Date.now()}`,o}function j(e,t){const n=D(t);return Object.keys(e).reduce((o,c)=>(o[c]=e[c],o),n),n}function H(e,t){return Object.keys(e).filter(o=>e[o]!=null).reduce((o,c)=>{if(t.has(c)){const u=t.get(c);if(typeof u=="string")o[u]=e[c];else{const m=u(c,e[c],e);Object.assign(o,m)}}else o[c]=e[c];return o},{})}function z(e,t,n=new Map){const o=j(e,t);return H(o,n)}function $(e={}){function t(s,d,i,a){if(typeof i=="number")return a[s].length===i;if(typeof i=="object"){const p=Object.keys(i)[0],g=i[p];if(p==="not")return Number(a[s].length)!==Number(g);if(p==="moreThan")return Number(a[s].length)>=Number(g);if(p==="lessThan")return Number(a[s].length)<=Number(g)}return!1}function n(s,d,i,a){return a[s]&&a[s].propertyValue&&String(a[s].propertyValue.value)===String(i)}const o=new Map([["length",t],["getProperty",n]]);Object.keys(e).reduce((s,d)=>(s.set(d,e[d]),s),o);function c(s,d){const i=s;return typeof d=="number"?[{target:i,operator:"length",param:null,value:Number(d)}]:typeof d=="boolean"?[{target:i,operator:"getProperty",param:s,value:!!d}]:typeof d=="object"?Object.keys(d).map(a=>{if(a==="length")return{target:i,operator:"length",param:null,value:d[a]};const p=a,g=d[a];return{target:i,operator:"getProperty",param:p,value:g}}):[]}function u(s){return Object.keys(s).reduce((i,a)=>{const p=c(a,s[a]);return i.push(...p),i},[])}function m(s,d){if(o.has(s.operator)){const i=o.get(s.operator);return i&&i(s.target,s.param,s.value,d)||!1}return!1}function y(s,d){return u(s).reduce((p,g)=>p&&m(g,d),!0)}function f(s,d){const i=Object.keys(s),a=i.includes("allOf"),p=i.includes("anyOf"),g=a||p,b=(g?s[g?a?"allOf":"anyOf":"allOf"]:[s]).map(w=>y(w,d));return a?!b.includes(!1):b.includes(!0)}return{parseValueSchema:f}}const r={Button:{type:"Button",name:"按钮",icon:"Button"},ButtonGroup:{type:"ButtonGroup",name:"按钮组",icon:"ButtonGroup"},ToolBar:{type:"ToolBar",name:"工具栏",icon:"ButtonGroup"},ToolBarItem:{type:"ToolBarItem",name:"工具栏项",icon:"Button"},ContentContainer:{type:"ContentContainer",name:"容器",icon:"ContentContainer"},DisplayField:{type:"DisplayField",name:"标签",icon:"DisplayField"},"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"},FlexLayout:{type:"FlexLayout",name:"弹性布局"},FlowLayout:{type:"FlowLayout",name:"流布局"},ResponseLayout:{type:"ResponseLayout",name:"布局容器",icon:"ResponseLayout3"},ResponseLayoutItem:{type:"ResponseLayoutItem",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},TreeGridField:{type:"TreeGridField",name:"树表格列"},FieldSet:{type:"FieldSet",name:"分组",icon:"FieldSet"},Form:{type:"Form",name:"卡片面板",icon:"Form"},QueryForm:{type:"QueryForm",name:"查询面板",icon:"Form"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},Panel:{type:"Panel",name:"面板",icon:"ContentContainer"},Module:{type:"Module",name:"模块",icon:"Module"},Component:{type:"Component",name:"组件",icon:"Component"},ExternalContainer:{type:"ExternalContainer",name:"外部容器",icon:"ContentContainer"},Image:{type:"Image",name:"图像",icon:"Image"},ImageUpload:{type:"ImageUpload",name:"图片上传",icon:"imageupload"},HiddenContainer:{type:"HiddenContainer",name:"隐藏区域",icon:"ContentContainer"},ModalContainer:{type:"ModalContainer",name:"弹窗容器",icon:"ContentContainer"},RouteContainer:{type:"RouteContainer",name:"路由区域",icon:"ContentContainer"},Tab:{type:"Tab",name:"标签页",icon:"Tab"},TabPage:{type:"TabPage",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},Tag:{type:"Tag",name:"Tag",icon:"Tag"},Sidebar:{type:"Sidebar",name:"侧边栏",icon:"Sidebar"},HtmlTemplate:{type:"HtmlTemplate",name:"模版容器",icon:"HtmlTemplate"},ListView:{type:"ListView",name:"列表",icon:"ListView"},RichTextBox:{type:"RichTextBox",name:"富文本",icon:"RichTextBox"},TimeSpinner:{type:"TimeSpinner",name:"时间调节器",icon:"TimePicker"},TimePicker:{type:"TimePicker",name:"时间选择",icon:"TimePicker"},Section:{type:"Section",name:"分组面板",icon:"Section"},SectionToolbar:{type:"SectionToolbar",name:"分组面板工具栏"},SectionToolbarItem:{type:"SectionToolbarItem",name:"分组面板按钮"},QueryScheme:{type:"QueryScheme",name:"筛选方案",icon:"QueryScheme"},FormHeader:{type:"FormHeader",name:"翻页"},Splitter:{type:"Splitter",name:"分栏面板",icon:"Splitter"},SplitterPane:{type:"SplitterPane",name:"分栏面板项",dependentParentControl:"Splitter"},WizardDetail:{type:"WizardDetail",name:"向导详情页"},WizardDetailContainer:{type:"WizardDetailContainer",name:"向导详情容器"},Wizard:{type:"Wizard",name:"向导",icon:"Wizard"},MultiSelect:{type:"MultiSelect",name:"数据分配",icon:"MultiSelect"},Steps:{type:"Steps",name:"步骤条",icon:"Steps"},avatar:{type:"avatar",name:"头像",icon:"Avatar"},ListFilter:{type:"ListFilter",name:"筛选条",icon:"ListFilter"},ListNav:{type:"ListNav",name:"列表导航",icon:"ListNav"},NumberRange:{type:"NumberRange",name:"数字区间选择",icon:"NumericBox"},Scrollspy:{type:"Scrollspy",name:"滚动监听",icon:"Scrollspy"},LanguageTextBox:{type:"LanguageTextBox",name:"多语言输入框",icon:"LanguageTextBox"},ComponentRef:{type:"ComponentRef",name:"组件引用节点"},FileUpload:{type:"FileUpload",name:"附件上传",icon:"FileUpload"},FilePreview:{type:"FilePreview",name:"附件预览",icon:"FilePreview"},ViewChange:{type:"ViewChange",name:"多视图切换",icon:"Button"},MultiViewContainer:{type:"MultiViewContainer",name:"多视图",icon:"MultiViewContainer"},MultiViewItem:{type:"MultiViewItem",name:"多视图项",dependentParentControl:"MultiViewContainer"},Footer:{type:"Footer",name:"页脚"},DiscussionEditor:{type:"DiscussionEditor",name:"评论编辑区",icon:"DiscussionEditor"},DiscussionList:{type:"DiscussionList",name:"评论列表",icon:"DiscussionList"},NavTab:{type:"NavTab",name:"标签类导航",icon:"NavTab"},Tags:{type:"Tags",name:"标记组",icon:"Tags"},Portlet:{type:"Portlet",name:"小部件",icon:"dingzhi"},Header:{type:"Header",name:"页头",icon:"Header"},ModalFooter:{type:"ModalFooter",name:"弹窗页脚",icon:"ModalFooter"},ScrollCollapsibleArea:{type:"ScrollCollapsibleArea",name:"滚动收折区域",icon:"ScrollCollapsibleArea"},PersonnelSelector:{type:"PersonnelSelector",name:"人员选择",icon:"PersonnelSelector"},Table:{type:"Table",name:"表格",icon:"DataGrid"},LoopContainer:{type:"LoopContainer",name:"循环容器",icon:"ContentContainer"},FileUploadPreview:{type:"FileUploadPreview",name:"附件上传预览",icon:"FileUpload"},DynamicArea:{type:"DynamicArea",name:"动态区域",icon:"ContentContainer"},DynamicAreaItem:{type:"DynamicAreaItem",name:"动态区域项",icon:"ContentContainer"},TabToolbar:{type:"TabToolbar",name:"标签页工具栏",icon:"TabToolbar"},HeaderToolBar:{type:"HeaderToolBar",name:"头部组件工具栏",icon:"HeaderToolBar"},ModalFooterToolBar:{type:"ModalFooterToolBar",name:"底部组件工具栏",icon:"ModalFooterToolBar"},HeaderToolBarItem:{type:"HeaderToolBarItem",name:"头部组件工具栏按钮",icon:"HeaderToolBarItem"},ModalFooterToolBarItem:{type:"ModalFooterToolBarItem",name:"底部组件工具栏按钮",icon:"ModalFooterToolBarItem"},OrganizationSelector:{type:"OrganizationSelector",name:"组织选择",icon:"OrganizationSelector"},AdminOrganizationSelector:{type:"AdminOrganizationSelector",name:"组织选择",icon:"OrganizationSelector"},EmployeeSelector:{type:"EmployeeSelector",name:"人员选择",icon:"PersonnelSelector"},OaRelation:{type:"OaRelation",name:"关联行政审批",icon:"TextBox"},CitySelector:{type:"CitySelector",name:"城市选择",icon:"CitySelector"},ExtIntergration:{type:"ExtIntergration",name:"外部服务集成",icon:"ViewModel"},AppointmentCalendar:{type:"AppointmentCalendar",name:"预约日历",icon:"DateBox"},Charts:{type:"Charts",name:"图表",icon:"Charts"},QdpFramework:{type:"QdpFramework",name:"查询结果工具栏",icon:"QdpFramework"},SpreadSheet:{type:"SpreadSheet",name:"查询表格控件",icon:"Charts"},QdpConditionDialog:{type:"QdpConditionDialog",name:"查询筛选对话框",icon:"ContentContainer"},QdpConditionDialogTab:{type:"QdpConditionDialogTab",name:"查询筛选标签页",icon:"Tab"},ApprovalLogs:{type:"ApprovalLogs",name:"审批记录",icon:"ApprovalLogs"},ApprovalComments:{type:"ApprovalComments",name:"审批意见",icon:"shenpiyijian"}},q={},G={};$();function W(e,t,n=new Map,o=(m,y,f)=>y,c={},u=m=>m){return N[t.title]=t,U[t.title]=o,q[t.title]=c,G[t.title]=u,(m={})=>{const y=z(m,t,n),f=Object.keys(e).reduce((s,d)=>(s[d]=e[d].default,s),{});return Object.assign(f,y)}}function Q(e,t){return{customClass:t.class,customStyle:t.style}}const _=new Map([["appearance",Q]]),X={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/combo-list.schema.json",title:"combo-list",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"combo-list"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},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:""},valueField:{description:"",type:"string",default:"id"},titleField:{description:"",type:"string",default:"name"},textField:{description:"",type:"string",default:"name"},data:{description:"",type:"array"},readonly:{description:"",type:"boolean",default:!1},required:{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:""}},required:["id","type"]};function Y(e,t,n){return t}var L=(e=>(e.Text="text",e.Tag="tag",e))(L||{}),O=(e=>(e.top="top",e.bottom="bottom",e.auto="auto",e))(O||{});const B={id:{type:String},data:{type:Array,default:[]},disabled:{default:!1,type:Boolean},dropDownIcon:{type:String,default:'<span class="f-icon f-icon-arrow-60-down"></span>'},editable:{default:!1,type:Boolean},enableClear:{default:!0,type:Boolean},enableSearch:{type:Boolean,default:!1},enableTitle:{default:!0,type:Boolean},fitEditor:{default:!1,type:Boolean},forcePlaceholder:{default:!1,type:Boolean},hidePanelOnClear:{default:!0,type:Boolean},idField:{default:"id",type:String},mapFields:{type:Object},maxHeight:{default:350,type:Number},maxLength:{type:Number},multiSelect:{default:!1,type:Boolean},modelValue:{},placeholder:{type:String},placement:{type:String,default:"auto"},readonly:{default:!1,type:Boolean},remote:{default:null,type:Object},remoteSearch:{default:!1,type:Boolean},separator:{default:",",type:String},tabIndex:{type:Number,default:-1},textField:{default:"name",type:String},titleField:{default:"name",type:String},valueField:{default:"id",type:String},viewType:{default:"tag",type:String},change:{type:Function,default:()=>{}},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},autoHeight:{type:Boolean,default:!0},beforeOpen:{type:Function,default:null}},k=W(B,X,_,Y),Z={dataSource:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1},idField:{type:String,default:"id"},multiSelect:{default:!1,type:Boolean},selectedValues:{type:String,default:""},separator:{type:String,default:","},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},width:{type:Number},maxHeight:{type:Number},valueField:{type:String,default:"id"},onSelectionChange:{type:Function,default:()=>{}}},J=l.defineComponent({name:"FComboListContainer",props:Z,emits:["selectionChange"],setup(e,t){const n=l.ref(e.dataSource),o=l.ref([]),c=l.ref(e.separator),u=l.ref(e.width),m=l.ref(e.maxHeight),y=l.ref(String(e.selectedValues).split(c.value));l.watch(e.dataSource,()=>{n.value=e.dataSource});const f=l.computed(()=>e.enableSearch?"SearchBar":"ContentHeader"),s=l.computed(()=>{const i={};return u.value!==void 0&&(i.width=`${u.value}px`),m.value!==void 0&&m.value>0&&(i.maxHeight=`${m.value}px`),i});function d(i){o.value=i.map(a=>Object.assign({},a)),y.value=i.map(a=>a[e.idField]),t.emit("selectionChange",o.value)}return l.watch([()=>e.selectedValues],([i])=>{y.value=i.split(c.value)}),()=>l.createVNode("div",{class:"f-combo-list-container pl-3",style:s.value},[l.createVNode(A,{size:"small",itemClass:"f-combo-list-item",header:f.value,headerClass:"f-combo-list-search-box",data:n.value,idField:e.idField,textField:e.textField,titleField:e.titleField,multiSelect:e.multiSelect,multiSelectMode:"OnCheckAndClick",selectionValues:y.value,onSelectionChange:d},null)])}});function K(e){const t=l.ref(""),n=l.ref(e.modelValue),o=l.ref(e.data||[]),c=l.ref(e.editable);function u(i){const a=String(i).split(e.separator).map(g=>[g,!0]),p=new Map(a);return o.value.filter(g=>p.has(String(g[e.valueField])))}function m(i){const a=u(i).map(p=>p[e.textField]).join(e.separator);t.value=c.value?a||i:a}function y(i){const a=i.split(e.separator).map(g=>[g,!0]),p=new Map(a);return o.value.filter(g=>p.has(g[e.textField]))}function f(i){const a={};return a[e.idField]=i,a[e.textField]=i,[a]}function s(i){let a=y(i);const p=a&&a.length>0;return c.value&&!p&&(a=f(i)),a}function d(){const{url:i,method:a="GET",headers:p={},body:g=null}=e.remote,T=a.toLowerCase()=="get"?{method:a,headers:p}:{method:a,headers:p,body:g};let x=!1;fetch(i,T).then(b=>{var w,V;if(b.status===200)return x=!!((V=(w=b.headers)==null?void 0:w.get("content-type"))!=null&&V.includes("application/json")),x?b.text():b.json();throw new Error(b.statusText)}).then(b=>{o.value=x?JSON.parse(b):b}).catch(b=>{console.error(b)})}return e.remote&&d(),l.watch(()=>e.data,()=>{o.value=e.data}),l.watch([o],([i])=>{if(e.modelValue){const a=i.find(p=>p[e.valueField]===e.modelValue);a&&(t.value=a[e.textField])}}),l.watch(()=>e.modelValue,i=>{n.value=i,m(i)}),m(e.modelValue),{dataSource:o,displayText:t,editable:c,modelValue:n,getItemsByDisplayText:y,getItemsByValue:u,getSelectedItemsByDisplayText:s}}const M=l.defineComponent({name:"FComboList",props:B,emits:["clear","update:modelValue","change","input"],setup(e,t){const n=l.ref(),o=l.ref(e.disabled),c=l.ref(e.enableClear),u=l.ref(e.enableSearch),m=l.ref(e.readonly),{dataSource:y,displayText:f,editable:s,modelValue:d,getSelectedItemsByDisplayText:i}=K(e),a=l.computed(()=>e.multiSelect),p=l.computed(()=>n.value?n.value.elementRef.getBoundingClientRect().width:0);function g(){!a.value&&n.value&&n.value.hidePopup()}function T(C){f.value=C.map(S=>S[e.textField]).join(e.separator),C.length===1?d.value=C[0][e.valueField]:d.value=C.map(S=>S[e.valueField]).join(e.separator),t.emit("update:modelValue",d.value),t.emit("change",C,d.value),g()}function x(){m.value||n.value.togglePopup()}function b(C){d.value="",t.emit("update:modelValue",""),t.emit("clear")}function P(C){const S=i(C);T(S)}function w(){return f.value}function V(C){t.emit("input",C)}return t.expose({getDisplayText:w}),l.watch([()=>e.disabled,()=>e.editable,()=>e.enableClear,()=>e.enableSearch,()=>e.readonly],([C,S,ce,se,de])=>{o.value=C,s.value=S,c.value=ce,u.value=se,m.value=de}),()=>l.createVNode(I,{ref:n,id:e.id,disable:o.value,readonly:m.value,forcePlaceholder:e.forcePlaceholder,editable:s.value,buttonContent:e.dropDownIcon,placeholder:e.placeholder,enableClear:c.value,maxLength:e.maxLength,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:e.multiSelect,inputType:e.multiSelect?e.viewType:"text",modelValue:f.value,"onUpdate:modelValue":C=>f.value=C,focusOnCreated:e.focusOnCreated,selectOnCreated:e.selectOnCreated,onClear:b,onClick:x,onChange:P,onInput:V,beforeOpen:e.beforeOpen},{default:()=>[l.createVNode(J,{idField:e.idField,valueField:e.valueField,textField:e.textField,titleField:e.titleField,dataSource:y.value,selectedValues:d.value,multiSelect:e.multiSelect,enableSearch:u.value,maxHeight:e.maxHeight,width:e.fitEditor?p.value:void 0,onSelectionChange:T},null)]})}});function ee(e,t){e.schema;const n=l.ref(!0),o=l.ref(!0);function c(i){return!1}function u(){return!1}function m(){return!1}function y(){return!0}function f(i){}function s(){}function d(i){return null}return{canAccepts:c,checkCanDeleteComponent:u,checkCanMoveComponent:m,hideNestedPaddingInDesginerView:y,onAcceptMovedChildElement:f,resolveComponentContext:s,triggerBelongedComponentToMoveWhenMoved:n,triggerBelongedComponentToDeleteWhenDeleted:o,getPropsConfig:d}}class E{static getEditorTypesByMDataType(t){return this.fieldControlTypeMapping[t]}}v(E,"fieldControlTypeMapping",{String:[{key:r["input-group"].type,value:r["input-group"].name},{key:r.lookup.type,value:r.lookup.name},{key:r.Image.type,value:r.Image.name},{key:r["date-picker"].type,value:r["date-picker"].name},{key:r["check-box"].type,value:r["check-box"].name},{key:r["radio-group"].type,value:r["radio-group"].name},{key:r["combo-list"].type,value:r["combo-list"].name},{key:r.textarea.type,value:r.textarea.name}],Text:[{key:r.textarea.type,value:r.textarea.name},{key:r.avatar.type,value:r.avatar.name},{key:r.lookup.type,value:r.lookup.name}],Decimal:[{key:r["number-spinner"].type,value:r["number-spinner"].name}],Integer:[{key:r["number-spinner"].type,value:r["number-spinner"].name}],Number:[{key:r["number-spinner"].type,value:r["number-spinner"].name}],BigNumber:[{key:r["number-spinner"].type,value:r["number-spinner"].name}],Date:[{key:r["date-picker"].type,value:r["date-picker"].name}],DateTime:[{key:r["date-picker"].type,value:r["date-picker"].name}],Boolean:[{key:r.switch.type,value:r.switch.name},{key:r["check-box"].type,value:r["check-box"].name}],Enum:[{key:r["combo-list"].type,value:r["combo-list"].name},{key:r["radio-group"].type,value:r["radio-group"].name}],Object:[{key:r.lookup.type,value:r.lookup.name},{key:r["combo-list"].type,value:r["combo-list"].name},{key:r["radio-group"].type,value:r["radio-group"].name}],EmployeeSelector:[{key:r.EmployeeSelector.type,value:r.EmployeeSelector.name}],AdminOrganizationSelector:[{key:r.AdminOrganizationSelector.type,value:r.AdminOrganizationSelector.name}]});class te{constructor(t,n){v(this,"componentId");v(this,"viewModelId");v(this,"eventsEditorUtils");v(this,"formSchemaUtils");v(this,"formMetadataConverter");v(this,"designViewModelUtils");v(this,"designViewModelField");v(this,"controlCreatorUtils");v(this,"designerHostService");v(this,"metadataService",null);v(this,"propertyConfig",{type:"object",categories:{}});var o;this.componentId=t,this.designerHostService=n,this.eventsEditorUtils=n.eventsEditorUtils,this.formSchemaUtils=n.formSchemaUtils,this.formMetadataConverter=n.formMetadataConverter,this.viewModelId=((o=this.formSchemaUtils)==null?void 0:o.getViewModelIdByComponentId(t))||"",this.designViewModelUtils=n.designViewModelUtils,this.controlCreatorUtils=n.controlCreatorUtils,this.metadataService=n.metadataService}setDesignViewModelField(t){const n=t.binding&&t.binding.type==="Form"&&t.binding.field;if(n){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(c=>c.id===n)}t.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(t,n){}getBasicPropConfig(t){var n=this;return this.setDesignViewModelField(t),{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",data:E.getEditorTypesByMDataType(n.designViewModelField.type.name)}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"}},setPropertyRelates(o,c){if(o)switch(o&&o.propertyID){case"type":{n.changeControlType(t,o);break}}}}}changeControlType(t,n){var s,d,i,a,p;const o=n.propertyValue,c=this.formSchemaUtils.getComponentById(this.componentId);let u=this.getControlParentContainer(t.id,c);if(!u)return;const m=u.contents.findIndex(g=>g.id===t.id),y=u.contents[m];let f;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:o},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),f=this.controlCreatorUtils.setFormFieldProperty("Form",this.designViewModelField,null,o)),Object.assign(f,{id:y.id,appearance:y.appearance,size:y.size,label:y.label}),Object.assign(f.editor,{isTextArea:f.isTextArea&&y.isTextArea,type:o||"",placeHolder:(s=y.editor)==null?void 0:s.placeHolder,holdPlace:(d=y.editor)==null?void 0:d.holdPlace,readonly:(i=y.editor)==null?void 0:i.readonly,require:(a=y.editor)==null?void 0:a.require,visible:(p=y.editor)==null?void 0:p.visible}),u.contents.splice(m,1,f)}getAppearanceConfig(t=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"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!1,editor:{type:"response-layout-editor-setting"},$converter:"/converter/response-form-layout.converter"}}}}getControlParentContainer(t,n){let o;if(!n||!n.contents||n.contents.length===0)return null;for(const c of n.contents){if(c.id===t)return o=n,n;if(o=this.getControlParentContainer(t,c),o)return o}}getBindingFieldEditorOptions(t){const n=this.formSchemaUtils.getFormMetadataBasicInfo();return{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:t,formBasicInfo:n},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],beforeOpenDialog:o=>{const c=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);o.instance.loadData(c)},textField:"bindingField"}}}class ne extends te{constructor(t,n){super(t,n)}getBasicProperties(t){let n=this.getBasicPropConfig(t);return n.properties.binding=this.getFieldSelectorOptions(t),n}getAppearanceProperties(t){return this.getAppearanceConfig(t)}getEditorProperties(t){return this.getComponentConfig(t)}getPropertyConfig(t){return this.propertyConfig.categories.basic=this.getBasicProperties(t),this.propertyConfig.categories.appearance=this.getAppearanceProperties(t),this.propertyConfig.categories.editor=this.getEditorProperties(t),this.propertyConfig}getFieldSelectorOptions(t){const n=this.formSchemaUtils.getFormMetadataBasicInfo(),o=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);return{description:"绑定的表单字段",title:"绑定",$converter:"/converter/field-selector.converter",editor:{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:t,formBasicInfo:n},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],data:o}}}getComponentConfig(t,n={},o={}){const c=Object.assign({description:"组件信息",title:"组件信息",type:"input-group",$converter:"/converter/property-editor.converter"},n),u=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},o);return{...c,properties:{...u}}}}class oe extends ne{constructor(t,n){super(t,n)}getEditorProperties(t){return this.getComponentConfig(t,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean"},textField:{description:"",title:"数据源显示字段",type:"string"},idField:{description:"",title:"数据源值字段",type:"string"}})}}function ie(e,t){const{canAccepts:n,checkCanDeleteComponent:o,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:u,onAcceptMovedChildElement:m,resolveComponentContext:y,triggerBelongedComponentToMoveWhenMoved:f,triggerBelongedComponentToDeleteWhenDeleted:s}=ee(e),d=e.schema;function i(a){return new oe(a,t).getPropertyConfig(d)}return{canAccepts:n,checkCanDeleteComponent:o,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:u,onAcceptMovedChildElement:m,resolveComponentContext:y,triggerBelongedComponentToMoveWhenMoved:f,triggerBelongedComponentToDeleteWhenDeleted:s,getPropsConfig:i}}const ae=l.defineComponent({name:"FComboListDesign",props:B,emits:["clear","update:modelValue","change"],setup(e,t){const n=l.ref(),o=l.inject("designer-host-service"),c=l.inject("design-item-context"),u=ie(c,o),m=R.useDesignerComponent(n,c,u);return l.onMounted(()=>{n.value.componentInstance=m}),t.expose(m.value),()=>l.createVNode(I,{ref:n,id:e.id,disable:e.disabled,readonly:e.readonly,forcePlaceholder:e.forcePlaceholder,editable:!1,buttonContent:e.dropDownIcon,placeholder:e.placeholder,enableClear:!1,maxLength:e.maxLength,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:e.multiSelect,inputType:e.multiSelect?"tag":"text"},null)}}),re=e=>{const t=e;return t.install=function(n){n.component(t.name,e)},e};M.register=(e,t,n,o)=>{e["combo-list"]=M,t["combo-list"]=k},M.registerDesigner=(e,t,n)=>{e["combo-list"]=ae,t["combo-list"]=k};const le=re(M);h.FComboList=M,h.Placement=O,h.ViewType=L,h.comboListProps=B,h.default=le,h.propsResolver=k,Object.defineProperties(h,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(h,l){typeof exports=="object"&&typeof module<"u"?l(exports,require("vue"),require("lodash-es"),require("@farris/ui-vue/components/list-view"),require("@farris/ui-vue/components/button-edit"),require("@farris/ui-vue/components/designer-canvas/src/composition/function/use-designer-component")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","@farris/ui-vue/components/list-view","@farris/ui-vue/components/button-edit","@farris/ui-vue/components/designer-canvas/src/composition/function/use-designer-component"],l):(h=typeof globalThis<"u"?globalThis:h||self,l(h["combo-list"]={},h.Vue,h.LodashES,h.FListView,h.FButtonEdit,h.useDesignerComponent))})(this,function(h,l,F,A,P,R){"use strict";var ue=Object.defineProperty;var pe=(h,l,F)=>l in h?ue(h,l,{enumerable:!0,configurable:!0,writable:!0,value:F}):h[l]=F;var v=(h,l,F)=>pe(h,typeof l!="symbol"?l+"":l,F);const N={},U={};function D(e){const{properties:t,title:n}=e,o=Object.keys(t).reduce((s,u)=>(s[u]=t[u].type==="object"&&t[u].properties?D(t[u]):F.cloneDeep(t[u].default),s),{});return o.id=`${n}-${Date.now()}`,o}function j(e,t){const n=D(t);return Object.keys(e).reduce((o,s)=>(o[s]=e[s],o),n),n}function H(e,t){return Object.keys(e).filter(o=>e[o]!=null).reduce((o,s)=>{if(t.has(s)){const u=t.get(s);if(typeof u=="string")o[u]=e[s];else{const m=u(s,e[s],e);Object.assign(o,m)}}else o[s]=e[s];return o},{})}function z(e,t,n=new Map){const o=j(e,t);return H(o,n)}function $(e={}){function t(c,d,i,a){if(typeof i=="number")return a[c].length===i;if(typeof i=="object"){const p=Object.keys(i)[0],g=i[p];if(p==="not")return Number(a[c].length)!==Number(g);if(p==="moreThan")return Number(a[c].length)>=Number(g);if(p==="lessThan")return Number(a[c].length)<=Number(g)}return!1}function n(c,d,i,a){return a[c]&&a[c].propertyValue&&String(a[c].propertyValue.value)===String(i)}const o=new Map([["length",t],["getProperty",n]]);Object.keys(e).reduce((c,d)=>(c.set(d,e[d]),c),o);function s(c,d){const i=c;return typeof d=="number"?[{target:i,operator:"length",param:null,value:Number(d)}]:typeof d=="boolean"?[{target:i,operator:"getProperty",param:c,value:!!d}]:typeof d=="object"?Object.keys(d).map(a=>{if(a==="length")return{target:i,operator:"length",param:null,value:d[a]};const p=a,g=d[a];return{target:i,operator:"getProperty",param:p,value:g}}):[]}function u(c){return Object.keys(c).reduce((i,a)=>{const p=s(a,c[a]);return i.push(...p),i},[])}function m(c,d){if(o.has(c.operator)){const i=o.get(c.operator);return i&&i(c.target,c.param,c.value,d)||!1}return!1}function y(c,d){return u(c).reduce((p,g)=>p&&m(g,d),!0)}function f(c,d){const i=Object.keys(c),a=i.includes("allOf"),p=i.includes("anyOf"),g=a||p,b=(g?c[g?a?"allOf":"anyOf":"allOf"]:[c]).map(w=>y(w,d));return a?!b.includes(!1):b.includes(!0)}return{parseValueSchema:f}}const r={Button:{type:"Button",name:"按钮",icon:"Button"},ButtonGroup:{type:"ButtonGroup",name:"按钮组",icon:"ButtonGroup"},"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"},DisplayField:{type:"DisplayField",name:"标签",icon:"DisplayField"},"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"},FlexLayout:{type:"FlexLayout",name:"弹性布局"},FlowLayout:{type:"FlowLayout",name:"流布局"},ResponseLayout:{type:"ResponseLayout",name:"布局容器",icon:"ResponseLayout3"},ResponseLayoutItem:{type:"ResponseLayoutItem",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},TreeGridField:{type:"TreeGridField",name:"树表格列"},FieldSet:{type:"FieldSet",name:"分组",icon:"FieldSet"},Form:{type:"Form",name:"卡片面板",icon:"Form"},QueryForm:{type:"QueryForm",name:"查询面板",icon:"Form"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},Panel:{type:"Panel",name:"面板",icon:"ContentContainer"},Module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},ExternalContainer:{type:"ExternalContainer",name:"外部容器",icon:"ContentContainer"},Image:{type:"Image",name:"图像",icon:"Image"},ImageUpload:{type:"ImageUpload",name:"图片上传",icon:"imageupload"},HiddenContainer:{type:"HiddenContainer",name:"隐藏区域",icon:"ContentContainer"},ModalContainer:{type:"ModalContainer",name:"弹窗容器",icon:"ContentContainer"},RouteContainer:{type:"RouteContainer",name:"路由区域",icon:"ContentContainer"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},Tag:{type:"Tag",name:"Tag",icon:"Tag"},Sidebar:{type:"Sidebar",name:"侧边栏",icon:"Sidebar"},HtmlTemplate:{type:"HtmlTemplate",name:"模版容器",icon:"HtmlTemplate"},ListView:{type:"ListView",name:"列表",icon:"ListView"},RichTextBox:{type:"RichTextBox",name:"富文本",icon:"RichTextBox"},TimeSpinner:{type:"TimeSpinner",name:"时间调节器",icon:"TimePicker"},TimePicker:{type:"TimePicker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},SectionToolbar:{type:"SectionToolbar",name:"分组面板工具栏"},SectionToolbarItem:{type:"SectionToolbarItem",name:"分组面板按钮"},QueryScheme:{type:"QueryScheme",name:"筛选方案",icon:"QueryScheme"},FormHeader:{type:"FormHeader",name:"翻页"},Splitter:{type:"Splitter",name:"分栏面板",icon:"Splitter"},SplitterPane:{type:"SplitterPane",name:"分栏面板项",dependentParentControl:"Splitter"},WizardDetail:{type:"WizardDetail",name:"向导详情页"},WizardDetailContainer:{type:"WizardDetailContainer",name:"向导详情容器"},Wizard:{type:"Wizard",name:"向导",icon:"Wizard"},MultiSelect:{type:"MultiSelect",name:"数据分配",icon:"MultiSelect"},Steps:{type:"Steps",name:"步骤条",icon:"Steps"},avatar:{type:"avatar",name:"头像",icon:"Avatar"},ListFilter:{type:"ListFilter",name:"筛选条",icon:"ListFilter"},ListNav:{type:"ListNav",name:"列表导航",icon:"ListNav"},NumberRange:{type:"NumberRange",name:"数字区间选择",icon:"NumericBox"},Scrollspy:{type:"Scrollspy",name:"滚动监听",icon:"Scrollspy"},LanguageTextBox:{type:"LanguageTextBox",name:"多语言输入框",icon:"LanguageTextBox"},ComponentRef:{type:"ComponentRef",name:"组件引用节点"},FileUpload:{type:"FileUpload",name:"附件上传",icon:"FileUpload"},FilePreview:{type:"FilePreview",name:"附件预览",icon:"FilePreview"},ViewChange:{type:"ViewChange",name:"多视图切换",icon:"Button"},MultiViewContainer:{type:"MultiViewContainer",name:"多视图",icon:"MultiViewContainer"},MultiViewItem:{type:"MultiViewItem",name:"多视图项",dependentParentControl:"MultiViewContainer"},Footer:{type:"Footer",name:"页脚"},DiscussionEditor:{type:"DiscussionEditor",name:"评论编辑区",icon:"DiscussionEditor"},DiscussionList:{type:"DiscussionList",name:"评论列表",icon:"DiscussionList"},NavTab:{type:"NavTab",name:"标签类导航",icon:"NavTab"},Tags:{type:"Tags",name:"标记组",icon:"Tags"},Portlet:{type:"Portlet",name:"小部件",icon:"dingzhi"},"page-header":{type:"page-header",name:"页头",icon:"Header"},ModalFooter:{type:"ModalFooter",name:"弹窗页脚",icon:"ModalFooter"},ScrollCollapsibleArea:{type:"ScrollCollapsibleArea",name:"滚动收折区域",icon:"ScrollCollapsibleArea"},PersonnelSelector:{type:"PersonnelSelector",name:"人员选择",icon:"PersonnelSelector"},Table:{type:"Table",name:"表格",icon:"DataGrid"},LoopContainer:{type:"LoopContainer",name:"循环容器",icon:"ContentContainer"},FileUploadPreview:{type:"FileUploadPreview",name:"附件上传预览",icon:"FileUpload"},DynamicArea:{type:"DynamicArea",name:"动态区域",icon:"ContentContainer"},DynamicAreaItem:{type:"DynamicAreaItem",name:"动态区域项",icon:"ContentContainer"},TabToolbar:{type:"TabToolbar",name:"标签页工具栏",icon:"TabToolbar"},HeaderToolBar:{type:"HeaderToolBar",name:"头部组件工具栏",icon:"HeaderToolBar"},ModalFooterToolBar:{type:"ModalFooterToolBar",name:"底部组件工具栏",icon:"ModalFooterToolBar"},HeaderToolBarItem:{type:"HeaderToolBarItem",name:"头部组件工具栏按钮",icon:"HeaderToolBarItem"},ModalFooterToolBarItem:{type:"ModalFooterToolBarItem",name:"底部组件工具栏按钮",icon:"ModalFooterToolBarItem"},OrganizationSelector:{type:"OrganizationSelector",name:"组织选择",icon:"OrganizationSelector"},AdminOrganizationSelector:{type:"AdminOrganizationSelector",name:"组织选择",icon:"OrganizationSelector"},EmployeeSelector:{type:"EmployeeSelector",name:"人员选择",icon:"PersonnelSelector"},OaRelation:{type:"OaRelation",name:"关联行政审批",icon:"TextBox"},CitySelector:{type:"CitySelector",name:"城市选择",icon:"CitySelector"},ExtIntergration:{type:"ExtIntergration",name:"外部服务集成",icon:"ViewModel"},AppointmentCalendar:{type:"AppointmentCalendar",name:"预约日历",icon:"DateBox"},Charts:{type:"Charts",name:"图表",icon:"Charts"},QdpFramework:{type:"QdpFramework",name:"查询结果工具栏",icon:"QdpFramework"},SpreadSheet:{type:"SpreadSheet",name:"查询表格控件",icon:"Charts"},QdpConditionDialog:{type:"QdpConditionDialog",name:"查询筛选对话框",icon:"ContentContainer"},QdpConditionDialogTab:{type:"QdpConditionDialogTab",name:"查询筛选标签页",icon:"Tab"},ApprovalLogs:{type:"ApprovalLogs",name:"审批记录",icon:"ApprovalLogs"},ApprovalComments:{type:"ApprovalComments",name:"审批意见",icon:"shenpiyijian"}},q={},G={};$();function W(e,t,n=new Map,o=(m,y,f)=>y,s={},u=m=>m){return N[t.title]=t,U[t.title]=o,q[t.title]=s,G[t.title]=u,(m={})=>{const y=z(m,t,n),f=Object.keys(e).reduce((c,d)=>(c[d]=e[d].default,c),{});return Object.assign(f,y)}}function Q(e,t){return{customClass:t.class,customStyle:t.style}}const _=new Map([["appearance",Q]]),X={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/combo-list.schema.json",title:"combo-list",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"combo-list"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},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:""},valueField:{description:"",type:"string",default:"value"},titleField:{description:"",type:"string",default:"name"},textField:{description:"",type:"string",default:"name"},data:{description:"",type:"array"},readonly:{description:"",type:"boolean",default:!1},required:{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:""}},required:["id","type"]};function Y(e,t,n){return t}var L=(e=>(e.Text="text",e.Tag="tag",e))(L||{}),O=(e=>(e.top="top",e.bottom="bottom",e.auto="auto",e))(O||{});const B={id:{type:String},data:{type:Array,default:[]},disabled:{default:!1,type:Boolean},dropDownIcon:{type:String,default:'<span class="f-icon f-icon-arrow-60-down"></span>'},editable:{default:!1,type:Boolean},enableClear:{default:!0,type:Boolean},enableSearch:{type:Boolean,default:!1},enableTitle:{default:!0,type:Boolean},fitEditor:{default:!1,type:Boolean},forcePlaceholder:{default:!1,type:Boolean},hidePanelOnClear:{default:!0,type:Boolean},idField:{default:"id",type:String},mapFields:{type:Object},maxHeight:{default:350,type:Number},maxLength:{type:Number},multiSelect:{default:!1,type:Boolean},modelValue:{},placeholder:{type:String},placement:{type:String,default:"auto"},readonly:{default:!1,type:Boolean},remote:{default:null,type:Object},remoteSearch:{default:!1,type:Boolean},separator:{default:",",type:String},tabIndex:{type:Number,default:-1},textField:{default:"name",type:String},titleField:{default:"name",type:String},valueField:{default:"id",type:String},viewType:{default:"tag",type:String},change:{type:Function,default:()=>{}},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},autoHeight:{type:Boolean,default:!0},beforeOpen:{type:Function,default:null}},k=W(B,X,_,Y),Z={dataSource:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1},idField:{type:String,default:"id"},multiSelect:{default:!1,type:Boolean},selectedValues:{type:String,default:""},separator:{type:String,default:","},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},width:{type:Number},maxHeight:{type:Number},valueField:{type:String,default:"id"},onSelectionChange:{type:Function,default:()=>{}}},J=l.defineComponent({name:"FComboListContainer",props:Z,emits:["selectionChange"],setup(e,t){const n=l.ref(e.dataSource),o=l.ref([]),s=l.ref(e.separator),u=l.ref(e.width),m=l.ref(e.maxHeight),y=l.ref(String(e.selectedValues).split(s.value));l.watch(e.dataSource,()=>{n.value=e.dataSource});const f=l.computed(()=>e.enableSearch?"SearchBar":"ContentHeader"),c=l.computed(()=>{const i={};return u.value!==void 0&&(i.width=`${u.value}px`),m.value!==void 0&&m.value>0&&(i.maxHeight=`${m.value}px`),i});function d(i){o.value=i.map(a=>Object.assign({},a)),y.value=i.map(a=>a[e.idField]),t.emit("selectionChange",o.value)}return l.watch([()=>e.selectedValues],([i])=>{y.value=i.split(s.value)}),()=>l.createVNode("div",{class:"f-combo-list-container pl-3",style:c.value},[l.createVNode(A,{size:"small",itemClass:"f-combo-list-item",header:f.value,headerClass:"f-combo-list-search-box",data:n.value,idField:e.idField,textField:e.textField,titleField:e.titleField,multiSelect:e.multiSelect,multiSelectMode:"OnCheckAndClick",selectionValues:y.value,onSelectionChange:d},null)])}});function K(e){const t=l.ref(""),n=l.ref(e.modelValue),o=l.ref(e.data||[]),s=l.ref(e.editable);function u(i){const a=String(i).split(e.separator).map(g=>[g,!0]),p=new Map(a);return o.value.filter(g=>p.has(String(g[e.valueField])))}function m(i){const a=u(i).map(p=>p[e.textField]).join(e.separator);t.value=s.value?a||i:a}function y(i){const a=i.split(e.separator).map(g=>[g,!0]),p=new Map(a);return o.value.filter(g=>p.has(g[e.textField]))}function f(i){const a={};return a[e.idField]=i,a[e.textField]=i,[a]}function c(i){let a=y(i);const p=a&&a.length>0;return s.value&&!p&&(a=f(i)),a}function d(){const{url:i,method:a="GET",headers:p={},body:g=null}=e.remote,T=a.toLowerCase()=="get"?{method:a,headers:p}:{method:a,headers:p,body:g};let x=!1;fetch(i,T).then(b=>{var w,V;if(b.status===200)return x=!!((V=(w=b.headers)==null?void 0:w.get("content-type"))!=null&&V.includes("application/json")),x?b.text():b.json();throw new Error(b.statusText)}).then(b=>{o.value=x?JSON.parse(b):b}).catch(b=>{console.error(b)})}return e.remote&&d(),l.watch(()=>e.data,()=>{o.value=e.data}),l.watch([o],([i])=>{if(e.modelValue){const a=i.find(p=>p[e.valueField]===e.modelValue);a&&(t.value=a[e.textField])}}),l.watch(()=>e.modelValue,i=>{n.value=i,m(i)}),m(e.modelValue),{dataSource:o,displayText:t,editable:s,modelValue:n,getItemsByDisplayText:y,getItemsByValue:u,getSelectedItemsByDisplayText:c}}const M=l.defineComponent({name:"FComboList",props:B,emits:["clear","update:modelValue","change","input"],setup(e,t){const n=l.ref(),o=l.ref(e.disabled),s=l.ref(e.enableClear),u=l.ref(e.enableSearch),m=l.ref(e.readonly),{dataSource:y,displayText:f,editable:c,modelValue:d,getSelectedItemsByDisplayText:i}=K(e),a=l.computed(()=>e.multiSelect),p=l.computed(()=>n.value?n.value.elementRef.getBoundingClientRect().width:0);function g(){!a.value&&n.value&&n.value.hidePopup()}function T(C){f.value=C.map(S=>S[e.textField]).join(e.separator),C.length===1?d.value=C[0][e.valueField]:d.value=C.map(S=>S[e.valueField]).join(e.separator),t.emit("update:modelValue",d.value),t.emit("change",C,d.value),g()}function x(){m.value||n.value.togglePopup()}function b(C){d.value="",t.emit("update:modelValue",""),t.emit("clear")}function I(C){const S=i(C);T(S)}function w(){return f.value}function V(C){t.emit("input",C)}return t.expose({getDisplayText:w}),l.watch([()=>e.disabled,()=>e.editable,()=>e.enableClear,()=>e.enableSearch,()=>e.readonly],([C,S,se,ce,de])=>{o.value=C,c.value=S,s.value=se,u.value=ce,m.value=de}),()=>l.createVNode(P,{ref:n,id:e.id,disable:o.value,readonly:m.value,forcePlaceholder:e.forcePlaceholder,editable:c.value,buttonContent:e.dropDownIcon,placeholder:e.placeholder,enableClear:s.value,maxLength:e.maxLength,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:e.multiSelect,inputType:e.multiSelect?e.viewType:"text",modelValue:f.value,"onUpdate:modelValue":C=>f.value=C,focusOnCreated:e.focusOnCreated,selectOnCreated:e.selectOnCreated,onClear:b,onClick:x,onChange:I,onInput:V,beforeOpen:e.beforeOpen},{default:()=>[l.createVNode(J,{idField:e.idField,valueField:e.valueField,textField:e.textField,titleField:e.titleField,dataSource:y.value,selectedValues:d.value,multiSelect:e.multiSelect,enableSearch:u.value,maxHeight:e.maxHeight,width:e.fitEditor?p.value:void 0,onSelectionChange:T},null)]})}});function ee(e,t){e.schema;const n=l.ref(!0),o=l.ref(!0);function s(i){return!1}function u(){return!1}function m(){return!1}function y(){return!0}function f(i){}function c(){}function d(i){return null}return{canAccepts:s,checkCanDeleteComponent:u,checkCanMoveComponent:m,hideNestedPaddingInDesginerView:y,onAcceptMovedChildElement:f,resolveComponentContext:c,triggerBelongedComponentToMoveWhenMoved:n,triggerBelongedComponentToDeleteWhenDeleted:o,getPropsConfig:d}}class E{static getEditorTypesByMDataType(t){const n=this.fieldControlTypeMapping[t];return n||[{key:"",value:""}]}}v(E,"fieldControlTypeMapping",{String:[{key:r["input-group"].type,value:r["input-group"].name},{key:r.lookup.type,value:r.lookup.name},{key:r.Image.type,value:r.Image.name},{key:r["date-picker"].type,value:r["date-picker"].name},{key:r["check-box"].type,value:r["check-box"].name},{key:r["radio-group"].type,value:r["radio-group"].name},{key:r["combo-list"].type,value:r["combo-list"].name},{key:r.textarea.type,value:r.textarea.name}],Text:[{key:r.textarea.type,value:r.textarea.name},{key:r.avatar.type,value:r.avatar.name},{key:r.lookup.type,value:r.lookup.name}],Decimal:[{key:r["number-spinner"].type,value:r["number-spinner"].name}],Integer:[{key:r["number-spinner"].type,value:r["number-spinner"].name}],Number:[{key:r["number-spinner"].type,value:r["number-spinner"].name}],BigNumber:[{key:r["number-spinner"].type,value:r["number-spinner"].name}],Date:[{key:r["date-picker"].type,value:r["date-picker"].name}],DateTime:[{key:r["date-picker"].type,value:r["date-picker"].name}],Boolean:[{key:r.switch.type,value:r.switch.name},{key:r["check-box"].type,value:r["check-box"].name}],Enum:[{key:r["combo-list"].type,value:r["combo-list"].name},{key:r["radio-group"].type,value:r["radio-group"].name}],Object:[{key:r.lookup.type,value:r.lookup.name},{key:r["combo-list"].type,value:r["combo-list"].name},{key:r["radio-group"].type,value:r["radio-group"].name}],EmployeeSelector:[{key:r.EmployeeSelector.type,value:r.EmployeeSelector.name}],AdminOrganizationSelector:[{key:r.AdminOrganizationSelector.type,value:r.AdminOrganizationSelector.name}]});class te{constructor(t,n){v(this,"componentId");v(this,"viewModelId");v(this,"eventsEditorUtils");v(this,"formSchemaUtils");v(this,"formMetadataConverter");v(this,"designViewModelUtils");v(this,"designViewModelField");v(this,"controlCreatorUtils");v(this,"designerHostService");v(this,"schemaService",null);v(this,"metadataService",null);v(this,"propertyConfig",{type:"object",categories:{}});var o;this.componentId=t,this.designerHostService=n,this.eventsEditorUtils=n.eventsEditorUtils,this.formSchemaUtils=n.formSchemaUtils,this.formMetadataConverter=n.formMetadataConverter,this.viewModelId=((o=this.formSchemaUtils)==null?void 0:o.getViewModelIdByComponentId(t))||"",this.designViewModelUtils=n.designViewModelUtils,this.controlCreatorUtils=n.controlCreatorUtils,this.metadataService=n.metadataService,this.schemaService=n.schemaService}getTableInfo(){var t;return(t=this.schemaService)==null?void 0:t.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(t){const n=t.binding&&t.binding.type==="Form"&&t.binding.field;if(n){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(s=>s.id===n)}t.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(t,n){}getBasicPropConfig(t){var o,s;var n=this;return this.setDesignViewModelField(t),{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",data:E.getEditorTypesByMDataType(((s=(o=n.designViewModelField)==null?void 0:o.type)==null?void 0:s.name)||""),editable:!1}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"}},setPropertyRelates(u,m){if(u)switch(u&&u.propertyID){case"type":{n.changeControlType(t,u);break}}}}}changeControlType(t,n){var c,d,i,a,p;const o=n.propertyValue,s=this.formSchemaUtils.getComponentById(this.componentId);let u=this.getControlParentContainer(t.id,s);if(!u)return;const m=u.contents.findIndex(g=>g.id===t.id),y=u.contents[m];let f;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:o},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),f=this.controlCreatorUtils.setFormFieldProperty("Form",this.designViewModelField,null,o)),Object.assign(f,{id:y.id,appearance:y.appearance,size:y.size,label:y.label}),Object.assign(f.editor,{isTextArea:f.isTextArea&&y.isTextArea,type:o||"",placeHolder:(c=y.editor)==null?void 0:c.placeHolder,holdPlace:(d=y.editor)==null?void 0:d.holdPlace,readonly:(i=y.editor)==null?void 0:i.readonly,require:(a=y.editor)==null?void 0:a.require,visible:(p=y.editor)==null?void 0:p.visible}),u.contents.splice(m,1,f)}getAppearanceConfig(t=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"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!1,editor:{type:"response-layout-editor-setting"},$converter:"/converter/response-form-layout.converter"}}}}getControlParentContainer(t,n){let o;if(!n||!n.contents||n.contents.length===0)return null;for(const s of n.contents){if(s.id===t)return o=n,n;if(o=this.getControlParentContainer(t,s),o)return o}}getBindingFieldEditorOptions(t){const n=this.formSchemaUtils.getFormMetadataBasicInfo();return{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:t,formBasicInfo:n},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],beforeOpenDialog:o=>{const s=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);o.instance.loadData(s)},textField:"bindingField"}}}class ne extends te{constructor(t,n){super(t,n)}getBasicProperties(t){let n=this.getBasicPropConfig(t);return n.properties.binding=this.getFieldSelectorOptions(t),n}getAppearanceProperties(t){return this.getAppearanceConfig(t)}getEditorProperties(t){return this.getComponentConfig(t)}getPropertyConfig(t){return this.propertyConfig.categories.basic=this.getBasicProperties(t),this.propertyConfig.categories.appearance=this.getAppearanceProperties(t),this.propertyConfig.categories.editor=this.getEditorProperties(t),this.propertyConfig}getFieldSelectorOptions(t){const n=this.formSchemaUtils.getFormMetadataBasicInfo(),o=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);return{description:"绑定的表单字段",title:"绑定",$converter:"/converter/field-selector.converter",editor:{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:t,formBasicInfo:n},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],data:o}}}getComponentConfig(t,n={},o={}){const s=Object.assign({description:"组件信息",title:"组件信息",type:"input-group",$converter:"/converter/property-editor.converter"},n),u=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},o);return{...s,properties:{...u}}}}class oe extends ne{constructor(t,n){super(t,n)}getEditorProperties(t){return this.getComponentConfig(t,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean"},textField:{description:"",title:"数据源显示字段",type:"string"},idField:{description:"",title:"数据源值字段",type:"string"}})}}function ie(e,t){const{canAccepts:n,checkCanDeleteComponent:o,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:u,onAcceptMovedChildElement:m,resolveComponentContext:y,triggerBelongedComponentToMoveWhenMoved:f,triggerBelongedComponentToDeleteWhenDeleted:c}=ee(e),d=e.schema;function i(a){return new oe(a,t).getPropertyConfig(d)}return{canAccepts:n,checkCanDeleteComponent:o,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:u,onAcceptMovedChildElement:m,resolveComponentContext:y,triggerBelongedComponentToMoveWhenMoved:f,triggerBelongedComponentToDeleteWhenDeleted:c,getPropsConfig:i}}const ae=l.defineComponent({name:"FComboListDesign",props:B,emits:["clear","update:modelValue","change"],setup(e,t){const n=l.ref(),o=l.inject("designer-host-service"),s=l.inject("design-item-context"),u=ie(s,o),m=R.useDesignerComponent(n,s,u);return l.onMounted(()=>{n.value.componentInstance=m}),t.expose(m.value),()=>l.createVNode(P,{ref:n,id:e.id,disable:e.disabled,readonly:e.readonly,forcePlaceholder:e.forcePlaceholder,editable:!1,buttonContent:e.dropDownIcon,placeholder:e.placeholder,enableClear:!1,maxLength:e.maxLength,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:e.multiSelect,inputType:e.multiSelect?"tag":"text"},null)}}),re=e=>{const t=e;return t.install=function(n){n.component(t.name,e)},e};M.register=(e,t,n,o)=>{e["combo-list"]=M,t["combo-list"]=k},M.registerDesigner=(e,t,n)=>{e["combo-list"]=ae,t["combo-list"]=k};const le=re(M);h.FComboList=M,h.Placement=O,h.ViewType=L,h.comboListProps=B,h.default=le,h.propsResolver=k,Object.defineProperties(h,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|