@sankhyalabs/ezui 5.20.2 → 5.21.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (250) hide show
  1. package/README.md +4 -5
  2. package/dist/cjs/{CSSVarsUtils-b136a156.js → CSSVarsUtils-10c9d5b4.js} +13 -0
  3. package/dist/cjs/ez-actions-button.cjs.entry.js +2 -2
  4. package/dist/cjs/ez-alert-list.cjs.entry.js +121 -49
  5. package/dist/cjs/ez-alert.cjs.entry.js +1 -1
  6. package/dist/cjs/ez-application.cjs.entry.js +1 -1
  7. package/dist/cjs/ez-badge.cjs.entry.js +1 -1
  8. package/dist/cjs/ez-breadcrumb.cjs.entry.js +1 -1
  9. package/dist/cjs/ez-button.cjs.entry.js +1 -1
  10. package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
  11. package/dist/cjs/ez-card-item_3.cjs.entry.js +183 -0
  12. package/dist/cjs/ez-check.cjs.entry.js +2 -2
  13. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  14. package/dist/cjs/ez-collapsible-box.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-combo-box.cjs.entry.js +20 -163
  16. package/dist/cjs/ez-date-input.cjs.entry.js +3 -2
  17. package/dist/cjs/ez-date-time-input.cjs.entry.js +2 -2
  18. package/dist/cjs/ez-dialog.cjs.entry.js +1 -1
  19. package/dist/cjs/ez-dropdown.cjs.entry.js +10 -4
  20. package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
  21. package/dist/cjs/ez-form-view.cjs.entry.js +35 -16
  22. package/dist/cjs/ez-form.cjs.entry.js +1 -1
  23. package/dist/cjs/ez-grid.cjs.entry.js +132 -58
  24. package/dist/cjs/ez-guide-navigator.cjs.entry.js +1 -1
  25. package/dist/cjs/ez-icon.cjs.entry.js +2 -2
  26. package/dist/cjs/ez-list.cjs.entry.js +1 -1
  27. package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
  28. package/dist/cjs/ez-modal-container.cjs.entry.js +6 -1
  29. package/dist/cjs/ez-modal.cjs.entry.js +1 -1
  30. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +1 -1
  31. package/dist/cjs/ez-number-input.cjs.entry.js +2 -2
  32. package/dist/cjs/ez-popover.cjs.entry.js +1 -1
  33. package/dist/cjs/ez-popup.cjs.entry.js +9 -2
  34. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  35. package/dist/cjs/ez-scroller_3.cjs.entry.js +19 -5
  36. package/dist/cjs/ez-search.cjs.entry.js +622 -33
  37. package/dist/cjs/ez-skeleton.cjs.entry.js +1 -1
  38. package/dist/cjs/ez-split-button.cjs.entry.js +166 -0
  39. package/dist/cjs/ez-split-item.cjs.entry.js +21 -3
  40. package/dist/cjs/ez-split-panel.cjs.entry.js +68 -14
  41. package/dist/cjs/ez-tabselector.cjs.entry.js +1 -1
  42. package/dist/cjs/ez-text-area.cjs.entry.js +1 -1
  43. package/dist/cjs/ez-text-edit.cjs.entry.js +1 -1
  44. package/dist/cjs/ez-text-input.cjs.entry.js +1 -1
  45. package/dist/cjs/ez-time-input.cjs.entry.js +2 -2
  46. package/dist/cjs/ez-toast.cjs.entry.js +1 -1
  47. package/dist/cjs/ez-upload.cjs.entry.js +1 -1
  48. package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
  49. package/dist/cjs/ezui.cjs.js +2 -2
  50. package/dist/cjs/filter-column.cjs.entry.js +17 -6
  51. package/dist/cjs/{index-1064511f.js → index-a7b0c73d.js} +12 -10
  52. package/dist/cjs/loader.cjs.js +2 -2
  53. package/dist/collection/collection-manifest.json +4 -3
  54. package/dist/collection/components/ez-alert-list/ez-alert-list.css +16 -2
  55. package/dist/collection/components/ez-alert-list/ez-alert-list.js +127 -48
  56. package/dist/collection/components/ez-card-item/ez-card-item.css +52 -3
  57. package/dist/collection/components/ez-card-item/ez-card-item.js +22 -3
  58. package/dist/collection/components/ez-check/ez-check.css +1 -0
  59. package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.css +1 -0
  60. package/dist/collection/components/ez-combo-box/ez-combo-box.js +19 -179
  61. package/dist/collection/components/ez-date-input/ez-date-input.js +1 -0
  62. package/dist/collection/components/ez-dropdown/ez-dropdown.js +32 -3
  63. package/dist/collection/components/ez-form-view/ez-form-view.css +17 -1
  64. package/dist/collection/components/ez-form-view/ez-form-view.js +22 -5
  65. package/dist/collection/components/ez-form-view/fieldbuilder/templates/CheckBox.tpl.js +1 -1
  66. package/dist/collection/components/ez-form-view/fieldbuilder/templates/ComboBox.tpl.js +1 -1
  67. package/dist/collection/components/ez-form-view/fieldbuilder/templates/DateInput.tpl.js +3 -3
  68. package/dist/collection/components/ez-form-view/fieldbuilder/templates/FileInput.tpl.js +4 -2
  69. package/dist/collection/components/ez-form-view/fieldbuilder/templates/NumberInput.tpl.js +1 -1
  70. package/dist/collection/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.js +1 -1
  71. package/dist/collection/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.js +1 -1
  72. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +8 -11
  73. package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +3 -4
  74. package/dist/collection/components/ez-grid/controller/ag-grid/DataSourceInterceptor.js +21 -0
  75. package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.js +1 -3
  76. package/dist/collection/components/ez-grid/ez-grid.css +25 -1
  77. package/dist/collection/components/ez-grid/ez-grid.js +103 -33
  78. package/dist/collection/components/ez-grid/subcomponents/filter-column.js +16 -5
  79. package/dist/collection/components/ez-icon/ez-icon.css +119 -117
  80. package/dist/collection/components/ez-modal-container/ez-modal-container.js +5 -0
  81. package/dist/collection/components/ez-popup/ez-popup.css +2 -5
  82. package/dist/collection/components/ez-popup/ez-popup.js +23 -2
  83. package/dist/collection/components/ez-search/ez-search.css +331 -0
  84. package/dist/collection/components/ez-search/ez-search.js +698 -55
  85. package/dist/collection/components/ez-split-button/ez-split-button.css +229 -0
  86. package/dist/collection/components/ez-split-button/ez-split-button.js +455 -0
  87. package/dist/collection/components/ez-split-button/test/dropdownItems.js +42 -0
  88. package/dist/collection/components/ez-split-panel/ez-split-panel.css +6 -7
  89. package/dist/collection/components/ez-split-panel/ez-split-panel.js +103 -15
  90. package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.css +59 -12
  91. package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.js +82 -2
  92. package/dist/collection/components/ez-tree/ez-tree.css +26 -0
  93. package/dist/collection/components/ez-tree/interfaces/ITreeItemBadge.js +1 -0
  94. package/dist/collection/components/ez-tree/subcomponents/TreeItem.js +15 -2
  95. package/dist/collection/utils/CSSVarsUtils.js +13 -0
  96. package/dist/collection/utils/form/test/DataBinder.test.js +9 -0
  97. package/dist/custom-elements/index.d.ts +6 -0
  98. package/dist/custom-elements/index.js +1253 -359
  99. package/dist/esm/{CSSVarsUtils-a97cfa29.js → CSSVarsUtils-71ce76be.js} +13 -0
  100. package/dist/esm/ez-actions-button.entry.js +2 -2
  101. package/dist/esm/ez-alert-list.entry.js +121 -49
  102. package/dist/esm/ez-alert.entry.js +1 -1
  103. package/dist/esm/ez-application.entry.js +1 -1
  104. package/dist/esm/ez-badge.entry.js +1 -1
  105. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  106. package/dist/esm/ez-button.entry.js +1 -1
  107. package/dist/esm/ez-calendar.entry.js +1 -1
  108. package/dist/esm/ez-card-item_3.entry.js +177 -0
  109. package/dist/esm/ez-check.entry.js +2 -2
  110. package/dist/esm/ez-chip.entry.js +1 -1
  111. package/dist/esm/ez-collapsible-box.entry.js +1 -1
  112. package/dist/esm/ez-combo-box.entry.js +21 -164
  113. package/dist/esm/ez-date-input.entry.js +3 -2
  114. package/dist/esm/ez-date-time-input.entry.js +2 -2
  115. package/dist/esm/ez-dialog.entry.js +1 -1
  116. package/dist/esm/ez-dropdown.entry.js +10 -4
  117. package/dist/esm/ez-file-item.entry.js +1 -1
  118. package/dist/esm/ez-form-view.entry.js +35 -16
  119. package/dist/esm/ez-form.entry.js +1 -1
  120. package/dist/esm/ez-grid.entry.js +133 -59
  121. package/dist/esm/ez-guide-navigator.entry.js +1 -1
  122. package/dist/esm/ez-icon.entry.js +2 -2
  123. package/dist/esm/ez-list.entry.js +1 -1
  124. package/dist/esm/ez-loading-bar.entry.js +1 -1
  125. package/dist/esm/ez-modal-container.entry.js +6 -1
  126. package/dist/esm/ez-modal.entry.js +1 -1
  127. package/dist/esm/ez-multi-selection-list.entry.js +1 -1
  128. package/dist/esm/ez-number-input.entry.js +2 -2
  129. package/dist/esm/ez-popover.entry.js +1 -1
  130. package/dist/esm/ez-popup.entry.js +10 -3
  131. package/dist/esm/ez-radio-button.entry.js +1 -1
  132. package/dist/esm/ez-scroller_3.entry.js +19 -5
  133. package/dist/esm/ez-search.entry.js +623 -34
  134. package/dist/esm/ez-skeleton.entry.js +1 -1
  135. package/dist/esm/ez-split-button.entry.js +162 -0
  136. package/dist/esm/ez-split-item.entry.js +21 -3
  137. package/dist/esm/ez-split-panel.entry.js +68 -14
  138. package/dist/esm/ez-tabselector.entry.js +1 -1
  139. package/dist/esm/ez-text-area.entry.js +1 -1
  140. package/dist/esm/ez-text-edit.entry.js +1 -1
  141. package/dist/esm/ez-text-input.entry.js +1 -1
  142. package/dist/esm/ez-time-input.entry.js +2 -2
  143. package/dist/esm/ez-toast.entry.js +1 -1
  144. package/dist/esm/ez-upload.entry.js +1 -1
  145. package/dist/esm/ez-view-stack.entry.js +1 -1
  146. package/dist/esm/ezui.js +3 -3
  147. package/dist/esm/filter-column.entry.js +17 -6
  148. package/dist/esm/{index-296b8458.js → index-baa5e267.js} +12 -10
  149. package/dist/esm/loader.js +3 -3
  150. package/dist/ezui/ezui.esm.js +1 -1
  151. package/dist/ezui/{p-5cef0264.entry.js → p-0306dff7.entry.js} +1 -1
  152. package/dist/ezui/{p-871c1a07.entry.js → p-0447d17c.entry.js} +1 -1
  153. package/dist/ezui/p-072e6347.entry.js +1 -0
  154. package/dist/ezui/{p-f4208819.entry.js → p-17be134a.entry.js} +1 -1
  155. package/dist/ezui/{p-cd19a6f8.entry.js → p-1e7a8633.entry.js} +1 -1
  156. package/dist/ezui/{p-60ba28ea.entry.js → p-1f50fa05.entry.js} +1 -1
  157. package/dist/ezui/{p-245a44ed.entry.js → p-20ec22c0.entry.js} +1 -1
  158. package/dist/ezui/{p-e318d280.js → p-23a36bb6.js} +1 -1
  159. package/dist/ezui/{p-8252d9b5.entry.js → p-2a1a0e04.entry.js} +1 -1
  160. package/dist/ezui/{p-62903ab9.entry.js → p-384247cd.entry.js} +2 -2
  161. package/dist/ezui/p-3faa2b46.entry.js +1 -0
  162. package/dist/ezui/{p-9b347f04.entry.js → p-44caad9a.entry.js} +1 -1
  163. package/dist/ezui/{p-7319c253.entry.js → p-49456b34.entry.js} +1 -1
  164. package/dist/ezui/{p-ccb4ccd9.entry.js → p-555c9018.entry.js} +1 -1
  165. package/dist/ezui/{p-52dd8b4c.entry.js → p-5bd5e68f.entry.js} +1 -1
  166. package/dist/ezui/{p-62304715.entry.js → p-5e1d036e.entry.js} +1 -1
  167. package/dist/ezui/{p-7525e604.entry.js → p-5ed81457.entry.js} +1 -1
  168. package/dist/ezui/p-5ef056ce.entry.js +1 -0
  169. package/dist/ezui/p-637f69f2.entry.js +1 -0
  170. package/dist/ezui/{p-c49dbf23.entry.js → p-650e4b6d.entry.js} +1 -1
  171. package/dist/ezui/{p-f55d75e7.entry.js → p-6e429cff.entry.js} +1 -1
  172. package/dist/ezui/p-701231f0.entry.js +1 -0
  173. package/dist/ezui/{p-0b902469.entry.js → p-77a4bd35.entry.js} +1 -1
  174. package/dist/ezui/{p-81cd05c8.entry.js → p-784fe207.entry.js} +1 -1
  175. package/dist/ezui/p-7af81663.entry.js +1 -0
  176. package/dist/ezui/p-7bc07c31.entry.js +1 -0
  177. package/dist/ezui/{p-5d6f2550.entry.js → p-85c8baae.entry.js} +1 -1
  178. package/dist/ezui/{p-d3b5228e.entry.js → p-8defa6d3.entry.js} +1 -1
  179. package/dist/ezui/{p-fbca293f.entry.js → p-8df1ca33.entry.js} +1 -1
  180. package/dist/ezui/{p-391de0e4.entry.js → p-9050d2cd.entry.js} +1 -1
  181. package/dist/ezui/p-91f626d3.entry.js +1 -0
  182. package/dist/ezui/{p-3e7cc8a4.entry.js → p-99ead599.entry.js} +1 -1
  183. package/dist/ezui/p-9aefaa52.entry.js +1 -0
  184. package/dist/ezui/{p-7eb3e1a5.js → p-9e11fc7b.js} +1 -1
  185. package/dist/ezui/{p-b11f035c.entry.js → p-9f5fa3f9.entry.js} +1 -1
  186. package/dist/ezui/p-a1ec32ef.entry.js +1 -0
  187. package/dist/ezui/{p-2da09f70.entry.js → p-a80b1287.entry.js} +1 -1
  188. package/dist/ezui/{p-d20ed286.entry.js → p-af2ecb1b.entry.js} +1 -1
  189. package/dist/ezui/{p-e8f88361.entry.js → p-af95cd16.entry.js} +1 -1
  190. package/dist/ezui/{p-32b4163f.entry.js → p-b041333c.entry.js} +1 -1
  191. package/dist/ezui/{p-12526044.entry.js → p-b567fa8c.entry.js} +1 -1
  192. package/dist/ezui/p-bae3d0aa.entry.js +1 -0
  193. package/dist/ezui/p-bae4e180.entry.js +1 -0
  194. package/dist/ezui/p-baf80b13.entry.js +1 -0
  195. package/dist/ezui/p-bc2f844e.entry.js +1 -0
  196. package/dist/ezui/p-bf79aaa1.entry.js +1 -0
  197. package/dist/ezui/{p-83885b21.entry.js → p-cc2dc4f4.entry.js} +1 -1
  198. package/dist/ezui/p-db77a984.entry.js +1 -0
  199. package/dist/ezui/{p-028f264f.entry.js → p-e85c48d7.entry.js} +1 -1
  200. package/dist/types/components/ez-alert-list/ez-alert-list.d.ts +38 -4
  201. package/dist/types/components/ez-card-item/ez-card-item.d.ts +4 -0
  202. package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +1 -15
  203. package/dist/types/components/ez-dropdown/ez-dropdown.d.ts +5 -0
  204. package/dist/types/components/ez-form-view/ez-form-view.d.ts +3 -0
  205. package/dist/types/components/ez-grid/controller/ag-grid/DataSourceInterceptor.d.ts +8 -0
  206. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.d.ts +1 -1
  207. package/dist/types/components/ez-grid/ez-grid.d.ts +17 -2
  208. package/dist/types/components/ez-grid/subcomponents/filter-column.d.ts +4 -1
  209. package/dist/types/components/ez-guide-navigator/interfaces/IGuideItem.d.ts +0 -1
  210. package/dist/types/components/ez-modal-container/ez-modal-container.d.ts +1 -0
  211. package/dist/types/components/ez-popup/ez-popup.d.ts +7 -1
  212. package/dist/types/components/ez-search/ez-search.d.ts +101 -10
  213. package/dist/types/components/ez-split-button/ez-split-button.d.ts +92 -0
  214. package/dist/types/components/ez-split-button/test/dropdownItems.d.ts +2 -0
  215. package/dist/types/components/ez-split-panel/ez-split-panel.d.ts +29 -0
  216. package/dist/types/components/ez-split-panel/structure/item/ez-split-item.d.ts +27 -0
  217. package/dist/types/components/ez-tree/interfaces/ITreeItem.d.ts +3 -1
  218. package/dist/types/components/ez-tree/interfaces/ITreeItemBadge.d.ts +6 -0
  219. package/dist/types/components/ez-tree/subcomponents/TreeItem.d.ts +0 -1
  220. package/dist/types/components.d.ts +188 -15
  221. package/dist/types/utils/CSSVarsUtils.d.ts +1 -0
  222. package/dist/types/utils/form/test/DataBinder.test.d.ts +1 -0
  223. package/dist/types/utils/interfaces/AbstractFieldMetadata.d.ts +2 -1
  224. package/dist/types/utils/interfaces/IAction.d.ts +1 -1
  225. package/package.json +13 -5
  226. package/react/components.d.ts +1 -0
  227. package/react/components.js +1 -0
  228. package/react/components.js.map +1 -1
  229. package/dist/cjs/ez-card-item.cjs.entry.js +0 -52
  230. package/dist/cjs/ez-filter-input_2.cjs.entry.js +0 -137
  231. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridUtils.js +0 -8
  232. package/dist/esm/ez-card-item.entry.js +0 -48
  233. package/dist/esm/ez-filter-input_2.entry.js +0 -132
  234. package/dist/ezui/p-0843df02.entry.js +0 -1
  235. package/dist/ezui/p-47afb974.entry.js +0 -1
  236. package/dist/ezui/p-59bcb27c.entry.js +0 -1
  237. package/dist/ezui/p-74049254.entry.js +0 -1
  238. package/dist/ezui/p-76d16a24.entry.js +0 -1
  239. package/dist/ezui/p-7fd54841.entry.js +0 -1
  240. package/dist/ezui/p-87e85160.entry.js +0 -1
  241. package/dist/ezui/p-95426f93.entry.js +0 -1
  242. package/dist/ezui/p-99692afa.entry.js +0 -1
  243. package/dist/ezui/p-a01068e1.entry.js +0 -1
  244. package/dist/ezui/p-a42fe2ce.entry.js +0 -1
  245. package/dist/ezui/p-af285e68.entry.js +0 -1
  246. package/dist/ezui/p-b6867f19.entry.js +0 -1
  247. package/dist/ezui/p-d51aa09b.entry.js +0 -1
  248. package/dist/ezui/p-d81917fd.entry.js +0 -1
  249. package/dist/ezui/p-f8653522.entry.js +0 -1
  250. package/dist/types/components/ez-grid/controller/ag-grid/AgGridUtils.d.ts +0 -1
