@farris/ui-vue 1.2.8 → 1.3.0

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 (283) hide show
  1. package/components/accordion/index.esm.js +180 -180
  2. package/components/accordion/index.umd.cjs +1 -0
  3. package/components/avatar/index.esm.js +419 -331
  4. package/components/avatar/index.umd.cjs +1 -0
  5. package/components/border-editor/index.umd.cjs +1 -0
  6. package/components/button/index.umd.cjs +1 -0
  7. package/components/button-edit/index.css +1 -1
  8. package/components/button-edit/index.esm.js +346 -326
  9. package/components/button-edit/index.umd.cjs +1 -0
  10. package/components/button-group/index.umd.cjs +1 -0
  11. package/components/calculator/index.umd.cjs +1 -0
  12. package/components/calendar/index.esm.js +384 -384
  13. package/components/calendar/index.umd.cjs +1 -0
  14. package/components/capsule/index.esm.js +205 -205
  15. package/components/capsule/index.umd.cjs +1 -0
  16. package/components/checkbox/index.esm.js +555 -467
  17. package/components/checkbox/index.umd.cjs +1 -0
  18. package/components/color-picker/index.esm.js +239 -239
  19. package/components/color-picker/index.umd.cjs +3 -0
  20. package/components/combo-list/index.css +1 -0
  21. package/components/combo-list/index.esm.js +1072 -364
  22. package/components/combo-list/index.umd.cjs +1 -0
  23. package/components/combo-tree/index.esm.js +129 -129
  24. package/components/combo-tree/index.umd.cjs +1 -0
  25. package/components/common/index.esm.js +778 -700
  26. package/components/common/index.umd.cjs +1 -0
  27. package/components/component/index.esm.js +582 -327
  28. package/components/component/index.umd.cjs +1 -0
  29. package/components/condition/index.css +1 -0
  30. package/components/condition/index.esm.js +2433 -1134
  31. package/components/condition/index.umd.cjs +1 -0
  32. package/components/content-container/index.esm.js +307 -234
  33. package/components/content-container/index.umd.cjs +1 -0
  34. package/components/data-grid/index.css +1 -1
  35. package/components/data-grid/index.esm.js +6762 -4946
  36. package/components/data-grid/index.umd.cjs +1 -0
  37. package/components/data-view/index.css +1 -0
  38. package/components/data-view/index.esm.js +4977 -3489
  39. package/components/data-view/index.umd.cjs +1 -0
  40. package/components/date-picker/index.css +1 -1
  41. package/components/date-picker/index.esm.js +3525 -2811
  42. package/components/date-picker/index.umd.cjs +1 -0
  43. package/components/designer-canvas/index.css +1 -1
  44. package/components/designer-canvas/index.esm.js +938 -928
  45. package/components/designer-canvas/index.umd.cjs +1 -0
  46. package/components/designer-outline/index.css +1 -1
  47. package/components/designer-outline/index.esm.js +38 -37
  48. package/components/designer-outline/index.umd.cjs +1 -0
  49. package/components/designer-toolbox/index.esm.js +36 -12
  50. package/components/designer-toolbox/index.umd.cjs +1 -0
  51. package/components/discussion-editor/index.umd.cjs +3 -0
  52. package/components/discussion-list/index.umd.cjs +1 -0
  53. package/components/drawer/index.umd.cjs +1 -0
  54. package/components/dropdown/index.esm.js +282 -282
  55. package/components/dropdown/index.umd.cjs +2 -0
  56. package/components/dynamic-form/index.css +1 -0
  57. package/components/dynamic-form/index.esm.js +2684 -1039
  58. package/components/dynamic-form/index.umd.cjs +1 -0
  59. package/components/dynamic-resolver/index.esm.js +149 -101
  60. package/components/dynamic-resolver/index.umd.cjs +1 -0
  61. package/components/dynamic-view/index.esm.js +303 -290
  62. package/components/dynamic-view/index.umd.cjs +1 -0
  63. package/components/enum-editor/index.umd.cjs +1 -0
  64. package/components/events-editor/index.esm.js +573 -518
  65. package/components/events-editor/index.umd.cjs +1 -0
  66. package/components/expression-editor/index.esm.js +99 -99
  67. package/components/expression-editor/index.umd.cjs +1 -0
  68. package/components/external-container/index.css +1 -1
  69. package/components/external-container/index.esm.js +3607 -2799
  70. package/components/external-container/index.umd.cjs +1 -0
  71. package/components/field-selector/index.css +1 -1
  72. package/components/field-selector/index.esm.js +5438 -8236
  73. package/components/field-selector/index.umd.cjs +1 -0
  74. package/components/filter-bar/index.css +1 -1
  75. package/components/filter-bar/index.esm.js +1679 -1759
  76. package/components/filter-bar/index.umd.cjs +1 -0
  77. package/components/flow-canvas/index.css +1 -1
  78. package/components/flow-canvas/index.esm.js +1062 -1052
  79. package/components/flow-canvas/index.umd.cjs +1 -0
  80. package/components/image-cropper/index.esm.js +421 -421
  81. package/components/image-cropper/index.umd.cjs +1 -0
  82. package/components/input-group/index.esm.js +677 -593
  83. package/components/input-group/index.umd.cjs +1 -0
  84. package/components/layout/index.esm.js +326 -326
  85. package/components/layout/index.umd.cjs +1 -0
  86. package/components/list-nav/index.esm.js +272 -199
  87. package/components/list-nav/index.umd.cjs +1 -0
  88. package/components/list-view/index.css +1 -1
  89. package/components/list-view/index.esm.js +3739 -2273
  90. package/components/list-view/index.umd.cjs +1 -0
  91. package/components/loading/index.umd.cjs +8 -0
  92. package/components/locale/index.umd.cjs +1 -0
  93. package/components/lookup/index.css +1 -1
  94. package/components/lookup/index.esm.js +11255 -9004
  95. package/components/lookup/index.umd.cjs +1 -0
  96. package/components/mapping-editor/index.css +1 -1
  97. package/components/mapping-editor/index.esm.js +6046 -5314
  98. package/components/mapping-editor/index.umd.cjs +1 -0
  99. package/components/message-box/index.css +1 -1
  100. package/components/message-box/index.esm.js +511 -471
  101. package/components/message-box/index.umd.cjs +1 -0
  102. package/components/modal/index.css +1 -1
  103. package/components/modal/index.esm.js +438 -398
  104. package/components/modal/index.umd.cjs +1 -0
  105. package/components/nav/index.esm.js +588 -444
  106. package/components/nav/index.umd.cjs +3 -0
  107. package/components/notify/index.esm.js +59 -53
  108. package/components/notify/index.umd.cjs +1 -0
  109. package/components/number-range/index.esm.js +568 -485
  110. package/components/number-range/index.umd.cjs +1 -0
  111. package/components/number-spinner/index.esm.js +542 -454
  112. package/components/number-spinner/index.umd.cjs +1 -0
  113. package/components/order/index.css +1 -1
  114. package/components/order/index.esm.js +1967 -1105
  115. package/components/order/index.umd.cjs +1 -0
  116. package/components/page-footer/index.esm.js +160 -160
  117. package/components/page-footer/index.umd.cjs +1 -0
  118. package/components/page-header/index.esm.js +1282 -1151
  119. package/components/page-header/index.umd.cjs +1 -0
  120. package/components/pagination/index.esm.js +705 -555
  121. package/components/pagination/index.umd.cjs +1 -0
  122. package/components/popover/index.esm.js +71 -70
  123. package/components/popover/index.umd.cjs +1 -0
  124. package/components/progress/index.esm.js +270 -270
  125. package/components/progress/index.umd.cjs +3 -0
  126. package/components/property-editor/index.css +1 -1
  127. package/components/property-editor/index.esm.js +2231 -1517
  128. package/components/property-editor/index.umd.cjs +3 -0
  129. package/components/property-panel/index.esm.js +813 -909
  130. package/components/property-panel/index.umd.cjs +1 -0
  131. package/components/query-solution/index.css +1 -1
  132. package/components/query-solution/index.esm.js +3781 -2566
  133. package/components/query-solution/index.umd.cjs +1 -0
  134. package/components/radio-button/index.esm.js +101 -101
  135. package/components/radio-button/index.umd.cjs +1 -0
  136. package/components/radio-group/index.esm.js +538 -450
  137. package/components/radio-group/index.umd.cjs +1 -0
  138. package/components/rate/index.esm.js +238 -233
  139. package/components/rate/index.umd.cjs +1 -0
  140. package/components/response-layout/index.esm.js +155 -155
  141. package/components/response-layout/index.umd.cjs +1 -0
  142. package/components/response-layout-editor/index.css +1 -1
  143. package/components/response-layout-editor/index.esm.js +1243 -1180
  144. package/components/response-layout-editor/index.umd.cjs +1 -0
  145. package/components/response-toolbar/index.esm.js +988 -877
  146. package/components/response-toolbar/index.umd.cjs +1 -0
  147. package/components/schema-selector/index.css +1 -1
  148. package/components/schema-selector/index.esm.js +5413 -4867
  149. package/components/schema-selector/index.umd.cjs +8 -0
  150. package/components/search-box/index.esm.js +199 -199
  151. package/components/search-box/index.umd.cjs +1 -0
  152. package/components/section/index.esm.js +646 -503
  153. package/components/section/index.umd.cjs +1 -0
  154. package/components/smoke-detector/index.esm.js +144 -144
  155. package/components/smoke-detector/index.umd.cjs +1 -0
  156. package/components/spacing-editor/index.umd.cjs +1 -0
  157. package/components/splitter/index.esm.js +464 -391
  158. package/components/splitter/index.umd.cjs +1 -0
  159. package/components/step/index.esm.js +249 -249
  160. package/components/step/index.umd.cjs +1 -0
  161. package/components/switch/index.esm.js +483 -394
  162. package/components/switch/index.umd.cjs +1 -0
  163. package/components/tabs/index.css +1 -1
  164. package/components/tabs/index.esm.js +2366 -2208
  165. package/components/tabs/index.umd.cjs +1 -0
  166. package/components/tags/index.esm.js +397 -399
  167. package/components/tags/index.umd.cjs +1 -0
  168. package/components/text/index.esm.js +394 -394
  169. package/components/text/index.umd.cjs +1 -0
  170. package/components/textarea/index.esm.js +451 -367
  171. package/components/textarea/index.umd.cjs +1 -0
  172. package/components/time-picker/index.css +1 -1
  173. package/components/time-picker/index.esm.js +1252 -1144
  174. package/components/time-picker/index.umd.cjs +1 -0
  175. package/components/tooltip/index.umd.cjs +1 -0
  176. package/components/transfer/index.css +1 -1
  177. package/components/transfer/index.esm.js +510 -499
  178. package/components/transfer/index.umd.cjs +1 -0
  179. package/components/tree-grid/index.css +1 -1
  180. package/components/tree-grid/index.esm.js +5463 -9330
  181. package/components/tree-grid/index.umd.cjs +1 -0
  182. package/components/tree-view/index.css +1 -0
  183. package/components/tree-view/index.esm.js +4058 -2597
  184. package/components/tree-view/index.umd.cjs +1 -0
  185. package/components/uploader/index.esm.js +510 -504
  186. package/components/uploader/index.umd.cjs +2 -0
  187. package/components/verify-detail/index.esm.js +220 -220
  188. package/components/verify-detail/index.umd.cjs +1 -0
  189. package/components/video/index.esm.js +653 -394
  190. package/components/video/index.umd.cjs +1 -0
  191. package/components/weather/index.esm.js +1028 -1028
  192. package/components/weather/index.umd.cjs +16 -0
  193. package/farris.all.esm.js +20407 -18556
  194. package/farris.all.umd.cjs +8 -8
  195. package/index.css +1 -1
  196. package/package.json +1 -1
  197. package/types/button-edit/src/designer/button-group.design.component.d.ts +7 -0
  198. package/types/capsule/src/capsule.props.d.ts +2 -2
  199. package/types/combo-list/src/components/list-container.props.d.ts +1 -1
  200. package/types/common/entity/entity-schema.d.ts +258 -0
  201. package/types/common/index.d.ts +1 -0
  202. package/types/common/types.d.ts +1 -1
  203. package/types/common/utils/encrypt.d.ts +2 -0
  204. package/types/component/src/component-ref.props.d.ts +4 -0
  205. package/types/component/src/component.props.d.ts +7 -0
  206. package/types/component/src/composition/inner-component-build-info.d.ts +27 -0
  207. package/types/component/src/designer/use-designer-rules.d.ts +2 -2
  208. package/types/component/src/property-config/component.property-config.d.ts +9 -0
  209. package/types/components.d.ts +1 -0
  210. package/types/data-grid/index.d.ts +8 -2
  211. package/types/data-grid/src/composition/data-grid-component-creator.service.d.ts +33 -0
  212. package/types/data-grid/src/data-grid.component.d.ts +3 -1
  213. package/types/data-grid/src/data-grid.props.d.ts +3 -2
  214. package/types/data-grid/src/property-config/data-grid.property-config.d.ts +4 -0
  215. package/types/data-grid/src/schema/schema-resolver.d.ts +2 -1
  216. package/types/data-view/components/column-format/boolean.component.d.ts +4 -0
  217. package/types/data-view/components/column-format/column-format.component.d.ts +4 -0
  218. package/types/data-view/components/column-format/date.component.d.ts +4 -0
  219. package/types/data-view/components/column-format/enum.component.d.ts +4 -0
  220. package/types/data-view/components/column-format/number.component.d.ts +4 -0
  221. package/types/data-view/composition/pagination/use-pagination.d.ts +1 -0
  222. package/types/data-view/composition/types.d.ts +36 -7
  223. package/types/data-view/composition/use-edit.d.ts +2 -1
  224. package/types/data-view/composition/visualization/use-virtual-scroll.d.ts +0 -15
  225. package/types/designer-canvas/src/composition/dg-control.d.ts +5 -0
  226. package/types/designer-canvas/src/composition/function/use-dragula.d.ts +2 -2
  227. package/types/designer-canvas/src/composition/types.d.ts +1 -1
  228. package/types/designer-canvas/src/types.d.ts +2 -2
  229. package/types/dynamic-form/index.d.ts +2 -1
  230. package/types/dynamic-form/src/composition/response-form-component-creator.service.d.ts +31 -0
  231. package/types/dynamic-form/src/composition/use-response-form-layout-setting.d.ts +2 -0
  232. package/types/dynamic-form/src/designer/response-form-layout-setting.component.d.ts +8 -0
  233. package/types/dynamic-form/src/designer/response-form-layout-setting.props.d.ts +4 -0
  234. package/types/dynamic-form/src/designer/use-designer-rules.d.ts +2 -2
  235. package/types/dynamic-form/src/property-config/form.property-config.d.ts +9 -0
  236. package/types/dynamic-form/src/schema/schema-mapper.d.ts +1 -0
  237. package/types/dynamic-form/src/schema/schema-resolver.d.ts +3 -1
  238. package/types/dynamic-form/src/types.d.ts +12 -1
  239. package/types/dynamic-resolver/index.d.ts +1 -0
  240. package/types/dynamic-resolver/src/event-handler-resolver.d.ts +4 -0
  241. package/types/dynamic-resolver/src/schema-resolver.d.ts +2 -1
  242. package/types/dynamic-resolver/src/types.d.ts +12 -2
  243. package/types/dynamic-view/index.d.ts +1 -0
  244. package/types/dynamic-view/src/event-dispatcher.d.ts +1 -1
  245. package/types/index.d.ts +2 -0
  246. package/types/lookup/src/components/favorite/lookup-favorite.component.d.ts +29 -0
  247. package/types/lookup/src/components/favorite/lookup-favorite.props.d.ts +15 -0
  248. package/types/lookup/src/components/modal-container.component.d.ts +25 -0
  249. package/types/lookup/src/components/modal-container.props.d.ts +29 -0
  250. package/types/lookup/src/composition/types.d.ts +8 -0
  251. package/types/lookup/src/composition/use-check-props.d.ts +9 -2
  252. package/types/lookup/src/composition/use-dialog.d.ts +5 -1
  253. package/types/lookup/src/composition/use-favorite.d.ts +12 -0
  254. package/types/lookup/src/composition/use-http.d.ts +9 -5
  255. package/types/lookup/src/composition/use-input-change.d.ts +3 -0
  256. package/types/lookup/src/composition/use-user-data.d.ts +24 -0
  257. package/types/lookup/src/property-config/lookup.property-config.d.ts +6 -4
  258. package/types/mapping-editor/src/mapping-editor.component.d.ts +3 -0
  259. package/types/mapping-editor/src/mapping-editor.props.d.ts +0 -1
  260. package/types/modal/src/composition/use-draggable.d.ts +2 -1
  261. package/types/modal/src/composition/use-shortcut.d.ts +6 -0
  262. package/types/modal/src/modal.component.d.ts +3 -0
  263. package/types/modal/src/modal.props.d.ts +4 -0
  264. package/types/page-header/src/page-header.props.d.ts +1 -0
  265. package/types/property-panel/src/composition/entity/base-property.d.ts +8 -0
  266. package/types/property-panel/src/composition/entity/input-base-property.d.ts +20 -1
  267. package/types/response-layout-editor/src/composition/converter/use-response-layout-editor-setting.d.ts +2 -0
  268. package/types/response-layout-editor/src/type.d.ts +21 -0
  269. package/types/response-toolbar/src/response-toolbar.props.d.ts +2 -2
  270. package/types/response-toolbar/src/schema/schema-mapper.d.ts +4 -0
  271. package/types/section/src/property-config/section.property-config.d.ts +93 -0
  272. package/types/section/src/schema/schema-resolver.d.ts +2 -1
  273. package/types/tabs/src/composition/types.d.ts +2 -2
  274. package/types/tabs/src/designer/tab-header-item.design.component.d.ts +3 -1
  275. package/types/tabs/src/property-config/tab-page.property-config.d.ts +60 -0
  276. package/types/tabs/src/schema/schema-resolver.d.ts +2 -1
  277. package/types/tabs/src/tabs.props.d.ts +1 -0
  278. package/types/tags/index.d.ts +36 -5
  279. package/types/tree-grid/index.d.ts +8 -2
  280. package/types/tree-grid/src/tree-grid.component.d.ts +3 -1
  281. package/types/modal/src/composition/use-esc.d.ts +0 -1
  282. package/types/response-layout-editor/src/composition/converter/response-layout-editor.converter.d.ts +0 -3
  283. package/types/response-layout-editor/src/composition/converter/use-convert-property-value.d.ts +0 -20
