@farris/ui-vue 1.6.5-beta.7 → 1.6.5-beta.8
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 +65 -65
- package/components/accordion/index.umd.cjs +1 -1
- package/components/avatar/index.esm.js +28 -29
- package/components/avatar/index.umd.cjs +1 -1
- package/components/button-edit/index.esm.js +521 -517
- package/components/button-edit/index.umd.cjs +1 -1
- package/components/calendar/index.esm.js +134 -134
- package/components/calendar/index.umd.cjs +1 -1
- package/components/capsule/index.esm.js +192 -192
- package/components/capsule/index.umd.cjs +1 -1
- package/components/code-editor/index.esm.js +8 -8
- package/components/code-editor/index.umd.cjs +3 -3
- package/components/collection-property-editor/index.esm.js +72 -72
- package/components/collection-property-editor/index.umd.cjs +1 -1
- package/components/color-picker/index.esm.js +291 -289
- package/components/color-picker/index.umd.cjs +1 -1
- package/components/combo-list/index.esm.js +163 -157
- package/components/combo-list/index.umd.cjs +1 -1
- package/components/combo-tree/index.esm.js +113 -112
- package/components/combo-tree/index.umd.cjs +1 -1
- package/components/common/index.esm.js +3 -1
- package/components/common/index.umd.cjs +1 -1
- package/components/component/index.esm.js +10 -10
- package/components/component/index.umd.cjs +1 -1
- package/components/condition/index.esm.js +1122 -1121
- package/components/condition/index.umd.cjs +1 -1
- package/components/content-container/index.esm.js +190 -190
- package/components/content-container/index.umd.cjs +1 -1
- package/components/data-view/index.esm.js +2693 -2693
- package/components/data-view/index.umd.cjs +1 -1
- package/components/date-picker/index.esm.js +1604 -1601
- package/components/date-picker/index.umd.cjs +1 -1
- package/components/designer-canvas/index.esm.js +1082 -1079
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/discussion-editor/index.esm.js +973 -1040
- package/components/discussion-editor/index.umd.cjs +6 -6
- package/components/dropdown/index.esm.js +335 -330
- package/components/dropdown/index.umd.cjs +2 -2
- package/components/dynamic-form/index.esm.js +8 -8
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/dynamic-resolver/index.esm.js +6 -6
- package/components/dynamic-resolver/index.umd.cjs +1 -1
- package/components/dynamic-view/index.esm.js +344 -344
- package/components/dynamic-view/index.umd.cjs +1 -1
- package/components/events-editor/index.esm.js +8 -8
- package/components/events-editor/index.umd.cjs +3 -3
- package/components/expression-editor/index.esm.js +1470 -1460
- package/components/expression-editor/index.umd.cjs +3 -3
- package/components/fieldset/index.esm.js +55 -55
- package/components/fieldset/index.umd.cjs +1 -1
- package/components/filter-bar/index.esm.js +853 -843
- package/components/filter-bar/index.umd.cjs +1 -1
- package/components/filter-condition-editor/index.esm.js +922 -911
- package/components/filter-condition-editor/index.umd.cjs +3 -3
- package/components/flow-canvas/index.esm.js +12 -12
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/html-template/index.esm.js +164 -164
- package/components/html-template/index.umd.cjs +1 -1
- package/components/image-cropper/index.esm.js +198 -198
- package/components/image-cropper/index.umd.cjs +1 -1
- package/components/json-editor/index.esm.js +64 -64
- package/components/json-editor/index.umd.cjs +1 -1
- package/components/language-textbox/index.esm.js +140 -140
- package/components/language-textbox/index.umd.cjs +1 -1
- package/components/layout/index.esm.js +111 -111
- package/components/layout/index.umd.cjs +1 -1
- package/components/list-nav/index.esm.js +90 -90
- package/components/list-nav/index.umd.cjs +1 -1
- package/components/list-view/index.esm.js +104 -108
- package/components/list-view/index.umd.cjs +3 -3
- package/components/locale/index.esm.js +833 -901
- package/components/locale/index.umd.cjs +6 -6
- package/components/lookup/index.esm.js +1352 -1351
- package/components/lookup/index.umd.cjs +1 -1
- package/components/mapping-editor/index.esm.js +1311 -1307
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/menu-lookup/index.esm.js +1059 -1127
- package/components/menu-lookup/index.umd.cjs +6 -6
- package/components/message-box/index.esm.js +7 -7
- package/components/message-box/index.umd.cjs +1 -1
- package/components/modal/index.esm.js +9 -9
- package/components/modal/index.umd.cjs +1 -1
- package/components/nav/index.esm.js +106 -106
- package/components/nav/index.umd.cjs +1 -1
- package/components/number-range/index.esm.js +326 -326
- package/components/number-range/index.umd.cjs +1 -1
- package/components/number-spinner/index.esm.js +168 -167
- package/components/number-spinner/index.umd.cjs +1 -1
- package/components/order/index.esm.js +739 -737
- package/components/order/index.umd.cjs +4 -4
- package/components/page-footer/index.esm.js +94 -94
- package/components/page-footer/index.umd.cjs +1 -1
- package/components/page-header/index.esm.js +942 -939
- package/components/page-header/index.umd.cjs +1 -1
- package/components/pagination/index.esm.js +82 -82
- package/components/pagination/index.umd.cjs +1 -1
- package/components/popover/index.esm.js +1 -1
- package/components/popover/index.umd.cjs +1 -1
- package/components/progress/index.esm.js +113 -113
- package/components/progress/index.umd.cjs +2 -2
- package/components/property-editor/index.esm.js +151 -150
- package/components/property-editor/index.umd.cjs +1 -1
- package/components/property-panel/index.esm.js +565 -565
- package/components/property-panel/index.umd.cjs +2 -2
- package/components/query-solution/index.esm.js +4142 -4190
- package/components/query-solution/index.umd.cjs +6 -6
- package/components/radio-button/index.esm.js +182 -182
- package/components/radio-button/index.umd.cjs +1 -1
- package/components/rate/index.esm.js +106 -106
- package/components/rate/index.umd.cjs +1 -1
- package/components/response-layout/index.esm.js +409 -409
- package/components/response-layout/index.umd.cjs +1 -1
- package/components/response-layout-editor/index.esm.js +1488 -1478
- package/components/response-layout-editor/index.umd.cjs +1 -1
- package/components/response-toolbar/index.esm.js +779 -776
- package/components/response-toolbar/index.umd.cjs +1 -1
- package/components/schema-selector/index.esm.js +1765 -1762
- package/components/schema-selector/index.umd.cjs +5 -5
- package/components/search-box/index.esm.js +114 -114
- package/components/search-box/index.umd.cjs +1 -1
- package/components/section/index.esm.js +1184 -1181
- package/components/section/index.umd.cjs +1 -1
- package/components/smoke-detector/index.esm.js +163 -163
- package/components/smoke-detector/index.umd.cjs +1 -1
- package/components/sort-condition-editor/index.esm.js +927 -916
- package/components/sort-condition-editor/index.umd.cjs +3 -3
- package/components/splitter/index.esm.js +3 -3
- package/components/splitter/index.umd.cjs +1 -1
- package/components/step/index.esm.js +133 -133
- package/components/step/index.umd.cjs +1 -1
- package/components/switch/index.esm.js +76 -72
- package/components/switch/index.umd.cjs +1 -1
- package/components/tabs/index.esm.js +1527 -1524
- package/components/tabs/index.umd.cjs +2 -2
- package/components/tags/index.esm.js +93 -93
- package/components/tags/index.umd.cjs +1 -1
- package/components/text/index.esm.js +138 -138
- package/components/text/index.umd.cjs +1 -1
- package/components/textarea/index.esm.js +361 -361
- package/components/textarea/index.umd.cjs +2 -2
- package/components/tooltip/index.esm.js +173 -171
- package/components/tooltip/index.umd.cjs +1 -1
- package/components/transfer/index.esm.js +130 -134
- package/components/transfer/index.umd.cjs +4 -4
- package/components/tree-grid/index.esm.js +25 -25
- package/components/tree-grid/index.umd.cjs +1 -1
- package/components/tree-view/index.esm.js +1746 -1743
- package/components/tree-view/index.umd.cjs +1 -1
- package/components/uploader/index.esm.js +170 -170
- package/components/uploader/index.umd.cjs +2 -2
- package/components/verify-detail/index.esm.js +196 -196
- package/components/verify-detail/index.umd.cjs +1 -1
- package/components/video/index.esm.js +8 -8
- package/components/video/index.umd.cjs +1 -1
- package/components/weather/index.esm.js +9 -9
- package/components/weather/index.umd.cjs +2 -2
- package/farris.all.esm.js +16987 -17002
- package/farris.all.umd.cjs +27 -27
- package/package.json +1 -1
- package/types/lookup/src/composition/use-dialog.d.ts +2 -0
- package/types/lookup/src/composition/use-input-change.d.ts +1 -0
- package/components/time-picker/index.css +0 -1
- package/components/time-picker/index.esm.js +0 -9793
- package/components/time-picker/index.umd.cjs +0 -1
- package/components/time-picker/package.json +0 -8
- package/components/time-picker/style.js +0 -6
- package/designer/button-edit/index.css +0 -1
- package/designer/button-edit/index.esm.js +0 -4856
- package/designer/button-edit/index.umd.cjs +0 -1
- package/designer/checkbox/index.esm.js +0 -250
- package/designer/checkbox/index.umd.cjs +0 -1
- package/designer/checkbox-group/index.esm.js +0 -377
- package/designer/checkbox-group/index.umd.cjs +0 -1
- package/designer/data-grid/index.css +0 -1
- package/designer/data-grid/index.esm.js +0 -15413
- package/designer/data-grid/index.umd.cjs +0 -23
- package/designer/data-view/index.esm.js +0 -854
- package/designer/data-view/index.umd.cjs +0 -38
- package/designer/drawer/index.css +0 -1
- package/designer/drawer/index.esm.js +0 -525
- package/designer/drawer/index.umd.cjs +0 -1
- package/designer/farris-designer.all.esm.js +0 -22320
- package/designer/farris-designer.all.umd.cjs +0 -34
- package/designer/index.css +0 -1
- package/designer/input-group/index.esm.js +0 -1098
- package/designer/input-group/index.umd.cjs +0 -1
- package/designer/list-view/index.css +0 -1
- package/designer/list-view/index.esm.js +0 -4675
- package/designer/list-view/index.umd.cjs +0 -40
- package/designer/radio-group/index.css +0 -1
- package/designer/radio-group/index.esm.js +0 -6980
- package/designer/radio-group/index.umd.cjs +0 -1
- package/designer/tree-grid/index.esm.js +0 -1099
- package/designer/tree-grid/index.umd.cjs +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(F,M){typeof exports=="object"&&typeof module<"u"?M(exports,require("vue"),require("lodash-es"),require("../common/index.umd.js"),require("../dynamic-resolver/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../common/index.umd.js","../dynamic-resolver/index.umd.js"],M):(F=typeof globalThis<"u"?globalThis:F||self,M(F["html-template"]={},F.Vue,F.LodashES,F.common,F.dynamicResolver))})(this,function(F,M,U,ue,fe){"use strict";var Ke=Object.defineProperty;var et=(F,M,U)=>M in F?Ke(F,M,{enumerable:!0,configurable:!0,writable:!0,value:U}):F[M]=U;var V=(F,M,U)=>et(F,typeof M!="symbol"?M+"":M,U);function Q(n,e){let t;function r(a){const{properties:p,title:b,ignore:c}=a,f=c&&Array.isArray(c),v=Object.keys(p).reduce((E,w)=>((!f||!c.find(O=>O===w))&&(E[w]=p[w].type==="object"&&p[w].properties?r(p[w]):U.cloneDeep(p[w].default)),E),{});if(b&&(!f||!c.find(E=>E==="id"))){const E=b.toLowerCase().replace(/-/g,"_");v.id=`${E}_${Math.random().toString().slice(2,6)}`}return v}function o(a){const{properties:p,title:b,required:c}=a;if(c&&Array.isArray(c)){const f=c.reduce((v,E)=>(v[E]=p[E].type==="object"&&p[E].properties?r(p[E]):U.cloneDeep(p[E].default),v),{});if(b&&c.find(v=>v==="id")){const v=b.toLowerCase().replace(/-/g,"_");f.id=`${v}_${Math.random().toString().slice(2,6)}`}return f}return{type:b}}function s(a,p={},b){const c=n[a];if(c){let f=o(c);const v=e[a];return f=v?v({getSchemaByType:s},f,p,b):f,t!=null&&t.appendIdentifyForNewControl&&t.appendIdentifyForNewControl(f),f}return null}function i(a,p){const b=r(p);return Object.keys(b).reduce((c,f)=>(Object.prototype.hasOwnProperty.call(a,f)&&(c[f]&&U.isPlainObject(c[f])&&U.isPlainObject(a[f]||!a[f])?Object.assign(c[f],a[f]||{}):c[f]=a[f]),c),b),b}function g(a,p){return Object.keys(a).filter(c=>a[c]!=null).reduce((c,f)=>{if(p.has(f)){const v=p.get(f);if(typeof v=="string")c[v]=a[f];else{const E=v(f,a[f],a);Object.assign(c,E)}}else c[f]=a[f];return c},{})}function u(a,p,b=new Map){const c=i(a,p);return g(c,b)}function l(a){var b;const p=a.type;if(p){const c=n[p];if(!c)return a;const f=i(a,c),v=((b=a.editor)==null?void 0:b.type)||"";if(v){const E=n[v],w=i(a.editor,E);f.editor=w}return f}return a}function d(a){t=a}return{getSchemaByType:s,resolveSchemaWithDefaultValue:l,resolveSchemaToProps:u,mappingSchemaToProps:g,setDesignerContext:d}}const X={},Y={},{resolveSchemaWithDefaultValue:pe,resolveSchemaToProps:de,mappingSchemaToProps:me}=Q(X,Y);function ve(n={}){function e(l,d,a,p){if(typeof a=="number")return p[l].length===a;if(typeof a=="object"){const b=Object.keys(a)[0],c=a[b];if(b==="not")return Number(p[l].length)!==Number(c);if(b==="moreThan")return Number(p[l].length)>=Number(c);if(b==="lessThan")return Number(p[l].length)<=Number(c)}return!1}function t(l,d,a,p){return p[l]&&p[l].propertyValue&&String(p[l].propertyValue.value)===String(a)}const r=new Map([["length",e],["getProperty",t]]);Object.keys(n).reduce((l,d)=>(l.set(d,n[d]),l),r);function o(l,d){const a=l;return typeof d=="number"?[{target:a,operator:"length",param:null,value:Number(d)}]:typeof d=="boolean"?[{target:a,operator:"getProperty",param:l,value:!!d}]:typeof d=="object"?Object.keys(d).map(p=>{if(p==="length")return{target:a,operator:"length",param:null,value:d[p]};const b=p,c=d[p];return{target:a,operator:"getProperty",param:b,value:c}}):[]}function s(l){return Object.keys(l).reduce((a,p)=>{const b=o(p,l[p]);return a.push(...b),a},[])}function i(l,d){if(r.has(l.operator)){const a=r.get(l.operator);return a&&a(l.target,l.param,l.value,d)||!1}return!1}function g(l,d){return s(l).reduce((b,c)=>b&&i(c,d),!0)}function u(l,d){const a=Object.keys(l),p=a.includes("allOf"),b=a.includes("anyOf"),c=p||b,E=(c?l[c?p?"allOf":"anyOf":"allOf"]:[l]).map(O=>g(O,d));return p?!E.includes(!1):E.includes(!0)}return{parseValueSchema:u}}const ge={convertTo:(n,e,t,r)=>{n.appearance||(n.appearance={}),n.appearance[e]=t},convertFrom:(n,e,t)=>n.appearance?n.appearance[e]:n[e]},he={convertFrom:(n,e,t)=>n.buttons&&n.buttons.length?`共 ${n.buttons.length} 项`:"无"},be={convertTo:(n,e,t,r)=>{n.editor&&(n.editor[e]=t)},convertFrom:(n,e,t)=>n.editor&&Object.prototype.hasOwnProperty.call(n.editor,e)?n.editor[e]:n[e]},H={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"}},ye={convertFrom:(n,e,t)=>{var o;const r=n.editor&&n.editor[e]?n.editor[e]:n[e];return((o=H[r])==null?void 0:o.name)||r}},Se={convertTo:(n,e,t,r)=>{n[e]=n[e]},convertFrom:(n,e,t)=>n.editor?t.getRealEditorType(n.editor.type):""},Ee={convertTo:(n,e,t,r)=>{(n.type==="data-grid-column"||n.type==="tree-grid-column")&&(n.formatter?n.formatter[e]=t:n.formatter={[e]:t})},convertFrom:(n,e,t)=>{if(n.formatter){if(e==="trueText")return n.formatter.trueText;if(e==="falseText")return n.formatter.falseText;if(e==="prefix")return n.formatter.prefix;if(e==="suffix")return n.formatter.suffix;if(e==="precision")return n.formatter.precision;if(e==="decimal")return n.formatter.decimal;if(e==="thousand")return n.formatter.thousand;if(e==="dateFormat")return n.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return n.formatter.customFormat;if(e==="type")return n.formatter.type||"none"}return"none"}},Me={convertTo:(n,e,t,r)=>{n.command?n.command[e]=t:n.command={[e]:t},e==="enable"&&t&&(n.command.commands||(n.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(n,e,t)=>n.command&&e==="enable"?n.command.enable:""},Te={convertTo:(n,e,t,r)=>{n.column?n.column[e]=t:n.column={[e]:t},e==="fitColumns"&&t&&(n.column.fitMode||(n.column.fitMode="average"))},convertFrom:(n,e,t)=>{if(n.column){if(e==="fitColumns")return n.column.fitColumns;if(e==="fitMode")return n.column.fitMode}return""}},we={convertTo:(n,e,t,r)=>{n.summary?n.summary[e]=t:n.summary={[e]:t},e==="enable"&&t&&(n.summary?n.summary.groupFields||(n.summary.groupFields=[]):n.summary={enable:t,groupFields:[]})},convertFrom:(n,e,t)=>n.summary&&e==="enable"?n.summary.enable:n.type==="data-grid-column"?n.enableSummary===void 0?!1:n.enableSummary:""},Pe={convertTo:(n,e,t,r)=>{n.group?n.group[e]=t:n.group={[e]:t},e==="enable"&&t&&(n.group?n.group.groupFields||(n.group.groupFields=[]):n.group={enable:t,groupFields:[],showSummary:!1})},convertFrom:(n,e,t)=>{if(n.group){if(e==="enable")return n.group.enable;if(e==="showSummary")return n.group.showSummary}}},Fe={convertFrom:(n,e)=>n.binding?n.binding.path:"",convertTo:(n,e,t)=>{if(t&&t.length>0){const r=t[0];n.binding||(n.binding={}),n.binding.type="Form",n.binding.path=r.bindingField,n.binding.field=r.id,n.binding.fullPath=r.path,n.path=r.bindingPath}}},Ce={convertTo:(n,e,t,r)=>{n.pagination||(n.pagination={}),n.pagination[e]=t},convertFrom:(n,e,t)=>n.pagination?n.pagination[e]:n[e]},Ve={convertTo:(n,e,t,r)=>{n.rowNumber||(n.rowNumber={}),n.rowNumber[e]=t},convertFrom:(n,e,t)=>n.rowNumber?n.rowNumber[e]:n[e]},Ne={convertTo:(n,e,t,r)=>{n.selection||(n.selection={}),n.selection[e]=t},convertFrom:(n,e,t)=>{var r,o;return e==="showCheckbox"?(r=n.selection)!=null&&r.multiSelect?!0:(o=n.selection)==null?void 0:o.showCheckbox:n.selection?n.selection[e]:n[e]}},Oe={convertFrom:(n,e,t)=>n[e]&&n[e].length?`共 ${n[e].length} 项`:""},ke={convertFrom:(n,e)=>n[e]||"",convertTo:(n,e,t)=>{n[e]=t}},xe={convertTo:(n,e,t,r)=>{n.size||(n.size={}),n.size[e]=t},convertFrom:(n,e,t)=>n.size?n.size[e]:n[e]},Be={convertFrom:(n,e,t)=>{var r,o;return(r=n.formatter)!=null&&r.data&&e==="formatterEnumData"&&!n.formatterEnumData?(o=n.formatter)==null?void 0:o.data:n.formatterEnumData}},De={convertTo:(n,e,t,r)=>{n.sort||(n.sort={}),n.sort[e]=t},convertFrom:(n,e,t)=>{var r,o;if(e==="mode")return((r=n.sort)==null?void 0:r.mode)||"client";if(e==="multiSort")return!!((o=n.sort)!=null&&o.multiSort)}},je={convertTo:(n,e,t,r)=>{n.filter||(n.filter={}),n.filter[e]=t},convertFrom:(n,e,t)=>{var r;if(e==="mode")return((r=n.filter)==null?void 0:r.mode)||"client"}},$e={convertTo:(n,e,t,r)=>{n.rowOption?n.rowOption[e]=t:n.rowOption={[e]:t}},convertFrom:(n,e,t)=>{if(n.rowOption){if(e==="customRowStyle")return n.rowOption.customRowStyle;if(e==="customCellStyle")return n.rowOption.customCellStyle}return""}};function Z(n,e,t){const r=new Map([["/converter/appearance.converter",ge],["/converter/buttons.converter",he],["/converter/property-editor.converter",be],["/converter/items-count.converter",Oe],["/converter/type.converter",ye],["/converter/change-editor.converter",Se],["/converter/change-formatter.converter",Ee],["/converter/column-command.converter",Me],["/converter/column-option.converter",Te],["/converter/summary.converter",we],["/converter/group.converter",Pe],["/converter/form-group-label.converter",ke],["/converter/field-selector.converter",Fe],["/converter/pagination.converter",Ce],["/converter/row-number.converter",Ve],["/converter/grid-selection.converter",Ne],["/converter/size.converter",xe],["/converter/change-formatter-enum.converter",Be],["/converter/grid-sort.converter",De],["/converter/grid-filter.converter",je],["/converter/row-option.converter",$e]]),o=new Map([["string",{type:"input-group",enableClear:!1}],["boolean",{type:"combo-list",textField:"name",valueField:"value",idField:"value",enableClear:!1,editable:!1,data:[{value:!0,name:"是"},{value:!1,name:"否"}]}],["enum",{type:"combo-list",maxHeight:128,enableClear:!1,editable:!1}],["array",{type:"button-edit"}],["number",{type:"number-spinner",placeholder:""}],["events-editor",{type:"events-editor",hide:!0}]]),s=ve();function i(c,f){return()=>s.parseValueSchema(c,f)}function g(c,f,v){return c.includes("visible")&&f.visible!==void 0?typeof f.visible=="boolean"?()=>!!f.visible:f.visible===void 0?!0:i(f.visible,v):()=>!0}function u(c,f,v){return c.includes("readonly")&&f.readonly!==void 0?typeof f.readonly=="boolean"?()=>!!f.readonly:i(f.readonly,v):()=>!1}function l(c,f){const v=c.$converter||f;return typeof v=="string"&&v&&r.has(v)?r.get(v)||null:v||null}function d(c,f,v,E,w,O="",D=""){return Object.keys(c).map(P=>{const j=M.ref(1),$=P,h=c[P],k=Object.keys(h),L=h.title,m=h.type,y=o.get(m)||{type:"input-group",enableClear:!1},S=h.editor?Object.assign({},y,h.editor):Object.assign({},y),T=g(k,h,f),C=u(k,h,f);S.readonly=S.readonly===void 0?C():S.readonly;const B=h.type==="cascade"?d(h.properties,f,v,E,w,O,D):[],_=!0;let N=l(h,D);const A=M.computed({get(){if(j.value){if(["class","style"].find(Re=>Re===$)&&!N&&(N=r.get("/converter/appearance.converter")||null),N&&N.convertFrom)return N.convertFrom(v,P,w,O);const q=v[P];return Object.prototype.hasOwnProperty.call(h,"defaultValue")&&(q===void 0||typeof q=="string"&&q==="")?h.type==="boolean"?h.defaultValue:h.defaultValue||"":q}return null},set(q){j.value+=1,N&&N.convertTo?(N.convertTo(E,P,q,w,O),N.convertTo(v,P,q,w,O)):(E[P]=q,v[P]=q)}}),{refreshPanelAfterChanged:z,description:Ye,isExpand:Ze,parentPropertyID:Ie}=h,le={propertyID:$,propertyName:L,propertyType:m,propertyValue:A,editor:S,visible:T,readonly:C,cascadeConfig:B,hideCascadeTitle:_,refreshPanelAfterChanged:z,description:Ye,isExpand:Ze,parentPropertyID:Ie};return f[$]=le,le})}function a(c,f,v={}){const E={},w=n[c];return w&&w.categories?Object.keys(w.categories).map(D=>{const x=w.categories[D],P=x==null?void 0:x.title,j=d(x.properties||{},E,{},v,f);return{categoryId:D,categoryName:P,properties:j}}):[]}function p(c,f,v,E,w=""){const O=f.$ref.schema,D=f.$ref.converter,x=v[O],P=x.type,j=t(x),$={},h=n[P];if(h&&h.categories){const k=h.categories[c],L=k==null?void 0:k.title;D&&Object.keys(k.properties).forEach(S=>{k.properties[S].$converter=D});const m=(k==null?void 0:k.properties)||{},y=d(m,$,j,x,E,w);return{categoryId:c,categoryName:L,properties:y}}return{categoryId:c,categoryName:"",properties:[]}}function b(c,f,v,E,w){const O=c.type,D=t(c),x={};let P=w||n[O];if(P&&Object.keys(P).length===0&&v&&v.getPropConfig&&(P=v.getPropConfig(E)),P&&P.categories){const j=[];return Object.keys(P.categories).map($=>{const h=P.categories[$];if(h.$ref){j.push(p($,h,c,f,E));return}const k=h==null?void 0:h.title,L=h==null?void 0:h.tabId,m=h==null?void 0:h.tabName,y=h==null?void 0:h.hide,S=h==null?void 0:h.hideTitle,T=d(h.properties||{},x,D,c,f,E,h.$converter),{setPropertyRelates:C}=h,B=h==null?void 0:h.parentPropertyID;j.push({categoryId:$,categoryName:k,tabId:L,tabName:m,hide:y,properties:T,hideTitle:S,setPropertyRelates:C,parentPropertyID:B})}),j}return[]}return{getPropertyConfigBySchema:b,getPropertyConfigByType:a,propertyConverterMap:r}}const I={},R={};Z(I,R,pe);const K={},ee={},{resolveSchemaWithDefaultValue:Ue}=Q(K,ee),te={},ne={};Z(te,ne,Ue);function re(n,e,t=new Map,r=(i,g,u,l)=>g,o={},s=i=>i){return X[e.title]=e,Y[e.title]=r,I[e.title]=o,R[e.title]=s,K[e.title]=e,ee[e.title]=r,te[e.title]=o,ne[e.title]=s,(i={},g=!0)=>{if(!g)return me(i,t);const u=de(i,e,t),l=Object.keys(n).reduce((d,a)=>(d[a]=n[a].default,d),{});return Object.assign(l,u)}}const oe={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/html-template.schema.json",title:"html-template",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a html-template",type:"string"},type:{description:"The type string of html-template",type:"string",default:"html-template"},html:{description:"",type:"string",default:""},renderFunction:{description:"",type:"function",default:null}},required:["id","type"],ignore:[]},ie=new Map([]);function se(n,e,t){return e}const G={renderFunction:{type:Function}},ae=re(G,oe,ie,se),J={html:{type:String,default:""}},ce=re(J,oe,ie,se),W=M.defineComponent({name:"FHtmlTemplate",props:G,emits:[],setup(n){return()=>{var e;return(e=n.renderFunction)==null?void 0:e.call(n)}}});function Ae(n,e,t){var L;const r=t&&t.getStyles&&t.getStyles()||"",o=t&&t.getDesignerClass&&t.getDesignerClass()||"",s=M.ref();let i;function g(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanMoveComponent?t.checkCanMoveComponent():!0}function u(){return!1}function l(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanDeleteComponent?t.checkCanDeleteComponent():!0}function d(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:t&&t.hideNestedPaddingInDesginerView?t.hideNestedPaddingInDesginerView():!1}function a(m){if(!m||!m.value)return null;if(m.value.schema&&m.value.schema.type==="component")return m.value;const y=M.ref(m==null?void 0:m.value.parent),S=a(y);return S||null}function p(m=e){var C;if(t!=null&&t.getDraggableDesignItemElement)return t.getDraggableDesignItemElement(m);const{componentInstance:y,designerItemElementRef:S}=m;if(!y||!y.value)return null;const{getCustomButtons:T}=y.value;return y.value.canMove||T&&((C=T())!=null&&C.length)?S:p(m.parent)}function b(m){return!!t&&t.canAccepts(m)}function c(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function f(){}function v(m,y){var S;!m||!y||(t!=null&&t.onAcceptMovedChildElement&&t.onAcceptMovedChildElement(m,y),(S=e==null?void 0:e.setupContext)==null||S.emit("dragEnd"))}function E(m,y){const{componentType:S}=m;let T=fe.getSchemaByTypeForDesigner(S,m,y);t&&t.onResolveNewComponentSchema&&(T=t.onResolveNewComponentSchema(m,T));const C=S.toLowerCase().replace(/-/g,"_");return T&&!T.id&&T.type===S&&(T.id=`${C}_${Math.random().toString().slice(2,6)}`),T}function w(m){m&&t!=null&&t.onChildElementMovedOut&&t.onChildElementMovedOut(m)}function O(...m){if(t&&t.getPropsConfig)return t.getPropsConfig(...m)}function D(m){if(!m)return;const y=e==null?void 0:e.schema,{formSchemaUtils:S}=m;if(y&&S.getExpressions().length){const T=S.getExpressions().findIndex(C=>C.target===y.id);T>-1&&S.getExpressions().splice(T,1)}}function x(m){if(!m||!(e!=null&&e.schema))return;const y=e.schema,{formSchemaUtils:S}=m;S.removeCommunicationInComponent(y)}function P(m){t&&t.onRemoveComponent&&t.onRemoveComponent(),D(m),x(m),e!=null&&e.schema.contents&&e.schema.contents.map(y=>{let S=y.id;y.type==="component-ref"&&(S=y.component);const T=n.value.querySelectorAll(`#${S}-design-item`);T!=null&&T.length&&Array.from(T).map(C=>{var B;(B=C==null?void 0:C.componentInstance)!=null&&B.value.onRemoveComponent&&C.componentInstance.value.onRemoveComponent(m)})})}function j(){if(t&&t.getCustomButtons)return t.getCustomButtons()}function $(m){var S,T;if(!((S=e==null?void 0:e.schema)!=null&&S.id))return;if(!i&&m&&(i=m.formSchemaUtils),t!=null&&t.setComponentBasicInfoMap){t.setComponentBasicInfoMap();return}let y="";if(t!=null&&t.getComponentTitle)y=t.getComponentTitle();else{const{text:C,title:B,label:_,mainTitle:N,name:A,type:z}=e.schema;y=C||B||_||N||A||((T=H[z])==null?void 0:T.name)}y&&i.getControlBasicInfoMap().set(e.schema.id,{componentTitle:y,parentPathName:y})}function h(m){var C;const{changeObject:y}=m,{propertyID:S,propertyValue:T}=y;if(["text","title","label","name","mainTitle"].includes((C=m==null?void 0:m.changeObject)==null?void 0:C.propertyID)&&S&&T&&($(),i)){const B=i.getControlBasicInfoMap(),_=B.keys().toArray().filter(N=>{var A,z;return((A=B.get(N))==null?void 0:A.reliedComponentId)===((z=e==null?void 0:e.schema)==null?void 0:z.id)});_!=null&&_.length&&_.forEach(N=>{const A=B.get(N).parentPathName.split(" > ");A[0]=T,B.get(N).parentPathName=A.join(" > ")})}}function k(m){if(h(m),t&&t.onPropertyChanged)return t.onPropertyChanged(m)}return s.value={canMove:g(),canSelectParent:u(),canDelete:l(),canNested:!d(),contents:e==null?void 0:e.schema.contents,elementRef:n,parent:(L=e==null?void 0:e.parent)==null?void 0:L.componentInstance,schema:e==null?void 0:e.schema,styles:r,designerClass:o,canAccepts:b,getBelongedComponentInstance:a,getDraggableDesignItemElement:p,getDraggingDisplayText:c,getPropConfig:O,getDragScopeElement:f,onAcceptMovedChildElement:v,onChildElementMovedOut:w,addNewChildComponentSchema:E,triggerBelongedComponentToMoveWhenMoved:!!t&&t.triggerBelongedComponentToMoveWhenMoved||M.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!t&&t.triggerBelongedComponentToDeleteWhenDeleted||M.ref(!1),onRemoveComponent:P,getCustomButtons:j,onPropertyChanged:k,setComponentBasicInfoMap:$,updateContextSchema:e==null?void 0:e.updateContextSchema},s}const qe=M.ref(0);function Le(){qe.value++}const _e=M.ref(0);function ze(n){const{formSchemaUtils:e,formStateMachineUtils:t}=n;function r(u,l=""){return{path:l+u.code,field:u.id,fullPath:u.code}}function o(u,l=""){return e.getViewModelById(u).states.map(a=>r(a,l))}function s(u){const l=e.getRootViewModelId(),d=o(u);if(u===l)return d;const a=o(l,"root-component.");return[...d,...a]}function i(u){return u.binding&&u.binding.path||u.id||""}function g(){return t&&t.getRenderStates()||[]}return{getVariables:s,getControlName:i,getStateMachines:g}}class We{constructor(e){V(this,"sessionVariables",[{key:"CurrentSysOrgName",name:"当前组织Name",description:"当前组织Name"},{key:"CurrentSysOrgId",name:"当前组织Id",description:"当前组织Id"},{key:"CurrentUserName",name:"当前用户Name",description:"当前用户Name"},{key:"CurrentUserCode",name:"当前用户Code",description:"当前用户Code"},{key:"CurrentUserId",name:"当前用户Id",description:"当前用户Id"},{key:"CurrentLanguage",name:"当前语言编号",description:"当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"}]);V(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});V(this,"getExpressionConverter",(e,t)=>({convertFrom:(r,o,s,i)=>{const g=s.getExpressionRuleValue(e,t||o);return g&&g.value||""},convertTo:(r,o,s,i,g)=>{var u;if(o==="dataPicking"&&(s!=null&&s.target)){const l=`${s.target}_dataPicking`;((u=s.rules)==null?void 0:u.some(a=>a.id===l&&a.value))?r.dictPickingExpressionId=l:delete r.dictPickingExpressionId}i.updateExpression(s)}}));this.formSchemaService=e}getExpressionRule(e,t){const r=this.formSchemaService.getExpressions();if(!r)return"";const o=r.find(i=>i.target===e);if(!o)return"";const s=o.rules.find(i=>i.type===t);return s||""}getContextFormVariables(){const{module:e}=this.formSchemaService.getFormSchema();if(!e.viewmodels||e.viewmodels.length===0)return[];const t=this.formSchemaService.getRootViewModelId(),r=this.formSchemaService.getViewModelById(t);if(!r||!r.states||r.states.length===0)return[];const o=[];return r.states.forEach(s=>{o.push({key:s.code,name:s.name,description:s.name,category:s.category})}),o}createTreeNode(e,t,r="label"){return{id:e.id,name:e.name,bindingPath:e[r],parents:t,type:"field"}}buildEntityFieldsTreeData(e=null,t){const r=[];return e==null||e.forEach(o=>{var g;const s=this.createTreeNode(o,t);let i=[];(g=o.type)!=null&&g.fields&&(i=this.buildEntityFieldsTreeData(o.type.fields,[...t,o.label])),r.push({data:s,children:i,expanded:!0})}),r}buildChildEntityTreeData(e=null,t){const r=[];return e==null||e.forEach(o=>{var u,l;const s=this.createTreeNode(o,t);s.type="entity";const i=this.buildEntityFieldsTreeData((u=o.type)==null?void 0:u.fields,[...t,o.label]),g=this.buildChildEntityTreeData((l=o.type)==null?void 0:l.entities,[...t,o.label]);g!=null&&g.length&&(i==null||i.push(...g)),r.push({data:s,children:i||[],expanded:!0})}),r}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const t=e[0];if(!(t!=null&&t.type))return[];const r=this.buildEntityFieldsTreeData(t.type.fields,[t.code]),o=this.buildChildEntityTreeData(t.type.entities,[t.code]);return o!=null&&o.length&&(r==null||r.push(...o)),{entityCode:t.code,fields:[{data:this.createTreeNode(t,[],"code"),children:r||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(e,t,r){const o=r==="Field"?e.binding.field:e.id,s=this.getExpressionRule(o,t),i=this.getEntitiesAndVariables(),g={message:["validate","required","dataPicking"].includes(t)&&s?s.message:"",...i};return s.messageType!=null&&(g.messageType=s.messageType),g}buildRule(e,t,r,o){const{expression:s,message:i,messageType:g}=t,u={id:`${e}_${r}`,type:r,value:s};return(r==="validate"||r==="dataPicking"||r==="required")&&(u.message=i),r==="dataPicking"&&(u.messageType=g),r==="validate"&&o&&(u.elementId=o),u}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,t,r,o){const s=t==="Field"?e.binding.field:e.id,i=this.buildRule(s,r,o,e.type==="form-group"?e.id:"");let u=this.getExpressionData().find(d=>d.targetType===t&&d.target===s);const l=d=>d.value.trim()==="";if(u){const d=u.rules.find(a=>a.id===i.id);if(d)l(i)?u.rules=u.rules.filter(a=>a.id!==i.id):(Object.assign(d,i),o==="validate"&&e.type==="form-group"&&(d.elementId=e.id));else{if(l(i))return null;u.rules=u.rules||[],u.rules.push(i)}}else{if(l(i))return null;u={target:`${s}`,rules:[i],targetType:t}}return u}getExpressionEditorOptions(e,t,r,o){return r.reduce((s,i)=>{var u,l;const g=t==="Field"?(u=e==null?void 0:e.binding)==null?void 0:u.field:e.id;return s[i]={hide:t==="Field"?!!((l=e==null?void 0:e.binding)!=null&&l.field):!1,description:"",title:this.expressionNames[i],type:"string",$converter:this.getExpressionConverter(g),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[i]}编辑器`,showMessage:i==="validate"||i==="dataPicking"||i==="required",showMessageType:i==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,i,t),onSubmitModal:d=>{const a=this.updateExpression(e,t,d,i);if(o){const p=this.buildRule(g,d,i);o(p)}return a}}},s},{})}getExpressionInfo(e,t,r){const o=t==="Field"?e.binding.field:e.id,s=this.getExpressionRule(o,r),i={value:s&&s.value,targetId:o,targetType:t,expressionType:r};return s&&s.message&&(i.message=s.message),i}getExpressionConfig(e,t,r=["compute","dependency","validate"],o){return{description:"表达式",title:"表达式",hide:!e.binding,properties:{...this.getExpressionEditorOptions(e,t,r,o)}}}getExpressionOptions(e,t,r){const o=this.getExpressionInfo(e,t,r);return{dialogTitle:`${this.expressionNames[r]}编辑器`,singleExpand:!1,showMessage:r==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,r,t),expressionInfo:o}}}class He{constructor(e,t){V(this,"componentId");V(this,"viewModelId");V(this,"eventsEditorUtils");V(this,"formSchemaUtils");V(this,"formMetadataConverter");V(this,"designViewModelUtils");V(this,"designViewModelField");V(this,"controlCreatorUtils");V(this,"designerHostService");V(this,"designerContext");V(this,"schemaService",null);V(this,"metadataService",null);V(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=e,this.designerHostService=t,this.eventsEditorUtils=t.eventsEditorUtils,this.formSchemaUtils=t.formSchemaUtils,this.formMetadataConverter=t.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=t.designViewModelUtils,this.controlCreatorUtils=t.controlCreatorUtils,this.metadataService=t.metadataService,this.schemaService=t.schemaService,this.designerContext=t.designerContext}getFormDesignerInstance(){var e,t;return(t=(e=this.designerContext)==null?void 0:e.instances)==null?void 0:t.formDesigner.value}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){var r;const t=e.binding&&e.binding.type==="Form"&&e.binding.field;if(t){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(s=>s.id===t)}e.updateOn=(r=this.designViewModelField)==null?void 0:r.updateOn}}getBasicPropConfig(e){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",idField:"value",editable:!1,data:[{value:e.type,name:H[e.type]&&H[e.type].name}]}}}}}getAppearanceConfig(e=null,t={},r){const o={title:"外观",description:"Appearance"},s={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const i in t)s[i]=Object.assign(s[i]||{},t[i]);return{...o,properties:{...s},setPropertyRelates(i,g){if(i){switch(i&&i.propertyID){case"class":case"style":{_e.value++;break}}r&&r(i,e,g)}}}}getPropertyEditorParams(e,t=[],r="visible",o={},s={},i=""){const{getVariables:g,getControlName:u,getStateMachines:l}=ze(this.designerHostService),d=this.getRealTargetType(e),a=t&&t.length>0?t:["Const","Variable","StateMachine","Expression"],p={type:"property-editor",propertyTypes:a};return a.map(b=>{switch(b){case"Const":Object.assign(p,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},o);break;case"Expression":p.expressionConfig=this.getExpressionOptions(e,d,i||r);break;case"StateMachine":p.stateMachines=l();break;case"Variable":Object.assign(p,{controlName:u(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:g(this.viewModelId),onBeforeOpenVariables:c=>{c.value=g(this.viewModelId)}},s);break}}),p}getVisibleProperty(e,t=""){var s;let r=["Const","Variable","StateMachine","Expression"];return t==="gridFieldEditor"?r=["Const","Expression"]:t==="form-group"&&!((s=e.binding)!=null&&s.field)&&(r=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,r,"visible")}}}getBehaviorConfig(e,t="",r={},o){const s={title:"行为",description:""},i=this.getVisibleProperty(e,t);for(const u in r)i[u]=Object.assign(i[u]||{},r[u]);const g=this;return{...s,properties:{...i},setPropertyRelates(u,l){if(u){switch(u.propertyID){case"disabled":case"readonly":case"visible":g.afterMutilEditorChanged(e,u);break}o&&o(u,l)}}}}afterMutilEditorChanged(e,t){this.addNewVariableToViewModel(t,this.viewModelId),this.updateExpressionValue(t),this.clearExpression(t,e)}updateElementByParentContainer(e,t){const r=t&&t.parent&&t.parent.schema;if(!r)return;const o=r.contents.findIndex(i=>i.id===e),s=U.cloneDeep(r.contents[o]);r.contents.splice(o,1),r.contents.splice(o,0,s),Le()}addNewVariableToViewModel(e,t){const r=e.propertyValue;if(!(r&&typeof r=="object")||!(r.type==="Variable"&&r.isNewVariable))return;const i={id:r.field,category:"locale",code:r.fullPath,name:r.fullPath,type:r.newVariableType||"String"};delete r.newVariableType,delete r.isNewVariable,this.formSchemaUtils.getVariableByCode(i.code)||this.formSchemaUtils.getViewModelById(t).states.push(i)}updateExpressionValue(e){const t=e.propertyValue;if(!((t&&t.type)==="Expression"&&t.expressionInfo))return;const{expressionId:s,expressionInfo:i}=t,{targetId:g,targetType:u,expressionType:l,value:d,message:a}=i,p=this.formSchemaUtils.getModule();p.expressions=p.expressions||[];const{expressions:b}=p;let c=b.find(v=>v.target===g);c||(c={target:g,rules:[],targetType:u},b.push(c));const f=c.rules.find(v=>v.type===l);if(f)f.value=d,f.message=a;else{const v={id:s,type:l,value:d,message:a};c.rules.push(v)}delete t.expressionInfo}clearExpression(e,t){const r=e.propertyValue;if(r&&r.type==="Expression")return;const s=e.propertyID,i=this.formSchemaUtils.getExpressions(),g=t.binding?t.binding.field:t.id,u=i.find(l=>l.target===g);!u||!u.rules||(u.rules=u.rules.filter(l=>l.type!==s))}getExpressionOptions(e,t,r){return new We(this.formSchemaUtils).getExpressionOptions(e,t,r)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(e.type)>-1?"Button":e.binding&&e.binding.field?"Field":"Container"}createBaseEventProperty(e){const t={};return t[this.viewModelId]={type:"events-editor",editor:{initialData:e,viewSourceHandle:r=>{var o;((o=r.controller)==null?void 0:o.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(r)}}},t}}class Ge extends He{constructor(e,t){super(e,t)}getPropertyConfig(e){return this.propertyConfig.categories.basic=this.getBasicPropConfig(e),this.propertyConfig.categories.template=this.getTemplateProperties(e),this.propertyConfig}getTemplateProperties(e){return{title:"模板",description:"",properties:{html:{title:"html",type:"string",description:"HTML模板",refreshPanelAfterChanged:!0,editor:{type:"code-editor",language:"html"}}}}}}function Je(n,e){function t(){return!1}function r(){return!0}function o(){return!0}function s(){return!0}function i(g){return new Ge(g,e).getPropertyConfig(n)}return{canAccepts:t,hideNestedPaddingInDesginerView:s,getPropsConfig:i,checkCanDeleteComponent:r,checkCanMoveComponent:o}}const Qe=M.defineComponent({name:"FHtmlTemplateDesign",props:J,emits:[],setup(n,e){const t=M.ref(),r=M.inject("designer-host-service"),o=M.inject("design-item-context"),s=Je(o.schema,r),i=Ae(t,o,s);M.onMounted(()=>{t.value.componentInstance=i}),e.expose(i.value);const u='<div class="fv-html-template-design-placeholder">请在属性面板中配置模板</div>',l=M.computed(()=>n.html?n.html:u);return()=>M.createVNode("div",{ref:t,class:"fv-html-template-design",innerHTML:l.value},null)}});W.register=(n,e,t,r)=>{n["html-template"]=W,e["html-template"]=ae},W.registerDesigner=(n,e,t)=>{n["html-template"]=Qe,e["html-template"]=ce};const Xe=ue.withInstall(W);F.FHtmlTemplate=W,F.default=Xe,F.designPropsResolver=ce,F.htmlTemplateDesignProps=J,F.htmlTemplateProps=G,F.propsResolver=ae,Object.defineProperties(F,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(F,T){typeof exports=="object"&&typeof module<"u"?T(exports,require("vue"),require("lodash-es"),require("../common/index.umd.js"),require("../dynamic-resolver/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../common/index.umd.js","../dynamic-resolver/index.umd.js"],T):(F=typeof globalThis<"u"?globalThis:F||self,T(F["html-template"]={},F.Vue,F.LodashES,F.common,F.dynamicResolver))})(this,function(F,T,U,ue,pe){"use strict";var Ke=Object.defineProperty;var et=(F,T,U)=>T in F?Ke(F,T,{enumerable:!0,configurable:!0,writable:!0,value:U}):F[T]=U;var V=(F,T,U)=>et(F,typeof T!="symbol"?T+"":T,U);function Q(n,e){let t;function r(a){const{properties:f,title:b,ignore:c}=a,p=c&&Array.isArray(c),g=Object.keys(f).reduce((E,w)=>((!p||!c.find(O=>O===w))&&(E[w]=f[w].type==="object"&&f[w].properties?r(f[w]):U.cloneDeep(f[w].default)),E),{});if(b&&(!p||!c.find(E=>E==="id"))){const E=b.toLowerCase().replace(/-/g,"_");g.id=`${E}_${Math.random().toString().slice(2,6)}`}return g}function o(a){const{properties:f,title:b,required:c}=a;if(c&&Array.isArray(c)){const p=c.reduce((g,E)=>(g[E]=f[E].type==="object"&&f[E].properties?r(f[E]):U.cloneDeep(f[E].default),g),{});if(b&&c.find(g=>g==="id")){const g=b.toLowerCase().replace(/-/g,"_");p.id=`${g}_${Math.random().toString().slice(2,6)}`}return p}return{type:b}}function s(a,f={},b){const c=n[a];if(c){let p=o(c);const g=e[a];return p=g?g({getSchemaByType:s},p,f,b):p,t!=null&&t.appendIdentifyForNewControl&&t.appendIdentifyForNewControl(p),p}return null}function i(a,f){const b=r(f);return Object.keys(b).reduce((c,p)=>(Object.prototype.hasOwnProperty.call(a,p)&&(c[p]&&U.isPlainObject(c[p])&&U.isPlainObject(a[p]||!a[p])?Object.assign(c[p],a[p]||{}):c[p]=a[p]),c),b),b}function v(a,f){return Object.keys(a).filter(c=>a[c]!=null).reduce((c,p)=>{if(f.has(p)){const g=f.get(p);if(typeof g=="string")c[g]=a[p];else{const E=g(p,a[p],a);Object.assign(c,E)}}else c[p]=a[p];return c},{})}function u(a,f,b=new Map){const c=i(a,f);return v(c,b)}function l(a){var b;const f=a.type;if(f){const c=n[f];if(!c)return a;const p=i(a,c),g=((b=a.editor)==null?void 0:b.type)||"";if(g){const E=n[g],w=i(a.editor,E);p.editor=w}return p}return a}function d(a){t=a}return{getSchemaByType:s,resolveSchemaWithDefaultValue:l,resolveSchemaToProps:u,mappingSchemaToProps:v,setDesignerContext:d}}const X={},Y={},{getSchemaByType:tt,resolveSchemaWithDefaultValue:fe,resolveSchemaToProps:de,mappingSchemaToProps:me,setDesignerContext:nt}=Q(X,Y);function ge(n={}){function e(l,d,a,f){if(typeof a=="number")return f[l].length===a;if(typeof a=="object"){const b=Object.keys(a)[0],c=a[b];if(b==="not")return Number(f[l].length)!==Number(c);if(b==="moreThan")return Number(f[l].length)>=Number(c);if(b==="lessThan")return Number(f[l].length)<=Number(c)}return!1}function t(l,d,a,f){return f[l]&&f[l].propertyValue&&String(f[l].propertyValue.value)===String(a)}const r=new Map([["length",e],["getProperty",t]]);Object.keys(n).reduce((l,d)=>(l.set(d,n[d]),l),r);function o(l,d){const a=l;return typeof d=="number"?[{target:a,operator:"length",param:null,value:Number(d)}]:typeof d=="boolean"?[{target:a,operator:"getProperty",param:l,value:!!d}]:typeof d=="object"?Object.keys(d).map(f=>{if(f==="length")return{target:a,operator:"length",param:null,value:d[f]};const b=f,c=d[f];return{target:a,operator:"getProperty",param:b,value:c}}):[]}function s(l){return Object.keys(l).reduce((a,f)=>{const b=o(f,l[f]);return a.push(...b),a},[])}function i(l,d){if(r.has(l.operator)){const a=r.get(l.operator);return a&&a(l.target,l.param,l.value,d)||!1}return!1}function v(l,d){return s(l).reduce((b,c)=>b&&i(c,d),!0)}function u(l,d){const a=Object.keys(l),f=a.includes("allOf"),b=a.includes("anyOf"),c=f||b,E=(c?l[c?f?"allOf":"anyOf":"allOf"]:[l]).map(O=>v(O,d));return f?!E.includes(!1):E.includes(!0)}return{parseValueSchema:u}}const ve={convertTo:(n,e,t,r)=>{n.appearance||(n.appearance={}),n.appearance[e]=t},convertFrom:(n,e,t)=>n.appearance?n.appearance[e]:n[e]},he={convertFrom:(n,e,t)=>n.buttons&&n.buttons.length?`共 ${n.buttons.length} 项`:"无"},be={convertTo:(n,e,t,r)=>{n.editor&&(n.editor[e]=t)},convertFrom:(n,e,t)=>n.editor&&Object.prototype.hasOwnProperty.call(n.editor,e)?n.editor[e]:n[e]},H={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"}},ye={convertFrom:(n,e,t)=>{var o;const r=n.editor&&n.editor[e]?n.editor[e]:n[e];return((o=H[r])==null?void 0:o.name)||r}},Se={convertTo:(n,e,t,r)=>{n[e]=n[e]},convertFrom:(n,e,t)=>n.editor?t.getRealEditorType(n.editor.type):""},Ee={convertTo:(n,e,t,r)=>{(n.type==="data-grid-column"||n.type==="tree-grid-column")&&(n.formatter?n.formatter[e]=t:n.formatter={[e]:t})},convertFrom:(n,e,t)=>{if(n.formatter){if(e==="trueText")return n.formatter.trueText;if(e==="falseText")return n.formatter.falseText;if(e==="prefix")return n.formatter.prefix;if(e==="suffix")return n.formatter.suffix;if(e==="precision")return n.formatter.precision;if(e==="decimal")return n.formatter.decimal;if(e==="thousand")return n.formatter.thousand;if(e==="dateFormat")return n.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return n.formatter.customFormat;if(e==="type")return n.formatter.type||"none"}return"none"}},Te={convertTo:(n,e,t,r)=>{n.command?n.command[e]=t:n.command={[e]:t},e==="enable"&&t&&(n.command.commands||(n.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(n,e,t)=>n.command&&e==="enable"?n.command.enable:""},Me={convertTo:(n,e,t,r)=>{n.column?n.column[e]=t:n.column={[e]:t},e==="fitColumns"&&t&&(n.column.fitMode||(n.column.fitMode="average"))},convertFrom:(n,e,t)=>{if(n.column){if(e==="fitColumns")return n.column.fitColumns;if(e==="fitMode")return n.column.fitMode}return""}},we={convertTo:(n,e,t,r)=>{n.summary?n.summary[e]=t:n.summary={[e]:t},e==="enable"&&t&&(n.summary?n.summary.groupFields||(n.summary.groupFields=[]):n.summary={enable:t,groupFields:[]})},convertFrom:(n,e,t)=>n.summary&&e==="enable"?n.summary.enable:n.type==="data-grid-column"?n.enableSummary===void 0?!1:n.enableSummary:""},Pe={convertTo:(n,e,t,r)=>{n.group?n.group[e]=t:n.group={[e]:t},e==="enable"&&t&&(n.group?n.group.groupFields||(n.group.groupFields=[]):n.group={enable:t,groupFields:[],showSummary:!1})},convertFrom:(n,e,t)=>{if(n.group){if(e==="enable")return n.group.enable;if(e==="showSummary")return n.group.showSummary}}},Fe={convertFrom:(n,e)=>n.binding?n.binding.path:"",convertTo:(n,e,t)=>{if(t&&t.length>0){const r=t[0];n.binding||(n.binding={}),n.binding.type="Form",n.binding.path=r.bindingField,n.binding.field=r.id,n.binding.fullPath=r.path,n.path=r.bindingPath}}},Ce={convertTo:(n,e,t,r)=>{n.pagination||(n.pagination={}),n.pagination[e]=t},convertFrom:(n,e,t)=>n.pagination?n.pagination[e]:n[e]},Ve={convertTo:(n,e,t,r)=>{n.rowNumber||(n.rowNumber={}),n.rowNumber[e]=t},convertFrom:(n,e,t)=>n.rowNumber?n.rowNumber[e]:n[e]},Ne={convertTo:(n,e,t,r)=>{n.selection||(n.selection={}),n.selection[e]=t},convertFrom:(n,e,t)=>{var r,o;return e==="showCheckbox"?(r=n.selection)!=null&&r.multiSelect?!0:(o=n.selection)==null?void 0:o.showCheckbox:n.selection?n.selection[e]:n[e]}},Oe={convertFrom:(n,e,t)=>n[e]&&n[e].length?`共 ${n[e].length} 项`:""},ke={convertFrom:(n,e)=>n[e]||"",convertTo:(n,e,t)=>{n[e]=t}},xe={convertTo:(n,e,t,r)=>{n.size||(n.size={}),n.size[e]=t},convertFrom:(n,e,t)=>n.size?n.size[e]:n[e]},Be={convertFrom:(n,e,t)=>{var r,o;return(r=n.formatter)!=null&&r.data&&e==="formatterEnumData"&&!n.formatterEnumData?(o=n.formatter)==null?void 0:o.data:n.formatterEnumData}},De={convertTo:(n,e,t,r)=>{n.sort||(n.sort={}),n.sort[e]=t},convertFrom:(n,e,t)=>{var r,o;if(e==="mode")return((r=n.sort)==null?void 0:r.mode)||"client";if(e==="multiSort")return!!((o=n.sort)!=null&&o.multiSort)}},$e={convertTo:(n,e,t,r)=>{n.filter||(n.filter={}),n.filter[e]=t},convertFrom:(n,e,t)=>{var r;if(e==="mode")return((r=n.filter)==null?void 0:r.mode)||"client"}},je={convertTo:(n,e,t,r)=>{n.rowOption?n.rowOption[e]=t:n.rowOption={[e]:t}},convertFrom:(n,e,t)=>{if(n.rowOption){if(e==="customRowStyle")return n.rowOption.customRowStyle;if(e==="customCellStyle")return n.rowOption.customCellStyle}return""}};function Z(n,e,t){const r=new Map([["/converter/appearance.converter",ve],["/converter/buttons.converter",he],["/converter/property-editor.converter",be],["/converter/items-count.converter",Oe],["/converter/type.converter",ye],["/converter/change-editor.converter",Se],["/converter/change-formatter.converter",Ee],["/converter/column-command.converter",Te],["/converter/column-option.converter",Me],["/converter/summary.converter",we],["/converter/group.converter",Pe],["/converter/form-group-label.converter",ke],["/converter/field-selector.converter",Fe],["/converter/pagination.converter",Ce],["/converter/row-number.converter",Ve],["/converter/grid-selection.converter",Ne],["/converter/size.converter",xe],["/converter/change-formatter-enum.converter",Be],["/converter/grid-sort.converter",De],["/converter/grid-filter.converter",$e],["/converter/row-option.converter",je]]),o=new Map([["string",{type:"input-group",enableClear:!1}],["boolean",{type:"combo-list",textField:"name",valueField:"value",idField:"value",enableClear:!1,editable:!1,data:[{value:!0,name:"是"},{value:!1,name:"否"}]}],["enum",{type:"combo-list",maxHeight:128,enableClear:!1,editable:!1}],["array",{type:"button-edit"}],["number",{type:"number-spinner",placeholder:""}],["events-editor",{type:"events-editor",hide:!0}]]),s=ge();function i(c,p){return()=>s.parseValueSchema(c,p)}function v(c,p,g){return c.includes("visible")&&p.visible!==void 0?typeof p.visible=="boolean"?()=>!!p.visible:p.visible===void 0?!0:i(p.visible,g):()=>!0}function u(c,p,g){return c.includes("readonly")&&p.readonly!==void 0?typeof p.readonly=="boolean"?()=>!!p.readonly:i(p.readonly,g):()=>!1}function l(c,p){const g=c.$converter||p;return typeof g=="string"&&g&&r.has(g)?r.get(g)||null:g||null}function d(c,p,g,E,w,O="",D=""){return Object.keys(c).map(P=>{const $=T.ref(1),j=P,h=c[P],k=Object.keys(h),L=h.title,m=h.type,y=o.get(m)||{type:"input-group",enableClear:!1},S=h.editor?Object.assign({},y,h.editor):Object.assign({},y),M=v(k,h,p),C=u(k,h,p);S.readonly=S.readonly===void 0?C():S.readonly;const B=h.type==="cascade"?d(h.properties,p,g,E,w,O,D):[],_=!0;let N=l(h,D);const A=T.computed({get(){if($.value){if(["class","style"].find(Re=>Re===j)&&!N&&(N=r.get("/converter/appearance.converter")||null),N&&N.convertFrom)return N.convertFrom(g,P,w,O);const q=g[P];return Object.prototype.hasOwnProperty.call(h,"defaultValue")&&(q===void 0||typeof q=="string"&&q==="")?h.type==="boolean"?h.defaultValue:h.defaultValue||"":q}return null},set(q){$.value+=1,N&&N.convertTo?(N.convertTo(E,P,q,w,O),N.convertTo(g,P,q,w,O)):(E[P]=q,g[P]=q)}}),{refreshPanelAfterChanged:z,description:Ye,isExpand:Ze,parentPropertyID:Ie}=h,le={propertyID:j,propertyName:L,propertyType:m,propertyValue:A,editor:S,visible:M,readonly:C,cascadeConfig:B,hideCascadeTitle:_,refreshPanelAfterChanged:z,description:Ye,isExpand:Ze,parentPropertyID:Ie};return p[j]=le,le})}function a(c,p,g={}){const E={},w=n[c];return w&&w.categories?Object.keys(w.categories).map(D=>{const x=w.categories[D],P=x==null?void 0:x.title,$=d(x.properties||{},E,{},g,p);return{categoryId:D,categoryName:P,properties:$}}):[]}function f(c,p,g,E,w=""){const O=p.$ref.schema,D=p.$ref.converter,x=g[O],P=x.type,$=t(x),j={},h=n[P];if(h&&h.categories){const k=h.categories[c],L=k==null?void 0:k.title;D&&Object.keys(k.properties).forEach(S=>{k.properties[S].$converter=D});const m=(k==null?void 0:k.properties)||{},y=d(m,j,$,x,E,w);return{categoryId:c,categoryName:L,properties:y}}return{categoryId:c,categoryName:"",properties:[]}}function b(c,p,g,E,w){const O=c.type,D=t(c),x={};let P=w||n[O];if(P&&Object.keys(P).length===0&&g&&g.getPropConfig&&(P=g.getPropConfig(E)),P&&P.categories){const $=[];return Object.keys(P.categories).map(j=>{const h=P.categories[j];if(h.$ref){$.push(f(j,h,c,p,E));return}const k=h==null?void 0:h.title,L=h==null?void 0:h.tabId,m=h==null?void 0:h.tabName,y=h==null?void 0:h.hide,S=h==null?void 0:h.hideTitle,M=d(h.properties||{},x,D,c,p,E,h.$converter),{setPropertyRelates:C}=h,B=h==null?void 0:h.parentPropertyID;$.push({categoryId:j,categoryName:k,tabId:L,tabName:m,hide:y,properties:M,hideTitle:S,setPropertyRelates:C,parentPropertyID:B})}),$}return[]}return{getPropertyConfigBySchema:b,getPropertyConfigByType:a,propertyConverterMap:r}}const I={},R={};Z(I,R,fe);const K={},ee={},{getSchemaByType:rt,resolveSchemaWithDefaultValue:Ue,resolveSchemaToProps:ot,mappingSchemaToProps:it,setDesignerContext:st}=Q(K,ee),te={},ne={};Z(te,ne,Ue);function re(n,e,t=new Map,r=(i,v,u,l)=>v,o={},s=i=>i){return X[e.title]=e,Y[e.title]=r,I[e.title]=o,R[e.title]=s,K[e.title]=e,ee[e.title]=r,te[e.title]=o,ne[e.title]=s,(i={},v=!0)=>{if(!v)return me(i,t);const u=de(i,e,t),l=Object.keys(n).reduce((d,a)=>(d[a]=n[a].default,d),{});return Object.assign(l,u)}}const oe={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/html-template.schema.json",title:"html-template",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a html-template",type:"string"},type:{description:"The type string of html-template",type:"string",default:"html-template"},html:{description:"",type:"string",default:""},renderFunction:{description:"",type:"function",default:null}},required:["id","type"],ignore:[]},ie=new Map([]);function se(n,e,t){return e}const G={renderFunction:{type:Function}},ae=re(G,oe,ie,se),J={html:{type:String,default:""}},ce=re(J,oe,ie,se),W=T.defineComponent({name:"FHtmlTemplate",props:G,emits:[],setup(n){return()=>{var e;return(e=n.renderFunction)==null?void 0:e.call(n)}}});function Ae(n,e,t){var L;const r=t&&t.getStyles&&t.getStyles()||"",o=t&&t.getDesignerClass&&t.getDesignerClass()||"",s=T.ref();let i;function v(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanMoveComponent?t.checkCanMoveComponent():!0}function u(){return!1}function l(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanDeleteComponent?t.checkCanDeleteComponent():!0}function d(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:t&&t.hideNestedPaddingInDesginerView?t.hideNestedPaddingInDesginerView():!1}function a(m){if(!m||!m.value)return null;if(m.value.schema&&m.value.schema.type==="component")return m.value;const y=T.ref(m==null?void 0:m.value.parent),S=a(y);return S||null}function f(m=e){var C;if(t!=null&&t.getDraggableDesignItemElement)return t.getDraggableDesignItemElement(m);const{componentInstance:y,designerItemElementRef:S}=m;if(!y||!y.value)return null;const{getCustomButtons:M}=y.value;return y.value.canMove||M&&((C=M())!=null&&C.length)?S:f(m.parent)}function b(m){return!!t&&t.canAccepts(m)}function c(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function p(){}function g(m,y){var S;!m||!y||(t!=null&&t.onAcceptMovedChildElement&&t.onAcceptMovedChildElement(m,y),(S=e==null?void 0:e.setupContext)==null||S.emit("dragEnd"))}function E(m,y){const{componentType:S}=m;let M=pe.getSchemaByTypeForDesigner(S,m,y);t&&t.onResolveNewComponentSchema&&(M=t.onResolveNewComponentSchema(m,M));const C=S.toLowerCase().replace(/-/g,"_");return M&&!M.id&&M.type===S&&(M.id=`${C}_${Math.random().toString().slice(2,6)}`),M}function w(m){m&&t!=null&&t.onChildElementMovedOut&&t.onChildElementMovedOut(m)}function O(...m){if(t&&t.getPropsConfig)return t.getPropsConfig(...m)}function D(m){if(!m)return;const y=e==null?void 0:e.schema,{formSchemaUtils:S}=m;if(y&&S.getExpressions().length){const M=S.getExpressions().findIndex(C=>C.target===y.id);M>-1&&S.getExpressions().splice(M,1)}}function x(m){if(!m||!(e!=null&&e.schema))return;const y=e.schema,{formSchemaUtils:S}=m;S.removeCommunicationInComponent(y)}function P(m){t&&t.onRemoveComponent&&t.onRemoveComponent(),D(m),x(m),e!=null&&e.schema.contents&&e.schema.contents.map(y=>{let S=y.id;y.type==="component-ref"&&(S=y.component);const M=n.value.querySelectorAll(`#${S}-design-item`);M!=null&&M.length&&Array.from(M).map(C=>{var B;(B=C==null?void 0:C.componentInstance)!=null&&B.value.onRemoveComponent&&C.componentInstance.value.onRemoveComponent(m)})})}function $(){if(t&&t.getCustomButtons)return t.getCustomButtons()}function j(m){var S,M;if(!((S=e==null?void 0:e.schema)!=null&&S.id))return;if(!i&&m&&(i=m.formSchemaUtils),t!=null&&t.setComponentBasicInfoMap){t.setComponentBasicInfoMap();return}let y="";if(t!=null&&t.getComponentTitle)y=t.getComponentTitle();else{const{text:C,title:B,label:_,mainTitle:N,name:A,type:z}=e.schema;y=C||B||_||N||A||((M=H[z])==null?void 0:M.name)}y&&i.getControlBasicInfoMap().set(e.schema.id,{componentTitle:y,parentPathName:y})}function h(m){var C;const{changeObject:y}=m,{propertyID:S,propertyValue:M}=y;if(["text","title","label","name","mainTitle"].includes((C=m==null?void 0:m.changeObject)==null?void 0:C.propertyID)&&S&&M&&(j(),i)){const B=i.getControlBasicInfoMap(),_=B.keys().toArray().filter(N=>{var A,z;return((A=B.get(N))==null?void 0:A.reliedComponentId)===((z=e==null?void 0:e.schema)==null?void 0:z.id)});_!=null&&_.length&&_.forEach(N=>{const A=B.get(N).parentPathName.split(" > ");A[0]=M,B.get(N).parentPathName=A.join(" > ")})}}function k(m){if(h(m),t&&t.onPropertyChanged)return t.onPropertyChanged(m)}return s.value={canMove:v(),canSelectParent:u(),canDelete:l(),canNested:!d(),contents:e==null?void 0:e.schema.contents,elementRef:n,parent:(L=e==null?void 0:e.parent)==null?void 0:L.componentInstance,schema:e==null?void 0:e.schema,styles:r,designerClass:o,canAccepts:b,getBelongedComponentInstance:a,getDraggableDesignItemElement:f,getDraggingDisplayText:c,getPropConfig:O,getDragScopeElement:p,onAcceptMovedChildElement:g,onChildElementMovedOut:w,addNewChildComponentSchema:E,triggerBelongedComponentToMoveWhenMoved:!!t&&t.triggerBelongedComponentToMoveWhenMoved||T.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!t&&t.triggerBelongedComponentToDeleteWhenDeleted||T.ref(!1),onRemoveComponent:P,getCustomButtons:$,onPropertyChanged:k,setComponentBasicInfoMap:j,updateContextSchema:e==null?void 0:e.updateContextSchema},s}const qe=T.ref(0);function Le(){qe.value++}const _e=T.ref(0);function ze(n){const{formSchemaUtils:e,formStateMachineUtils:t}=n;function r(u,l=""){return{path:l+u.code,field:u.id,fullPath:u.code}}function o(u,l=""){return e.getViewModelById(u).states.map(a=>r(a,l))}function s(u){const l=e.getRootViewModelId(),d=o(u);if(u===l)return d;const a=o(l,"root-component.");return[...d,...a]}function i(u){return u.binding&&u.binding.path||u.id||""}function v(){return t&&t.getRenderStates()||[]}return{getVariables:s,getControlName:i,getStateMachines:v}}class We{constructor(e){V(this,"sessionVariables",[{key:"CurrentSysOrgName",name:"当前组织Name",description:"当前组织Name"},{key:"CurrentSysOrgId",name:"当前组织Id",description:"当前组织Id"},{key:"CurrentUserName",name:"当前用户Name",description:"当前用户Name"},{key:"CurrentUserCode",name:"当前用户Code",description:"当前用户Code"},{key:"CurrentUserId",name:"当前用户Id",description:"当前用户Id"},{key:"CurrentLanguage",name:"当前语言编号",description:"当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"}]);V(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});V(this,"getExpressionConverter",(e,t)=>({convertFrom:(r,o,s,i)=>{const v=s.getExpressionRuleValue(e,t||o);return v&&v.value||""},convertTo:(r,o,s,i,v)=>{var u;if(o==="dataPicking"&&(s!=null&&s.target)){const l=`${s.target}_dataPicking`;((u=s.rules)==null?void 0:u.some(a=>a.id===l&&a.value))?r.dictPickingExpressionId=l:delete r.dictPickingExpressionId}i.updateExpression(s)}}));this.formSchemaService=e}getExpressionRule(e,t){const r=this.formSchemaService.getExpressions();if(!r)return"";const o=r.find(i=>i.target===e);if(!o)return"";const s=o.rules.find(i=>i.type===t);return s||""}getContextFormVariables(){const{module:e}=this.formSchemaService.getFormSchema();if(!e.viewmodels||e.viewmodels.length===0)return[];const t=this.formSchemaService.getRootViewModelId(),r=this.formSchemaService.getViewModelById(t);if(!r||!r.states||r.states.length===0)return[];const o=[];return r.states.forEach(s=>{o.push({key:s.code,name:s.name,description:s.name,category:s.category})}),o}createTreeNode(e,t,r="label"){return{id:e.id,name:e.name,bindingPath:e[r],parents:t,type:"field"}}buildEntityFieldsTreeData(e=null,t){const r=[];return e==null||e.forEach(o=>{var v;const s=this.createTreeNode(o,t);let i=[];(v=o.type)!=null&&v.fields&&(i=this.buildEntityFieldsTreeData(o.type.fields,[...t,o.label])),r.push({data:s,children:i,expanded:!0})}),r}buildChildEntityTreeData(e=null,t){const r=[];return e==null||e.forEach(o=>{var u,l;const s=this.createTreeNode(o,t);s.type="entity";const i=this.buildEntityFieldsTreeData((u=o.type)==null?void 0:u.fields,[...t,o.label]),v=this.buildChildEntityTreeData((l=o.type)==null?void 0:l.entities,[...t,o.label]);v!=null&&v.length&&(i==null||i.push(...v)),r.push({data:s,children:i||[],expanded:!0})}),r}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const t=e[0];if(!(t!=null&&t.type))return[];const r=this.buildEntityFieldsTreeData(t.type.fields,[t.code]),o=this.buildChildEntityTreeData(t.type.entities,[t.code]);return o!=null&&o.length&&(r==null||r.push(...o)),{entityCode:t.code,fields:[{data:this.createTreeNode(t,[],"code"),children:r||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(e,t,r){const o=r==="Field"?e.binding.field:e.id,s=this.getExpressionRule(o,t),i=this.getEntitiesAndVariables(),v={message:["validate","required","dataPicking"].includes(t)&&s?s.message:"",...i};return s.messageType!=null&&(v.messageType=s.messageType),v}buildRule(e,t,r,o){const{expression:s,message:i,messageType:v}=t,u={id:`${e}_${r}`,type:r,value:s};return(r==="validate"||r==="dataPicking"||r==="required")&&(u.message=i),r==="dataPicking"&&(u.messageType=v),r==="validate"&&o&&(u.elementId=o),u}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,t,r,o){const s=t==="Field"?e.binding.field:e.id,i=this.buildRule(s,r,o,e.type==="form-group"?e.id:"");let u=this.getExpressionData().find(d=>d.targetType===t&&d.target===s);const l=d=>d.value.trim()==="";if(u){const d=u.rules.find(a=>a.id===i.id);if(d)l(i)?u.rules=u.rules.filter(a=>a.id!==i.id):(Object.assign(d,i),o==="validate"&&e.type==="form-group"&&(d.elementId=e.id));else{if(l(i))return null;u.rules=u.rules||[],u.rules.push(i)}}else{if(l(i))return null;u={target:`${s}`,rules:[i],targetType:t}}return u}getExpressionEditorOptions(e,t,r,o){return r.reduce((s,i)=>{var u,l;const v=t==="Field"?(u=e==null?void 0:e.binding)==null?void 0:u.field:e.id;return s[i]={hide:t==="Field"?!!((l=e==null?void 0:e.binding)!=null&&l.field):!1,description:"",title:this.expressionNames[i],type:"string",$converter:this.getExpressionConverter(v),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[i]}编辑器`,showMessage:i==="validate"||i==="dataPicking"||i==="required",showMessageType:i==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,i,t),onSubmitModal:d=>{const a=this.updateExpression(e,t,d,i);if(o){const f=this.buildRule(v,d,i);o(f)}return a}}},s},{})}getExpressionInfo(e,t,r){const o=t==="Field"?e.binding.field:e.id,s=this.getExpressionRule(o,r),i={value:s&&s.value,targetId:o,targetType:t,expressionType:r};return s&&s.message&&(i.message=s.message),i}getExpressionConfig(e,t,r=["compute","dependency","validate"],o){return{description:"表达式",title:"表达式",hide:!e.binding,properties:{...this.getExpressionEditorOptions(e,t,r,o)}}}getExpressionOptions(e,t,r){const o=this.getExpressionInfo(e,t,r);return{dialogTitle:`${this.expressionNames[r]}编辑器`,singleExpand:!1,showMessage:r==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,r,t),expressionInfo:o}}}class He{constructor(e,t){V(this,"componentId");V(this,"viewModelId");V(this,"eventsEditorUtils");V(this,"formSchemaUtils");V(this,"formMetadataConverter");V(this,"designViewModelUtils");V(this,"designViewModelField");V(this,"controlCreatorUtils");V(this,"designerHostService");V(this,"designerContext");V(this,"schemaService",null);V(this,"metadataService",null);V(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=e,this.designerHostService=t,this.eventsEditorUtils=t.eventsEditorUtils,this.formSchemaUtils=t.formSchemaUtils,this.formMetadataConverter=t.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=t.designViewModelUtils,this.controlCreatorUtils=t.controlCreatorUtils,this.metadataService=t.metadataService,this.schemaService=t.schemaService,this.designerContext=t.designerContext}getFormDesignerInstance(){var e,t;return(t=(e=this.designerContext)==null?void 0:e.instances)==null?void 0:t.formDesigner.value}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){var r;const t=e.binding&&e.binding.type==="Form"&&e.binding.field;if(t){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(s=>s.id===t)}e.updateOn=(r=this.designViewModelField)==null?void 0:r.updateOn}}getBasicPropConfig(e){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",idField:"value",editable:!1,data:[{value:e.type,name:H[e.type]&&H[e.type].name}]}}}}}getAppearanceConfig(e=null,t={},r){const o={title:"外观",description:"Appearance"},s={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const i in t)s[i]=Object.assign(s[i]||{},t[i]);return{...o,properties:{...s},setPropertyRelates(i,v){if(i){switch(i&&i.propertyID){case"class":case"style":{_e.value++;break}}r&&r(i,e,v)}}}}getPropertyEditorParams(e,t=[],r="visible",o={},s={},i=""){const{getVariables:v,getControlName:u,getStateMachines:l}=ze(this.designerHostService),d=this.getRealTargetType(e),a=t&&t.length>0?t:["Const","Variable","StateMachine","Expression"],f={type:"property-editor",propertyTypes:a};return a.map(b=>{switch(b){case"Const":Object.assign(f,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},o);break;case"Expression":f.expressionConfig=this.getExpressionOptions(e,d,i||r);break;case"StateMachine":f.stateMachines=l();break;case"Variable":Object.assign(f,{controlName:u(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:v(this.viewModelId),onBeforeOpenVariables:c=>{c.value=v(this.viewModelId)}},s);break}}),f}getVisibleProperty(e,t=""){var s;let r=["Const","Variable","StateMachine","Expression"];return t==="gridFieldEditor"?r=["Const","Expression"]:t==="form-group"&&!((s=e.binding)!=null&&s.field)&&(r=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,r,"visible")}}}getBehaviorConfig(e,t="",r={},o){const s={title:"行为",description:""},i=this.getVisibleProperty(e,t);for(const u in r)i[u]=Object.assign(i[u]||{},r[u]);const v=this;return{...s,properties:{...i},setPropertyRelates(u,l){if(u){switch(u.propertyID){case"disabled":case"readonly":case"visible":v.afterMutilEditorChanged(e,u);break}o&&o(u,l)}}}}afterMutilEditorChanged(e,t){this.addNewVariableToViewModel(t,this.viewModelId),this.updateExpressionValue(t),this.clearExpression(t,e)}updateElementByParentContainer(e,t){const r=t&&t.parent&&t.parent.schema;if(!r)return;const o=r.contents.findIndex(i=>i.id===e),s=U.cloneDeep(r.contents[o]);r.contents.splice(o,1),r.contents.splice(o,0,s),Le()}addNewVariableToViewModel(e,t){const r=e.propertyValue;if(!(r&&typeof r=="object")||!(r.type==="Variable"&&r.isNewVariable))return;const i={id:r.field,category:"locale",code:r.fullPath,name:r.fullPath,type:r.newVariableType||"String"};delete r.newVariableType,delete r.isNewVariable,this.formSchemaUtils.getVariableByCode(i.code)||this.formSchemaUtils.getViewModelById(t).states.push(i)}updateExpressionValue(e){const t=e.propertyValue;if(!((t&&t.type)==="Expression"&&t.expressionInfo))return;const{expressionId:s,expressionInfo:i}=t,{targetId:v,targetType:u,expressionType:l,value:d,message:a}=i,f=this.formSchemaUtils.getModule();f.expressions=f.expressions||[];const{expressions:b}=f;let c=b.find(g=>g.target===v);c||(c={target:v,rules:[],targetType:u},b.push(c));const p=c.rules.find(g=>g.type===l);if(p)p.value=d,p.message=a;else{const g={id:s,type:l,value:d,message:a};c.rules.push(g)}delete t.expressionInfo}clearExpression(e,t){const r=e.propertyValue;if(r&&r.type==="Expression")return;const s=e.propertyID,i=this.formSchemaUtils.getExpressions(),v=t.binding?t.binding.field:t.id,u=i.find(l=>l.target===v);!u||!u.rules||(u.rules=u.rules.filter(l=>l.type!==s))}getExpressionOptions(e,t,r){return new We(this.formSchemaUtils).getExpressionOptions(e,t,r)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(e.type)>-1?"Button":e.binding&&e.binding.field?"Field":"Container"}createBaseEventProperty(e){const t={};return t[this.viewModelId]={type:"events-editor",editor:{initialData:e,viewSourceHandle:r=>{var o;((o=r.controller)==null?void 0:o.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(r)}}},t}}class Ge extends He{constructor(e,t){super(e,t)}getPropertyConfig(e){return this.propertyConfig.categories.basic=this.getBasicPropConfig(e),this.propertyConfig.categories.template=this.getTemplateProperties(e),this.propertyConfig}getTemplateProperties(e){return{title:"模板",description:"",properties:{html:{title:"html",type:"string",description:"HTML模板",refreshPanelAfterChanged:!0,editor:{type:"code-editor",language:"html"}}}}}}function Je(n,e){function t(){return!1}function r(){return!0}function o(){return!0}function s(){return!0}function i(v){return new Ge(v,e).getPropertyConfig(n)}return{canAccepts:t,hideNestedPaddingInDesginerView:s,getPropsConfig:i,checkCanDeleteComponent:r,checkCanMoveComponent:o}}const Qe=T.defineComponent({name:"FHtmlTemplateDesign",props:J,emits:[],setup(n,e){const t=T.ref(),r=T.inject("designer-host-service"),o=T.inject("design-item-context"),s=Je(o.schema,r),i=Ae(t,o,s);T.onMounted(()=>{t.value.componentInstance=i}),e.expose(i.value);const u='<div class="fv-html-template-design-placeholder">请在属性面板中配置模板</div>',l=T.computed(()=>n.html?n.html:u);return()=>T.createVNode("div",{ref:t,class:"fv-html-template-design",innerHTML:l.value},null)}});W.register=(n,e,t,r)=>{n["html-template"]=W,e["html-template"]=ae},W.registerDesigner=(n,e,t)=>{n["html-template"]=Qe,e["html-template"]=ce};const Xe=ue.withInstall(W);F.FHtmlTemplate=W,F.default=Xe,F.designPropsResolver=ce,F.htmlTemplateDesignProps=J,F.htmlTemplateProps=G,F.propsResolver=ae,Object.defineProperties(F,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|