@farris/ui-vue 1.3.4 → 1.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/components/accordion/index.esm.js +16 -16
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +65 -65
  4. package/components/avatar/index.umd.cjs +1 -1
  5. package/components/button-edit/index.esm.js +13 -13
  6. package/components/button-edit/index.umd.cjs +1 -1
  7. package/components/calendar/index.esm.js +504 -490
  8. package/components/calendar/index.umd.cjs +1 -1
  9. package/components/capsule/index.esm.js +247 -233
  10. package/components/capsule/index.umd.cjs +1 -1
  11. package/components/checkbox/index.esm.js +356 -344
  12. package/components/checkbox/index.umd.cjs +1 -1
  13. package/components/color-picker/index.esm.js +159 -145
  14. package/components/color-picker/index.umd.cjs +2 -2
  15. package/components/combo-list/index.esm.js +127 -128
  16. package/components/combo-list/index.umd.cjs +1 -1
  17. package/components/combo-tree/index.esm.js +15 -15
  18. package/components/combo-tree/index.umd.cjs +1 -1
  19. package/components/component/index.esm.js +101 -87
  20. package/components/component/index.umd.cjs +1 -1
  21. package/components/condition/index.esm.js +9 -7
  22. package/components/condition/index.umd.cjs +1 -1
  23. package/components/content-container/index.esm.js +181 -167
  24. package/components/content-container/index.umd.cjs +1 -1
  25. package/components/data-grid/index.esm.js +746 -730
  26. package/components/data-grid/index.umd.cjs +1 -1
  27. package/components/data-view/index.esm.js +9 -7
  28. package/components/data-view/index.umd.cjs +1 -1
  29. package/components/date-picker/index.esm.js +789 -777
  30. package/components/date-picker/index.umd.cjs +1 -1
  31. package/components/designer-canvas/index.esm.js +3096 -3069
  32. package/components/designer-canvas/index.umd.cjs +1 -1
  33. package/components/dropdown/index.esm.js +257 -243
  34. package/components/dropdown/index.umd.cjs +2 -2
  35. package/components/dynamic-form/index.esm.js +322 -306
  36. package/components/dynamic-form/index.umd.cjs +1 -1
  37. package/components/dynamic-resolver/index.esm.js +177 -163
  38. package/components/dynamic-resolver/index.umd.cjs +1 -1
  39. package/components/event-parameter/index.esm.js +78 -82
  40. package/components/event-parameter/index.umd.cjs +1 -1
  41. package/components/events-editor/index.esm.js +501 -487
  42. package/components/events-editor/index.umd.cjs +1 -1
  43. package/components/expression-editor/index.esm.js +37 -37
  44. package/components/expression-editor/index.umd.cjs +1 -1
  45. package/components/external-container/index.esm.js +487 -472
  46. package/components/external-container/index.umd.cjs +1 -1
  47. package/components/field-selector/index.esm.js +440 -433
  48. package/components/field-selector/index.umd.cjs +1 -1
  49. package/components/filter-bar/index.esm.js +594 -587
  50. package/components/filter-bar/index.umd.cjs +1 -1
  51. package/components/flow-canvas/index.esm.js +2766 -2739
  52. package/components/flow-canvas/index.umd.cjs +1 -1
  53. package/components/image-cropper/index.esm.js +402 -388
  54. package/components/image-cropper/index.umd.cjs +1 -1
  55. package/components/input-group/index.esm.js +201 -202
  56. package/components/input-group/index.umd.cjs +1 -1
  57. package/components/layout/index.esm.js +264 -245
  58. package/components/layout/index.umd.cjs +1 -1
  59. package/components/list-nav/index.esm.js +157 -143
  60. package/components/list-nav/index.umd.cjs +1 -1
  61. package/components/list-view/index.esm.js +314 -298
  62. package/components/list-view/index.umd.cjs +1 -1
  63. package/components/lookup/index.esm.js +862 -843
  64. package/components/lookup/index.umd.cjs +1 -1
  65. package/components/mapping-editor/index.esm.js +1031 -1015
  66. package/components/mapping-editor/index.umd.cjs +1 -1
  67. package/components/nav/index.esm.js +169 -155
  68. package/components/nav/index.umd.cjs +2 -2
  69. package/components/number-range/index.esm.js +150 -137
  70. package/components/number-range/index.umd.cjs +1 -1
  71. package/components/number-spinner/index.esm.js +207 -194
  72. package/components/number-spinner/index.umd.cjs +1 -1
  73. package/components/order/index.esm.js +427 -414
  74. package/components/order/index.umd.cjs +1 -1
  75. package/components/page-footer/index.esm.js +22 -22
  76. package/components/page-footer/index.umd.cjs +1 -1
  77. package/components/page-header/index.esm.js +510 -492
  78. package/components/page-header/index.umd.cjs +1 -1
  79. package/components/pagination/index.esm.js +192 -178
  80. package/components/pagination/index.umd.cjs +1 -1
  81. package/components/progress/index.esm.js +234 -220
  82. package/components/progress/index.umd.cjs +3 -3
  83. package/components/property-editor/index.esm.js +288 -277
  84. package/components/property-editor/index.umd.cjs +2 -2
  85. package/components/property-panel/index.esm.js +62 -61
  86. package/components/property-panel/index.umd.cjs +1 -1
  87. package/components/query-solution/index.esm.js +776 -770
  88. package/components/query-solution/index.umd.cjs +6 -6
  89. package/components/radio-button/index.esm.js +64 -64
  90. package/components/radio-button/index.umd.cjs +1 -1
  91. package/components/radio-group/index.esm.js +296 -283
  92. package/components/radio-group/index.umd.cjs +1 -1
  93. package/components/rate/index.esm.js +222 -208
  94. package/components/rate/index.umd.cjs +1 -1
  95. package/components/response-layout/index.esm.js +187 -173
  96. package/components/response-layout/index.umd.cjs +1 -1
  97. package/components/response-layout-editor/index.esm.js +554 -542
  98. package/components/response-layout-editor/index.umd.cjs +1 -1
  99. package/components/response-toolbar/index.esm.js +483 -469
  100. package/components/response-toolbar/index.umd.cjs +1 -1
  101. package/components/schema-selector/index.esm.js +634 -619
  102. package/components/schema-selector/index.umd.cjs +2 -2
  103. package/components/search-box/index.esm.js +228 -214
  104. package/components/search-box/index.umd.cjs +1 -1
  105. package/components/section/index.esm.js +419 -406
  106. package/components/section/index.umd.cjs +1 -1
  107. package/components/smoke-detector/index.esm.js +162 -148
  108. package/components/smoke-detector/index.umd.cjs +1 -1
  109. package/components/splitter/index.esm.js +308 -284
  110. package/components/splitter/index.umd.cjs +1 -1
  111. package/components/step/index.esm.js +279 -265
  112. package/components/step/index.umd.cjs +1 -1
  113. package/components/switch/index.esm.js +183 -170
  114. package/components/switch/index.umd.cjs +1 -1
  115. package/components/tabs/index.esm.js +307 -294
  116. package/components/tabs/index.umd.cjs +1 -1
  117. package/components/tags/index.esm.js +320 -306
  118. package/components/tags/index.umd.cjs +1 -1
  119. package/components/text/index.esm.js +245 -231
  120. package/components/text/index.umd.cjs +1 -1
  121. package/components/textarea/index.esm.js +260 -247
  122. package/components/textarea/index.umd.cjs +1 -1
  123. package/components/time-picker/index.esm.js +409 -396
  124. package/components/time-picker/index.umd.cjs +1 -1
  125. package/components/transfer/index.esm.js +424 -410
  126. package/components/transfer/index.umd.cjs +1 -1
  127. package/components/tree-grid/index.esm.js +383 -376
  128. package/components/tree-grid/index.umd.cjs +1 -1
  129. package/components/tree-view/index.esm.js +595 -575
  130. package/components/tree-view/index.umd.cjs +1 -1
  131. package/components/uploader/index.esm.js +325 -311
  132. package/components/uploader/index.umd.cjs +2 -2
  133. package/components/verify-detail/index.esm.js +304 -290
  134. package/components/verify-detail/index.umd.cjs +1 -1
  135. package/components/video/index.esm.js +99 -85
  136. package/components/video/index.umd.cjs +1 -1
  137. package/components/weather/index.esm.js +947 -933
  138. package/components/weather/index.umd.cjs +4 -4
  139. package/farris.all.esm.js +5492 -5470
  140. package/farris.all.umd.cjs +13 -13
  141. package/index.css +1 -1
  142. package/package.json +1 -1
  143. package/types/condition/src/composition/condition-value/input-group-value.d.ts +1 -1
  144. package/types/entity-binding-selector/composition/use-entity-tree.d.ts +3 -0
  145. package/types/entity-binding-selector/composition/use-field-tree.d.ts +1 -0
