@farris/ui-vue 1.6.5-beta.7 → 1.6.5

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 (192) hide show
  1. package/components/accordion/index.esm.js +65 -65
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +360 -361
  4. package/components/avatar/index.umd.cjs +1 -1
  5. package/components/button-edit/index.esm.js +524 -520
  6. package/components/button-edit/index.umd.cjs +1 -1
  7. package/components/calendar/index.esm.js +134 -134
  8. package/components/calendar/index.umd.cjs +1 -1
  9. package/components/capsule/index.esm.js +192 -192
  10. package/components/capsule/index.umd.cjs +1 -1
  11. package/components/code-editor/index.esm.js +8 -8
  12. package/components/code-editor/index.umd.cjs +3 -3
  13. package/components/collection-property-editor/index.esm.js +72 -72
  14. package/components/collection-property-editor/index.umd.cjs +1 -1
  15. package/components/color-picker/index.esm.js +291 -289
  16. package/components/color-picker/index.umd.cjs +1 -1
  17. package/components/combo-list/index.esm.js +190 -181
  18. package/components/combo-list/index.umd.cjs +1 -1
  19. package/components/combo-tree/index.esm.js +113 -112
  20. package/components/combo-tree/index.umd.cjs +1 -1
  21. package/components/common/index.esm.js +3 -1
  22. package/components/common/index.umd.cjs +1 -1
  23. package/components/component/index.esm.js +309 -309
  24. package/components/component/index.umd.cjs +1 -1
  25. package/components/condition/index.esm.js +1125 -1124
  26. package/components/condition/index.umd.cjs +1 -1
  27. package/components/content-container/index.esm.js +472 -472
  28. package/components/content-container/index.umd.cjs +1 -1
  29. package/components/data-grid/index.esm.js +99 -99
  30. package/components/data-grid/index.umd.cjs +1 -1
  31. package/components/data-view/index.esm.js +3387 -3321
  32. package/components/data-view/index.umd.cjs +1 -1
  33. package/components/date-picker/index.esm.js +1604 -1601
  34. package/components/date-picker/index.umd.cjs +1 -1
  35. package/components/designer-canvas/index.esm.js +1082 -1079
  36. package/components/designer-canvas/index.umd.cjs +1 -1
  37. package/components/discussion-editor/index.esm.js +973 -1040
  38. package/components/discussion-editor/index.umd.cjs +6 -6
  39. package/components/dropdown/index.esm.js +335 -330
  40. package/components/dropdown/index.umd.cjs +2 -2
  41. package/components/dynamic-form/index.esm.js +177 -177
  42. package/components/dynamic-form/index.umd.cjs +1 -1
  43. package/components/dynamic-resolver/index.esm.js +6 -6
  44. package/components/dynamic-resolver/index.umd.cjs +1 -1
  45. package/components/dynamic-view/index.esm.js +344 -344
  46. package/components/dynamic-view/index.umd.cjs +1 -1
  47. package/components/events-editor/index.esm.js +644 -644
  48. package/components/events-editor/index.umd.cjs +3 -3
  49. package/components/expression-editor/index.esm.js +1773 -1760
  50. package/components/expression-editor/index.umd.cjs +4 -4
  51. package/components/fieldset/index.esm.js +55 -55
  52. package/components/fieldset/index.umd.cjs +1 -1
  53. package/components/filter-bar/index.esm.js +879 -869
  54. package/components/filter-bar/index.umd.cjs +1 -1
  55. package/components/filter-condition-editor/index.esm.js +1091 -1077
  56. package/components/filter-condition-editor/index.umd.cjs +3 -3
  57. package/components/flow-canvas/index.esm.js +215 -215
  58. package/components/flow-canvas/index.umd.cjs +1 -1
  59. package/components/html-template/index.esm.js +164 -164
  60. package/components/html-template/index.umd.cjs +1 -1
  61. package/components/image-cropper/index.esm.js +198 -198
  62. package/components/image-cropper/index.umd.cjs +1 -1
  63. package/components/json-editor/index.esm.js +64 -64
  64. package/components/json-editor/index.umd.cjs +1 -1
  65. package/components/language-textbox/index.esm.js +140 -140
  66. package/components/language-textbox/index.umd.cjs +1 -1
  67. package/components/layout/index.esm.js +111 -111
  68. package/components/layout/index.umd.cjs +1 -1
  69. package/components/list-nav/index.esm.js +90 -90
  70. package/components/list-nav/index.umd.cjs +1 -1
  71. package/components/list-view/index.esm.js +139 -141
  72. package/components/list-view/index.umd.cjs +3 -3
  73. package/components/locale/index.esm.js +833 -901
  74. package/components/locale/index.umd.cjs +6 -6
  75. package/components/lookup/index.esm.js +1352 -1351
  76. package/components/lookup/index.umd.cjs +1 -1
  77. package/components/mapping-editor/index.esm.js +1387 -1383
  78. package/components/mapping-editor/index.umd.cjs +1 -1
  79. package/components/menu-lookup/index.esm.js +1059 -1127
  80. package/components/menu-lookup/index.umd.cjs +6 -6
  81. package/components/message-box/index.esm.js +217 -217
  82. package/components/message-box/index.umd.cjs +1 -1
  83. package/components/modal/index.esm.js +283 -283
  84. package/components/modal/index.umd.cjs +1 -1
  85. package/components/nav/index.esm.js +106 -106
  86. package/components/nav/index.umd.cjs +1 -1
  87. package/components/number-range/index.esm.js +194 -194
  88. package/components/number-range/index.umd.cjs +1 -1
  89. package/components/number-spinner/index.esm.js +463 -462
  90. package/components/number-spinner/index.umd.cjs +1 -1
  91. package/components/order/index.esm.js +883 -876
  92. package/components/order/index.umd.cjs +4 -4
  93. package/components/page-footer/index.esm.js +94 -94
  94. package/components/page-footer/index.umd.cjs +1 -1
  95. package/components/page-header/index.esm.js +942 -939
  96. package/components/page-header/index.umd.cjs +1 -1
  97. package/components/pagination/index.esm.js +82 -82
  98. package/components/pagination/index.umd.cjs +1 -1
  99. package/components/popover/index.esm.js +59 -57
  100. package/components/popover/index.umd.cjs +1 -1
  101. package/components/progress/index.esm.js +113 -113
  102. package/components/progress/index.umd.cjs +2 -2
  103. package/components/property-editor/index.esm.js +151 -150
  104. package/components/property-editor/index.umd.cjs +1 -1
  105. package/components/property-panel/index.esm.js +739 -739
  106. package/components/property-panel/index.umd.cjs +2 -2
  107. package/components/query-solution/index.esm.js +4142 -4190
  108. package/components/query-solution/index.umd.cjs +6 -6
  109. package/components/radio-button/index.esm.js +182 -182
  110. package/components/radio-button/index.umd.cjs +1 -1
  111. package/components/rate/index.esm.js +106 -106
  112. package/components/rate/index.umd.cjs +1 -1
  113. package/components/response-layout/index.esm.js +535 -535
  114. package/components/response-layout/index.umd.cjs +1 -1
  115. package/components/response-layout-editor/index.esm.js +1456 -1443
  116. package/components/response-layout-editor/index.umd.cjs +1 -1
  117. package/components/response-toolbar/index.esm.js +779 -776
  118. package/components/response-toolbar/index.umd.cjs +1 -1
  119. package/components/schema-selector/index.esm.js +1875 -1866
  120. package/components/schema-selector/index.umd.cjs +7 -7
  121. package/components/search-box/index.esm.js +151 -147
  122. package/components/search-box/index.umd.cjs +1 -1
  123. package/components/section/index.esm.js +1236 -1233
  124. package/components/section/index.umd.cjs +1 -1
  125. package/components/smoke-detector/index.esm.js +163 -163
  126. package/components/smoke-detector/index.umd.cjs +1 -1
  127. package/components/sort-condition-editor/index.esm.js +1097 -1083
  128. package/components/sort-condition-editor/index.umd.cjs +3 -3
  129. package/components/splitter/index.esm.js +3 -3
  130. package/components/splitter/index.umd.cjs +1 -1
  131. package/components/step/index.esm.js +133 -133
  132. package/components/step/index.umd.cjs +1 -1
  133. package/components/switch/index.esm.js +103 -98
  134. package/components/switch/index.umd.cjs +1 -1
  135. package/components/tabs/index.esm.js +1596 -1593
  136. package/components/tabs/index.umd.cjs +2 -2
  137. package/components/tags/index.esm.js +93 -93
  138. package/components/tags/index.umd.cjs +1 -1
  139. package/components/text/index.esm.js +138 -138
  140. package/components/text/index.umd.cjs +1 -1
  141. package/components/textarea/index.esm.js +684 -684
  142. package/components/textarea/index.umd.cjs +2 -2
  143. package/components/time-picker/index.esm.js +935 -929
  144. package/components/time-picker/index.umd.cjs +1 -1
  145. package/components/tooltip/index.esm.js +173 -171
  146. package/components/tooltip/index.umd.cjs +1 -1
  147. package/components/transfer/index.esm.js +190 -192
  148. package/components/transfer/index.umd.cjs +4 -4
  149. package/components/tree-grid/index.esm.js +124 -124
  150. package/components/tree-grid/index.umd.cjs +1 -1
  151. package/components/tree-view/index.esm.js +2363 -2278
  152. package/components/tree-view/index.umd.cjs +1 -1
  153. package/components/uploader/index.esm.js +170 -170
  154. package/components/uploader/index.umd.cjs +2 -2
  155. package/components/verify-detail/index.esm.js +196 -196
  156. package/components/verify-detail/index.umd.cjs +1 -1
  157. package/components/video/index.esm.js +227 -227
  158. package/components/video/index.umd.cjs +1 -1
  159. package/components/weather/index.esm.js +9 -9
  160. package/components/weather/index.umd.cjs +2 -2
  161. package/designer/button-edit/index.esm.js +353 -353
  162. package/designer/button-edit/index.umd.cjs +1 -1
  163. package/designer/checkbox/index.esm.js +7 -3
  164. package/designer/checkbox/index.umd.cjs +1 -1
  165. package/designer/checkbox-group/index.esm.js +38 -33
  166. package/designer/checkbox-group/index.umd.cjs +1 -1
  167. package/designer/data-grid/index.esm.js +3562 -3536
  168. package/designer/data-grid/index.umd.cjs +6 -6
  169. package/designer/data-view/index.esm.js +3 -3
  170. package/designer/data-view/index.umd.cjs +3 -3
  171. package/designer/farris-designer.all.esm.js +4203 -4193
  172. package/designer/farris-designer.all.umd.cjs +9 -9
  173. package/designer/input-group/index.esm.js +97 -97
  174. package/designer/input-group/index.umd.cjs +1 -1
  175. package/designer/list-view/index.esm.js +1868 -1854
  176. package/designer/list-view/index.umd.cjs +8 -8
  177. package/designer/radio-group/index.esm.js +954 -949
  178. package/designer/radio-group/index.umd.cjs +1 -1
  179. package/farris.all.esm.js +16195 -16126
  180. package/farris.all.umd.cjs +30 -30
  181. package/locales/data-grid/ui/en.json +2 -2
  182. package/locales/designer/en.json +7 -6
  183. package/locales/designer/zh-CHS.json +2 -1
  184. package/locales/designer/zh-CHT.json +2 -1
  185. package/locales/ui/en.json +7 -6
  186. package/locales/ui/zh-CHS.json +2 -1
  187. package/locales/ui/zh-CHT.json +2 -1
  188. package/package.json +1 -1
  189. package/types/combo-list/src/property-config/combo-list.property-config.d.ts +0 -6
  190. package/types/data-view/composition/types.d.ts +10 -4
  191. package/types/lookup/src/composition/use-dialog.d.ts +2 -0
  192. package/types/lookup/src/composition/use-input-change.d.ts +1 -0
