@farris/ui-vue 1.3.0 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/accordion/index.esm.js +1 -1
- package/components/accordion/index.umd.cjs +1 -1
- package/components/avatar/index.esm.js +472 -366
- package/components/avatar/index.umd.cjs +1 -1
- package/components/button-edit/index.esm.js +1 -1
- package/components/button-edit/index.umd.cjs +1 -1
- package/components/calendar/index.esm.js +472 -480
- package/components/calendar/index.umd.cjs +1 -1
- package/components/capsule/index.esm.js +225 -233
- package/components/capsule/index.umd.cjs +1 -1
- package/components/checkbox/index.esm.js +615 -517
- package/components/checkbox/index.umd.cjs +1 -1
- package/components/color-picker/index.esm.js +325 -333
- package/components/color-picker/index.umd.cjs +2 -2
- package/components/combo-list/index.esm.js +578 -472
- package/components/combo-list/index.umd.cjs +1 -1
- package/components/combo-tree/index.esm.js +49 -49
- package/components/combo-tree/index.umd.cjs +1 -1
- package/components/common/index.esm.js +832 -722
- package/components/common/index.umd.cjs +1 -1
- package/components/component/index.esm.js +303 -981
- package/components/component/index.umd.cjs +1 -1
- package/components/condition/index.esm.js +8 -8
- package/components/condition/index.umd.cjs +1 -1
- package/components/content-container/index.esm.js +335 -1002
- package/components/content-container/index.umd.cjs +1 -1
- package/components/data-grid/index.esm.js +4429 -4312
- package/components/data-grid/index.umd.cjs +1 -1
- package/components/data-view/index.esm.js +3037 -3020
- package/components/data-view/index.umd.cjs +1 -1
- package/components/date-picker/index.esm.js +2216 -2119
- package/components/date-picker/index.umd.cjs +1 -1
- package/components/designer-canvas/index.css +1 -1
- package/components/designer-canvas/index.esm.js +914 -883
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/dropdown/index.esm.js +223 -231
- package/components/dropdown/index.umd.cjs +2 -2
- package/components/dynamic-form/index.esm.js +1691 -2187
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/dynamic-resolver/index.esm.js +143 -136
- package/components/dynamic-resolver/index.umd.cjs +1 -1
- package/components/events-editor/index.esm.js +250 -258
- package/components/events-editor/index.umd.cjs +1 -1
- package/components/expression-editor/index.esm.js +1 -1
- package/components/expression-editor/index.umd.cjs +1 -1
- package/components/external-container/index.esm.js +2672 -3438
- package/components/external-container/index.umd.cjs +1 -1
- package/components/field-selector/index.esm.js +2965 -2970
- package/components/field-selector/index.umd.cjs +1 -1
- package/components/filter-bar/index.esm.js +1650 -1602
- package/components/filter-bar/index.umd.cjs +1 -1
- package/components/flow-canvas/index.css +1 -1
- package/components/flow-canvas/index.esm.js +684 -675
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/image-cropper/index.esm.js +453 -461
- package/components/image-cropper/index.umd.cjs +1 -1
- package/components/input-group/index.esm.js +604 -507
- package/components/input-group/index.umd.cjs +1 -1
- package/components/layout/index.esm.js +402 -378
- package/components/layout/index.umd.cjs +1 -1
- package/components/list-nav/index.esm.js +348 -1019
- package/components/list-nav/index.umd.cjs +1 -1
- package/components/list-view/index.esm.js +1658 -1666
- package/components/list-view/index.umd.cjs +1 -1
- package/components/lookup/index.esm.js +5209 -5088
- package/components/lookup/index.umd.cjs +1 -1
- package/components/mapping-editor/index.esm.js +4329 -4213
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/nav/index.esm.js +905 -1357
- package/components/nav/index.umd.cjs +3 -3
- package/components/number-range/index.esm.js +517 -420
- package/components/number-range/index.umd.cjs +1 -1
- package/components/number-spinner/index.esm.js +588 -491
- package/components/number-spinner/index.umd.cjs +1 -1
- package/components/order/index.esm.js +1376 -1965
- package/components/order/index.umd.cjs +1 -1
- package/components/page-footer/index.esm.js +1 -1
- package/components/page-footer/index.umd.cjs +1 -1
- package/components/page-header/index.esm.js +1073 -1905
- package/components/page-header/index.umd.cjs +1 -1
- package/components/pagination/index.esm.js +809 -1237
- package/components/pagination/index.umd.cjs +1 -1
- package/components/progress/index.esm.js +198 -206
- package/components/progress/index.umd.cjs +3 -3
- package/components/property-editor/index.esm.js +1297 -1200
- package/components/property-editor/index.umd.cjs +2 -2
- package/components/property-panel/index.esm.js +609 -507
- package/components/property-panel/index.umd.cjs +1 -1
- package/components/query-solution/index.esm.js +3391 -3758
- package/components/query-solution/index.umd.cjs +1 -1
- package/components/radio-button/index.esm.js +1 -1
- package/components/radio-button/index.umd.cjs +1 -1
- package/components/radio-group/index.esm.js +544 -447
- package/components/radio-group/index.umd.cjs +1 -1
- package/components/rate/index.esm.js +247 -255
- package/components/rate/index.umd.cjs +1 -1
- package/components/response-layout/index.esm.js +146 -154
- package/components/response-layout/index.umd.cjs +1 -1
- package/components/response-layout-editor/index.esm.js +700 -675
- package/components/response-layout-editor/index.umd.cjs +1 -1
- package/components/response-toolbar/index.esm.js +956 -1786
- package/components/response-toolbar/index.umd.cjs +1 -1
- package/components/schema-selector/index.esm.js +4963 -5617
- package/components/schema-selector/index.umd.cjs +2 -2
- package/components/search-box/index.esm.js +158 -161
- package/components/search-box/index.umd.cjs +1 -1
- package/components/section/index.esm.js +436 -1124
- package/components/section/index.umd.cjs +1 -1
- package/components/smoke-detector/index.esm.js +92 -100
- package/components/smoke-detector/index.umd.cjs +1 -1
- package/components/splitter/index.esm.js +571 -1210
- package/components/splitter/index.umd.cjs +1 -1
- package/components/splitter/style.js +2 -0
- package/components/step/index.esm.js +239 -247
- package/components/step/index.umd.cjs +1 -1
- package/components/switch/index.esm.js +445 -348
- package/components/switch/index.umd.cjs +1 -1
- package/components/tabs/index.esm.js +2278 -3031
- package/components/tabs/index.umd.cjs +1 -1
- package/components/tags/index.esm.js +311 -319
- package/components/tags/index.umd.cjs +1 -1
- package/components/text/index.esm.js +215 -223
- package/components/text/index.umd.cjs +1 -1
- package/components/textarea/index.esm.js +468 -371
- package/components/textarea/index.umd.cjs +1 -1
- package/components/time-picker/index.esm.js +1271 -1174
- package/components/time-picker/index.umd.cjs +1 -1
- package/components/transfer/index.esm.js +469 -477
- package/components/transfer/index.umd.cjs +1 -1
- package/components/tree-grid/index.esm.js +3060 -3065
- package/components/tree-grid/index.umd.cjs +1 -1
- package/components/tree-view/index.esm.js +2476 -2481
- package/components/tree-view/index.umd.cjs +1 -1
- package/components/uploader/index.esm.js +374 -382
- package/components/uploader/index.umd.cjs +2 -2
- package/components/verify-detail/index.esm.js +248 -256
- package/components/verify-detail/index.umd.cjs +1 -1
- package/components/video/index.esm.js +414 -1093
- package/components/video/index.umd.cjs +1 -1
- package/components/weather/index.esm.js +498 -506
- package/components/weather/index.umd.cjs +5 -5
- package/farris.all.esm.js +20216 -21844
- package/farris.all.umd.cjs +9 -9
- package/index.css +1 -1
- package/package.json +1 -1
- package/types/common/directive/area-response.d.ts +10 -0
- package/types/common/index.d.ts +8 -0
- package/types/common/radio-checkbox/radio-checkbox.props.d.ts +1 -0
- package/types/common/utils/resolve-field.d.ts +2 -0
- package/types/common/utils/use-class.d.ts +7 -0
- package/types/component/src/designer/use-designer-rules.d.ts +2 -2
- package/types/condition/src/types.d.ts +2 -1
- package/types/content-container/src/designer/use-designer-rules.d.ts +3 -3
- package/types/data-grid/index.d.ts +8 -5
- package/types/data-grid/src/data-grid.component.d.ts +3 -2
- package/types/data-grid/src/designer/data-grid.design.component.d.ts +2 -2
- package/types/data-grid/src/designer/use-designer-rules.d.ts +2 -2
- package/types/data-view/components/row/hierarchy-row.component.d.ts +2 -2
- package/types/data-view/composition/data/use-tree-data.d.ts +1 -1
- package/types/data-view/composition/types.d.ts +7 -9
- package/types/designer-canvas/index.d.ts +2 -1
- package/types/designer-canvas/src/composition/rule/use-dragula-common-rule.d.ts +4 -0
- package/types/designer-canvas/src/composition/rule/use-template-rule.d.ts +30 -0
- package/types/designer-canvas/src/composition/types.d.ts +1 -2
- package/types/designer-canvas/src/types.d.ts +2 -1
- package/types/dynamic-form/src/designer/response-form.design.component.d.ts +7 -1
- package/types/dynamic-form/src/designer/use-designer-rules.d.ts +2 -2
- package/types/dynamic-form/src/property-config/form.property-config.d.ts +1 -1
- package/types/dynamic-resolver/src/common/toolbar-resolver.d.ts +1 -1
- package/types/external-container/src/designer/use-designer-rules.d.ts +3 -3
- package/types/layout/src/designer/layout-pane-use-designer-rules.d.ts +3 -3
- package/types/list-nav/src/designer/use-designer-rules.d.ts +3 -0
- package/types/pagination/src/components/buttons/goto-buttons.component.d.ts +2 -2
- package/types/pagination/src/components/buttons/next-buttons.component.d.ts +2 -2
- package/types/pagination/src/components/buttons/previous-buttons.component.d.ts +2 -2
- package/types/pagination/src/components/pages/page-list.component.d.ts +2 -2
- package/types/pagination/src/components/pages/page-number.component.d.ts +2 -2
- package/types/property-panel/index.d.ts +2 -1
- package/types/property-panel/src/composition/entity/input-base-property.d.ts +1 -1
- package/types/query-solution/src/designer/query-solution-config/composition/types.d.ts +34 -27
- package/types/query-solution/src/designer/query-solution-config/composition/use-panel.d.ts +2 -16
- package/types/query-solution/src/designer/query-solution-config/composition/use-property.d.ts +19 -0
- package/types/query-solution/src/designer/query-solution-config/composition/use-querysolution-rules.d.ts +3 -0
- package/types/query-solution/src/designer/query-solution-config/composition/use-transfer.d.ts +1 -1
- package/types/query-solution/src/property-config/query-solution.property-config.d.ts +60 -0
- package/types/query-solution/src/solutions.d.ts +108 -509
- package/types/response-layout-editor/index.d.ts +3 -1
- package/types/response-toolbar/src/designer/use-designer-rules.d.ts +3 -3
- package/types/response-toolbar/src/property-config/response-toolbar-item.property-config.d.ts +1 -0
- package/types/section/src/designer/use-designer-rules.d.ts +3 -3
- package/types/splitter/src/components/splitter-pane.component.d.ts +1 -1
- package/types/splitter/src/designer/splitter-pane-use-designer-rules.d.ts +3 -3
- package/types/splitter/src/designer/splitter-use-designer-rules.d.ts +3 -3
- package/types/tabs/src/designer/tab-page-use-designer-rules.d.ts +3 -3
- package/types/tabs/src/designer/tab-use-designer-rules.d.ts +3 -3
- package/types/tree-grid/index.d.ts +3 -3
- package/types/tree-grid/src/tree-grid.component.d.ts +1 -1
- package/types/designer-canvas/src/composition/rule/use-drag-drop-rules.d.ts +0 -19
- package/types/designer-canvas/src/composition/use-dragula-common-rule.d.ts +0 -4
- package/types/list-nav/src/composition/use-designer-rules.d.ts +0 -3
- package/types/query-solution/src/designer/query-solution-config/composition/mock-data.d.ts +0 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(f,d){typeof exports=="object"&&typeof module<"u"?d(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../response-layout-editor/index.umd.js/src/composition/converter/use-response-layout-editor-setting"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../designer-canvas/index.umd.js","../response-layout-editor/index.umd.js/src/composition/converter/use-response-layout-editor-setting","../common/index.umd.js"],d):(f=typeof globalThis<"u"?globalThis:f||self,d(f.avatar={},f.Vue,f.LodashES,f.dynamicResolver,f.designerCanvas,f.useResponseLayoutEditorSetting,f.common))})(this,function(f,d,v,I,E,V,S){"use strict";var te=Object.defineProperty;var ne=(f,d,v)=>d in f?te(f,d,{enumerable:!0,configurable:!0,writable:!0,value:v}):f[d]=v;var h=(f,d,v)=>ne(f,typeof d!="symbol"?d+"":d,v);const R={},L={};function w(i){const{properties:o,title:e,ignore:t}=i,n=t&&Array.isArray(t),a=Object.keys(o).reduce((c,A)=>((!n||!t.find(p=>p==A))&&(c[A]=o[A].type==="object"&&o[A].properties?w(o[A]):v.cloneDeep(o[A].default)),c),{});return(!n||!t.find(c=>c=="id"))&&(a.id=`${e}-${Date.now()}`),a}function N(i,o){const e=w(o);return Object.keys(i).reduce((t,n)=>(t[n]&&v.isPlainObject(t[n])&&v.isPlainObject(i[n])?Object.assign(t[n],i[n]):t[n]=i[n],t),e),e}function q(i,o){return Object.keys(i).filter(t=>i[t]!=null).reduce((t,n)=>{if(o.has(n)){const a=o.get(n);if(typeof a=="string")t[a]=i[n];else{const c=a(n,i[n],i);Object.assign(t,c)}}else t[n]=i[n];return t},{})}function j(i,o,e=new Map){const t=N(i,o);return q(t,e)}function D(i={}){function o(r,u,s,y){if(typeof s=="number")return y[r].length===s;if(typeof s=="object"){const m=Object.keys(s)[0],g=s[m];if(m==="not")return Number(y[r].length)!==Number(g);if(m==="moreThan")return Number(y[r].length)>=Number(g);if(m==="lessThan")return Number(y[r].length)<=Number(g)}return!1}function e(r,u,s,y){return y[r]&&y[r].propertyValue&&String(y[r].propertyValue.value)===String(s)}const t=new Map([["length",o],["getProperty",e]]);Object.keys(i).reduce((r,u)=>(r.set(u,i[u]),r),t);function n(r,u){const s=r;return typeof u=="number"?[{target:s,operator:"length",param:null,value:Number(u)}]:typeof u=="boolean"?[{target:s,operator:"getProperty",param:r,value:!!u}]:typeof u=="object"?Object.keys(u).map(y=>{if(y==="length")return{target:s,operator:"length",param:null,value:u[y]};const m=y,g=u[y];return{target:s,operator:"getProperty",param:m,value:g}}):[]}function a(r){return Object.keys(r).reduce((s,y)=>{const m=n(y,r[y]);return s.push(...m),s},[])}function c(r,u){if(t.has(r.operator)){const s=t.get(r.operator);return s&&s(r.target,r.param,r.value,u)||!1}return!1}function A(r,u){return a(r).reduce((m,g)=>m&&c(g,u),!0)}function p(r,u){const s=Object.keys(r),y=s.includes("allOf"),m=s.includes("anyOf"),g=y||m,F=(g?r[g?y?"allOf":"anyOf":"allOf"]:[r]).map(ee=>A(ee,u));return y?!F.includes(!1):F.includes(!0)}return{parseValueSchema:p}}const l={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"}},H={},U={};D();function Q(i,o,e=new Map,t=(c,A,p)=>A,n={},a=c=>c){return R[o.title]=o,L[o.title]=t,H[o.title]=n,U[o.title]=a,(c={})=>{const A=j(c,o,e),p=Object.keys(i).reduce((r,u)=>(r[u]=i[u].default,r),{});return Object.assign(p,A)}}function O(i,o,e){return o}const W=new Map([["appearance",I.resolveAppearance]]),G={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/avatar.schema.json",title:"avatar",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for avatar",type:"string"},type:{description:"The type string of avatar",type:"string",default:"avatar"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"boolean",default:!1},avatarWidth:{description:"",type:"number",default:100},avatarHeight:{description:"",type:"number",default:100},readonly:{description:"",type:"boolean",default:!1},cover:{description:"",type:"string",default:""},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"],ignore:["id","appearance","binding"]},T={avatarWidth:{type:Number,default:100},avatarHeight:{type:Number,default:100},cover:{type:String},readonly:{type:Boolean,default:!1},shape:{type:String,default:"circle"},maxSize:{type:Number,default:1},modelValue:{type:String,default:""},title:{type:String,default:""},imageType:{type:Array,default:["jpeg"]}},x=Q(T,G,W,O);function P(i,o,e,t){const n="data:image/jpeg;base64,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",a=d.ref(i.readonly);function c(m){return m.match(/\.(jpeg|jpg|gif|png|svg|bmp|webp)$/)!=null}function A(m){return m.indexOf("data:image/")>-1}function p(m){return m?"data:image/jpeg;base64,"+m:""}const r=d.computed(()=>{var g;if(!i.imageType||!i.imageType.length)return"";const m=(g=i.imageType)==null?void 0:g.map(C=>(C==="jpg"&&(C="jpeg"),`image/${C}`));return!m||!m.length?"image/*":m.join(",")}),u=d.computed(()=>{const m=t.value||i.cover||n;return c(m)||A(m)?m:p(m)}),s=d.computed(()=>a.value?"":i.title);function y(){a.value||e&&e.value&&e.value.click()}return{acceptTypes:r,imageSource:u,imageTitle:s,onClickImage:y}}const B=d.defineComponent({name:"FAvatar",props:T,emits:["change","update:modelValue"],setup(i,o){const e=d.computed(()=>({"f-avatar":!0,"f-avatar-readonly":i.readonly,"f-avatar-circle":i.shape==="circle","f-avatar-square":i.shape==="square"})),t=d.ref(i.modelValue),n=d.computed(()=>({width:i.avatarWidth+"px",height:i.avatarHeight+"px"})),a=!1;function c(){return""}function A(){}const p=d.ref(null),{acceptTypes:r,imageSource:u,onClickImage:s}=P(i,o,p,t);return()=>d.createVNode("div",{class:e.value,style:n.value,onClick:s},[a,d.createVNode("img",{title:i.title,class:"f-avatar-image",src:u.value,onError:c},null),!i.readonly&&d.createVNode("div",{class:"f-avatar-icon"},[d.createVNode("span",{class:"f-icon f-icon-camera"},null)]),d.createVNode("input",{ref:"file",name:"file-input",type:"file",class:"f-avatar-upload",accept:r.value,onChange:A,style:"display: none;"},null)])}});function Z(i,o){i.schema;const e=d.ref(!0),t=d.ref(!0);function n(s){return!1}function a(){return!1}function c(){return!1}function A(){return!0}function p(s){}function r(){}function u(s){return null}return{canAccepts:n,checkCanDeleteComponent:a,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:A,onAcceptMovedChildElement:p,resolveComponentContext:r,triggerBelongedComponentToMoveWhenMoved:e,triggerBelongedComponentToDeleteWhenDeleted:t,getPropsConfig:u}}class z{constructor(o,e){h(this,"componentId");h(this,"viewModelId");h(this,"eventsEditorUtils");h(this,"formSchemaUtils");h(this,"formMetadataConverter");h(this,"designViewModelUtils");h(this,"designViewModelField");h(this,"controlCreatorUtils");h(this,"designerHostService");h(this,"schemaService",null);h(this,"metadataService",null);h(this,"propertyConfig",{type:"object",categories:{}});var t;this.componentId=o,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((t=this.formSchemaUtils)==null?void 0:t.getViewModelIdByComponentId(o))||"",this.designViewModelUtils=e.designViewModelUtils,this.controlCreatorUtils=e.controlCreatorUtils,this.metadataService=e.metadataService,this.schemaService=e.schemaService}getTableInfo(){var o;return(o=this.schemaService)==null?void 0:o.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(o){const e=o.binding&&o.binding.type==="Form"&&o.binding.field;if(e){if(!this.designViewModelField){const t=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=t.fields.find(n=>n.id===e)}o.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(o,e){}getBasicPropConfig(o){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:o.type,name:l[o.type].name}]}}}}}getAppearanceConfig(o=null){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}updateElementByParentContainer(o,e){const t=e&&e.parent&&e.parent.schema;if(!t)return;const n=t.contents.findIndex(c=>c.id===o),a=v.cloneDeep(t.contents[n]);t.contents.splice(n,1),t.contents.splice(n,0,a)}}const b=class b{static getEditorTypesByMDataType(o){const e=b.fieldControlTypeMapping[o];return e||[{key:"",value:""}]}static getAllInputTypes(){const o=[];for(let e in b.fieldControlTypeMapping)b.fieldControlTypeMapping[e].forEach(t=>{o.find(n=>n.key===t.key&&n.value===t.value)||o.push({key:t.key,value:t.value})});return o}};h(b,"fieldControlTypeMapping",{String:[{key:l["input-group"].type,value:l["input-group"].name},{key:l.lookup.type,value:l.lookup.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.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}]});let k=b;const K=d.ref(0);class J extends z{constructor(e,t){super(e,t);h(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=V.useResponseLayoutEditorSetting(this.formSchemaUtils)}getPropertyConfig(e,t){return this.propertyConfig.categories.basic=this.getBasicProperties(e,t),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,t),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,t){var A;var n=this;this.setDesignViewModelField(e);const a=this.formSchemaUtils.getFormMetadataBasicInfo(),c=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:n.designViewModelField?k.getEditorTypesByMDataType((A=n.designViewModelField.type)==null?void 0:A.name):k.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",$converter:"/converter/field-selector.converter",editor:{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:e,formBasicInfo:a},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],textField:"bindingField",data:c}}},setPropertyRelates(p,r){if(p)switch(p&&p.propertyID){case"type":{n.changeControlType(e,p,t);break}case"label":{p.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,t){var n=this;return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:n.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,n.componentId)}}},setPropertyRelates(a,c){if(a)switch(a&&a.propertyID){case"responseLayout":n.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(a.propertyValue,n.componentId||e.id),n.updateUnifiedLayoutAfterResponseLayoutChanged(n.componentId),n.updateElementByParentContainer(e.id,t),delete e.responseLayout;break;case"class":n.updateUnifiedLayoutAfterControlChanged(a.propertyValue,e.id,this.componentId),n.updateElementByParentContainer(e.id,t);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,t,n){var u,s,y,m;const a=t.propertyValue,c=n&&n.parent&&n.parent.schema;if(!c)return;const A=c.contents.findIndex(g=>g.id===e.id),p=c.contents[A];let r;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:a},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),r=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,a)),r||(r=I.getSchemaByType("form-group")||{},r.editor=I.getSchemaByType(a)||{},delete r.editor.id,delete r.editor.binding,delete r.editor.appearance),Object.assign(r,{id:p.id,appearance:p.appearance,size:p.size,label:p.label,binding:p.binding,visible:p.visible}),Object.assign(r.editor,{isTextArea:r.isTextArea&&p.isTextArea,placeholder:(u=p.editor)==null?void 0:u.placeholder,holdPlace:(s=p.editor)==null?void 0:s.holdPlace,readonly:(y=p.editor)==null?void 0:y.readonly,require:(m=p.editor)==null?void 0:m.require}),c.contents.splice(A,1),c.contents.splice(A,0,r),n.schema=Object.assign(p,r),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(g=>g.classList.remove("dgComponentSelected")),K.value++}getComponentConfig(e,t={},n={}){const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},t),c=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},n);return{...a,properties:{...c}}}updateUnifiedLayoutAfterControlChanged(e,t,n){const a=e.split(" ");let c=a.find(s=>/^col-([1-9]|10|11|12)$/.test(s)),A=a.find(s=>/^col-md-([1-9]|10|11|12)$/.test(s)),p=a.find(s=>/^col-xl-([1-9]|10|11|12)$/.test(s)),r=a.find(s=>/^col-el-([1-9]|10|11|12)$/.test(s));c=c||"col-12",A=A||"col-md-"+c.replace("col-",""),p=p||"col-xl-"+A.replace("col-md-",""),r=r||"col-el-"+p.replace("col-xl-","");const u={id:t,columnInSM:parseInt(c.replace("col-",""),10),columnInMD:parseInt(A.replace("col-md-",""),10),columnInLG:parseInt(p.replace("col-xl-",""),10),columnInEL:parseInt(r.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(n,u)}updateUnifiedLayoutAfterResponseLayoutChanged(e,t){const{formNode:n}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!n||!n.unifiedLayout)return;const a=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(n,a,1),t){const g=a.find(C=>C.id===t.id);Object.assign(g||{},t)}const c=a.map(g=>g.columnInSM),A=a.map(g=>g.columnInMD),p=a.map(g=>g.columnInLG),r=a.map(g=>g.columnInEL),u=this.checkIsUniqueColumn(c)?c[0]:null,s=this.checkIsUniqueColumn(A)?A[0]:null,y=this.checkIsUniqueColumn(p)?p[0]:null,m=this.checkIsUniqueColumn(r)?r[0]:null;Object.assign(n.unifiedLayout,{uniqueColClassInSM:u,uniqueColClassInMD:s,uniqueColClassInLG:y,uniqueColClassInEL:m})}checkIsUniqueColumn(e){const t=new Set(e);return Array.from(t).length===1}}class Y extends J{constructor(o,e){super(o,e)}getEditorProperties(o){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}function X(i,o){const{canAccepts:e,checkCanDeleteComponent:t,checkCanMoveComponent:n,hideNestedPaddingInDesginerView:a,onAcceptMovedChildElement:c,resolveComponentContext:A,triggerBelongedComponentToMoveWhenMoved:p,triggerBelongedComponentToDeleteWhenDeleted:r}=Z(i),u=i.schema;function s(y,m){return new Y(y,o).getPropertyConfig(u,m)}return{canAccepts:e,checkCanDeleteComponent:t,checkCanMoveComponent:n,hideNestedPaddingInDesginerView:a,onAcceptMovedChildElement:c,resolveComponentContext:A,triggerBelongedComponentToMoveWhenMoved:p,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:s}}const $=d.defineComponent({name:"FAvatarDesign",props:T,emits:["change","update:modelValue"],setup(i,o){const e=d.ref(),t=d.inject("designer-host-service"),n=d.inject("design-item-context"),a=X(n,t),c=E.useDesignerComponent(e,n,a);d.onMounted(()=>{e.value.componentInstance=c}),o.expose(c.value);const A=d.computed(()=>({"f-avatar":!0,"f-avatar-readonly":i.readonly,"f-avatar-circle":i.shape==="circle","f-avatar-square":i.shape==="square"})),p=d.ref(i.modelValue),r=d.computed(()=>({width:i.avatarWidth+"px",height:i.avatarHeight+"px"})),u=!1;function s(){return""}function y(){}const m=d.ref(null),{acceptTypes:g,imageSource:C,onClickImage:M}=P(i,o,m,p);return()=>d.createVNode("div",{ref:e,class:A.value,style:r.value,onClick:M},[u,d.createVNode("img",{title:i.title,class:"f-avatar-image",src:C.value,onError:s},null),!i.readonly&&d.createVNode("div",{class:"f-avatar-icon"},[d.createVNode("span",{class:"f-icon f-icon-camera"},null)]),d.createVNode("input",{ref:"file",name:"file-input",type:"file",class:"f-avatar-upload",accept:g.value,onChange:y,style:"display: none;"},null)])}});B.register=(i,o,e,t)=>{i.avatar=B,o.avatar=x},B.registerDesigner=(i,o,e)=>{i.avatar=$,o.avatar=x};const _=S.withInstall(B);f.FAvatar=B,f.avatarProps=T,f.default=_,f.propsResolver=x,Object.defineProperties(f,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(C,f){typeof exports=="object"&&typeof module<"u"?f(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../designer-canvas/index.umd.js","../common/index.umd.js"],f):(C=typeof globalThis<"u"?globalThis:C||self,f(C.avatar={},C.Vue,C.LodashES,C.dynamicResolver,C.designerCanvas,C.common))})(this,function(C,f,B,D,P,L){"use strict";var de=Object.defineProperty;var pe=(C,f,B)=>f in C?de(C,f,{enumerable:!0,configurable:!0,writable:!0,value:B}):C[f]=B;var h=(C,f,B)=>pe(C,typeof f!="symbol"?f+"":f,B);const q={},j={};function N(i){const{properties:r,title:t,ignore:n}=i,o=n&&Array.isArray(n),c=Object.keys(r).reduce((d,y)=>((!o||!n.find(m=>m==y))&&(d[y]=r[y].type==="object"&&r[y].properties?N(r[y]):B.cloneDeep(r[y].default)),d),{});return t&&(!o||!n.find(d=>d=="id"))&&(c.id=`${t}-${Date.now()}`),c}function U(i,r){const t=N(r);return Object.keys(i).reduce((n,o)=>(n[o]&&B.isPlainObject(n[o])&&B.isPlainObject(i[o])?Object.assign(n[o],i[o]):n[o]=i[o],n),t),t}function H(i,r){return Object.keys(i).filter(n=>i[n]!=null).reduce((n,o)=>{if(r.has(o)){const c=r.get(o);if(typeof c=="string")n[c]=i[o];else{const d=c(o,i[o],i);Object.assign(n,d)}}else n[o]=i[o];return n},{})}function W(i,r,t=new Map){const n=U(i,r);return H(n,t)}function R(i={}){function r(a,l,e,p){if(typeof e=="number")return p[a].length===e;if(typeof e=="object"){const s=Object.keys(e)[0],A=e[s];if(s==="not")return Number(p[a].length)!==Number(A);if(s==="moreThan")return Number(p[a].length)>=Number(A);if(s==="lessThan")return Number(p[a].length)<=Number(A)}return!1}function t(a,l,e,p){return p[a]&&p[a].propertyValue&&String(p[a].propertyValue.value)===String(e)}const n=new Map([["length",r],["getProperty",t]]);Object.keys(i).reduce((a,l)=>(a.set(l,i[l]),a),n);function o(a,l){const e=a;return typeof l=="number"?[{target:e,operator:"length",param:null,value:Number(l)}]:typeof l=="boolean"?[{target:e,operator:"getProperty",param:a,value:!!l}]:typeof l=="object"?Object.keys(l).map(p=>{if(p==="length")return{target:e,operator:"length",param:null,value:l[p]};const s=p,A=l[p];return{target:e,operator:"getProperty",param:s,value:A}}):[]}function c(a){return Object.keys(a).reduce((e,p)=>{const s=o(p,a[p]);return e.push(...s),e},[])}function d(a,l){if(n.has(a.operator)){const e=n.get(a.operator);return e&&e(a.target,a.param,a.value,l)||!1}return!1}function y(a,l){return c(a).reduce((s,A)=>s&&d(A,l),!0)}function m(a,l){const e=Object.keys(a),p=e.includes("allOf"),s=e.includes("anyOf"),A=p||s,b=(A?a[A?p?"allOf":"anyOf":"allOf"]:[a]).map(T=>y(T,l));return p?!b.includes(!1):b.includes(!0)}return{parseValueSchema:m}}const u={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"}},G={},Q={};R();function O(i,r,t=new Map,n=(d,y,m)=>y,o={},c=d=>d){return q[r.title]=r,j[r.title]=n,G[r.title]=o,Q[r.title]=c,(d={})=>{const y=W(d,r,t),m=Object.keys(i).reduce((a,l)=>(a[l]=i[l].default,a),{});return Object.assign(m,y)}}function Z(i,r,t){return r}const z=new Map([["appearance",D.resolveAppearance]]),K={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/avatar.schema.json",title:"avatar",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for avatar",type:"string"},type:{description:"The type string of avatar",type:"string",default:"avatar"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"boolean",default:!1},avatarWidth:{description:"",type:"number",default:100},avatarHeight:{description:"",type:"number",default:100},readonly:{description:"",type:"boolean",default:!1},cover:{description:"",type:"string",default:""},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"],ignore:["id","appearance","binding"]},F={avatarWidth:{type:Number,default:100},avatarHeight:{type:Number,default:100},cover:{type:String},readonly:{type:Boolean,default:!1},shape:{type:String,default:"circle"},maxSize:{type:Number,default:1},modelValue:{type:String,default:""},title:{type:String,default:""},imageType:{type:Array,default:["jpeg"]}},V=O(F,K,z,Z);function x(i,r,t,n){const o="data:image/jpeg;base64,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",c=f.ref(i.readonly);function d(s){return s.match(/\.(jpeg|jpg|gif|png|svg|bmp|webp)$/)!=null}function y(s){return s.indexOf("data:image/")>-1}function m(s){return s?"data:image/jpeg;base64,"+s:""}const a=f.computed(()=>{var A;if(!i.imageType||!i.imageType.length)return"";const s=(A=i.imageType)==null?void 0:A.map(g=>(g==="jpg"&&(g="jpeg"),`image/${g}`));return!s||!s.length?"image/*":s.join(",")}),l=f.computed(()=>{const s=n.value||i.cover||o;return d(s)||y(s)?s:m(s)}),e=f.computed(()=>c.value?"":i.title);function p(){c.value||t&&t.value&&t.value.click()}return{acceptTypes:a,imageSource:l,imageTitle:e,onClickImage:p}}const k=f.defineComponent({name:"FAvatar",props:F,emits:["change","update:modelValue"],setup(i,r){const t=f.computed(()=>({"f-avatar":!0,"f-avatar-readonly":i.readonly,"f-avatar-circle":i.shape==="circle","f-avatar-square":i.shape==="square"})),n=f.ref(i.modelValue),o=f.computed(()=>({width:i.avatarWidth+"px",height:i.avatarHeight+"px"})),c=!1;function d(){return""}function y(){}const m=f.ref(null),{acceptTypes:a,imageSource:l,onClickImage:e}=x(i,r,m,n);return()=>f.createVNode("div",{class:t.value,style:o.value,onClick:e},[c,f.createVNode("img",{title:i.title,class:"f-avatar-image",src:l.value,onError:d},null),!i.readonly&&f.createVNode("div",{class:"f-avatar-icon"},[f.createVNode("span",{class:"f-icon f-icon-camera"},null)]),f.createVNode("input",{ref:"file",name:"file-input",type:"file",class:"f-avatar-upload",accept:a.value,onChange:y,style:"display: none;"},null)])}});function J(i,r){i.schema;const t=f.ref(!0),n=f.ref(!0);function o(e){return!1}function c(){return!1}function d(){return!1}function y(){return!0}function m(e){}function a(){}function l(e){return null}return{canAccepts:o,checkCanDeleteComponent:c,checkCanMoveComponent:d,hideNestedPaddingInDesginerView:y,onAcceptMovedChildElement:m,resolveComponentContext:a,triggerBelongedComponentToMoveWhenMoved:t,triggerBelongedComponentToDeleteWhenDeleted:n,getPropsConfig:l}}class X{constructor(r,t){h(this,"componentId");h(this,"viewModelId");h(this,"eventsEditorUtils");h(this,"formSchemaUtils");h(this,"formMetadataConverter");h(this,"designViewModelUtils");h(this,"designViewModelField");h(this,"controlCreatorUtils");h(this,"designerHostService");h(this,"schemaService",null);h(this,"metadataService",null);h(this,"propertyConfig",{type:"object",categories:{}});var n;this.componentId=r,this.designerHostService=t,this.eventsEditorUtils=t.eventsEditorUtils,this.formSchemaUtils=t.formSchemaUtils,this.formMetadataConverter=t.formMetadataConverter,this.viewModelId=((n=this.formSchemaUtils)==null?void 0:n.getViewModelIdByComponentId(r))||"",this.designViewModelUtils=t.designViewModelUtils,this.controlCreatorUtils=t.controlCreatorUtils,this.metadataService=t.metadataService,this.schemaService=t.schemaService}getTableInfo(){var r;return(r=this.schemaService)==null?void 0:r.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(r){const t=r.binding&&r.binding.type==="Form"&&r.binding.field;if(t){if(!this.designViewModelField){const n=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=n.fields.find(o=>o.id===t)}r.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(r,t){}getBasicPropConfig(r){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:r.type,name:u[r.type].name}]}}}}}getAppearanceConfig(r=null){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}updateElementByParentContainer(r,t){const n=t&&t.parent&&t.parent.schema;if(!n)return;const o=n.contents.findIndex(d=>d.id===r),c=B.cloneDeep(n.contents[o]);n.contents.splice(o,1),n.contents.splice(o,0,c)}}const M=class M{static getEditorTypesByMDataType(r){const t=M.fieldControlTypeMapping[r];return t||[{key:"",value:""}]}static getAllInputTypes(){const r=[];for(let t in M.fieldControlTypeMapping)M.fieldControlTypeMapping[t].forEach(n=>{r.find(o=>o.key===n.key&&o.value===n.value)||r.push({key:n.key,value:n.value})});return r}};h(M,"fieldControlTypeMapping",{String:[{key:u["input-group"].type,value:u["input-group"].name},{key:u.lookup.type,value:u.lookup.name},{key:u["date-picker"].type,value:u["date-picker"].name},{key:u["check-box"].type,value:u["check-box"].name},{key:u["check-group"].type,value:u["check-group"].name},{key:u["radio-group"].type,value:u["radio-group"].name},{key:u["combo-list"].type,value:u["combo-list"].name},{key:u.textarea.type,value:u.textarea.name}],Text:[{key:u.textarea.type,value:u.textarea.name},{key:u.lookup.type,value:u.lookup.name}],Decimal:[{key:u["number-spinner"].type,value:u["number-spinner"].name}],Integer:[{key:u["number-spinner"].type,value:u["number-spinner"].name}],Number:[{key:u["number-spinner"].type,value:u["number-spinner"].name}],BigNumber:[{key:u["number-spinner"].type,value:u["number-spinner"].name}],Date:[{key:u["date-picker"].type,value:u["date-picker"].name}],DateTime:[{key:u["date-picker"].type,value:u["date-picker"].name}],Boolean:[{key:u.switch.type,value:u.switch.name},{key:u["check-box"].type,value:u["check-box"].name}],Enum:[{key:u["combo-list"].type,value:u["combo-list"].name},{key:u["radio-group"].type,value:u["radio-group"].name}],Object:[{key:u.lookup.type,value:u.lookup.name},{key:u["combo-list"].type,value:u["combo-list"].name},{key:u["radio-group"].type,value:u["radio-group"].name}]});let E=M;const Y=f.ref(0);class ${constructor(){h(this,"label","");h(this,"id","");h(this,"columnInSM",12);h(this,"columnInMD",6);h(this,"columnInLG",3);h(this,"columnInEL",2);h(this,"displayWidthInSM",1);h(this,"displayWidthInMD",1);h(this,"displayWidthInLG",1);h(this,"displayWidthInEL",1);h(this,"displayColumnCountAtBreakPoint","md");h(this,"tagRow",0);h(this,"showTopBorder",0);h(this,"group",1);h(this,"isSupportedClass",!0);h(this,"fieldSetId","")}}function _(i){let r,t;const n=new Map;let o=[];function c(l,e){const s=l.split(" ").filter(I=>I.startsWith("col-"));if(s.length===0){e.isSupportedClass=!1;return}let A=s.find(I=>/^col-([1-9]|10|11|12)$/.test(I)),g=s.find(I=>/^col-md-([1-9]|10|11|12)$/.test(I)),v=s.find(I=>/^col-xl-([1-9]|10|11|12)$/.test(I)),b=s.find(I=>/^col-el-([1-9]|10|11|12)$/.test(I));A=A||"col-12",e.columnInSM=parseInt(A.replace("col-",""),10),e.displayWidthInSM=e.columnInSM/12,e.displayWidthInSM!==1&&(e.isSupportedClass=!1),g=g||"col-md-"+e.columnInSM,e.columnInMD=parseInt(g.replace("col-md-",""),10),e.displayWidthInMD=e.columnInMD/6,[1,2].includes(e.displayWidthInMD)||(e.isSupportedClass=!1),v=v||"col-xl-"+e.columnInMD,e.columnInLG=parseInt(v.replace("col-xl-",""),10),e.displayWidthInLG=e.columnInLG/3,[1,2,3,4].includes(e.displayWidthInLG)||(e.isSupportedClass=!1),b=b||"col-el-"+e.columnInLG,e.columnInEL=parseInt(b.replace("col-el-",""),10),e.displayWidthInEL=e.columnInEL/2,[1,2,3,4,5,6].includes(e.displayWidthInEL)||(e.isSupportedClass=!1)}function d(l,e,p,s=!1){let A=!1;l.contents.forEach(g=>{if(g.type==="fieldset"){p+=1,d(g,e,p,!0),A=!0;return}A&&(p+=1,A=!1);const v=g.appearance&&g.appearance.class,b=new $;v?c(v,b):b.isSupportedClass=!1,b.label=g.label||g.id,b.id=g.id,b.group=p,s&&(b.fieldSetId=l.id),t===g.id&&(r=p),n.set(g.id,g),e.push(b)})}function y(l){const e=i.getComponentById(l);if(!e||!e.componentType||!e.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=i.selectNode(e,s=>s.type===P.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function m(l,e){e=e||l.id;const{result:p,message:s,formNode:A}=y(e);if(!p)return{result:p,message:s};t=l.id,o=[],n.clear();const g=A.contents[0].type===P.DgControl.fieldset.type?0:1;d(A,o,g);const v=o.find(I=>!I.isSupportedClass);return{defaultState:{defaultGroupNumber:r||1,model:v?"customize":"standard"},importData:o}}function a(l,e){e=e;const{result:p,formNode:s}=y(e);if(!p)return"";const A=[];return l.forEach(g=>{var I;const v=n.get(g.id),b=v.appearance&&v.appearance.class;if(b){const w=b.split(" ").filter(ce=>!ce.startsWith("col-")),S="col-"+g.columnInSM,ie="col-md-"+g.columnInMD,ae="col-xl-"+g.columnInLG,se="col-el-"+g.columnInEL,le=[S,ie,ae,se].concat(w);v.appearance.class=le.join(" ")}if(g.fieldSetId){const T=s.contents.find(S=>S.id===g.fieldSetId),w=A.find(S=>S.id===g.fieldSetId);w?(I=w.contents)==null||I.push(v):(A.push(T),T.contents=[v])}else A.push(v)}),s.contents=A,s.id}return{checkCanFindFormNode:y,checkCanOpenLayoutEditor:m,changeFormControlsByResponseLayoutConfig:a,getResonseFormLayoutConfig:d}}class ee extends X{constructor(t,n){super(t,n);h(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=_(this.formSchemaUtils)}getPropertyConfig(t,n){return this.propertyConfig.categories.basic=this.getBasicProperties(t,n),this.propertyConfig.categories.appearance=this.getAppearanceProperties(t,n),this.propertyConfig.categories.editor=this.getEditorProperties(t),this.propertyConfig}getBasicProperties(t,n){var y;var o=this;this.setDesignViewModelField(t);const c=this.formSchemaUtils.getFormMetadataBasicInfo(),d=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:o.designViewModelField?E.getEditorTypesByMDataType((y=o.designViewModelField.type)==null?void 0:y.name):E.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",$converter:"/converter/field-selector.converter",editor:{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:t,formBasicInfo:c},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],textField:"bindingField",data:d}}},setPropertyRelates(m,a){if(m)switch(m&&m.propertyID){case"type":{o.changeControlType(t,m,n);break}case"label":{m.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(t,n){var o=this;return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:o.responseLayoutEditorFunction.checkCanOpenLayoutEditor(t,o.componentId)}}},setPropertyRelates(c,d){if(c)switch(c&&c.propertyID){case"responseLayout":o.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(c.propertyValue,o.componentId||t.id),o.updateUnifiedLayoutAfterResponseLayoutChanged(o.componentId),o.updateElementByParentContainer(t.id,n),delete t.responseLayout;break;case"class":o.updateUnifiedLayoutAfterControlChanged(c.propertyValue,t.id,this.componentId),o.updateElementByParentContainer(t.id,n);break}}}}getEditorProperties(t){return this.getComponentConfig(t)}changeControlType(t,n,o){var l,e,p,s;const c=n.propertyValue,d=o&&o.parent&&o.parent.schema;if(!d)return;const y=d.contents.findIndex(A=>A.id===t.id),m=d.contents[y];let a;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:c},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),a=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,c)),a||(a=this.controlCreatorUtils.createFormGroupWithoutField(c)),Object.assign(a,{id:m.id,appearance:m.appearance,size:m.size,label:m.label,binding:m.binding,visible:m.visible}),Object.assign(a.editor,{isTextArea:a.isTextArea&&m.isTextArea,placeholder:(l=m.editor)==null?void 0:l.placeholder,holdPlace:(e=m.editor)==null?void 0:e.holdPlace,readonly:(p=m.editor)==null?void 0:p.readonly,require:(s=m.editor)==null?void 0:s.require}),d.contents.splice(y,1),d.contents.splice(y,0,a),o.schema=Object.assign(m,a),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(A=>A.classList.remove("dgComponentSelected")),Y.value++}getComponentConfig(t,n={},o={}){const c=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},n),d=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},o);return{...c,properties:{...d}}}updateUnifiedLayoutAfterControlChanged(t,n,o){const c=t.split(" ");let d=c.find(e=>/^col-([1-9]|10|11|12)$/.test(e)),y=c.find(e=>/^col-md-([1-9]|10|11|12)$/.test(e)),m=c.find(e=>/^col-xl-([1-9]|10|11|12)$/.test(e)),a=c.find(e=>/^col-el-([1-9]|10|11|12)$/.test(e));d=d||"col-12",y=y||"col-md-"+d.replace("col-",""),m=m||"col-xl-"+y.replace("col-md-",""),a=a||"col-el-"+m.replace("col-xl-","");const l={id:n,columnInSM:parseInt(d.replace("col-",""),10),columnInMD:parseInt(y.replace("col-md-",""),10),columnInLG:parseInt(m.replace("col-xl-",""),10),columnInEL:parseInt(a.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(o,l)}updateUnifiedLayoutAfterResponseLayoutChanged(t,n){const{formNode:o}=this.responseLayoutEditorFunction.checkCanFindFormNode(t);if(!o||!o.unifiedLayout)return;const c=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(o,c,1),n){const A=c.find(g=>g.id===n.id);Object.assign(A||{},n)}const d=c.map(A=>A.columnInSM),y=c.map(A=>A.columnInMD),m=c.map(A=>A.columnInLG),a=c.map(A=>A.columnInEL),l=this.checkIsUniqueColumn(d)?d[0]:null,e=this.checkIsUniqueColumn(y)?y[0]:null,p=this.checkIsUniqueColumn(m)?m[0]:null,s=this.checkIsUniqueColumn(a)?a[0]:null;Object.assign(o.unifiedLayout,{uniqueColClassInSM:l,uniqueColClassInMD:e,uniqueColClassInLG:p,uniqueColClassInEL:s})}checkIsUniqueColumn(t){const n=new Set(t);return Array.from(n).length===1}}class te extends ee{constructor(r,t){super(r,t)}getEditorProperties(r){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}function ne(i,r){const{canAccepts:t,checkCanDeleteComponent:n,checkCanMoveComponent:o,hideNestedPaddingInDesginerView:c,onAcceptMovedChildElement:d,resolveComponentContext:y,triggerBelongedComponentToMoveWhenMoved:m,triggerBelongedComponentToDeleteWhenDeleted:a}=J(i),l=i.schema;function e(p,s){return new te(p,r).getPropertyConfig(l,s)}return{canAccepts:t,checkCanDeleteComponent:n,checkCanMoveComponent:o,hideNestedPaddingInDesginerView:c,onAcceptMovedChildElement:d,resolveComponentContext:y,triggerBelongedComponentToMoveWhenMoved:m,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:e}}const oe=f.defineComponent({name:"FAvatarDesign",props:F,emits:["change","update:modelValue"],setup(i,r){const t=f.ref(),n=f.inject("designer-host-service"),o=f.inject("design-item-context"),c=ne(o,n),d=P.useDesignerComponent(t,o,c);f.onMounted(()=>{t.value.componentInstance=d}),r.expose(d.value);const y=f.computed(()=>({"f-avatar":!0,"f-avatar-readonly":i.readonly,"f-avatar-circle":i.shape==="circle","f-avatar-square":i.shape==="square"})),m=f.ref(i.modelValue),a=f.computed(()=>({width:i.avatarWidth+"px",height:i.avatarHeight+"px"})),l=!1;function e(){return""}function p(){}const s=f.ref(null),{acceptTypes:A,imageSource:g,onClickImage:v}=x(i,r,s,m);return()=>f.createVNode("div",{ref:t,class:y.value,style:a.value,onClick:v},[l,f.createVNode("img",{title:i.title,class:"f-avatar-image",src:g.value,onError:e},null),!i.readonly&&f.createVNode("div",{class:"f-avatar-icon"},[f.createVNode("span",{class:"f-icon f-icon-camera"},null)]),f.createVNode("input",{ref:"file",name:"file-input",type:"file",class:"f-avatar-upload",accept:A.value,onChange:p,style:"display: none;"},null)])}});k.register=(i,r,t,n)=>{i.avatar=k,r.avatar=V},k.registerDesigner=(i,r,t)=>{i.avatar=oe,r.avatar=V};const re=L.withInstall(k);C.FAvatar=k,C.avatarProps=F,C.default=re,C.propsResolver=V,Object.defineProperties(C,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
@@ -8,7 +8,7 @@ import { withInstall as ne } from "../common/index.esm.js";
|
|
|
8
8
|
const oe = {}, ue = {};
|
|
9
9
|
function N(e) {
|
|
10
10
|
const { properties: t, title: u, ignore: o } = e, n = o && Array.isArray(o), l = Object.keys(t).reduce((c, r) => ((!n || !o.find((b) => b == r)) && (c[r] = t[r].type === "object" && t[r].properties ? N(t[r]) : Y(t[r].default)), c), {});
|
|
11
|
-
return (!n || !o.find((c) => c == "id")) && (l.id = `${u}-${Date.now()}`), l;
|
|
11
|
+
return u && (!n || !o.find((c) => c == "id")) && (l.id = `${u}-${Date.now()}`), l;
|
|
12
12
|
}
|
|
13
13
|
function ae(e, t) {
|
|
14
14
|
const u = N(t);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(h,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../tags/index.umd.js","../popover/index.umd.js","../designer-canvas/index.umd.js","../common/index.umd.js"],n):(h=typeof globalThis<"u"?globalThis:h||self,n(h["button-edit"]={},h.Vue,h.LodashES,h.dynamicResolver,h.FTags,h.FPopover,h.designerCanvas,h.common))})(this,function(h,n,P,L,D,A,$,G){"use strict";const q={},W={};function R(e){const{properties:t,title:u,ignore:a}=e,o=a&&Array.isArray(a),i=Object.keys(t).reduce((d,s)=>((!o||!a.find(b=>b==s))&&(d[s]=t[s].type==="object"&&t[s].properties?R(t[s]):P.cloneDeep(t[s].default)),d),{});return(!o||!a.find(d=>d=="id"))&&(i.id=`${u}-${Date.now()}`),i}function H(e,t){const u=R(t);return Object.keys(e).reduce((a,o)=>(a[o]&&P.isPlainObject(a[o])&&P.isPlainObject(e[o])?Object.assign(a[o],e[o]):a[o]=e[o],a),u),u}function _(e,t){return Object.keys(e).filter(a=>e[a]!=null).reduce((a,o)=>{if(t.has(o)){const i=t.get(o);if(typeof i=="string")a[i]=e[o];else{const d=i(o,e[o],e);Object.assign(a,d)}}else a[o]=e[o];return a},{})}function U(e,t,u=new Map){const a=H(e,t);return _(a,u)}function X(e={}){function t(l,c,r,f){if(typeof r=="number")return f[l].length===r;if(typeof r=="object"){const m=Object.keys(r)[0],g=r[m];if(m==="not")return Number(f[l].length)!==Number(g);if(m==="moreThan")return Number(f[l].length)>=Number(g);if(m==="lessThan")return Number(f[l].length)<=Number(g)}return!1}function u(l,c,r,f){return f[l]&&f[l].propertyValue&&String(f[l].propertyValue.value)===String(r)}const a=new Map([["length",t],["getProperty",u]]);Object.keys(e).reduce((l,c)=>(l.set(c,e[c]),l),a);function o(l,c){const r=l;return typeof c=="number"?[{target:r,operator:"length",param:null,value:Number(c)}]:typeof c=="boolean"?[{target:r,operator:"getProperty",param:l,value:!!c}]:typeof c=="object"?Object.keys(c).map(f=>{if(f==="length")return{target:r,operator:"length",param:null,value:c[f]};const m=f,g=c[f];return{target:r,operator:"getProperty",param:m,value:g}}):[]}function i(l){return Object.keys(l).reduce((r,f)=>{const m=o(f,l[f]);return r.push(...m),r},[])}function d(l,c){if(a.has(l.operator)){const r=a.get(l.operator);return r&&r(l.target,l.param,l.value,c)||!1}return!1}function s(l,c){return i(l).reduce((m,g)=>m&&d(g,c),!0)}function b(l,c){const r=Object.keys(l),f=r.includes("allOf"),m=r.includes("anyOf"),g=f||m,C=(g?l[g?f?"allOf":"anyOf":"allOf"]:[l]).map(v=>s(v,c));return f?!C.includes(!1):C.includes(!0)}return{parseValueSchema:b}}const z={},J={};X();function Q(e,t,u=new Map,a=(d,s,b)=>s,o={},i=d=>d){return q[t.title]=t,W[t.title]=a,z[t.title]=o,J[t.title]=i,(d={})=>{const s=U(d,t,u),b=Object.keys(e).reduce((l,c)=>(l[c]=e[c].default,l),{});return Object.assign(b,s)}}const Y=new Map([["appearance",L.resolveAppearance]]);function Z(e,t,u){return t}const K={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"button-edit"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},autoComplete:{description:"",type:"boolean",default:!1},buttonContent:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},inputType:{description:"",type:"string",enum:["text","tag"],default:"text"},multiSelect:{description:"",type:"boolean",default:!1},popup:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},ee={title:"buttonEdit",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中对齐"},{value:"right",name:"右对齐"}]}}}}}},k={id:String,buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:Number,tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"}},M=Q(k,K,Y,Z,ee),te={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},ne=n.defineComponent({name:"FOverlay",props:te,emits:["click"],setup(e,t){const u=n.ref(e.popupContentPosition),a=n.ref(e.host),o=n.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function i(s){t.emit("click"),s.preventDefault(),s.stopPropagation()}n.computed(()=>{const s=a.value;if(s){const b=s.getBoundingClientRect(),{left:l,top:c,height:r}=b;return{left:l,top:c+r}}return u.value});const d=n.computed(()=>({}));return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>{var s,b;return[n.createVNode("div",{class:"overlay-container",onClick:l=>i(l),style:o.value},[n.createVNode("div",{style:d.value},[(b=(s=t.slots).default)==null?void 0:b.call(s)])])]}})}});function oe(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function ae(e){const t=document.createElement("div");t.style.display="contents";let u;const a=e.onClickCallback||(()=>{}),o=()=>{a(),u&&u.unmount()};return u=n.createApp({setup(){n.onUnmounted(()=>{document.body.removeChild(t)});const i=oe(e);return()=>n.createVNode(ne,{"popup-content-position":e.popupPosition,host:e.host,onClick:o,backgroundColor:e.backgroundColor},{default:()=>[i&&i()]})}}),document.body.appendChild(t),u.mount(t),u}class ue{static show(t){return ae(t)}}const le=Symbol("FModalService");function N(e,t){function u(){const a=e.beforeOpen||e.beforeClickButton||null;let o=Promise.resolve(!0);if(a){const i=a(t.value);if(typeof i>"u")return o;typeof i=="boolean"?o=Promise.resolve(i):o=i}return o}return{judgeCanOpen:u}}function F(e,t,u,a,o){const i=n.ref(e.buttonBehavior),d=n.ref(e.popupOnInput),s=n.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:b}=N(e,o),l=n.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),c=n.inject(le,null),r=n.ref();async function f(y){if(await b()&&l.value){const x=!!t.slots.default;if(i.value==="Modal"){const C=e.modalOptions,O=c==null?void 0:c.open({...C,render:()=>t.slots.default&&t.slots.default()});r.value=O==null?void 0:O.modalRef}i.value==="Overlay"&&ue.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>t.slots.default&&t.slots.default()}),x&&i.value==="Popup"&&a.togglePopup(!0),x&&d.value&&a.hidePopup(),t.emit("clickButton",{origin:y,value:e.modelValue})}}function m(y){t.emit("mouseEnterIcon",y)}function g(y){t.emit("mouseLeaveIcon",y)}return{buttonGroupClass:s,onClickButton:f,onMouseEnterButton:m,onMouseLeaveButton:g,modalRef:r}}function ie(e,t,u,a,o,i){const d=n.ref(!1),s=n.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:b}=i;function l(m){d.value=m}n.watch(o,()=>{l(!!o.value)});function c(m){const g=!e.readonly&&!e.disable&&e.editable,y=!e.editable;m.stopPropagation(),(g||y)&&(b("",!1),l(!d.value),t.emit("clear"))}function r(m){if(s.value){if(!u.value){l(!1);return}!e.disable&&!e.readonly&&l(!0)}}function f(m){s.value&&l(!1)}return{enableClearButton:s,showClearButton:d,onClearValue:c,onMouseEnterTextBox:r,onMouseLeaveTextBox:f}}function re(e,t,u,a,o){const i=n.computed(()=>e.popupOnInput),d=n.computed(()=>e.popupOnFocus),{shouldPopupContent:s}=o,b=n.computed(()=>e.enableTitle?u.value:""),l=n.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),c=n.computed(()=>e.readonly||!e.editable),r=n.ref(!1),f=n.computed(()=>!e.disable&&r.value),m=n.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),g=n.computed(()=>({"input-group":!0,"f-state-disable":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly&&!e.disable,"f-state-focus":f.value}));function y(p,B=!0){u.value!==p&&(u.value=p,B&&(t.emit("change",p),t.emit("update:modelValue",p)))}function x(p){s.value=!1,y(p,!0)}n.watch(()=>e.modelValue,p=>{u.value=p});function C(p){r.value=!1,t.emit("blur",p),p.stopPropagation()}function O(p){t.emit("click",p)}function v(p){e.disable||(r.value=!0,c.value||(t.emit("focus",p),d.value&&!s.value&&o.popup()))}function w(p){t.emit("input",p.target.value);const B=p.target.value;a.value=B,u.value!==B&&y(B,e.updateOn==="change"),i.value&&!s.value&&o.popup()}function V(p){p.target.tagName!=="INPUT"&&p.preventDefault(),p.stopPropagation()}function j(p){t.emit("keydown",p)}function I(p){p.key==="Enter"&&(i.value||d.value)&&o.hidePopup(),t.emit("keyup",p)}function E(p){const B=p.target.value;p.stopPropagation(),y(B)}return{hasFocusedTextBox:f,isTextBoxReadonly:c,textBoxClass:m,textBoxPlaceholder:l,textBoxTitle:b,inputGroupClass:g,changeTextBoxValue:y,commitValue:x,onBlurTextBox:C,onClickTextBox:O,onFocusTextBox:v,onInput:w,onKeyDownTextBox:j,onKeyUpTextBox:I,onMouseDownTextBox:V,onTextBoxValueChange:E}}function S(e,t,u,a){const o=n.ref(),i=n.ref(!1),{judgeCanOpen:d}=N(e,a);function s(){const r=o.value;r&&r.show(u.value)}async function b(r=!1){if(!!t.slots.default){if(!r&&!i.value&&!await d())return;i.value=!i.value,await n.nextTick(),s()}}async function l(r=!1){if(!!t.slots.default){if(!r&&!await d())return;i.value=!0,await n.nextTick(),s()}}function c(){i.value=!1}return{hidePopup:c,popup:l,shouldPopupContent:i,togglePopup:b,popoverRef:o}}function se(e,t,u){const a=n.ref(),{isTextBoxReadonly:o,textBoxClass:i,textBoxPlaceholder:d,textBoxTitle:s,onBlurTextBox:b,onClickTextBox:l,onFocusTextBox:c,onInput:r,onKeyDownTextBox:f,onKeyUpTextBox:m,onMouseDownTextBox:g,onTextBoxValueChange:y}=u;return n.onMounted(()=>{var x,C;e.selectOnCreated&&((x=a.value)==null||x.select()),e.focusOnCreated&&((C=a.value)==null||C.focus())}),()=>n.createVNode("input",{ref:a,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:i.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:d.value,readonly:o.value,tabindex:e.tabIndex,title:s.value,type:e.inputType,value:t.value,onBlur:b,onChange:y,onClick:l,onFocus:c,onInput:r,onKeydown:f,onKeyup:m,onMousedown:g},null)}function ce(e,t,u){const a=n.ref(e.separator),{changeTextBoxValue:o}=u,i=n.computed(()=>t.value?t.value.split(a.value).map(s=>({name:s,selectable:!0})):[]);function d(s){o(s.map(b=>b.name).join(a.value),!0)}return()=>n.createVNode(D,{id:`${e.id}-tag-editor`,class:"form-control",data:i.value,showClose:!0,showInput:!0,onChange:d},null)}function de(e,t,u,a){const{buttonGroupClass:o,onClickButton:i,onMouseEnterButton:d,onMouseLeaveButton:s}=u,{enableClearButton:b,showClearButton:l,onClearValue:c}=a,r=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:o.value},[b.value&&n.withDirectives(n.createVNode("span",{class:"input-group-text input-group-clear",onClick:c},[n.createVNode("i",{class:"f-icon modal_close"},null)]),[[n.vShow,l.value]]),t.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",onClick:i,onMouseenter:d,onMouseleave:s},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:r,onClick:i,onMouseenter:d,onMouseleave:s},null):null]),buttonHandleElement:r}}function pe(e,t,u){const a=n.ref(e.popupMinWidth),{hidePopup:o,popoverRef:i}=u;return()=>n.createVNode(A,{id:`${e.id}-popover`,ref:i,visible:!0,placement:"bottom-left",host:e.popupHost,"keep-width-with-reference":!0,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:a.value,offsetX:e.popupOffsetX,onHidden:o},{default:()=>{var d,s;return[(s=(d=t.slots).default)==null?void 0:s.call(d)]}})}const T=n.defineComponent({name:"FButtonEdit",props:k,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,t){const u=n.ref(),a=n.ref(e.customClass),o=n.ref(e.modelValue),i=S(e,t,u,o),{shouldPopupContent:d,hidePopup:s,togglePopup:b}=i,l=F(e,t,u,i,o),c=n.ref(""),r=re(e,t,o,c,i),{hasFocusedTextBox:f,commitValue:m,inputGroupClass:g}=r,y=ie(e,t,o,f,c,r),{onMouseEnterTextBox:x,onMouseLeaveTextBox:C}=y,O=n.computed(()=>{const p={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return a.value&&a.value.split(" ").reduce((B,ge)=>(B[ge]=!0,B),p),p});function v(){return e.multiSelect&&e.inputType==="tag"?ce(e,o,r):se(e,o,r)}let w=v();n.watch([()=>e.multiSelect,()=>e.inputType],()=>{w=v()});const{renderButtonGroup:V,buttonHandleElement:j}=de(e,t,l,y),I=pe(e,t,i),E={commitValue:m,elementRef:u,hidePopup:s,shouldPopupContent:d,togglePopup:b,openDialog:()=>{j.value&&e.buttonBehavior==="Modal"&&j.value.click()},getModal:()=>{var p;return e.buttonBehavior==="Modal"?(p=l.modalRef.value)==null?void 0:p.value:null}};return n.onMounted(()=>{u.value.componentInstance=E,window.onresize=()=>{document.body.click()}}),t.expose(E),()=>n.createVNode(n.Fragment,null,[n.createVNode("div",n.mergeProps(t.attrs,{ref:u,class:O.value,id:e.id}),[n.createVNode("div",{id:`${e.id}-input-group`,class:g.value,onMouseenter:x,onMouseleave:C},[w(),V()])]),d.value&&I()])}});function fe(e,t,u){const{buttonGroupClass:a}=u,o=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:a.value},[t.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button"},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:o},null):null]),buttonHandleElement:o}}const me=n.defineComponent({name:"FButtonEdit",props:k,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,t){const u=n.ref(),a=n.inject("design-item-context"),o=$.useDesignerComponent(u,a),i=n.ref(e.customClass),d=n.ref(e.modelValue),s=S(e,t,u,d),b=F(e,t,u,s,d),l=n.ref(),c=n.computed(()=>({"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disable":!0,"f-state-editable":!1,"f-state-readonly":!0}));n.onMounted(()=>{u.value.componentInstance=o}),t.expose(o.value);const r=n.computed(()=>{const m={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return i.value&&i.value.split(" ").reduce((g,y)=>(g[y]=!0,g),m),m}),{renderButtonGroup:f}=fe(e,t,b);return()=>n.createVNode("div",n.mergeProps(t.attrs,{ref:u,class:r.value,id:e.id}),[n.createVNode("div",{class:c.value},[n.createVNode("input",{ref:l,class:"form-control",readonly:!0,placeholder:e.placeholder},null),f()])])}});T.register=(e,t,u,a)=>{e["button-edit"]=T,t["button-edit"]=M},T.registerDesigner=(e,t,u)=>{e["button-edit"]=me,t["button-edit"]=M};const be=G.withInstall(T);h.FButtonEdit=T,h.buttonEditProps=k,h.default=be,h.propsResolver=M,Object.defineProperties(h,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(h,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../tags/index.umd.js","../popover/index.umd.js","../designer-canvas/index.umd.js","../common/index.umd.js"],n):(h=typeof globalThis<"u"?globalThis:h||self,n(h["button-edit"]={},h.Vue,h.LodashES,h.dynamicResolver,h.FTags,h.FPopover,h.designerCanvas,h.common))})(this,function(h,n,P,L,D,A,$,G){"use strict";const q={},W={};function R(e){const{properties:t,title:u,ignore:a}=e,o=a&&Array.isArray(a),i=Object.keys(t).reduce((d,s)=>((!o||!a.find(b=>b==s))&&(d[s]=t[s].type==="object"&&t[s].properties?R(t[s]):P.cloneDeep(t[s].default)),d),{});return u&&(!o||!a.find(d=>d=="id"))&&(i.id=`${u}-${Date.now()}`),i}function H(e,t){const u=R(t);return Object.keys(e).reduce((a,o)=>(a[o]&&P.isPlainObject(a[o])&&P.isPlainObject(e[o])?Object.assign(a[o],e[o]):a[o]=e[o],a),u),u}function _(e,t){return Object.keys(e).filter(a=>e[a]!=null).reduce((a,o)=>{if(t.has(o)){const i=t.get(o);if(typeof i=="string")a[i]=e[o];else{const d=i(o,e[o],e);Object.assign(a,d)}}else a[o]=e[o];return a},{})}function U(e,t,u=new Map){const a=H(e,t);return _(a,u)}function X(e={}){function t(l,c,r,f){if(typeof r=="number")return f[l].length===r;if(typeof r=="object"){const m=Object.keys(r)[0],g=r[m];if(m==="not")return Number(f[l].length)!==Number(g);if(m==="moreThan")return Number(f[l].length)>=Number(g);if(m==="lessThan")return Number(f[l].length)<=Number(g)}return!1}function u(l,c,r,f){return f[l]&&f[l].propertyValue&&String(f[l].propertyValue.value)===String(r)}const a=new Map([["length",t],["getProperty",u]]);Object.keys(e).reduce((l,c)=>(l.set(c,e[c]),l),a);function o(l,c){const r=l;return typeof c=="number"?[{target:r,operator:"length",param:null,value:Number(c)}]:typeof c=="boolean"?[{target:r,operator:"getProperty",param:l,value:!!c}]:typeof c=="object"?Object.keys(c).map(f=>{if(f==="length")return{target:r,operator:"length",param:null,value:c[f]};const m=f,g=c[f];return{target:r,operator:"getProperty",param:m,value:g}}):[]}function i(l){return Object.keys(l).reduce((r,f)=>{const m=o(f,l[f]);return r.push(...m),r},[])}function d(l,c){if(a.has(l.operator)){const r=a.get(l.operator);return r&&r(l.target,l.param,l.value,c)||!1}return!1}function s(l,c){return i(l).reduce((m,g)=>m&&d(g,c),!0)}function b(l,c){const r=Object.keys(l),f=r.includes("allOf"),m=r.includes("anyOf"),g=f||m,C=(g?l[g?f?"allOf":"anyOf":"allOf"]:[l]).map(v=>s(v,c));return f?!C.includes(!1):C.includes(!0)}return{parseValueSchema:b}}const z={},J={};X();function Q(e,t,u=new Map,a=(d,s,b)=>s,o={},i=d=>d){return q[t.title]=t,W[t.title]=a,z[t.title]=o,J[t.title]=i,(d={})=>{const s=U(d,t,u),b=Object.keys(e).reduce((l,c)=>(l[c]=e[c].default,l),{});return Object.assign(b,s)}}const Y=new Map([["appearance",L.resolveAppearance]]);function Z(e,t,u){return t}const K={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"button-edit"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},autoComplete:{description:"",type:"boolean",default:!1},buttonContent:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},inputType:{description:"",type:"string",enum:["text","tag"],default:"text"},multiSelect:{description:"",type:"boolean",default:!1},popup:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},ee={title:"buttonEdit",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中对齐"},{value:"right",name:"右对齐"}]}}}}}},k={id:String,buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:Number,tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"}},M=Q(k,K,Y,Z,ee),te={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},ne=n.defineComponent({name:"FOverlay",props:te,emits:["click"],setup(e,t){const u=n.ref(e.popupContentPosition),a=n.ref(e.host),o=n.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function i(s){t.emit("click"),s.preventDefault(),s.stopPropagation()}n.computed(()=>{const s=a.value;if(s){const b=s.getBoundingClientRect(),{left:l,top:c,height:r}=b;return{left:l,top:c+r}}return u.value});const d=n.computed(()=>({}));return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>{var s,b;return[n.createVNode("div",{class:"overlay-container",onClick:l=>i(l),style:o.value},[n.createVNode("div",{style:d.value},[(b=(s=t.slots).default)==null?void 0:b.call(s)])])]}})}});function oe(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function ae(e){const t=document.createElement("div");t.style.display="contents";let u;const a=e.onClickCallback||(()=>{}),o=()=>{a(),u&&u.unmount()};return u=n.createApp({setup(){n.onUnmounted(()=>{document.body.removeChild(t)});const i=oe(e);return()=>n.createVNode(ne,{"popup-content-position":e.popupPosition,host:e.host,onClick:o,backgroundColor:e.backgroundColor},{default:()=>[i&&i()]})}}),document.body.appendChild(t),u.mount(t),u}class ue{static show(t){return ae(t)}}const le=Symbol("FModalService");function N(e,t){function u(){const a=e.beforeOpen||e.beforeClickButton||null;let o=Promise.resolve(!0);if(a){const i=a(t.value);if(typeof i>"u")return o;typeof i=="boolean"?o=Promise.resolve(i):o=i}return o}return{judgeCanOpen:u}}function F(e,t,u,a,o){const i=n.ref(e.buttonBehavior),d=n.ref(e.popupOnInput),s=n.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:b}=N(e,o),l=n.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),c=n.inject(le,null),r=n.ref();async function f(y){if(await b()&&l.value){const x=!!t.slots.default;if(i.value==="Modal"){const C=e.modalOptions,O=c==null?void 0:c.open({...C,render:()=>t.slots.default&&t.slots.default()});r.value=O==null?void 0:O.modalRef}i.value==="Overlay"&&ue.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>t.slots.default&&t.slots.default()}),x&&i.value==="Popup"&&a.togglePopup(!0),x&&d.value&&a.hidePopup(),t.emit("clickButton",{origin:y,value:e.modelValue})}}function m(y){t.emit("mouseEnterIcon",y)}function g(y){t.emit("mouseLeaveIcon",y)}return{buttonGroupClass:s,onClickButton:f,onMouseEnterButton:m,onMouseLeaveButton:g,modalRef:r}}function ie(e,t,u,a,o,i){const d=n.ref(!1),s=n.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:b}=i;function l(m){d.value=m}n.watch(o,()=>{l(!!o.value)});function c(m){const g=!e.readonly&&!e.disable&&e.editable,y=!e.editable;m.stopPropagation(),(g||y)&&(b("",!1),l(!d.value),t.emit("clear"))}function r(m){if(s.value){if(!u.value){l(!1);return}!e.disable&&!e.readonly&&l(!0)}}function f(m){s.value&&l(!1)}return{enableClearButton:s,showClearButton:d,onClearValue:c,onMouseEnterTextBox:r,onMouseLeaveTextBox:f}}function re(e,t,u,a,o){const i=n.computed(()=>e.popupOnInput),d=n.computed(()=>e.popupOnFocus),{shouldPopupContent:s}=o,b=n.computed(()=>e.enableTitle?u.value:""),l=n.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),c=n.computed(()=>e.readonly||!e.editable),r=n.ref(!1),f=n.computed(()=>!e.disable&&r.value),m=n.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),g=n.computed(()=>({"input-group":!0,"f-state-disable":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly&&!e.disable,"f-state-focus":f.value}));function y(p,B=!0){u.value!==p&&(u.value=p,B&&(t.emit("change",p),t.emit("update:modelValue",p)))}function x(p){s.value=!1,y(p,!0)}n.watch(()=>e.modelValue,p=>{u.value=p});function C(p){r.value=!1,t.emit("blur",p),p.stopPropagation()}function O(p){t.emit("click",p)}function v(p){e.disable||(r.value=!0,c.value||(t.emit("focus",p),d.value&&!s.value&&o.popup()))}function w(p){t.emit("input",p.target.value);const B=p.target.value;a.value=B,u.value!==B&&y(B,e.updateOn==="change"),i.value&&!s.value&&o.popup()}function V(p){p.target.tagName!=="INPUT"&&p.preventDefault(),p.stopPropagation()}function j(p){t.emit("keydown",p)}function I(p){p.key==="Enter"&&(i.value||d.value)&&o.hidePopup(),t.emit("keyup",p)}function E(p){const B=p.target.value;p.stopPropagation(),y(B)}return{hasFocusedTextBox:f,isTextBoxReadonly:c,textBoxClass:m,textBoxPlaceholder:l,textBoxTitle:b,inputGroupClass:g,changeTextBoxValue:y,commitValue:x,onBlurTextBox:C,onClickTextBox:O,onFocusTextBox:v,onInput:w,onKeyDownTextBox:j,onKeyUpTextBox:I,onMouseDownTextBox:V,onTextBoxValueChange:E}}function S(e,t,u,a){const o=n.ref(),i=n.ref(!1),{judgeCanOpen:d}=N(e,a);function s(){const r=o.value;r&&r.show(u.value)}async function b(r=!1){if(!!t.slots.default){if(!r&&!i.value&&!await d())return;i.value=!i.value,await n.nextTick(),s()}}async function l(r=!1){if(!!t.slots.default){if(!r&&!await d())return;i.value=!0,await n.nextTick(),s()}}function c(){i.value=!1}return{hidePopup:c,popup:l,shouldPopupContent:i,togglePopup:b,popoverRef:o}}function se(e,t,u){const a=n.ref(),{isTextBoxReadonly:o,textBoxClass:i,textBoxPlaceholder:d,textBoxTitle:s,onBlurTextBox:b,onClickTextBox:l,onFocusTextBox:c,onInput:r,onKeyDownTextBox:f,onKeyUpTextBox:m,onMouseDownTextBox:g,onTextBoxValueChange:y}=u;return n.onMounted(()=>{var x,C;e.selectOnCreated&&((x=a.value)==null||x.select()),e.focusOnCreated&&((C=a.value)==null||C.focus())}),()=>n.createVNode("input",{ref:a,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:i.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:d.value,readonly:o.value,tabindex:e.tabIndex,title:s.value,type:e.inputType,value:t.value,onBlur:b,onChange:y,onClick:l,onFocus:c,onInput:r,onKeydown:f,onKeyup:m,onMousedown:g},null)}function ce(e,t,u){const a=n.ref(e.separator),{changeTextBoxValue:o}=u,i=n.computed(()=>t.value?t.value.split(a.value).map(s=>({name:s,selectable:!0})):[]);function d(s){o(s.map(b=>b.name).join(a.value),!0)}return()=>n.createVNode(D,{id:`${e.id}-tag-editor`,class:"form-control",data:i.value,showClose:!0,showInput:!0,onChange:d},null)}function de(e,t,u,a){const{buttonGroupClass:o,onClickButton:i,onMouseEnterButton:d,onMouseLeaveButton:s}=u,{enableClearButton:b,showClearButton:l,onClearValue:c}=a,r=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:o.value},[b.value&&n.withDirectives(n.createVNode("span",{class:"input-group-text input-group-clear",onClick:c},[n.createVNode("i",{class:"f-icon modal_close"},null)]),[[n.vShow,l.value]]),t.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",onClick:i,onMouseenter:d,onMouseleave:s},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:r,onClick:i,onMouseenter:d,onMouseleave:s},null):null]),buttonHandleElement:r}}function pe(e,t,u){const a=n.ref(e.popupMinWidth),{hidePopup:o,popoverRef:i}=u;return()=>n.createVNode(A,{id:`${e.id}-popover`,ref:i,visible:!0,placement:"bottom-left",host:e.popupHost,"keep-width-with-reference":!0,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:a.value,offsetX:e.popupOffsetX,onHidden:o},{default:()=>{var d,s;return[(s=(d=t.slots).default)==null?void 0:s.call(d)]}})}const T=n.defineComponent({name:"FButtonEdit",props:k,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,t){const u=n.ref(),a=n.ref(e.customClass),o=n.ref(e.modelValue),i=S(e,t,u,o),{shouldPopupContent:d,hidePopup:s,togglePopup:b}=i,l=F(e,t,u,i,o),c=n.ref(""),r=re(e,t,o,c,i),{hasFocusedTextBox:f,commitValue:m,inputGroupClass:g}=r,y=ie(e,t,o,f,c,r),{onMouseEnterTextBox:x,onMouseLeaveTextBox:C}=y,O=n.computed(()=>{const p={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return a.value&&a.value.split(" ").reduce((B,ge)=>(B[ge]=!0,B),p),p});function v(){return e.multiSelect&&e.inputType==="tag"?ce(e,o,r):se(e,o,r)}let w=v();n.watch([()=>e.multiSelect,()=>e.inputType],()=>{w=v()});const{renderButtonGroup:V,buttonHandleElement:j}=de(e,t,l,y),I=pe(e,t,i),E={commitValue:m,elementRef:u,hidePopup:s,shouldPopupContent:d,togglePopup:b,openDialog:()=>{j.value&&e.buttonBehavior==="Modal"&&j.value.click()},getModal:()=>{var p;return e.buttonBehavior==="Modal"?(p=l.modalRef.value)==null?void 0:p.value:null}};return n.onMounted(()=>{u.value.componentInstance=E,window.onresize=()=>{document.body.click()}}),t.expose(E),()=>n.createVNode(n.Fragment,null,[n.createVNode("div",n.mergeProps(t.attrs,{ref:u,class:O.value,id:e.id}),[n.createVNode("div",{id:`${e.id}-input-group`,class:g.value,onMouseenter:x,onMouseleave:C},[w(),V()])]),d.value&&I()])}});function fe(e,t,u){const{buttonGroupClass:a}=u,o=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:a.value},[t.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button"},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:o},null):null]),buttonHandleElement:o}}const me=n.defineComponent({name:"FButtonEdit",props:k,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,t){const u=n.ref(),a=n.inject("design-item-context"),o=$.useDesignerComponent(u,a),i=n.ref(e.customClass),d=n.ref(e.modelValue),s=S(e,t,u,d),b=F(e,t,u,s,d),l=n.ref(),c=n.computed(()=>({"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disable":!0,"f-state-editable":!1,"f-state-readonly":!0}));n.onMounted(()=>{u.value.componentInstance=o}),t.expose(o.value);const r=n.computed(()=>{const m={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return i.value&&i.value.split(" ").reduce((g,y)=>(g[y]=!0,g),m),m}),{renderButtonGroup:f}=fe(e,t,b);return()=>n.createVNode("div",n.mergeProps(t.attrs,{ref:u,class:r.value,id:e.id}),[n.createVNode("div",{class:c.value},[n.createVNode("input",{ref:l,class:"form-control",readonly:!0,placeholder:e.placeholder},null),f()])])}});T.register=(e,t,u,a)=>{e["button-edit"]=T,t["button-edit"]=M},T.registerDesigner=(e,t,u)=>{e["button-edit"]=me,t["button-edit"]=M};const be=G.withInstall(T);h.FButtonEdit=T,h.buttonEditProps=k,h.default=be,h.propsResolver=M,Object.defineProperties(h,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|