@@ -1 +1 @@
1
- import{r as e,c as i,h as t,F as n,H as r}from"./p-e318d280.js";import{StringUtils as o,ElementIDUtils as a}from"@sankhyalabs/core";const l=class{constructor(t){e(this,t),this.ezChange=i(this,"ezChange",7),this.ezSelectItem=i(this,"ezSelectItem",7),this.ezCheckChange=i(this,"ezCheckChange",7),this._listItemsHistory=[],this._listItems=[],this._listGroupItems=[],this.dataSource=[],this.listMode="regular",this.useGroups=!1,this.ezDraggable=!1,this.ezSelectable=!1,this.itemSlotBuilder=void 0,this.itemLeftSlotBuilder=void 0,this.hoverFeedback=!1}async clearHistory(){this._listItemsHistory=[]}async scrollToTop(){this.useGroups?this._element.shadowRoot.querySelector(".group-container").scrollTop=0:this._element.shadowRoot.querySelector(".items-container").scrollTop=0}async setSelection(e,i){if(e&&this.ezSelectable){if(this.ezSelectItem.emit(e),this.useGroups){let i=[...this._listGroupItems];i.forEach((i=>{i.items.forEach((i=>{i.selected=i.id===e.id}))})),this._listGroupItems=i}else{let i=[...this._listItems];i.forEach((i=>{i.selected=i.id===e.id})),this._listItems=i}if(i){let i=this.useGroups?this._groupContainer.querySelector("li#item_"+e.id):this._itemContainer.querySelector("li#item_"+e.id);i&&i.scrollIntoView()}}else await this.removeSelection()}async getSelection(){let e;return this.useGroups?this._listGroupItems.every((i=>{let t=i.items.find((e=>1==e.selected));return!t||(e=t,!1)})):e=this._listItems.find((e=>1==e.selected)),e}async getList(){return this.useGroups?this._listGroupItems:this._listItems}async removeSelection(){if(this.useGroups){let e=[...this._listGroupItems];e.forEach((e=>{e.items.forEach((e=>{e.selected=!1}))})),this._listGroupItems=e}else{let e=[...this._listItems];e.forEach((e=>{e.selected=!1})),this._listItems=e}}applyUUID(e){e.id||(e.id=o.generateUUID())}createList(){if(this.useGroups){let e=this.dataSource.map((e=>e));e.forEach((e=>{e.items.map(this.applyUUID),this.sortGroup(e)})),this._listGroupItems=e}else this._listItems=this._listItemsHistory.length>0?this._listItemsHistory:this.dataSource.map((e=>(this.applyUUID(e),e)))}sortGroup(e){e.sort&&(e.items.sort((function(e,i){return e.label<i.label?-1:e.label>i.label?1:0})),"DSC"===e.sort&&e.items.reverse())}buildIdDraggableListAndSelectable(){const e=this._element.shadowRoot,i=e.querySelectorAll(".draggable-list");null==i||i.forEach(((e,i)=>{var t,n;let r="draggableList";const o=null===(n=null===(t=this._listGroupItems)||void 0===t?void 0:t[i])||void 0===n?void 0:n.group;this.useGroups&&o&&(r=r.concat("_",o)),a.addIDInfoIfNotExists(e,r)}));const t=e.querySelectorAll(".selectable-container");null==t||t.forEach((e=>{a.addIDInfoIfNotExists(e,"selectable")}))}componentWillLoad(){this._listItemsHistory=[]}componentWillRender(){this.createList(),this._element&&this.buildIdDraggableListAndSelectable()}componentDidLoad(){a.addIDInfo(this._element)}onDrop(e,i){if(this.removeOverClass(),this.setSelection(void 0),this._dragStartItem)if(this.useGroups){let e=[...this._listGroupItems],t=this._listGroupItems.find((e=>i.groupName==e.group));if(e.find((e=>e.group==this._dragStartItem.groupName)).items.splice(this._dragStartItem.index,1),t.sort)e.find((e=>e.group==i.groupName)).items.push(this._dragStartItem.item),e.find((e=>e.group==i.groupName)).items.sort((function(e,i){return e.label<i.label?-1:e.label>i.label?1:0})),"DSC"===t.sort&&e.find((e=>e.group==i.groupName)).items.reverse();else{let t=i.index>this._dragStartItem.index?i.index-1:i.index;e.find((e=>e.group==i.groupName)).items.splice(t,0,this._dragStartItem.item)}this._listGroupItems=e,this.ezChange.emit(this._listGroupItems)}else{let e=[...this._listItems];e.splice(this._dragStartItem.index,1),e.splice(i.index,0,this._dragStartItem.item),this._listItems=e,this._listItemsHistory=e,this.ezChange.emit(this._listItems)}e.stopPropagation()}onDropLastIndex(e,i){if(this.removeOverClass(),this.setSelection(void 0),this._dragStartItem)if(this.useGroups){let e=[...this._listGroupItems],t=this._listGroupItems.find((e=>i.group==e.group));e.find((e=>e.group==this._dragStartItem.groupName)).items.splice(this._dragStartItem.index,1),e.find((e=>e.group==i.group)).items.push(this._dragStartItem.item),t.sort&&(e.find((e=>e.group==i.group)).items.sort((function(e,i){return e.label<i.label?-1:e.label>i.label?1:0})),"DSC"===t.sort&&e.find((e=>e.group==i.group)).items.reverse()),this._listGroupItems=e,this.ezChange.emit(this._listGroupItems)}else{let e=[...this._listItems];e.splice(this._dragStartItem.index,1),e.push(this._dragStartItem.item),this._listItems=e,this._listItemsHistory=e,this.ezChange.emit(this._listItems)}e.stopPropagation()}onDropGroup(e){var i;let t=[...this._listGroupItems];this.setSelection(void 0);let n=t.find((i=>i.group===e.group));if(n){if((null===(i=n.items)||void 0===i?void 0:i.length)>0){let e;n.items.forEach(((i,t)=>{i.id===this._dragStartItem.item.id&&(e={item:i,index:t})})),e?(n.items.splice(e.index,1),n.items.unshift(e.item),this.sortGroup(n)):(n.items.unshift(this._dragStartItem.item),this.sortGroup(n),t.find((e=>e.group===this._dragStartItem.groupName)).items.splice(this._dragStartItem.index,1))}else t.find((e=>e.group===this._dragStartItem.groupName)).items.splice(this._dragStartItem.index,1),n.items=[this._dragStartItem.item];this._listGroupItems=t}}onDragEnd(){if(this._dragStartItem=void 0,this.useGroups&&this.hideOverlays(),this._draggingElement){try{this._element.shadowRoot.removeChild(this._draggingElement)}catch(e){}this._draggingElement=void 0}}addOverClass(e){(null==e?void 0:e.__proto__)==HTMLDivElement.prototype&&e.classList.contains("draggable")?e.classList.add("over"):(null==e?void 0:e.parentElement)&&!e.parentElement.classList.contains("draggable-list")&&this.addOverClass(e.parentElement)}addOverGroupClass(e,i){if(e.target){let e=this._groupContainer.querySelector("div#"+this.getDivGroupId(i.group)).getElementsByClassName("group-overlay")[0];i.items.length>0?e.setAttribute("style","display:grid"):(e.classList.add("presetedHeight"),e.setAttribute("style","display:grid"),e.scrollIntoView(!1))}}removeOverClass(){var e,i;let t,n;this.useGroups?(t=null===(e=this._groupContainer)||void 0===e?void 0:e.getElementsByClassName("over"),n=this._groupContainer.getElementsByClassName("last-droppable-space")):(t=null===(i=this._itemContainer)||void 0===i?void 0:i.getElementsByClassName("over"),n=this._itemContainer.getElementsByClassName("last-droppable-space")),t&&Array.from(t).forEach((function(e){e.classList.remove("over")})),n&&Array.from(n).forEach((function(e){e.classList.remove("over")}))}removeOverGroupClass(e,i){if(e.target){let e=this._groupContainer.querySelector("div#"+this.getDivGroupId(i.group)).getElementsByClassName("group-overlay")[0];e&&(e.classList.remove("presetedHeight"),e.setAttribute("style","display:none"))}}onDragStart(e,i,t){this._changeDeboucingTimeout&&window.clearTimeout(this._changeDeboucingTimeout),this.useGroups?(this._dragStartItem={groupName:i.group,item:e,index:t},this._changeDeboucingTimeout=window.setTimeout((()=>{this.showOverlays(i)}),10)):this._dragStartItem={item:e.item,index:e.index}}selectFirstItem(){this.useGroups&&this.setSelection(this._listGroupItems[0].items[0]),this.setSelection(this._listItems[0])}nextOption(e){let i;if(this.useGroups)this._listGroupItems.every(((t,n,r)=>{let o,a=t.items.findIndex((i=>i.id==e.id));return null!=a&&-1!=a&&(a===t.items.length-1?n+1<=r.length-1&&(o={label:r[n+1].items[0].label}):o={label:t.items[a+1].label}),null==o||(i=o,!1)}));else{let t=this._listItems.findIndex((i=>i.id===e.id));t>=0&&t<this._listItems.length&&(i=this._listItems[t+1])}this.setSelection(i,!0)}previousOption(e){let i;if(this.useGroups)this._listGroupItems.every(((t,n,r)=>{let o,a=t.items.findIndex((i=>i.id===e.id));return null!=a&&-1!=a&&(0===a?n-1>=0&&(o={label:r[n-1].items[r[n-1].items.length-1].label}):o={label:t.items[a-1].label}),null==o||(i=o,!1)}));else{let t=this._listItems.findIndex((i=>i.id===e.id));t>0&&t<this._listItems.length&&(i=this._listItems[t-1])}this.setSelection(i,!0)}keyDownHandler(e){e.ctrlKey||e.preventDefault(),this.getSelection().then((i=>{if(i)switch(e.key){case"ArrowDown":this.nextOption(i);break;case"ArrowUp":this.previousOption(i)}else this.selectFirstItem()})),e.stopPropagation()}getDivGroupId(e){if(e)return"group-"+e.replace(/[^a-z0-9_]/gi,"_")}getGroupOverlayId(e){if(e)return"group-overlay-"+e.replace(/[^a-z0-9_]/gi,"_")}onDragOverGroup(e,i){this._dragStartItem&&this._dragStartItem.groupName!==i.group&&i.sort&&(e.preventDefault(),this.addOverGroupClass(e,i))}onDragOverItem(e){this._dragStartItem&&(e.preventDefault(),this.addOverClass(e.target),e.stopPropagation())}onDragOverLastIndex(e){e.preventDefault(),this._dragStartItem&&(e.target.classList.add("over"),e.stopPropagation())}showOverlays(e){let i=this._groupContainer.getElementsByClassName("group-overlay");Array.from(i).forEach((i=>{let t=this.getGroupOverlayId(e.group);t&&i.getAttribute("id")&&t!=i.getAttribute("id")&&(i.classList.add("presetedHeight"),i.setAttribute("style","display:grid"))}))}hideOverlays(){var e;let i=null===(e=this._groupContainer)||void 0===e?void 0:e.getElementsByClassName("group-overlay");Array.from(i).forEach((e=>{e.classList.remove("presetedHeight"),e.setAttribute("style","display:none")}))}getContainerItemBuilder(e,i,n,r){var o,a;const l="left"===e?null===(o=this.itemLeftSlotBuilder)||void 0===o?void 0:o.call(this,i,n):null===(a=this.itemSlotBuilder)||void 0===a?void 0:a.call(this,i,n);if(null!=l)return"string"!=typeof l?t("div",{class:r},l):t("div",{class:r,innerHTML:l})}render(){return t(r,{ref:e=>this._element=e},this.useGroups?t("div",{class:"group-container",ref:e=>this._groupContainer=e,tabIndex:0,onKeyDown:e=>{this.keyDownHandler(e)}},this._listGroupItems.map((e=>t("div",{id:this.getDivGroupId(e.group),class:"group",key:e.group+e.items.length,onDrop:()=>this.onDropGroup(e)},t("label",{draggable:!1,class:"group-name",title:e.group},e.group),t("section",{class:"section-container",onDragOver:e=>e.preventDefault()},t("div",{class:"group-items-container"},t("div",{class:"draggable-list"},e.items.map(((i,r)=>t("li",Object.assign({id:"item_"+i.id,class:{"selectable-container":this.ezSelectable,"hover-feedback":this.hoverFeedback},key:"item_"+i.id},{[a.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:a.getInternalIDInfo(`ezListItem__${o.replaceAccentuatedChars(i.label)}`)}),t("div",{class:"draggable"+(1==i.selected?" selected-item ":"")+(1==this.ezSelectable?" selectable ":""),onClick:()=>{this.setSelection(i)},onDragLeave:()=>{e.sort||this.removeOverClass()},onDragEnd:()=>this.onDragEnd(),onDragStart:()=>this.onDragStart(i,e,r),onDragOver:i=>{e.sort||this.onDragOverItem(i)},onDrop:t=>this.onDrop(t,{groupName:e.group,item:i,index:r}),draggable:this.ezDraggable},t("div",{class:"item-content"},this.ezDraggable?t("span",{class:"draggable-icon"}):void 0,"regular"===this.listMode?t(n,null,!!this.itemLeftSlotBuilder&&this.getContainerItemBuilder("left",i,e),t("p",{title:i.label,class:"person-name text--ellipsis"},i.label)):t("ez-check",{label:i.label,value:i.check,onEzChange:e=>this.ezCheckChange.emit({id:i.id,label:i.label,check:e.detail})})),!!this.itemSlotBuilder&&this.getContainerItemBuilder("right",i,e,"slot-item")))))),t("div",{class:"last-droppable-space",onDragLeave:()=>this.removeOverClass(),onDragOver:e=>{this.onDragOverLastIndex(e)},onDragEnd:()=>this.onDragEnd(),onDrop:i=>this.onDropLastIndex(i,e)})),e.sort?t("div",{id:this.getGroupOverlayId(e.group),class:"group-overlay"},"Mover para ",e.group):void 0))))):t("div",{class:"items-container",ref:e=>this._itemContainer=e,tabIndex:0,onKeyDown:e=>{this.keyDownHandler(e)}},t("div",{class:"draggable-list"},this._listItems.map(((e,i)=>t("li",Object.assign({id:"item_"+e.id,class:{"selectable-container":this.ezSelectable,"hover-feedback":this.hoverFeedback},key:"item_"+e.id},{[a.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:a.getInternalIDInfo(`ezListItem__${o.replaceAccentuatedChars(e.label)}`)}),t("div",{class:"draggable"+(1==e.selected?" selected-item ":"")+(1==this.ezSelectable?" selectable ":""),onDragStart:()=>this.onDragStart({item:e,index:i}),onClick:()=>{this.setSelection(e)},onDragLeave:()=>this.removeOverClass(),onDragOver:e=>this.onDragOverItem(e),onDragEnd:()=>this.onDragEnd(),onDrop:t=>this.onDrop(t,{item:e,index:i}),draggable:this.ezDraggable},t("div",{class:"item-content"},"regular"===this.listMode?t(n,null,this.ezDraggable?t("span",{class:"draggable-icon"}):void 0,!!this.itemLeftSlotBuilder&&this.getContainerItemBuilder("left",e),t("p",{title:e.label,class:"person-name text--ellipsis"},e.label)):t(n,null,this.ezDraggable?t("span",{class:"draggable-icon"}):void 0,t("ez-check",{label:e.label,value:e.check,onEzChange:i=>this.ezCheckChange.emit({id:e.id,label:e.label,check:i.detail})}))),!!this.itemSlotBuilder&&this.getContainerItemBuilder("right",e))))),t("div",{class:"last-droppable-space",onDragLeave:()=>this.removeOverClass(),onDragOver:e=>{this.onDragOverLastIndex(e)},onDragEnd:()=>this.onDragEnd(),onDrop:e=>this.onDropLastIndex(e)}))))}};l.style=':host {\n /* @doc Define a camada de visibilidae do componente. */\n --ez-list__host--z-index: var(--visible, 1);\n\n /* @doc Define o raio da borda do componente. */\n --ez-list__host--border-radius: var(--border--radius-medium, 12px);\n\n /* @doc Define o espaçamento entre a lista e o componente. */\n --ez-list__host--padding: var(--space--medium, 12px);\n\n /* @doc Define o espaçamento interno do ícone. */\n --ez-list__icon--padding: var(--space--small, 6px);\n\n /* @doc Define a cor do ícone de arrasto do item da lista. */\n --ez-list__icon--color: #AFB6C0;\n\n /* @doc Define o espaçamento externo do item da lista. */\n --ez-list__item--margin: 0 var(--space--small, 6px);\n\n /* @doc Define a cor do texto do item da lista. */\n --ez-list__item--color: var(--title--primary, #2b3a54);\n\n /* @doc Define o estilo borda inferior do item da lista. */\n --ez-list__item--border-bottom;\n\n /* @doc Define a cor da borda inferior do item da lista. */\n --ez-list__item--border-bottom-color;\n\n /* @doc Define o estilo do texto do item da lista. */\n --ez-list__item--font-family: var(--font-pattern, "Roboto");\n\n /* @doc Define o tamanho do texto do item da lista. */\n --ez-list__item--font-size: var(--text--medium, 14px);\n \n /* @doc Define o tipo da quebra de linha do item da lista. */\n --ez-list__item--white-space: var(--ez-list__item--white-space, nowrap);\n\n /* @doc Define o espaçamento lateral direito para items selecionados. */\n --ez-list__selectable--padding-right: var(--space--small, 6px);\n \n /* @doc Define o espaçamento lateral esquerdo para items selecionados. */\n --ez-list__selectable--padding-left: var(--space--small, 6px);\n\n /*@doc Define o raio da borda de items selecionados.*/\n --ez-list__selected-item--border-radius: var(--border--radius-small, 6px);\n \n /*@doc Define a cor de fundo de items selecionados.*/\n --ez-list__selected-item--background-color: var(--color--primary-300, #E2F4EF);\n\n /* @doc Define o estilo do texto do grupo da lista. */\n --ez-list__group--font-family: var(--font-pattern, "Roboto");\n \n /* @doc Define o tamanho do texto do grupo da lista. */\n --ez-list__group--font-size: var(--text--medium, 14px);\n \n /* @doc Define o peso do texto do grupo da lista. */\n --ez-list__group--font-weight: var(--text-weight--large, 600);\n \n /* @doc Define o espaçamento inferior do grupo da lista. */\n --ez-list__group--padding-bottom: var(--space-small, 6px);\n\n /* @doc Define o estilo do texto da área de transferência de grupos. */\n --ez-list__group-overlay--font-family: var(--font-pattern, "Roboto");\n\n /* @doc Define o tamanho do texto da área de transferência de grupos. */\n --ez-list__group-overlay--font-size: var(--text--medium, 14px);\n \n /* @doc Define a cor da borda pontilhada sobre os elementos da lista. */\n --ez-list__over--border--color: var(--color--primary, #008561);\n\n /*@doc Define a altura do container para arrasto para última posição .*/\n --ez-list__last-droppable-space--height: var(--space--small, 6px);\n \n /*@doc Define o espaçamento do container de itens arrastáveis .*/\n --ez-list__draggable-list--padding-bottom: var(--space--small, 6px);\n\n /* @doc Define a imagem do ícone de drag. */\n --ez-list__draggable-icon--image: url(\'data:image/svg+xml;utf8,<svg width="18" height="18" viewBox="0 0 18 18" xmlns="http://www.w3.org/2000/svg"><path d="m 6.75,2.25 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z m -3,3 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z m -3,3 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z m -3,3 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z m -3,3 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z"/></svg>\');\n\n /* scrollbar */\n /*@doc Define a cor da barra de rolagem do componente.*/\n --ez-list__scrollbar--color-default: var(--scrollbar--default, #626e82);\n /*@doc Define a cor de fundo da barra de rolagem do componente.*/\n --ez-list__scrollbar--color-background: var(--scrollbar--background, #E5EAF0);\n /*@doc Define a cor do hover na barra de rolagem do componente.*/\n --ez-list__scrollbar--color-hover: var(--scrollbar--hover, #2B3A54);\n /*@doc Define a cor do active na barra de rolagem do componente.*/\n --ez-list__scrollbar--color-clicked: var(--scrollbar--clicked, #a2abb9);\n /*@doc Define o raio da borda da barra de rolagem do componente.*/\n --ez-list__scrollbar--border-radius: var(--border--radius-small, 6px);\n /*@doc Define a largura da barra de rolagem do componente.*/\n --ez-list__scrollbar--width: var(--space--medium, 12px);\n\n max-height: 100%;\n width: 100%;\n background-color: #fff;\n display: flex;\n\n /*public*/\n z-index: var(--ez-list__host--z-index);\n}\n\np {\n margin: 0;\n}\n\n.draggable {\n /* private */\n width: 100%;\n display: grid;\n grid-template-columns: minmax(0px, auto) minmax(0px, auto);\n place-items: center;\n border-top: 1px dashed #fff;\n justify-content: space-between;\n\n /*public*/\n font-family: var(--ez-list__item--font-family);\n font-size: var(--ez-list__item--font-size);\n}\n\n.dragging {\n background: #FFFFFF;\n /* Primary/color--primary */\n\n border: 1px solid #008561;\n box-sizing: border-box;\n box-shadow: 0px 0px 16px rgba(0, 38, 111, 0.122);\n border-radius: 6px;\n}\n\n.selectable {\n cursor: pointer;\n\n /*public*/\n padding-right: var(--ez-list__selectable--padding-right);\n padding-left: var(--ez-list__selectable--padding-left);\n}\n\n.selectable-container {\n margin: 0px !important;\n}\n\n.hover-feedback:hover {\n background-color: var(--background--medium);\n border-radius: var(--border--radius-regular);\n}\n\n.item-content {\n display: flex;\n overflow: hidden;\n justify-content: flex-start;\n width: 100%;\n}\n\n.draggable-list {\n padding: 0;\n margin: 0;\n width: 100%;\n max-height: 100%;\n scrollbar-width: thin;\n \n /*public*/\n color: var(--text-color);\n scrollbar-color: var(--ez-list__scrollbar--color-clicked) var(--ez-list__scrollbar--color-background);\n}\n\n.draggable-list li {\n display: flex;\n \n /*public*/\n padding: var(--space--2xs, 8px) var(--space--3xs, 4px);\n margin: var(--ez-list__item--margin);\n font-family: var(--ez-list__item--font-family);\n font-size: var(--ez-list__item--font-size);\n color: var(--ez-list__item--color);\n border-bottom: var(--ez-list__item--border-bottom, none) var(--ez-list__item--border-bottom-color);\n}\n\n.over {\n /*public*/\n border-top: 1px dashed var(--ez-list__over--border--color);\n}\n\n.last-droppable-space {\n /*public*/\n height: var(--ez-list__last-droppable-space--height);\n}\n\n.draggable-selected {\n /*public*/\n background-color: var(--background--strong) !important;\n}\n\n.draggable-selected div:hover {\n /*public*/\n background-color: var(--background--strong) !important;\n}\n\n.draggable-list::-webkit-scrollbar {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-background);\n width: var(--ez-list__scrollbar--width);\n max-width: var(--ez-list__scrollbar--width);\n min-width: var(--ez-list__scrollbar--width);\n}\n\n.draggable-list::-webkit-scrollbar-track {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-background);\n border-radius: var(--ez-list__scrollbar--border-radius);\n}\n\n.draggable-list::-webkit-scrollbar-thumb {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-default);\n border-radius: var(--ez-list__scrollbar--border-radius);\n}\n\n.draggable-list::-webkit-scrollbar-thumb:vertical:hover,\n.draggable-list::-webkit-scrollbar-thumb:horizontal:hover {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-hover);\n}\n\n.draggable-list::-webkit-scrollbar-thumb:vertical:active,\n.draggable-list::-webkit-scrollbar-thumb:horizontal:active {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-clicked);\n}\n\n.draggable-icon {\n align-items: flex-start;\n display: flex;\n outline: none;\n border: none;\n background-color: unset;\n}\n\n.draggable-icon::after {\n content: \'\';\n display: flex;\n width: 18px;\n height: 18px;\n\n /*public*/\n background-color: var(--ez-list__icon--color);\n -webkit-mask-image: var(--ez-list__draggable-icon--image);\n mask-image: var(--ez-list__draggable-icon--image);\n}\n\n* {\n box-sizing: border-box;\n}\n\n.checkbox {\n width: fit-content;\n}\n\n.text--ellipsis {\n overflow: hidden;\n text-overflow: ellipsis;\n \n /*public*/\n white-space: var(--ez-list__item--white-space);\n}\n\n.group-container {\n display: flex;\n flex-direction: column;\n max-height: 100%;\n overflow-y: auto;\n outline: none;\n width: 100%;\n scrollbar-width: thin;\n\n /*public*/\n scrollbar-color: var(--ez-list__scrollbar--color-clicked) var(--ez-list__scrollbar--color-background);\n}\n\n.group-name {\n -webkit-user-select: none;\n -moz-user-select: -moz-none;\n -ms-user-select: none;\n user-select: none;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n /*public*/\n color: var(--title--primary);\n font-family: var(--ez-list__group--font-family);\n font-size: var(--ez-list__group--font-size);\n font-weight: var(--ez-list__group--font-weight);\n padding-bottom: var(--ez-list__group--padding-bottom);\n}\n\n.group {\n display: flex;\n flex-direction: column;\n}\n\n.group-container::-webkit-scrollbar {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-background);\n width: var(--ez-list__scrollbar--width);\n max-width: var(--ez-list__scrollbar--width);\n min-width: var(--ez-list__scrollbar--width);\n}\n\n.group-container::-webkit-scrollbar-track {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-background);\n border-radius: var(--ez-list__scrollbar--border-radius);\n}\n\n.group-container::-webkit-scrollbar-thumb {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-default);\n border-radius: var(--ez-list__scrollbar--border-radius);\n}\n\n.group-container::-webkit-scrollbar-thumb:vertical:hover,\n.group-container::-webkit-scrollbar-thumb:horizontal:hover {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-hover);\n}\n\n.group-container::-webkit-scrollbar-thumb:vertical:active,\n.group-container::-webkit-scrollbar-thumb:horizontal:active {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-clicked);\n}\n\n.section-container {\n display: flex;\n position: relative;\n height: 100%;\n}\n\n.items-container {\n width: 100%;\n max-height: 100%;\n outline: none;\n scrollbar-width: thin;\n\n /*public*/\n scrollbar-color: var(--ez-list__scrollbar--color-clicked) var(--ez-list__scrollbar--color-background);\n}\n\n.group-items-container {\n width: 100%;\n max-height: 100%;\n height: 100%;\n outline: none;\n}\n\n.items-container::-webkit-scrollbar {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-background);\n width: var(--ez-list__scrollbar--width);\n max-width: var(--ez-list__scrollbar--width);\n min-width: var(--ez-list__scrollbar--width);\n}\n\n.items-container::-webkit-scrollbar-track {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-background);\n border-radius: var(--ez-list__scrollbar--border-radius);\n}\n\n.items-container::-webkit-scrollbar-thumb {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-default);\n border-radius: var(--ez-list__scrollbar--border-radius);\n}\n\n.items-container::-webkit-scrollbar-thumb:vertical:hover,\n.items-container::-webkit-scrollbar-thumb:horizontal:hover {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-hover);\n}\n\n.items-container::-webkit-scrollbar-thumb:vertical:active,\n.items-container::-webkit-scrollbar-thumb:horizontal:active {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-clicked);\n}\n\n.group-overlay {\n background: rgba(226, 244, 239, 0.8);\n border: 1px solid #008561;\n border-radius: 8px;\n position: absolute;\n display: none;\n place-items: center;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 2;\n margin: 0;\n cursor: pointer;\n\n /*public*/\n font-family: var(--ez-list__group-overlay--font-family);\n font-size: var(--ez-list__group-overlay--font-size);\n}\n\n.presetedHeight {\n min-height: 100px;\n}\n\n.overlay-text {\n position: absolute;\n top: 50%;\n left: 50%;\n font-size: 50px;\n color: white;\n transform: translate(-50%, -50%);\n -ms-transform: translate(-50%, -50%);\n}\n\n.selected-item {\n /*public*/\n background: var(--ez-list__selected-item--background-color);\n border-radius: var(--ez-list__selected-item--border-radius);\n}\n\n.slot-item {\n align-items: flex-end;\n}\n\n.overGroup {\n background: rgba(226, 244, 239, 0.8);\n border: 1px solid #008561;\n box-sizing: border-box;\n border-radius: 8px;\n padding-top: 6px;\n}';export{l as ez_list}
1
+ import{r as e,c as i,h as t,F as n,H as r}from"./p-23a36bb6.js";import{StringUtils as o,ElementIDUtils as a}from"@sankhyalabs/core";const l=class{constructor(t){e(this,t),this.ezChange=i(this,"ezChange",7),this.ezSelectItem=i(this,"ezSelectItem",7),this.ezCheckChange=i(this,"ezCheckChange",7),this._listItemsHistory=[],this._listItems=[],this._listGroupItems=[],this.dataSource=[],this.listMode="regular",this.useGroups=!1,this.ezDraggable=!1,this.ezSelectable=!1,this.itemSlotBuilder=void 0,this.itemLeftSlotBuilder=void 0,this.hoverFeedback=!1}async clearHistory(){this._listItemsHistory=[]}async scrollToTop(){this.useGroups?this._element.shadowRoot.querySelector(".group-container").scrollTop=0:this._element.shadowRoot.querySelector(".items-container").scrollTop=0}async setSelection(e,i){if(e&&this.ezSelectable){if(this.ezSelectItem.emit(e),this.useGroups){let i=[...this._listGroupItems];i.forEach((i=>{i.items.forEach((i=>{i.selected=i.id===e.id}))})),this._listGroupItems=i}else{let i=[...this._listItems];i.forEach((i=>{i.selected=i.id===e.id})),this._listItems=i}if(i){let i=this.useGroups?this._groupContainer.querySelector("li#item_"+e.id):this._itemContainer.querySelector("li#item_"+e.id);i&&i.scrollIntoView()}}else await this.removeSelection()}async getSelection(){let e;return this.useGroups?this._listGroupItems.every((i=>{let t=i.items.find((e=>1==e.selected));return!t||(e=t,!1)})):e=this._listItems.find((e=>1==e.selected)),e}async getList(){return this.useGroups?this._listGroupItems:this._listItems}async removeSelection(){if(this.useGroups){let e=[...this._listGroupItems];e.forEach((e=>{e.items.forEach((e=>{e.selected=!1}))})),this._listGroupItems=e}else{let e=[...this._listItems];e.forEach((e=>{e.selected=!1})),this._listItems=e}}applyUUID(e){e.id||(e.id=o.generateUUID())}createList(){if(this.useGroups){let e=this.dataSource.map((e=>e));e.forEach((e=>{e.items.map(this.applyUUID),this.sortGroup(e)})),this._listGroupItems=e}else this._listItems=this._listItemsHistory.length>0?this._listItemsHistory:this.dataSource.map((e=>(this.applyUUID(e),e)))}sortGroup(e){e.sort&&(e.items.sort((function(e,i){return e.label<i.label?-1:e.label>i.label?1:0})),"DSC"===e.sort&&e.items.reverse())}buildIdDraggableListAndSelectable(){const e=this._element.shadowRoot,i=e.querySelectorAll(".draggable-list");null==i||i.forEach(((e,i)=>{var t,n;let r="draggableList";const o=null===(n=null===(t=this._listGroupItems)||void 0===t?void 0:t[i])||void 0===n?void 0:n.group;this.useGroups&&o&&(r=r.concat("_",o)),a.addIDInfoIfNotExists(e,r)}));const t=e.querySelectorAll(".selectable-container");null==t||t.forEach((e=>{a.addIDInfoIfNotExists(e,"selectable")}))}componentWillLoad(){this._listItemsHistory=[]}componentWillRender(){this.createList(),this._element&&this.buildIdDraggableListAndSelectable()}componentDidLoad(){a.addIDInfo(this._element)}onDrop(e,i){if(this.removeOverClass(),this.setSelection(void 0),this._dragStartItem)if(this.useGroups){let e=[...this._listGroupItems],t=this._listGroupItems.find((e=>i.groupName==e.group));if(e.find((e=>e.group==this._dragStartItem.groupName)).items.splice(this._dragStartItem.index,1),t.sort)e.find((e=>e.group==i.groupName)).items.push(this._dragStartItem.item),e.find((e=>e.group==i.groupName)).items.sort((function(e,i){return e.label<i.label?-1:e.label>i.label?1:0})),"DSC"===t.sort&&e.find((e=>e.group==i.groupName)).items.reverse();else{let t=i.index>this._dragStartItem.index?i.index-1:i.index;e.find((e=>e.group==i.groupName)).items.splice(t,0,this._dragStartItem.item)}this._listGroupItems=e,this.ezChange.emit(this._listGroupItems)}else{let e=[...this._listItems];e.splice(this._dragStartItem.index,1),e.splice(i.index,0,this._dragStartItem.item),this._listItems=e,this._listItemsHistory=e,this.ezChange.emit(this._listItems)}e.stopPropagation()}onDropLastIndex(e,i){if(this.removeOverClass(),this.setSelection(void 0),this._dragStartItem)if(this.useGroups){let e=[...this._listGroupItems],t=this._listGroupItems.find((e=>i.group==e.group));e.find((e=>e.group==this._dragStartItem.groupName)).items.splice(this._dragStartItem.index,1),e.find((e=>e.group==i.group)).items.push(this._dragStartItem.item),t.sort&&(e.find((e=>e.group==i.group)).items.sort((function(e,i){return e.label<i.label?-1:e.label>i.label?1:0})),"DSC"===t.sort&&e.find((e=>e.group==i.group)).items.reverse()),this._listGroupItems=e,this.ezChange.emit(this._listGroupItems)}else{let e=[...this._listItems];e.splice(this._dragStartItem.index,1),e.push(this._dragStartItem.item),this._listItems=e,this._listItemsHistory=e,this.ezChange.emit(this._listItems)}e.stopPropagation()}onDropGroup(e){var i;let t=[...this._listGroupItems];this.setSelection(void 0);let n=t.find((i=>i.group===e.group));if(n){if((null===(i=n.items)||void 0===i?void 0:i.length)>0){let e;n.items.forEach(((i,t)=>{i.id===this._dragStartItem.item.id&&(e={item:i,index:t})})),e?(n.items.splice(e.index,1),n.items.unshift(e.item),this.sortGroup(n)):(n.items.unshift(this._dragStartItem.item),this.sortGroup(n),t.find((e=>e.group===this._dragStartItem.groupName)).items.splice(this._dragStartItem.index,1))}else t.find((e=>e.group===this._dragStartItem.groupName)).items.splice(this._dragStartItem.index,1),n.items=[this._dragStartItem.item];this._listGroupItems=t}}onDragEnd(){if(this._dragStartItem=void 0,this.useGroups&&this.hideOverlays(),this._draggingElement){try{this._element.shadowRoot.removeChild(this._draggingElement)}catch(e){}this._draggingElement=void 0}}addOverClass(e){(null==e?void 0:e.__proto__)==HTMLDivElement.prototype&&e.classList.contains("draggable")?e.classList.add("over"):(null==e?void 0:e.parentElement)&&!e.parentElement.classList.contains("draggable-list")&&this.addOverClass(e.parentElement)}addOverGroupClass(e,i){if(e.target){let e=this._groupContainer.querySelector("div#"+this.getDivGroupId(i.group)).getElementsByClassName("group-overlay")[0];i.items.length>0?e.setAttribute("style","display:grid"):(e.classList.add("presetedHeight"),e.setAttribute("style","display:grid"),e.scrollIntoView(!1))}}removeOverClass(){var e,i;let t,n;this.useGroups?(t=null===(e=this._groupContainer)||void 0===e?void 0:e.getElementsByClassName("over"),n=this._groupContainer.getElementsByClassName("last-droppable-space")):(t=null===(i=this._itemContainer)||void 0===i?void 0:i.getElementsByClassName("over"),n=this._itemContainer.getElementsByClassName("last-droppable-space")),t&&Array.from(t).forEach((function(e){e.classList.remove("over")})),n&&Array.from(n).forEach((function(e){e.classList.remove("over")}))}removeOverGroupClass(e,i){if(e.target){let e=this._groupContainer.querySelector("div#"+this.getDivGroupId(i.group)).getElementsByClassName("group-overlay")[0];e&&(e.classList.remove("presetedHeight"),e.setAttribute("style","display:none"))}}onDragStart(e,i,t){this._changeDeboucingTimeout&&window.clearTimeout(this._changeDeboucingTimeout),this.useGroups?(this._dragStartItem={groupName:i.group,item:e,index:t},this._changeDeboucingTimeout=window.setTimeout((()=>{this.showOverlays(i)}),10)):this._dragStartItem={item:e.item,index:e.index}}selectFirstItem(){this.useGroups&&this.setSelection(this._listGroupItems[0].items[0]),this.setSelection(this._listItems[0])}nextOption(e){let i;if(this.useGroups)this._listGroupItems.every(((t,n,r)=>{let o,a=t.items.findIndex((i=>i.id==e.id));return null!=a&&-1!=a&&(a===t.items.length-1?n+1<=r.length-1&&(o={label:r[n+1].items[0].label}):o={label:t.items[a+1].label}),null==o||(i=o,!1)}));else{let t=this._listItems.findIndex((i=>i.id===e.id));t>=0&&t<this._listItems.length&&(i=this._listItems[t+1])}this.setSelection(i,!0)}previousOption(e){let i;if(this.useGroups)this._listGroupItems.every(((t,n,r)=>{let o,a=t.items.findIndex((i=>i.id===e.id));return null!=a&&-1!=a&&(0===a?n-1>=0&&(o={label:r[n-1].items[r[n-1].items.length-1].label}):o={label:t.items[a-1].label}),null==o||(i=o,!1)}));else{let t=this._listItems.findIndex((i=>i.id===e.id));t>0&&t<this._listItems.length&&(i=this._listItems[t-1])}this.setSelection(i,!0)}keyDownHandler(e){e.ctrlKey||e.preventDefault(),this.getSelection().then((i=>{if(i)switch(e.key){case"ArrowDown":this.nextOption(i);break;case"ArrowUp":this.previousOption(i)}else this.selectFirstItem()})),e.stopPropagation()}getDivGroupId(e){if(e)return"group-"+e.replace(/[^a-z0-9_]/gi,"_")}getGroupOverlayId(e){if(e)return"group-overlay-"+e.replace(/[^a-z0-9_]/gi,"_")}onDragOverGroup(e,i){this._dragStartItem&&this._dragStartItem.groupName!==i.group&&i.sort&&(e.preventDefault(),this.addOverGroupClass(e,i))}onDragOverItem(e){this._dragStartItem&&(e.preventDefault(),this.addOverClass(e.target),e.stopPropagation())}onDragOverLastIndex(e){e.preventDefault(),this._dragStartItem&&(e.target.classList.add("over"),e.stopPropagation())}showOverlays(e){let i=this._groupContainer.getElementsByClassName("group-overlay");Array.from(i).forEach((i=>{let t=this.getGroupOverlayId(e.group);t&&i.getAttribute("id")&&t!=i.getAttribute("id")&&(i.classList.add("presetedHeight"),i.setAttribute("style","display:grid"))}))}hideOverlays(){var e;let i=null===(e=this._groupContainer)||void 0===e?void 0:e.getElementsByClassName("group-overlay");Array.from(i).forEach((e=>{e.classList.remove("presetedHeight"),e.setAttribute("style","display:none")}))}getContainerItemBuilder(e,i,n,r){var o,a;const l="left"===e?null===(o=this.itemLeftSlotBuilder)||void 0===o?void 0:o.call(this,i,n):null===(a=this.itemSlotBuilder)||void 0===a?void 0:a.call(this,i,n);if(null!=l)return"string"!=typeof l?t("div",{class:r},l):t("div",{class:r,innerHTML:l})}render(){return t(r,{ref:e=>this._element=e},this.useGroups?t("div",{class:"group-container",ref:e=>this._groupContainer=e,tabIndex:0,onKeyDown:e=>{this.keyDownHandler(e)}},this._listGroupItems.map((e=>t("div",{id:this.getDivGroupId(e.group),class:"group",key:e.group+e.items.length,onDrop:()=>this.onDropGroup(e)},t("label",{draggable:!1,class:"group-name",title:e.group},e.group),t("section",{class:"section-container",onDragOver:e=>e.preventDefault()},t("div",{class:"group-items-container"},t("div",{class:"draggable-list"},e.items.map(((i,r)=>t("li",Object.assign({id:"item_"+i.id,class:{"selectable-container":this.ezSelectable,"hover-feedback":this.hoverFeedback},key:"item_"+i.id},{[a.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:a.getInternalIDInfo(`ezListItem__${o.replaceAccentuatedChars(i.label)}`)}),t("div",{class:"draggable"+(1==i.selected?" selected-item ":"")+(1==this.ezSelectable?" selectable ":""),onClick:()=>{this.setSelection(i)},onDragLeave:()=>{e.sort||this.removeOverClass()},onDragEnd:()=>this.onDragEnd(),onDragStart:()=>this.onDragStart(i,e,r),onDragOver:i=>{e.sort||this.onDragOverItem(i)},onDrop:t=>this.onDrop(t,{groupName:e.group,item:i,index:r}),draggable:this.ezDraggable},t("div",{class:"item-content"},this.ezDraggable?t("span",{class:"draggable-icon"}):void 0,"regular"===this.listMode?t(n,null,!!this.itemLeftSlotBuilder&&this.getContainerItemBuilder("left",i,e),t("p",{title:i.label,class:"person-name text--ellipsis"},i.label)):t("ez-check",{label:i.label,value:i.check,onEzChange:e=>this.ezCheckChange.emit({id:i.id,label:i.label,check:e.detail})})),!!this.itemSlotBuilder&&this.getContainerItemBuilder("right",i,e,"slot-item")))))),t("div",{class:"last-droppable-space",onDragLeave:()=>this.removeOverClass(),onDragOver:e=>{this.onDragOverLastIndex(e)},onDragEnd:()=>this.onDragEnd(),onDrop:i=>this.onDropLastIndex(i,e)})),e.sort?t("div",{id:this.getGroupOverlayId(e.group),class:"group-overlay"},"Mover para ",e.group):void 0))))):t("div",{class:"items-container",ref:e=>this._itemContainer=e,tabIndex:0,onKeyDown:e=>{this.keyDownHandler(e)}},t("div",{class:"draggable-list"},this._listItems.map(((e,i)=>t("li",Object.assign({id:"item_"+e.id,class:{"selectable-container":this.ezSelectable,"hover-feedback":this.hoverFeedback},key:"item_"+e.id},{[a.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:a.getInternalIDInfo(`ezListItem__${o.replaceAccentuatedChars(e.label)}`)}),t("div",{class:"draggable"+(1==e.selected?" selected-item ":"")+(1==this.ezSelectable?" selectable ":""),onDragStart:()=>this.onDragStart({item:e,index:i}),onClick:()=>{this.setSelection(e)},onDragLeave:()=>this.removeOverClass(),onDragOver:e=>this.onDragOverItem(e),onDragEnd:()=>this.onDragEnd(),onDrop:t=>this.onDrop(t,{item:e,index:i}),draggable:this.ezDraggable},t("div",{class:"item-content"},"regular"===this.listMode?t(n,null,this.ezDraggable?t("span",{class:"draggable-icon"}):void 0,!!this.itemLeftSlotBuilder&&this.getContainerItemBuilder("left",e),t("p",{title:e.label,class:"person-name text--ellipsis"},e.label)):t(n,null,this.ezDraggable?t("span",{class:"draggable-icon"}):void 0,t("ez-check",{label:e.label,value:e.check,onEzChange:i=>this.ezCheckChange.emit({id:e.id,label:e.label,check:i.detail})}))),!!this.itemSlotBuilder&&this.getContainerItemBuilder("right",e))))),t("div",{class:"last-droppable-space",onDragLeave:()=>this.removeOverClass(),onDragOver:e=>{this.onDragOverLastIndex(e)},onDragEnd:()=>this.onDragEnd(),onDrop:e=>this.onDropLastIndex(e)}))))}};l.style=':host {\n /* @doc Define a camada de visibilidae do componente. */\n --ez-list__host--z-index: var(--visible, 1);\n\n /* @doc Define o raio da borda do componente. */\n --ez-list__host--border-radius: var(--border--radius-medium, 12px);\n\n /* @doc Define o espaçamento entre a lista e o componente. */\n --ez-list__host--padding: var(--space--medium, 12px);\n\n /* @doc Define o espaçamento interno do ícone. */\n --ez-list__icon--padding: var(--space--small, 6px);\n\n /* @doc Define a cor do ícone de arrasto do item da lista. */\n --ez-list__icon--color: #AFB6C0;\n\n /* @doc Define o espaçamento externo do item da lista. */\n --ez-list__item--margin: 0 var(--space--small, 6px);\n\n /* @doc Define a cor do texto do item da lista. */\n --ez-list__item--color: var(--title--primary, #2b3a54);\n\n /* @doc Define o estilo borda inferior do item da lista. */\n --ez-list__item--border-bottom;\n\n /* @doc Define a cor da borda inferior do item da lista. */\n --ez-list__item--border-bottom-color;\n\n /* @doc Define o estilo do texto do item da lista. */\n --ez-list__item--font-family: var(--font-pattern, "Roboto");\n\n /* @doc Define o tamanho do texto do item da lista. */\n --ez-list__item--font-size: var(--text--medium, 14px);\n \n /* @doc Define o tipo da quebra de linha do item da lista. */\n --ez-list__item--white-space: var(--ez-list__item--white-space, nowrap);\n\n /* @doc Define o espaçamento lateral direito para items selecionados. */\n --ez-list__selectable--padding-right: var(--space--small, 6px);\n \n /* @doc Define o espaçamento lateral esquerdo para items selecionados. */\n --ez-list__selectable--padding-left: var(--space--small, 6px);\n\n /*@doc Define o raio da borda de items selecionados.*/\n --ez-list__selected-item--border-radius: var(--border--radius-small, 6px);\n \n /*@doc Define a cor de fundo de items selecionados.*/\n --ez-list__selected-item--background-color: var(--color--primary-300, #E2F4EF);\n\n /* @doc Define o estilo do texto do grupo da lista. */\n --ez-list__group--font-family: var(--font-pattern, "Roboto");\n \n /* @doc Define o tamanho do texto do grupo da lista. */\n --ez-list__group--font-size: var(--text--medium, 14px);\n \n /* @doc Define o peso do texto do grupo da lista. */\n --ez-list__group--font-weight: var(--text-weight--large, 600);\n \n /* @doc Define o espaçamento inferior do grupo da lista. */\n --ez-list__group--padding-bottom: var(--space-small, 6px);\n\n /* @doc Define o estilo do texto da área de transferência de grupos. */\n --ez-list__group-overlay--font-family: var(--font-pattern, "Roboto");\n\n /* @doc Define o tamanho do texto da área de transferência de grupos. */\n --ez-list__group-overlay--font-size: var(--text--medium, 14px);\n \n /* @doc Define a cor da borda pontilhada sobre os elementos da lista. */\n --ez-list__over--border--color: var(--color--primary, #008561);\n\n /*@doc Define a altura do container para arrasto para última posição .*/\n --ez-list__last-droppable-space--height: var(--space--small, 6px);\n \n /*@doc Define o espaçamento do container de itens arrastáveis .*/\n --ez-list__draggable-list--padding-bottom: var(--space--small, 6px);\n\n /* @doc Define a imagem do ícone de drag. */\n --ez-list__draggable-icon--image: url(\'data:image/svg+xml;utf8,<svg width="18" height="18" viewBox="0 0 18 18" xmlns="http://www.w3.org/2000/svg"><path d="m 6.75,2.25 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z m -3,3 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z m -3,3 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z m -3,3 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z m -3,3 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z"/></svg>\');\n\n /* scrollbar */\n /*@doc Define a cor da barra de rolagem do componente.*/\n --ez-list__scrollbar--color-default: var(--scrollbar--default, #626e82);\n /*@doc Define a cor de fundo da barra de rolagem do componente.*/\n --ez-list__scrollbar--color-background: var(--scrollbar--background, #E5EAF0);\n /*@doc Define a cor do hover na barra de rolagem do componente.*/\n --ez-list__scrollbar--color-hover: var(--scrollbar--hover, #2B3A54);\n /*@doc Define a cor do active na barra de rolagem do componente.*/\n --ez-list__scrollbar--color-clicked: var(--scrollbar--clicked, #a2abb9);\n /*@doc Define o raio da borda da barra de rolagem do componente.*/\n --ez-list__scrollbar--border-radius: var(--border--radius-small, 6px);\n /*@doc Define a largura da barra de rolagem do componente.*/\n --ez-list__scrollbar--width: var(--space--medium, 12px);\n\n max-height: 100%;\n width: 100%;\n background-color: #fff;\n display: flex;\n\n /*public*/\n z-index: var(--ez-list__host--z-index);\n}\n\np {\n margin: 0;\n}\n\n.draggable {\n /* private */\n width: 100%;\n display: grid;\n grid-template-columns: minmax(0px, auto) minmax(0px, auto);\n place-items: center;\n border-top: 1px dashed #fff;\n justify-content: space-between;\n\n /*public*/\n font-family: var(--ez-list__item--font-family);\n font-size: var(--ez-list__item--font-size);\n}\n\n.dragging {\n background: #FFFFFF;\n /* Primary/color--primary */\n\n border: 1px solid #008561;\n box-sizing: border-box;\n box-shadow: 0px 0px 16px rgba(0, 38, 111, 0.122);\n border-radius: 6px;\n}\n\n.selectable {\n cursor: pointer;\n\n /*public*/\n padding-right: var(--ez-list__selectable--padding-right);\n padding-left: var(--ez-list__selectable--padding-left);\n}\n\n.selectable-container {\n margin: 0px !important;\n}\n\n.hover-feedback:hover {\n background-color: var(--background--medium);\n border-radius: var(--border--radius-regular);\n}\n\n.item-content {\n display: flex;\n overflow: hidden;\n justify-content: flex-start;\n width: 100%;\n}\n\n.draggable-list {\n padding: 0;\n margin: 0;\n width: 100%;\n max-height: 100%;\n scrollbar-width: thin;\n \n /*public*/\n color: var(--text-color);\n scrollbar-color: var(--ez-list__scrollbar--color-clicked) var(--ez-list__scrollbar--color-background);\n}\n\n.draggable-list li {\n display: flex;\n \n /*public*/\n padding: var(--space--2xs, 8px) var(--space--3xs, 4px);\n margin: var(--ez-list__item--margin);\n font-family: var(--ez-list__item--font-family);\n font-size: var(--ez-list__item--font-size);\n color: var(--ez-list__item--color);\n border-bottom: var(--ez-list__item--border-bottom, none) var(--ez-list__item--border-bottom-color);\n}\n\n.over {\n /*public*/\n border-top: 1px dashed var(--ez-list__over--border--color);\n}\n\n.last-droppable-space {\n /*public*/\n height: var(--ez-list__last-droppable-space--height);\n}\n\n.draggable-selected {\n /*public*/\n background-color: var(--background--strong) !important;\n}\n\n.draggable-selected div:hover {\n /*public*/\n background-color: var(--background--strong) !important;\n}\n\n.draggable-list::-webkit-scrollbar {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-background);\n width: var(--ez-list__scrollbar--width);\n max-width: var(--ez-list__scrollbar--width);\n min-width: var(--ez-list__scrollbar--width);\n}\n\n.draggable-list::-webkit-scrollbar-track {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-background);\n border-radius: var(--ez-list__scrollbar--border-radius);\n}\n\n.draggable-list::-webkit-scrollbar-thumb {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-default);\n border-radius: var(--ez-list__scrollbar--border-radius);\n}\n\n.draggable-list::-webkit-scrollbar-thumb:vertical:hover,\n.draggable-list::-webkit-scrollbar-thumb:horizontal:hover {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-hover);\n}\n\n.draggable-list::-webkit-scrollbar-thumb:vertical:active,\n.draggable-list::-webkit-scrollbar-thumb:horizontal:active {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-clicked);\n}\n\n.draggable-icon {\n align-items: flex-start;\n display: flex;\n outline: none;\n border: none;\n background-color: unset;\n}\n\n.draggable-icon::after {\n content: \'\';\n display: flex;\n width: 18px;\n height: 18px;\n\n /*public*/\n background-color: var(--ez-list__icon--color);\n -webkit-mask-image: var(--ez-list__draggable-icon--image);\n mask-image: var(--ez-list__draggable-icon--image);\n}\n\n* {\n box-sizing: border-box;\n}\n\n.checkbox {\n width: fit-content;\n}\n\n.text--ellipsis {\n overflow: hidden;\n text-overflow: ellipsis;\n \n /*public*/\n white-space: var(--ez-list__item--white-space);\n}\n\n.group-container {\n display: flex;\n flex-direction: column;\n max-height: 100%;\n overflow-y: auto;\n outline: none;\n width: 100%;\n scrollbar-width: thin;\n\n /*public*/\n scrollbar-color: var(--ez-list__scrollbar--color-clicked) var(--ez-list__scrollbar--color-background);\n}\n\n.group-name {\n -webkit-user-select: none;\n -moz-user-select: -moz-none;\n -ms-user-select: none;\n user-select: none;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n /*public*/\n color: var(--title--primary);\n font-family: var(--ez-list__group--font-family);\n font-size: var(--ez-list__group--font-size);\n font-weight: var(--ez-list__group--font-weight);\n padding-bottom: var(--ez-list__group--padding-bottom);\n}\n\n.group {\n display: flex;\n flex-direction: column;\n}\n\n.group-container::-webkit-scrollbar {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-background);\n width: var(--ez-list__scrollbar--width);\n max-width: var(--ez-list__scrollbar--width);\n min-width: var(--ez-list__scrollbar--width);\n}\n\n.group-container::-webkit-scrollbar-track {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-background);\n border-radius: var(--ez-list__scrollbar--border-radius);\n}\n\n.group-container::-webkit-scrollbar-thumb {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-default);\n border-radius: var(--ez-list__scrollbar--border-radius);\n}\n\n.group-container::-webkit-scrollbar-thumb:vertical:hover,\n.group-container::-webkit-scrollbar-thumb:horizontal:hover {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-hover);\n}\n\n.group-container::-webkit-scrollbar-thumb:vertical:active,\n.group-container::-webkit-scrollbar-thumb:horizontal:active {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-clicked);\n}\n\n.section-container {\n display: flex;\n position: relative;\n height: 100%;\n}\n\n.items-container {\n width: 100%;\n max-height: 100%;\n outline: none;\n scrollbar-width: thin;\n\n /*public*/\n scrollbar-color: var(--ez-list__scrollbar--color-clicked) var(--ez-list__scrollbar--color-background);\n}\n\n.group-items-container {\n width: 100%;\n max-height: 100%;\n height: 100%;\n outline: none;\n}\n\n.items-container::-webkit-scrollbar {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-background);\n width: var(--ez-list__scrollbar--width);\n max-width: var(--ez-list__scrollbar--width);\n min-width: var(--ez-list__scrollbar--width);\n}\n\n.items-container::-webkit-scrollbar-track {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-background);\n border-radius: var(--ez-list__scrollbar--border-radius);\n}\n\n.items-container::-webkit-scrollbar-thumb {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-default);\n border-radius: var(--ez-list__scrollbar--border-radius);\n}\n\n.items-container::-webkit-scrollbar-thumb:vertical:hover,\n.items-container::-webkit-scrollbar-thumb:horizontal:hover {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-hover);\n}\n\n.items-container::-webkit-scrollbar-thumb:vertical:active,\n.items-container::-webkit-scrollbar-thumb:horizontal:active {\n /*public*/\n background-color: var(--ez-list__scrollbar--color-clicked);\n}\n\n.group-overlay {\n background: rgba(226, 244, 239, 0.8);\n border: 1px solid #008561;\n border-radius: 8px;\n position: absolute;\n display: none;\n place-items: center;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 2;\n margin: 0;\n cursor: pointer;\n\n /*public*/\n font-family: var(--ez-list__group-overlay--font-family);\n font-size: var(--ez-list__group-overlay--font-size);\n}\n\n.presetedHeight {\n min-height: 100px;\n}\n\n.overlay-text {\n position: absolute;\n top: 50%;\n left: 50%;\n font-size: 50px;\n color: white;\n transform: translate(-50%, -50%);\n -ms-transform: translate(-50%, -50%);\n}\n\n.selected-item {\n /*public*/\n background: var(--ez-list__selected-item--background-color);\n border-radius: var(--ez-list__selected-item--border-radius);\n}\n\n.slot-item {\n align-items: flex-end;\n}\n\n.overGroup {\n background: rgba(226, 244, 239, 0.8);\n border: 1px solid #008561;\n box-sizing: border-box;\n border-radius: 8px;\n padding-top: 6px;\n}';export{l as ez_list}
@@ -1 +1 @@
1
- import{r as t,f as e,h as i,H as o,g as s}from"./p-e318d280.js";import{ElementIDUtils as a}from"@sankhyalabs/core";const n=class{constructor(e){t(this,e),this._nextMessages=[],this._currentMessageInfo={message:"",fadeTime:void 0,useIcon:void 0},this._toastOpenedClass="toast__container--opened",this._lastTimeOut=void 0,this._lang="pt",this.message=void 0,this.fadeTime=5e3,this.useIcon=!1,this.canClose=!0}async show(t,i,o,s){const a=void 0!==s?s:this.canClose;return new Promise((s=>{var n;if(null===(n=this.container)||void 0===n?void 0:n.classList.contains(this._toastOpenedClass)){if(this.isRepeatedMessage(t))return;this._nextMessages.push({message:t,fadeTime:i,useIcon:o,canClose:a,callBack:s})}else this._currentMessageInfo.message=t||this.message,this._currentMessageInfo.fadeTime=i||this.fadeTime,this._currentMessageInfo.useIcon=o||this.useIcon,this._currentMessageInfo.callBack=s,a&&(this._currentMessageInfo.canClose=a),e(this),this.displayToast(),this._lastTimeOut=setTimeout((()=>{this.hideToast()}),this._currentMessageInfo.fadeTime+400)}))}hideToast(){this.makeToastInvisible(),this._nextMessages.length>0&&(this._currentMessageInfo.callBack&&this._currentMessageInfo.callBack(!0),setTimeout((()=>{let t=this._nextMessages.shift();this.show(t.message,t.fadeTime,t.useIcon)}))),this._currentMessageInfo.callBack&&this._currentMessageInfo.callBack(!0)}isRepeatedMessage(t){var e,i;return(null===(e=this._nextMessages)||void 0===e?void 0:e.some((e=>e.message===t)))||(null===(i=this._currentMessageInfo)||void 0===i?void 0:i.message)===t}makeToastInvisible(){this.container.classList.remove(this._toastOpenedClass),this.container.style.animation="none",this._lastTimeOut&&clearTimeout(this._lastTimeOut)}displayToast(){this.container.classList.add(this._toastOpenedClass),this.container.style.animation=`fadein 0.5s, fadeout 0.5s ${this.fadeTime/1e3}s`}buildDataElementId(){var t,e;const i=a.addIDInfo(this._element),o=a.DATA_ELEMENT_ID_ATTRIBUTE_NAME;null===(t=this._elemBtnClose)||void 0===t||t.setAttribute(o,`${i}_buttonClose`),null===(e=this._elemText)||void 0===e||e.setAttribute(o,`${i}_title`)}componentDidLoad(){this.buildDataElementId()}render(){return i(o,null,i("div",{ref:t=>this.container=t,class:"toast__container"},this._currentMessageInfo.useIcon&&i("slot",{name:"icon"}),i("div",{lang:this._lang,ref:t=>this._elemText=t,class:this._currentMessageInfo.useIcon?"message__container message__container--icon":"message__container",title:this._currentMessageInfo.message,innerHTML:this._currentMessageInfo.message}),this._currentMessageInfo.canClose&&i("button",{class:"btn-close",onClick:()=>{this.hideToast()},ref:t=>this._elemBtnClose=t})))}get _element(){return s(this)}};n.style=':host{--ez-toast__btn__close__image:url(\'data:image/svg+xml;utf8,<svg width="12" height="12" viewBox="0 0 12 12" xmlns="http://www.w3.org/2000/svg%22%3E<path d="M 7.0060773,5.995511 11.461972,1.5397722 c 0.132856,-0.1328413 0.207547,-0.3130253 0.207547,-0.5009046 0,-0.18786999 -0.07469,-0.3680541 -0.207547,-0.5009048 -0.132857,-0.13284126 -0.31302,-0.20748126 -0.500927,-0.20748126 -0.187812,0 -0.36807,0.07464 -0.500926,0.20748126 L 6.0042244,4.9937015 1.5482921,0.5379628 C 1.4154357,0.40512154 1.2352533,0.33048154 1.0473657,0.33048154 c -0.18787813,0 -0.36807,0.07464 -0.50092647,0.20748126 -0.13285646,0.1328507 -0.20749026,0.31303481 -0.20749026,0.5009048 0,0.1878793 0.0746338,0.3680633 0.20749026,0.5009046 L 5.0023715,5.995511 0.54643923,10.452213 c -0.0676086,0.06534 -0.12151598,0.14352 -0.15859681,0.229916 -0.0370714,0.08639 -0.0565645,0.1794 -0.0573369,0.27335 -7.724e-4,0.09404 0.0171873,0.187331 0.0528423,0.274293 0.0356455,0.08705 0.0882688,0.166087 0.15479148,0.23256 0.0665321,0.06648 0.14562277,0.11897 0.2326735,0.154567 0.0870507,0.0356 0.18031463,0.05344 0.2743433,0.05259 0.094029,-8.5e-4 0.1869528,-0.02049 0.2733331,-0.0576 0.08639,-0.0372 0.1645078,-0.09121 0.2298029,-0.158817 L 6.0042244,6.9973204 10.460119,11.453078 c 0.132856,0.132851 0.313114,0.207444 0.500926,0.207444 0.187907,0 0.36807,-0.07459 0.500927,-0.207444 0.132856,-0.13285 0.207547,-0.313006 0.207547,-0.500904 0,-0.187898 -0.07469,-0.368054 -0.207547,-0.500905 z"/></svg>\');--ez-toast__container--z-index:var(--elevation--100, 100);--ez-toast__container--background-color:var(--color--secondary, #383c45);--ez-toast__container--left:var(--space--large, 24px);--ez-toast__container--bottom:var(--space--large, 24px);--ez-toast__container--width:400px;--ez-toast__icon--padding-left:var(--space--small, 6px)}.toast__container{position:fixed;display:flex;box-sizing:border-box;border-radius:6px;align-items:center;padding:12px;visibility:hidden;width:var(--ez-toast__container--width);left:var(--ez-toast__container--left);bottom:var(--ez-toast__container--bottom);z-index:var(--ez-toast__container--z-index);background-color:var(--ez-toast__container--background-color)}.message__container{text-shadow:0 0 0 #353535, 0 0 1px transparent;color:#FFFFFF;font-size:14px;width:90%;overflow:hidden;hyphens:auto;height:auto;-webkit-box-orient:vertical;-webkit-line-clamp:4;display:-webkit-box;text-overflow:ellipsis;font-family:var(--font-pattern, "Roboto")}.message__container--icon{width:80%;padding-left:var(--ez-toast__icon--padding-left)}.btn-close{margin-top:3px;display:flex;justify-content:flex-end;align-self:flex-start;padding:0;outline:none;width:10%;border:none;background-color:unset;cursor:pointer}.btn-close::after{content:\'\';display:flex;background-color:#FFFFFF;width:12px;height:12px;-webkit-mask-image:var(--ez-toast__btn__close__image);mask-image:var(--ez-toast__btn__close__image)}.toast__container--opened{animation:fadein 0.5s, fadeout 0.5s 3s;visibility:visible}@-webkit-keyframes fadein{from{opacity:0;left:calc(var(--ez-toast__container--left) * -1)}to{opacity:1;left:var(--ez-toast__container--left)}}@keyframes fadein{from{opacity:0;left:calc(var(--ez-toast__container--left) * -1)}to{opacity:1;left:var(--ez-toast__container--left)}}@-webkit-keyframes fadeout{from{opacity:1;left:var(--ez-toast__container--left)}to{bottom:0;opacity:0}}@keyframes fadeout{from{opacity:1;left:var(--ez-toast__container--left)}to{bottom:0;opacity:0}}';export{n as ez_toast}
1
+ import{r as t,f as e,h as i,H as o,g as s}from"./p-23a36bb6.js";import{ElementIDUtils as a}from"@sankhyalabs/core";const n=class{constructor(e){t(this,e),this._nextMessages=[],this._currentMessageInfo={message:"",fadeTime:void 0,useIcon:void 0},this._toastOpenedClass="toast__container--opened",this._lastTimeOut=void 0,this._lang="pt",this.message=void 0,this.fadeTime=5e3,this.useIcon=!1,this.canClose=!0}async show(t,i,o,s){const a=void 0!==s?s:this.canClose;return new Promise((s=>{var n;if(null===(n=this.container)||void 0===n?void 0:n.classList.contains(this._toastOpenedClass)){if(this.isRepeatedMessage(t))return;this._nextMessages.push({message:t,fadeTime:i,useIcon:o,canClose:a,callBack:s})}else this._currentMessageInfo.message=t||this.message,this._currentMessageInfo.fadeTime=i||this.fadeTime,this._currentMessageInfo.useIcon=o||this.useIcon,this._currentMessageInfo.callBack=s,a&&(this._currentMessageInfo.canClose=a),e(this),this.displayToast(),this._lastTimeOut=setTimeout((()=>{this.hideToast()}),this._currentMessageInfo.fadeTime+400)}))}hideToast(){this.makeToastInvisible(),this._nextMessages.length>0&&(this._currentMessageInfo.callBack&&this._currentMessageInfo.callBack(!0),setTimeout((()=>{let t=this._nextMessages.shift();this.show(t.message,t.fadeTime,t.useIcon)}))),this._currentMessageInfo.callBack&&this._currentMessageInfo.callBack(!0)}isRepeatedMessage(t){var e,i;return(null===(e=this._nextMessages)||void 0===e?void 0:e.some((e=>e.message===t)))||(null===(i=this._currentMessageInfo)||void 0===i?void 0:i.message)===t}makeToastInvisible(){this.container.classList.remove(this._toastOpenedClass),this.container.style.animation="none",this._lastTimeOut&&clearTimeout(this._lastTimeOut)}displayToast(){this.container.classList.add(this._toastOpenedClass),this.container.style.animation=`fadein 0.5s, fadeout 0.5s ${this.fadeTime/1e3}s`}buildDataElementId(){var t,e;const i=a.addIDInfo(this._element),o=a.DATA_ELEMENT_ID_ATTRIBUTE_NAME;null===(t=this._elemBtnClose)||void 0===t||t.setAttribute(o,`${i}_buttonClose`),null===(e=this._elemText)||void 0===e||e.setAttribute(o,`${i}_title`)}componentDidLoad(){this.buildDataElementId()}render(){return i(o,null,i("div",{ref:t=>this.container=t,class:"toast__container"},this._currentMessageInfo.useIcon&&i("slot",{name:"icon"}),i("div",{lang:this._lang,ref:t=>this._elemText=t,class:this._currentMessageInfo.useIcon?"message__container message__container--icon":"message__container",title:this._currentMessageInfo.message,innerHTML:this._currentMessageInfo.message}),this._currentMessageInfo.canClose&&i("button",{class:"btn-close",onClick:()=>{this.hideToast()},ref:t=>this._elemBtnClose=t})))}get _element(){return s(this)}};n.style=':host{--ez-toast__btn__close__image:url(\'data:image/svg+xml;utf8,<svg width="12" height="12" viewBox="0 0 12 12" xmlns="http://www.w3.org/2000/svg%22%3E<path d="M 7.0060773,5.995511 11.461972,1.5397722 c 0.132856,-0.1328413 0.207547,-0.3130253 0.207547,-0.5009046 0,-0.18786999 -0.07469,-0.3680541 -0.207547,-0.5009048 -0.132857,-0.13284126 -0.31302,-0.20748126 -0.500927,-0.20748126 -0.187812,0 -0.36807,0.07464 -0.500926,0.20748126 L 6.0042244,4.9937015 1.5482921,0.5379628 C 1.4154357,0.40512154 1.2352533,0.33048154 1.0473657,0.33048154 c -0.18787813,0 -0.36807,0.07464 -0.50092647,0.20748126 -0.13285646,0.1328507 -0.20749026,0.31303481 -0.20749026,0.5009048 0,0.1878793 0.0746338,0.3680633 0.20749026,0.5009046 L 5.0023715,5.995511 0.54643923,10.452213 c -0.0676086,0.06534 -0.12151598,0.14352 -0.15859681,0.229916 -0.0370714,0.08639 -0.0565645,0.1794 -0.0573369,0.27335 -7.724e-4,0.09404 0.0171873,0.187331 0.0528423,0.274293 0.0356455,0.08705 0.0882688,0.166087 0.15479148,0.23256 0.0665321,0.06648 0.14562277,0.11897 0.2326735,0.154567 0.0870507,0.0356 0.18031463,0.05344 0.2743433,0.05259 0.094029,-8.5e-4 0.1869528,-0.02049 0.2733331,-0.0576 0.08639,-0.0372 0.1645078,-0.09121 0.2298029,-0.158817 L 6.0042244,6.9973204 10.460119,11.453078 c 0.132856,0.132851 0.313114,0.207444 0.500926,0.207444 0.187907,0 0.36807,-0.07459 0.500927,-0.207444 0.132856,-0.13285 0.207547,-0.313006 0.207547,-0.500904 0,-0.187898 -0.07469,-0.368054 -0.207547,-0.500905 z"/></svg>\');--ez-toast__container--z-index:var(--elevation--100, 100);--ez-toast__container--background-color:var(--color--secondary, #383c45);--ez-toast__container--left:var(--space--large, 24px);--ez-toast__container--bottom:var(--space--large, 24px);--ez-toast__container--width:400px;--ez-toast__icon--padding-left:var(--space--small, 6px)}.toast__container{position:fixed;display:flex;box-sizing:border-box;border-radius:6px;align-items:center;padding:12px;visibility:hidden;width:var(--ez-toast__container--width);left:var(--ez-toast__container--left);bottom:var(--ez-toast__container--bottom);z-index:var(--ez-toast__container--z-index);background-color:var(--ez-toast__container--background-color)}.message__container{text-shadow:0 0 0 #353535, 0 0 1px transparent;color:#FFFFFF;font-size:14px;width:90%;overflow:hidden;hyphens:auto;height:auto;-webkit-box-orient:vertical;-webkit-line-clamp:4;display:-webkit-box;text-overflow:ellipsis;font-family:var(--font-pattern, "Roboto")}.message__container--icon{width:80%;padding-left:var(--ez-toast__icon--padding-left)}.btn-close{margin-top:3px;display:flex;justify-content:flex-end;align-self:flex-start;padding:0;outline:none;width:10%;border:none;background-color:unset;cursor:pointer}.btn-close::after{content:\'\';display:flex;background-color:#FFFFFF;width:12px;height:12px;-webkit-mask-image:var(--ez-toast__btn__close__image);mask-image:var(--ez-toast__btn__close__image)}.toast__container--opened{animation:fadein 0.5s, fadeout 0.5s 3s;visibility:visible}@-webkit-keyframes fadein{from{opacity:0;left:calc(var(--ez-toast__container--left) * -1)}to{opacity:1;left:var(--ez-toast__container--left)}}@keyframes fadein{from{opacity:0;left:calc(var(--ez-toast__container--left) * -1)}to{opacity:1;left:var(--ez-toast__container--left)}}@-webkit-keyframes fadeout{from{opacity:1;left:var(--ez-toast__container--left)}to{bottom:0;opacity:0}}@keyframes fadeout{from{opacity:1;left:var(--ez-toast__container--left)}to{bottom:0;opacity:0}}';export{n as ez_toast}
@@ -1 +1 @@
1
- import{r as t,c as e,h as a,H as r,g as o}from"./p-e318d280.js";import{ElementIDUtils as i}from"@sankhyalabs/core";const s=class{constructor(a){t(this,a),this.ezChange=e(this,"ezChange",7),this.label=void 0,this.value=void 0,this.enabled=!0,this.errorMessage=void 0,this.rows=4,this.canShowError=!0,this.mode="regular",this.enableResize=!1}observeErrorMessage(){var t,e,a,r;"string"==typeof this.errorMessage&&""!==this.errorMessage?(null===(t=this._container)||void 0===t||t.classList.add("hasError"),null===(e=this._messageBoxElem)||void 0===e||e.classList.add("hasError")):(null===(a=this._container)||void 0===a||a.classList.remove("hasError"),null===(r=this._messageBoxElem)||void 0===r||r.classList.remove("hasError"))}observeValue(t,e){this._inputElem&&t!=e&&(this.canChangeValue()&&(this._inputElem.value=this.value||""),this.adjustFloatingLabel(),this.errorMessage="",this.ezChange.emit(this.value))}observeMode(){null==this._initialRows&&(this._initialRows=this.rows>0?this.rows:void 0);const t=this._initialRows>0?this._initialRows:"slim"!=this.mode?4:2;t!==this.rows&&(this.rows=t)}observeRows(){const t=this.rows>0?this.rows:"slim"!=this.mode?4:2;t!==this.rows&&(this.rows=t,this._initialRows=t)}async appendTextToSelection(t){var e,a,r,o;const i=this._inputElem.selectionStart,s=this._inputElem.selectionEnd,l=null!==(a=null===(e=this.value)||void 0===e?void 0:e.substring(0,i))&&void 0!==a?a:"",n=null!==(o=null===(r=this.value)||void 0===r?void 0:r.substring(s))&&void 0!==o?o:"";this.value=`${l}${t}${n}`;const h=i+t.length;this._inputElem.setSelectionRange(i===s?h:i,h),await this.setFocus()}async setFocus(){this._inputElem.focus()}async setBlur(){this._inputElem.blur()}async isInvalid(){return"string"==typeof this.errorMessage&&""!==this.errorMessage.trim()}canChangeValue(){return this._inputElem&&(this.value||"")!==this._inputElem.value}adjustFloatingLabel(){if(this.label&&this._labelElem){const t=this.value&&this.value.toString().length>0,e=this._labelElem.classList.contains("textarea__label--floated");t||this.isFocused()?e||this._labelElem.classList.add("textarea__label--floated"):e&&this._labelElem.classList.remove("textarea__label--floated")}}isFocused(){return null!==this._hostElement.shadowRoot.activeElement}handleFocusout(){this.adjustFloatingLabel(),this._container&&this._container.classList.contains("textarea--focus")&&this._container.classList.remove("textarea--focus")}handleChange(){this.canChangeValue()&&(this.value=this._inputElem.value)}handleFocus(){this.label&&this._labelElem&&!this._labelElem.classList.contains("textarea__label--floated")&&this._labelElem.classList.add("textarea__label--floated"),this._container&&!this._container.classList.contains("textarea--focus")&&this._container.classList.add("textarea--focus")}componentDidLoad(){this.observeErrorMessage(),this.adjustFloatingLabel(),this.observeMode()}render(){return i.addIDInfoIfNotExists(this._hostElement,"input"),a(r,null,a("div",{class:"textarea",ref:t=>this._container=t},this.label&&"slim"!=this.mode?a("label",{ref:t=>this._labelElem=t,class:this.enabled?"textarea__label":"textarea__label textarea__label--disabled",onClick:()=>this._inputElem.focus(),title:this.label},this.label):null,a("textarea",{onFocus:()=>this.handleFocus(),"data-element-id":i.getInternalIDInfo("input"),ref:t=>this._inputElem=t,value:this.value,disabled:!this.enabled,class:{"textarea--slim":"slim"===this.mode,"textarea--resizable":this.enableResize},placeholder:"slim"===this.mode&&this.label?this.label:"",onInput:()=>{this.handleChange()},onFocusout:()=>{this.handleFocusout()},rows:this.rows})),this.canShowError&&"slim"!=this.mode&&a("span",{class:"message-box",ref:t=>this._messageBoxElem=t,title:this.errorMessage},this.errorMessage))}get _hostElement(){return o(this)}static get watchers(){return{errorMessage:["observeErrorMessage"],value:["observeValue"],mode:["observeMode"],rows:["observeRows"]}}};s.style=":host{--text-area--width:100%;--text-area--border-radius:var(--border--radius-medium, 12px);--text-area--font-size:var(--text--medium, 14px);--text-area--font-family:var(--font-pattern, Arial);--text-area--font-weight:var(--text-weight--medium, 400);--text-area--color:var(--title--primary, #000);--text-area__input--background-color:var(--background--medium, #e0e0e0);--text-area__input--border:var(--border--medium, 2px solid);--text-area__input--border-color:var(--text-area__input--background-color);--text-area__input--focus--border-color:var(--color--primary, #008561);--text-area__input--disabled--background-color:var(--color--disable-secondary, #F2F5F8);--text-area__input--disabled--color:var(--text--disable, #AFB6C0);--text-area__input--error--border-color:#CC2936;--text-area__message_box--font-size:var(--text--small, 12px);--text-area__message_box--info--color:var(--color--success, #22085d);--text-area__message_box--error--color:var(--color--error, #FF0000);--text-area__label--floating--top:6px;--text-area__label--padding-top:12px;--text-area__label--padding-left:14px;--text-area__label--padding-right:12px;display:flex;flex-wrap:wrap;position:relative;width:var(--text-area--width)}textarea{box-sizing:border-box;border:none;resize:none;width:100%;padding:0;background:none;font-weight:var(--text-area--font-weight);font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);color:var(--text-area--color);margin-top:calc(var(--space--medium, 12px) + 4px)}textarea:focus{outline:none}textarea:disabled{background-color:transparent;color:var(--text-area__input--disabled--color)}.textarea{width:100%;box-sizing:border-box;padding-left:var(--space--medium);padding-right:var(--space--extra-small);border-radius:var(--text-area--border-radius);border:var(--text-area__input--border);border-color:var(--text-area__input--border-color);background-color:var(--text-area__input--background-color)}.textarea--resizable{resize:both}.textarea--focus{border-color:var(--text-area__input--focus--border-color)}.textarea.hasError{color:var(--text-area--color);border-color:var(--text-area__input--error--border-color)}.message-box{min-height:16px;min-width:100%;margin-top:3px;line-height:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--text-area--font-family);font-size:var(--text-area__message_box--font-size);color:var(--text-area__message_box--info--color)}.hasError{color:var(--text-area__message_box--error--color)}.textarea__label{box-sizing:border-box;position:absolute;z-index:var(--visible);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-transition:font-size .05s, top .05s;transition:font-size .05s, top .05s;width:calc(100% - var(--text-area__label--padding-right));left:var(--text-area--space--medium);font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);font-weight:var(--text-area--font-weight);color:var(--text-area--color);top:var(--text-area__label--padding-top);left:var(--text-area__label--padding-left);padding-right:var(--text-area__label--padding-right)}.textarea__label--floated{font-family:var(--text-area--font-family);font-size:var(--text--extra-small);color:var(--text--primary);top:var(--text-area__label--floating--top)}.textarea__label--disabled{color:var(--text-area__input--disabled--color)}.textarea--slim{margin-top:var(--space--small, 6px)}.textarea--slim::-webkit-input-placeholder{font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);font-weight:var(--text-area--font-weight);color:var(--text-area--color)}.textarea--slim:-moz-placeholder{font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);font-weight:var(--text-area--font-weight);color:var(--text-area--color)}.textarea--slim::-moz-placeholder{font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);font-weight:var(--text-area--font-weight);color:var(--text-area--color)}.textarea--slim:-ms-input-placeholder{font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);font-weight:var(--text-area--font-weight);color:var(--text-area--color)}.textarea--slim::placeholder{font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);font-weight:var(--text-area--font-weight);color:var(--text-area--color)}.textarea--slim:disabled::-webkit-input-placeholder{color:var(--text-area__input--disabled--color)}.textarea--slim:disabled:-moz-placeholder{color:var(--text-area__input--disabled--color)}.textarea--slim:disabled::-moz-placeholder{color:var(--text-area__input--disabled--color)}.textarea--slim:disabled:-ms-input-placeholder{color:var(--text-area__input--disabled--color)}.textarea--slim:disabled::placeholder{color:var(--text-area__input--disabled--color)}";export{s as ez_text_area}
1
+ import{r as t,c as e,h as a,H as r,g as o}from"./p-23a36bb6.js";import{ElementIDUtils as i}from"@sankhyalabs/core";const s=class{constructor(a){t(this,a),this.ezChange=e(this,"ezChange",7),this.label=void 0,this.value=void 0,this.enabled=!0,this.errorMessage=void 0,this.rows=4,this.canShowError=!0,this.mode="regular",this.enableResize=!1}observeErrorMessage(){var t,e,a,r;"string"==typeof this.errorMessage&&""!==this.errorMessage?(null===(t=this._container)||void 0===t||t.classList.add("hasError"),null===(e=this._messageBoxElem)||void 0===e||e.classList.add("hasError")):(null===(a=this._container)||void 0===a||a.classList.remove("hasError"),null===(r=this._messageBoxElem)||void 0===r||r.classList.remove("hasError"))}observeValue(t,e){this._inputElem&&t!=e&&(this.canChangeValue()&&(this._inputElem.value=this.value||""),this.adjustFloatingLabel(),this.errorMessage="",this.ezChange.emit(this.value))}observeMode(){null==this._initialRows&&(this._initialRows=this.rows>0?this.rows:void 0);const t=this._initialRows>0?this._initialRows:"slim"!=this.mode?4:2;t!==this.rows&&(this.rows=t)}observeRows(){const t=this.rows>0?this.rows:"slim"!=this.mode?4:2;t!==this.rows&&(this.rows=t,this._initialRows=t)}async appendTextToSelection(t){var e,a,r,o;const i=this._inputElem.selectionStart,s=this._inputElem.selectionEnd,l=null!==(a=null===(e=this.value)||void 0===e?void 0:e.substring(0,i))&&void 0!==a?a:"",n=null!==(o=null===(r=this.value)||void 0===r?void 0:r.substring(s))&&void 0!==o?o:"";this.value=`${l}${t}${n}`;const h=i+t.length;this._inputElem.setSelectionRange(i===s?h:i,h),await this.setFocus()}async setFocus(){this._inputElem.focus()}async setBlur(){this._inputElem.blur()}async isInvalid(){return"string"==typeof this.errorMessage&&""!==this.errorMessage.trim()}canChangeValue(){return this._inputElem&&(this.value||"")!==this._inputElem.value}adjustFloatingLabel(){if(this.label&&this._labelElem){const t=this.value&&this.value.toString().length>0,e=this._labelElem.classList.contains("textarea__label--floated");t||this.isFocused()?e||this._labelElem.classList.add("textarea__label--floated"):e&&this._labelElem.classList.remove("textarea__label--floated")}}isFocused(){return null!==this._hostElement.shadowRoot.activeElement}handleFocusout(){this.adjustFloatingLabel(),this._container&&this._container.classList.contains("textarea--focus")&&this._container.classList.remove("textarea--focus")}handleChange(){this.canChangeValue()&&(this.value=this._inputElem.value)}handleFocus(){this.label&&this._labelElem&&!this._labelElem.classList.contains("textarea__label--floated")&&this._labelElem.classList.add("textarea__label--floated"),this._container&&!this._container.classList.contains("textarea--focus")&&this._container.classList.add("textarea--focus")}componentDidLoad(){this.observeErrorMessage(),this.adjustFloatingLabel(),this.observeMode()}render(){return i.addIDInfoIfNotExists(this._hostElement,"input"),a(r,null,a("div",{class:"textarea",ref:t=>this._container=t},this.label&&"slim"!=this.mode?a("label",{ref:t=>this._labelElem=t,class:this.enabled?"textarea__label":"textarea__label textarea__label--disabled",onClick:()=>this._inputElem.focus(),title:this.label},this.label):null,a("textarea",{onFocus:()=>this.handleFocus(),"data-element-id":i.getInternalIDInfo("input"),ref:t=>this._inputElem=t,value:this.value,disabled:!this.enabled,class:{"textarea--slim":"slim"===this.mode,"textarea--resizable":this.enableResize},placeholder:"slim"===this.mode&&this.label?this.label:"",onInput:()=>{this.handleChange()},onFocusout:()=>{this.handleFocusout()},rows:this.rows})),this.canShowError&&"slim"!=this.mode&&a("span",{class:"message-box",ref:t=>this._messageBoxElem=t,title:this.errorMessage},this.errorMessage))}get _hostElement(){return o(this)}static get watchers(){return{errorMessage:["observeErrorMessage"],value:["observeValue"],mode:["observeMode"],rows:["observeRows"]}}};s.style=":host{--text-area--width:100%;--text-area--border-radius:var(--border--radius-medium, 12px);--text-area--font-size:var(--text--medium, 14px);--text-area--font-family:var(--font-pattern, Arial);--text-area--font-weight:var(--text-weight--medium, 400);--text-area--color:var(--title--primary, #000);--text-area__input--background-color:var(--background--medium, #e0e0e0);--text-area__input--border:var(--border--medium, 2px solid);--text-area__input--border-color:var(--text-area__input--background-color);--text-area__input--focus--border-color:var(--color--primary, #008561);--text-area__input--disabled--background-color:var(--color--disable-secondary, #F2F5F8);--text-area__input--disabled--color:var(--text--disable, #AFB6C0);--text-area__input--error--border-color:#CC2936;--text-area__message_box--font-size:var(--text--small, 12px);--text-area__message_box--info--color:var(--color--success, #22085d);--text-area__message_box--error--color:var(--color--error, #FF0000);--text-area__label--floating--top:6px;--text-area__label--padding-top:12px;--text-area__label--padding-left:14px;--text-area__label--padding-right:12px;display:flex;flex-wrap:wrap;position:relative;width:var(--text-area--width)}textarea{box-sizing:border-box;border:none;resize:none;width:100%;padding:0;background:none;font-weight:var(--text-area--font-weight);font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);color:var(--text-area--color);margin-top:calc(var(--space--medium, 12px) + 4px)}textarea:focus{outline:none}textarea:disabled{background-color:transparent;color:var(--text-area__input--disabled--color)}.textarea{width:100%;box-sizing:border-box;padding-left:var(--space--medium);padding-right:var(--space--extra-small);border-radius:var(--text-area--border-radius);border:var(--text-area__input--border);border-color:var(--text-area__input--border-color);background-color:var(--text-area__input--background-color)}.textarea--resizable{resize:both}.textarea--focus{border-color:var(--text-area__input--focus--border-color)}.textarea.hasError{color:var(--text-area--color);border-color:var(--text-area__input--error--border-color)}.message-box{min-height:16px;min-width:100%;margin-top:3px;line-height:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--text-area--font-family);font-size:var(--text-area__message_box--font-size);color:var(--text-area__message_box--info--color)}.hasError{color:var(--text-area__message_box--error--color)}.textarea__label{box-sizing:border-box;position:absolute;z-index:var(--visible);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-transition:font-size .05s, top .05s;transition:font-size .05s, top .05s;width:calc(100% - var(--text-area__label--padding-right));left:var(--text-area--space--medium);font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);font-weight:var(--text-area--font-weight);color:var(--text-area--color);top:var(--text-area__label--padding-top);left:var(--text-area__label--padding-left);padding-right:var(--text-area__label--padding-right)}.textarea__label--floated{font-family:var(--text-area--font-family);font-size:var(--text--extra-small);color:var(--text--primary);top:var(--text-area__label--floating--top)}.textarea__label--disabled{color:var(--text-area__input--disabled--color)}.textarea--slim{margin-top:var(--space--small, 6px)}.textarea--slim::-webkit-input-placeholder{font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);font-weight:var(--text-area--font-weight);color:var(--text-area--color)}.textarea--slim:-moz-placeholder{font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);font-weight:var(--text-area--font-weight);color:var(--text-area--color)}.textarea--slim::-moz-placeholder{font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);font-weight:var(--text-area--font-weight);color:var(--text-area--color)}.textarea--slim:-ms-input-placeholder{font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);font-weight:var(--text-area--font-weight);color:var(--text-area--color)}.textarea--slim::placeholder{font-family:var(--text-area--font-family);font-size:var(--text-area--font-size);font-weight:var(--text-area--font-weight);color:var(--text-area--color)}.textarea--slim:disabled::-webkit-input-placeholder{color:var(--text-area__input--disabled--color)}.textarea--slim:disabled:-moz-placeholder{color:var(--text-area__input--disabled--color)}.textarea--slim:disabled::-moz-placeholder{color:var(--text-area__input--disabled--color)}.textarea--slim:disabled:-ms-input-placeholder{color:var(--text-area__input--disabled--color)}.textarea--slim:disabled::placeholder{color:var(--text-area__input--disabled--color)}";export{s as ez_text_area}
@@ -0,0 +1 @@
1
+ import{r as e,h as r,H as t,c as i,g as o,f as s}from"./p-23a36bb6.js";import{JSUtils as l,ElementIDUtils as a,StringUtils as n,ObjectUtils as c}from"@sankhyalabs/core";import{E as h}from"./p-98bb8b16.js";const d=class{constructor(r){e(this,r),this._shadowStart="ez-scroller__wrapper--shadow-start",this._shadowEnd="ez-scroller__wrapper--shadow-end",this.isActive=!1,this.direction=void 0,this.locked=!1,this.activeShadow=!1}getContainerClass(){return`ez-scroller__container ez-scroller__container--${this.direction}\n ${this.locked||!this.isActive?" ez-scroller__container--locked":""}\n `}getWrapperClass(){return`ez-scroller__wrapper ez-scroller__wrapper--${this.direction}`}finishDrag(){this._controller&&this._container.classList.remove("dragging")}updateScroller(){const e=this._container;if(null==e)return;let r;if(this.direction===h.HORIZONTAL){const{scrollWidth:t,clientWidth:i,scrollLeft:o}=e;r=t-i-Math.ceil(o),this._startHidden=e.scrollLeft>0}else if(this.direction===h.VERTICAL){const{scrollHeight:t,clientHeight:i,scrollTop:o}=e;r=t-i-Math.ceil(o),this._startHidden=e.scrollTop>0}this._endHidden=r>0,this.isActive=this._startHidden||this._endHidden||this.isActiveScroller(),this.updateShadow()}updateShadow(){const e=this._wrapper;if(!this.activeShadow||null==e)return;const r=["","start","end","middle"][Number(this._startHidden)|Number(this._endHidden)<<1];"start"===r?(e.classList.add(this._shadowStart),e.classList.remove(this._shadowEnd)):"end"===r?(e.classList.remove(this._shadowStart),e.classList.add(this._shadowEnd)):"middle"===r?(e.classList.add(this._shadowStart),e.classList.add(this._shadowEnd)):(e.classList.remove(this._shadowStart),e.classList.remove(this._shadowEnd))}configResize(){const e=this._container;null!=e&&(null!=this._resizeObserver&&this._resizeObserver.unobserve(e),this._resizeObserver=new ResizeObserver(l.debounce(this.updateScroller.bind(this),200)),this._resizeObserver.observe(e))}getContainerElement(){return r("div",{ref:e=>this._container=e,class:this.getContainerClass()},r("slot",null))}isActiveScroller(){return null!=this._container&&(this._container.scrollWidth>this._container.clientWidth||this._container.scrollHeight>this._container.clientHeight)}clickListener(e){this._controller&&this._controller.didScroll()&&(e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation())}mouseDownHandler(e){this.locked?this.finishDrag():(this._controller||(this._controller=new b(this._container)),this._controller.startDragg(e),this._container.classList.add("dragging"))}mouseUpHandler(){this.finishDrag()}mouseMoveHandler(e){this.locked?this.finishDrag():this._controller&&(0===e.buttons?this.finishDrag():this._controller.doScroll(e))}componentDidRender(){var e,r;if(null!=this._container){if(this.direction===h.BOTH)return null===(e=this._wrapper)||void 0===e||e.classList.remove(this._shadowStart),null===(r=this._wrapper)||void 0===r||r.classList.remove(this._shadowEnd),void(this.isActive=this.isActiveScroller());this._container.onscroll=this.updateScroller.bind(this),this.configResize(),this.updateScroller()}}render(){return r(t,null,this.activeShadow?r("div",{ref:e=>this._wrapper=e,class:this.getWrapperClass()},this.getContainerElement()):this.getContainerElement())}};class b{constructor(e){this.scrollablePanel=e}startDragg(e){this.startX=this.measureX(e),this.startY=this.measureY(e),this.scrollWidth=0,this.scrollHeight=0}measureX(e){return e.pageX-this.scrollablePanel.offsetLeft}measureY(e){return e.pageY-this.scrollablePanel.offsetTop}doScroll(e){const r=this.measureX(e),t=this.measureY(e);if(r!=this.startX||t!=this.startY){const e=r-this.startX,i=t-this.startY;this.startX+=e,this.startY+=i,this.scrollWidth+=Math.abs(e),this.scrollHeight+=Math.abs(i),this.scrollablePanel.scrollLeft=Math.max(0,this.scrollablePanel.scrollLeft-e),this.scrollablePanel.scrollTop=Math.max(0,this.scrollablePanel.scrollTop-i)}}didScroll(){return this.scrollHeight>5||this.scrollWidth>5}}d.style=':host{--ez-scroller--box-shadow-color:var(--background--body, #fafcff);--ez-scroller__scrollbar--color-default:var(--scrollbar--default, #626e82);--ez-scroller__scrollbar--color-background:var(--scrollbar--background, #E5EAF0);--ez-scroller__scrollbar--color-hover:var(--scrollbar--hover, #2B3A54);--ez-scroller__scrollbar--color-clicked:var(--scrollbar--clicked, #a2abb9);--ez-scroller__scrollbar--border-radius:var(--border--radius-small, 6px);--ez-scroller__scrollbar--width:var(--space--small, 6px);--ez-scroller__max-height:unset;display:flex;cursor:grab;width:100%;overflow:hidden}.dragging{cursor:grabbing}.ez-scroller__container{display:flex;overflow-y:hidden;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:transparent transparent}.ez-scroller__container--both:not(.ez-scroller__container--locked),.ez-scroller__container:not(.ez-scroller__container--locked):hover{scrollbar-color:var(--ez-scroller__scrollbar--color-clicked) var(--ez-scroller__scrollbar--color-background)}.ez-scroller__container--both{overflow-y:scroll;overflow-x:scroll;flex-wrap:wrap}.ez-scroller__container--horizontal{overflow-x:scroll;flex-direction:row}.ez-scroller__container--vertical{overflow-y:scroll;flex-direction:column;max-height:var(--ez-scroller__max-height)}.ez-scroller__container::-webkit-scrollbar{background-color:transparent;width:var(--ez-scroller__scrollbar--width);height:var(--ez-scroller__scrollbar--width);max-width:var(--ez-scroller__scrollbar--width);min-width:var(--ez-scroller__scrollbar--width)}.ez-scroller__container--both:not(.ez-scroller__container--locked)::-webkit-scrollbar,.ez-scroller__container:not(.ez-scroller__container--locked):hover::-webkit-scrollbar{background-color:var(--ez-scroller__scrollbar--color-background)}.ez-scroller__container::-webkit-scrollbar-track{visibility:hidden;background-color:transparent;border-radius:var(--ez-scroller__scrollbar--border-radius)}.ez-scroller__container--both:not(.ez-scroller__container--locked)::-webkit-scrollbar-track,.ez-scroller__container:not(.ez-scroller__container--locked):hover::-webkit-scrollbar-track{background-color:var(--ez-scroller__scrollbar--color-background)}.ez-scroller__container::-webkit-scrollbar-thumb{background-color:transparent;border-radius:var(--ez-scroller__scrollbar--border-radius)}.ez-scroller__container--both:not(.ez-scroller__container--locked)::-webkit-scrollbar-thumb,.ez-scroller__container:not(.ez-scroller__container--locked):hover::-webkit-scrollbar-thumb{background-color:var(--ez-scroller__scrollbar--color-default)}.ez-scroller__container::-webkit-scrollbar-thumb:vertical:hover,.ez-scroller__container::-webkit-scrollbar-thumb:horizontal:hover{background-color:transparent}.ez-scroller__container--both:not(.ez-scroller__container--locked)::-webkit-scrollbar-thumb:vertical:hover,.ez-scroller__container--both:not(.ez-scroller__container--locked)::-webkit-scrollbar-thumb:horizontal:hover,.ez-scroller__container:not(.ez-scroller__container--locked):hover::-webkit-scrollbar-thumb:vertical:hover,.ez-scroller__container:not(.ez-scroller__container--locked):hover::-webkit-scrollbar-thumb:horizontal:hover{background-color:var(--ez-scroller__scrollbar--color-hover)}.ez-scroller__container::-webkit-scrollbar-thumb:vertical:active,.ez-scroller__container::-webkit-scrollbar-thumb:horizontal:active{background-color:transparent}.ez-scroller__container--both:not(.ez-scroller__container--locked)::-webkit-scrollbar-thumb:vertical:active,.ez-scroller__container--both:not(.ez-scroller__container--locked)::-webkit-scrollbar-thumb:horizontal:active,.ez-scroller__container:not(.ez-scroller__container--locked):hover::-webkit-scrollbar-thumb:vertical:active,.ez-scroller__container:not(.ez-scroller__container--locked):hover::-webkit-scrollbar-thumb:horizontal:active{background-color:var(--ez-scroller__scrollbar--color-clicked)}.ez-scroller__wrapper{display:flex;position:relative;width:100%;height:auto}.ez-scroller__wrapper--horizontal{flex-direction:row}.ez-scroller__wrapper--vertical{flex-direction:column}.ez-scroller__wrapper--shadow-start::before,.ez-scroller__wrapper--shadow-end::after{content:"";display:flex;position:absolute;z-index:1}.ez-scroller__wrapper--horizontal.ez-scroller__wrapper--shadow-start::before,.ez-scroller__wrapper--horizontal.ez-scroller__wrapper--shadow-end::after{width:24px;min-height:calc(100% - 10px)}.ez-scroller__wrapper--horizontal.ez-scroller__wrapper--shadow-start::before{left:0;background:linear-gradient(to right, var(--ez-scroller--box-shadow-color) 20%, transparent 80%)}.ez-scroller__wrapper--horizontal.ez-scroller__wrapper--shadow-end::after{right:0;background:linear-gradient(to left, var(--ez-scroller--box-shadow-color) 20%, transparent 80%)}.ez-scroller__wrapper--vertical.ez-scroller__wrapper--shadow-start::before,.ez-scroller__wrapper--vertical.ez-scroller__wrapper--shadow-end::after{min-width:calc(100% - 10px);height:24px}.ez-scroller__wrapper--vertical.ez-scroller__wrapper--shadow-start::before{top:0;background:linear-gradient(to bottom, var(--ez-scroller--box-shadow-color) 20%, transparent 80%)}.ez-scroller__wrapper--vertical.ez-scroller__wrapper--shadow-end::after{bottom:0;background:linear-gradient(to top, var(--ez-scroller--box-shadow-color) 20%, transparent 80%)}';const u=class{constructor(r){e(this,r),this.ezClick=i(this,"ezClick",7)}componentDidLoad(){this._element&&a.addIDInfo(this._element),this._button&&a.addIDInfo(this._button,"button",{id:"embedded"})}render(){return r("button",{type:"button",onClick:()=>{this.ezClick.emit()},ref:e=>this._button=e},r("span",null))}get _element(){return o(this)}};u.style=":host{position:relative;--ez-sidebar-button--width:6px;--ez-sidebar-button--hover--width:12px;--ez-sidebar-button--height:96px;--ez-sidebar-button--background-color--xlight:var(--background--xlight, #fff);--ez-sidebar-button--background-color--primary:var(--color--primary);--ez-sidebar-button--space--small:var(--space--small, 6px);--ez-sidebar-button--space--medium:var(--space--medium, 12px);--ez-sidebar-button--box-shadow:var(--shadow--small, 0px 0px 16px rgba(0, 38, 111, 0.07));--ez-sidebar-button--hover--box-shadow:var(--shadow--hard, 0px 0px 16px rgba(43, 58, 84, 0.24));--ez-sidebar-button--border--radius-small:var(--border--radius-small);--ez-sidebar-button--border--radius-medium:var(--border--radius-medium)}button{position:absolute;display:flex;background:var(--ez-sidebar-button--background-color--xlight);border:0;border-radius:0 var(--ez-sidebar-button--border--radius-medium) var(--ez-sidebar-button--border--radius-medium) 0;box-shadow:var(--ez-sidebar-button--box-shadow);padding:0;cursor:pointer}span{width:var(--ez-sidebar-button--width);height:var(--ez-sidebar-button--height);margin:var(--ez-sidebar-button--space--medium) var(--ez-sidebar-button--space--small) var(--ez-sidebar-button--space--medium) 0;background:var(--ez-sidebar-button--background-color--primary);border-radius:0 var(--ez-sidebar-button--border--radius-small) var(--ez-sidebar-button--border--radius-small) 0}button:hover{box-shadow:var(--ez-sidebar-button--hover--box-shadow)}button:hover span{width:var(--ez-sidebar-button--hover--width);margin:var(--ez-sidebar-button--space--medium) var(--ez-sidebar-button--space--medium) var(--ez-sidebar-button--space--medium) 0}";const v=(e,r)=>r?e.iconExpanded||"chevron-down":e.iconContracted||"chevron-right",_=e=>e.tooltip||e.label,z=e=>{const{node:t,selectedId:i,itemClick:o,iconClick:s,iconResolver:l,tooltipResolver:n,itemsList:c}=e;if(!t.visible)return;const h=t.item,d=e.level||1,b=t.isDisabled(),u=!b&&h.expanded,v=t.isExpandable(),_=!b&&!t.isPlaceHolder;return _&&c.push(h),r("ul",{class:1===d?"first-level":void 0},r("li",Object.assign({title:n(h,!b,d),class:"tree-item "+(h.id!==i?"tree-item-error":""),onClick:()=>_&&o(h)},{disabled:b,selected:h.id===i,[a.DATA_ELEMENT_ID_ATTRIBUTE_NAME]:a.getInternalIDInfo(`ezTreeItem_${h.id}`)}),r("div",{class:"item-label-container"},r("div",{class:"item-icon-box"},v&&r("ez-icon",{id:h.id,class:"item-icon",size:"small",iconName:l(h,u,d),onClick:()=>_&&s(h)})),r("label",{class:"item-label "+(h.bold?"item-label--bold":"")},h.label)),function(e,t,i){if(null!=t)return"string"==typeof t?r("div",{class:`tree-item-badge ${i?null:t}`},"error"===t&&r("ez-icon",{id:`${e}-badge-error`,class:"tree-item-badge-error-icon",size:"x-small",style:{color:"white"},iconName:"alert-circle"})):"text"===t.type?r("div",{id:`${e}-badge-text`,class:"tree-item-badge-text"},t.text):r("div",null,r("ez-icon",{id:`${e}-badge-icon`,class:"tree-item-badge-icon",style:{"--ez-icon--color":`var(--ez-tree__badge--icon-color--${t.iconColor||"default"})`},iconName:t.iconName}))}(h.id,h.badge,h.id===i)),u&&t.getChildren().map((e=>r(z,{selectedId:i,node:e,itemClick:o,iconClick:s,level:d+1,iconResolver:l,tooltipResolver:n,itemsList:c}))))};class m{constructor(e,r,t,i=!1){this.children=new Map,this.visible=!0,this.item=r,this.parent=t,this._tree=e,this.isPlaceHolder=i,r&&!i?(this._isLazyLoad="function"==typeof r.children||r.childrenCount>0,Array.isArray(r.children)&&(Array.from(r.children).forEach((e=>this.addChild(this._tree,e))),this._childrenLoaded=!0)):(this._isLazyLoad=!1,this._childrenLoaded=!0)}refresh(e){if(this.isPlaceHolder)return;this.item=Object.assign({},e),this._isLazyLoad="function"==typeof this.item.children||this.item.childrenCount>0;const r=this.children;this.children=new Map,Array.isArray(this.item.children)?(void 0===this.item.expanded&&(this.item.expanded=!0),Array.from(this.item.children).forEach((e=>{const t=r.get(e.id);t?(void 0===e.expanded&&(e.expanded=t.item.expanded),t.refresh(e),this.children.set(e.id,t)):(void 0===e.expanded&&(e.expanded=!0),this.addChild(this._tree,Object.assign({},e)))})),this._childrenLoaded=!0):this._childrenLoaded=!1}isDisabled(){return!this.isPlaceHolder&&this._tree.isNodeDisabled(this.item.id,this.item.disabled)}updateChildren(e){this.isPlaceHolder||this.refresh(Object.assign(Object.assign({},this.item),{children:e}))}addChild(e,r){this.children.has(r.id)||this.children.set(r.id,new m(e,r,this))}addPlaceHolder(){this.children.clear();const e=this.item.id;this.children.set(e,new m(void 0,{id:`placeholder_${e}`,label:"Carregando..."},this,!0))}getNode(e){if(this.children.has(e))return this.children.get(e);const r=Array.from(this.children.values());for(const t of r){const r=t.getNode(e);if(r)return r}}needLoad(){return this._isLazyLoad&&!this._childrenLoaded}isExpandable(){return!!this._isLazyLoad||this.children.size>0}getChildren(){return this.isPlaceHolder?[]:(this.needLoad()&&this._tree.loadChildren(this),Array.from(this.children.values()))}}class p extends m{constructor(e){super(void 0),this._disabledValues=new Map,this._changeCallback=e}async addChildAt(e,r){const t=this.getNode(e);null!=t&&(t.addChild(this,r),this._changeCallback())}setDisabled(e,r){this._disabledValues.set(e,r),this._changeCallback()}isNodeDisabled(e,r){return this._disabledValues.has(e)?this._disabledValues.get(e):r}load(e){if(e===this._currentItems)return;this._currentItems=e;const r=this.children;this.children=new Map,this._disabledValues.clear(),e.forEach((e=>{const t=r.get(e.id);t?(t.refresh(e),this.children.set(e.id,t)):this.addChild(this,Object.assign({},e))}))}setFilterPattern(e){this._filterPattern=n.replaceAccentuatedCharsKeepSymbols(e),this.applyFilter(this),this._changeCallback()}updateItem(e){if(null==e)return;const r=this.getNode(e.id);null!=r&&(Object.keys(e).forEach((t=>r.item[t]=e[t])),null==e.children?r.children.clear():Array.isArray(e.children)&&r.updateChildren(e.children),this._changeCallback())}async open(e){return new Promise((async r=>{await this.walkPath(this,e,(e=>e.item.expanded=!0)),r()}))}applyFilter(e){if(e.children.forEach((e=>{this.applyFilter(e)})),null==e.item)return;let r=!1;if(n.replaceAccentuatedCharsKeepSymbols(e.item.label).includes(this._filterPattern))r=!0;else{const t=Array.from(e.children.values());for(let i=0;i<t.length;i++)if(t[i].visible){r=!0,e.item.expanded=!0;break}}e.visible=r}async walkPath(e,r,t,i=0){return new Promise((async o=>{const s=r.split(">>").map((e=>e.trim()));if(s.length>i){const o=e.getNode(s[i]);o&&(o.needLoad()&&await this.loadLevel(o),t(o),await this.walkPath(o,r,t,i+1))}o()}))}async loadChildren(e){return new Promise((r=>{this.loadLevel(e).then((()=>{r(),this._changeCallback()}))}))}async loadLevel(e){return new Promise((r=>{e.addPlaceHolder(),(0,e.item.children)(e.item).then((t=>{e.updateChildren(t),r()}))}))}}const g=class{constructor(r){e(this,r),this.ezChange=i(this,"ezChange",7),this.ezOpenItem=i(this,"ezOpenItem",7),this._onItemClick=e=>{this.value=e},this._onIconClick=e=>{this.openClose(e),this.value=e},this._tree=new p((()=>s(this))),this._waintingForLoad=void 0,this.items=[],this.value=void 0,this.selectedId=void 0,this.iconResolver=v,this.tooltipResolver=void 0}async selectItem(e){const r=this._tree.getNode(e);this.value=r?r.item:void 0}async openItem(e){this._waintingForLoad=!0,await this._tree.open(e),this._waintingForLoad=!1}async disableItem(e){[].concat(e).forEach((e=>this._tree.setDisabled(e,!0)))}async enableItem(e){[].concat(e).forEach((e=>this._tree.setDisabled(e,!1)))}async addChild(e,r){var t;null==r&&(r=null===(t=this.value)||void 0===t?void 0:t.id),this._tree.addChildAt(r,e);const i=this._tree.getNode(r);i&&(i.item.expanded=!0)}async applyFilter(e){this._tree.setFilterPattern(e)}async updateItem(e){var r;this._tree.updateItem(e),null==(null===(r=this._tree)||void 0===r?void 0:r.getNode(this.selectedId))&&(this.value=this._visibleItems?this._visibleItems[0]:void 0)}async getItem(e){return new Promise((r=>{const t=this._tree.getNode(e);r(null==t?void 0:t.item)}))}async getCurrentPath(){var e,r,t;const i=null===(e=this._tree)||void 0===e?void 0:e.getNode(this.selectedId);if(null==i)return;const o=[];let s,l=null===(r=i.parent)||void 0===r?void 0:r.item;for(o.push(this.getItemPathAttrs(i.item));null!=l;)o.unshift(this.getItemPathAttrs(l)),s=this._tree.getNode(l.id),l=null===(t=null==s?void 0:s.parent)||void 0===t?void 0:t.item;return o}async getParent(e){return new Promise((r=>{var t;const i=this._tree.getNode(e);i&&r(null===(t=i.parent)||void 0===t?void 0:t.item),r(void 0)}))}observeItems(e,r){c.objectToString(e)!==c.objectToString(r)&&this._tree.load(this.items||[])}observeValue(){var e;this.ezChange.emit(this.value),this.selectedId=null===(e=this.value)||void 0===e?void 0:e.id}onKeyDownListener(e){if(!this.value)return;let r=!1;switch(e.key){case"ArrowUp":this.previousItem(),r=!0;break;case"ArrowDown":this.nextItem(),r=!0;break;case"ArrowLeft":this.previousLevel(),r=!0;break;case"ArrowRight":this.nextLevel(),r=!0;break;case" ":this.openClose(this.value),r=!0}r&&(e.stopPropagation(),e.preventDefault())}getItemPathAttrs({id:e,label:r}){return{id:e,label:r}}openClose(e){if(null==e)return;const r=!e.expanded;e.expanded=r,r&&this.ezOpenItem.emit(e),this._tree.updateItem(e)}previousLevel(){var e;if(this.value)if(this.value.expanded)this.value.expanded=!1,this._tree.updateItem(this.value);else{const r=null===(e=this._tree.getNode(this.value.id).parent)||void 0===e?void 0:e.item;r&&(this.value=r)}}nextLevel(){this.value&&this._tree.getNode(this.value.id).isExpandable()&&(this.value.expanded?this.nextItem():(this.value.expanded=!0,this._tree.updateItem(this.value)))}indexOf(e){if(null==e)return-1;for(let r=0;r<this._visibleItems.length;r++)if(this._visibleItems[r].id===e)return r;return-1}selectNextItem(e){var r;const t=this.indexOf(null===(r=this.value)||void 0===r?void 0:r.id)+e;t>-1&&t<this._visibleItems.length&&(this.value=this._visibleItems[t])}nextItem(){this.selectNextItem(1)}previousItem(){this.selectNextItem(-1)}connectedCallback(){this.items&&this._tree.load(this.items)}componentWillRender(){var e;if(!this.selectedId||(null===(e=this.value)||void 0===e?void 0:e.id)===this.selectedId)return;const r=this._tree.getNode(this.selectedId);r&&(this.value=r.item)}render(){if(a.addIDInfoIfNotExists(this._element,"ezTree"),null!=this.items)return this._visibleItems=[],r(t,{tabindex:"-1"},this._waintingForLoad?r("label",null,"Carregando..."):this._tree.getChildren().map((e=>{var t;return r(z,{selectedId:null===(t=this.value)||void 0===t?void 0:t.id,node:e,itemClick:this._onItemClick,iconClick:this._onIconClick,iconResolver:this.iconResolver,tooltipResolver:this.tooltipResolver||_,itemsList:this._visibleItems})})))}get _element(){return o(this)}static get watchers(){return{items:["observeItems"],value:["observeValue"]}}};g.style=":host{--ez-tree--border-radius:var(--border--radius-small, 8px);--ez-tree--padding-inline-start:20px;--ez-tree--margin:var(--space--extra-small, 3px);--ez-tree--margin-right:calc(var(--space--small, 6px) + 2px);--ez-tree--font-family:var(--font-pattern, Arial);--ez-tree--font-size:var(--text--medium, 14px);--ez-tree--selected--font-weight:var(--text-weight--large, 600);--ez-tree--font-weight:var(--text-weight--small, 400);--ez-tree--color:var(--title--primary, #2B3A54);--ez-tree--selected--color:var(--color--primary, #008561);--ez-tree--disabled--color:var(--text--disable, #AFB6C0);--ez-tree--font-weight--bold:var(--text-weight--large, 600);--ez-tree__tree-item--height:var(--size-medium, 18px);--ez-tree__tree-item--padding:var(--space--small, 6px);--ez-tree__tree-item--background-color:var(--background--xlight, #FFFFFF);--ez-tree__tree-item--selected--background-color:var(--color--primary-300, #E2F4EF);--ez-tree__tree-item--hover--background-color:var(--background--medium, #F0F3F7);--ez-tree__tree-item--disabled--background-color:var(--ez-tree__tree-Item--background-color);--ez-tree__item-icon-box--height:var(--ez-tree__tree-item--height);--ez-tree__item-icon-box--width:var(--size-medium, 18px);--ez-tree__item-icon-box--padding:var(--ez-tree__tree-item--padding);--ez-tree__badge--icon-color--default:var(--title--primary, #2B3A54);--ez-tree__badge--icon-color--error:var(--color--error, #da4453);--ez-tree__badge--icon-color--success:var(--color-alert--success-800, #157a00);--ez-tree__badge--icon-color--warning:var(--color--warning, #f2d410);--ez-tree__badge--icon-color--disabled:var(--text--disable, #AFB6C0);display:flex;flex-direction:column;margin:0 var(--ez-tree--margin) var(--ez-tree--margin) var(--ez-tree--margin);outline:none}ul{list-style-type:none;margin:0;padding-inline-start:var(--ez-tree--padding-inline-start)}ul.first-level{padding-inline-start:0}.tree-item-badge{width:16px;height:16px;background:transparent;border-radius:50%;transition:all 300ms ease-in-out;display:flex;align-items:center;justify-content:center}.tree-item-badge-error-icon{--ez-icon--color:white}.tree-item-badge-text{font-family:var(--ez-tree--font-family);font-size:var(--ez-tree--font-size);font-weight:var(--ez-tree--font-weight);color:var(--ez-tree--color)}.tree-item-badge.error{background:var(--color--error)}.tree-item-badge.warning{background:var(--color--warning)}.tree-item-badge.success{background:var(--color--success)}.item-label-container{display:flex;align-items:center}.tree-item{display:flex;align-items:center;margin-top:var(--ez-tree--margin);margin-right:var(--ez-tree--margin-right);border-radius:var(--ez-tree--border-radius);height:var(--ez-tree__tree-item--height);padding:var(--ez-tree__tree-item--padding);justify-content:space-between}.tree-item[selected]{background-color:var(--ez-tree__tree-item--selected--background-color)}.tree-item:hover{background-color:var(--ez-tree__tree-item--hover--background-color)}.tree-item[disabled],.tree-item[disabled]:hover{background-color:var(--ez-tree__tree-item--disabled--background-color)}.item-icon-box{display:flex;align-items:center;justify-content:center;width:var(--ez-tree__item-icon-box--width);height:var(--ez-tree__item-icon-box--height);padding:var(--ez-tree__item-icon-box--padding) var(--ez-tree__item-icon-box--padding) var(--ez-tree__item-icon-box--padding) 0}.item-icon{--ez-icon--color:var(--ez-tree--color)}.item-icon:hover{cursor:pointer}.tree-item[selected] .item-icon{--ez-icon--color:var(--ez-tree--selected--color)}.tree-item[disabled] .item-icon{cursor:unset;--ez-icon--color:var(--ez-tree--disabled--color)}.item-label{cursor:inherit;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:var(--ez-tree--font-family);font-size:var(--ez-tree--font-size);font-weight:var(--ez-tree--font-weight);color:var(--ez-tree--color)}.item-label--bold{font-weight:var(--ez-tree--font-weight--bold)}.tree-item[selected] .item-label{color:var(--ez-tree--selected--color);font-weight:var(--ez-tree--selected--font-weight)}.tree-item[disabled] .item-label{color:var(--ez-tree--disabled--color)}";export{d as ez_scroller,u as ez_sidebar_button,g as ez_tree}
@@ -1 +1 @@
1
- import{r as t,c as i,h as o,H as n,g as s}from"./p-e318d280.js";import{FloatingManager as a,ElementIDUtils as e}from"@sankhyalabs/core";import"./p-2187f86c.js";import{C as c}from"./p-7eb3e1a5.js";import"./p-ab574d59.js";import"./p-b853763b.js";const r=class{constructor(o){t(this,o),this.ezAction=i(this,"ezAction",7),this.ezPopoverOpen=i(this,"ezPopoverOpen",7),this.ezDisconnectedActionButtons=i(this,"ezDisconnectedActionButtons",7),this._arrowOffset=5,this.innerClickCheck=(t,i)=>{var o;if(i&&t){if(i===t)return!0;const n=t.children;for(let t=0;t<n.length;t++)if(null===(o=n[t].shadowRoot)||void 0===o?void 0:o.contains(i))return!0;do{if(t.contains(i))return!0;i=i.offsetParent}while(null!=i&&i!=document.getRootNode())}return!1},this._selectedAction=void 0,this.enabled=!0,this.actions=void 0,this.size="medium",this.showLabel=!1,this.displayIcon=void 0,this.checkOption=!1,this.value=void 0,this.isTransparent=!1,this.arrowActive=!1}async hideActions(){null!=this._floatingID&&a.close(this._floatingID),this._floatingID=void 0}async showActions(){if(!this.enabled)return;const t=this.getFloatOptions();this._floatingID=a.float(this._actionsList,this._listContainer,t);const i=this.getSideLimit();null!=i&&(t.left=i,a.updateFloatPosition(this._actionsList,this._listContainer,t)),window.requestAnimationFrame((()=>{this._actionsList.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})})),this.ezPopoverOpen.emit(this._actionsList)}async isOpened(){return null!=this._floatingID}getFloatOptions(){return{autoClose:!0,innerClickTest:this.innerClickCheck,isFixed:!0,top:this.getPositionTop(),left:this.getPositionLeft(),backClickListener:()=>this._floatingID=void 0}}getSideLimit(){var t;const i=document.body.clientWidth,o=null===(t=this._actionsList)||void 0===t?void 0:t.getBoundingClientRect();if((null==o?void 0:o.right)>i)return i-o.width+"px"}updatePosition(){if(!this.enabled||null==this._floatingID)return;const t=this.getFloatOptions(),i=this.getSideLimit();null!=i&&(t.left=i),a.updateFloatPosition(this._actionsList,this._listContainer,t)}getPositionTop(){var t;const i=null===(t=this._element)||void 0===t?void 0:t.getBoundingClientRect();return null==i?null:i.y+i.height+"px"}getBoundingLeft(){var t;const i=null===(t=this._element)||void 0===t?void 0:t.getBoundingClientRect();return null==i?null:i.x-(this.arrowActive?this._arrowOffset:0)+"px"}getPositionLeft(){return this.getBoundingLeft()||(this.arrowActive?`-${this._arrowOffset}px`:null)}hasLabelOrCheckOption(){var t;return(this.showLabel||this.checkOption)&&(null===(t=this.actions)||void 0===t?void 0:t.length)>0}hasIconName(){var t;return null===(t=this.actions)||void 0===t?void 0:t.some((t=>null!=t.iconName))}controlScrollPage(){window.removeEventListener("scroll",this.updatePosition.bind(this)),window.addEventListener("scroll",this.updatePosition.bind(this))}handlerButtonClick(){this.showActions()}actionClick(t){this._selectedAction=t,this.hideActions(),this.ezAction.emit(t)}componentWillLoad(){if(null==this.actions){this.actions=[];const t=this._element.querySelectorAll("action");t&&t.forEach((t=>{let i=t.innerText,o=t.getAttribute("value"),n=!("false"===t.getAttribute("enabled"));o||(o=i),this.actions.push({label:i,value:o,enabled:n}),t.hidden=!0}))}}disconnectedCallback(){this.ezDisconnectedActionButtons.emit()}componentDidLoad(){c.applyVarsButton(this._element,this._button),e.addIDInfo(this._element),this.controlScrollPage()}componentDidRender(){var t;null==this._floatingID&&(null===(t=this._actionsList)||void 0===t||t.remove()),this.hasLabelOrCheckOption()&&(this.value?this._selectedAction=this.actions.find((t=>t.value===this.value)):this._selectedAction||(this._selectedAction=this.actions[0]))}buildActionElement(t){var i;if(t){if(null!=t.itemBuilder){const i=t.itemBuilder(this._element,t);return"string"==typeof i?o("div",{class:"ez-actions-button__btn-action",innerHTML:i}):i}return o("ez-button",{size:"small",label:t.label,onClick:()=>this.actionClick(t),enabled:t.enabled,class:"ez-actions-button__btn-action"+(this.checkOption||this.hasIconName()?" ez-actions-button__btn-action--spaced":"")},this.checkOption&&(null===(i=this._selectedAction)||void 0===i?void 0:i.value)===t.value&&o("ez-icon",{class:"ez-actions-button__icon-check",slot:"leftIcon",size:"small",iconName:"check"}),!this.checkOption&&t.iconName&&o("ez-icon",{class:"ez-actions-button__icon-item",slot:"leftIcon",size:"small",iconName:t.iconName}))}}render(){var t;return o(n,null,o("ez-button",{ref:t=>this._button=t,class:(this.isTransparent?"ez-actions-button__btn-transparent":"")+(this.showLabel?" ez-actions-button__btn-label":""),label:this.showLabel&&(null===(t=this._selectedAction)||void 0===t?void 0:t.label),enabled:this.enabled,mode:this.showLabel?void 0:"icon",iconName:this.showLabel?"":this.displayIcon||"dots-vertical",size:this.size,onClick:()=>this.handlerButtonClick()},this.showLabel&&o("ez-icon",{class:"ez-actions-button__icon-right",slot:"rightIcon",iconName:this.displayIcon||"dots-vertical"})),o("section",{class:"ez-actions-button__list-container",ref:t=>this._listContainer=t},this.arrowActive&&o("div",{class:"ez-actions-button__arrow ez-actions-button__arrow--"+(this.size||"small")+(this.isTransparent?" ez-actions-button__arrow--upped":"")}),o("div",{ref:t=>this._actionsList=t,class:"ez-actions-button__actions-list ez-actions-button__actions-list--max-height"+(this.arrowActive&&!this.isTransparent?" ez-actions-button__actions-list--lowered":"")},this.actions.map((t=>this.buildActionElement(t))))))}get _element(){return s(this)}};r.style=":host{--ez-actions-button__actions-list--border-radius:var(--border--radius-medium, 12px);--ez-actions-button__actions-list--box-shadow:var(--shadow, 0px 0px 16px 0px #000);--ez-actions-button__actions-list--background-color:var(--background--xlight, #fff);--ez-actions-button__actions-list--padding:var(--space--small, 6px);--ez-actions-button__actions-list--top-margin:var(--space-small, 6px);--ez-actions-button__actions-list--z-index:var(--ez-elevation--8, 8);--ez-actions-button__actions-max-height:415px;--ez-actions-button__btn-action--min-width:'auto';--ez-actions-button__btn-action--background-color:var(--background--xlight, #fff);display:flex;flex-direction:column;height:fit-content;user-select:none}.ez-actions-button__actions-list{display:flex;flex-direction:column;position:fixed;width:fit-content;height:fit-content;overflow-y:auto;scrollbar-width:thin;z-index:var(--ez-actions-button__actions-list--z-index);padding:var(--ez-actions-button__actions-list--padding);margin-top:var(--ez-actions-button__actions-list--top-margin);background-color:var(--ez-actions-button__actions-list--background-color);border-radius:var(--ez-actions-button__actions-list--border-radius);box-shadow:var(--ez-actions-button__actions-list--box-shadow)}.ez-actions-button__actions-list--max-height{max-height:var(--ez-actions-button__actions-max-height)}.ez-actions-button__actions-list--lowered{margin-top:calc(var(--ez-actions-button__actions-list--top-margin) + 6px)}.ez-actions-button__btn-action{--ez-button--justify-content:flex-start;--ez-button--width:100%;--ez-button--min-width:var(--ez-actions-button__btn-action--min-width);--ez-button--background-color:var(--ez-actions-button__btn-action--background-color);--ez-button--font-weight:var(--text-weight--medium, 400);--ez-button--padding-left:var(--space--medium, 12px);--ez-button--padding-right:var(--space--medium, 12px)}.ez-actions-button__btn-action--spaced{--ez-button--padding-left:calc(var(--space--medium, 12px) + 24px)}.ez-actions-button__icon-right{margin-left:var(--space--small, 6px)}.ez-actions-button__icon-check,.ez-actions-button__icon-item{position:absolute;left:var(--space--medium, 12px)}.ez-actions-button__icon-check{color:var(--ez-button--hover-color)}.ez-actions-button__arrow{position:absolute;border-left:10px solid transparent;border-right:10px solid transparent;width:0;height:0;z-index:calc(var(--ez-actions-button__actions-list--z-index) + 1);border-bottom:15px solid var(--ez-actions-button__btn-action--background-color)}.ez-actions-button__arrow--upped{margin-top:calc((var(--ez-actions-button__actions-list--top-margin) + 2px) * -1)}.ez-actions-button__arrow--small{margin-left:6px}.ez-actions-button__arrow--medium{margin-left:11px}.ez-actions-button__arrow--large{margin-left:13px}.ez-actions-button__arrow:only-child{display:none}.ez-actions-button__btn-transparent{--ez-button--background-color:transparent;--ez-button--hover--background-color:transparent;--ez-button--active--background-color:transparent;--ez-button--focus--border:none}.ez-actions-button__btn-label{--ez-button--padding-left:var(--space--medium, 12px);--ez-button--padding-right:var(--space--medium, 12px)}.ez-actions-button__list-container{position:relative}.ez-actions-button--bottom-padding{padding-bottom:var(--space--small, 6px)}";export{r as ez_actions_button}
1
+ import{r as t,c as i,h as o,H as n,g as s}from"./p-23a36bb6.js";import{FloatingManager as a,ElementIDUtils as e}from"@sankhyalabs/core";import"./p-2187f86c.js";import{C as c}from"./p-9e11fc7b.js";import"./p-ab574d59.js";import"./p-b853763b.js";const r=class{constructor(o){t(this,o),this.ezAction=i(this,"ezAction",7),this.ezPopoverOpen=i(this,"ezPopoverOpen",7),this.ezDisconnectedActionButtons=i(this,"ezDisconnectedActionButtons",7),this._arrowOffset=5,this.innerClickCheck=(t,i)=>{var o;if(i&&t){if(i===t)return!0;const n=t.children;for(let t=0;t<n.length;t++)if(null===(o=n[t].shadowRoot)||void 0===o?void 0:o.contains(i))return!0;do{if(t.contains(i))return!0;i=i.offsetParent}while(null!=i&&i!=document.getRootNode())}return!1},this._selectedAction=void 0,this.enabled=!0,this.actions=void 0,this.size="medium",this.showLabel=!1,this.displayIcon=void 0,this.checkOption=!1,this.value=void 0,this.isTransparent=!1,this.arrowActive=!1}async hideActions(){null!=this._floatingID&&a.close(this._floatingID),this._floatingID=void 0}async showActions(){if(!this.enabled)return;const t=this.getFloatOptions();this._floatingID=a.float(this._actionsList,this._listContainer,t);const i=this.getSideLimit();null!=i&&(t.left=i,a.updateFloatPosition(this._actionsList,this._listContainer,t)),window.requestAnimationFrame((()=>{this._actionsList.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})})),this.ezPopoverOpen.emit(this._actionsList)}async isOpened(){return null!=this._floatingID}getFloatOptions(){return{autoClose:!0,innerClickTest:this.innerClickCheck,isFixed:!0,top:this.getPositionTop(),left:this.getPositionLeft(),backClickListener:()=>this._floatingID=void 0}}getSideLimit(){var t;const i=document.body.clientWidth,o=null===(t=this._actionsList)||void 0===t?void 0:t.getBoundingClientRect();if((null==o?void 0:o.right)>i)return i-o.width+"px"}updatePosition(){if(!this.enabled||null==this._floatingID)return;const t=this.getFloatOptions(),i=this.getSideLimit();null!=i&&(t.left=i),a.updateFloatPosition(this._actionsList,this._listContainer,t)}getPositionTop(){var t;const i=null===(t=this._element)||void 0===t?void 0:t.getBoundingClientRect();return null==i?null:i.y+i.height+"px"}getBoundingLeft(){var t;const i=null===(t=this._element)||void 0===t?void 0:t.getBoundingClientRect();return null==i?null:i.x-(this.arrowActive?this._arrowOffset:0)+"px"}getPositionLeft(){return this.getBoundingLeft()||(this.arrowActive?`-${this._arrowOffset}px`:null)}hasLabelOrCheckOption(){var t;return(this.showLabel||this.checkOption)&&(null===(t=this.actions)||void 0===t?void 0:t.length)>0}hasIconName(){var t;return null===(t=this.actions)||void 0===t?void 0:t.some((t=>null!=t.iconName))}controlScrollPage(){window.removeEventListener("scroll",this.updatePosition.bind(this)),window.addEventListener("scroll",this.updatePosition.bind(this))}handlerButtonClick(){this.showActions()}actionClick(t){this._selectedAction=t,this.hideActions(),this.ezAction.emit(t)}componentWillLoad(){if(null==this.actions){this.actions=[];const t=this._element.querySelectorAll("action");t&&t.forEach((t=>{let i=t.innerText,o=t.getAttribute("value"),n=!("false"===t.getAttribute("enabled"));o||(o=i),this.actions.push({label:i,value:o,enabled:n}),t.hidden=!0}))}}disconnectedCallback(){this.ezDisconnectedActionButtons.emit()}componentDidLoad(){c.applyVarsButton(this._element,this._button),e.addIDInfo(this._element),this.controlScrollPage()}componentDidRender(){var t;null==this._floatingID&&(null===(t=this._actionsList)||void 0===t||t.remove()),this.hasLabelOrCheckOption()&&(this.value?this._selectedAction=this.actions.find((t=>t.value===this.value)):this._selectedAction||(this._selectedAction=this.actions[0]))}buildActionElement(t){var i;if(t){if(null!=t.itemBuilder){const i=t.itemBuilder(this._element,t);return"string"==typeof i?o("div",{class:"ez-actions-button__btn-action",innerHTML:i}):i}return o("ez-button",{size:"small",label:t.label,onClick:()=>this.actionClick(t),enabled:t.enabled,class:"ez-actions-button__btn-action"+(this.checkOption||this.hasIconName()?" ez-actions-button__btn-action--spaced":"")},this.checkOption&&(null===(i=this._selectedAction)||void 0===i?void 0:i.value)===t.value&&o("ez-icon",{class:"ez-actions-button__icon-check",slot:"leftIcon",size:"small",iconName:"check"}),!this.checkOption&&t.iconName&&o("ez-icon",{class:"ez-actions-button__icon-item",slot:"leftIcon",size:"small",iconName:t.iconName}))}}render(){var t;return o(n,null,o("ez-button",{ref:t=>this._button=t,class:(this.isTransparent?"ez-actions-button__btn-transparent":"")+(this.showLabel?" ez-actions-button__btn-label":""),label:this.showLabel&&(null===(t=this._selectedAction)||void 0===t?void 0:t.label),enabled:this.enabled,mode:this.showLabel?void 0:"icon",iconName:this.showLabel?"":this.displayIcon||"dots-vertical",size:this.size,onClick:()=>this.handlerButtonClick()},this.showLabel&&o("ez-icon",{class:"ez-actions-button__icon-right",slot:"rightIcon",iconName:this.displayIcon||"dots-vertical"})),o("section",{class:"ez-actions-button__list-container",ref:t=>this._listContainer=t},this.arrowActive&&o("div",{class:"ez-actions-button__arrow ez-actions-button__arrow--"+(this.size||"small")+(this.isTransparent?" ez-actions-button__arrow--upped":"")}),o("div",{ref:t=>this._actionsList=t,class:"ez-actions-button__actions-list ez-actions-button__actions-list--max-height"+(this.arrowActive&&!this.isTransparent?" ez-actions-button__actions-list--lowered":"")},this.actions.map((t=>this.buildActionElement(t))))))}get _element(){return s(this)}};r.style=":host{--ez-actions-button__actions-list--border-radius:var(--border--radius-medium, 12px);--ez-actions-button__actions-list--box-shadow:var(--shadow, 0px 0px 16px 0px #000);--ez-actions-button__actions-list--background-color:var(--background--xlight, #fff);--ez-actions-button__actions-list--padding:var(--space--small, 6px);--ez-actions-button__actions-list--top-margin:var(--space-small, 6px);--ez-actions-button__actions-list--z-index:var(--ez-elevation--8, 8);--ez-actions-button__actions-max-height:415px;--ez-actions-button__btn-action--min-width:'auto';--ez-actions-button__btn-action--background-color:var(--background--xlight, #fff);display:flex;flex-direction:column;height:fit-content;user-select:none}.ez-actions-button__actions-list{display:flex;flex-direction:column;position:fixed;width:fit-content;height:fit-content;overflow-y:auto;scrollbar-width:thin;z-index:var(--ez-actions-button__actions-list--z-index);padding:var(--ez-actions-button__actions-list--padding);margin-top:var(--ez-actions-button__actions-list--top-margin);background-color:var(--ez-actions-button__actions-list--background-color);border-radius:var(--ez-actions-button__actions-list--border-radius);box-shadow:var(--ez-actions-button__actions-list--box-shadow)}.ez-actions-button__actions-list--max-height{max-height:var(--ez-actions-button__actions-max-height)}.ez-actions-button__actions-list--lowered{margin-top:calc(var(--ez-actions-button__actions-list--top-margin) + 6px)}.ez-actions-button__btn-action{--ez-button--justify-content:flex-start;--ez-button--width:100%;--ez-button--min-width:var(--ez-actions-button__btn-action--min-width);--ez-button--background-color:var(--ez-actions-button__btn-action--background-color);--ez-button--font-weight:var(--text-weight--medium, 400);--ez-button--padding-left:var(--space--medium, 12px);--ez-button--padding-right:var(--space--medium, 12px)}.ez-actions-button__btn-action--spaced{--ez-button--padding-left:calc(var(--space--medium, 12px) + 24px)}.ez-actions-button__icon-right{margin-left:var(--space--small, 6px)}.ez-actions-button__icon-check,.ez-actions-button__icon-item{position:absolute;left:var(--space--medium, 12px)}.ez-actions-button__icon-check{color:var(--ez-button--hover-color)}.ez-actions-button__arrow{position:absolute;border-left:10px solid transparent;border-right:10px solid transparent;width:0;height:0;z-index:calc(var(--ez-actions-button__actions-list--z-index) + 1);border-bottom:15px solid var(--ez-actions-button__btn-action--background-color)}.ez-actions-button__arrow--upped{margin-top:calc((var(--ez-actions-button__actions-list--top-margin) + 2px) * -1)}.ez-actions-button__arrow--small{margin-left:6px}.ez-actions-button__arrow--medium{margin-left:11px}.ez-actions-button__arrow--large{margin-left:13px}.ez-actions-button__arrow:only-child{display:none}.ez-actions-button__btn-transparent{--ez-button--background-color:transparent;--ez-button--hover--background-color:transparent;--ez-button--active--background-color:transparent;--ez-button--focus--border:none}.ez-actions-button__btn-label{--ez-button--padding-left:var(--space--medium, 12px);--ez-button--padding-right:var(--space--medium, 12px)}.ez-actions-button__list-container{position:relative}.ez-actions-button--bottom-padding{padding-bottom:var(--space--small, 6px)}";export{r as ez_actions_button}
@@ -0,0 +1 @@
1
+ import{r as i,c as t,h as e,H as s,g as r}from"./p-23a36bb6.js";import{C as o}from"./p-9e11fc7b.js";import{ObjectUtils as a,StringUtils as l,FloatingManager as h,ElementIDUtils as n}from"@sankhyalabs/core";import{A as c}from"./p-2187f86c.js";import"./p-ab574d59.js";import"./p-b853763b.js";import{R as d}from"./p-05e1f4e7.js";const u=class{constructor(e){i(this,e),this.ezChange=t(this,"ezChange",7),this._changeDeboucingTimeout=null,this._limitCharsToSearch=3,this._deboucingTime=300,this._maxWidthValue=0,this._tabPressed=!1,this._textEmptyList="Nenhum resultado encontrado",this._textEmptySearch="Nenhum resultado de {0} encontrado",this._lookupMode=!1,this._startHighlightTag="<span class='card-item__highlight'>",this._endHighlightTag="</span>",this._preSelection=void 0,this._visibleOptions=void 0,this._startLoading=!1,this._showLoading=!0,this._criteria=void 0,this.value=void 0,this.label=void 0,this.enabled=!0,this.errorMessage=void 0,this.optionLoader=void 0,this.showSelectedValue=!0,this.showOptionValue=!0,this.suppressEmptyOption=!1,this.mode="regular",this.canShowError=!0,this.hideErrorOnFocusOut=!0,this.listOptionsPosition=void 0,this.isTextSearch=!1,this.ignoreLimitCharsToSearch=!1,this.options=void 0,this.suppressSearch=!1}observeErrorMessage(){var i;this._textInput&&(this._textInput.errorMessage=this.errorMessage,(null===(i=this.errorMessage)||void 0===i?void 0:i.trim())||this.setInputValue())}observeValue(i,t){if(this._textInput&&i!=t)try{if("string"===i)return void this.setInputValue();const e=this.getSelectedOption(i),s=this.getSelectedOption(t),r=this.getSelectedOption(this.value);this.isDifferentValues(r,e)&&(this.value=e),this.isDifferentValues(e,s)&&(this.setInputValue(),this._lookupMode||this.ezChange.emit(null===e?void 0:e)),this.resetOptions()}finally{this._lookupMode=!1}}observeOptions(i,t){(null==i?void 0:i.join(""))!==(null==t?void 0:t.join(""))&&this.loadOptions(v.PRELOAD)}async getValueAsync(){return new Promise(this._showLoading?i=>{let t=setInterval((()=>{this._showLoading||(clearInterval(t),i(this.value))}),100)}:i=>i(this.value))}async setFocus(){this._textInput&&this._textInput.setFocus()}async setBlur(){this._textInput&&this._textInput.setBlur()}async isInvalid(){return"string"==typeof this.errorMessage&&""!==this.errorMessage.trim()}async clearValue(){this.clearSearch()}scrollListener(){var i;null!=this._floatingID&&((null===(i=this.listOptionsPosition)||void 0===i?void 0:i.hardPosition)?this.hideOptions():window.requestAnimationFrame((()=>{this.updateListPosition()})))}updateListPosition(){let{verticalPosition:i,horizontalPosition:t,fromBottom:e,fromRight:s,bottomLimit:r,hardPosition:o}=this.getListPosition();const a=this._listWrapper.getBoundingClientRect(),l=this._listContainer.getBoundingClientRect(),h=this._textInput.getBoundingClientRect(),n=r||window.innerHeight;!e&&(a.top<0||l.bottom+a.height>n)&&(e=!0),o||(i=i||0,t=t||0,e?i=window.innerHeight-h.top+i:i+=l.top,s?t=window.innerWidth-h.right+t:t+=l.left),null!=i&&(this._listWrapper.style[e?"bottom":"top"]=`${i}px`,this._listWrapper.style[e?"top":"bottom"]=""),null!=t&&(this._listWrapper.style[s?"right":"left"]=`${t}px`,this._listWrapper.style[s?"left":"right"]="")}getListPosition(){return this.listOptionsPosition?this.listOptionsPosition:{verticalPosition:this.errorMessage||!this.canShowError||"slim"===this.mode?6:-13}}isDifferentValues(i,t){return a.objectToString(i||{})!==a.objectToString(t||{})}getFormattedText(i){if(null==i)return;let t=this.showSelectedValue&&null!=i.value?`${i.value} - ${i.label}`:i.label;return t=t.replace(new RegExp(this._startHighlightTag,"g"),"").replace(new RegExp(this._endHighlightTag,"g"),""),t}getText(){const i=this.getSelectedOption(this.value),t=this.getFormattedText(i);if(null!=t)return String(t).replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"')}getSelectedOption(i){return"string"==typeof i||i instanceof String?this._visibleOptions.find((t=>t.value===i)):i?Object.assign(Object.assign({},i),{value:this.replaceHighlight(null==i?void 0:i.value),label:this.replaceHighlight(null==i?void 0:i.label)}):i}updateVisibleOptions(){let i=this._source||[];this._visibleOptions=this.suppressEmptyOption?i:[{value:void 0,label:""}].concat(i),this._maxWidthValue=this.getMaxWidthValue()}getMaxWidthValue(){var i;const t=[];return null===(i=this._visibleOptions)||void 0===i||i.forEach((i=>{const e=this.getWidthValue(i.value);t.includes(e)||t.push(e)})),t.length>1?Math.max(...t):0}getWidthValue(i){if(null!=this._itemValueBasis){const t=this._itemValueBasis;if(null!=i)return t.innerHTML=i,t.clientWidth>0?t.clientWidth+2:0;t.innerHTML=""}return 0}createOption(i){let{key:t,title:e}=i;const s=new RegExp(this._startHighlightTag,"g"),r=new RegExp(this._endHighlightTag,"g");e=l.decodeHtmlEntities(e);const o={value:null==t?void 0:t.replace(s,"").replace(r,""),label:null==e?void 0:e.replace(s,"").replace(r,"")};this.selectOption(o)}buildItem(i,t){i.label=i.label||i.value;const s={key:i.value,title:i.label,details:i.details};return e("div",{style:{height:"100%"},class:t===this._preSelection?"item preselected":"item",id:`item_${i.value}`,onMouseDown:()=>this.createOption(s),onMouseOver:()=>this._preSelection=t},e("ez-card-item",{item:s}))}showOptions(){this.enabled&&(this.isOptionsVisible()||(this._resizeObserver&&this._resizeObserver.observe(this._textInput),this._floatingID=h.float(this._listWrapper,this._listContainer,{autoClose:!1,isFixed:!0,backClickListener:()=>this.hideOptions()}),this.setFocus(),window.requestAnimationFrame((()=>{this.updateListPosition(),this.listOptionsPosition||this._listWrapper.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})}))))}hideOptions(){void 0!==this._floatingID&&h.close(this._floatingID),this._floatingID=void 0,this._resizeObserver&&this._resizeObserver.unobserve(this._textInput)}isOptionsVisible(){return void 0!==this._floatingID&&h.isFloating(this._floatingID)}nextOption(){this.isOptionsVisible()&&(this.showOptions(),this._preSelection=void 0===this._preSelection?0:Math.min(this._preSelection+1,this._visibleOptions.length-1),this.scrollToOption(this._visibleOptions[this._preSelection]))}previousOption(){this._preSelection=void 0===this._preSelection?0:Math.max(this._preSelection-1,0),this.scrollToOption(this._visibleOptions[this._preSelection])}scrollToOption(i){window.requestAnimationFrame((()=>{const t=(null==i?void 0:i.value)?this._optionsList.querySelector(`div#item_${this.replaceHighlight(i.value).replace(/[<>\[\]#=]/g,"\\$&").replace(/:/g,"\\:")}`):void 0;t&&t.scrollIntoView({behavior:"smooth",block:"nearest"})}))}selectCurrentOption(){void 0!==this._preSelection?(this.selectOption(this._visibleOptions[this._preSelection]),this._preSelection=void 0):this.controlListWithOnlyOne()}updateSource(i){this._startLoading=!1,i instanceof Promise?(this._showLoading=!0,i.then((i=>{this._showLoading=!1,this.updateSource(i)})).catch((()=>this._showLoading=!1)),this.updateVisibleOptions()):(this._showLoading=!1,Array.isArray(i)?(this._source=i,this.updateVisibleOptions(),this._tabPressed&&(this._tabPressed=!1,this.controlEmptySearch())):this.selectOption(i))}clearSource(){this._source=[],this.updateVisibleOptions()}replaceHighlight(i){const t=new RegExp(this._startHighlightTag,"g"),e=new RegExp(this._endHighlightTag,"g");return(null!=i?i:"").replace(t,"").replace(e,"")}selectOption(i){var t,e;const s=this.getSelectedOption(this.value),r=Object.assign(Object.assign({},i),{value:this.replaceHighlight(null==i?void 0:i.value),label:this.replaceHighlight(null==i?void 0:i.label)});(null===(t=null==s?void 0:s.value)||void 0===t?void 0:t.toString())!==(null===(e=null==r?void 0:r.value)||void 0===e?void 0:e.toString())||null==s&&null!=r&&"value"in r?this.value=(null==r?void 0:r.value)?r:void 0:(this.setInputValue(),this.resetOptions()),this._visibleOptions=[],this.clearSource()}loadOptions(i,t=""){this._criteria=t,this._startLoading=!0,this.updateSource(this.optionLoader?this.optionLoader({mode:i,argument:t}):this.options)}cancelPreselection(){!this._textInput.value&&this.value?this.selectOption(void 0):window.setTimeout((()=>{this.setInputValue()}),this._deboucingTime),this.resetOptions()}setInputValue(i=!0){const t=this.getText();(this._textInput.value||"")!==t&&(this._textInput.value=t,i&&(this.errorMessage=null))}clearSearch(){this.value=null}controlListWithOnlyOne(){var i,t;const e=null===(i=this._visibleOptions)||void 0===i?void 0:i.filter((i=>""!==i.label&&null!=i.value));if((null==e?void 0:e.length)>0){const i=new RegExp(this._startHighlightTag,"g"),s=new RegExp(this._endHighlightTag,"g");let r=l.decodeHtmlEntities(e[0].label);const o={value:null===(t=e[0].value)||void 0===t?void 0:t.replace(i,"").replace(s,""),label:null==r?void 0:r.replace(i,"").replace(s,"")};this.selectOption(o)}}controlEmptySearch(){var i;(null===(i=this._visibleOptions)||void 0===i?void 0:i.length)?this.controlListWithOnlyOne():(this.clearSearch(),c.info(this._textEmptyList))}validateDescriptionValue(){if(l.isEmpty(this.value))return;let i=this.value;"object"!=typeof i&&(l.isEmpty(i)||this.loadDescriptionValue(i))}async loadDescriptionValue(i){var t,e;if(null==i)return;if((null===(t=this.options)||void 0===t?void 0:t.length)>0)return void this.loadOptionValue(i);const s={mode:v.PREDICTIVE,argument:i},r=await(null===(e=this.optionLoader)||void 0===e?void 0:e.call(this,s));null!=r&&(r instanceof Promise?r.then((i=>{this.setDescriptionValue(i)})):this.setDescriptionValue(r))}setDescriptionValue(i){const t=(null==i?void 0:i[0])||i;null!=t&&Object.keys(t).length?(this._lookupMode=!0,this.value=t?Object.assign(Object.assign({},t),{value:this.replaceHighlight(t.value),label:this.replaceHighlight(t.label)}):t):this.showNoResultMessage()}loadOptionValue(i){var t;const e=null===(t=this.options)||void 0===t?void 0:t.find((t=>t.value===i));null!=e?this.selectOption(e):this.showNoResultMessage()}async showNoResultMessage(){this.clearSearch(),c.info(this._textEmptySearch.replace("{0}",this.getFieldLabel()))}getFieldLabel(){var i;return null===(i=this.label)||void 0===i?void 0:i.replace(d,"").toUpperCase()}resetOptions(){this.hideOptions(),this._criteria=void 0,this._preSelection=void 0,this.updateVisibleOptions()}componentWillLoad(){if(void 0===this.options){this.options=[];const i=this.el.querySelectorAll("option");i&&i.forEach((i=>{let t=i.innerText,e=i.getAttribute("value"),s=i.getAttribute("details");e||(e=t),this.options.push({label:t,value:e,details:s}),i.hidden=!0}))}this.updateSource([])}componentDidRender(){var i;void 0===this._floatingID&&this._listWrapper.remove(),null===(i=this._optionsList)||void 0===i||i.querySelectorAll(".item").forEach((i=>{n.addIDInfoIfNotExists(i,"itemSearch")})),this.validateDescriptionValue()}componentDidLoad(){o.applyVarsTextInput(this.el,this._textInput),this.setInputValue(!1),this._resizeObserver=new ResizeObserver((i=>{window.requestAnimationFrame((()=>{if(!Array.isArray(i)||!i.length)return;const{clientWidth:t}=this._listContainer;t>0&&this._listWrapper&&(this._listWrapper.style.width=`${t}px`)}))}))}handlerIconClick(){this.loadOptions(v.ADVANCED)}buildNumberArgument(i){return this.isTextSearch?NaN:Number(i||void 0)}onTextInputChangeHandler(i){var t;if(this.clearDeboucingTimeout(),this._startLoading)return void(this._changeDeboucingTimeout=window.setTimeout((()=>{this.onTextInputChangeHandler(i)}),this._deboucingTime));const e=null===(t=i.target.value)||void 0===t?void 0:t.trim(),s=this.buildNumberArgument(e);this._criteria||(this._textInput.value=i.data||e),this._criteria=e,e?(this._showLoading=!1,this.clearSource(),!isNaN(s)||e.length>=this._limitCharsToSearch?(this._showLoading=!0,this._changeDeboucingTimeout=window.setTimeout((()=>{this.loadOptions(v.PREDICTIVE,isNaN(s)?e:s.toString())}),this._deboucingTime),this.showOptions()):this.hideOptions()):(this.hideOptions(),this._showLoading=!1,this.clearSource())}clearDeboucingTimeout(){this._changeDeboucingTimeout&&(window.clearTimeout(this._changeDeboucingTimeout),this._changeDeboucingTimeout=null)}keyDownHandler(i){switch(this._tabPressed=!1,i.ctrlKey&&("f"!==i.key&&"F"!==i.key||(this.loadOptions(v.ADVANCED),i.stopPropagation(),i.stopImmediatePropagation(),i.preventDefault())),i.key){case"ArrowDown":this.nextOption(),i.stopPropagation();break;case"ArrowUp":this.previousOption(),i.stopPropagation();break;case"Enter":this.selectCurrentOption();break;case"Escape":this.cancelPreselection();break;case"Tab":this._tabPressed=!0,this.controlListWithOnlyOne()}}onTextInputFocusOutHandler(){this.hideErrorOnFocusOut&&this.cancelPreselection()}canShowListOptions(){return!this._showLoading&&this._visibleOptions.length>0}render(){var i;return n.addIDInfoIfNotExists(this.el,"input"),e(s,null,e("ez-text-input",{"data-element-id":n.getInternalIDInfo("textInput"),class:this.suppressSearch?"suppressed-search-input":"",ref:i=>this._textInput=i,"data-slave-mode":"true",enabled:this.enabled&&!this.suppressSearch,onInput:i=>this.onTextInputChangeHandler(i),onFocusout:()=>this.onTextInputFocusOutHandler(),onKeyDown:i=>this.keyDownHandler(i),label:this.label,canShowError:this.canShowError,errorMessage:this.errorMessage,mode:this.mode},e("button",{class:"btn",slot:"leftIcon",disabled:!this.enabled,tabindex:-1,onClick:()=>this.handlerIconClick()},e("ez-icon",{iconName:"search"})),(null===(i=this._textInput)||void 0===i?void 0:i.value)&&(this._criteria||this.value)?e("button",{class:"btn btn__close",slot:"rightIcon",disabled:!this.enabled,tabindex:-1,onClick:()=>this.clearSearch()},e("ez-icon",{iconName:"close"})):void 0),e("section",{class:"list-container",ref:i=>this._listContainer=i},e("div",{class:"list-wrapper",ref:i=>this._listWrapper=i},e("ul",{class:"list-options",ref:i=>this._optionsList=i},!this._showLoading&&0===this._visibleOptions.length&&e("div",{class:"message"},e("span",{class:"message__no-result"},this._textEmptyList)),this._showLoading&&e("div",{class:"message"},e("div",{class:"message__loading"})),e("span",{class:"item__value item__value--hidden",ref:i=>this._itemValueBasis=i}),this.canShowListOptions()&&this._visibleOptions.map(((i,t)=>this.buildItem(i,t)))))))}get el(){return r(this)}static get watchers(){return{errorMessage:["observeErrorMessage"],value:["observeValue"],options:["observeOptions"]}}};var v;!function(i){i.ADVANCED="ADVANCED",i.PRELOAD="PRELOAD",i.PREDICTIVE="PREDICTIVE"}(v||(v={})),u.style=":host{--ez-search--height:42px;--ez-search--width:100%;--ez-search__icon--width:48px;--ez-search--border-radius:var(--border--radius-medium, 12px);--ez-search--border-radius-small:var(--border--radius-small, 6px);--ez-search--font-size:var(--text--medium, 14px);--ez-search--font-family:var(--font-pattern, Arial);--ez-search--font-weight--large:var(--text-weight--large, 500);--ez-search--font-weight--medium:var(--text-weight--medium, 400);--ez-search--background-color--xlight:var(--background--xlight, #fff);--ez-search--background-medium:var(--background--medium, #f0f3f7);--ez-search--line-height:calc(var(--text--medium, 14px) + 4px);--ez-search__input--background-color:var(--background--medium, #e0e0e0);--ez-search__input--border:var(--border--medium, 2px solid);--ez-search__input--border-color:var(--ez-search__input--background-color);--ez-search__input--focus--border-color:var(--color--primary, #008561);--ez-search__input--disabled--background-color:var(--color--disable-secondary, #F2F5F8);--ez-search__input--disabled--color:var(--text--disable, #AFB6C0);--ez-search__input--error--border-color:#CC2936;--ez-search__btn--color:var(--title--primary, #2B3A54);--ez-search__btn-disabled--color:var(--text--disable, #AFB6C0);--ez-search__btn-hover--color:var(--color--primary, #4e4e4e);--ez-search__label--color:var(--title--primary, #2B3A54);--ez-search__list-title--primary:var(--title--primary, #2B3A54);--ez-search__list-text--primary:var(--text--primary, #626e82);--ez-search__list-height:calc(var(--ez-search--font-size) + var(--ez-search--space--medium) + 4px);--ez-search__list-min-width:64px;--ez-search--space--medium:var(--space--medium, 12px);--ez-search--space--small:var(--space--small, 6px);--ez-search__scrollbar--color-default:var(--scrollbar--default, #626e82);--ez-search__scrollbar--color-background:var(--scrollbar--background, #E5EAF0);--ez-search__scrollbar--color-hover:var(--scrollbar--hover, #2B3A54);--ez-search__scrollbar--color-clicked:var(--scrollbar--clicked, #a2abb9);--ez-search__scrollbar--border-radius:var(--border--radius-small, 6px);--ez-search__scrollbar--width:var(--space--medium, 12px);display:flex;flex-wrap:wrap;position:relative;width:var(--ez-search--width)}ez-icon{--ez-icon--color:inherit;font-weight:var(--text-weight--large, 600)}.suppressed-search-input{--ez-text-input__input--border-color:var(--color--strokes, #dce0e8);--ez-text-input__input--disabled--background-color:var(--background--xlight, #fff);--ez-text-input__input--disabled--color:var(--title--primary, #2B3A54)}.list-container{min-width:var(--ez-search__list-min-width);overflow:auto;position:relative;width:100%}.list-wrapper{display:flex;flex-direction:column;box-sizing:border-box;width:0;z-index:var(--more-visible, 2);max-height:350px;min-width:150px;background-color:var(--ez-search--background-color--xlight);border-radius:var(--ez-search--border-radius);box-shadow:var(--shadow, 0px 0px 16px 0px #000);padding:var(--ez-search--space--small)}.list-options{box-sizing:border-box;width:100%;height:100%;padding:0;display:flex;flex-direction:column;scroll-behavior:smooth;overflow:auto;scrollbar-width:thin;gap:3px;scrollbar-color:var(--ez-search__scrollbar--color-clicked) var(--ez-search__scrollbar--color-background)}.list-options::-webkit-scrollbar{background-color:var(--ez-search__scrollbar--color-background);width:var(--ez-search__scrollbar--width);max-width:var(--ez-search__scrollbar--width);min-width:var(--ez-search__scrollbar--width)}.list-options::-webkit-scrollbar-track{background-color:var(--ez-search__scrollbar--color-background);border-radius:var(--ez-search__scrollbar--border-radius)}.list-options::-webkit-scrollbar-thumb{background-color:var(--ez-search__scrollbar--color-default);border-radius:var(--ez-search__scrollbar--border-radius)}.list-options::-webkit-scrollbar-thumb:vertical:hover,.list-options::-webkit-scrollbar-thumb:horizontal:hover{background-color:var(--ez-search__scrollbar--color-hover)}.list-options::-webkit-scrollbar-thumb:vertical:active,.list-options::-webkit-scrollbar-thumb:horizontal:active{background-color:var(--ez-search__scrollbar--color-clicked)}.item{display:flex;align-items:center;width:100%;box-sizing:border-box;list-style-type:none;cursor:pointer;border-radius:var(--ez-search--border-radius-small);padding:var(--ez-search--space--small);gap:var(--space--small, 6px)}.item__value,.item__label{flex-basis:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ez-search__list-title--primary);font-family:var(--ez-search--font-family);font-size:var(--ez-search--font-size);line-height:var(--ez-search--line-height)}.item__label{font-weight:var(--ez-search--font-weight--medium)}.item__label--bold{font-weight:var(--ez-search--font-weight--large)}.item__value{text-align:center;color:var(--ez-search__list-text--primary);font-weight:var(--ez-search--font-weight--large)}.item__value--hidden{visibility:hidden;position:absolute;white-space:nowrap;z-index:-1;top:0;left:0}.item__label{text-align:left}.message{text-align:center;display:flex;justify-content:center;align-items:center;list-style-type:none;min-height:var(--ez-search__list-height)}.message__no-result{color:var(--ez-search__list-title--primary);font-family:var(--ez-search--font-family);font-size:var(--ez-search--font-size)}.message__loading{border-radius:50%;width:14px;height:14px;-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite;border:3px solid var(--ez-search__list-title--primary);border-top:3px solid transparent}.item__list>li:hover{background-color:var(--ez-search--background-medium)}.preselected{background-color:var(--background--medium)}.btn{outline:none;border:none;background:none;cursor:pointer;color:var(--ez-search__btn--color)}.btn:disabled{cursor:unset;color:var(--ez-search__btn-disabled--color)}.btn:disabled:hover{cursor:unset;color:var(--ez-search__btn-disabled--color)}.btn:hover{color:var(--ez-search__btn-hover--color)}.btn__close{visibility:hidden}ez-text-input:hover .btn__close,ez-text-input:focus .btn__close{visibility:visible}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}";export{u as ez_search}
@@ -1 +1 @@
1
- class t{static applyCSSVars(o,e,n){Array.from(o.styleSheets).filter((t=>!t.href||0===t.href.indexOf(window.location.origin))).forEach((o=>{Array.from(o.cssRules).filter((t=>t instanceof CSSStyleRule)).forEach((o=>{Array.from(o.style).forEach((o=>{o.startsWith("--")&&t.applyIfExists(e,n,o)}))}))}))}static applyVarsTextInput(o,e){e&&(t.applyIfExists(o,e,"--ez-text-input__input--background-color"),t.applyIfExists(o,e,"--ez-text-input__input--border-color"),t.applyIfExists(o,e,"--ez-text-input--height"),t.applyIfExists(o,e,"--ez-text-input__input--disabled--background-color"),t.applyIfExists(o,e,"--ez-text-input__input--disabled--color"),t.applyIfExists(o,e,"--ez-text-input--height--slim"),t.applyIfExists(o,e,"--ez-text-input--border-radius"),t.applyIfExists(o,e,"--ez-text-input__input--focus--border-color"),t.applyIfExists(o,e,"--ez-text-input__icon--width"),t.applyIfExists(o,e,"--ez-text-input__input--focus--icon-color"))}static applyVarsButton(o,e){e&&["--ez-button--min-width","--ez-button--height","--ez-button__icon--width","--ez-button__inline__icon--padding","--ez-button--padding-top","--ez-button--padding-bottom","--ez-button--padding-right","--ez-button--padding-left","--ez-button--color","--ez-button--font-size","--ez-button--font-family","--ez-button--font-weight","--ez-button--background-color","--ez-button--border-radius","--ez-button--border","--ez-button--hover-color","--ez-button--hover--background-color","--ez-button--disabled-color","--ez-button--disabled--background-color","--ez-button--focus--border","--ez-button--focus--box-shadow","--ez-button--active-color","--ez-button--active--background-color","--ez-button--link-color","--ez-button--link--hover-color","--ez-button--link--small--font-size","--ez-button--link--medium--font-size","--ez-button--link--large--font-size"].forEach((n=>{t.applyIfExists(o,e,n)}))}static applyIfExists(t,o,e){const n=getComputedStyle(t).getPropertyValue(e);n&&o.style.setProperty(e,n)}}export{t as C}
1
+ class t{static applyCSSVars(o,e,n){Array.from(o.styleSheets).filter((t=>!t.href||0===t.href.indexOf(window.location.origin))).forEach((o=>{Array.from(o.cssRules).filter((t=>t instanceof CSSStyleRule)).forEach((o=>{Array.from(o.style).forEach((o=>{o.startsWith("--")&&t.applyIfExists(e,n,o)}))}))}))}static applyVarsTextInput(o,e){e&&(t.applyIfExists(o,e,"--ez-text-input__input--background-color"),t.applyIfExists(o,e,"--ez-text-input__input--border-color"),t.applyIfExists(o,e,"--ez-text-input--height"),t.applyIfExists(o,e,"--ez-text-input__input--disabled--background-color"),t.applyIfExists(o,e,"--ez-text-input__input--disabled--color"),t.applyIfExists(o,e,"--ez-text-input--height--slim"),t.applyIfExists(o,e,"--ez-text-input--border-radius"),t.applyIfExists(o,e,"--ez-text-input__input--focus--border-color"),t.applyIfExists(o,e,"--ez-text-input__icon--width"),t.applyIfExists(o,e,"--ez-text-input__input--focus--icon-color"))}static applyVarsButton(o,e){e&&["--ez-button--min-width","--ez-button--height","--ez-button__icon--width","--ez-button__inline__icon--padding","--ez-button--padding-top","--ez-button--padding-bottom","--ez-button--padding-right","--ez-button--padding-left","--ez-button--color","--ez-button--font-size","--ez-button--font-family","--ez-button--font-weight","--ez-button--background-color","--ez-button--border-radius","--ez-button--border","--ez-button--hover-color","--ez-button--hover--background-color","--ez-button--disabled-color","--ez-button--disabled--background-color","--ez-button--focus--border","--ez-button--focus--box-shadow","--ez-button--active-color","--ez-button--active--background-color","--ez-button--link-color","--ez-button--link--hover-color","--ez-button--link--small--font-size","--ez-button--link--medium--font-size","--ez-button--link--large--font-size"].forEach((n=>{t.applyIfExists(o,e,n)}))}static applyVarsGrid(t,o){o&&["--ez-grid--min-height","--snk-grid-min-height"].forEach((e=>{const n=getComputedStyle(t).getPropertyValue(e);null!=n&&o.style.setProperty(e,n)}))}static applyIfExists(t,o,e){const n=getComputedStyle(t).getPropertyValue(e);n&&o.style.setProperty(e,n)}}export{t as C}
@@ -1 +1 @@
1
- import{r as o,c as r,h as a,H as e,g as i}from"./p-e318d280.js";import{ElementIDUtils as t}from"@sankhyalabs/core";const d=class{constructor(a){o(this,a),this.ezChange=r(this,"ezChange",7),this.value=void 0,this.options=[],this.enabled=!0,this.label=void 0,this.direction="vertical"}componentDidLoad(){this.hostElement&&t.addIDInfo(this.hostElement,"input")}componentWillRender(){this._options=[...this.options];const o=this.hostElement.querySelectorAll("ez-radio-button-option");o&&o.forEach((o=>{let r=o.getAttribute("label"),a=o.getAttribute("value");this._options.push({label:r,value:a})}))}handleInputChange(o){this.value=o.target.value,this.ezChange.emit(this.value)}render(){return a(e,null,this.label&&a("label",{class:"label"},this.label),a("div",{class:"form form--"+this.direction},this._options.map(((o,r)=>a("div",{class:"form__group"},a("input",{id:"rad"+r,class:"form__radio",name:"theradio",type:"radio",value:o.value,onChange:o=>{this.handleInputChange(o)},disabled:!this.enabled,checked:o.value===this.value,"data-element-id":t.getInternalIDInfo(`input_${o.value}`)}),a("label",{htmlFor:"rad"+r,class:"form__label"},o.label))))))}get hostElement(){return i(this)}};d.style=":host{--ez-radio-button--font-family:var(--font-pattern, Arial);--ez-radio-button--font-size:var(--text--medium, 14px);--ez-radio-button--font-weight:var(--text-weight--large);--ez-radio-button--font-color:var(--title--primary, #2B3A54);--ez-radio-button--padding-vertical:var(--space--medium, 12px);--ez-radio-button--padding-horizontal:var(--space--small, 6px);--ez-radio-button__form-label--font-family:var(--font-pattern, Arial);--ez-radio-button__form-label--font-weight:var(--text-weight--medium, 400);--ez-radio-button__form-label--title-primary:var(--title--primary, #2B3A54);--ez-radio-button__form-label--font-size:var(--text--medium, 14px);--ez-radio-button__form-label--padding-horizontal:var(--space--medium, 12px);--ez-radio-button__form-radio--border-color:var(--title--primary, #2B3A54);--ez-radio-button__form-radio--checked--color:var(--color--primary, #008561);--ez-radio-button__form-radio--disabled--border-color:var(--color--strokes, #dce0e8);--ez-radio-button__form-radio--disabled--background-color:var(--background--medium, #f0f3f7);--ez-radio-button__form-radio--disabled--color:var(--color--strokes, #dce0e8);--ez-radio-button__form-radio--disabled--before--background-color:var(--color--strokes, #dce0e8);--ez-radio-button__form-radio--focus--background-color:var(--color--inverted, #fff);--ez-radio-button__form-radio--checked--box-shadow-color:var(--background--strong, #e4eaf1);--ez-radio-button__form-radio--checked--focus--background-color:var(--color--inverted, #fff);--ez-radio-button__form-radio--checked--focus--box-shadow-color:var(--color--primary-300, #e2f4ef);--ez-radio-button__form-radio--checked--hover--background-color:var(--color--inverted, #fff);--ez-radio-button__form-radio--checked--hover--box-shadow-color:#daece7;--ez-radio-button__form-radio--hover--box-shadow-color:var(--color--strokes, #dce0e8);--ez-radio-button__form-radio--checked--disabled--hover--background-color:var(--background--medium, #f0f3f7);display:flex;width:100%;flex-direction:column;align-items:flex-start;box-sizing:border-box}.form{padding:var(--ez-radio-button--padding-vertical) var(--ez-radio-button--padding-horizontal);gap:var(--ez-radio-button__form-label--padding-horizontal)}.form--vertical{display:flex;flex-direction:column}.form--horizontal{display:flex;flex-direction:row}.form__group{display:grid;grid-template-columns:20px auto;align-items:center}.label{font-family:var(--ez-radio-button--font-family);font-size:var(--ez-radio-button--font-size);font-weight:var(--ez-radio-button--font-weight);color:var(--ez-radio-button--font-color)}.form__label{cursor:pointer;font-weight:var(--ez-radio-button__form-label--font-weight);color:var(--ez-radio-button__form-label--title-primary);font-family:var(--ez-radio-button__form-label--font-family);font-size:var(--ez-radio-button__form-label--font-size);padding-left:var(--ez-radio-button__form-label--padding-horizontal);padding-right:var(--ez-radio-button__form-label--padding-horizontal)}.form__radio{cursor:pointer;appearance:none;outline:none;position:relative;display:flex;align-items:center;justify-content:center;margin:0;padding:0;width:20px;height:20px;border-radius:50%;border:2px solid var(--ez-radio-button__form-radio--border-color)}.form__radio::before{content:'';display:block;position:absolute;opacity:0;transition:all 300ms ease-in-out;height:100%;width:100%;border-radius:50%;transform:scale(0.5);background:var(--ez-radio-button__form-radio--checked--color)}.form__radio:checked:before{opacity:1}.form__radio:checked{border:2px solid var(--ez-radio-button__form-radio--checked--color)}.form__radio:disabled{cursor:default;border:2px solid var(--ez-radio-button__form-radio--disabled--border-color);background-color:var(--ez-radio-button__form-radio--disabled--background-color)}.form__radio:disabled:hover{box-shadow:inherit}input[type=radio]:disabled~label{cursor:default;color:var(--ez-radio-button__form-radio--disabled--color)}.form__radio:disabled:before{background:var(--ez-radio-button__form-radio--disabled--before--background-color)}.form__radio:focus{transition:0.25s linear;background-color:var(--ez-radio-button__form-radio--focus--background-color);box-shadow:0px 0px 0px 6px var(--ez-radio-button__form-radio--checked--box-shadow-color)}.form__radio:checked:focus{transition:0.25s linear;background-color:var(--ez-radio-button__form-radio--checked--focus--background-color);box-shadow:0px 0px 0px 6px var(--ez-radio-button__form-radio--checked--focus--box-shadow-color)}.form__radio:checked:hover{transition:0.25s linear;background-color:var(--ez-radio-button__form-radio--checked--hover--background-color);box-shadow:0px 0px 0px 6px var(--ez-radio-button__form-radio--checked--hover--box-shadow-color)}.form__radio:hover{transition:0.25s linear;box-shadow:0px 0px 0px 6px var(--ez-radio-button__form-radio--hover--box-shadow-color)}.form__radio:checked:disabled:hover{box-shadow:none;background-color:var(--ez-radio-button__form-radio--checked--disabled--hover--background-color)}";export{d as ez_radio_button}
1
+ import{r as o,c as r,h as a,H as e,g as i}from"./p-23a36bb6.js";import{ElementIDUtils as t}from"@sankhyalabs/core";const d=class{constructor(a){o(this,a),this.ezChange=r(this,"ezChange",7),this.value=void 0,this.options=[],this.enabled=!0,this.label=void 0,this.direction="vertical"}componentDidLoad(){this.hostElement&&t.addIDInfo(this.hostElement,"input")}componentWillRender(){this._options=[...this.options];const o=this.hostElement.querySelectorAll("ez-radio-button-option");o&&o.forEach((o=>{let r=o.getAttribute("label"),a=o.getAttribute("value");this._options.push({label:r,value:a})}))}handleInputChange(o){this.value=o.target.value,this.ezChange.emit(this.value)}render(){return a(e,null,this.label&&a("label",{class:"label"},this.label),a("div",{class:"form form--"+this.direction},this._options.map(((o,r)=>a("div",{class:"form__group"},a("input",{id:"rad"+r,class:"form__radio",name:"theradio",type:"radio",value:o.value,onChange:o=>{this.handleInputChange(o)},disabled:!this.enabled,checked:o.value===this.value,"data-element-id":t.getInternalIDInfo(`input_${o.value}`)}),a("label",{htmlFor:"rad"+r,class:"form__label"},o.label))))))}get hostElement(){return i(this)}};d.style=":host{--ez-radio-button--font-family:var(--font-pattern, Arial);--ez-radio-button--font-size:var(--text--medium, 14px);--ez-radio-button--font-weight:var(--text-weight--large);--ez-radio-button--font-color:var(--title--primary, #2B3A54);--ez-radio-button--padding-vertical:var(--space--medium, 12px);--ez-radio-button--padding-horizontal:var(--space--small, 6px);--ez-radio-button__form-label--font-family:var(--font-pattern, Arial);--ez-radio-button__form-label--font-weight:var(--text-weight--medium, 400);--ez-radio-button__form-label--title-primary:var(--title--primary, #2B3A54);--ez-radio-button__form-label--font-size:var(--text--medium, 14px);--ez-radio-button__form-label--padding-horizontal:var(--space--medium, 12px);--ez-radio-button__form-radio--border-color:var(--title--primary, #2B3A54);--ez-radio-button__form-radio--checked--color:var(--color--primary, #008561);--ez-radio-button__form-radio--disabled--border-color:var(--color--strokes, #dce0e8);--ez-radio-button__form-radio--disabled--background-color:var(--background--medium, #f0f3f7);--ez-radio-button__form-radio--disabled--color:var(--color--strokes, #dce0e8);--ez-radio-button__form-radio--disabled--before--background-color:var(--color--strokes, #dce0e8);--ez-radio-button__form-radio--focus--background-color:var(--color--inverted, #fff);--ez-radio-button__form-radio--checked--box-shadow-color:var(--background--strong, #e4eaf1);--ez-radio-button__form-radio--checked--focus--background-color:var(--color--inverted, #fff);--ez-radio-button__form-radio--checked--focus--box-shadow-color:var(--color--primary-300, #e2f4ef);--ez-radio-button__form-radio--checked--hover--background-color:var(--color--inverted, #fff);--ez-radio-button__form-radio--checked--hover--box-shadow-color:#daece7;--ez-radio-button__form-radio--hover--box-shadow-color:var(--color--strokes, #dce0e8);--ez-radio-button__form-radio--checked--disabled--hover--background-color:var(--background--medium, #f0f3f7);display:flex;width:100%;flex-direction:column;align-items:flex-start;box-sizing:border-box}.form{padding:var(--ez-radio-button--padding-vertical) var(--ez-radio-button--padding-horizontal);gap:var(--ez-radio-button__form-label--padding-horizontal)}.form--vertical{display:flex;flex-direction:column}.form--horizontal{display:flex;flex-direction:row}.form__group{display:grid;grid-template-columns:20px auto;align-items:center}.label{font-family:var(--ez-radio-button--font-family);font-size:var(--ez-radio-button--font-size);font-weight:var(--ez-radio-button--font-weight);color:var(--ez-radio-button--font-color)}.form__label{cursor:pointer;font-weight:var(--ez-radio-button__form-label--font-weight);color:var(--ez-radio-button__form-label--title-primary);font-family:var(--ez-radio-button__form-label--font-family);font-size:var(--ez-radio-button__form-label--font-size);padding-left:var(--ez-radio-button__form-label--padding-horizontal);padding-right:var(--ez-radio-button__form-label--padding-horizontal)}.form__radio{cursor:pointer;appearance:none;outline:none;position:relative;display:flex;align-items:center;justify-content:center;margin:0;padding:0;width:20px;height:20px;border-radius:50%;border:2px solid var(--ez-radio-button__form-radio--border-color)}.form__radio::before{content:'';display:block;position:absolute;opacity:0;transition:all 300ms ease-in-out;height:100%;width:100%;border-radius:50%;transform:scale(0.5);background:var(--ez-radio-button__form-radio--checked--color)}.form__radio:checked:before{opacity:1}.form__radio:checked{border:2px solid var(--ez-radio-button__form-radio--checked--color)}.form__radio:disabled{cursor:default;border:2px solid var(--ez-radio-button__form-radio--disabled--border-color);background-color:var(--ez-radio-button__form-radio--disabled--background-color)}.form__radio:disabled:hover{box-shadow:inherit}input[type=radio]:disabled~label{cursor:default;color:var(--ez-radio-button__form-radio--disabled--color)}.form__radio:disabled:before{background:var(--ez-radio-button__form-radio--disabled--before--background-color)}.form__radio:focus{transition:0.25s linear;background-color:var(--ez-radio-button__form-radio--focus--background-color);box-shadow:0px 0px 0px 6px var(--ez-radio-button__form-radio--checked--box-shadow-color)}.form__radio:checked:focus{transition:0.25s linear;background-color:var(--ez-radio-button__form-radio--checked--focus--background-color);box-shadow:0px 0px 0px 6px var(--ez-radio-button__form-radio--checked--focus--box-shadow-color)}.form__radio:checked:hover{transition:0.25s linear;background-color:var(--ez-radio-button__form-radio--checked--hover--background-color);box-shadow:0px 0px 0px 6px var(--ez-radio-button__form-radio--checked--hover--box-shadow-color)}.form__radio:hover{transition:0.25s linear;box-shadow:0px 0px 0px 6px var(--ez-radio-button__form-radio--hover--box-shadow-color)}.form__radio:checked:disabled:hover{box-shadow:none;background-color:var(--ez-radio-button__form-radio--checked--disabled--hover--background-color)}";export{d as ez_radio_button}
@@ -0,0 +1 @@
1
+ import{r as t,c as i,h as o,F as e,H as l}from"./p-23a36bb6.js";import{KeyboardManager as d,FloatingManager as p}from"@sankhyalabs/core";const n=class{constructor(o){t(this,o),this.ezClosePopup=i(this,"ezClosePopup",7),this.ezPopupAction=i(this,"ezPopupAction",7),this._sizeClasses={"x-small":"col--sd-3 ez-popup__size-limit--x-small",small:"col--sd-5",medium:"col--sd-6",large:"col--sd-9","x-large":"col--sd-11",default:"ez-popup__size-limit--x-small"},this.size="medium",this.opened=!1,this.useHeader=!0,this.heightMode="full",this.ezTitle=void 0}observeConfig(){this.manageOverflow()}componentDidLoad(){new d({propagate:!1,element:this._element}).bind("Enter",this.ezPopupAction.emit.bind("OK")).bind("Escape",(()=>this.opened=!1)).bind("Esc",(()=>this.opened=!1))}manageOverflow(){window.document.body.style.overflow=this.opened?"hidden":""}manageOverlay(){this.opened?this._overlayId=p.subscribeOverlayControl(this._modalRef):p.unsubscribeOverlayControl(this._modalRef||this._overlayId)}getGridSize(){return this._sizeClasses[this.size]||this._sizeClasses.medium}componentDidRender(){this._container&&this._container.focus(),this.manageOverlay()}render(){return o(l,null,this.opened?o("div",{class:"overlay",ref:t=>this._modalRef=t},o("div",{class:"popup col "+this.getGridSize()},o("div",{class:"popup__container "+("auto"===this.heightMode?"popup__container--auto":""),ref:t=>this._container=t,tabIndex:-1},o("div",{class:"popup__content"},o("div",{class:"popup__header "+(this.useHeader?"popup__header--padding":"")},this.useHeader&&o(e,null,!!this.ezTitle&&o("div",{class:"popup__title"},this.ezTitle),o("button",{class:this.ezTitle?"btn-close":"btn-close btn-close--solo",onClick:()=>{this.opened=!1,this.ezClosePopup.emit()}}))),o("div",{class:"popup__expandable-content"},o("slot",null)))))):void 0)}static get watchers(){return{opened:["observeConfig"]}}};n.style=':host{display:flex;--ez-popup-z-index:var(--elevation--24, 24);--ez-popup__container--color:var(--title--primary, #2b3a54);--ez-popup__container--padding:var(--space--large, 24px);--ez-popup__header--padding-bottom:var(--space--medium, 12px);--ez-popup__title--font-family:var(--font-pattern, "Roboto");--ez-popup__title--font-size:var(--title--extra-large, 24px);--ez-popup__title--color:var(--title--primary, #2b3a54);--ez-popup__title--font-weight:var(--text-weight--large, 600);--ez-popup__btn__close--icon-color:var(--title--primary, #2b3a54);--ez-popup__btn__close--icon:url(\'data:image/svg+xml;utf8,<svg width="14" height="14" viewBox="0 0 14 14" xmlns="http://www.w3.org/2000/svg"><path d="M 8.2421753,6.9944578 13.743748,1.4930784 C 13.907781,1.3290628 14,1.1065946 14,0.87462511 14,0.64266712 13.907782,0.42019873 13.743748,0.25617155 13.579712,0.09215597 13.35727,6.48e-8 13.125266,6.48e-8 12.89338,6.48e-8 12.670821,0.09215634 12.506787,0.25617155 L 7.005215,5.7575508 1.5035972,0.25617155 C 1.3395631,0.09215597 1.1170968,6.48e-8 0.88511716,6.48e-8 0.65314917,6.48e-8 0.4306712,0.09215597 0.26663695,0.25617155 0.10260271,0.42019873 0.01045441,0.64266712 0.01045441,0.87462511 c 0,0.23196949 0.0921483,0.45443769 0.25618254,0.61845329 L 5.7682546,6.9944578 0.26663695,12.497027 c -0.0834745,0.08067 -0.15003245,0.1772 -0.19581514,0.283871 C 0.02505077,12.887561 9.831648e-4,13.002399 2.950369e-5,13.118395 -9.2415746e-4,13.234504 0.02125019,13.349689 0.06527245,13.457057 c 0.04401053,0.107479 0.10898307,0.205064 0.1911168,0.287137 0.0821454,0.08208 0.17979645,0.146888 0.28727561,0.190839 0.10747906,0.04395 0.22262954,0.06598 0.33872417,0.06493 0.116095,-10e-4 0.23082547,-0.0253 0.33747687,-0.07112 0.1066637,-0.04593 0.2031133,-0.112615 0.2837313,-0.196086 L 7.005215,8.2313646 12.506787,13.732768 c 0.164034,0.164027 0.386593,0.256125 0.618479,0.256125 0.232004,0 0.454446,-0.09209 0.618482,-0.256125 C 13.907781,13.568741 14,13.346308 14,13.114315 14,12.882323 13.90779,12.659888 13.743748,12.495861 Z"/></svg>\')}.overlay{position:fixed;display:flex;top:0px;z-index:var(--ez-popup-z-index, 24);left:0px;width:100%;align-items:center;justify-content:center;box-sizing:border-box;height:100vh;backdrop-filter:blur(4px);background:rgba(0, 4, 12, 0.4)}.popup{display:flex;height:100%;align-items:center;justify-content:center;box-sizing:border-box}.popup__container{width:100%;max-height:90%;height:100%;display:flex;flex-wrap:wrap;overflow:hidden;outline:none;background:#FFFF;color:var(--ez-popup__container--color);border-radius:12px;box-shadow:0px 0px 16px rgba(0, 38, 111, 0.122);box-sizing:border-box;padding:var(--ez-popup__container--padding)}.popup__container--auto{height:auto}.popup__content{box-sizing:border-box;height:100%;width:100%}.popup__expandable-content{box-sizing:border-box;width:100%;height:calc(100% - 44px)}.popup__header{width:100%;display:flex}.popup__header--padding{padding-bottom:var(--ez-popup__header--padding-bottom)}.popup__title{display:flex;margin:0;width:100%;font-family:var(--ez-popup__title--font-family);font-size:var(--ez-popup__title--font-size);font-weight:var(--ez-popup__title--font-weight);color:var(--ez-popup__title--color);line-height:1.3}.btn-close{justify-content:flex-end;align-self:flex-start;align-items:flex-start;display:flex;outline:none;border:none;background-color:unset;cursor:pointer}.btn-close::after{content:\'\';display:flex;background-color:var(--ez-popup__btn__close--icon-color);width:14px;height:14px;-webkit-mask-image:var(--ez-popup__btn__close--icon);mask-image:var(--ez-popup__btn__close--icon)}.btn-close--solo{width:100%}.row{width:100%;display:flex;flex-wrap:wrap}.col{display:flex;flex-wrap:wrap;align-self:flex-start;box-sizing:border-box}.col--stretch{align-self:stretch}.col--undefined{width:unset}.col--nowrap{flex-wrap:nowrap}.ez-popup__size-limit--x-small{min-width:350px;max-width:560px}@media screen and (min-width: 320px){.col--sd-1{width:8.33333%}.col--sd-2{width:16.66667%}.col--sd-3{width:25%}.col--sd-4{width:33.33333%}.col--sd-5{width:41.66667%}.col--sd-6{width:50%}.col--sd-7{width:58.33333%}.col--sd-8{width:66.66667%}.col--sd-9{width:75%}.col--sd-10{width:83.33333%}.col--sd-11{width:91.66667%}.col--sd-12{width:100%}}@media screen and (min-width: 480px){.col--pn-1{width:8.33333%}.col--pn-2{width:16.66667%}.col--pn-3{width:25%}.col--pn-4{width:33.33333%}.col--pn-5{width:41.66667%}.col--pn-6{width:50%}.col--pn-7{width:58.33333%}.col--pn-8{width:66.66667%}.col--pn-9{width:75%}.col--pn-10{width:83.33333%}.col--pn-11{width:91.66667%}.col--pn-12{width:100%}}@media screen and (min-width: 768px){.col--tb-1{width:8.33333%}.col--tb-2{width:16.66667%}.col--tb-3{width:25%}.col--tb-4{width:33.33333%}.col--tb-5{width:41.66667%}.col--tb-6{width:50%}.col--tb-7{width:58.33333%}.col--tb-8{width:66.66667%}.col--tb-9{width:75%}.col--tb-10{width:83.33333%}.col--tb-11{width:91.66667%}.col--tb-12{width:100%}}@media screen and (min-width: 992px){.col--md-1{width:8.33333%}.col--md-2{width:16.66667%}.col--md-3{width:25%}.col--md-4{width:33.33333%}.col--md-5{width:41.66667%}.col--md-6{width:50%}.col--md-7{width:58.33333%}.col--md-8{width:66.66667%}.col--md-9{width:75%}.col--md-10{width:83.33333%}.col--md-11{width:91.66667%}.col--md-12{width:100%}}@media screen and (min-width: 1200px){.col--ld-1{width:8.33333%}.col--ld-2{width:16.66667%}.col--ld-3{width:25%}.col--ld-4{width:33.33333%}.col--ld-5{width:41.66667%}.col--ld-6{width:50%}.col--ld-7{width:58.33333%}.col--ld-8{width:66.66667%}.col--ld-9{width:75%}.col--ld-10{width:83.33333%}.col--ld-11{width:91.66667%}.col--ld-12{width:100%}}';export{n as ez_popup}
@@ -1 +1 @@
1
- import{r as t,c as o,h as i,H as e,g as s}from"./p-e318d280.js";import{FloatingManager as r}from"@sankhyalabs/core";const n=class{constructor(i){t(this,i),this.ezVisibilityChange=o(this,"ezVisibilityChange",7),this._firstRender=!0,this.innerClickTest=(t,o,i)=>{const e=[t];this.innerElement&&("string"==typeof this.innerElement?e.push(document.querySelector(`#${this.innerElement}`)):this.innerElement.forEach((t=>{e.push(document.querySelector(`#${t}`))})));const s=(null==i?void 0:i.composedPath())||[];for(var r=0;r<e.length;r++){let t=e[r];if(null!=t){if(s.includes(t))return!0;if(t.contains(o))return!0;if(i&&"nodeType"in(null==i?void 0:i.target)&&t.contains(i.target))return!0;if(t.shadowRoot&&t.shadowRoot.contains(o))return!0;if(t=this._host,t.lastElementChild.shadowRoot?t.lastElementChild.shadowRoot.contains(o):t.contains(o))return!0}}return!1},this.backClickListener=()=>{this.ezVisibilityChange.emit(!1)},this.autoClose=!0,this.boxWidth="fit-content",this.opened=void 0,this.innerElement=void 0,this.overlayType="light"}observeOpened(t,o){t!=o&&(o?this.hide():this.show(),this.ezVisibilityChange.emit(t))}async updatePosition(t,o){r.updateFloatPosition(this._box,this._container,{autoClose:this.autoClose,top:t,left:o,innerClickTest:this.innerClickTest,backClickListener:this.backClickListener})}async show(t,o){this.float({top:t,left:o})}async showUnder(t,o){t&&this._host?this.float(this.calculatePosition(t,Object.assign({verticalGap:0,horizontalGap:0,fromRight:!1},o))):this.show((null==o?void 0:o.verticalGap)?`${o.verticalGap}px`:void 0,(null==o?void 0:o.horizontalGap)?`${o.horizontalGap}px`:void 0)}calculatePosition(t,o){const i=this._host.getBoundingClientRect(),e=t.getBoundingClientRect(),s=`${(o.fromRight?i.right-e.right:e.x-i.x)+o.horizontalGap}px`;return{top:`${e.bottom-i.y+o.verticalGap}px`,left:o.fromRight?"":s,right:o.fromRight?s:""}}float(t){this._box.style.top="",this._box.style.left="",this._box.style.right="";const o="none"!==this.overlayType,i=`ez-scrim ez-scrim--${this.overlayType}`;let e=Object.assign(Object.assign({},t),{autoClose:this.autoClose,innerClickTest:this.innerClickTest,backClickListener:this.backClickListener});o&&(e=Object.assign(Object.assign({},e),{autoClose:!0,useOverlay:o,overlayClassName:i})),this._floatingID=r.float(this._box,this._container,e),this.opened=!0}async hide(){void 0!==this._floatingID&&(r.close(this._floatingID),this._floatingID=void 0,this.opened=!1)}componentDidRender(){this._firstRender&&(this._box.remove(),this._firstRender=!1)}render(){return i(e,null,i("section",{ref:t=>this._container=t},i("div",{class:"popover__box "+("fit-content"===this.boxWidth?"popover__box--fit-content":"popover__box--full-width"),ref:t=>this._box=t},i("slot",null))))}get _host(){return s(this)}static get watchers(){return{opened:["observeOpened"]}}};n.style=":host{--ez-popover__box--border-radius:var(--border--radius-medium, 12px);--ez-popover__box--box-shadow:var(--shadow, 0px 0px 16px 0px #000);--ez-popover__box--background-color:var(--background--xlight, #fff);--ez-popover__box--z-index:var(--most-visible, 3);position:relative;display:flex;user-select:none}.popover__box{z-index:var(--ez-popover__box--z-index);display:flex;flex-direction:column;height:fit-content;background-color:var(--ez-popover__box--background-color);border-radius:var(--ez-popover__box--border-radius);box-shadow:var(--ez-popover__box--box-shadow)}.popover__box--fit-content{width:fit-content}.popover__box--full-width{width:100%}";export{n as ez_popover}
1
+ import{r as t,c as o,h as i,H as e,g as s}from"./p-23a36bb6.js";import{FloatingManager as r}from"@sankhyalabs/core";const n=class{constructor(i){t(this,i),this.ezVisibilityChange=o(this,"ezVisibilityChange",7),this._firstRender=!0,this.innerClickTest=(t,o,i)=>{const e=[t];this.innerElement&&("string"==typeof this.innerElement?e.push(document.querySelector(`#${this.innerElement}`)):this.innerElement.forEach((t=>{e.push(document.querySelector(`#${t}`))})));const s=(null==i?void 0:i.composedPath())||[];for(var r=0;r<e.length;r++){let t=e[r];if(null!=t){if(s.includes(t))return!0;if(t.contains(o))return!0;if(i&&"nodeType"in(null==i?void 0:i.target)&&t.contains(i.target))return!0;if(t.shadowRoot&&t.shadowRoot.contains(o))return!0;if(t=this._host,t.lastElementChild.shadowRoot?t.lastElementChild.shadowRoot.contains(o):t.contains(o))return!0}}return!1},this.backClickListener=()=>{this.ezVisibilityChange.emit(!1)},this.autoClose=!0,this.boxWidth="fit-content",this.opened=void 0,this.innerElement=void 0,this.overlayType="light"}observeOpened(t,o){t!=o&&(o?this.hide():this.show(),this.ezVisibilityChange.emit(t))}async updatePosition(t,o){r.updateFloatPosition(this._box,this._container,{autoClose:this.autoClose,top:t,left:o,innerClickTest:this.innerClickTest,backClickListener:this.backClickListener})}async show(t,o){this.float({top:t,left:o})}async showUnder(t,o){t&&this._host?this.float(this.calculatePosition(t,Object.assign({verticalGap:0,horizontalGap:0,fromRight:!1},o))):this.show((null==o?void 0:o.verticalGap)?`${o.verticalGap}px`:void 0,(null==o?void 0:o.horizontalGap)?`${o.horizontalGap}px`:void 0)}calculatePosition(t,o){const i=this._host.getBoundingClientRect(),e=t.getBoundingClientRect(),s=`${(o.fromRight?i.right-e.right:e.x-i.x)+o.horizontalGap}px`;return{top:`${e.bottom-i.y+o.verticalGap}px`,left:o.fromRight?"":s,right:o.fromRight?s:""}}float(t){this._box.style.top="",this._box.style.left="",this._box.style.right="";const o="none"!==this.overlayType,i=`ez-scrim ez-scrim--${this.overlayType}`;let e=Object.assign(Object.assign({},t),{autoClose:this.autoClose,innerClickTest:this.innerClickTest,backClickListener:this.backClickListener});o&&(e=Object.assign(Object.assign({},e),{autoClose:!0,useOverlay:o,overlayClassName:i})),this._floatingID=r.float(this._box,this._container,e),this.opened=!0}async hide(){void 0!==this._floatingID&&(r.close(this._floatingID),this._floatingID=void 0,this.opened=!1)}componentDidRender(){this._firstRender&&(this._box.remove(),this._firstRender=!1)}render(){return i(e,null,i("section",{ref:t=>this._container=t},i("div",{class:"popover__box "+("fit-content"===this.boxWidth?"popover__box--fit-content":"popover__box--full-width"),ref:t=>this._box=t},i("slot",null))))}get _host(){return s(this)}static get watchers(){return{opened:["observeOpened"]}}};n.style=":host{--ez-popover__box--border-radius:var(--border--radius-medium, 12px);--ez-popover__box--box-shadow:var(--shadow, 0px 0px 16px 0px #000);--ez-popover__box--background-color:var(--background--xlight, #fff);--ez-popover__box--z-index:var(--most-visible, 3);position:relative;display:flex;user-select:none}.popover__box{z-index:var(--ez-popover__box--z-index);display:flex;flex-direction:column;height:fit-content;background-color:var(--ez-popover__box--background-color);border-radius:var(--ez-popover__box--border-radius);box-shadow:var(--ez-popover__box--box-shadow)}.popover__box--fit-content{width:fit-content}.popover__box--full-width{width:100%}";export{n as ez_popover}
@@ -1 +1 @@
1
- import{r as t,h as i,H as s,g as h}from"./p-e318d280.js";import{StringUtils as n}from"@sankhyalabs/core";var r=function(t,i){return Number(t.slice(0,-1*i.length))},e=function(t){return t.endsWith("px")?{value:t,type:"px",numeric:r(t,"px")}:t.endsWith("fr")?{value:t,type:"fr",numeric:r(t,"fr")}:t.endsWith("%")?{value:t,type:"%",numeric:r(t,"%")}:"auto"===t?{value:t,type:"auto"}:null},o=function(t){return t.split(" ").map(e)},u=function(t,i,s){return i.concat(s).map((function(i){return i.style[t]})).filter((function(t){return void 0!==t&&""!==t}))},c=function(t){for(var i=0;i<t.length;i++)if(t[i].numeric>0)return i;return null},a=function(){return!1},f=function(t,i,s){t.style[i]=s},l=function(t,i,s){var h=t[i];return void 0!==h?h:s};function d(t){var i;return(i=[]).concat.apply(i,Array.from(t.ownerDocument.styleSheets).map((function(t){var i=[];try{i=Array.from(t.cssRules||[])}catch(t){}return i}))).filter((function(i){var s=!1;try{s=t.matches(i.selectorText)}catch(t){}return s}))}var m=function(t,i,s){this.direction=t,this.element=i.element,this.track=i.track,"column"===t?(this.gridTemplateProp="grid-template-columns",this.gridGapProp="grid-column-gap",this.cursor=l(s,"columnCursor",l(s,"cursor","col-resize")),this.snapOffset=l(s,"columnSnapOffset",l(s,"snapOffset",30)),this.dragInterval=l(s,"columnDragInterval",l(s,"dragInterval",1)),this.clientAxis="clientX",this.optionStyle=l(s,"gridTemplateColumns")):"row"===t&&(this.gridTemplateProp="grid-template-rows",this.gridGapProp="grid-row-gap",this.cursor=l(s,"rowCursor",l(s,"cursor","row-resize")),this.snapOffset=l(s,"rowSnapOffset",l(s,"snapOffset",30)),this.dragInterval=l(s,"rowDragInterval",l(s,"dragInterval",1)),this.clientAxis="clientY",this.optionStyle=l(s,"gridTemplateRows")),this.onDragStart=l(s,"onDragStart",a),this.onDragEnd=l(s,"onDragEnd",a),this.onDrag=l(s,"onDrag",a),this.writeStyle=l(s,"writeStyle",f),this.startDragging=this.startDragging.bind(this),this.stopDragging=this.stopDragging.bind(this),this.drag=this.drag.bind(this),this.minSizeStart=i.minSizeStart,this.minSizeEnd=i.minSizeEnd,i.element&&(this.element.addEventListener("mousedown",this.startDragging),this.element.addEventListener("touchstart",this.startDragging))};m.prototype.getDimensions=function(){var t=this.grid.getBoundingClientRect(),i=t.width,s=t.height,h=t.bottom,n=t.left,r=t.right;"column"===this.direction?(this.start=t.top,this.end=h,this.size=s):"row"===this.direction&&(this.start=n,this.end=r,this.size=i)},m.prototype.getSizeAtTrack=function(t,i){return function(t,i,s,h){return void 0===s&&(s=0),void 0===h&&(h=!1),i.slice(0,h?t+1:t).reduce((function(t,i){return t+i.numeric}),0)+(s?t*s:0)}(t,this.computedPixels,this.computedGapPixels,i)},m.prototype.getSizeOfTrack=function(t){return this.computedPixels[t].numeric},m.prototype.getRawTracks=function(){var t=u(this.gridTemplateProp,[this.grid],d(this.grid));if(!t.length){if(this.optionStyle)return this.optionStyle;throw Error("Unable to determine grid template tracks from styles.")}return t[0]},m.prototype.getGap=function(){var t=u(this.gridGapProp,[this.grid],d(this.grid));return t.length?t[0]:null},m.prototype.getRawComputedTracks=function(){return window.getComputedStyle(this.grid)[this.gridTemplateProp]},m.prototype.getRawComputedGap=function(){return window.getComputedStyle(this.grid)[this.gridGapProp]},m.prototype.setTracks=function(t){this.tracks=t.split(" "),this.trackValues=o(t)},m.prototype.setComputedTracks=function(t){this.computedTracks=t.split(" "),this.computedPixels=o(t)},m.prototype.setGap=function(t){this.gap=t},m.prototype.setComputedGap=function(t){var i;this.computedGap=t,this.computedGapPixels=((i=this.computedGap).endsWith("px")?Number(i.slice(0,-1*"px".length)):null)||0},m.prototype.getMousePosition=function(t){return"touches"in t?t.touches[0][this.clientAxis]:t[this.clientAxis]},m.prototype.startDragging=function(t){if(!("button"in t)||0===t.button){t.preventDefault(),this.grid=this.element?this.element.parentNode:t.target.parentNode,this.getDimensions(),this.setTracks(this.getRawTracks()),this.setComputedTracks(this.getRawComputedTracks()),this.setGap(this.getGap()),this.setComputedGap(this.getRawComputedGap());var i=this.trackValues.filter((function(t){return"%"===t.type})),s=this.trackValues.filter((function(t){return"fr"===t.type}));if(this.totalFrs=s.length,this.totalFrs){var h=c(s);null!==h&&(this.frToPixels=this.computedPixels[h].numeric/s[h].numeric)}if(i.length){var n=c(i);null!==n&&(this.percentageToPixels=this.computedPixels[n].numeric/i[n].numeric)}var r=this.getSizeAtTrack(this.track,!1)+this.start;if(this.dragStartOffset=this.getMousePosition(t)-r,this.aTrack=this.track-1,!(this.track<this.tracks.length-1))throw Error("Invalid track index: "+this.track+". Track must be between two other tracks and only "+this.tracks.length+" tracks were found.");this.bTrack=this.track+1,this.aTrackStart=this.getSizeAtTrack(this.aTrack,!1)+this.start,this.bTrackEnd=this.getSizeAtTrack(this.bTrack,!0)+this.start,this.dragging=!0,window.addEventListener("mouseup",this.stopDragging),window.addEventListener("touchend",this.stopDragging),window.addEventListener("touchcancel",this.stopDragging),window.addEventListener("mousemove",this.drag),window.addEventListener("touchmove",this.drag),this.grid.addEventListener("selectstart",a),this.grid.addEventListener("dragstart",a),this.grid.style.userSelect="none",this.grid.style.webkitUserSelect="none",this.grid.style.MozUserSelect="none",this.grid.style.pointerEvents="none",this.grid.style.cursor=this.cursor,window.document.body.style.cursor=this.cursor,this.onDragStart(this.direction,this.track)}},m.prototype.stopDragging=function(){this.dragging=!1,this.cleanup(),this.onDragEnd(this.direction,this.track),this.needsDestroy&&(this.element&&(this.element.removeEventListener("mousedown",this.startDragging),this.element.removeEventListener("touchstart",this.startDragging)),this.destroyCb(),this.needsDestroy=!1,this.destroyCb=null)},m.prototype.drag=function(t){var i=this.getMousePosition(t),s=this.getSizeOfTrack(this.track),h=this.aTrackStart+this.minSizeStart+this.dragStartOffset+this.computedGapPixels,n=this.bTrackEnd-this.minSizeEnd-this.computedGapPixels-(s-this.dragStartOffset);i<h+this.snapOffset&&(i=h),i>n-this.snapOffset&&(i=n),i<h?i=h:i>n&&(i=n);var r=i-this.aTrackStart-this.dragStartOffset-this.computedGapPixels,e=this.bTrackEnd-i+this.dragStartOffset-s-this.computedGapPixels;if(this.dragInterval>1){var o=Math.round(r/this.dragInterval)*this.dragInterval;e-=o-r,r=o}r<this.minSizeStart&&(r=this.minSizeStart),e<this.minSizeEnd&&(e=this.minSizeEnd),"px"===this.trackValues[this.aTrack].type?this.tracks[this.aTrack]=r+"px":"fr"===this.trackValues[this.aTrack].type?this.tracks[this.aTrack]=1===this.totalFrs?"1fr":r/this.frToPixels+"fr":"%"===this.trackValues[this.aTrack].type&&(this.tracks[this.aTrack]=r/this.percentageToPixels+"%"),"px"===this.trackValues[this.bTrack].type?this.tracks[this.bTrack]=e+"px":"fr"===this.trackValues[this.bTrack].type?this.tracks[this.bTrack]=1===this.totalFrs?"1fr":e/this.frToPixels+"fr":"%"===this.trackValues[this.bTrack].type&&(this.tracks[this.bTrack]=e/this.percentageToPixels+"%");var u=this.tracks.join(" ");this.writeStyle(this.grid,this.gridTemplateProp,u),this.onDrag(this.direction,this.track,u)},m.prototype.cleanup=function(){window.removeEventListener("mouseup",this.stopDragging),window.removeEventListener("touchend",this.stopDragging),window.removeEventListener("touchcancel",this.stopDragging),window.removeEventListener("mousemove",this.drag),window.removeEventListener("touchmove",this.drag),this.grid&&(this.grid.removeEventListener("selectstart",a),this.grid.removeEventListener("dragstart",a),this.grid.style.userSelect="",this.grid.style.webkitUserSelect="",this.grid.style.MozUserSelect="",this.grid.style.pointerEvents="",this.grid.style.cursor=""),window.document.body.style.cursor=""},m.prototype.destroy=function(t,i){void 0===t&&(t=!0),t||!1===this.dragging?(this.cleanup(),this.element&&(this.element.removeEventListener("mousedown",this.startDragging),this.element.removeEventListener("touchstart",this.startDragging)),i&&i()):(this.needsDestroy=!0,i&&(this.destroyCb=i))};var w=function(t,i,s){return i in t?t[i]:s},v=function(t,i){return function(s){if(s.track<1)throw Error("Invalid track index: "+s.track+". Track must be between two other tracks.");var h="column"===t?i.columnMinSizes||{}:i.rowMinSizes||{},n="column"===t?"columnMinSize":"rowMinSize";return new m(t,Object.assign({},{minSizeStart:w(h,s.track-1,l(i,n,l(i,"minSize",0))),minSizeEnd:w(h,s.track+1,l(i,n,l(i,"minSize",0)))},s),i)}},p=function(t){var i=this;this.columnGutters={},this.rowGutters={},this.options=Object.assign({},{columnGutters:t.columnGutters||[],rowGutters:t.rowGutters||[],columnMinSizes:t.columnMinSizes||{},rowMinSizes:t.rowMinSizes||{}},t),this.options.columnGutters.forEach((function(t){i.columnGutters[t.track]=v("column",i.options)(t)})),this.options.rowGutters.forEach((function(t){i.rowGutters[t.track]=v("row",i.options)(t)}))};p.prototype.addColumnGutter=function(t,i){this.columnGutters[i]&&this.columnGutters[i].destroy(),this.columnGutters[i]=v("column",this.options)({element:t,track:i})},p.prototype.addRowGutter=function(t,i){this.rowGutters[i]&&this.rowGutters[i].destroy(),this.rowGutters[i]=v("row",this.options)({element:t,track:i})},p.prototype.removeColumnGutter=function(t,i){var s=this;void 0===i&&(i=!0),this.columnGutters[t]&&this.columnGutters[t].destroy(i,(function(){delete s.columnGutters[t]}))},p.prototype.removeRowGutter=function(t,i){var s=this;void 0===i&&(i=!0),this.rowGutters[t]&&this.rowGutters[t].destroy(i,(function(){delete s.rowGutters[t]}))},p.prototype.handleDragStart=function(t,i,s){"column"===i?(this.columnGutters[s]&&this.columnGutters[s].destroy(),this.columnGutters[s]=v("column",this.options)({track:s}),this.columnGutters[s].startDragging(t)):"row"===i&&(this.rowGutters[s]&&this.rowGutters[s].destroy(),this.rowGutters[s]=v("row",this.options)({track:s}),this.rowGutters[s].startDragging(t))},p.prototype.destroy=function(t){var i=this;void 0===t&&(t=!0),Object.keys(this.columnGutters).forEach((function(s){return i.columnGutters[s].destroy(t,(function(){delete i.columnGutters[s]}))})),Object.keys(this.rowGutters).forEach((function(s){return i.rowGutters[s].destroy(t,(function(){delete i.rowGutters[s]}))}))};const g=class{constructor(i){t(this,i),this._items=[],this.direction="column"}componentDidLoad(){this._panelID=n.generateUUID(),this._element.dataset.panelId=this._panelID;let t=Array.from(this._element.children);this._items=t.filter((t=>{var i;return"EZ-SPLIT-ITEM"===(null===(i=t.tagName)||void 0===i?void 0:i.toUpperCase())}));let i=1;this._items.forEach(((t,s)=>{t.dataset.trackNumber=i.toString(),this._items.length>1&&s!=this._items.length-1&&this.addItemGutter(t),i+=2})),this.initSplit()}initSplit(){var t;this._items.length&&(this._element.style["row"==this.direction?"grid-template-rows":"grid-template-columns"]=this.getGridTemplate(),t=this.getGutters(),new p(t))}getGutters(){const t={columnGutters:[],rowGutters:[]};if(!this._items.length)return t;const i="row"==this.direction?"rowGutters":"columnGutters";return this._items.forEach(((s,h)=>{if(h==this._items.length-1)return;let n=s.dataset.trackNumber;h===this._items.length-1&&(n=this._items.length.toString()),t[i].push({track:Number(n),element:this._element.querySelector(`ez-split-panel[data-panel-id="${this._panelID}"] > [data-item-track="${s.dataset.trackNumber}"]`)})})),t}addItemGutter(t){const i=document.createElement("div");i.classList.add("ez-split-gutter"),i.classList.add(this.direction),i.dataset.itemTrack=`${t.dataset.trackNumber}`,i.dataset.trackNumber=(Number(t.dataset.trackNumber)+1).toString(),t.parentNode.insertBefore(i,t.nextSibling)}getElementStyle(){return{display:"grid",height:"100%",width:"100%"}}getGridTemplate(){let t="";return this._items.forEach(((i,s)=>{t+=s!==this._items.length-1?0!==s?" 1fr 5px":"1fr 5px":" 1fr"})),t}render(){return i(s,{style:this.getElementStyle()})}get _element(){return h(this)}};g.style=".ez-split-gutter{cursor:grab;background-color:transparent}";export{g as ez_split_panel}
1
+ import{r as t,h as i,H as s,g as h}from"./p-23a36bb6.js";import{StringUtils as n}from"@sankhyalabs/core";var r=function(t,i){return Number(t.slice(0,-1*i.length))},e=function(t){return t.endsWith("px")?{value:t,type:"px",numeric:r(t,"px")}:t.endsWith("fr")?{value:t,type:"fr",numeric:r(t,"fr")}:t.endsWith("%")?{value:t,type:"%",numeric:r(t,"%")}:"auto"===t?{value:t,type:"auto"}:null},o=function(t){return t.split(" ").map(e)},u=function(t,i,s){return i.concat(s).map((function(i){return i.style[t]})).filter((function(t){return void 0!==t&&""!==t}))},c=function(t){for(var i=0;i<t.length;i++)if(t[i].numeric>0)return i;return null},a=function(){return!1},l=function(t,i,s){t.style[i]=s},f=function(t,i,s){var h=t[i];return void 0!==h?h:s};function d(t){var i;return(i=[]).concat.apply(i,Array.from(t.ownerDocument.styleSheets).map((function(t){var i=[];try{i=Array.from(t.cssRules||[])}catch(t){}return i}))).filter((function(i){var s=!1;try{s=t.matches(i.selectorText)}catch(t){}return s}))}var w=function(t,i,s){this.direction=t,this.element=i.element,this.track=i.track,"column"===t?(this.gridTemplateProp="grid-template-columns",this.gridGapProp="grid-column-gap",this.cursor=f(s,"columnCursor",f(s,"cursor","col-resize")),this.snapOffset=f(s,"columnSnapOffset",f(s,"snapOffset",30)),this.dragInterval=f(s,"columnDragInterval",f(s,"dragInterval",1)),this.clientAxis="clientX",this.optionStyle=f(s,"gridTemplateColumns")):"row"===t&&(this.gridTemplateProp="grid-template-rows",this.gridGapProp="grid-row-gap",this.cursor=f(s,"rowCursor",f(s,"cursor","row-resize")),this.snapOffset=f(s,"rowSnapOffset",f(s,"snapOffset",30)),this.dragInterval=f(s,"rowDragInterval",f(s,"dragInterval",1)),this.clientAxis="clientY",this.optionStyle=f(s,"gridTemplateRows")),this.onDragStart=f(s,"onDragStart",a),this.onDragEnd=f(s,"onDragEnd",a),this.onDrag=f(s,"onDrag",a),this.writeStyle=f(s,"writeStyle",l),this.startDragging=this.startDragging.bind(this),this.stopDragging=this.stopDragging.bind(this),this.drag=this.drag.bind(this),this.minSizeStart=i.minSizeStart,this.minSizeEnd=i.minSizeEnd,i.element&&(this.element.addEventListener("mousedown",this.startDragging),this.element.addEventListener("touchstart",this.startDragging))};w.prototype.getDimensions=function(){var t=this.grid.getBoundingClientRect(),i=t.width,s=t.height,h=t.bottom,n=t.left,r=t.right;"column"===this.direction?(this.start=t.top,this.end=h,this.size=s):"row"===this.direction&&(this.start=n,this.end=r,this.size=i)},w.prototype.getSizeAtTrack=function(t,i){return function(t,i,s,h){return void 0===s&&(s=0),void 0===h&&(h=!1),i.slice(0,h?t+1:t).reduce((function(t,i){return t+i.numeric}),0)+(s?t*s:0)}(t,this.computedPixels,this.computedGapPixels,i)},w.prototype.getSizeOfTrack=function(t){return this.computedPixels[t].numeric},w.prototype.getRawTracks=function(){var t=u(this.gridTemplateProp,[this.grid],d(this.grid));if(!t.length){if(this.optionStyle)return this.optionStyle;throw Error("Unable to determine grid template tracks from styles.")}return t[0]},w.prototype.getGap=function(){var t=u(this.gridGapProp,[this.grid],d(this.grid));return t.length?t[0]:null},w.prototype.getRawComputedTracks=function(){return window.getComputedStyle(this.grid)[this.gridTemplateProp]},w.prototype.getRawComputedGap=function(){return window.getComputedStyle(this.grid)[this.gridGapProp]},w.prototype.setTracks=function(t){this.tracks=t.split(" "),this.trackValues=o(t)},w.prototype.setComputedTracks=function(t){this.computedTracks=t.split(" "),this.computedPixels=o(t)},w.prototype.setGap=function(t){this.gap=t},w.prototype.setComputedGap=function(t){var i;this.computedGap=t,this.computedGapPixels=((i=this.computedGap).endsWith("px")?Number(i.slice(0,-1*"px".length)):null)||0},w.prototype.getMousePosition=function(t){return"touches"in t?t.touches[0][this.clientAxis]:t[this.clientAxis]},w.prototype.startDragging=function(t){if(!("button"in t)||0===t.button){t.preventDefault(),this.grid=this.element?this.element.parentNode:t.target.parentNode,this.getDimensions(),this.setTracks(this.getRawTracks()),this.setComputedTracks(this.getRawComputedTracks()),this.setGap(this.getGap()),this.setComputedGap(this.getRawComputedGap());var i=this.trackValues.filter((function(t){return"%"===t.type})),s=this.trackValues.filter((function(t){return"fr"===t.type}));if(this.totalFrs=s.length,this.totalFrs){var h=c(s);null!==h&&(this.frToPixels=this.computedPixels[h].numeric/s[h].numeric)}if(i.length){var n=c(i);null!==n&&(this.percentageToPixels=this.computedPixels[n].numeric/i[n].numeric)}var r=this.getSizeAtTrack(this.track,!1)+this.start;if(this.dragStartOffset=this.getMousePosition(t)-r,this.aTrack=this.track-1,!(this.track<this.tracks.length-1))throw Error("Invalid track index: "+this.track+". Track must be between two other tracks and only "+this.tracks.length+" tracks were found.");this.bTrack=this.track+1,this.aTrackStart=this.getSizeAtTrack(this.aTrack,!1)+this.start,this.bTrackEnd=this.getSizeAtTrack(this.bTrack,!0)+this.start,this.dragging=!0,window.addEventListener("mouseup",this.stopDragging),window.addEventListener("touchend",this.stopDragging),window.addEventListener("touchcancel",this.stopDragging),window.addEventListener("mousemove",this.drag),window.addEventListener("touchmove",this.drag),this.grid.addEventListener("selectstart",a),this.grid.addEventListener("dragstart",a),this.grid.style.userSelect="none",this.grid.style.webkitUserSelect="none",this.grid.style.MozUserSelect="none",this.grid.style.pointerEvents="none",this.grid.style.cursor=this.cursor,window.document.body.style.cursor=this.cursor,this.onDragStart(this.direction,this.track)}},w.prototype.stopDragging=function(){this.dragging=!1,this.cleanup(),this.onDragEnd(this.direction,this.track),this.needsDestroy&&(this.element&&(this.element.removeEventListener("mousedown",this.startDragging),this.element.removeEventListener("touchstart",this.startDragging)),this.destroyCb(),this.needsDestroy=!1,this.destroyCb=null)},w.prototype.drag=function(t){var i=this.getMousePosition(t),s=this.getSizeOfTrack(this.track),h=this.aTrackStart+this.minSizeStart+this.dragStartOffset+this.computedGapPixels,n=this.bTrackEnd-this.minSizeEnd-this.computedGapPixels-(s-this.dragStartOffset);i<h+this.snapOffset&&(i=h),i>n-this.snapOffset&&(i=n),i<h?i=h:i>n&&(i=n);var r=i-this.aTrackStart-this.dragStartOffset-this.computedGapPixels,e=this.bTrackEnd-i+this.dragStartOffset-s-this.computedGapPixels;if(this.dragInterval>1){var o=Math.round(r/this.dragInterval)*this.dragInterval;e-=o-r,r=o}r<this.minSizeStart&&(r=this.minSizeStart),e<this.minSizeEnd&&(e=this.minSizeEnd),"px"===this.trackValues[this.aTrack].type?this.tracks[this.aTrack]=r+"px":"fr"===this.trackValues[this.aTrack].type?this.tracks[this.aTrack]=1===this.totalFrs?"1fr":r/this.frToPixels+"fr":"%"===this.trackValues[this.aTrack].type&&(this.tracks[this.aTrack]=r/this.percentageToPixels+"%"),"px"===this.trackValues[this.bTrack].type?this.tracks[this.bTrack]=e+"px":"fr"===this.trackValues[this.bTrack].type?this.tracks[this.bTrack]=1===this.totalFrs?"1fr":e/this.frToPixels+"fr":"%"===this.trackValues[this.bTrack].type&&(this.tracks[this.bTrack]=e/this.percentageToPixels+"%");var u=this.tracks.join(" ");this.writeStyle(this.grid,this.gridTemplateProp,u),this.onDrag(this.direction,this.track,u)},w.prototype.cleanup=function(){window.removeEventListener("mouseup",this.stopDragging),window.removeEventListener("touchend",this.stopDragging),window.removeEventListener("touchcancel",this.stopDragging),window.removeEventListener("mousemove",this.drag),window.removeEventListener("touchmove",this.drag),this.grid&&(this.grid.removeEventListener("selectstart",a),this.grid.removeEventListener("dragstart",a),this.grid.style.userSelect="",this.grid.style.webkitUserSelect="",this.grid.style.MozUserSelect="",this.grid.style.pointerEvents="",this.grid.style.cursor=""),window.document.body.style.cursor=""},w.prototype.destroy=function(t,i){void 0===t&&(t=!0),t||!1===this.dragging?(this.cleanup(),this.element&&(this.element.removeEventListener("mousedown",this.startDragging),this.element.removeEventListener("touchstart",this.startDragging)),i&&i()):(this.needsDestroy=!0,i&&(this.destroyCb=i))};var m=function(t,i,s){return i in t?t[i]:s},v=function(t,i){return function(s){if(s.track<1)throw Error("Invalid track index: "+s.track+". Track must be between two other tracks.");var h="column"===t?i.columnMinSizes||{}:i.rowMinSizes||{},n="column"===t?"columnMinSize":"rowMinSize";return new w(t,Object.assign({},{minSizeStart:m(h,s.track-1,f(i,n,f(i,"minSize",0))),minSizeEnd:m(h,s.track+1,f(i,n,f(i,"minSize",0)))},s),i)}},p=function(t){var i=this;this.columnGutters={},this.rowGutters={},this.options=Object.assign({},{columnGutters:t.columnGutters||[],rowGutters:t.rowGutters||[],columnMinSizes:t.columnMinSizes||{},rowMinSizes:t.rowMinSizes||{}},t),this.options.columnGutters.forEach((function(t){i.columnGutters[t.track]=v("column",i.options)(t)})),this.options.rowGutters.forEach((function(t){i.rowGutters[t.track]=v("row",i.options)(t)}))};p.prototype.addColumnGutter=function(t,i){this.columnGutters[i]&&this.columnGutters[i].destroy(),this.columnGutters[i]=v("column",this.options)({element:t,track:i})},p.prototype.addRowGutter=function(t,i){this.rowGutters[i]&&this.rowGutters[i].destroy(),this.rowGutters[i]=v("row",this.options)({element:t,track:i})},p.prototype.removeColumnGutter=function(t,i){var s=this;void 0===i&&(i=!0),this.columnGutters[t]&&this.columnGutters[t].destroy(i,(function(){delete s.columnGutters[t]}))},p.prototype.removeRowGutter=function(t,i){var s=this;void 0===i&&(i=!0),this.rowGutters[t]&&this.rowGutters[t].destroy(i,(function(){delete s.rowGutters[t]}))},p.prototype.handleDragStart=function(t,i,s){"column"===i?(this.columnGutters[s]&&this.columnGutters[s].destroy(),this.columnGutters[s]=v("column",this.options)({track:s}),this.columnGutters[s].startDragging(t)):"row"===i&&(this.rowGutters[s]&&this.rowGutters[s].destroy(),this.rowGutters[s]=v("row",this.options)({track:s}),this.rowGutters[s].startDragging(t))},p.prototype.destroy=function(t){var i=this;void 0===t&&(t=!0),Object.keys(this.columnGutters).forEach((function(s){return i.columnGutters[s].destroy(t,(function(){delete i.columnGutters[s]}))})),Object.keys(this.rowGutters).forEach((function(s){return i.rowGutters[s].destroy(t,(function(){delete i.rowGutters[s]}))}))};const g=class{constructor(i){t(this,i),this._items=[],this._buildInProgress=!1,this.direction="column",this.anchorToExpand=!1}rebuildLayout(){Array.from(this._element.querySelectorAll(".ez-split-gutter")).reverse().forEach((t=>{t.remove()})),Array.from(this._element.getElementsByTagName("EzSplitPanel")).reverse().forEach((t=>{t.rebuildLayout()})),this.buildItems(),this.initSplit()}buildItems(){this._panelID=n.generateUUID(),this._element.dataset.panelId=this._panelID,this._element.dataset.uniqueId="EzSplitPanel";let t=Array.from(this._element.children);this._items=t.filter((t=>{var i;return"EZ-SPLIT-ITEM"===(null===(i=t.tagName)||void 0===i?void 0:i.toUpperCase())}));let i=1;this._items.forEach(((t,s)=>{t.dataset.trackNumber=i.toString(),this._items.length>1&&s!=this._items.length-1&&this.addItemGutter(t),i+=2}))}componentDidLoad(){this.buildItems(),this.initSplit(),this._mutationObserver=new MutationObserver((t=>{for(const i of t)if("childList"===i.type&&!1===this._buildInProgress){this._buildInProgress=!0,window.requestAnimationFrame((()=>{this.rebuildLayout()})),window.requestAnimationFrame((()=>this._buildInProgress=!1));break}})),this._mutationObserver.observe(this._element,{childList:!0,subtree:!1})}disconnectedCallback(){null!=this._mutationObserver&&this._mutationObserver.disconnect()}initSplit(){var t;this._items.length&&(this._element.style["row"==this.direction?"grid-template-rows":"grid-template-columns"]=this.getGridTemplate(),t=this.getGutters(),new p(t))}getGutters(){const t={columnGutters:[],rowGutters:[]};if(!this._items.length)return t;const i="row"==this.direction?"rowGutters":"columnGutters";return this._items.forEach(((s,h)=>{if(h==this._items.length-1)return;let n=s.dataset.trackNumber;h===this._items.length-1&&(n=this._items.length.toString()),t[i].push({track:Number(n),element:this._element.querySelector(`ez-split-panel[data-panel-id="${this._panelID}"] > [data-item-track="${s.dataset.trackNumber}"]`)})})),t}addItemGutter(t){const i=document.createElement("div");i.classList.add("ez-split-gutter"),i.classList.add(this.direction),i.dataset.itemTrack=`${t.dataset.trackNumber}`,i.dataset.trackNumber=(Number(t.dataset.trackNumber)+1).toString(),t.parentNode.insertBefore(i,t.nextSibling)}getElementStyle(){return{display:"grid",height:"100%",width:"100%",position:this.anchorToExpand?"relative":"unset"}}calcFreeSpacePercentage(){const t=this._items.reduce(((t,i)=>{var s;return t+((null===(s=i.size)||void 0===s?void 0:s.includes("%"))?Number(i.size.replace("%","")):0)}),0),i=this._items.filter((t=>void 0===t.size)).length;return i&&t?(100-t)/i:null}getGridTemplate(){let t="";const i=this.calcFreeSpacePercentage();return this._items.forEach(((s,h)=>{let n=s.size||"1fr";!s.size&&i&&(n=`${i}%`),t+=h!==this._items.length-1?0!==h?` ${n} 5px`:`${n} 5px`:` ${n}`})),t}render(){return i(s,{style:this.getElementStyle()})}get _element(){return h(this)}};g.style=".ez-split-gutter{cursor:grab;background-color:transparent}";export{g as ez_split_panel}