@@ -1 +1 @@
1
- (function(w,m){typeof exports=="object"&&typeof module<"u"?m(exports,require("vue"),require("lodash-es"),require("bignumber.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","bignumber.js","../designer-canvas/index.umd.js","../common/index.umd.js"],m):(w=typeof globalThis<"u"?globalThis:w||self,m(w["number-spinner"]={},w.Vue,w.LodashES,w.BigNumber,w.designerCanvas,w.common))})(this,function(w,m,E,V,G,_){"use strict";var he=Object.defineProperty;var be=(w,m,E)=>m in w?he(w,m,{enumerable:!0,configurable:!0,writable:!0,value:E}):w[m]=E;var S=(w,m,E)=>be(w,typeof m!="symbol"?m+"":m,E);const $={},W={};function j(t){const{properties:n,title:e,ignore:r}=t,i=r&&Array.isArray(r),s=Object.keys(n).reduce((c,d)=>((!i||!r.find(f=>f===d))&&(c[d]=n[d].type==="object"&&n[d].properties?j(n[d]):E.cloneDeep(n[d].default)),c),{});if(e&&(!i||!r.find(c=>c==="id"))){const c=e.toLowerCase().replace(/-/g,"_");s.id=`${c}_${Math.random().toString().slice(2,6)}`}return s}function z(t,n={},e){const r=$[t];if(r){let i=j(r);const s=W[t];return i=s?s({getSchemaByType:z},i,n,e):i,i}return null}function Q(t,n){const e=j(n);return Object.keys(e).reduce((r,i)=>(r[i]&&E.isPlainObject(r[i])&&E.isPlainObject(t[i]||!t[i])?Object.assign(r[i],t[i]||{}):r[i]=t[i],r),e),e}function H(t,n){return Object.keys(t).filter(r=>t[r]!=null).reduce((r,i)=>{if(n.has(i)){const s=n.get(i);if(typeof s=="string")r[s]=t[i];else{const c=s(i,t[i],t);Object.assign(r,c)}}else r[i]=t[i];return r},{})}function J(t,n,e=new Map){const r=Q(t,n);return H(r,e)}function Y(t={}){function n(a,l,o,u){if(typeof o=="number")return u[a].length===o;if(typeof o=="object"){const y=Object.keys(o)[0],p=o[y];if(y==="not")return Number(u[a].length)!==Number(p);if(y==="moreThan")return Number(u[a].length)>=Number(p);if(y==="lessThan")return Number(u[a].length)<=Number(p)}return!1}function e(a,l,o,u){return u[a]&&u[a].propertyValue&&String(u[a].propertyValue.value)===String(o)}const r=new Map([["length",n],["getProperty",e]]);Object.keys(t).reduce((a,l)=>(a.set(l,t[l]),a),r);function i(a,l){const o=a;return typeof l=="number"?[{target:o,operator:"length",param:null,value:Number(l)}]:typeof l=="boolean"?[{target:o,operator:"getProperty",param:a,value:!!l}]:typeof l=="object"?Object.keys(l).map(u=>{if(u==="length")return{target:o,operator:"length",param:null,value:l[u]};const y=u,p=l[u];return{target:o,operator:"getProperty",param:y,value:p}}):[]}function s(a){return Object.keys(a).reduce((o,u)=>{const y=i(u,a[u]);return o.push(...y),o},[])}function c(a,l){if(r.has(a.operator)){const o=r.get(a.operator);return o&&o(a.target,a.param,a.value,l)||!1}return!1}function d(a,l){return s(a).reduce((y,p)=>y&&c(p,l),!0)}function f(a,l){const o=Object.keys(a),u=o.includes("allOf"),y=o.includes("anyOf"),p=u||y,k=(p?a[p?u?"allOf":"anyOf":"allOf"]:[a]).map(B=>d(B,l));return u?!k.includes(!1):k.includes(!0)}return{parseValueSchema:f}}const g={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"},"query-solution":{type:"query-solution",name:"筛选方案",icon:"QueryScheme"}},R={},K={};Y();function ee(t,n,e=new Map,r=(c,d,f,a)=>d,i={},s=c=>c){return $[n.title]=n,W[n.title]=r,R[n.title]=i,K[n.title]=s,(c={})=>{const d=J(c,n,e),f=Object.keys(t).reduce((a,l)=>(a[l]=t[l].default,a),{});return Object.assign(f,d)}}function te(t,n){return{customClass:n.class,customStyle:n.style}}const ne=new Map([["appearance",te]]),oe={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/number-spinner.schema.json",title:"number-spinner",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a number spinner",type:"string"},type:{description:"The type string of number spinner component",type:"string",default:"number-spinner"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},precision:{description:"",type:"number",default:0},min:{description:"",type:"number"},step:{description:"",type:"number",default:1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},max:{description:"",type:"number"},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""}},required:["id","type"],ignore:["id","appearance","binding","visible"]};function re(t,n,e){return n}const I={id:String,disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},formatter:{type:Function},parser:{type:Function},placeholder:{type:String,default:"请输入数字"},step:{type:Number,default:1},max:{type:[Number,String]},min:{type:[Number,String]},showButton:{type:Boolean,default:!0},useThousands:{type:Boolean,default:!0},textAlign:{type:String,default:"left"},autoDecimal:{type:Boolean,default:!0},canNull:{type:Boolean,default:!1},precision:{type:Number,default:0},prefix:{type:String,default:""},suffix:{type:String,default:""},decimalSeparator:{type:String,default:"."},groupSeparator:{type:String,default:","},groupSize:{type:Number,default:3},value:{type:[Number,String],default:""},showZero:{type:Boolean,default:!0},modelValue:{type:[Number,String],default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},A=ee(I,oe,ne,re);function O(t,n,e,r){const{format:i}=e,{displayValue:s,getRealValue:c,modelValue:d,onNumberValueChanged:f}=r;function a(){const v=new V(d.value||0);return!(t.max&&!new V(t.max).isNaN()&&v.gte(new V(t.max)))}function l(){const v=new V(d.value||0);return!(t.min&&!new V(t.min).isNaN()&&v.lte(new V(t.min)))}function o(v){if(t.readonly||t.disabled)return;const k=v==="up"?a:l,M=v==="up"?"plus":"minus";if(k()){const C=new V(d.value||0)[M](Number(t.step)),b=C.toFixed();s.value=i(b),f(c(C))}}function u(){o("up")}function y(){o("down")}function p(v){u(),v.stopPropagation()}function h(v){y(),v.stopPropagation()}return{canDownward:l,canUpward:a,downward:y,onClickDownButton:h,onClickUpButton:p,upward:u}}function x(t,n,e){const r=m.computed(()=>({prefix:t.prefix,suffix:t.suffix,decimalSeparator:t.decimalSeparator,groupSeparator:t.useThousands?t.groupSeparator:"",groupSize:t.groupSize})),{getValidNumberObject:i,precision:s}=e;function c(a){return a=a==null||a===""?"":String(a),a=a.replace(new RegExp(t.prefix,"g"),"").replace(new RegExp(t.suffix,"g"),"").replace(/,/g,""),t.groupSeparator&&t.groupSeparator!==","&&(a=a.replace(new RegExp(`\\${t.groupSeparator}`,"g"),"")),t.decimalSeparator&&t.decimalSeparator!=="."&&(a=a.replace(new RegExp(`\\${t.decimalSeparator}`,"g"),".")),a}function d(a,l){return t.precision!==null&&t.precision!==void 0?a.toFormat(s.value,l):a.toFormat(l)}function f(a){const l=c(a),o=new V(l,10),u=i(o);return u.valueOf()==="0"&&!t.showZero||u.isNaN()?"":t.formatter?t.formatter(u.toNumber()):d(u,r.value)}return{cleanFormat:c,format:f}}function U(t,n){const e=m.ref(""),r=m.ref(t.modelValue),i=m.computed(()=>Number(t.precision)||0);function s(l){return l.toFixed(i.value)}function c(l){return isNaN(l)||l===null||l===void 0||l===""}function d(l){const o=c(t.max)?null:new V(String(t.max),10),u=c(t.min)?null:new V(String(t.min),10);return o&&l.gt(o)?o:u&&l.lt(u)?u:l}function f(l){if(t.parser)return isNaN(Number(l))?t.parser(l):l;let o=d(new V(l,10));if(o.isNaN()){if(t.canNull)return null;const y=new V(""+t.min,10),p=new V(""+t.max,10);if(!y.isNaN())o=y;else if(!p.isNaN())o=p;else return 0}return s(o)}function a(l){const o=Number(l);r.value=o,n.emit("update:modelValue",o),n.emit("valueChange",o),n.emit("change",o)}return{displayValue:e,getRealValue:f,modelValue:r,isEmpty:c,onNumberValueChanged:a,precision:i,getValidNumberObject:d}}function Z(t,n,e,r,i){const{cleanFormat:s,format:c}=e,{displayValue:d,getRealValue:f,modelValue:a,isEmpty:l,onNumberValueChanged:o}=r,{downward:u,upward:y}=i,p=m.ref(!1),h=m.computed(()=>d.value);function v(C){var F;if(C.stopPropagation(),p.value=!1,t.readonly||t.disabled)return;let b=(F=C.target)==null?void 0:F.value;t.canNull||(b=b||0);const N=s(b);d.value=c(N),o(f(N)),n.emit("blur",{event:C,formatted:d.value,value:a.value})}function k(C){C.stopPropagation(),p.value=!0,!(t.readonly||t.disabled)&&(d.value=l(a.value)||!t.showZero&&a.value==="0"?"":String(a.value),n.emit("focus",{event:C,formatted:d.value,value:a.value}))}function M(C){var F;C.stopPropagation();let b=(F=C.target)==null?void 0:F.value;t.canNull||(b=b||0);const N=s(b);d.value=N,o(f(N))}function B(C){C.key==="ArrowDown"&&(C.preventDefault(),u()),C.key==="ArrowUp"&&(C.preventDefault(),y()),C.stopPropagation()}return{textBoxValue:h,onBlurTextBox:v,onFocusTextBox:k,onInput:M,onKeyDown:B,isFocus:p}}function X(t,n,e){const{canDownward:r,canUpward:i,onClickDownButton:s,onClickUpButton:c}=e,d=m.computed(()=>({"input-group-append":!0,"btn-group":!0,"btn-group-number":!0})),f=m.computed(()=>({btn:!0,"btn-secondary":!0,"btn-number-flag":!0})),a=m.computed(()=>({cursor:i()?"pointer":"not-allowed","margin-left":0})),l=m.computed(()=>({cursor:r()?"pointer":"not-allowed","margin-left":0}));return()=>m.createVNode("div",{class:d.value},[m.createVNode("button",{title:"upButton",class:f.value,style:a.value,onClick:c,disabled:!i()},[m.createVNode("span",{class:"f-icon f-icon-arrow-chevron-up number-arrow-chevron"},null)]),m.createVNode("button",{title:"downButton",class:f.value,style:l.value,onClick:s,disabled:!r()},[m.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down number-arrow-chevron"},null)])])}function ie(t,n,e){const r=m.ref(),{onBlurTextBox:i,onFocusTextBox:s,onInput:c,onKeyDown:d,textBoxValue:f}=e,a=m.computed(()=>t.disabled||t.readonly||!t.editable?"":t.placeholder),l=m.computed(()=>({"form-control":!0,"f-utils-fill":!0})),o=m.computed(()=>({"text-align":t.textAlign}));function u(h){h.stopPropagation()}function y(){t.selectOnCreated,t.focusOnCreated}async function p(h){s(h),await m.nextTick,y()}return m.onMounted(async()=>{await m.nextTick,y()}),()=>m.createVNode("input",{ref:r,class:l.value,style:o.value,type:"text",value:f.value,disabled:t.disabled,readonly:t.readonly||!t.editable,placeholder:a.value,onBlur:i,onChange:u,onFocus:p,onInput:c,onKeydown:d},null)}const D=m.defineComponent({name:"FNumberSpinner",props:I,emits:["update:modelValue","valueChange","change","blur","focus","click","input"],setup(t,n){const e=U(t,n),r=x(t,n,e),i=O(t,n,r,e),s=Z(t,n,r,e,i),c=X(t,n,i),{displayValue:d,modelValue:f,getRealValue:a}=e,l=ie(t,n,s),{format:o}=r,{isFocus:u}=s,y=m.computed(()=>!t.disabled&&!t.readonly&&t.showButton);return m.onMounted(()=>{const p=a(t.modelValue);d.value=o(p)}),m.watch(()=>[t.value],([p])=>{const h=a(p);f.value=h,d.value=o(h)}),m.watch(()=>[t.modelValue],([p])=>{p!==f.value&&(f.value=p,!u.value&&(d.value=o(a(p))))}),m.watch(()=>[t.precision,t.useThousands,t.prefix,t.suffix,t.showZero],()=>{d.value=o(f.value)}),()=>m.createVNode("div",{class:"input-group f-state-hover flex-row f-cmp-number-spinner"},[l(),y.value&&c()])}});function ae(t,n,e){var C;const r=e&&e.getStyles&&e.getStyles()||"",i=e&&e.getDesignerClass&&e.getDesignerClass()||"",s=m.ref();function c(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function d(){return!1}function f(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function a(){return(n==null?void 0:n.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function l(b){if(!b||!b.value)return null;if(b.value.schema&&b.value.schema.type==="component")return b.value;const N=m.ref(b==null?void 0:b.value.parent),F=l(N);return F||null}function o(b=n){const{componentInstance:N,designerItemElementRef:F}=b;return!N||!N.value?null:N.value.canMove?F:o(b.parent)}function u(b){return!!e&&e.canAccepts(b)}function y(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function p(){}function h(b,N){N&&e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(N)}function v(b,N){const{componentType:F}=b;let T=z(F,b,N);e&&e.onResolveNewComponentSchema&&(T=e.onResolveNewComponentSchema(b,T));const q=F.toLowerCase().replace(/-/g,"_");return T&&!T.id&&T.type===F&&(T.id=`${q}_${Math.random().toString().slice(2,6)}`),T}function k(b){}function M(...b){if(e&&e.getPropsConfig)return e.getPropsConfig(...b)}function B(){e&&e.onRemoveComponent&&e.onRemoveComponent(),n!=null&&n.schema.contents&&n.schema.contents.map(b=>{var T;let N=b.id;b.type==="component-ref"&&(N=b.component);const F=t.value.querySelector(`#${N}-design-item`);(T=F==null?void 0:F.componentInstance)!=null&&T.value.onRemoveComponent&&F.componentInstance.value.onRemoveComponent()})}return s.value={canMove:c(),canSelectParent:d(),canDelete:f(),canNested:!a(),contents:n==null?void 0:n.schema.contents,elementRef:t,parent:(C=n==null?void 0:n.parent)==null?void 0:C.componentInstance,schema:n==null?void 0:n.schema,styles:r,designerClass:i,canAccepts:u,getBelongedComponentInstance:l,getDraggableDesignItemElement:o,getDraggingDisplayText:y,getPropConfig:M,getDragScopeElement:p,onAcceptMovedChildElement:h,onChildElementMovedOut:k,addNewChildComponentSchema:v,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||m.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||m.ref(!1),onRemoveComponent:B},s}class le{constructor(n,e){S(this,"componentId");S(this,"viewModelId");S(this,"eventsEditorUtils");S(this,"formSchemaUtils");S(this,"formMetadataConverter");S(this,"designViewModelUtils");S(this,"designViewModelField");S(this,"controlCreatorUtils");S(this,"designerHostService");S(this,"schemaService",null);S(this,"metadataService",null);S(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=n,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.getViewModelIdByComponentId(n))||"",this.designViewModelUtils=e.designViewModelUtils,this.controlCreatorUtils=e.controlCreatorUtils,this.metadataService=e.metadataService,this.schemaService=e.schemaService}getTableInfo(){var n;return(n=this.schemaService)==null?void 0:n.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(n){var r;const e=n.binding&&n.binding.type==="Form"&&n.binding.field;if(e){if(!this.designViewModelField){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=i.fields.find(s=>s.id===e)}n.updateOn=(r=this.designViewModelField)==null?void 0:r.updateOn}}changeFieldEditorType(n,e){}getBasicPropConfig(n){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:n.type,name:g[n.type].name}]}}}}}getAppearanceConfig(n=null){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}updateElementByParentContainer(n,e){const r=e&&e.parent&&e.parent.schema;if(!r)return;const i=r.contents.findIndex(c=>c.id===n),s=E.cloneDeep(r.contents[i]);r.contents.splice(i,1),r.contents.splice(i,0,s)}}const P=class P{static getEditorTypesByMDataType(n){const e=P.fieldControlTypeMapping[n];return e||[{key:"",value:""}]}static getAllInputTypes(){const n=[];for(const e in P.fieldControlTypeMapping)P.fieldControlTypeMapping[e].forEach(r=>{n.find(i=>i.key===r.key&&i.value===r.value)||n.push({key:r.key,value:r.value})});return n}};S(P,"fieldControlTypeMapping",{String:[{key:g["input-group"].type,value:g["input-group"].name},{key:g.lookup.type,value:g.lookup.name},{key:g["date-picker"].type,value:g["date-picker"].name},{key:g["check-box"].type,value:g["check-box"].name},{key:g["check-group"].type,value:g["check-group"].name},{key:g["radio-group"].type,value:g["radio-group"].name},{key:g["combo-list"].type,value:g["combo-list"].name},{key:g.textarea.type,value:g.textarea.name}],Text:[{key:g.textarea.type,value:g.textarea.name},{key:g.lookup.type,value:g.lookup.name}],Decimal:[{key:g["number-spinner"].type,value:g["number-spinner"].name}],Integer:[{key:g["number-spinner"].type,value:g["number-spinner"].name}],Number:[{key:g["number-spinner"].type,value:g["number-spinner"].name}],BigNumber:[{key:g["number-spinner"].type,value:g["number-spinner"].name}],Date:[{key:g["date-picker"].type,value:g["date-picker"].name}],DateTime:[{key:g["date-picker"].type,value:g["date-picker"].name}],Boolean:[{key:g.switch.type,value:g.switch.name},{key:g["check-box"].type,value:g["check-box"].name}],Enum:[{key:g["combo-list"].type,value:g["combo-list"].name},{key:g["radio-group"].type,value:g["radio-group"].name}],Object:[{key:g.lookup.type,value:g.lookup.name},{key:g["combo-list"].type,value:g["combo-list"].name},{key:g["radio-group"].type,value:g["radio-group"].name}]});let L=P;const se=m.ref(0);class ce{constructor(){S(this,"label","");S(this,"id","");S(this,"columnInSM",12);S(this,"columnInMD",6);S(this,"columnInLG",3);S(this,"columnInEL",2);S(this,"displayWidthInSM",1);S(this,"displayWidthInMD",1);S(this,"displayWidthInLG",1);S(this,"displayWidthInEL",1);S(this,"displayColumnCountAtBreakPoint","md");S(this,"tagRow",0);S(this,"showTopBorder",0);S(this,"group",1);S(this,"isSupportedClass",!0);S(this,"fieldSetId","")}}function ue(t){let n,e;const r=new Map;let i=[];function s(l,o){const y=l.split(" ").filter(M=>M.startsWith("col-"));if(y.length===0){o.isSupportedClass=!1;return}let p=y.find(M=>/^col-([1-9]|10|11|12)$/.test(M)),h=y.find(M=>/^col-md-([1-9]|10|11|12)$/.test(M)),v=y.find(M=>/^col-xl-([1-9]|10|11|12)$/.test(M)),k=y.find(M=>/^col-el-([1-9]|10|11|12)$/.test(M));p=p||"col-12",o.columnInSM=parseInt(p.replace("col-",""),10),o.displayWidthInSM=o.columnInSM/12,o.displayWidthInSM!==1&&(o.isSupportedClass=!1),h=h||"col-md-"+o.columnInSM,o.columnInMD=parseInt(h.replace("col-md-",""),10),o.displayWidthInMD=o.columnInMD/6,[1,2].includes(o.displayWidthInMD)||(o.isSupportedClass=!1),v=v||"col-xl-"+o.columnInMD,o.columnInLG=parseInt(v.replace("col-xl-",""),10),o.displayWidthInLG=o.columnInLG/3,[1,2,3,4].includes(o.displayWidthInLG)||(o.isSupportedClass=!1),k=k||"col-el-"+o.columnInLG,o.columnInEL=parseInt(k.replace("col-el-",""),10),o.displayWidthInEL=o.columnInEL/2,[1,2,3,4,5,6].includes(o.displayWidthInEL)||(o.isSupportedClass=!1)}function c(l,o,u,y=!1){let p=!1;l.contents.forEach(h=>{if(h.type==="fieldset"){u+=1,c(h,o,u,!0),p=!0;return}p&&(u+=1,p=!1);const v=h.appearance&&h.appearance.class,k=new ce;v?s(v,k):k.isSupportedClass=!1,k.label=h.label||h.id,k.id=h.id,k.group=u,y&&(k.fieldSetId=l.id),e===h.id&&(n=u),r.set(h.id,h),o.push(k)})}function d(l){const o=t.getComponentById(l);if(!o||!o.componentType||!o.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const u=t.selectNode(o,y=>y.type===G.DgControl["response-form"].type);return!u||!u.contents||u.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:u}}function f(l,o){o=o||l.id;const{result:u,message:y,formNode:p}=d(o);if(!u)return{result:u,message:y};e=l.id,i=[],r.clear();const h=p.contents[0].type===G.DgControl.fieldset.type?0:1;c(p,i,h);const v=i.find(M=>!M.isSupportedClass);return{defaultState:{defaultGroupNumber:n||1,model:v?"customize":"standard"},importData:i}}function a(l,o){o=o;const{result:u,formNode:y}=d(o);if(!u)return"";const p=[];return l.forEach(h=>{var M;const v=r.get(h.id),k=v.appearance&&v.appearance.class;if(k){const C=k.split(" ").filter(ge=>!ge.startsWith("col-")),b="col-"+h.columnInSM,N="col-md-"+h.columnInMD,F="col-xl-"+h.columnInLG,T="col-el-"+h.columnInEL,q=[b,N,F,T].concat(C);v.appearance.class=q.join(" ")}if(h.fieldSetId){const B=y.contents.find(b=>b.id===h.fieldSetId),C=p.find(b=>b.id===h.fieldSetId);C?(M=C.contents)==null||M.push(v):(p.push(B),B.contents=[v])}else p.push(v)}),y.contents=p,y.id}return{checkCanFindFormNode:d,checkCanOpenLayoutEditor:f,changeFormControlsByResponseLayoutConfig:a,getResonseFormLayoutConfig:c}}class pe extends le{constructor(e,r){super(e,r);S(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=ue(this.formSchemaUtils)}getPropertyConfig(e,r){return this.propertyConfig.categories.basic=this.getBasicProperties(e,r),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,r),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,r){var s;const i=this;return this.setDesignViewModelField(e),this.formSchemaUtils.getFormMetadataBasicInfo(),{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:i.designViewModelField?L.getEditorTypesByMDataType((s=i.designViewModelField.type)==null?void 0:s.name):L.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:e,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"}}},setPropertyRelates(c,d){if(c)switch(c&&c.propertyID){case"type":{i.changeControlType(e,c,r);break}case"label":{c.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,r){const i=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:i.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,i.componentId)}}},setPropertyRelates(s,c){if(s)switch(s&&s.propertyID){case"responseLayout":i.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(s.propertyValue,i.componentId||e.id),i.updateUnifiedLayoutAfterResponseLayoutChanged(i.componentId),i.updateElementByParentContainer(e.id,r),delete e.responseLayout;break;case"class":i.updateUnifiedLayoutAfterControlChanged(s.propertyValue,e.id,this.componentId),i.updateElementByParentContainer(e.id,r);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,r,i){var l,o,u,y;const s=r.propertyValue,c=i&&i.parent&&i.parent.schema;if(!c)return;const d=c.contents.findIndex(p=>p.id===e.id),f=c.contents[d];let a;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:s},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),a=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,s)),a||(a=this.controlCreatorUtils.createFormGroupWithoutField(s)),Object.assign(a,{id:f.id,appearance:f.appearance,size:f.size,label:f.label,binding:f.binding,visible:f.visible}),Object.assign(a.editor,{isTextArea:a.isTextArea&&f.isTextArea,placeholder:(l=f.editor)==null?void 0:l.placeholder,holdPlace:(o=f.editor)==null?void 0:o.holdPlace,readonly:(u=f.editor)==null?void 0:u.readonly,require:(y=f.editor)==null?void 0:y.require}),c.contents.splice(d,1),c.contents.splice(d,0,a),i.schema=Object.assign(f,a),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(p=>p.classList.remove("dgComponentSelected")),se.value++}getComponentConfig(e,r={},i={}){const s=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},r),c=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},i);return{...s,properties:{...c}}}updateUnifiedLayoutAfterControlChanged(e,r,i){const s=e.split(" ");let c=s.find(o=>/^col-([1-9]|10|11|12)$/.test(o)),d=s.find(o=>/^col-md-([1-9]|10|11|12)$/.test(o)),f=s.find(o=>/^col-xl-([1-9]|10|11|12)$/.test(o)),a=s.find(o=>/^col-el-([1-9]|10|11|12)$/.test(o));c=c||"col-12",d=d||"col-md-"+c.replace("col-",""),f=f||"col-xl-"+d.replace("col-md-",""),a=a||"col-el-"+f.replace("col-xl-","");const l={id:r,columnInSM:parseInt(c.replace("col-",""),10),columnInMD:parseInt(d.replace("col-md-",""),10),columnInLG:parseInt(f.replace("col-xl-",""),10),columnInEL:parseInt(a.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(i,l)}updateUnifiedLayoutAfterResponseLayoutChanged(e,r){const{formNode:i}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!i||!i.unifiedLayout)return;const s=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(i,s,1),r){const p=s.find(h=>h.id===r.id);Object.assign(p||{},r)}const c=s.map(p=>p.columnInSM),d=s.map(p=>p.columnInMD),f=s.map(p=>p.columnInLG),a=s.map(p=>p.columnInEL),l=this.checkIsUniqueColumn(c)?c[0]:null,o=this.checkIsUniqueColumn(d)?d[0]:null,u=this.checkIsUniqueColumn(f)?f[0]:null,y=this.checkIsUniqueColumn(a)?a[0]:null;Object.assign(i.unifiedLayout,{uniqueColClassInSM:l,uniqueColClassInMD:o,uniqueColClassInLG:u,uniqueColClassInEL:y})}checkIsUniqueColumn(e){const r=new Set(e);return Array.from(r).length===1}}class de extends pe{constructor(n,e){super(n,e)}getEditorProperties(n){return this.getComponentConfig(n,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number"},step:{description:"",title:"步长",type:"number"},max:{description:"",title:"最大值",type:"number",editor:{canNull:!0}},min:{description:"",title:"最小值",type:"number",editor:{canNull:!0}},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}})}}function me(t,n){const e=t.schema;function r(i,s){return new de(i,n).getPropertyConfig(e,s)}return{getPropsConfig:r}}const fe=m.defineComponent({name:"FNumberSpinnerDesign",props:I,emits:["update:modelValue","valueChange","change","blur","focus","click","input"],setup(t,n){const e=U(t,n),r=x(t,n,e),i=O(t,n,r,e),s=X(t,n,i),c=m.ref(),d=m.inject("designer-host-service"),f=m.inject("design-item-context"),a=me(f,d),l=ae(c,f,a);m.onMounted(()=>{c.value.componentInstance=l,t.readonly=!0}),n.expose(l.value);const o=m.ref();return()=>m.createVNode("div",{ref:c,class:"input-group f-state-hover flex-row f-cmp-number-spinner test"},[m.createVNode("input",{ref:o,class:"form-control",readonly:!0,placeholder:t.placeholder},null),s()])}});D.register=(t,n,e,r)=>{t["number-spinner"]=D,n["number-spinner"]=A},D.registerDesigner=(t,n,e)=>{t["number-spinner"]=fe,n["number-spinner"]=A};const ye=_.withInstall(D);w.FNumberSpinner=D,w.default=ye,w.numberSpinnerProps=I,w.propsResolver=A,w.useFormat=x,w.useNumber=U,w.useSpinner=O,w.useTextBox=Z,Object.defineProperties(w,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(w,m){typeof exports=="object"&&typeof module<"u"?m(exports,require("vue"),require("lodash-es"),require("bignumber.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","bignumber.js","../designer-canvas/index.umd.js","../common/index.umd.js"],m):(w=typeof globalThis<"u"?globalThis:w||self,m(w["number-spinner"]={},w.Vue,w.LodashES,w.BigNumber,w.designerCanvas,w.common))})(this,function(w,m,B,V,G,X){"use strict";var be=Object.defineProperty;var ve=(w,m,B)=>m in w?be(w,m,{enumerable:!0,configurable:!0,writable:!0,value:B}):w[m]=B;var S=(w,m,B)=>ve(w,typeof m!="symbol"?m+"":m,B);const $={},W={};function A(t){const{properties:n,title:e,ignore:r}=t,i=r&&Array.isArray(r),s=Object.keys(n).reduce((c,d)=>((!i||!r.find(f=>f===d))&&(c[d]=n[d].type==="object"&&n[d].properties?A(n[d]):B.cloneDeep(n[d].default)),c),{});if(e&&(!i||!r.find(c=>c==="id"))){const c=e.toLowerCase().replace(/-/g,"_");s.id=`${c}_${Math.random().toString().slice(2,6)}`}return s}function Q(t){const{properties:n,title:e,required:r}=t;if(r&&Array.isArray(r)){const i=r.reduce((s,c)=>(s[c]=n[c].type==="object"&&n[c].properties?A(n[c]):B.cloneDeep(n[c].default),s),{});if(e&&r.find(s=>s==="id")){const s=e.toLowerCase().replace(/-/g,"_");i.id=`${s}_${Math.random().toString().slice(2,6)}`}return i}return{type:e}}function z(t,n={},e){const r=$[t];if(r){let i=Q(r);const s=W[t];return i=s?s({getSchemaByType:z},i,n,e):i,i}return null}function H(t,n){const e=A(n);return Object.keys(e).reduce((r,i)=>(Object.prototype.hasOwnProperty.call(t,i)&&(r[i]&&B.isPlainObject(r[i])&&B.isPlainObject(t[i]||!t[i])?Object.assign(r[i],t[i]||{}):r[i]=t[i]),r),e),e}function J(t,n){return Object.keys(t).filter(r=>t[r]!=null).reduce((r,i)=>{if(n.has(i)){const s=n.get(i);if(typeof s=="string")r[s]=t[i];else{const c=s(i,t[i],t);Object.assign(r,c)}}else r[i]=t[i];return r},{})}function Y(t,n,e=new Map){const r=H(t,n);return J(r,e)}function R(t={}){function n(a,l,o,u){if(typeof o=="number")return u[a].length===o;if(typeof o=="object"){const y=Object.keys(o)[0],p=o[y];if(y==="not")return Number(u[a].length)!==Number(p);if(y==="moreThan")return Number(u[a].length)>=Number(p);if(y==="lessThan")return Number(u[a].length)<=Number(p)}return!1}function e(a,l,o,u){return u[a]&&u[a].propertyValue&&String(u[a].propertyValue.value)===String(o)}const r=new Map([["length",n],["getProperty",e]]);Object.keys(t).reduce((a,l)=>(a.set(l,t[l]),a),r);function i(a,l){const o=a;return typeof l=="number"?[{target:o,operator:"length",param:null,value:Number(l)}]:typeof l=="boolean"?[{target:o,operator:"getProperty",param:a,value:!!l}]:typeof l=="object"?Object.keys(l).map(u=>{if(u==="length")return{target:o,operator:"length",param:null,value:l[u]};const y=u,p=l[u];return{target:o,operator:"getProperty",param:y,value:p}}):[]}function s(a){return Object.keys(a).reduce((o,u)=>{const y=i(u,a[u]);return o.push(...y),o},[])}function c(a,l){if(r.has(a.operator)){const o=r.get(a.operator);return o&&o(a.target,a.param,a.value,l)||!1}return!1}function d(a,l){return s(a).reduce((y,p)=>y&&c(p,l),!0)}function f(a,l){const o=Object.keys(a),u=o.includes("allOf"),y=o.includes("anyOf"),p=u||y,k=(p?a[p?u?"allOf":"anyOf":"allOf"]:[a]).map(P=>d(P,l));return u?!k.includes(!1):k.includes(!0)}return{parseValueSchema:f}}const g={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"},"query-solution":{type:"query-solution",name:"筛选方案",icon:"QueryScheme"}},K={},ee={};R();function te(t,n,e=new Map,r=(c,d,f,a)=>d,i={},s=c=>c){return $[n.title]=n,W[n.title]=r,K[n.title]=i,ee[n.title]=s,(c={})=>{const d=Y(c,n,e),f=Object.keys(t).reduce((a,l)=>(a[l]=t[l].default,a),{});return Object.assign(f,d)}}function ne(t,n){return{customClass:n.class,customStyle:n.style}}const oe=new Map([["appearance",ne]]),re={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/number-spinner.schema.json",title:"number-spinner",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a number spinner",type:"string"},type:{description:"The type string of number spinner component",type:"string",default:"number-spinner"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},precision:{description:"",type:"number",default:0},min:{description:"",type:"number"},step:{description:"",type:"number",default:1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},max:{description:"",type:"number"},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""}},required:["type"],ignore:["id","appearance","binding","visible"]};function ie(t,n,e){return n}const I={id:String,disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},formatter:{type:Function},parser:{type:Function},placeholder:{type:String,default:"请输入数字"},step:{type:Number,default:1},max:{type:[Number,String]},min:{type:[Number,String]},showButton:{type:Boolean,default:!0},useThousands:{type:Boolean,default:!0},textAlign:{type:String,default:"left"},autoDecimal:{type:Boolean,default:!0},canNull:{type:Boolean,default:!1},precision:{type:Number,default:0},prefix:{type:String,default:""},suffix:{type:String,default:""},decimalSeparator:{type:String,default:"."},groupSeparator:{type:String,default:","},groupSize:{type:Number,default:3},value:{type:[Number,String],default:""},showZero:{type:Boolean,default:!0},modelValue:{type:[Number,String],default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},j=te(I,re,oe,ie);function O(t,n,e,r){const{format:i}=e,{displayValue:s,getRealValue:c,modelValue:d,onNumberValueChanged:f}=r;function a(){const v=new V(d.value||0);return!(t.max&&!new V(t.max).isNaN()&&v.gte(new V(t.max)))}function l(){const v=new V(d.value||0);return!(t.min&&!new V(t.min).isNaN()&&v.lte(new V(t.min)))}function o(v){if(t.readonly||t.disabled)return;const k=v==="up"?a:l,M=v==="up"?"plus":"minus";if(k()){const C=new V(d.value||0)[M](Number(t.step)),b=C.toFixed();s.value=i(b),f(c(C))}}function u(){o("up")}function y(){o("down")}function p(v){u(),v.stopPropagation()}function h(v){y(),v.stopPropagation()}return{canDownward:l,canUpward:a,downward:y,onClickDownButton:h,onClickUpButton:p,upward:u}}function x(t,n,e){const r=m.computed(()=>({prefix:t.prefix,suffix:t.suffix,decimalSeparator:t.decimalSeparator,groupSeparator:t.useThousands?t.groupSeparator:"",groupSize:t.groupSize})),{getValidNumberObject:i,precision:s}=e;function c(a){return a=a==null||a===""?"":String(a),a=a.replace(new RegExp(t.prefix,"g"),"").replace(new RegExp(t.suffix,"g"),"").replace(/,/g,""),t.groupSeparator&&t.groupSeparator!==","&&(a=a.replace(new RegExp(`\\${t.groupSeparator}`,"g"),"")),t.decimalSeparator&&t.decimalSeparator!=="."&&(a=a.replace(new RegExp(`\\${t.decimalSeparator}`,"g"),".")),a}function d(a,l){return t.precision!==null&&t.precision!==void 0?a.toFormat(s.value,l):a.toFormat(l)}function f(a){const l=c(a),o=new V(l,10),u=i(o);return u.valueOf()==="0"&&!t.showZero||u.isNaN()?"":t.formatter?t.formatter(u.toNumber()):d(u,r.value)}return{cleanFormat:c,format:f}}function U(t,n){const e=m.ref(""),r=m.ref(t.modelValue),i=m.computed(()=>Number(t.precision)||0);function s(l){return l.toFixed(i.value)}function c(l){return isNaN(l)||l===null||l===void 0||l===""}function d(l){const o=c(t.max)?null:new V(String(t.max),10),u=c(t.min)?null:new V(String(t.min),10);return o&&l.gt(o)?o:u&&l.lt(u)?u:l}function f(l){if(t.parser)return isNaN(Number(l))?t.parser(l):l;let o=d(new V(l,10));if(o.isNaN()){if(t.canNull)return null;const y=new V(""+t.min,10),p=new V(""+t.max,10);if(!y.isNaN())o=y;else if(!p.isNaN())o=p;else return 0}return s(o)}function a(l){const o=Number(l);r.value=o,n.emit("update:modelValue",o),n.emit("valueChange",o),n.emit("change",o)}return{displayValue:e,getRealValue:f,modelValue:r,isEmpty:c,onNumberValueChanged:a,precision:i,getValidNumberObject:d}}function Z(t,n,e,r,i){const{cleanFormat:s,format:c}=e,{displayValue:d,getRealValue:f,modelValue:a,isEmpty:l,onNumberValueChanged:o}=r,{downward:u,upward:y}=i,p=m.ref(!1),h=m.computed(()=>d.value);function v(C){var F;if(C.stopPropagation(),p.value=!1,t.readonly||t.disabled)return;let b=(F=C.target)==null?void 0:F.value;t.canNull||(b=b||0);const N=s(b);d.value=c(N),o(f(N)),n.emit("blur",{event:C,formatted:d.value,value:a.value})}function k(C){C.stopPropagation(),p.value=!0,!(t.readonly||t.disabled)&&(d.value=l(a.value)||!t.showZero&&a.value==="0"?"":String(a.value),n.emit("focus",{event:C,formatted:d.value,value:a.value}))}function M(C){var F;C.stopPropagation();let b=(F=C.target)==null?void 0:F.value;t.canNull||(b=b||0);const N=s(b);d.value=N,o(f(N))}function P(C){C.key==="ArrowDown"&&(C.preventDefault(),u()),C.key==="ArrowUp"&&(C.preventDefault(),y()),C.stopPropagation()}return{textBoxValue:h,onBlurTextBox:v,onFocusTextBox:k,onInput:M,onKeyDown:P,isFocus:p}}function _(t,n,e){const{canDownward:r,canUpward:i,onClickDownButton:s,onClickUpButton:c}=e,d=m.computed(()=>({"input-group-append":!0,"btn-group":!0,"btn-group-number":!0})),f=m.computed(()=>({btn:!0,"btn-secondary":!0,"btn-number-flag":!0})),a=m.computed(()=>({cursor:i()?"pointer":"not-allowed","margin-left":0})),l=m.computed(()=>({cursor:r()?"pointer":"not-allowed","margin-left":0}));return()=>m.createVNode("div",{class:d.value},[m.createVNode("button",{title:"upButton",class:f.value,style:a.value,onClick:c,disabled:!i()},[m.createVNode("span",{class:"f-icon f-icon-arrow-chevron-up number-arrow-chevron"},null)]),m.createVNode("button",{title:"downButton",class:f.value,style:l.value,onClick:s,disabled:!r()},[m.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down number-arrow-chevron"},null)])])}function ae(t,n,e){const r=m.ref(),{onBlurTextBox:i,onFocusTextBox:s,onInput:c,onKeyDown:d,textBoxValue:f}=e,a=m.computed(()=>t.disabled||t.readonly||!t.editable?"":t.placeholder),l=m.computed(()=>({"form-control":!0,"f-utils-fill":!0})),o=m.computed(()=>({"text-align":t.textAlign}));function u(h){h.stopPropagation()}function y(){t.selectOnCreated,t.focusOnCreated}async function p(h){s(h),await m.nextTick,y()}return m.onMounted(async()=>{await m.nextTick,y()}),()=>m.createVNode("input",{ref:r,class:l.value,style:o.value,type:"text",value:f.value,disabled:t.disabled,readonly:t.readonly||!t.editable,placeholder:a.value,onBlur:i,onChange:u,onFocus:p,onInput:c,onKeydown:d},null)}const D=m.defineComponent({name:"FNumberSpinner",props:I,emits:["update:modelValue","valueChange","change","blur","focus","click","input"],setup(t,n){const e=U(t,n),r=x(t,n,e),i=O(t,n,r,e),s=Z(t,n,r,e,i),c=_(t,n,i),{displayValue:d,modelValue:f,getRealValue:a}=e,l=ae(t,n,s),{format:o}=r,{isFocus:u}=s,y=m.computed(()=>!t.disabled&&!t.readonly&&t.showButton);return m.onMounted(()=>{const p=a(t.modelValue);d.value=o(p)}),m.watch(()=>[t.value],([p])=>{const h=a(p);f.value=h,d.value=o(h)}),m.watch(()=>[t.modelValue],([p])=>{p!==f.value&&(f.value=p,!u.value&&(d.value=o(a(p))))}),m.watch(()=>[t.precision,t.useThousands,t.prefix,t.suffix,t.showZero],()=>{d.value=o(f.value)}),()=>m.createVNode("div",{class:"input-group f-state-hover flex-row f-cmp-number-spinner"},[l(),y.value&&c()])}});function le(t,n,e){var C;const r=e&&e.getStyles&&e.getStyles()||"",i=e&&e.getDesignerClass&&e.getDesignerClass()||"",s=m.ref();function c(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function d(){return!1}function f(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function a(){return(n==null?void 0:n.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function l(b){if(!b||!b.value)return null;if(b.value.schema&&b.value.schema.type==="component")return b.value;const N=m.ref(b==null?void 0:b.value.parent),F=l(N);return F||null}function o(b=n){const{componentInstance:N,designerItemElementRef:F}=b;return!N||!N.value?null:N.value.canMove?F:o(b.parent)}function u(b){return!!e&&e.canAccepts(b)}function y(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function p(){}function h(b,N){N&&e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(N)}function v(b,N){const{componentType:F}=b;let T=z(F,b,N);e&&e.onResolveNewComponentSchema&&(T=e.onResolveNewComponentSchema(b,T));const q=F.toLowerCase().replace(/-/g,"_");return T&&!T.id&&T.type===F&&(T.id=`${q}_${Math.random().toString().slice(2,6)}`),T}function k(b){}function M(...b){if(e&&e.getPropsConfig)return e.getPropsConfig(...b)}function P(){e&&e.onRemoveComponent&&e.onRemoveComponent(),n!=null&&n.schema.contents&&n.schema.contents.map(b=>{var T;let N=b.id;b.type==="component-ref"&&(N=b.component);const F=t.value.querySelector(`#${N}-design-item`);(T=F==null?void 0:F.componentInstance)!=null&&T.value.onRemoveComponent&&F.componentInstance.value.onRemoveComponent()})}return s.value={canMove:c(),canSelectParent:d(),canDelete:f(),canNested:!a(),contents:n==null?void 0:n.schema.contents,elementRef:t,parent:(C=n==null?void 0:n.parent)==null?void 0:C.componentInstance,schema:n==null?void 0:n.schema,styles:r,designerClass:i,canAccepts:u,getBelongedComponentInstance:l,getDraggableDesignItemElement:o,getDraggingDisplayText:y,getPropConfig:M,getDragScopeElement:p,onAcceptMovedChildElement:h,onChildElementMovedOut:k,addNewChildComponentSchema:v,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||m.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||m.ref(!1),onRemoveComponent:P},s}class se{constructor(n,e){S(this,"componentId");S(this,"viewModelId");S(this,"eventsEditorUtils");S(this,"formSchemaUtils");S(this,"formMetadataConverter");S(this,"designViewModelUtils");S(this,"designViewModelField");S(this,"controlCreatorUtils");S(this,"designerHostService");S(this,"schemaService",null);S(this,"metadataService",null);S(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=n,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.getViewModelIdByComponentId(n))||"",this.designViewModelUtils=e.designViewModelUtils,this.controlCreatorUtils=e.controlCreatorUtils,this.metadataService=e.metadataService,this.schemaService=e.schemaService}getTableInfo(){var n;return(n=this.schemaService)==null?void 0:n.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(n){var r;const e=n.binding&&n.binding.type==="Form"&&n.binding.field;if(e){if(!this.designViewModelField){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=i.fields.find(s=>s.id===e)}n.updateOn=(r=this.designViewModelField)==null?void 0:r.updateOn}}changeFieldEditorType(n,e){}getBasicPropConfig(n){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:n.type,name:g[n.type].name}]}}}}}getAppearanceConfig(n=null){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}updateElementByParentContainer(n,e){const r=e&&e.parent&&e.parent.schema;if(!r)return;const i=r.contents.findIndex(c=>c.id===n),s=B.cloneDeep(r.contents[i]);r.contents.splice(i,1),r.contents.splice(i,0,s)}}const E=class E{static getEditorTypesByMDataType(n){const e=E.fieldControlTypeMapping[n];return e||[{key:"",value:""}]}static getAllInputTypes(){const n=[];for(const e in E.fieldControlTypeMapping)E.fieldControlTypeMapping[e].forEach(r=>{n.find(i=>i.key===r.key&&i.value===r.value)||n.push({key:r.key,value:r.value})});return n}};S(E,"fieldControlTypeMapping",{String:[{key:g["input-group"].type,value:g["input-group"].name},{key:g.lookup.type,value:g.lookup.name},{key:g["date-picker"].type,value:g["date-picker"].name},{key:g["check-box"].type,value:g["check-box"].name},{key:g["check-group"].type,value:g["check-group"].name},{key:g["radio-group"].type,value:g["radio-group"].name},{key:g["combo-list"].type,value:g["combo-list"].name},{key:g.textarea.type,value:g.textarea.name}],Text:[{key:g.textarea.type,value:g.textarea.name},{key:g.lookup.type,value:g.lookup.name}],Decimal:[{key:g["number-spinner"].type,value:g["number-spinner"].name}],Integer:[{key:g["number-spinner"].type,value:g["number-spinner"].name}],Number:[{key:g["number-spinner"].type,value:g["number-spinner"].name}],BigNumber:[{key:g["number-spinner"].type,value:g["number-spinner"].name}],Date:[{key:g["date-picker"].type,value:g["date-picker"].name}],DateTime:[{key:g["date-picker"].type,value:g["date-picker"].name}],Boolean:[{key:g.switch.type,value:g.switch.name},{key:g["check-box"].type,value:g["check-box"].name}],Enum:[{key:g["combo-list"].type,value:g["combo-list"].name},{key:g["radio-group"].type,value:g["radio-group"].name}],Object:[{key:g.lookup.type,value:g.lookup.name},{key:g["combo-list"].type,value:g["combo-list"].name},{key:g["radio-group"].type,value:g["radio-group"].name}]});let L=E;const ce=m.ref(0);class ue{constructor(){S(this,"label","");S(this,"id","");S(this,"columnInSM",12);S(this,"columnInMD",6);S(this,"columnInLG",3);S(this,"columnInEL",2);S(this,"displayWidthInSM",1);S(this,"displayWidthInMD",1);S(this,"displayWidthInLG",1);S(this,"displayWidthInEL",1);S(this,"displayColumnCountAtBreakPoint","md");S(this,"tagRow",0);S(this,"showTopBorder",0);S(this,"group",1);S(this,"isSupportedClass",!0);S(this,"fieldSetId","")}}function pe(t){let n,e;const r=new Map;let i=[];function s(l,o){const y=l.split(" ").filter(M=>M.startsWith("col-"));if(y.length===0){o.isSupportedClass=!1;return}let p=y.find(M=>/^col-([1-9]|10|11|12)$/.test(M)),h=y.find(M=>/^col-md-([1-9]|10|11|12)$/.test(M)),v=y.find(M=>/^col-xl-([1-9]|10|11|12)$/.test(M)),k=y.find(M=>/^col-el-([1-9]|10|11|12)$/.test(M));p=p||"col-12",o.columnInSM=parseInt(p.replace("col-",""),10),o.displayWidthInSM=o.columnInSM/12,o.displayWidthInSM!==1&&(o.isSupportedClass=!1),h=h||"col-md-"+o.columnInSM,o.columnInMD=parseInt(h.replace("col-md-",""),10),o.displayWidthInMD=o.columnInMD/6,[1,2].includes(o.displayWidthInMD)||(o.isSupportedClass=!1),v=v||"col-xl-"+o.columnInMD,o.columnInLG=parseInt(v.replace("col-xl-",""),10),o.displayWidthInLG=o.columnInLG/3,[1,2,3,4].includes(o.displayWidthInLG)||(o.isSupportedClass=!1),k=k||"col-el-"+o.columnInLG,o.columnInEL=parseInt(k.replace("col-el-",""),10),o.displayWidthInEL=o.columnInEL/2,[1,2,3,4,5,6].includes(o.displayWidthInEL)||(o.isSupportedClass=!1)}function c(l,o,u,y=!1){let p=!1;l.contents.forEach(h=>{if(h.type==="fieldset"){u+=1,c(h,o,u,!0),p=!0;return}p&&(u+=1,p=!1);const v=h.appearance&&h.appearance.class,k=new ue;v?s(v,k):k.isSupportedClass=!1,k.label=h.label||h.id,k.id=h.id,k.group=u,y&&(k.fieldSetId=l.id),e===h.id&&(n=u),r.set(h.id,h),o.push(k)})}function d(l){const o=t.getComponentById(l);if(!o||!o.componentType||!o.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const u=t.selectNode(o,y=>y.type===G.DgControl["response-form"].type);return!u||!u.contents||u.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:u}}function f(l,o){o=o||l.id;const{result:u,message:y,formNode:p}=d(o);if(!u)return{result:u,message:y};e=l.id,i=[],r.clear();const h=p.contents[0].type===G.DgControl.fieldset.type?0:1;c(p,i,h);const v=i.find(M=>!M.isSupportedClass);return{defaultState:{defaultGroupNumber:n||1,model:v?"customize":"standard"},importData:i}}function a(l,o){o=o;const{result:u,formNode:y}=d(o);if(!u)return"";const p=[];return l.forEach(h=>{var M;const v=r.get(h.id),k=v.appearance&&v.appearance.class;if(k){const C=k.split(" ").filter(he=>!he.startsWith("col-")),b="col-"+h.columnInSM,N="col-md-"+h.columnInMD,F="col-xl-"+h.columnInLG,T="col-el-"+h.columnInEL,q=[b,N,F,T].concat(C);v.appearance.class=q.join(" ")}if(h.fieldSetId){const P=y.contents.find(b=>b.id===h.fieldSetId),C=p.find(b=>b.id===h.fieldSetId);C?(M=C.contents)==null||M.push(v):(p.push(P),P.contents=[v])}else p.push(v)}),y.contents=p,y.id}return{checkCanFindFormNode:d,checkCanOpenLayoutEditor:f,changeFormControlsByResponseLayoutConfig:a,getResonseFormLayoutConfig:c}}class de extends se{constructor(e,r){super(e,r);S(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=pe(this.formSchemaUtils)}getPropertyConfig(e,r){return this.propertyConfig.categories.basic=this.getBasicProperties(e,r),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,r),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,r){var s;const i=this;return this.setDesignViewModelField(e),{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:i.designViewModelField?L.getEditorTypesByMDataType((s=i.designViewModelField.type)==null?void 0:s.name):L.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:e,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"}}},setPropertyRelates(c,d){if(c)switch(c&&c.propertyID){case"type":{i.changeControlType(e,c,r);break}case"label":{c.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,r){const i=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:i.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,i.componentId)}}},setPropertyRelates(s,c){if(s)switch(s&&s.propertyID){case"responseLayout":i.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(s.propertyValue,i.componentId||e.id),i.updateUnifiedLayoutAfterResponseLayoutChanged(i.componentId),i.updateElementByParentContainer(e.id,r),delete e.responseLayout;break;case"class":i.updateUnifiedLayoutAfterControlChanged(s.propertyValue,e.id,this.componentId),i.updateElementByParentContainer(e.id,r);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,r,i){var l,o,u,y;const s=r.propertyValue,c=i&&i.parent&&i.parent.schema;if(!c)return;const d=c.contents.findIndex(p=>p.id===e.id),f=c.contents[d];let a;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:s},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),a=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,s)),a||(a=this.controlCreatorUtils.createFormGroupWithoutField(s)),Object.assign(a,{id:f.id,appearance:f.appearance,size:f.size,label:f.label,binding:f.binding,visible:f.visible}),Object.assign(a.editor,{isTextArea:a.isTextArea&&f.isTextArea,placeholder:(l=f.editor)==null?void 0:l.placeholder,holdPlace:(o=f.editor)==null?void 0:o.holdPlace,readonly:(u=f.editor)==null?void 0:u.readonly,require:(y=f.editor)==null?void 0:y.require}),c.contents.splice(d,1),c.contents.splice(d,0,a),i.schema=Object.assign(f,a),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(p=>p.classList.remove("dgComponentSelected")),ce.value++}getComponentConfig(e,r={},i={}){const s=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},r),c=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},i);return{...s,properties:{...c}}}updateUnifiedLayoutAfterControlChanged(e,r,i){const s=e.split(" ");let c=s.find(o=>/^col-([1-9]|10|11|12)$/.test(o)),d=s.find(o=>/^col-md-([1-9]|10|11|12)$/.test(o)),f=s.find(o=>/^col-xl-([1-9]|10|11|12)$/.test(o)),a=s.find(o=>/^col-el-([1-9]|10|11|12)$/.test(o));c=c||"col-12",d=d||"col-md-"+c.replace("col-",""),f=f||"col-xl-"+d.replace("col-md-",""),a=a||"col-el-"+f.replace("col-xl-","");const l={id:r,columnInSM:parseInt(c.replace("col-",""),10),columnInMD:parseInt(d.replace("col-md-",""),10),columnInLG:parseInt(f.replace("col-xl-",""),10),columnInEL:parseInt(a.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(i,l)}updateUnifiedLayoutAfterResponseLayoutChanged(e,r){const{formNode:i}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!i||!i.unifiedLayout)return;const s=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(i,s,1),r){const p=s.find(h=>h.id===r.id);Object.assign(p||{},r)}const c=s.map(p=>p.columnInSM),d=s.map(p=>p.columnInMD),f=s.map(p=>p.columnInLG),a=s.map(p=>p.columnInEL),l=this.checkIsUniqueColumn(c)?c[0]:null,o=this.checkIsUniqueColumn(d)?d[0]:null,u=this.checkIsUniqueColumn(f)?f[0]:null,y=this.checkIsUniqueColumn(a)?a[0]:null;Object.assign(i.unifiedLayout,{uniqueColClassInSM:l,uniqueColClassInMD:o,uniqueColClassInLG:u,uniqueColClassInEL:y})}checkIsUniqueColumn(e){const r=new Set(e);return Array.from(r).length===1}}class me extends de{constructor(n,e){super(n,e)}getEditorProperties(n){return this.getComponentConfig(n,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number"},step:{description:"",title:"步长",type:"number"},max:{description:"",title:"最大值",type:"number",editor:{canNull:!0}},min:{description:"",title:"最小值",type:"number",editor:{canNull:!0}},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}})}}function fe(t,n){const e=t.schema;function r(i,s){return new me(i,n).getPropertyConfig(e,s)}return{getPropsConfig:r}}const ye=m.defineComponent({name:"FNumberSpinnerDesign",props:I,emits:["update:modelValue","valueChange","change","blur","focus","click","input"],setup(t,n){const e=U(t,n),r=x(t,n,e),i=O(t,n,r,e),s=_(t,n,i),c=m.ref(),d=m.inject("designer-host-service"),f=m.inject("design-item-context"),a=fe(f,d),l=le(c,f,a);m.onMounted(()=>{c.value.componentInstance=l,t.readonly=!0}),n.expose(l.value);const o=m.ref();return()=>m.createVNode("div",{ref:c,class:"input-group f-state-hover flex-row f-cmp-number-spinner test"},[m.createVNode("input",{ref:o,class:"form-control",readonly:!0,placeholder:t.placeholder},null),s()])}});D.register=(t,n,e,r)=>{t["number-spinner"]=D,n["number-spinner"]=j},D.registerDesigner=(t,n,e)=>{t["number-spinner"]=ye,n["number-spinner"]=j};const ge=X.withInstall(D);w.FNumberSpinner=D,w.default=ge,w.numberSpinnerProps=I,w.propsResolver=j,w.useFormat=x,w.useNumber=U,w.useSpinner=O,w.useTextBox=Z,Object.defineProperties(w,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});