@@ -1,2 +1,2 @@
1
- (function(L,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js"],s):(L=typeof globalThis<"u"?globalThis:L||self,s(L.dropdown={},L.Vue,L.LodashES,L.dynamicResolver))})(this,function(L,s,z,ie){"use strict";function G(e,t){let n;function i(o){const{properties:l,title:b,ignore:r}=o,a=r&&Array.isArray(r),f=Object.keys(l).reduce((h,d)=>((!a||!r.find(c=>c===d))&&(h[d]=l[d].type==="object"&&l[d].properties?i(l[d]):z.cloneDeep(l[d].default)),h),{});if(b&&(!a||!r.find(h=>h==="id"))){const h=b.toLowerCase().replace(/-/g,"_");f.id=`${h}_${Math.random().toString().slice(2,6)}`}return f}function T(o){const{properties:l,title:b,required:r}=o;if(r&&Array.isArray(r)){const a=r.reduce((f,h)=>(f[h]=l[h].type==="object"&&l[h].properties?i(l[h]):z.cloneDeep(l[h].default),f),{});if(b&&r.find(f=>f==="id")){const f=b.toLowerCase().replace(/-/g,"_");a.id=`${f}_${Math.random().toString().slice(2,6)}`}return a}return{type:b}}function k(o,l={},b){const r=e[o];if(r){let a=T(r);const f=t[o];return a=f?f({getSchemaByType:k},a,l,b):a,n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(a),a}return null}function N(o,l){const b=i(l);return Object.keys(b).reduce((r,a)=>(Object.prototype.hasOwnProperty.call(o,a)&&(r[a]&&z.isPlainObject(r[a])&&z.isPlainObject(o[a]||!o[a])?Object.assign(r[a],o[a]||{}):r[a]=o[a]),r),b),b}function F(o,l){return Object.keys(o).filter(r=>o[r]!=null).reduce((r,a)=>{if(l.has(a)){const f=l.get(a);if(typeof f=="string")r[f]=o[a];else{const h=f(a,o[a],o);Object.assign(r,h)}}else r[a]=o[a];return r},{})}function E(o,l,b=new Map){const r=N(o,l);return F(r,b)}function m(o){var b;const l=o.type;if(l){const r=e[l];if(!r)return o;const a=N(o,r),f=((b=o.editor)==null?void 0:b.type)||"";if(f){const h=e[f],d=N(o.editor,h);a.editor=d}return a}return o}function g(o){n=o}return{getSchemaByType:k,resolveSchemaWithDefaultValue:m,resolveSchemaToProps:E,mappingSchemaToProps:F,setDesignerContext:g}}const U={},Y={},{resolveSchemaWithDefaultValue:ae,resolveSchemaToProps:se,mappingSchemaToProps:ce}=G(U,Y);function le(e={}){function t(m,g,o,l){if(typeof o=="number")return l[m].length===o;if(typeof o=="object"){const b=Object.keys(o)[0],r=o[b];if(b==="not")return Number(l[m].length)!==Number(r);if(b==="moreThan")return Number(l[m].length)>=Number(r);if(b==="lessThan")return Number(l[m].length)<=Number(r)}return!1}function n(m,g,o,l){return l[m]&&l[m].propertyValue&&String(l[m].propertyValue.value)===String(o)}const i=new Map([["length",t],["getProperty",n]]);Object.keys(e).reduce((m,g)=>(m.set(g,e[g]),m),i);function T(m,g){const o=m;return typeof g=="number"?[{target:o,operator:"length",param:null,value:Number(g)}]:typeof g=="boolean"?[{target:o,operator:"getProperty",param:m,value:!!g}]:typeof g=="object"?Object.keys(g).map(l=>{if(l==="length")return{target:o,operator:"length",param:null,value:g[l]};const b=l,r=g[l];return{target:o,operator:"getProperty",param:b,value:r}}):[]}function k(m){return Object.keys(m).reduce((o,l)=>{const b=T(l,m[l]);return o.push(...b),o},[])}function N(m,g){if(i.has(m.operator)){const o=i.get(m.operator);return o&&o(m.target,m.param,m.value,g)||!1}return!1}function F(m,g){return k(m).reduce((b,r)=>b&&N(r,g),!0)}function E(m,g){const o=Object.keys(m),l=o.includes("allOf"),b=o.includes("anyOf"),r=l||b,h=(r?m[r?l?"allOf":"anyOf":"allOf"]:[m]).map(c=>F(c,g));return l?!h.includes(!1):h.includes(!0)}return{parseValueSchema:E}}const ue={convertTo:(e,t,n,i)=>{e.appearance||(e.appearance={}),e.appearance[t]=n},convertFrom:(e,t,n)=>e.appearance?e.appearance[t]:e[t]},fe={convertFrom:(e,t,n)=>e.buttons&&e.buttons.length?`共 ${e.buttons.length} 项`:"无"},de={convertTo:(e,t,n,i)=>{e.editor&&(e.editor[t]=n)},convertFrom:(e,t,n)=>e.editor&&Object.prototype.hasOwnProperty.call(e.editor,t)?e.editor[t]:e[t]},Z={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:"多语输入框"}},pe={convertFrom:(e,t,n)=>{var T;const i=e.editor&&e.editor[t]?e.editor[t]:e[t];return((T=Z[i])==null?void 0:T.name)||i}},me={convertTo:(e,t,n,i)=>{e[t]=e[t]},convertFrom:(e,t,n)=>e.editor?n.getRealEditorType(e.editor.type):""},ve={convertTo:(e,t,n,i)=>{(e.type==="data-grid-column"||e.type==="tree-grid-column")&&(e.formatter?e.formatter[t]=n:e.formatter={[t]:n})},convertFrom:(e,t,n)=>{if(e.formatter){if(t==="trueText")return e.formatter.trueText;if(t==="falseText")return e.formatter.falseText;if(t==="prefix")return e.formatter.prefix;if(t==="suffix")return e.formatter.suffix;if(t==="precision")return e.formatter.precision;if(t==="decimal")return e.formatter.decimal;if(t==="thousand")return e.formatter.thousand;if(t==="dateFormat")return e.formatter.dateFormat||"yyyy-MM-dd";if(t==="customFormat")return e.formatter.customFormat;if(t==="type")return e.formatter.type||"none"}return"none"}},be={convertTo:(e,t,n,i)=>{e.command?e.command[t]=n:e.command={[t]:n},t==="enable"&&n&&(e.command.commands||(e.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(e,t,n)=>e.command&&t==="enable"?e.command.enable:""},ge={convertTo:(e,t,n,i)=>{e.column?e.column[t]=n:e.column={[t]:n},t==="fitColumns"&&n&&(e.column.fitMode||(e.column.fitMode="average"))},convertFrom:(e,t,n)=>{if(e.column){if(t==="fitColumns")return e.column.fitColumns;if(t==="fitMode")return e.column.fitMode}return""}},ye={convertTo:(e,t,n,i)=>{e.summary?e.summary[t]=n:e.summary={[t]:n},t==="enable"&&n&&(e.summary?e.summary.groupFields||(e.summary.groupFields=[]):e.summary={enable:n,groupFields:[]})},convertFrom:(e,t,n)=>e.summary&&t==="enable"?e.summary.enable:e.type==="data-grid-column"?e.enableSummary===void 0?!1:e.enableSummary:""},we={convertTo:(e,t,n,i)=>{e.group?e.group[t]=n:e.group={[t]:n},t==="enable"&&n&&(e.group?e.group.groupFields||(e.group.groupFields=[]):e.group={enable:n,groupFields:[],showSummary:!1})},convertFrom:(e,t,n)=>{if(e.group){if(t==="enable")return e.group.enable;if(t==="showSummary")return e.group.showSummary}}},he={convertFrom:(e,t)=>e.binding?e.binding.path:"",convertTo:(e,t,n)=>{if(n&&n.length>0){const i=n[0];e.binding||(e.binding={}),e.binding.type="Form",e.binding.path=i.bindingField,e.binding.field=i.id,e.binding.fullPath=i.path,e.path=i.bindingPath}}},Se={convertTo:(e,t,n,i)=>{e.pagination||(e.pagination={}),e.pagination[t]=n},convertFrom:(e,t,n)=>e.pagination?e.pagination[t]:e[t]},Te={convertTo:(e,t,n,i)=>{e.rowNumber||(e.rowNumber={}),e.rowNumber[t]=n},convertFrom:(e,t,n)=>e.rowNumber?e.rowNumber[t]:e[t]},Fe={convertTo:(e,t,n,i)=>{e.selection||(e.selection={}),e.selection[t]=n},convertFrom:(e,t,n)=>{var i,T;return t==="showCheckbox"?(i=e.selection)!=null&&i.multiSelect?!0:(T=e.selection)==null?void 0:T.showCheckbox:e.selection?e.selection[t]:e[t]}},De={convertFrom:(e,t,n)=>e[t]&&e[t].length?`共 ${e[t].length} 项`:""},Ne={convertFrom:(e,t)=>e[t]||"",convertTo:(e,t,n)=>{e[t]=n}},Be={convertTo:(e,t,n,i)=>{e.size||(e.size={}),e.size[t]=n},convertFrom:(e,t,n)=>e.size?e.size[t]:e[t]},ke={convertFrom:(e,t,n)=>{var i,T;return(i=e.formatter)!=null&&i.data&&t==="formatterEnumData"&&!e.formatterEnumData?(T=e.formatter)==null?void 0:T.data:e.formatterEnumData}},Oe={convertTo:(e,t,n,i)=>{e.sort||(e.sort={}),e.sort[t]=n},convertFrom:(e,t,n)=>{var i,T;if(t==="mode")return((i=e.sort)==null?void 0:i.mode)||"client";if(t==="multiSort")return!!((T=e.sort)!=null&&T.multiSort)}},Ee={convertTo:(e,t,n,i)=>{e.filter||(e.filter={}),e.filter[t]=n},convertFrom:(e,t,n)=>{var i;if(t==="mode")return((i=e.filter)==null?void 0:i.mode)||"client"}},$e={convertTo:(e,t,n,i)=>{e.rowOption?e.rowOption[t]=n:e.rowOption={[t]:n}},convertFrom:(e,t,n)=>{if(e.rowOption){if(t==="customRowStyle")return e.rowOption.customRowStyle;if(t==="customCellStyle")return e.rowOption.customCellStyle}return""}};function J(e,t,n){const i=new Map([["/converter/appearance.converter",ue],["/converter/buttons.converter",fe],["/converter/property-editor.converter",de],["/converter/items-count.converter",De],["/converter/type.converter",pe],["/converter/change-editor.converter",me],["/converter/change-formatter.converter",ve],["/converter/column-command.converter",be],["/converter/column-option.converter",ge],["/converter/summary.converter",ye],["/converter/group.converter",we],["/converter/form-group-label.converter",Ne],["/converter/field-selector.converter",he],["/converter/pagination.converter",Se],["/converter/row-number.converter",Te],["/converter/grid-selection.converter",Fe],["/converter/size.converter",Be],["/converter/change-formatter-enum.converter",ke],["/converter/grid-sort.converter",Oe],["/converter/grid-filter.converter",Ee],["/converter/row-option.converter",$e]]),T=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}]]),k=le();function N(r,a){return()=>k.parseValueSchema(r,a)}function F(r,a,f){return r.includes("visible")&&a.visible!==void 0?typeof a.visible=="boolean"?()=>!!a.visible:a.visible===void 0?!0:N(a.visible,f):()=>!0}function E(r,a,f){return r.includes("readonly")&&a.readonly!==void 0?typeof a.readonly=="boolean"?()=>!!a.readonly:N(a.readonly,f):()=>!1}function m(r,a){const f=r.$converter||a;return typeof f=="string"&&f&&i.has(f)?i.get(f)||null:f||null}function g(r,a,f,h,d,c="",O=""){return Object.keys(r).map(w=>{const j=s.ref(1),$=w,p=r[w],R=Object.keys(p),V=p.title,u=p.type,y=T.get(u)||{type:"input-group",enableClear:!1},v=p.editor?Object.assign({},y,p.editor):Object.assign({},y),S=F(R,p,a),D=E(R,p,a);v.readonly=v.readonly===void 0?D():v.readonly;const M=p.type==="cascade"?g(p.properties,a,f,h,d,c,O):[],H=!0;let P=m(p,O);const A=s.computed({get(){if(j.value){if(["class","style"].find(Ge=>Ge===$)&&!P&&(P=i.get("/converter/appearance.converter")||null),P&&P.convertFrom)return P.convertFrom(f,w,d,c);const C=f[w];return Object.prototype.hasOwnProperty.call(p,"defaultValue")&&(C===void 0||typeof C=="string"&&C==="")?p.type==="boolean"?p.defaultValue:p.defaultValue||"":C}return null},set(C){j.value+=1,P&&P.convertTo?(P.convertTo(h,w,C,d,c),P.convertTo(f,w,C,d,c)):(h[w]=C,f[w]=C)}}),{refreshPanelAfterChanged:q,description:We,isExpand:_e,parentPropertyID:Xe}=p,re={propertyID:$,propertyName:V,propertyType:u,propertyValue:A,editor:v,visible:S,readonly:D,cascadeConfig:M,hideCascadeTitle:H,refreshPanelAfterChanged:q,description:We,isExpand:_e,parentPropertyID:Xe};return a[$]=re,re})}function o(r,a,f={}){const h={},d=e[r];return d&&d.categories?Object.keys(d.categories).map(O=>{const B=d.categories[O],w=B==null?void 0:B.title,j=g(B.properties||{},h,{},f,a);return{categoryId:O,categoryName:w,properties:j}}):[]}function l(r,a,f,h,d=""){const c=a.$ref.schema,O=a.$ref.converter,B=f[c],w=B.type,j=n(B),$={},p=e[w];if(p&&p.categories){const R=p.categories[r],V=R==null?void 0:R.title;O&&Object.keys(R.properties).forEach(v=>{R.properties[v].$converter=O});const u=(R==null?void 0:R.properties)||{},y=g(u,$,j,B,h,d);return{categoryId:r,categoryName:V,properties:y}}return{categoryId:r,categoryName:"",properties:[]}}function b(r,a,f,h,d){const c=r.type,O=n(r),B={};let w=d||e[c];if(w&&Object.keys(w).length===0&&f&&f.getPropConfig&&(w=f.getPropConfig(h)),w&&w.categories){const j=[];return Object.keys(w.categories).map($=>{const p=w.categories[$];if(p.$ref){j.push(l($,p,r,a,h));return}const R=p==null?void 0:p.title,V=p==null?void 0:p.tabId,u=p==null?void 0:p.tabName,y=p==null?void 0:p.hide,v=p==null?void 0:p.hideTitle,S=g(p.properties||{},B,O,r,a,h,p.$converter),{setPropertyRelates:D}=p,M=p==null?void 0:p.parentPropertyID;j.push({categoryId:$,categoryName:R,tabId:V,tabName:u,hide:y,properties:S,hideTitle:v,setPropertyRelates:D,parentPropertyID:M})}),j}return[]}return{getPropertyConfigBySchema:b,getPropertyConfigByType:o,propertyConverterMap:i}}const Q={},x={};J(Q,x,ae);const I={},K={},{resolveSchemaWithDefaultValue:je}=G(I,K),ee={},te={};J(ee,te,je);function Re(e,t,n=new Map,i=(N,F,E,m)=>F,T={},k=N=>N){return U[t.title]=t,Y[t.title]=i,Q[t.title]=T,x[t.title]=k,I[t.title]=t,K[t.title]=i,ee[t.title]=T,te[t.title]=k,(N={},F=!0)=>{if(!F)return ce(N,n);const E=se(N,t,n),m=Object.keys(e).reduce((g,o)=>(g[o]=e[o].default,g),{});return Object.assign(m,E)}}function Me(e,t){return{customClass:t.class,customStyle:t.style}}function Pe(e,t,n){return t}const Le=new Map([["appearance",Me]]),Ve={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/dropdown.schema.json",title:"dropdown",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for dropdown",type:"string"},type:{description:"The type string of dropdown",type:"string",default:"dropdown"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Ae={title:"dropdown",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"}}}}},W={show:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},title:{type:String,default:"下拉示例"},size:{type:String,default:""},type:{type:String,default:"primary"},iconClass:{type:String,default:""},active:{type:Boolean,default:!1},splitButton:{type:Boolean,default:!1},position:{type:String,default:"bottom"},model:{type:Array,default:[{label:"项目一",value:"XM1"},{label:"项目二",value:"XM2"},{label:"项目三",value:"XM3"}]},onSelect:{type:Function,default:()=>{}}},X=Re(W,Ve,Le,Pe,Ae);function ne(e,t){let n;const i=s.ref(e.show),T=s.ref(),k=s.ref(),N=s.ref(),F=10;s.onMounted(()=>{n=k.value});const E=(d=1)=>{const c=["body>.f-datagrid-settings-simple-host","body>div","body>farris-dialog>.farris-modal.show","body>.farris-modal.show","body>farris-filter-panel>.f-filter-panel-wrapper","body .f-sidebar-show>.f-sidebar-main","body>.popover.show","body>filter-row-panel>.f-datagrid-filter-panel","body>.f-section-maximize"],O=Array.from(document.body.querySelectorAll(c.join(","))).filter(w=>w).map(w=>{const{display:j,zIndex:$}=window.getComputedStyle(w);return j==="none"?0:parseInt($,10)}).filter(w=>w);let B=Math.max(...O);return B<1040&&(B=1040),B+d},m=(d,c)=>{const{height:O,left:B,top:w,width:j}=d.getBoundingClientRect(),{width:$,height:p,top:R}=c.getBoundingClientRect();if(d.className.indexOf("dropdown-submenu")>-1||d.closest(".dropdown-submenu")||d.classList.contains("dropright")){const u=window.innerWidth-B-d.offsetWidth,y=window.innerHeight-w,{position:v}=getComputedStyle(c);if(v==="fixed"){let S=B+d.offsetWidth;c.offsetWidth>u&&B>u&&(S=B-$),c.style.left=S+"px",c.style.right="auto",window.innerHeight-2*F<c.offsetHeight?(c.style.top=F+"px",c.style.bottom=F+"px",c.style.maxHeight=window.innerHeight-2*F+"px",c.style.overflowY="auto",c.className+=" dropdown-menu-maxheight"):y<c.offsetHeight?(c.style.top="auto",c.style.bottom=F+"px"):(c.style.top=w+"px",c.style.bottom="auto")}else{if(c.offsetWidth>u){const S=-$;c.style.left=S+"px"}window.innerHeight-2*F<c.offsetHeight?(c.style.top=-1*(w-F)+"px",c.style.bottom="auto",c.style.maxHeight=window.innerHeight-2*F+"px",c.style.overflowY="auto",c.className+=" dropdown-menu-maxheight"):y<c.offsetHeight&&(c.style.top=y-c.offsetHeight-F+"px",c.style.bottom="auto")}}else{const{marginTop:u,marginBottom:y}=getComputedStyle(c);let v=0;const S=Math.ceil(parseFloat(u))+Math.ceil(parseFloat(y));let D=w+O,M=B;window.innerHeight-D-S<p&&(D=w-p,D<0&&(window.innerHeight-w-O>w?(D=w+O,v=window.innerHeight-D-S-F):(D=F,v=w-D-S))),window.innerWidth-B<$&&window.innerWidth-B<B+j&&(M=B-$+j),document.body.append(c),c.style.cssText=`position:fixed;bottom:unset;left:${M}px
2
- !important;top:${D}px !important;right: unset;${v?"max-height:"+v+"px;overflow-y:auto;":""}`,v&&(c.className+=" dropdown-menu-maxheight"),c.style.zIndex=E().toString()}},g=()=>{m(T.value,k.value)},o=()=>{e.hover||(i.value=!1,k.value.style=null,document.removeEventListener("click",o),n.removeEventListener("click",o),document.removeEventListener("scroll",o),n.removeEventListener("scroll",o))},l=(d=null,c=!1)=>{e.hover||e.disabled||(d==null||d.stopPropagation(),c?(setTimeout(()=>{g()}),i.value=!0):(i.value||setTimeout(()=>{g()}),i.value=!i.value),document.addEventListener("click",o),document.addEventListener("scroll",o),e.hideOnClick||(n.addEventListener("click",O=>{O.stopPropagation()}),n.addEventListener("scroll",O=>{O.stopPropagation()})))};return{show:i,dropdownRef:T,dropdownMenuRef:k,clickEventRef:N,showDropMenu:d=>{l(d,!1)},showDropMenuByForce:l,hoverDropdown:d=>{e.hover&&(i.value||setTimeout(()=>{}),i.value=!i.value)},leftButtonClick:()=>{},closeDropMenu:o,selectItem:d=>{t.emit("select",d)},resolveSize:d=>{const c=/px|em|rem|pt|%/;return c.test(d)?`${parseInt(d,10)}${d.match(c)[0]}`:`${d}px`}}}const Ce={label:{type:String,default:"XM1"},value:{type:String||Number,default:"项目一"},disabled:{type:Boolean,default:!1},active:{type:Boolean,default:!1},divide:{type:Boolean,default:!1},onSelect:{type:Function,default:()=>{}}},oe=s.defineComponent({name:"FDropdownItem",props:Ce,emits:["select"],setup(e,t){const n=s.ref(e.value),i=s.ref(e.label),T=s.ref(e.disabled),k=s.ref(e.active),N=s.ref(e.divide),F=()=>{T.value||t.emit("select",e)};return()=>s.createVNode("div",null,[s.withDirectives(s.createVNode("div",{class:"dropdown-divider"},null),[[s.vShow,N.value]]),s.createVNode("li",{class:`dropdown-item${k.value?" active":""} ${T.value?" disabled":""}`,onClick:F,title:n.value.toString()},[i.value])])}}),_=s.defineComponent({name:"FDropdown",props:W,emits:["select"],setup(e,t){const n=s.ref(e.model),{show:i,dropdownMenuRef:T,dropdownRef:k,clickEventRef:N,showDropMenu:F,hoverDropdown:E,leftButtonClick:m,showDropMenuByForce:g,closeDropMenu:o}=ne(e,t);function l(r){o(),t.emit("select",r)}function b(){return[{"dropdown-item":e.nest},{"btn-lg":e.size==="large"},{"btn-sm":e.size==="small"},{"btn-primary":e.type==="primary"},{"btn-success":e.type==="success"},{"btn-warning":e.type==="warning"},{"btn-danger":e.type==="danger"},{"btn-info":e.type==="info"},{"btn-secondary":e.type==="secondary"},{"btn-link":e.type==="link"},{disabled:e.disabled}]}return s.onMounted(()=>{i.value&&g(null,!0)}),()=>s.createVNode("div",{ref:k},[s.createVNode("div",{class:["farris-dropdown","btn-group",{dropup:e.position==="top"},{dropdown:e.position==="bottom"},{dropleft:e.position==="left"},{dropright:e.position==="right"}]},[e.splitButton&&s.createVNode("span",{class:["btn",...b()],style:"width:100%",onClick:m},[e.title]),s.createVNode("span",{ref:N,class:["dropdown-toggle",{btn:!e.nest},{"dropdown-toggle-split":e.splitButton},...b()],style:"width:100%",onClick:F,onMouseenter:E,onMouseleave:E},[e.splitButton?"":e.title,e.iconClass&&s.createVNode("span",{class:`f-icon ${e.iconClass}`},null)]),s.createVNode(s.Teleport,{to:"body"},{default:()=>[s.createVNode("div",{ref:T,class:`dropdown-menu${i.value?" show":""}`},[s.createVNode(s.Fragment,null,[n.value.map(({label:r,value:a,disabled:f,active:h,divide:d})=>s.createVNode(oe,{value:a.toString(),label:r,disabled:f,active:h,divide:d,onSelect:c=>l(c)},null))])])]})])])}});function He(e,t,n){var V;const i="",T="",k=s.ref();let N;function F(){return(t==null?void 0:t.schema.componentType)!=="frame"}function E(){return!1}function m(){return(t==null?void 0:t.schema.componentType)!=="frame"}function g(){return(t==null?void 0:t.schema.componentType)==="frame"}function o(u){if(!u||!u.value)return null;if(u.value.schema&&u.value.schema.type==="component")return u.value;const y=s.ref(u==null?void 0:u.value.parent),v=o(y);return v||null}function l(u=t){var D;const{componentInstance:y,designerItemElementRef:v}=u;if(!y||!y.value)return null;const{getCustomButtons:S}=y.value;return y.value.canMove||S&&((D=S())!=null&&D.length)?v:l(u.parent)}function b(u){return!1}function r(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function a(){}function f(u,y){var v;!u||!y||(v=t==null?void 0:t.setupContext)==null||v.emit("dragEnd")}function h(u,y){const{componentType:v}=u;let S=ie.getSchemaByTypeForDesigner(v,u,y);const D=v.toLowerCase().replace(/-/g,"_");return S&&!S.id&&S.type===v&&(S.id=`${D}_${Math.random().toString().slice(2,6)}`),S}function d(u){}function c(...u){}function O(u){if(!u)return;const y=t==null?void 0:t.schema,{formSchemaUtils:v}=u;if(y&&v.getExpressions().length){const S=v.getExpressions().findIndex(D=>D.target===y.id);S>-1&&v.getExpressions().splice(S,1)}}function B(u){if(!u||!(t!=null&&t.schema))return;const y=t.schema,{formSchemaUtils:v}=u;v.removeCommunicationInComponent(y)}function w(u){O(u),B(u),t!=null&&t.schema.contents&&t.schema.contents.map(y=>{let v=y.id;y.type==="component-ref"&&(v=y.component);const S=e.value.querySelectorAll(`#${v}-design-item`);S!=null&&S.length&&Array.from(S).map(D=>{var M;(M=D==null?void 0:D.componentInstance)!=null&&M.value.onRemoveComponent&&D.componentInstance.value.onRemoveComponent(u)})})}function j(){}function $(u){var v,S;if(!((v=t==null?void 0:t.schema)!=null&&v.id))return;!N&&u&&(N=u.formSchemaUtils);let y="";{const{text:D,title:M,label:H,mainTitle:P,name:A,type:q}=t.schema;y=D||M||H||P||A||((S=Z[q])==null?void 0:S.name)}y&&N.getControlBasicInfoMap().set(t.schema.id,{componentTitle:y,parentPathName:y})}function p(u){var D;const{changeObject:y}=u,{propertyID:v,propertyValue:S}=y;if(["text","title","label","name","mainTitle"].includes((D=u==null?void 0:u.changeObject)==null?void 0:D.propertyID)&&v&&S&&($(),N)){const M=N.getControlBasicInfoMap(),H=M.keys().toArray().filter(P=>{var A,q;return((A=M.get(P))==null?void 0:A.reliedComponentId)===((q=t==null?void 0:t.schema)==null?void 0:q.id)});H!=null&&H.length&&H.forEach(P=>{const A=M.get(P).parentPathName.split(" > ");A[0]=S,M.get(P).parentPathName=A.join(" > ")})}}function R(u){p(u)}return k.value={canMove:F(),canSelectParent:E(),canDelete:m(),canNested:!g(),contents:t==null?void 0:t.schema.contents,elementRef:e,parent:(V=t==null?void 0:t.parent)==null?void 0:V.componentInstance,schema:t==null?void 0:t.schema,styles:i,designerClass:T,canAccepts:b,getBelongedComponentInstance:o,getDraggableDesignItemElement:l,getDraggingDisplayText:r,getPropConfig:c,getDragScopeElement:a,onAcceptMovedChildElement:f,onChildElementMovedOut:d,addNewChildComponentSchema:h,triggerBelongedComponentToMoveWhenMoved:s.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:s.ref(!1),onRemoveComponent:w,getCustomButtons:j,onPropertyChanged:R,setComponentBasicInfoMap:$,updateContextSchema:t==null?void 0:t.updateContextSchema},k}const qe=s.defineComponent({name:"FDropdownDesign",props:W,emits:["select"],setup(e,t){const n=s.ref(e.model),{show:i,showDropMenu:T,hoverDropdown:k,leftButtonClick:N}=ne(e,t);function F(o){t.emit("select",o)}const E=s.ref(),m=s.inject("design-item-context"),g=He(E,m);return s.onMounted(()=>{E.value.componentInstance=g}),t.expose(g.value),()=>s.createVNode("div",{ref:E},[s.createVNode("div",{class:["farris-dropdown","btn-group",{dropup:e.position==="top"},{dropdown:e.position==="bottom"},{dropleft:e.position==="left"},{dropright:e.position==="right"}],style:{width:e.width}},[e.splitButton&&s.createVNode("span",{class:["btn",{"dropdown-item":e.nest},{"btn-lg":e.size==="large"},{"btn-sm":e.size==="small"},{"btn-primary":e.type==="primary"},{"btn-success":e.type==="success"},{"btn-warning":e.type==="warning"},{"btn-danger":e.type==="danger"},{"btn-info":e.type==="info"}],style:"width:100%",onClick:N},[e.title]),s.createVNode("span",{class:["dropdown-toggle",{btn:!e.nest},{"dropdown-item":e.nest},{"dropdown-toggle-split":e.splitButton},{"btn-lg":e.size==="large"},{"btn-sm":e.size==="small"},{"btn-primary":e.type==="primary"},{"btn-success":e.type==="success"},{"btn-warning":e.type==="warning"},{"btn-danger":e.type==="danger"},{"btn-info":e.type==="info"},{"btn-secondary":e.type==="secondary"},{"btn-link":e.type==="link"},{disabled:e.disabled}],style:"width:100%",onClick:T,onMouseenter:k,onMouseleave:k},[s.withDirectives(s.createVNode("span",{class:"sr-only"},null),[[s.vShow,e.splitButton]]),e.splitButton?"":e.title,s.withDirectives(s.createVNode("span",{class:`f-icon ${e.iconClass.toString()}`},null),[[s.vShow,e.iconClass]])]),s.createVNode("div",{class:`dropdown-menu${i.value?" show":""}`},[s.createVNode(s.Fragment,null,[n.value.map(({label:o,value:l,disabled:b,active:r,divide:a})=>s.createVNode(oe,{value:l.toString(),label:o,disabled:b,active:r,divide:a,onSelect:f=>F(f)},null))])])])])}}),ze={install(e){e.component(_.name,_)},register(e,t,n,i){e.dropdown=_,t.dropdown=X},registerDesigner(e,t,n){e.dropdown=qe,t.dropdown=X}};L.Dropdown=_,L.default=ze,L.dropdownProps=W,L.propsResolver=X,Object.defineProperties(L,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(C,c){typeof exports=="object"&&typeof module<"u"?c(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js"],c):(C=typeof globalThis<"u"?globalThis:C||self,c(C.dropdown={},C.Vue,C.LodashES,C.dynamicResolver))})(this,function(C,c,q,ie){"use strict";function G(e,t){let n;function a(o){const{properties:l,title:g,ignore:r}=o,i=r&&Array.isArray(r),u=Object.keys(l).reduce((w,d)=>((!i||!r.find(s=>s===d))&&(w[d]=l[d].type==="object"&&l[d].properties?a(l[d]):q.cloneDeep(l[d].default)),w),{});if(g&&(!i||!r.find(w=>w==="id"))){const w=g.toLowerCase().replace(/-/g,"_");u.id=`${w}_${Math.random().toString().slice(2,6)}`}return u}function T(o){const{properties:l,title:g,required:r}=o;if(r&&Array.isArray(r)){const i=r.reduce((u,w)=>(u[w]=l[w].type==="object"&&l[w].properties?a(l[w]):q.cloneDeep(l[w].default),u),{});if(g&&r.find(u=>u==="id")){const u=g.toLowerCase().replace(/-/g,"_");i.id=`${u}_${Math.random().toString().slice(2,6)}`}return i}return{type:g}}function k(o,l={},g){const r=e[o];if(r){let i=T(r);const u=t[o];return i=u?u({getSchemaByType:k},i,l,g):i,n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(i),i}return null}function B(o,l){const g=a(l);return Object.keys(g).reduce((r,i)=>(Object.prototype.hasOwnProperty.call(o,i)&&(r[i]&&q.isPlainObject(r[i])&&q.isPlainObject(o[i]||!o[i])?Object.assign(r[i],o[i]||{}):r[i]=o[i]),r),g),g}function F(o,l){return Object.keys(o).filter(r=>o[r]!=null).reduce((r,i)=>{if(l.has(i)){const u=l.get(i);if(typeof u=="string")r[u]=o[i];else{const w=u(i,o[i],o);Object.assign(r,w)}}else r[i]=o[i];return r},{})}function j(o,l,g=new Map){const r=B(o,l);return F(r,g)}function m(o){var g;const l=o.type;if(l){const r=e[l];if(!r)return o;const i=B(o,r),u=((g=o.editor)==null?void 0:g.type)||"";if(u){const w=e[u],d=B(o.editor,w);i.editor=d}return i}return o}function b(o){n=o}return{getSchemaByType:k,resolveSchemaWithDefaultValue:m,resolveSchemaToProps:j,mappingSchemaToProps:F,setDesignerContext:b}}const U={},Y={},{getSchemaByType:Ue,resolveSchemaWithDefaultValue:ae,resolveSchemaToProps:se,mappingSchemaToProps:ce,setDesignerContext:Ye}=G(U,Y);function le(e={}){function t(m,b,o,l){if(typeof o=="number")return l[m].length===o;if(typeof o=="object"){const g=Object.keys(o)[0],r=o[g];if(g==="not")return Number(l[m].length)!==Number(r);if(g==="moreThan")return Number(l[m].length)>=Number(r);if(g==="lessThan")return Number(l[m].length)<=Number(r)}return!1}function n(m,b,o,l){return l[m]&&l[m].propertyValue&&String(l[m].propertyValue.value)===String(o)}const a=new Map([["length",t],["getProperty",n]]);Object.keys(e).reduce((m,b)=>(m.set(b,e[b]),m),a);function T(m,b){const o=m;return typeof b=="number"?[{target:o,operator:"length",param:null,value:Number(b)}]:typeof b=="boolean"?[{target:o,operator:"getProperty",param:m,value:!!b}]:typeof b=="object"?Object.keys(b).map(l=>{if(l==="length")return{target:o,operator:"length",param:null,value:b[l]};const g=l,r=b[l];return{target:o,operator:"getProperty",param:g,value:r}}):[]}function k(m){return Object.keys(m).reduce((o,l)=>{const g=T(l,m[l]);return o.push(...g),o},[])}function B(m,b){if(a.has(m.operator)){const o=a.get(m.operator);return o&&o(m.target,m.param,m.value,b)||!1}return!1}function F(m,b){return k(m).reduce((g,r)=>g&&B(r,b),!0)}function j(m,b){const o=Object.keys(m),l=o.includes("allOf"),g=o.includes("anyOf"),r=l||g,w=(r?m[r?l?"allOf":"anyOf":"allOf"]:[m]).map(s=>F(s,b));return l?!w.includes(!1):w.includes(!0)}return{parseValueSchema:j}}const ue={convertTo:(e,t,n,a)=>{e.appearance||(e.appearance={}),e.appearance[t]=n},convertFrom:(e,t,n)=>e.appearance?e.appearance[t]:e[t]},fe={convertFrom:(e,t,n)=>e.buttons&&e.buttons.length?`共 ${e.buttons.length} 项`:"无"},de={convertTo:(e,t,n,a)=>{e.editor&&(e.editor[t]=n)},convertFrom:(e,t,n)=>e.editor&&Object.prototype.hasOwnProperty.call(e.editor,t)?e.editor[t]:e[t]},x={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:"多语输入框"}},pe={convertFrom:(e,t,n)=>{var T;const a=e.editor&&e.editor[t]?e.editor[t]:e[t];return((T=x[a])==null?void 0:T.name)||a}},me={convertTo:(e,t,n,a)=>{e[t]=e[t]},convertFrom:(e,t,n)=>e.editor?n.getRealEditorType(e.editor.type):""},ve={convertTo:(e,t,n,a)=>{(e.type==="data-grid-column"||e.type==="tree-grid-column")&&(e.formatter?e.formatter[t]=n:e.formatter={[t]:n})},convertFrom:(e,t,n)=>{if(e.formatter){if(t==="trueText")return e.formatter.trueText;if(t==="falseText")return e.formatter.falseText;if(t==="prefix")return e.formatter.prefix;if(t==="suffix")return e.formatter.suffix;if(t==="precision")return e.formatter.precision;if(t==="decimal")return e.formatter.decimal;if(t==="thousand")return e.formatter.thousand;if(t==="dateFormat")return e.formatter.dateFormat||"yyyy-MM-dd";if(t==="customFormat")return e.formatter.customFormat;if(t==="type")return e.formatter.type||"none"}return"none"}},ge={convertTo:(e,t,n,a)=>{e.command?e.command[t]=n:e.command={[t]:n},t==="enable"&&n&&(e.command.commands||(e.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(e,t,n)=>e.command&&t==="enable"?e.command.enable:""},be={convertTo:(e,t,n,a)=>{e.column?e.column[t]=n:e.column={[t]:n},t==="fitColumns"&&n&&(e.column.fitMode||(e.column.fitMode="average"))},convertFrom:(e,t,n)=>{if(e.column){if(t==="fitColumns")return e.column.fitColumns;if(t==="fitMode")return e.column.fitMode}return""}},ye={convertTo:(e,t,n,a)=>{e.summary?e.summary[t]=n:e.summary={[t]:n},t==="enable"&&n&&(e.summary?e.summary.groupFields||(e.summary.groupFields=[]):e.summary={enable:n,groupFields:[]})},convertFrom:(e,t,n)=>e.summary&&t==="enable"?e.summary.enable:e.type==="data-grid-column"?e.enableSummary===void 0?!1:e.enableSummary:""},we={convertTo:(e,t,n,a)=>{e.group?e.group[t]=n:e.group={[t]:n},t==="enable"&&n&&(e.group?e.group.groupFields||(e.group.groupFields=[]):e.group={enable:n,groupFields:[],showSummary:!1})},convertFrom:(e,t,n)=>{if(e.group){if(t==="enable")return e.group.enable;if(t==="showSummary")return e.group.showSummary}}},he={convertFrom:(e,t)=>e.binding?e.binding.path:"",convertTo:(e,t,n)=>{if(n&&n.length>0){const a=n[0];e.binding||(e.binding={}),e.binding.type="Form",e.binding.path=a.bindingField,e.binding.field=a.id,e.binding.fullPath=a.path,e.path=a.bindingPath}}},Se={convertTo:(e,t,n,a)=>{e.pagination||(e.pagination={}),e.pagination[t]=n},convertFrom:(e,t,n)=>e.pagination?e.pagination[t]:e[t]},Te={convertTo:(e,t,n,a)=>{e.rowNumber||(e.rowNumber={}),e.rowNumber[t]=n},convertFrom:(e,t,n)=>e.rowNumber?e.rowNumber[t]:e[t]},De={convertTo:(e,t,n,a)=>{e.selection||(e.selection={}),e.selection[t]=n},convertFrom:(e,t,n)=>{var a,T;return t==="showCheckbox"?(a=e.selection)!=null&&a.multiSelect?!0:(T=e.selection)==null?void 0:T.showCheckbox:e.selection?e.selection[t]:e[t]}},Fe={convertFrom:(e,t,n)=>e[t]&&e[t].length?`共 ${e[t].length} 项`:""},Ne={convertFrom:(e,t)=>e[t]||"",convertTo:(e,t,n)=>{e[t]=n}},Be={convertTo:(e,t,n,a)=>{e.size||(e.size={}),e.size[t]=n},convertFrom:(e,t,n)=>e.size?e.size[t]:e[t]},ke={convertFrom:(e,t,n)=>{var a,T;return(a=e.formatter)!=null&&a.data&&t==="formatterEnumData"&&!e.formatterEnumData?(T=e.formatter)==null?void 0:T.data:e.formatterEnumData}},$e={convertTo:(e,t,n,a)=>{e.sort||(e.sort={}),e.sort[t]=n},convertFrom:(e,t,n)=>{var a,T;if(t==="mode")return((a=e.sort)==null?void 0:a.mode)||"client";if(t==="multiSort")return!!((T=e.sort)!=null&&T.multiSort)}},Oe={convertTo:(e,t,n,a)=>{e.filter||(e.filter={}),e.filter[t]=n},convertFrom:(e,t,n)=>{var a;if(t==="mode")return((a=e.filter)==null?void 0:a.mode)||"client"}},Ee={convertTo:(e,t,n,a)=>{e.rowOption?e.rowOption[t]=n:e.rowOption={[t]:n}},convertFrom:(e,t,n)=>{if(e.rowOption){if(t==="customRowStyle")return e.rowOption.customRowStyle;if(t==="customCellStyle")return e.rowOption.customCellStyle}return""}};function Z(e,t,n){const a=new Map([["/converter/appearance.converter",ue],["/converter/buttons.converter",fe],["/converter/property-editor.converter",de],["/converter/items-count.converter",Fe],["/converter/type.converter",pe],["/converter/change-editor.converter",me],["/converter/change-formatter.converter",ve],["/converter/column-command.converter",ge],["/converter/column-option.converter",be],["/converter/summary.converter",ye],["/converter/group.converter",we],["/converter/form-group-label.converter",Ne],["/converter/field-selector.converter",he],["/converter/pagination.converter",Se],["/converter/row-number.converter",Te],["/converter/grid-selection.converter",De],["/converter/size.converter",Be],["/converter/change-formatter-enum.converter",ke],["/converter/grid-sort.converter",$e],["/converter/grid-filter.converter",Oe],["/converter/row-option.converter",Ee]]),T=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}]]),k=le();function B(r,i){return()=>k.parseValueSchema(r,i)}function F(r,i,u){return r.includes("visible")&&i.visible!==void 0?typeof i.visible=="boolean"?()=>!!i.visible:i.visible===void 0?!0:B(i.visible,u):()=>!0}function j(r,i,u){return r.includes("readonly")&&i.readonly!==void 0?typeof i.readonly=="boolean"?()=>!!i.readonly:B(i.readonly,u):()=>!1}function m(r,i){const u=r.$converter||i;return typeof u=="string"&&u&&a.has(u)?a.get(u)||null:u||null}function b(r,i,u,w,d,s="",$=""){return Object.keys(r).map(h=>{const E=c.ref(1),O=h,p=r[h],M=Object.keys(p),L=p.title,f=p.type,y=T.get(f)||{type:"input-group",enableClear:!1},v=p.editor?Object.assign({},y,p.editor):Object.assign({},y),S=F(M,p,i),D=j(M,p,i);v.readonly=v.readonly===void 0?D():v.readonly;const R=p.type==="cascade"?b(p.properties,i,u,w,d,s,$):[],A=!0;let P=m(p,$);const V=c.computed({get(){if(E.value){if(["class","style"].find(Ge=>Ge===O)&&!P&&(P=a.get("/converter/appearance.converter")||null),P&&P.convertFrom)return P.convertFrom(u,h,d,s);const z=u[h];return Object.prototype.hasOwnProperty.call(p,"defaultValue")&&(z===void 0||typeof z=="string"&&z==="")?p.type==="boolean"?p.defaultValue:p.defaultValue||"":z}return null},set(z){E.value+=1,P&&P.convertTo?(P.convertTo(w,h,z,d,s),P.convertTo(u,h,z,d,s)):(w[h]=z,u[h]=z)}}),{refreshPanelAfterChanged:H,description:We,isExpand:_e,parentPropertyID:Xe}=p,re={propertyID:O,propertyName:L,propertyType:f,propertyValue:V,editor:v,visible:S,readonly:D,cascadeConfig:R,hideCascadeTitle:A,refreshPanelAfterChanged:H,description:We,isExpand:_e,parentPropertyID:Xe};return i[O]=re,re})}function o(r,i,u={}){const w={},d=e[r];return d&&d.categories?Object.keys(d.categories).map($=>{const N=d.categories[$],h=N==null?void 0:N.title,E=b(N.properties||{},w,{},u,i);return{categoryId:$,categoryName:h,properties:E}}):[]}function l(r,i,u,w,d=""){const s=i.$ref.schema,$=i.$ref.converter,N=u[s],h=N.type,E=n(N),O={},p=e[h];if(p&&p.categories){const M=p.categories[r],L=M==null?void 0:M.title;$&&Object.keys(M.properties).forEach(v=>{M.properties[v].$converter=$});const f=(M==null?void 0:M.properties)||{},y=b(f,O,E,N,w,d);return{categoryId:r,categoryName:L,properties:y}}return{categoryId:r,categoryName:"",properties:[]}}function g(r,i,u,w,d){const s=r.type,$=n(r),N={};let h=d||e[s];if(h&&Object.keys(h).length===0&&u&&u.getPropConfig&&(h=u.getPropConfig(w)),h&&h.categories){const E=[];return Object.keys(h.categories).map(O=>{const p=h.categories[O];if(p.$ref){E.push(l(O,p,r,i,w));return}const M=p==null?void 0:p.title,L=p==null?void 0:p.tabId,f=p==null?void 0:p.tabName,y=p==null?void 0:p.hide,v=p==null?void 0:p.hideTitle,S=b(p.properties||{},N,$,r,i,w,p.$converter),{setPropertyRelates:D}=p,R=p==null?void 0:p.parentPropertyID;E.push({categoryId:O,categoryName:M,tabId:L,tabName:f,hide:y,properties:S,hideTitle:v,setPropertyRelates:D,parentPropertyID:R})}),E}return[]}return{getPropertyConfigBySchema:g,getPropertyConfigByType:o,propertyConverterMap:a}}const J={},Q={};Z(J,Q,ae);const I={},K={},{getSchemaByType:xe,resolveSchemaWithDefaultValue:je,resolveSchemaToProps:Ze,mappingSchemaToProps:Je,setDesignerContext:Qe}=G(I,K),ee={},te={};Z(ee,te,je);function Me(e,t,n=new Map,a=(B,F,j,m)=>F,T={},k=B=>B){return U[t.title]=t,Y[t.title]=a,J[t.title]=T,Q[t.title]=k,I[t.title]=t,K[t.title]=a,ee[t.title]=T,te[t.title]=k,(B={},F=!0)=>{if(!F)return ce(B,n);const j=se(B,t,n),m=Object.keys(e).reduce((b,o)=>(b[o]=e[o].default,b),{});return Object.assign(m,j)}}function Re(e,t){return{customClass:t.class,customStyle:t.style}}function Pe(e,t,n){return t}const Ce=new Map([["appearance",Re]]),Le={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/dropdown.schema.json",title:"dropdown",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for dropdown",type:"string"},type:{description:"The type string of dropdown",type:"string",default:"dropdown"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Ve={title:"dropdown",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"}}}}},W={show:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},title:{type:String,default:"下拉示例"},size:{type:String,default:""},type:{type:String,default:"primary"},iconClass:{type:String,default:""},active:{type:Boolean,default:!1},splitButton:{type:Boolean,default:!1},position:{type:String,default:"bottom"},model:{type:Array,default:[{label:"项目一",value:"XM1"},{label:"项目二",value:"XM2"},{label:"项目三",value:"XM3"}]},onSelect:{type:Function,default:()=>{}}},X=Me(W,Le,Ce,Pe,Ve);function ne(e,t){let n;const a=c.ref(e.show),T=c.ref(),k=c.ref(),B=c.ref(),F=10;c.onMounted(()=>{n=k.value});const j=(d=1)=>{const s=["body>.f-datagrid-settings-simple-host","body>div","body>farris-dialog>.farris-modal.show","body>.farris-modal.show","body>farris-filter-panel>.f-filter-panel-wrapper","body .f-sidebar-show>.f-sidebar-main","body>.popover.show","body>filter-row-panel>.f-datagrid-filter-panel","body>.f-section-maximize"],$=Array.from(document.body.querySelectorAll(s.join(","))).filter(h=>h).map(h=>{const{display:E,zIndex:O}=window.getComputedStyle(h);return E==="none"?0:parseInt(O,10)}).filter(h=>h);let N=Math.max(...$);return N<1040&&(N=1040),N+d},m=(d,s)=>{const{height:$,left:N,top:h,width:E}=d.getBoundingClientRect(),{width:O,height:p,top:M}=s.getBoundingClientRect();if(d.className.indexOf("dropdown-submenu")>-1||d.closest(".dropdown-submenu")||d.classList.contains("dropright")){const f=window.innerWidth-N-d.offsetWidth,y=window.innerHeight-h,{position:v}=getComputedStyle(s);if(v==="fixed"){let S=N+d.offsetWidth;s.offsetWidth>f&&N>f&&(S=N-O),s.style.left=S+"px",s.style.right="auto",window.innerHeight-2*F<s.offsetHeight?(s.style.top=F+"px",s.style.bottom=F+"px",s.style.maxHeight=window.innerHeight-2*F+"px",s.style.overflowY="auto",s.className+=" dropdown-menu-maxheight"):y<s.offsetHeight?(s.style.top="auto",s.style.bottom=F+"px"):(s.style.top=h+"px",s.style.bottom="auto")}else{if(s.offsetWidth>f){const S=-O;s.style.left=S+"px"}window.innerHeight-2*F<s.offsetHeight?(s.style.top=-1*(h-F)+"px",s.style.bottom="auto",s.style.maxHeight=window.innerHeight-2*F+"px",s.style.overflowY="auto",s.className+=" dropdown-menu-maxheight"):y<s.offsetHeight&&(s.style.top=y-s.offsetHeight-F+"px",s.style.bottom="auto")}}else{const{marginTop:f,marginBottom:y}=getComputedStyle(s);let v=0;const S=Math.ceil(parseFloat(f))+Math.ceil(parseFloat(y));let D=h+$,R=N;window.innerHeight-D-S<p&&(D=h-p,D<0&&(window.innerHeight-h-$>h?(D=h+$,v=window.innerHeight-D-S-F):(D=F,v=h-D-S))),window.innerWidth-N<O&&window.innerWidth-N<N+E&&(R=N-O+E),document.body.append(s),s.style.cssText=`position:fixed;bottom:unset;left:${R}px
2
+ !important;top:${D}px !important;right: unset;${v?"max-height:"+v+"px;overflow-y:auto;":""}`,v&&(s.className+=" dropdown-menu-maxheight"),s.style.zIndex=j().toString()}},b=()=>{m(T.value,k.value)},o=()=>{e.hover||(a.value=!1,k.value.style=null,document.removeEventListener("click",o),n.removeEventListener("click",o),document.removeEventListener("scroll",o),n.removeEventListener("scroll",o))},l=(d=null,s=!1)=>{e.hover||e.disabled||(d==null||d.stopPropagation(),s?(setTimeout(()=>{b()}),a.value=!0):(a.value||setTimeout(()=>{b()}),a.value=!a.value),document.addEventListener("click",o),document.addEventListener("scroll",o),e.hideOnClick||(n.addEventListener("click",$=>{$.stopPropagation()}),n.addEventListener("scroll",$=>{$.stopPropagation()})))};return{show:a,dropdownRef:T,dropdownMenuRef:k,clickEventRef:B,showDropMenu:d=>{l(d,!1)},showDropMenuByForce:l,hoverDropdown:d=>{e.hover&&(a.value||setTimeout(()=>{}),a.value=!a.value)},leftButtonClick:()=>{},closeDropMenu:o,selectItem:d=>{t.emit("select",d)},resolveSize:d=>{const s=/px|em|rem|pt|%/;return s.test(d)?`${parseInt(d,10)}${d.match(s)[0]}`:`${d}px`}}}const ze={label:{type:String,default:"XM1"},value:{type:String||Number,default:"项目一"},disabled:{type:Boolean,default:!1},active:{type:Boolean,default:!1},divide:{type:Boolean,default:!1},onSelect:{type:Function,default:()=>{}}},oe=c.defineComponent({name:"FDropdownItem",props:ze,emits:["select"],setup(e,t){const n=c.ref(e.value),a=c.ref(e.label),T=c.ref(e.disabled),k=c.ref(e.active),B=c.ref(e.divide),F=()=>{T.value||t.emit("select",e)};return()=>c.createVNode("div",null,[c.withDirectives(c.createVNode("div",{class:"dropdown-divider"},null),[[c.vShow,B.value]]),c.createVNode("li",{class:`dropdown-item${k.value?" active":""} ${T.value?" disabled":""}`,onClick:F,title:n.value.toString()},[a.value])])}}),_=c.defineComponent({name:"FDropdown",props:W,emits:["select"],setup(e,t){const n=c.ref(e.model),{show:a,dropdownMenuRef:T,dropdownRef:k,clickEventRef:B,showDropMenu:F,hoverDropdown:j,leftButtonClick:m,showDropMenuByForce:b,closeDropMenu:o,selectItem:l,resolveSize:g}=ne(e,t);function r(u){o(),t.emit("select",u)}function i(){return[{"dropdown-item":e.nest},{"btn-lg":e.size==="large"},{"btn-sm":e.size==="small"},{"btn-primary":e.type==="primary"},{"btn-success":e.type==="success"},{"btn-warning":e.type==="warning"},{"btn-danger":e.type==="danger"},{"btn-info":e.type==="info"},{"btn-secondary":e.type==="secondary"},{"btn-link":e.type==="link"},{disabled:e.disabled}]}return c.onMounted(()=>{a.value&&b(null,!0)}),()=>c.createVNode("div",{ref:k},[c.createVNode("div",{class:["farris-dropdown","btn-group",{dropup:e.position==="top"},{dropdown:e.position==="bottom"},{dropleft:e.position==="left"},{dropright:e.position==="right"}]},[e.splitButton&&c.createVNode("span",{class:["btn",...i()],style:"width:100%",onClick:m},[e.title]),c.createVNode("span",{ref:B,class:["dropdown-toggle",{btn:!e.nest},{"dropdown-toggle-split":e.splitButton},...i()],style:"width:100%",onClick:F,onMouseenter:j,onMouseleave:j},[e.splitButton?"":e.title,e.iconClass&&c.createVNode("span",{class:`f-icon ${e.iconClass}`},null)]),c.createVNode(c.Teleport,{to:"body"},{default:()=>[c.createVNode("div",{ref:T,class:`dropdown-menu${a.value?" show":""}`},[c.createVNode(c.Fragment,null,[n.value.map(({label:u,value:w,disabled:d,active:s,divide:$})=>c.createVNode(oe,{value:w.toString(),label:u,disabled:d,active:s,divide:$,onSelect:N=>r(N)},null))])])]})])])}});function Ae(e,t,n){var L;const a="",T="",k=c.ref();let B;function F(){return(t==null?void 0:t.schema.componentType)!=="frame"}function j(){return!1}function m(){return(t==null?void 0:t.schema.componentType)!=="frame"}function b(){return(t==null?void 0:t.schema.componentType)==="frame"}function o(f){if(!f||!f.value)return null;if(f.value.schema&&f.value.schema.type==="component")return f.value;const y=c.ref(f==null?void 0:f.value.parent),v=o(y);return v||null}function l(f=t){var D;const{componentInstance:y,designerItemElementRef:v}=f;if(!y||!y.value)return null;const{getCustomButtons:S}=y.value;return y.value.canMove||S&&((D=S())!=null&&D.length)?v:l(f.parent)}function g(f){return!!n}function r(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function i(){}function u(f,y){var v;!f||!y||(v=t==null?void 0:t.setupContext)==null||v.emit("dragEnd")}function w(f,y){const{componentType:v}=f;let S=ie.getSchemaByTypeForDesigner(v,f,y);const D=v.toLowerCase().replace(/-/g,"_");return S&&!S.id&&S.type===v&&(S.id=`${D}_${Math.random().toString().slice(2,6)}`),S}function d(f){}function s(...f){}function $(f){if(!f)return;const y=t==null?void 0:t.schema,{formSchemaUtils:v}=f;if(y&&v.getExpressions().length){const S=v.getExpressions().findIndex(D=>D.target===y.id);S>-1&&v.getExpressions().splice(S,1)}}function N(f){if(!f||!(t!=null&&t.schema))return;const y=t.schema,{formSchemaUtils:v}=f;v.removeCommunicationInComponent(y)}function h(f){$(f),N(f),t!=null&&t.schema.contents&&t.schema.contents.map(y=>{let v=y.id;y.type==="component-ref"&&(v=y.component);const S=e.value.querySelectorAll(`#${v}-design-item`);S!=null&&S.length&&Array.from(S).map(D=>{var R;(R=D==null?void 0:D.componentInstance)!=null&&R.value.onRemoveComponent&&D.componentInstance.value.onRemoveComponent(f)})})}function E(){}function O(f){var v,S;if(!((v=t==null?void 0:t.schema)!=null&&v.id))return;!B&&f&&(B=f.formSchemaUtils);let y="";{const{text:D,title:R,label:A,mainTitle:P,name:V,type:H}=t.schema;y=D||R||A||P||V||((S=x[H])==null?void 0:S.name)}y&&B.getControlBasicInfoMap().set(t.schema.id,{componentTitle:y,parentPathName:y})}function p(f){var D;const{changeObject:y}=f,{propertyID:v,propertyValue:S}=y;if(["text","title","label","name","mainTitle"].includes((D=f==null?void 0:f.changeObject)==null?void 0:D.propertyID)&&v&&S&&(O(),B)){const R=B.getControlBasicInfoMap(),A=R.keys().toArray().filter(P=>{var V,H;return((V=R.get(P))==null?void 0:V.reliedComponentId)===((H=t==null?void 0:t.schema)==null?void 0:H.id)});A!=null&&A.length&&A.forEach(P=>{const V=R.get(P).parentPathName.split(" > ");V[0]=S,R.get(P).parentPathName=V.join(" > ")})}}function M(f){p(f)}return k.value={canMove:F(),canSelectParent:j(),canDelete:m(),canNested:!b(),contents:t==null?void 0:t.schema.contents,elementRef:e,parent:(L=t==null?void 0:t.parent)==null?void 0:L.componentInstance,schema:t==null?void 0:t.schema,styles:a,designerClass:T,canAccepts:g,getBelongedComponentInstance:o,getDraggableDesignItemElement:l,getDraggingDisplayText:r,getPropConfig:s,getDragScopeElement:i,onAcceptMovedChildElement:u,onChildElementMovedOut:d,addNewChildComponentSchema:w,triggerBelongedComponentToMoveWhenMoved:c.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:c.ref(!1),onRemoveComponent:h,getCustomButtons:E,onPropertyChanged:M,setComponentBasicInfoMap:O,updateContextSchema:t==null?void 0:t.updateContextSchema},k}const He=c.defineComponent({name:"FDropdownDesign",props:W,emits:["select"],setup(e,t){const n=c.ref(e.model),{show:a,showDropMenu:T,hoverDropdown:k,leftButtonClick:B,closeDropMenu:F,selectItem:j,resolveSize:m}=ne(e,t);function b(r){t.emit("select",r)}const o=c.ref(),l=c.inject("design-item-context"),g=Ae(o,l);return c.onMounted(()=>{o.value.componentInstance=g}),t.expose(g.value),()=>c.createVNode("div",{ref:o},[c.createVNode("div",{class:["farris-dropdown","btn-group",{dropup:e.position==="top"},{dropdown:e.position==="bottom"},{dropleft:e.position==="left"},{dropright:e.position==="right"}],style:{width:e.width}},[e.splitButton&&c.createVNode("span",{class:["btn",{"dropdown-item":e.nest},{"btn-lg":e.size==="large"},{"btn-sm":e.size==="small"},{"btn-primary":e.type==="primary"},{"btn-success":e.type==="success"},{"btn-warning":e.type==="warning"},{"btn-danger":e.type==="danger"},{"btn-info":e.type==="info"}],style:"width:100%",onClick:B},[e.title]),c.createVNode("span",{class:["dropdown-toggle",{btn:!e.nest},{"dropdown-item":e.nest},{"dropdown-toggle-split":e.splitButton},{"btn-lg":e.size==="large"},{"btn-sm":e.size==="small"},{"btn-primary":e.type==="primary"},{"btn-success":e.type==="success"},{"btn-warning":e.type==="warning"},{"btn-danger":e.type==="danger"},{"btn-info":e.type==="info"},{"btn-secondary":e.type==="secondary"},{"btn-link":e.type==="link"},{disabled:e.disabled}],style:"width:100%",onClick:T,onMouseenter:k,onMouseleave:k},[c.withDirectives(c.createVNode("span",{class:"sr-only"},null),[[c.vShow,e.splitButton]]),e.splitButton?"":e.title,c.withDirectives(c.createVNode("span",{class:`f-icon ${e.iconClass.toString()}`},null),[[c.vShow,e.iconClass]])]),c.createVNode("div",{class:`dropdown-menu${a.value?" show":""}`},[c.createVNode(c.Fragment,null,[n.value.map(({label:r,value:i,disabled:u,active:w,divide:d})=>c.createVNode(oe,{value:i.toString(),label:r,disabled:u,active:w,divide:d,onSelect:s=>b(s)},null))])])])])}}),qe={install(e){e.component(_.name,_)},register(e,t,n,a){e.dropdown=_,t.dropdown=X},registerDesigner(e,t,n){e.dropdown=He,t.dropdown=X}};C.Dropdown=_,C.default=qe,C.dropdownProps=W,C.propsResolver=X,Object.defineProperties(C,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});