@@ -0,0 +1 @@
1
+ (function(E,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(E=typeof globalThis<"u"?globalThis:E||self,e(E.modal={},E.Vue))})(this,function(E,e){"use strict";var Ee=Object.defineProperty;var Ve=(E,e,P)=>e in E?Ee(E,e,{enumerable:!0,configurable:!0,writable:!0,value:P}):E[e]=P;var D=(E,e,P)=>Ve(E,typeof e!="symbol"?e+"":e,P);const P={class:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},reiszeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1}};class C{constructor(t,n){this.x=t,this.y=n}static getTransformInfo(t){const s=window.getComputedStyle(t).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(s.length>=6){const w=parseInt(s[4],10),v=parseInt(s[5],10);return{x:w,y:v}}return{x:0,y:0}}static fromEvent(t,n=null){if(this.isMouseEvent(t))return new C(t.clientX,t.clientY);if(n===null||t.changedTouches.length===1)return new C(t.changedTouches[0].clientX,t.changedTouches[0].clientY);for(let s=0;s<t.changedTouches.length;s++)if(t.changedTouches[s].target===n)return new C(t.changedTouches[s].clientX,t.changedTouches[s].clientY)}static isMouseEvent(t){return Object.prototype.toString.apply(t).indexOf("MouseEvent")===8}static isIPosition(t){return!!t&&"x"in t&&"y"in t}static getCurrent(t){const n=new C(0,0);if(window){const s=window.getComputedStyle(t);if(s){const w=parseInt(s.getPropertyValue("left"),10),v=parseInt(s.getPropertyValue("top"),10);n.x=isNaN(w)?0:w,n.y=isNaN(v)?0:v}return n}return null}static copy(t){return new C(0,0).set(t)}get value(){return{x:this.x,y:this.y}}add(t){return this.x+=t.x,this.y+=t.y,this}subtract(t){return this.x-=t.x,this.y-=t.y,this}multiply(t){this.x*=t,this.y*=t}divide(t){this.x/=t,this.y/=t}reset(){return this.x=0,this.y=0,this}set(t){return this.x=t.x,this.y=t.y,this}}class j{constructor(t,n){this.width=t,this.height=n}static getCurrent(t){const n=new j(0,0);if(window){const s=window.getComputedStyle(t);return s&&(n.width=parseInt(s.getPropertyValue("width"),10),n.height=parseInt(s.getPropertyValue("height"),10)),n}return null}static copy(t){return new j(0,0).set(t)}set(t){return this.width=t.width,this.height=t.height,this}}function le(a,t){const n=e.ref(),s=e.ref(),w=e.ref(),v=e.ref(),d=e.ref(),u=e.ref(),c=e.ref(),f=e.ref(),M=e.ref(),p=e.ref(),H=e.ref(),B=e.ref(),R=e.ref(a.draggable),I=e.ref(!1);function T(){const o=s.value||document.body,i=window.getComputedStyle(o);if(!i||!n.value)return;const y=C.getTransformInfo(n.value),m={};c.value&&(m.deltaL=n.value.offsetLeft-c.value.x,m.deltaT=n.value.offsetTop-c.value.y);const z=i.getPropertyValue("position");m.width=o.clientWidth,m.height=o.clientHeight,m.pr=parseInt(i.getPropertyValue("padding-right"),10),m.pb=parseInt(i.getPropertyValue("padding-bottom"),10),m.position=i.getPropertyValue("position"),z==="static"&&(o.style.position="relative"),m.translateX=y.x,m.translateY=y.y,p.value=m}function g(o){if(n.value){v.value=j.getCurrent(n.value),d.value=C.getCurrent(n.value),u.value=v.value?j.copy(v.value):null,c.value=d.value?C.copy(d.value):null,T();const i=o.target.getAttribute("type")||"";f.value={n:!!i.match(/n/),s:!!i.match(/s/),w:!!i.match(/w/),e:!!i.match(/e/)}}}function x(){var o,i,y,m;if(n.value){const z=n.value;f.value&&((f.value.n||f.value.s)&&((o=u.value)!=null&&o.height)&&(z.style.height=u.value.height+"px"),(f.value.w||f.value.e)&&((i=u.value)!=null&&i.width)&&(z.style.width=u.value.width+"px"),c.value&&((y=c.value)!=null&&y.x&&(z.style.left=c.value.x+"px"),(m=c.value)!=null&&m.y&&(z.style.top=c.value.y+"px")))}}function O(){const o=a.minHeight?a.minHeight:1,i=a.minWidth?a.minWidth:1;u.value&&c.value&&f.value&&v.value&&(u.value.height<o&&(u.value.height=o,f.value.n&&d.value&&(c.value.y=d.value.y+(v.value.height-o))),u.value.width<i&&(u.value.width=i,f.value.w&&d.value&&(c.value.x=d.value.x+(v.value.width-i))),a.maxHeight&&u.value.height>a.maxHeight&&(u.value.height=a.maxHeight,d.value&&f.value.n&&(c.value.y=d.value.y+(v.value.height-a.maxHeight))),a.maxWidth&&u.value.width>a.maxWidth&&(u.value.width=a.maxWidth,f.value.w&&d.value&&(c.value.x=d.value.x+(v.value.width-a.maxWidth))))}function S(){if(s.value){const o=p.value;if(c.value&&u.value&&f.value&&v.value){const i=o.width-o.pr-o.deltaL-o.translateX-c.value.x,y=o.height-o.pb-o.deltaT-o.translateY-c.value.y;f.value.n&&c.value.y+o.translateY<0&&d.value&&(c.value.y=-o.translateY,u.value.height=v.value.height+d.value.y+o.translateY),f.value.w&&c.value.x+o.translateX<0&&d.value&&(c.value.x=-o.translateX,u.value.width=v.value.width+d.value.x+o.translateX),u.value.width>i&&(u.value.width=i),u.value.height>y&&(u.value.height=y)}}}function L(o){if(!w.value||!v.value||!d.value||!f.value)return;o.subtract(w.value);const i=o.x,y=o.y;f.value.n?(c.value.y=d.value.y+y,u.value.height=v.value.height-y):f.value.s&&(u.value.height=v.value.height+y),f.value.e?u.value.width=v.value.width+i:f.value.w&&(u.value.width=v.value.width-i,c.value.x=d.value.x+i),S(),O(),x()}function W(o){if(!M.value)return;const i=C.fromEvent(o);i&&L(i)}function r(){if(n.value){const{width:o,height:i,x:y,y:m}=n.value.getBoundingClientRect(),z=C.getTransformInfo(n.value);return{size:{width:o,height:i},position:{x:y-z.x,y:m-z.y}}}return null}function h(o){if(n.value){const i=r();H.value=i}w.value=void 0,v.value=null,d.value=null,u.value=null,c.value=null,f.value=null,M.value=null,document.removeEventListener("mousemove",W),document.removeEventListener("mouseup",h)}function N(){document.addEventListener("mousemove",W),document.addEventListener("mouseup",h)}function V(o){o instanceof MouseEvent&&o.button===2||R.value&&(o.stopPropagation(),o.preventDefault(),w.value=C.fromEvent(o),M.value=o.target,g(o),N())}function k(o){return n.value=o,e.createVNode(e.Fragment,null,[e.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:i=>V(i)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:i=>V(i)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:i=>V(i)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:i=>V(i)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:i=>V(i)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:i=>V(i)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:i=>V(i)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:i=>V(i)},null)])}function F(o=!0){const i=s.value||document.body,y=j.getCurrent(i),m=n.value;o&&(B.value=r(),B.value.transform=m.style.transform),y&&m&&(u.value=y,m.style.height=u.value.height-14+"px",m.style.width=u.value.width-14+"px",m.style.left="7px",m.style.top="7px",m.style.transform="",H.value={size:u.value,position:{x:0,y:0}},R.value=!1,I.value=!0)}function $(){var o,i;if(B.value){const y={width:B.value.size.width||0,height:B.value.size.height||0},m={x:(window.innerWidth-y.width)/2,y:(window.innerHeight-y.height)/2};(o=u.value)==null||o.set(y),(i=c.value)==null||i.set(m);const z=n.value;z.style.height=y.height+"px",z.style.width=y.width+"px",z.style.left=`${m.x}px`,z.style.top=`${m.y}px`,z.style.transform="",H.value={size:y,position:m},R.value=a.draggable,I.value=!1}}function _(){if(n.value){const o=j.getCurrent(n.value);if(o){const{width:i,height:y}=o;n.value.style.left=`${(window.innerWidth-i)/2}px`,n.value.style.top=`${(window.innerHeight-y)/2}px`,n.value.style.transform=""}}}function K(){const o=()=>{I.value?F(!1):_()};return window.addEventListener("resize",o),()=>{window.removeEventListener("resize",o)}}const A=K();return{renderResizeBar:k,boundingElement:s,resizedEventParam:H,maximize:F,restore:$,allowDrag:R,isMaximized:I,unWindowResizeHandle:A}}function ne(a,t,n){const s=e.ref(),w=e.ref(a.draggable),v=e.ref(a.lockAxis),d=e.ref(),u=e.ref(),c=e.ref(!1),f=e.ref(new C(0,0)),M=e.ref(new C(0,0)),p=e.ref(new C(0,0)),H=e.ref(new C(0,0));e.watch(()=>n.value,r=>{d.value.style.cursor=r?"move":"default"});function B(r,h){if(h.tagName==="BUTTON")return!1;if(h===r)return!0;for(const N in h.children)if(h.children.hasOwnProperty(N)&&B(r,h.children[N]))return!0;return!1}function R(){var V,k;let r=p.value.x+M.value.x,h=p.value.y+M.value.y;v.value==="x"?(r=((V=f.value)==null?void 0:V.x)||0,p.value.x=0):v.value==="y"&&(h=((k=f.value)==null?void 0:k.y)||0,p.value.y=0);const N=`translate3d(${Math.round(r)}px, ${Math.round(h)}px, 0px)`;s.value&&(s.value.style.transform=N),H.value.x=r,H.value.y=h}function I(){if(!u.value||!s.value)return null;const r=u.value.getBoundingClientRect(),h=s.value.getBoundingClientRect(),N={top:r.top<h.top,right:r.right>h.right,bottom:r.bottom>h.bottom,left:r.left<h.left};return N.top||(p.value.y-=h.top-r.top),N.bottom||(p.value.y-=h.bottom-r.bottom),N.right||(p.value.x-=h.right-r.right),N.left||(p.value.x-=h.left-r.left),R(),N}function T(r){r&&(f.value&&r.subtract(f.value),p.value.set(r),R(),I())}function g(r){c.value&&w.value&&(r.stopPropagation(),r.preventDefault(),T(C.fromEvent(r,d.value)))}function x(){var r;c.value&&(c.value=!1,M.value.add(p.value),p.value.reset(),(r=s.value)==null||r.classList.remove("ng-dragging"),document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",x))}function O(){!c.value&&d.value&&(c.value=!0,d.value.classList.add("ng-dragging"),document.addEventListener("mousemove",g),document.addEventListener("mouseup",x))}function S(){if(s.value){const r=C.getTransformInfo(s.value);M.value.set(r);return}M.value.reset()}function L(r){if(!n.value||r instanceof MouseEvent&&r.button===2)return;const h=r.target||r.srcElement;d.value!==void 0&&h&&!B(h,d.value)||w.value!==!1&&(document.body.click(),r.stopPropagation(),r.preventDefault(),f.value=C.fromEvent(r,s.value),S(),O())}function W(r,h,N){if(w.value&&h){if(r)d.value=r;else if(a.dragHandle){if(a.dragHandle instanceof HTMLElement)d.value=a.dragHandle;else if(typeof a.dragHandle=="string"){const V=h.querySelector(a.dragHandle);V&&(d.value=V)}}s.value=h,u.value=N,d.value.classList.add("ng-draggable"),d.value.addEventListener("mousedown",L)}}return{registerDraggle:W,resetTranslate:S}}function Q(a,t){if(a){const n=s=>{s.key.toLowerCase()===a.toLowerCase()&&t({event:s,key:a})};return document.addEventListener("keydown",n),()=>{document.removeEventListener("keydown",n)}}}function oe(a,t){const n=e.ref(a.enableEsc);let s=null;return n.value?(s=Q("Escape",w=>{t.emit("esc",{event:w.event,type:"esc"})}),{remove:s}):null}function se(a,t){const n=e.ref(a.enableEnter);let s=null;return n.value?(s=Q("Enter",w=>{t.emit("enter",{event:w.event,type:"enter"})}),{remove:s}):null}const X=e.defineComponent({name:"FModal",props:P,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter"],setup(a,t){const n=e.ref(a.width||300),s=e.ref(a.height||200),w=e.ref(a.modelValue),v=e.ref(""),d=e.ref(a.class),u=e.ref(a.fitContent),c=e.ref(a.showHeader),f=e.ref(""),M=e.ref(a.showCloseButton),p=e.ref(a.showMaxButton),H=e.ref(!1),B=e.ref(""),R=e.ref(""),I=e.ref(""),T=e.ref(a.showButtons),g=e.ref(a.title),x=e.ref(a.reiszeable),O=e.ref(a.containment||null),S=e.ref();function L(l,b){w.value=!1,t.emit("update:modelValue",!1),b!=null&&t.emit(b?"accept":"cancel"),t.emit("closed",l)}const W=[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:l=>{L(l,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:l=>{L(l,!0)}}],r=e.ref(a.buttons&&a.buttons.length?a.buttons:W),h=e.computed(()=>!!f.value),N=e.computed(()=>!!T.value&&!!r.value),V=e.ref(),k=e.ref(),F=e.ref(!1),{renderResizeBar:$,maximize:_,restore:K,boundingElement:A,resizedEventParam:o,allowDrag:i,unWindowResizeHandle:y}=le(a),{registerDraggle:m}=ne(a,t,i);e.watch(()=>a.title,(l,b)=>{l!==b&&(g.value=l)}),e.watch(()=>a.modelValue,(l,b)=>{l!==b&&(w.value=l)}),e.watch(()=>a.showHeader,(l,b)=>{l!==b&&(c.value=l)}),e.watch(()=>a.showButtons,(l,b)=>{l!==b&&(T.value=l)}),e.watch(()=>o.value,(l,b)=>{const Y=l||{},U=b||{};JSON.stringify(Y)!==JSON.stringify(U)&&t.emit("resize",{newSize:l,oldSize:b})});function z(){const l=document.querySelectorAll(".farris-modal").length;(!l||l-1<=0)&&document.body.classList.remove("modal-open"),S.value&&S.value.classList.remove("show")}const q=e.computed(()=>(w.value?document.body.classList.add("modal-open"):z(),w.value)),ue=e.computed(()=>{const l={modal:!0,"farris-modal":!0,fade:!0};return l["f-modal-fitContent"]=!!u.value,l.show=!!q.value,l}),ce=e.computed(()=>{var Y;const l={"modal-dialog":!0},b=(Y=d.value)==null?void 0:Y.split(" ");return b==null||b.reduce((U,ze)=>(U[ze]=!0,U),l),l}),de=e.computed(()=>({position:"absolute",top:`${(window.innerHeight-s.value)/2}px`,left:`${(window.innerWidth-n.value)/2}px`,width:`${n.value}px`,height:u.value?"auto":`${s.value}px`})),fe=e.computed(()=>({"modal-content":!0,"modal-content-has-header":c.value})),ve=e.computed(()=>{const l={display:c.value?"":"none"};return l["pointer-events"]=i.value?"auto":"none",l}),he=e.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:F.value})),me=e.computed(()=>({"modal-body":!0,"f-utils-flex-column":B.value==="iframe"}));function ge(){return{}}const ye=e.computed(()=>{const l={textAlgin:I.value},b=ge();return Object.assign(l,b)});function ae(l){if(l.stopPropagation(),F.value){F.value=!1,K();return}_(),F.value=!0}async function we(l,b){l.handle&&await l.handle(b,l)&&t.emit("closed",b)}function be(l){l.width&&(n.value=l.width),l.height&&(s.value=l.height),l.buttons&&(r.value=l.buttons),l.title&&(g.value=l.title)}let J=null,G=null;e.onMounted(()=>{k.value&&!O.value&&(O.value=k.value.parentElement,A.value=O.value,m(V.value,k.value,A.value)),q.value&&document.body.classList.add("modal-open"),J=oe(a,t),G=se(a,t)}),e.onUnmounted(()=>{z(),y&&y(),J&&J.remove(),G&&G.remove()}),t.expose({modalElementRef:k,updateModalOptions:be,close:L,maxDialog:ae});function xe(){return e.createVNode("ul",null,[H.value&&e.createVNode("li",{class:"f-btn-icon f-bare"},[e.createVNode("span",{class:"f-icon modal_minimize"},null)]),p.value&&e.createVNode("li",{onClick:ae,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[e.createVNode("span",{class:he.value},null)]),M.value&&e.createVNode("li",{class:"f-btn-icon f-bare",onClick:l=>L(l,!1),style:"pointer-events: auto;"},[e.createVNode("span",{class:"f-icon modal_close"},null)])])}function pe(){return e.createVNode("div",{class:"modal-footer",style:ye.value},[r.value&&r.value.map(l=>e.createVNode("button",{name:l.name,type:"button",class:l.class+(l.iconClass?" btn-icontext":""),onClick:b=>{we(l,b)}},[!!l.iconClass&&e.createVNode("i",{class:l.iconClass},null),l.text]))])}function Ce(){return e.createVNode("div",{ref:V,class:"modal-header",style:ve.value},[e.createVNode("div",{class:"modal-title"},[h.value&&e.createVNode("span",{class:f.value,style:"margin-right: 8px"},null),e.createVNode("span",{class:"modal-title-label"},[g.value])]),e.createVNode("div",{class:"actions"},[xe()])])}function Me(l){l.stopPropagation()}return()=>e.createVNode(e.Teleport,{to:"body"},{default:()=>[q.value&&e.createVNode(e.Transition,{name:"fade",appear:!0},{default:()=>{var l,b;return[e.createVNode("div",{class:ue.value,style:"display: block",ref:S,onClick:Me},[e.createVNode("div",{id:v.value,class:ce.value,style:de.value,ref:k},[e.createVNode("div",{class:fe.value},[c.value&&Ce(),e.createVNode("div",{class:me.value},[(b=(l=t.slots).default)==null?void 0:b.call(l),B.value==="iframe"&&e.createVNode("iframe",{title:v.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:R.value},null)]),N.value&&pe()]),!u.value&&x.value&&k.value&&$(k.value)])])]}})]})}});function Z(a){if(a.content&&a.content.render)return a.content.render;if(a.render&&typeof a.render=="function")return a.render}function ie(a){const t=document.createElement("div");t.style.display="contents";const n=e.createApp({setup(s,w){e.onUnmounted(()=>{document.body.removeChild(t)});const v=e.ref(),d=e.ref(a.class||""),u=e.ref(!!a.showButtons),c=e.ref(!!a.showHeader),f=e.ref(a.showCloseButton==null?!0:a.showCloseButton),M=e.ref(!0),p=e.ref(a.title||""),H=a.acceptCallback||(()=>{}),B=a.rejectCallback||(()=>{}),R=a.closedCallback||(x=>{}),I=a.resizeHandle||(x=>{}),T=Z(a),g=x=>{M.value=!1,n.unmount(),R(x)};return e.onMounted(()=>{}),w.expose({modalRef:v}),()=>e.createVNode(X,{ref:v,class:d.value,modelValue:M.value,"onUpdate:modelValue":x=>M.value=x,title:p.value,width:a.width,height:a.height,buttons:a.buttons,"show-header":c.value,"show-buttons":u.value,"show-close-button":f.value,"show-max-button":!1,onAccept:H,onCancel:B,fitContent:a.fitContent==null?!0:a.fitContent,onClosed:g,onResize:I},{default:()=>[T&&T(n)]})}});return document.body.appendChild(t),n.mount(t),n}class ee{constructor(t){D(this,"appContext",null);D(this,"modalRef",e.ref());D(this,"activeModalIndex",e.ref(0));D(this,"modalRefs",{});D(this,"isUseEscCloseModal",e.ref(!1));D(this,"activeModalInstance",e.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.appContext=t?t._context:null}getCurrentModal(){return this.activeModalInstance.value}static show(t){const n=Object.assign({title:"",showButtons:!0,showHeader:!0},t);return ie(n)}open(t){const n=document.createDocumentFragment();t.showMaxButton&&t.fitContent&&(t.showMaxButton=!1);const s=e.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},t)),w=e.ref(!0),v=s.value.acceptCallback||(()=>{}),d=s.value.rejectCallback||(()=>{}),u=s.value.closedCallback||((g,x)=>{}),c=s.value.resizeHandle||(g=>{});let f;const M=Z(s.value),p=g=>{var O;w.value=!1;const x=(O=g==null?void 0:g.target)==null?void 0:O.classList.contains("modal_close");u(g,this.isUseEscCloseModal.value?"esc":x?"icon":"button")},H=g=>{p(g),f&&e.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],e.render(null,n),f=null,this.modalRef.value=null,this.modalRefs){const x=Object.keys(this.modalRefs);x.length>0?this.activeModalIndex.value=Math.max(...x):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},B=g=>{var x;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((x=this.activeModalInstance.value)==null||x.close(g==null?void 0:g.event))},R=()=>e.createVNode(X,e.mergeProps({ref:this.modalRef,modelValue:w.value,"onUpdate:modelValue":g=>w.value=g},s.value,{onAccept:v,onCancel:d,onClosed:H,onResize:c,onEsc:B}),{default:()=>[M&&M()]});return f=(g=>{const x=e.h(R,g);return x.appContext=this.appContext,e.render(x,n),x})({...s.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:g=>{s.value={...s.value,...g},f&&e.render(e.cloneVNode(f,{...s}),n)},destroy:H,modalRef:this.activeModalInstance}}}const te=Symbol("FModalService"),re={install(a){a.component(X.name,X);const t=new ee(a);a.provide(te,t),a.provide("FModalService",t)}};E.FModal=X,E.FModalService=ee,E.F_MODAL_SERVICE_TOKEN=te,E.default=re,E.modalProps=P,Object.defineProperties(E,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});