@sankhyalabs/ezui 0.0.0-bugfix-dev-KB-08202.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (531) hide show
  1. package/README.md +78 -0
  2. package/dist/assets/actions-sprite.svg +257 -0
  3. package/dist/cjs/ApplicationUtils-2e444734.js +162 -0
  4. package/dist/cjs/CSSVarsUtils-b136a156.js +77 -0
  5. package/dist/cjs/CheckMode-ecb90b87.js +7 -0
  6. package/dist/cjs/DialogType-2114c337.js +9 -0
  7. package/dist/cjs/EzScrollDirection-b2c99895.js +8 -0
  8. package/dist/cjs/RecordValidationProcessor-edd23705.js +102 -0
  9. package/dist/cjs/constants-3a1d64fb.js +7 -0
  10. package/dist/cjs/ez-actions-button.cjs.entry.js +212 -0
  11. package/dist/cjs/ez-alert.cjs.entry.js +30 -0
  12. package/dist/cjs/ez-application.cjs.entry.js +26 -0
  13. package/dist/cjs/ez-badge.cjs.entry.js +120 -0
  14. package/dist/cjs/ez-breadcrumb.cjs.entry.js +285 -0
  15. package/dist/cjs/ez-button.cjs.entry.js +87 -0
  16. package/dist/cjs/ez-calendar.cjs.entry.js +238 -0
  17. package/dist/cjs/ez-card-item.cjs.entry.js +52 -0
  18. package/dist/cjs/ez-check.cjs.entry.js +95 -0
  19. package/dist/cjs/ez-chip.cjs.entry.js +116 -0
  20. package/dist/cjs/ez-collapsible-box.cjs.entry.js +133 -0
  21. package/dist/cjs/ez-combo-box.cjs.entry.js +690 -0
  22. package/dist/cjs/ez-date-input.cjs.entry.js +188 -0
  23. package/dist/cjs/ez-date-time-input.cjs.entry.js +242 -0
  24. package/dist/cjs/ez-dialog.cjs.entry.js +180 -0
  25. package/dist/cjs/ez-dropdown.cjs.entry.js +515 -0
  26. package/dist/cjs/ez-file-item.cjs.entry.js +74 -0
  27. package/dist/cjs/ez-filter-input_2.cjs.entry.js +137 -0
  28. package/dist/cjs/ez-form-view.cjs.entry.js +191 -0
  29. package/dist/cjs/ez-form.cjs.entry.js +933 -0
  30. package/dist/cjs/ez-grid.cjs.entry.js +120838 -0
  31. package/dist/cjs/ez-guide-navigator.cjs.entry.js +96 -0
  32. package/dist/cjs/ez-icon.cjs.entry.js +44 -0
  33. package/dist/cjs/ez-list.cjs.entry.js +558 -0
  34. package/dist/cjs/ez-loading-bar.cjs.entry.js +32 -0
  35. package/dist/cjs/ez-modal-container.cjs.entry.js +64 -0
  36. package/dist/cjs/ez-modal.cjs.entry.js +72 -0
  37. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +183 -0
  38. package/dist/cjs/ez-number-input.cjs.entry.js +181 -0
  39. package/dist/cjs/ez-popover.cjs.entry.js +156 -0
  40. package/dist/cjs/ez-popup.cjs.entry.js +66 -0
  41. package/dist/cjs/ez-radio-button.cjs.entry.js +48 -0
  42. package/dist/cjs/ez-scroller_3.cjs.entry.js +792 -0
  43. package/dist/cjs/ez-search.cjs.entry.js +96 -0
  44. package/dist/cjs/ez-skeleton.cjs.entry.js +67 -0
  45. package/dist/cjs/ez-tabselector.cjs.entry.js +228 -0
  46. package/dist/cjs/ez-text-area.cjs.entry.js +179 -0
  47. package/dist/cjs/ez-text-edit.cjs.entry.js +107 -0
  48. package/dist/cjs/ez-text-input.cjs.entry.js +247 -0
  49. package/dist/cjs/ez-time-input.cjs.entry.js +168 -0
  50. package/dist/cjs/ez-toast.cjs.entry.js +101 -0
  51. package/dist/cjs/ez-upload.cjs.entry.js +395 -0
  52. package/dist/cjs/ez-view-stack.cjs.entry.js +86 -0
  53. package/dist/cjs/ezui.cjs.js +23 -0
  54. package/dist/cjs/filter-column.cjs.entry.js +151 -0
  55. package/dist/cjs/index-1064511f.js +2340 -0
  56. package/dist/cjs/index.cjs.js +2 -0
  57. package/dist/cjs/loader.cjs.js +22 -0
  58. package/dist/collection/collection-manifest.json +184 -0
  59. package/dist/collection/components/assets/actions-sprite.svg +257 -0
  60. package/dist/collection/components/ez-actions-button/ez-actions-button.css +139 -0
  61. package/dist/collection/components/ez-actions-button/ez-actions-button.js +440 -0
  62. package/dist/collection/components/ez-alert/ez-alert.css +76 -0
  63. package/dist/collection/components/ez-alert/ez-alert.js +53 -0
  64. package/dist/collection/components/ez-application/ez-application.css +3 -0
  65. package/dist/collection/components/ez-application/ez-application.js +41 -0
  66. package/dist/collection/components/ez-badge/enum/sizes.js +9 -0
  67. package/dist/collection/components/ez-badge/ez-badge.css +165 -0
  68. package/dist/collection/components/ez-badge/ez-badge.js +211 -0
  69. package/dist/collection/components/ez-badge/interfaces/IPosition.js +1 -0
  70. package/dist/collection/components/ez-breadcrumb/ez-breadcrumb.css +66 -0
  71. package/dist/collection/components/ez-breadcrumb/ez-breadcrumb.js +373 -0
  72. package/dist/collection/components/ez-breadcrumb/subcomponents/breadcrumb-item.js +20 -0
  73. package/dist/collection/components/ez-button/ez-button.css +255 -0
  74. package/dist/collection/components/ez-button/ez-button.js +241 -0
  75. package/dist/collection/components/ez-calendar/ez-calendar.css +318 -0
  76. package/dist/collection/components/ez-calendar/ez-calendar.js +439 -0
  77. package/dist/collection/components/ez-card-item/ez-card-item.css +126 -0
  78. package/dist/collection/components/ez-card-item/ez-card-item.js +97 -0
  79. package/dist/collection/components/ez-check/CheckMode.js +5 -0
  80. package/dist/collection/components/ez-check/ez-check.css +366 -0
  81. package/dist/collection/components/ez-check/ez-check.js +272 -0
  82. package/dist/collection/components/ez-chip/ez-chip.css +163 -0
  83. package/dist/collection/components/ez-chip/ez-chip.js +312 -0
  84. package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.css +254 -0
  85. package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.js +442 -0
  86. package/dist/collection/components/ez-combo-box/ez-combo-box.css +334 -0
  87. package/dist/collection/components/ez-combo-box/ez-combo-box.js +1125 -0
  88. package/dist/collection/components/ez-date-input/ez-date-input.css +49 -0
  89. package/dist/collection/components/ez-date-input/ez-date-input.js +432 -0
  90. package/dist/collection/components/ez-date-time-input/ez-date-time-input.css +44 -0
  91. package/dist/collection/components/ez-date-time-input/ez-date-time-input.js +504 -0
  92. package/dist/collection/components/ez-dialog/DialogType.js +7 -0
  93. package/dist/collection/components/ez-dialog/ez-dialog.css +544 -0
  94. package/dist/collection/components/ez-dialog/ez-dialog.js +401 -0
  95. package/dist/collection/components/ez-dropdown/ez-dropdown.css +349 -0
  96. package/dist/collection/components/ez-dropdown/ez-dropdown.js +356 -0
  97. package/dist/collection/components/ez-dropdown/structure/DropdownItem.js +30 -0
  98. package/dist/collection/components/ez-dropdown/structure/SubmenuControl.js +241 -0
  99. package/dist/collection/components/ez-file-item/ez-file-item.css +125 -0
  100. package/dist/collection/components/ez-file-item/ez-file-item.js +200 -0
  101. package/dist/collection/components/ez-filter-input/ez-filter-input.css +4 -0
  102. package/dist/collection/components/ez-filter-input/ez-filter-input.js +407 -0
  103. package/dist/collection/components/ez-form/ez-form.css +10 -0
  104. package/dist/collection/components/ez-form/ez-form.js +237 -0
  105. package/dist/collection/components/ez-form/store/form.slice.js +42 -0
  106. package/dist/collection/components/ez-form-view/ez-form-view.css +6 -0
  107. package/dist/collection/components/ez-form-view/ez-form-view.js +154 -0
  108. package/dist/collection/components/ez-form-view/fieldbuilder/FieldBuilder.js +30 -0
  109. package/dist/collection/components/ez-form-view/fieldbuilder/templates/CheckBox.tpl.js +11 -0
  110. package/dist/collection/components/ez-form-view/fieldbuilder/templates/ComboBox.tpl.js +13 -0
  111. package/dist/collection/components/ez-form-view/fieldbuilder/templates/DateInput.tpl.js +10 -0
  112. package/dist/collection/components/ez-form-view/fieldbuilder/templates/FileInput.tpl.js +11 -0
  113. package/dist/collection/components/ez-form-view/fieldbuilder/templates/NumberInput.tpl.js +12 -0
  114. package/dist/collection/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.js +4 -0
  115. package/dist/collection/components/ez-form-view/fieldbuilder/templates/TextArea.tpl.js +4 -0
  116. package/dist/collection/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.js +4 -0
  117. package/dist/collection/components/ez-form-view/interfaces/IFormViewField.js +1 -0
  118. package/dist/collection/components/ez-form-view/interfaces/index.js +1 -0
  119. package/dist/collection/components/ez-form-view/structure/index.js +29 -0
  120. package/dist/collection/components/ez-grid/controller/EzGridController.js +1 -0
  121. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +791 -0
  122. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridUtils.js +8 -0
  123. package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +101 -0
  124. package/dist/collection/components/ez-grid/controller/ag-grid/GridEditionManager.js +230 -0
  125. package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.js +88 -0
  126. package/dist/collection/components/ez-grid/controller/ag-grid/components/cellRendererStatus.js +43 -0
  127. package/dist/collection/components/ez-grid/controller/ag-grid/components/selectionHeader.js +40 -0
  128. package/dist/collection/components/ez-grid/controller/ag-grid/editor/EzCellEditor.js +49 -0
  129. package/dist/collection/components/ez-grid/controller/ag-grid/editor/GridEditorUtils.js +10 -0
  130. package/dist/collection/components/ez-grid/controller/ag-grid/editor/IEditorMetadata.js +4 -0
  131. package/dist/collection/components/ez-grid/controller/ag-grid/editor/IUICellEditor.js +1 -0
  132. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/ComboBox.tpl.js +38 -0
  133. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/DateInput.tpl.js +40 -0
  134. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/NumberInput.tpl.js +20 -0
  135. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/Search.tpl.js +15 -0
  136. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/TextInput.tpl.js +41 -0
  137. package/dist/collection/components/ez-grid/controller/ag-grid/i18n/pt-BR.js +75 -0
  138. package/dist/collection/components/ez-grid/controller/ag-grid/mock/Server.js +69 -0
  139. package/dist/collection/components/ez-grid/ez-grid.css +97 -0
  140. package/dist/collection/components/ez-grid/ez-grid.js +833 -0
  141. package/dist/collection/components/ez-grid/interfaces/ISelection.js +1 -0
  142. package/dist/collection/components/ez-grid/interfaces/ISelectionToastConfig.js +1 -0
  143. package/dist/collection/components/ez-grid/interfaces/index.js +2 -0
  144. package/dist/collection/components/ez-grid/subcomponents/filter-column.css +34 -0
  145. package/dist/collection/components/ez-grid/subcomponents/filter-column.js +377 -0
  146. package/dist/collection/components/ez-grid/subcomponents/selection-counter.js +29 -0
  147. package/dist/collection/components/ez-grid/utils/InMemoryFilterColumnDataSource.js +78 -0
  148. package/dist/collection/components/ez-guide-navigator/ez-guide-navigator.css +66 -0
  149. package/dist/collection/components/ez-guide-navigator/ez-guide-navigator.js +385 -0
  150. package/dist/collection/components/ez-guide-navigator/interfaces/IGuideItem.js +1 -0
  151. package/dist/collection/components/ez-guide-navigator/interfaces/index.js +1 -0
  152. package/dist/collection/components/ez-icon/ez-icon.css +223 -0
  153. package/dist/collection/components/ez-icon/ez-icon.js +101 -0
  154. package/dist/collection/components/ez-list/ez-list.css +434 -0
  155. package/dist/collection/components/ez-list/ez-list.js +911 -0
  156. package/dist/collection/components/ez-loading-bar/ez-loading-bar.css +85 -0
  157. package/dist/collection/components/ez-loading-bar/ez-loading-bar.js +74 -0
  158. package/dist/collection/components/ez-modal/ez-modal.css +369 -0
  159. package/dist/collection/components/ez-modal/ez-modal.js +239 -0
  160. package/dist/collection/components/ez-modal-container/ez-modal-container.css +55 -0
  161. package/dist/collection/components/ez-modal-container/ez-modal-container.js +191 -0
  162. package/dist/collection/components/ez-modal-container/index.js +2 -0
  163. package/dist/collection/components/ez-modal-container/modal-action.js +8 -0
  164. package/dist/collection/components/ez-modal-container/modal-button-status.js +7 -0
  165. package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.css +36 -0
  166. package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.js +338 -0
  167. package/dist/collection/components/ez-multi-selection-list/interfaces/IMultiSelectionListDataSource.js +1 -0
  168. package/dist/collection/components/ez-multi-selection-list/interfaces/IMultiSelectionOption.js +1 -0
  169. package/dist/collection/components/ez-multi-selection-list/subcomponents/multi-selection-box-message.css +18 -0
  170. package/dist/collection/components/ez-multi-selection-list/subcomponents/multi-selection-box-message.js +41 -0
  171. package/dist/collection/components/ez-number-input/ez-number-input.css +8 -0
  172. package/dist/collection/components/ez-number-input/ez-number-input.js +457 -0
  173. package/dist/collection/components/ez-popover/ez-popover.css +42 -0
  174. package/dist/collection/components/ez-popover/ez-popover.js +365 -0
  175. package/dist/collection/components/ez-popup/ez-popup.css +418 -0
  176. package/dist/collection/components/ez-popup/ez-popup.js +180 -0
  177. package/dist/collection/components/ez-radio-button/ez-radio-button.css +217 -0
  178. package/dist/collection/components/ez-radio-button/ez-radio-button.js +163 -0
  179. package/dist/collection/components/ez-scroller/EzScrollDirection.js +6 -0
  180. package/dist/collection/components/ez-scroller/ez-scroller.css +192 -0
  181. package/dist/collection/components/ez-scroller/ez-scroller.js +293 -0
  182. package/dist/collection/components/ez-search/ez-search.css +3 -0
  183. package/dist/collection/components/ez-search/ez-search.js +462 -0
  184. package/dist/collection/components/ez-sidebar-button/ez-sidebar-button.css +63 -0
  185. package/dist/collection/components/ez-sidebar-button/ez-sidebar-button.js +47 -0
  186. package/dist/collection/components/ez-skeleton/ez-skeleton.constants.js +1 -0
  187. package/dist/collection/components/ez-skeleton/ez-skeleton.css +94 -0
  188. package/dist/collection/components/ez-skeleton/ez-skeleton.js +211 -0
  189. package/dist/collection/components/ez-tabselector/ez-tabselector.css +149 -0
  190. package/dist/collection/components/ez-tabselector/ez-tabselector.js +321 -0
  191. package/dist/collection/components/ez-text-area/ez-text-area.css +242 -0
  192. package/dist/collection/components/ez-text-area/ez-text-area.js +428 -0
  193. package/dist/collection/components/ez-text-edit/ez-text-edit.css +19 -0
  194. package/dist/collection/components/ez-text-edit/ez-text-edit.js +202 -0
  195. package/dist/collection/components/ez-text-input/ez-text-input.css +301 -0
  196. package/dist/collection/components/ez-text-input/ez-text-input.js +491 -0
  197. package/dist/collection/components/ez-time-input/ez-time-input.css +14 -0
  198. package/dist/collection/components/ez-time-input/ez-time-input.js +412 -0
  199. package/dist/collection/components/ez-toast/ez-toast.css +167 -0
  200. package/dist/collection/components/ez-toast/ez-toast.js +209 -0
  201. package/dist/collection/components/ez-tree/ez-tree.css +159 -0
  202. package/dist/collection/components/ez-tree/ez-tree.js +696 -0
  203. package/dist/collection/components/ez-tree/interfaces/ITree.js +1 -0
  204. package/dist/collection/components/ez-tree/interfaces/ITreeItem.js +1 -0
  205. package/dist/collection/components/ez-tree/subcomponents/DefaultIconResolver.js +8 -0
  206. package/dist/collection/components/ez-tree/subcomponents/DefaultTooltipResolver.js +3 -0
  207. package/dist/collection/components/ez-tree/subcomponents/TreeItem.js +24 -0
  208. package/dist/collection/components/ez-tree/subcomponents/index.js +2 -0
  209. package/dist/collection/components/ez-tree/types/Node.js +110 -0
  210. package/dist/collection/components/ez-tree/types/Tree.js +132 -0
  211. package/dist/collection/components/ez-upload/RemoteFile.js +94 -0
  212. package/dist/collection/components/ez-upload/ez-upload.css +582 -0
  213. package/dist/collection/components/ez-upload/ez-upload.js +587 -0
  214. package/dist/collection/components/ez-view-stack/ez-view-stack.css +9 -0
  215. package/dist/collection/components/ez-view-stack/ez-view-stack.js +126 -0
  216. package/dist/collection/index.js +1 -0
  217. package/dist/collection/servidor.js +101 -0
  218. package/dist/collection/setupTests.js +1 -0
  219. package/dist/collection/utils/ApplicationUtils.js +94 -0
  220. package/dist/collection/utils/AssetsUtils.js +19 -0
  221. package/dist/collection/utils/CSSVarsUtils.js +73 -0
  222. package/dist/collection/utils/constants.js +3 -0
  223. package/dist/collection/utils/form/DataBinder.js +287 -0
  224. package/dist/collection/utils/form/FormMetadata.js +176 -0
  225. package/dist/collection/utils/form/index.js +2 -0
  226. package/dist/collection/utils/form/interfaces/IDefaultConfig.js +1 -0
  227. package/dist/collection/utils/form/interfaces/IFormCardConfig.js +1 -0
  228. package/dist/collection/utils/form/interfaces/IFormConfig.js +1 -0
  229. package/dist/collection/utils/form/interfaces/IFormSheetMetadata.js +1 -0
  230. package/dist/collection/utils/form/interfaces/ISummaryField.js +1 -0
  231. package/dist/collection/utils/form/interfaces/ITabConfig.js +1 -0
  232. package/dist/collection/utils/form/interfaces/index.js +1 -0
  233. package/dist/collection/utils/index.js +6 -0
  234. package/dist/collection/utils/interfaces/AbstractFieldMetadata.js +21 -0
  235. package/dist/collection/utils/interfaces/IFieldConfig.js +1 -0
  236. package/dist/collection/utils/mock/ez-upload-mock.js +30 -0
  237. package/dist/collection/utils/utils.js +6 -0
  238. package/dist/collection/utils/validators/recordvalidator/IInvalidField.js +1 -0
  239. package/dist/collection/utils/validators/recordvalidator/IRecordValidator.js +1 -0
  240. package/dist/collection/utils/validators/recordvalidator/IValidationResult.js +1 -0
  241. package/dist/collection/utils/validators/recordvalidator/IValidationSource.js +1 -0
  242. package/dist/collection/utils/validators/recordvalidator/RecordValidationProcessor.js +74 -0
  243. package/dist/custom-elements/index.d.ts +321 -0
  244. package/dist/custom-elements/index.js +129655 -0
  245. package/dist/esm/ApplicationUtils-d9a34a16.js +160 -0
  246. package/dist/esm/CSSVarsUtils-a97cfa29.js +75 -0
  247. package/dist/esm/CheckMode-bdb2ec19.js +7 -0
  248. package/dist/esm/DialogType-54a62731.js +9 -0
  249. package/dist/esm/EzScrollDirection-2df26c93.js +8 -0
  250. package/dist/esm/RecordValidationProcessor-abc814af.js +99 -0
  251. package/dist/esm/constants-6dab64f7.js +4 -0
  252. package/dist/esm/ez-actions-button.entry.js +208 -0
  253. package/dist/esm/ez-alert.entry.js +26 -0
  254. package/dist/esm/ez-application.entry.js +22 -0
  255. package/dist/esm/ez-badge.entry.js +116 -0
  256. package/dist/esm/ez-breadcrumb.entry.js +281 -0
  257. package/dist/esm/ez-button.entry.js +83 -0
  258. package/dist/esm/ez-calendar.entry.js +234 -0
  259. package/dist/esm/ez-card-item.entry.js +48 -0
  260. package/dist/esm/ez-check.entry.js +91 -0
  261. package/dist/esm/ez-chip.entry.js +112 -0
  262. package/dist/esm/ez-collapsible-box.entry.js +129 -0
  263. package/dist/esm/ez-combo-box.entry.js +686 -0
  264. package/dist/esm/ez-date-input.entry.js +184 -0
  265. package/dist/esm/ez-date-time-input.entry.js +238 -0
  266. package/dist/esm/ez-dialog.entry.js +176 -0
  267. package/dist/esm/ez-dropdown.entry.js +511 -0
  268. package/dist/esm/ez-file-item.entry.js +70 -0
  269. package/dist/esm/ez-filter-input_2.entry.js +132 -0
  270. package/dist/esm/ez-form-view.entry.js +187 -0
  271. package/dist/esm/ez-form.entry.js +929 -0
  272. package/dist/esm/ez-grid.entry.js +120834 -0
  273. package/dist/esm/ez-guide-navigator.entry.js +92 -0
  274. package/dist/esm/ez-icon.entry.js +40 -0
  275. package/dist/esm/ez-list.entry.js +554 -0
  276. package/dist/esm/ez-loading-bar.entry.js +28 -0
  277. package/dist/esm/ez-modal-container.entry.js +60 -0
  278. package/dist/esm/ez-modal.entry.js +68 -0
  279. package/dist/esm/ez-multi-selection-list.entry.js +179 -0
  280. package/dist/esm/ez-number-input.entry.js +177 -0
  281. package/dist/esm/ez-popover.entry.js +152 -0
  282. package/dist/esm/ez-popup.entry.js +62 -0
  283. package/dist/esm/ez-radio-button.entry.js +44 -0
  284. package/dist/esm/ez-scroller_3.entry.js +786 -0
  285. package/dist/esm/ez-search.entry.js +92 -0
  286. package/dist/esm/ez-skeleton.entry.js +63 -0
  287. package/dist/esm/ez-tabselector.entry.js +224 -0
  288. package/dist/esm/ez-text-area.entry.js +175 -0
  289. package/dist/esm/ez-text-edit.entry.js +103 -0
  290. package/dist/esm/ez-text-input.entry.js +243 -0
  291. package/dist/esm/ez-time-input.entry.js +164 -0
  292. package/dist/esm/ez-toast.entry.js +97 -0
  293. package/dist/esm/ez-upload.entry.js +391 -0
  294. package/dist/esm/ez-view-stack.entry.js +82 -0
  295. package/dist/esm/ezui.js +18 -0
  296. package/dist/esm/filter-column.entry.js +147 -0
  297. package/dist/esm/index-296b8458.js +2309 -0
  298. package/dist/esm/index.js +1 -0
  299. package/dist/esm/loader.js +18 -0
  300. package/dist/esm/polyfills/core-js.js +11 -0
  301. package/dist/esm/polyfills/css-shim.js +1 -0
  302. package/dist/esm/polyfills/dom.js +79 -0
  303. package/dist/esm/polyfills/es5-html-element.js +1 -0
  304. package/dist/esm/polyfills/index.js +34 -0
  305. package/dist/esm/polyfills/system.js +6 -0
  306. package/dist/ezui/ezui.esm.js +1 -0
  307. package/dist/ezui/index.esm.js +0 -0
  308. package/dist/ezui/p-028f264f.entry.js +1 -0
  309. package/dist/ezui/p-050247dc.entry.js +1 -0
  310. package/dist/ezui/p-061f4d73.entry.js +1 -0
  311. package/dist/ezui/p-1e7c4986.entry.js +1 -0
  312. package/dist/ezui/p-244dfe8a.entry.js +1 -0
  313. package/dist/ezui/p-25562cf8.entry.js +1 -0
  314. package/dist/ezui/p-27a01a26.js +1 -0
  315. package/dist/ezui/p-2da09f70.entry.js +1 -0
  316. package/dist/ezui/p-32b4163f.entry.js +1 -0
  317. package/dist/ezui/p-37673563.entry.js +1 -0
  318. package/dist/ezui/p-391de0e4.entry.js +1 -0
  319. package/dist/ezui/p-5ce6548c.entry.js +1 -0
  320. package/dist/ezui/p-5cef0264.entry.js +1 -0
  321. package/dist/ezui/p-5d6f2550.entry.js +1 -0
  322. package/dist/ezui/p-5e55a42b.entry.js +1 -0
  323. package/dist/ezui/p-60ba28ea.entry.js +1 -0
  324. package/dist/ezui/p-68352e41.entry.js +1 -0
  325. package/dist/ezui/p-6ab2f7c2.entry.js +1 -0
  326. package/dist/ezui/p-7525e604.entry.js +1 -0
  327. package/dist/ezui/p-7526f2b6.entry.js +1 -0
  328. package/dist/ezui/p-7eb3e1a5.js +1 -0
  329. package/dist/ezui/p-83885b21.entry.js +1 -0
  330. package/dist/ezui/p-86a2036d.js +1 -0
  331. package/dist/ezui/p-87e85160.entry.js +1 -0
  332. package/dist/ezui/p-8bd3903b.entry.js +1 -0
  333. package/dist/ezui/p-8fdff9cd.entry.js +1 -0
  334. package/dist/ezui/p-9285b53e.entry.js +1 -0
  335. package/dist/ezui/p-95426f93.entry.js +1 -0
  336. package/dist/ezui/p-964e5571.entry.js +304 -0
  337. package/dist/ezui/p-98bb8b16.js +1 -0
  338. package/dist/ezui/p-9b347f04.entry.js +1 -0
  339. package/dist/ezui/p-a01068e1.entry.js +1 -0
  340. package/dist/ezui/p-a510a4c5.entry.js +1 -0
  341. package/dist/ezui/p-a5e09759.entry.js +1 -0
  342. package/dist/ezui/p-ab574d59.js +1 -0
  343. package/dist/ezui/p-b11f035c.entry.js +1 -0
  344. package/dist/ezui/p-b853763b.js +1 -0
  345. package/dist/ezui/p-c49dbf23.entry.js +1 -0
  346. package/dist/ezui/p-ccb4ccd9.entry.js +1 -0
  347. package/dist/ezui/p-cd19a6f8.entry.js +1 -0
  348. package/dist/ezui/p-ce035beb.entry.js +1 -0
  349. package/dist/ezui/p-d43b22f3.entry.js +1 -0
  350. package/dist/ezui/p-d51aa09b.entry.js +1 -0
  351. package/dist/ezui/p-db528b31.entry.js +1 -0
  352. package/dist/ezui/p-e2dfd935.entry.js +1 -0
  353. package/dist/ezui/p-e318d280.js +2 -0
  354. package/dist/ezui/p-e67d0bd5.entry.js +1 -0
  355. package/dist/ezui/p-e7fa0ad6.entry.js +1 -0
  356. package/dist/ezui/p-f15ec3bb.js +1 -0
  357. package/dist/ezui/p-f4208819.entry.js +1 -0
  358. package/dist/ezui/p-fa571a4e.entry.js +1 -0
  359. package/dist/ezui/p-ff82b176.entry.js +1 -0
  360. package/dist/index.cjs.js +1 -0
  361. package/dist/index.js +1 -0
  362. package/dist/types/components/ez-actions-button/ez-actions-button.d.ts +82 -0
  363. package/dist/types/components/ez-alert/ez-alert.d.ts +10 -0
  364. package/dist/types/components/ez-application/ez-application.d.ts +10 -0
  365. package/dist/types/components/ez-badge/enum/sizes.d.ts +8 -0
  366. package/dist/types/components/ez-badge/ez-badge.d.ts +35 -0
  367. package/dist/types/components/ez-badge/interfaces/IPosition.d.ts +4 -0
  368. package/dist/types/components/ez-breadcrumb/ez-breadcrumb.d.ts +71 -0
  369. package/dist/types/components/ez-breadcrumb/subcomponents/breadcrumb-item.d.ts +13 -0
  370. package/dist/types/components/ez-button/ez-button.d.ts +41 -0
  371. package/dist/types/components/ez-calendar/ez-calendar.d.ts +74 -0
  372. package/dist/types/components/ez-card-item/ez-card-item.d.ts +32 -0
  373. package/dist/types/components/ez-check/CheckMode.d.ts +4 -0
  374. package/dist/types/components/ez-check/ez-check.d.ts +49 -0
  375. package/dist/types/components/ez-chip/ez-chip.d.ts +60 -0
  376. package/dist/types/components/ez-collapsible-box/ez-collapsible-box.d.ts +91 -0
  377. package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +182 -0
  378. package/dist/types/components/ez-date-input/ez-date-input.d.ts +72 -0
  379. package/dist/types/components/ez-date-time-input/ez-date-time-input.d.ts +80 -0
  380. package/dist/types/components/ez-dialog/DialogType.d.ts +6 -0
  381. package/dist/types/components/ez-dialog/ez-dialog.d.ts +82 -0
  382. package/dist/types/components/ez-dropdown/ez-dropdown.d.ts +60 -0
  383. package/dist/types/components/ez-dropdown/structure/DropdownItem.d.ts +28 -0
  384. package/dist/types/components/ez-dropdown/structure/SubmenuControl.d.ts +78 -0
  385. package/dist/types/components/ez-file-item/ez-file-item.d.ts +36 -0
  386. package/dist/types/components/ez-filter-input/ez-filter-input.d.ts +77 -0
  387. package/dist/types/components/ez-form/ez-form.d.ts +47 -0
  388. package/dist/types/components/ez-form/store/form.slice.d.ts +27 -0
  389. package/dist/types/components/ez-form-view/ez-form-view.d.ts +22 -0
  390. package/dist/types/components/ez-form-view/fieldbuilder/FieldBuilder.d.ts +2 -0
  391. package/dist/types/components/ez-form-view/fieldbuilder/templates/CheckBox.tpl.d.ts +3 -0
  392. package/dist/types/components/ez-form-view/fieldbuilder/templates/ComboBox.tpl.d.ts +2 -0
  393. package/dist/types/components/ez-form-view/fieldbuilder/templates/DateInput.tpl.d.ts +4 -0
  394. package/dist/types/components/ez-form-view/fieldbuilder/templates/FileInput.tpl.d.ts +2 -0
  395. package/dist/types/components/ez-form-view/fieldbuilder/templates/NumberInput.tpl.d.ts +3 -0
  396. package/dist/types/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.d.ts +2 -0
  397. package/dist/types/components/ez-form-view/fieldbuilder/templates/TextArea.tpl.d.ts +2 -0
  398. package/dist/types/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.d.ts +2 -0
  399. package/dist/types/components/ez-form-view/interfaces/IFormViewField.d.ts +3 -0
  400. package/dist/types/components/ez-form-view/interfaces/index.d.ts +1 -0
  401. package/dist/types/components/ez-form-view/structure/index.d.ts +14 -0
  402. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +287 -0
  403. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +89 -0
  404. package/dist/types/components/ez-grid/controller/ag-grid/AgGridUtils.d.ts +1 -0
  405. package/dist/types/components/ez-grid/controller/ag-grid/DataSource.d.ts +20 -0
  406. package/dist/types/components/ez-grid/controller/ag-grid/GridEditionManager.d.ts +38 -0
  407. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.d.ts +32 -0
  408. package/dist/types/components/ez-grid/controller/ag-grid/components/cellRendererStatus.d.ts +11 -0
  409. package/dist/types/components/ez-grid/controller/ag-grid/components/selectionHeader.d.ts +12 -0
  410. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellEditor.d.ts +10 -0
  411. package/dist/types/components/ez-grid/controller/ag-grid/editor/GridEditorUtils.d.ts +1 -0
  412. package/dist/types/components/ez-grid/controller/ag-grid/editor/IEditorMetadata.d.ts +9 -0
  413. package/dist/types/components/ez-grid/controller/ag-grid/editor/IUICellEditor.d.ts +10 -0
  414. package/dist/types/components/ez-grid/controller/ag-grid/editor/templates/ComboBox.tpl.d.ts +4 -0
  415. package/dist/types/components/ez-grid/controller/ag-grid/editor/templates/DateInput.tpl.d.ts +5 -0
  416. package/dist/types/components/ez-grid/controller/ag-grid/editor/templates/NumberInput.tpl.d.ts +4 -0
  417. package/dist/types/components/ez-grid/controller/ag-grid/editor/templates/Search.tpl.d.ts +3 -0
  418. package/dist/types/components/ez-grid/controller/ag-grid/editor/templates/TextInput.tpl.d.ts +4 -0
  419. package/dist/types/components/ez-grid/controller/ag-grid/i18n/pt-BR.d.ts +2 -0
  420. package/dist/types/components/ez-grid/controller/ag-grid/mock/Server.d.ts +8 -0
  421. package/dist/types/components/ez-grid/ez-grid.d.ts +139 -0
  422. package/dist/types/components/ez-grid/interfaces/ISelection.d.ts +3 -0
  423. package/dist/types/components/ez-grid/interfaces/ISelectionToastConfig.d.ts +3 -0
  424. package/dist/types/components/ez-grid/interfaces/index.d.ts +2 -0
  425. package/dist/types/components/ez-grid/subcomponents/filter-column.d.ts +57 -0
  426. package/dist/types/components/ez-grid/subcomponents/selection-counter.d.ts +15 -0
  427. package/dist/types/components/ez-grid/utils/InMemoryFilterColumnDataSource.d.ts +16 -0
  428. package/dist/types/components/ez-guide-navigator/ez-guide-navigator.d.ts +64 -0
  429. package/dist/types/components/ez-guide-navigator/interfaces/IGuideItem.d.ts +4 -0
  430. package/dist/types/components/ez-guide-navigator/interfaces/index.d.ts +1 -0
  431. package/dist/types/components/ez-icon/ez-icon.d.ts +20 -0
  432. package/dist/types/components/ez-list/ez-list.d.ts +133 -0
  433. package/dist/types/components/ez-loading-bar/ez-loading-bar.d.ts +12 -0
  434. package/dist/types/components/ez-modal/ez-modal.d.ts +53 -0
  435. package/dist/types/components/ez-modal-container/ez-modal-container.d.ts +47 -0
  436. package/dist/types/components/ez-modal-container/index.d.ts +2 -0
  437. package/dist/types/components/ez-modal-container/modal-action.d.ts +7 -0
  438. package/dist/types/components/ez-modal-container/modal-button-status.d.ts +6 -0
  439. package/dist/types/components/ez-multi-selection-list/ez-multi-selection-list.d.ts +68 -0
  440. package/dist/types/components/ez-multi-selection-list/interfaces/IMultiSelectionListDataSource.d.ts +4 -0
  441. package/dist/types/components/ez-multi-selection-list/interfaces/IMultiSelectionOption.d.ts +4 -0
  442. package/dist/types/components/ez-multi-selection-list/subcomponents/multi-selection-box-message.d.ts +4 -0
  443. package/dist/types/components/ez-number-input/ez-number-input.d.ts +81 -0
  444. package/dist/types/components/ez-popover/ez-popover.d.ts +60 -0
  445. package/dist/types/components/ez-popup/ez-popup.d.ts +37 -0
  446. package/dist/types/components/ez-radio-button/ez-radio-button.d.ts +37 -0
  447. package/dist/types/components/ez-scroller/EzScrollDirection.d.ts +5 -0
  448. package/dist/types/components/ez-scroller/ez-scroller.d.ts +38 -0
  449. package/dist/types/components/ez-search/ez-search.d.ts +84 -0
  450. package/dist/types/components/ez-sidebar-button/ez-sidebar-button.d.ts +11 -0
  451. package/dist/types/components/ez-skeleton/ez-skeleton.constants.d.ts +1 -0
  452. package/dist/types/components/ez-skeleton/ez-skeleton.d.ts +54 -0
  453. package/dist/types/components/ez-tabselector/ez-tabselector.d.ts +52 -0
  454. package/dist/types/components/ez-text-area/ez-text-area.d.ts +78 -0
  455. package/dist/types/components/ez-text-edit/ez-text-edit.d.ts +41 -0
  456. package/dist/types/components/ez-text-input/ez-text-input.d.ts +82 -0
  457. package/dist/types/components/ez-time-input/ez-time-input.d.ts +74 -0
  458. package/dist/types/components/ez-toast/ez-toast.d.ts +45 -0
  459. package/dist/types/components/ez-tree/ez-tree.d.ts +101 -0
  460. package/dist/types/components/ez-tree/interfaces/ITree.d.ts +5 -0
  461. package/dist/types/components/ez-tree/interfaces/ITreeItem.d.ts +11 -0
  462. package/dist/types/components/ez-tree/subcomponents/DefaultIconResolver.d.ts +2 -0
  463. package/dist/types/components/ez-tree/subcomponents/DefaultTooltipResolver.d.ts +2 -0
  464. package/dist/types/components/ez-tree/subcomponents/TreeItem.d.ts +15 -0
  465. package/dist/types/components/ez-tree/subcomponents/index.d.ts +2 -0
  466. package/dist/types/components/ez-tree/types/Node.d.ts +22 -0
  467. package/dist/types/components/ez-tree/types/Tree.d.ts +21 -0
  468. package/dist/types/components/ez-upload/RemoteFile.d.ts +14 -0
  469. package/dist/types/components/ez-upload/ez-upload.d.ts +101 -0
  470. package/dist/types/components/ez-view-stack/ez-view-stack.d.ts +25 -0
  471. package/dist/types/components.d.ts +3464 -0
  472. package/dist/types/index.d.ts +1 -0
  473. package/dist/types/stencil-public-runtime.d.ts +1637 -0
  474. package/dist/types/utils/ApplicationUtils.d.ts +31 -0
  475. package/dist/types/utils/AssetsUtils.d.ts +1 -0
  476. package/dist/types/utils/CSSVarsUtils.d.ts +6 -0
  477. package/dist/types/utils/constants.d.ts +3 -0
  478. package/dist/types/utils/form/DataBinder.d.ts +30 -0
  479. package/dist/types/utils/form/FormMetadata.d.ts +23 -0
  480. package/dist/types/utils/form/index.d.ts +2 -0
  481. package/dist/types/utils/form/interfaces/IDefaultConfig.d.ts +5 -0
  482. package/dist/types/utils/form/interfaces/IFormCardConfig.d.ts +5 -0
  483. package/dist/types/utils/form/interfaces/IFormConfig.d.ts +13 -0
  484. package/dist/types/utils/form/interfaces/IFormSheetMetadata.d.ts +6 -0
  485. package/dist/types/utils/form/interfaces/ISummaryField.d.ts +4 -0
  486. package/dist/types/utils/form/interfaces/ITabConfig.d.ts +6 -0
  487. package/dist/types/utils/form/interfaces/index.d.ts +10 -0
  488. package/dist/types/utils/index.d.ts +6 -0
  489. package/dist/types/utils/interfaces/AbstractFieldMetadata.d.ts +17 -0
  490. package/dist/types/utils/interfaces/IFieldConfig.d.ts +13 -0
  491. package/dist/types/utils/utils.d.ts +2 -0
  492. package/dist/types/utils/validators/recordvalidator/IInvalidField.d.ts +4 -0
  493. package/dist/types/utils/validators/recordvalidator/IRecordValidator.d.ts +5 -0
  494. package/dist/types/utils/validators/recordvalidator/IValidationResult.d.ts +8 -0
  495. package/dist/types/utils/validators/recordvalidator/IValidationSource.d.ts +6 -0
  496. package/dist/types/utils/validators/recordvalidator/RecordValidationProcessor.d.ts +13 -0
  497. package/loader/cdn.js +3 -0
  498. package/loader/index.cjs.js +3 -0
  499. package/loader/index.d.ts +21 -0
  500. package/loader/index.es2017.js +3 -0
  501. package/loader/index.js +4 -0
  502. package/loader/package.json +11 -0
  503. package/package.json +93 -0
  504. package/react/.keepfolder +0 -0
  505. package/react/components.d.ts +48 -0
  506. package/react/components.js +52 -0
  507. package/react/components.js.map +1 -0
  508. package/react/react-component-lib/createComponent.d.ts +10 -0
  509. package/react/react-component-lib/createComponent.js +59 -0
  510. package/react/react-component-lib/createComponent.js.map +1 -0
  511. package/react/react-component-lib/createOverlayComponent.d.ts +20 -0
  512. package/react/react-component-lib/createOverlayComponent.js +89 -0
  513. package/react/react-component-lib/createOverlayComponent.js.map +1 -0
  514. package/react/react-component-lib/index.d.ts +2 -0
  515. package/react/react-component-lib/index.js +3 -0
  516. package/react/react-component-lib/index.js.map +1 -0
  517. package/react/react-component-lib/interfaces.d.ts +29 -0
  518. package/react/react-component-lib/interfaces.js +1 -0
  519. package/react/react-component-lib/interfaces.js.map +1 -0
  520. package/react/react-component-lib/utils/attachProps.d.ts +12 -0
  521. package/react/react-component-lib/utils/attachProps.js +96 -0
  522. package/react/react-component-lib/utils/attachProps.js.map +1 -0
  523. package/react/react-component-lib/utils/case.d.ts +2 -0
  524. package/react/react-component-lib/utils/case.js +7 -0
  525. package/react/react-component-lib/utils/case.js.map +1 -0
  526. package/react/react-component-lib/utils/dev.d.ts +2 -0
  527. package/react/react-component-lib/utils/dev.js +13 -0
  528. package/react/react-component-lib/utils/dev.js.map +1 -0
  529. package/react/react-component-lib/utils/index.d.ts +7 -0
  530. package/react/react-component-lib/utils/index.js +21 -0
  531. package/react/react-component-lib/utils/index.js.map +1 -0
@@ -0,0 +1,686 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-296b8458.js';
2
+ import { ObjectUtils, FloatingManager, StringUtils, ElementIDUtils } from '@sankhyalabs/core';
3
+ import { A as ApplicationUtils } from './ApplicationUtils-d9a34a16.js';
4
+ import { C as CSSVarsUtils } from './CSSVarsUtils-a97cfa29.js';
5
+ import './DialogType-54a62731.js';
6
+ import './CheckMode-bdb2ec19.js';
7
+ import { R as REQUIRED_INFO } from './constants-6dab64f7.js';
8
+
9
+ const ezComboBoxCss = ":host{--ez-combo-box--height:42px;--ez-combo-box--width:100%;--ez-combo-box__icon--width:48px;--ez-combo-box--border-radius:var(--border--radius-medium, 12px);--ez-combo-box--border-radius-small:var(--border--radius-small, 6px);--ez-combo-box--font-size:var(--text--medium, 14px);--ez-combo-box--font-family:var(--font-pattern, Arial);--ez-combo-box--font-weight--large:var(--text-weight--large, 500);--ez-combo-box--font-weight--medium:var(--text-weight--medium, 400);--ez-combo-box--background-color--xlight:var(--background--xlight, #fff);--ez-combo-box--background-medium:var(--background--medium, #f0f3f7);--ez-combo-box--line-height:calc(var(--text--medium, 14px) + 4px);--ez-combo-box__input--background-color:var(--background--medium, #e0e0e0);--ez-combo-box__input--border:var(--border--medium, 2px solid);--ez-combo-box__input--border-color:var(--ez-combo-box__input--background-color);--ez-combo-box__input--focus--border-color:var(--color--primary, #008561);--ez-combo-box__input--disabled--background-color:var(--color--disable-secondary, #F2F5F8);--ez-combo-box__input--disabled--color:var(--text--disable, #AFB6C0);--ez-combo-box__input--error--border-color:#CC2936;--ez-combo-box__btn--color:var(--title--primary, #2B3A54);--ez-combo-box__btn-disabled--color:var(--text--disable, #AFB6C0);--ez-combo-box__btn-hover--color:var(--color--primary, #4e4e4e);--ez-combo-box__label--color:var(--title--primary, #2B3A54);--ez-combo-box__list-title--primary:var(--title--primary, #2B3A54);--ez-combo-box__list-text--primary:var(--text--primary, #626e82);--ez-combo-box__list-height:calc(var(--ez-combo-box--font-size) + var(--ez-combo-box--space--medium) + 4px);--ez-combo-box__list-min-width:64px;--ez-combo-box--space--medium:var(--space--medium, 12px);--ez-combo-box--space--small:var(--space--small, 6px);--ez-combo-box__scrollbar--color-default:var(--scrollbar--default, #626e82);--ez-combo-box__scrollbar--color-background:var(--scrollbar--background, #E5EAF0);--ez-combo-box__scrollbar--color-hover:var(--scrollbar--hover, #2B3A54);--ez-combo-box__scrollbar--color-clicked:var(--scrollbar--clicked, #a2abb9);--ez-combo-box__scrollbar--border-radius:var(--border--radius-small, 6px);--ez-combo-box__scrollbar--width:var(--space--medium, 12px);display:flex;flex-wrap:wrap;position:relative;width:var(--ez-combo-box--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-combo-box__list-min-width);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:calc(4*var(--ez-combo-box__list-height) + 2*var(--ez-combo-box--space--small) + 9px);background-color:var(--ez-combo-box--background-color--xlight);border-radius:var(--ez-combo-box--border-radius);box-shadow:var(--shadow, 0px 0px 16px 0px #000);padding:var(--ez-combo-box--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-combo-box__scrollbar--color-clicked) var(--ez-combo-box__scrollbar--color-background)}.list-options::-webkit-scrollbar{background-color:var(--ez-combo-box__scrollbar--color-background);width:var(--ez-combo-box__scrollbar--width);max-width:var(--ez-combo-box__scrollbar--width);min-width:var(--ez-combo-box__scrollbar--width)}.list-options::-webkit-scrollbar-track{background-color:var(--ez-combo-box__scrollbar--color-background);border-radius:var(--ez-combo-box__scrollbar--border-radius)}.list-options::-webkit-scrollbar-thumb{background-color:var(--ez-combo-box__scrollbar--color-default);border-radius:var(--ez-combo-box__scrollbar--border-radius)}.list-options::-webkit-scrollbar-thumb:vertical:hover,.list-options::-webkit-scrollbar-thumb:horizontal:hover{background-color:var(--ez-combo-box__scrollbar--color-hover)}.list-options::-webkit-scrollbar-thumb:vertical:active,.list-options::-webkit-scrollbar-thumb:horizontal:active{background-color:var(--ez-combo-box__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-combo-box--border-radius-small);padding:var(--ez-combo-box--space--small);min-height:var(--ez-combo-box__list-height);gap:var(--space--small, 6px)}.item__value,.item__label{flex-basis:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ez-combo-box__list-title--primary);font-family:var(--ez-combo-box--font-family);font-size:var(--ez-combo-box--font-size);line-height:var(--ez-combo-box--line-height)}.item__label{font-weight:var(--ez-combo-box--font-weight--medium)}.item__label--bold{font-weight:var(--ez-combo-box--font-weight--large)}.item__value{text-align:center;color:var(--ez-combo-box__list-text--primary);font-weight:var(--ez-combo-box--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-combo-box__list-height)}.message__no-result{color:var(--ez-combo-box__list-title--primary);font-family:var(--ez-combo-box--font-family);font-size:var(--ez-combo-box--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-combo-box__list-title--primary);border-top:3px solid transparent}li:hover{background-color:var(--ez-combo-box--background-medium)}.preselected{background-color:var(--background--medium)}.btn{outline:none;border:none;background:none;cursor:pointer;color:var(--ez-combo-box__btn--color)}.btn:disabled{cursor:unset;color:var(--ez-combo-box__btn-disabled--color)}.btn:disabled:hover{cursor:unset;color:var(--ez-combo-box__btn-disabled--color)}.btn:hover{color:var(--ez-combo-box__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)}}";
10
+
11
+ const EzComboBox = class {
12
+ constructor(hostRef) {
13
+ registerInstance(this, hostRef);
14
+ this.ezChange = createEvent(this, "ezChange", 7);
15
+ this._changeDeboucingTimeout = null;
16
+ this._limitCharsToSearch = 3;
17
+ this._deboucingTime = 300;
18
+ this._maxWidthValue = 0;
19
+ this._tabPressed = false;
20
+ this._textEmptyList = "Nenhum resultado encontrado";
21
+ this._textEmptySearch = "Nenhum resultado de {0} encontrado";
22
+ this._lookupMode = false;
23
+ this._preSelection = undefined;
24
+ this._visibleOptions = undefined;
25
+ this._startLoading = false;
26
+ this._showLoading = true;
27
+ this._criteria = undefined;
28
+ this.value = undefined;
29
+ this.label = undefined;
30
+ this.enabled = true;
31
+ this.options = undefined;
32
+ this.errorMessage = undefined;
33
+ this.searchMode = undefined;
34
+ this.showSelectedValue = false;
35
+ this.showOptionValue = false;
36
+ this.suppressSearch = false;
37
+ this.optionLoader = undefined;
38
+ this.suppressEmptyOption = false;
39
+ this.canShowError = true;
40
+ this.mode = "regular";
41
+ this.hideErrorOnFocusOut = true;
42
+ this.listOptionsPosition = undefined;
43
+ this.isTextSearch = false;
44
+ }
45
+ observeErrorMessage() {
46
+ var _a;
47
+ if (this._textInput) {
48
+ this._textInput.errorMessage = this.errorMessage;
49
+ if (!((_a = this.errorMessage) === null || _a === void 0 ? void 0 : _a.trim())) {
50
+ this.setInputValue();
51
+ }
52
+ }
53
+ }
54
+ observeValue(newValue, oldValue) {
55
+ if (this._textInput && newValue != oldValue) {
56
+ try {
57
+ if (this.searchMode && typeof newValue === "string") {
58
+ this.setInputValue();
59
+ return;
60
+ }
61
+ const newValueSelected = this.getSelectedOption(newValue);
62
+ const oldValueSelected = this.getSelectedOption(oldValue);
63
+ const currentValue = this.getSelectedOption(this.value);
64
+ if (this.isDifferentValues(currentValue, newValueSelected)) {
65
+ this.value = newValueSelected;
66
+ }
67
+ if (this.isDifferentValues(newValueSelected, oldValueSelected)) {
68
+ this.setInputValue();
69
+ const valueEmitted = newValueSelected === null ? undefined : newValueSelected;
70
+ if (!this._lookupMode) {
71
+ this.ezChange.emit(valueEmitted);
72
+ }
73
+ }
74
+ this.resetOptions();
75
+ }
76
+ finally {
77
+ this._lookupMode = false;
78
+ }
79
+ }
80
+ }
81
+ observeOptions(newOptions, oldOptions) {
82
+ if ((newOptions === null || newOptions === void 0 ? void 0 : newOptions.join('')) === (oldOptions === null || oldOptions === void 0 ? void 0 : oldOptions.join('')))
83
+ return;
84
+ this.loadOptions(SearchMode.PRELOAD);
85
+ }
86
+ /*
87
+ * Retorna uma promise com o valor da opção selecionada,
88
+ * que será resolvida quando o backend devolver este dado.
89
+ */
90
+ async getValueAsync() {
91
+ if (!this._showLoading) {
92
+ return new Promise(resolve => resolve(this.value));
93
+ }
94
+ return new Promise(resolve => {
95
+ let id = setInterval(() => {
96
+ if (!this._showLoading) {
97
+ clearInterval(id);
98
+ resolve(this.value);
99
+ }
100
+ }, 100);
101
+ });
102
+ }
103
+ /**
104
+ * Aplica o foco no campo.
105
+ */
106
+ async setFocus() {
107
+ if (this._textInput) {
108
+ this._textInput.setFocus();
109
+ }
110
+ }
111
+ /**
112
+ * Remove o foco do campo.
113
+ */
114
+ async setBlur() {
115
+ if (this._textInput) {
116
+ this._textInput.setBlur();
117
+ }
118
+ }
119
+ /**
120
+ * Retorna se o conteúdo é inválido.
121
+ */
122
+ async isInvalid() {
123
+ return typeof this.errorMessage === "string" && this.errorMessage.trim() !== "";
124
+ }
125
+ /**
126
+ * Limpa o valor do campo de pesquisa
127
+ */
128
+ async clearValue() {
129
+ this.clearSearch();
130
+ }
131
+ scrollListener() {
132
+ var _a;
133
+ if (this._floatingID == undefined) {
134
+ return;
135
+ }
136
+ if ((_a = this.listOptionsPosition) === null || _a === void 0 ? void 0 : _a.hardPosition) {
137
+ this.hideOptions();
138
+ }
139
+ else {
140
+ window.requestAnimationFrame(() => {
141
+ this.updateListPosition();
142
+ });
143
+ }
144
+ }
145
+ updateListPosition() {
146
+ let { verticalPosition, horizontalPosition, fromBottom, fromRight, bottomLimit, hardPosition } = this.getListPosition();
147
+ const elementRect = this._listWrapper.getBoundingClientRect();
148
+ const containerRect = this._listContainer.getBoundingClientRect();
149
+ const textInputRect = this._textInput.getBoundingClientRect();
150
+ const limitHeight = bottomLimit || window.innerHeight;
151
+ const neededHeight = containerRect.bottom + elementRect.height;
152
+ if (!fromBottom && (elementRect.top < 0 || neededHeight > limitHeight)) {
153
+ fromBottom = true;
154
+ }
155
+ if (!hardPosition) {
156
+ verticalPosition = verticalPosition || 0;
157
+ horizontalPosition = horizontalPosition || 0;
158
+ if (fromBottom) {
159
+ verticalPosition = window.innerHeight - textInputRect.top + verticalPosition;
160
+ }
161
+ else {
162
+ verticalPosition += containerRect.top;
163
+ }
164
+ if (fromRight) {
165
+ horizontalPosition = window.innerWidth - textInputRect.right + horizontalPosition;
166
+ }
167
+ else {
168
+ horizontalPosition += containerRect.left;
169
+ }
170
+ }
171
+ if (verticalPosition != undefined) {
172
+ this._listWrapper.style[fromBottom ? "bottom" : "top"] = `${verticalPosition}px`;
173
+ this._listWrapper.style[fromBottom ? "top" : "bottom"] = "";
174
+ }
175
+ if (horizontalPosition != undefined) {
176
+ this._listWrapper.style[fromRight ? "right" : "left"] = `${horizontalPosition}px`;
177
+ this._listWrapper.style[fromRight ? "left" : "right"] = "";
178
+ }
179
+ }
180
+ getListPosition() {
181
+ if (this.listOptionsPosition) {
182
+ return this.listOptionsPosition;
183
+ }
184
+ return {
185
+ verticalPosition: (this.errorMessage || !this.canShowError || this.mode === "slim") ? 6 : -13
186
+ };
187
+ }
188
+ isDifferentValues(firstValue, secondValue) {
189
+ return ObjectUtils.objectToString(firstValue || {}) !== ObjectUtils.objectToString(secondValue || {});
190
+ }
191
+ getFormattedText(currentValue) {
192
+ if (currentValue == undefined) {
193
+ return;
194
+ }
195
+ if (!this.showSelectedValue || currentValue.value == undefined) {
196
+ return currentValue.label;
197
+ }
198
+ return currentValue.label ? `${currentValue.value} - ${currentValue.label}` : currentValue.value;
199
+ }
200
+ getText() {
201
+ const currentValue = this.getSelectedOption(this.value);
202
+ const text = this.getFormattedText(currentValue);
203
+ if (text == undefined) {
204
+ return;
205
+ }
206
+ return String(text)
207
+ .replace(/&amp;/g, '&')
208
+ .replace(/&lt;/g, '<')
209
+ .replace(/&gt;/g, '>')
210
+ .replace(/&quot;/g, '"');
211
+ }
212
+ getSelectedOption(value) {
213
+ if (typeof value === "string" || value instanceof String) {
214
+ return this._visibleOptions.find(o => o.value === value);
215
+ }
216
+ return value;
217
+ }
218
+ updateVisibleOptions() {
219
+ let opts = this._source || [];
220
+ if (!this.searchMode && this._criteria) {
221
+ const upperCriteria = this._criteria.toUpperCase();
222
+ opts = opts.filter(opt => opt.label.toLocaleUpperCase().indexOf(upperCriteria) > -1);
223
+ }
224
+ if (this.suppressEmptyOption) {
225
+ this._visibleOptions = opts;
226
+ }
227
+ else {
228
+ this._visibleOptions = [{ value: undefined, label: "" }].concat(opts);
229
+ }
230
+ this._maxWidthValue = this.getMaxWidthValue();
231
+ }
232
+ getMaxWidthValue() {
233
+ var _a;
234
+ if (this.showOptionValue) {
235
+ const arrValues = [];
236
+ (_a = this._visibleOptions) === null || _a === void 0 ? void 0 : _a.forEach(opt => {
237
+ const widthValue = this.getWidthValue(opt.value);
238
+ if (!arrValues.includes(widthValue)) {
239
+ arrValues.push(widthValue);
240
+ }
241
+ });
242
+ return arrValues.length > 1 ? Math.max(...arrValues) : 0;
243
+ }
244
+ return 0;
245
+ }
246
+ getWidthValue(value) {
247
+ if (this._itemValueBasis != undefined) {
248
+ const span = this._itemValueBasis;
249
+ if (value != undefined) {
250
+ span.innerHTML = value;
251
+ return span.clientWidth > 0 ? (span.clientWidth + 2) : 0;
252
+ }
253
+ else {
254
+ span.innerHTML = "";
255
+ }
256
+ }
257
+ return 0;
258
+ }
259
+ buildItem(opt, index) {
260
+ const widthValue = this.showOptionValue && this._maxWidthValue > 0 ? `${this._maxWidthValue}px` : '';
261
+ opt.label = opt.label || opt.value;
262
+ return h("li", { class: index === this._preSelection ? "item preselected" : "item", id: `item_${opt.value}`, onMouseDown: () => this.selectOption(opt), onMouseOver: () => this._preSelection = index }, this.showOptionValue
263
+ ? h("span", { class: "item__value", title: opt.value, style: { width: widthValue, minWidth: widthValue, maxWidth: widthValue } }, opt.value)
264
+ : undefined, h("span", { class: "item__label " + (this.showOptionValue ? "item__label--bold" : ""), title: opt.label }, opt.label));
265
+ }
266
+ showOptions() {
267
+ if (!this.enabled)
268
+ return;
269
+ if (this.isOptionsVisible()) {
270
+ return;
271
+ }
272
+ if (!!this._resizeObserver)
273
+ this._resizeObserver.observe(this._textInput);
274
+ this._floatingID = FloatingManager.float(this._listWrapper, this._listContainer, { autoClose: true, isFixed: true, backClickListener: () => this.hideOptions() });
275
+ this.setFocus();
276
+ window.requestAnimationFrame(() => {
277
+ this.updateListPosition();
278
+ if (!this.listOptionsPosition) {
279
+ this._listWrapper.scrollIntoView({ behavior: "smooth", block: "nearest", inline: "nearest" });
280
+ }
281
+ });
282
+ }
283
+ hideOptions() {
284
+ if (this._floatingID !== undefined) {
285
+ FloatingManager.close(this._floatingID);
286
+ }
287
+ this._floatingID = undefined;
288
+ if (!!this._resizeObserver)
289
+ this._resizeObserver.unobserve(this._textInput);
290
+ }
291
+ isOptionsVisible() {
292
+ return this._floatingID !== undefined && FloatingManager.isFloating(this._floatingID);
293
+ }
294
+ nextOption() {
295
+ if (this.searchMode && !this.isOptionsVisible()) {
296
+ return;
297
+ }
298
+ this.showOptions();
299
+ this._preSelection = this._preSelection === undefined ? 0 : Math.min(this._preSelection + 1, this._visibleOptions.length - 1);
300
+ this.scrollToOption(this._visibleOptions[this._preSelection]);
301
+ }
302
+ previousOption() {
303
+ this._preSelection = this._preSelection === undefined ? 0 : Math.max(this._preSelection - 1, 0);
304
+ this.scrollToOption(this._visibleOptions[this._preSelection]);
305
+ }
306
+ scrollToOption(opt) {
307
+ window.requestAnimationFrame(() => {
308
+ const liElem = (opt === null || opt === void 0 ? void 0 : opt.value) ? this._optionsList.querySelector(`li#item_${opt.value.replace(/[<>\[\]#=]/g, '\\$&').replace(/:/g, '\\:')}`) : undefined;
309
+ if (liElem)
310
+ liElem.scrollIntoView({ behavior: "smooth", block: "nearest" });
311
+ });
312
+ }
313
+ selectCurrentOption() {
314
+ if (this._preSelection !== undefined) {
315
+ this.selectOption(this._visibleOptions[this._preSelection]);
316
+ this._preSelection = undefined;
317
+ }
318
+ else {
319
+ this.controlListWithOnlyOne();
320
+ }
321
+ }
322
+ updateSource(source) {
323
+ this._startLoading = false;
324
+ if (source instanceof Promise) {
325
+ this._showLoading = true;
326
+ source.then(result => {
327
+ this._showLoading = false;
328
+ this.updateSource(result);
329
+ }).catch(() => this._showLoading = false);
330
+ this.updateVisibleOptions();
331
+ }
332
+ else {
333
+ this._showLoading = false;
334
+ if (Array.isArray(source)) {
335
+ this._source = source;
336
+ this.updateVisibleOptions();
337
+ if (this._tabPressed) {
338
+ this._tabPressed = false;
339
+ this.controlEmptySearch();
340
+ }
341
+ }
342
+ else {
343
+ this.selectOption(source);
344
+ }
345
+ }
346
+ }
347
+ clearSource() {
348
+ this._source = [];
349
+ this.updateVisibleOptions();
350
+ }
351
+ selectOption(newOption) {
352
+ var _a, _b;
353
+ const currentValue = this.getSelectedOption(this.value);
354
+ if ((((_a = currentValue === null || currentValue === void 0 ? void 0 : currentValue.value) === null || _a === void 0 ? void 0 : _a.toString()) !== ((_b = newOption === null || newOption === void 0 ? void 0 : newOption.value) === null || _b === void 0 ? void 0 : _b.toString()))
355
+ || (currentValue == undefined && newOption != undefined && "value" in newOption)) {
356
+ const adjustedOpt = !(newOption === null || newOption === void 0 ? void 0 : newOption.value) ? undefined : newOption;
357
+ this.value = adjustedOpt;
358
+ }
359
+ else {
360
+ this.resetOptions();
361
+ }
362
+ if (this.searchMode) {
363
+ this._visibleOptions = [];
364
+ this.clearSource();
365
+ }
366
+ }
367
+ loadOptions(mode, argument = "") {
368
+ this._criteria = argument;
369
+ this._startLoading = true;
370
+ if (this.optionLoader) {
371
+ const searchArgument = { mode, argument };
372
+ this.updateSource(this.optionLoader(searchArgument));
373
+ }
374
+ else {
375
+ this.updateSource(this.options);
376
+ }
377
+ }
378
+ cancelPreselection() {
379
+ if (!this._textInput.value && this.value) {
380
+ this.selectOption(undefined);
381
+ }
382
+ else {
383
+ window.setTimeout(() => {
384
+ this.setInputValue();
385
+ }, this._deboucingTime);
386
+ }
387
+ this.resetOptions();
388
+ }
389
+ setInputValue(clearError = true) {
390
+ const textValue = this.getText();
391
+ if ((this._textInput.value || '') !== textValue) {
392
+ this._textInput.value = textValue;
393
+ if (clearError) {
394
+ this.errorMessage = null;
395
+ }
396
+ }
397
+ }
398
+ clearSearch() {
399
+ this.value = null;
400
+ }
401
+ controlListWithOnlyOne() {
402
+ var _a;
403
+ if (this.searchMode) {
404
+ const source = (_a = this._visibleOptions) === null || _a === void 0 ? void 0 : _a.filter((opt) => opt.label !== "" && opt.value != undefined);
405
+ if ((source === null || source === void 0 ? void 0 : source.length) === 1) {
406
+ this.selectOption(source[0]);
407
+ }
408
+ }
409
+ }
410
+ controlEmptySearch() {
411
+ var _a;
412
+ if (this.searchMode) {
413
+ if (!((_a = this._visibleOptions) === null || _a === void 0 ? void 0 : _a.length)) {
414
+ this.clearSearch();
415
+ ApplicationUtils.info(this._textEmptyList);
416
+ }
417
+ else {
418
+ this.controlListWithOnlyOne();
419
+ }
420
+ }
421
+ }
422
+ validateDescriptionValue() {
423
+ if (!this.searchMode || StringUtils.isEmpty(this.value)) {
424
+ return;
425
+ }
426
+ let value = this.value;
427
+ if (typeof value === "object") {
428
+ return;
429
+ }
430
+ if (StringUtils.isEmpty(value)) {
431
+ return;
432
+ }
433
+ this.loadDescriptionValue(value);
434
+ }
435
+ async loadDescriptionValue(argument) {
436
+ var _a, _b;
437
+ if (argument == undefined) {
438
+ return;
439
+ }
440
+ if (((_a = this.options) === null || _a === void 0 ? void 0 : _a.length) > 0) {
441
+ this.loadOptionValue(argument);
442
+ return;
443
+ }
444
+ const searchArgument = {
445
+ mode: SearchMode.PREDICTIVE,
446
+ argument
447
+ };
448
+ const source = await ((_b = this.optionLoader) === null || _b === void 0 ? void 0 : _b.call(this, searchArgument));
449
+ if (source == undefined) {
450
+ return;
451
+ }
452
+ if (source instanceof Promise) {
453
+ source.then((result) => {
454
+ this.setDescriptionValue(result);
455
+ });
456
+ }
457
+ else {
458
+ this.setDescriptionValue(source);
459
+ }
460
+ }
461
+ setDescriptionValue(source) {
462
+ const value = (source === null || source === void 0 ? void 0 : source[0]) || source;
463
+ if (value == undefined || !Object.keys(value).length) {
464
+ this.showNoResultMessage();
465
+ return;
466
+ }
467
+ this._lookupMode = true;
468
+ this.value = value;
469
+ }
470
+ loadOptionValue(argument) {
471
+ var _a;
472
+ const source = (_a = this.options) === null || _a === void 0 ? void 0 : _a.find((opt) => opt.value === argument);
473
+ if (source != undefined) {
474
+ this.selectOption(source);
475
+ }
476
+ else {
477
+ this.showNoResultMessage();
478
+ }
479
+ }
480
+ async showNoResultMessage() {
481
+ this.clearSearch();
482
+ ApplicationUtils.info(this._textEmptySearch.replace("{0}", this.getFieldLabel()));
483
+ }
484
+ getFieldLabel() {
485
+ var _a;
486
+ return (_a = this.label) === null || _a === void 0 ? void 0 : _a.replace(REQUIRED_INFO, "").toUpperCase();
487
+ }
488
+ resetOptions() {
489
+ this.hideOptions();
490
+ this._criteria = undefined;
491
+ this._preSelection = undefined;
492
+ this.updateVisibleOptions();
493
+ }
494
+ //---------------------------------------------
495
+ // Lifecycle web component
496
+ //---------------------------------------------
497
+ componentWillLoad() {
498
+ if (this.options === undefined) {
499
+ this.options = [];
500
+ const optionsTags = this.el.querySelectorAll("option");
501
+ if (optionsTags) {
502
+ optionsTags.forEach(e => {
503
+ let label = e.innerText;
504
+ let value = e.getAttribute("value");
505
+ if (!value) {
506
+ value = label;
507
+ }
508
+ this.options.push({ label, value });
509
+ e.hidden = true;
510
+ });
511
+ }
512
+ }
513
+ if (this.searchMode) {
514
+ this.updateSource([]);
515
+ }
516
+ else {
517
+ this.loadOptions(SearchMode.PRELOAD);
518
+ }
519
+ }
520
+ componentDidRender() {
521
+ var _a;
522
+ if (this._floatingID === undefined) {
523
+ this._listWrapper.remove();
524
+ }
525
+ (_a = this._optionsList) === null || _a === void 0 ? void 0 : _a.querySelectorAll(".item").forEach((elem) => {
526
+ ElementIDUtils.addIDInfoIfNotExists(elem, "itemComboBox");
527
+ });
528
+ this.validateDescriptionValue();
529
+ }
530
+ componentDidLoad() {
531
+ CSSVarsUtils.applyVarsTextInput(this.el, this._textInput);
532
+ this.setInputValue(false);
533
+ this._resizeObserver = new ResizeObserver((entries) => {
534
+ window.requestAnimationFrame(() => {
535
+ if (!Array.isArray(entries) || !entries.length)
536
+ return;
537
+ const { clientWidth } = this._listContainer;
538
+ if (clientWidth > 0 && !!this._listWrapper) {
539
+ this._listWrapper.style.width = `${clientWidth}px`;
540
+ }
541
+ });
542
+ });
543
+ }
544
+ //---------------------------------------------
545
+ // Event handlers
546
+ //---------------------------------------------
547
+ handlerIconClick() {
548
+ this.searchMode ? this.loadOptions(SearchMode.ADVANCED) : this.showOptions();
549
+ }
550
+ buildNumberArgument(argument) {
551
+ if (this.isTextSearch) {
552
+ return NaN;
553
+ }
554
+ return Number(argument || undefined);
555
+ }
556
+ onTextInputChangeHandler(event) {
557
+ var _a;
558
+ this.clearDeboucingTimeout();
559
+ if (this._startLoading) {
560
+ this._changeDeboucingTimeout = window.setTimeout(() => {
561
+ this.onTextInputChangeHandler(event);
562
+ }, this._deboucingTime);
563
+ return;
564
+ }
565
+ const argument = (_a = event.target.value) === null || _a === void 0 ? void 0 : _a.trim();
566
+ const argumentNumber = this.buildNumberArgument(argument);
567
+ if (!this._criteria) {
568
+ this._textInput.value = event.data || argument;
569
+ }
570
+ this._criteria = argument;
571
+ if (argument) {
572
+ if (this.searchMode) {
573
+ this._showLoading = false;
574
+ this.clearSource();
575
+ if (!isNaN(argumentNumber) || argument.length >= this._limitCharsToSearch) {
576
+ this._showLoading = true;
577
+ this._changeDeboucingTimeout = window.setTimeout(() => {
578
+ this.loadOptions(SearchMode.PREDICTIVE, isNaN(argumentNumber) ? argument : argumentNumber.toString());
579
+ }, this._deboucingTime);
580
+ this.showOptions();
581
+ }
582
+ else {
583
+ this.hideOptions();
584
+ }
585
+ }
586
+ else {
587
+ this.updateVisibleOptions();
588
+ this.showOptions();
589
+ }
590
+ }
591
+ else {
592
+ this.hideOptions();
593
+ if (this.searchMode) {
594
+ this._showLoading = false;
595
+ this.clearSource();
596
+ }
597
+ else {
598
+ this.updateVisibleOptions();
599
+ }
600
+ }
601
+ }
602
+ clearDeboucingTimeout() {
603
+ if (this._changeDeboucingTimeout) {
604
+ window.clearTimeout(this._changeDeboucingTimeout);
605
+ this._changeDeboucingTimeout = null;
606
+ }
607
+ }
608
+ onTextInputClickHandler() {
609
+ if (!this.searchMode) {
610
+ this.showOptions();
611
+ }
612
+ }
613
+ keyDownHandler(event) {
614
+ this._tabPressed = false;
615
+ if (event.ctrlKey) {
616
+ if (event.key === "f" || event.key === "F") {
617
+ this.loadOptions(SearchMode.ADVANCED);
618
+ //ATENÇÃO: Ctrl + F tem ação específica nos browsers
619
+ //nesse caso, como vamos abrir o popup de busca avançada,
620
+ //não é interessante deixar o evento propagar;
621
+ event.stopPropagation();
622
+ event.stopImmediatePropagation();
623
+ event.preventDefault();
624
+ }
625
+ }
626
+ switch (event.key) {
627
+ case "ArrowDown":
628
+ this.nextOption();
629
+ event.stopPropagation();
630
+ break;
631
+ case "ArrowUp":
632
+ this.previousOption();
633
+ event.stopPropagation();
634
+ break;
635
+ case "Enter":
636
+ this.selectCurrentOption();
637
+ break;
638
+ case "Escape":
639
+ this.cancelPreselection();
640
+ break;
641
+ case "Tab":
642
+ this._tabPressed = true;
643
+ this.controlListWithOnlyOne();
644
+ break;
645
+ }
646
+ //ATENÇÃO: Existe a necessidade de propagar o evento de teclado.
647
+ //Por exemplo, quando o usuário dá um Enter, além de selecionar
648
+ //um valor, também significa que a ateração finalizou,
649
+ //e o contexto pode reagir (fechar um popup por exemplo).
650
+ //event.stopPropagation();
651
+ }
652
+ onTextInputFocusOutHandler() {
653
+ if (this.hideErrorOnFocusOut)
654
+ this.cancelPreselection();
655
+ }
656
+ canShowListOptions() {
657
+ return !this._showLoading && this._visibleOptions.length > 0;
658
+ }
659
+ render() {
660
+ var _a;
661
+ ElementIDUtils.addIDInfoIfNotExists(this.el, 'input');
662
+ return (h(Host, null, h("ez-text-input", { "data-element-id": ElementIDUtils.getInternalIDInfo("textInput"), class: this.suppressSearch ? "suppressed-search-input" : "", ref: elem => this._textInput = elem, "data-slave-mode": "true", enabled: this.enabled && !this.suppressSearch, onInput: event => this.onTextInputChangeHandler(event), onClick: () => this.onTextInputClickHandler(), onFocusout: () => this.onTextInputFocusOutHandler(), onKeyDown: event => this.keyDownHandler(event), label: this.label, canShowError: this.canShowError, errorMessage: this.errorMessage, mode: this.mode }, h("button", { class: "btn", slot: this.searchMode ? "leftIcon" : "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.handlerIconClick() }, h("ez-icon", { iconName: this.searchMode ? "search" : "chevron-down" })), this.searchMode && ((_a = this._textInput) === null || _a === void 0 ? void 0 : _a.value) && (this._criteria || this.value)
663
+ ? h("button", { class: "btn btn__close", slot: "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.clearSearch() }, h("ez-icon", { iconName: "close" }))
664
+ : undefined), h("section", { class: "list-container", ref: elem => this._listContainer = elem }, h("div", { class: "list-wrapper", ref: elem => this._listWrapper = elem }, h("ul", { class: "list-options", ref: elem => this._optionsList = elem }, !this._showLoading
665
+ && this._visibleOptions.length === 0
666
+ && h("div", { class: "message" }, h("span", { class: "message__no-result" }, this._textEmptyList)), this._showLoading
667
+ && h("div", { class: "message" }, h("div", { class: "message__loading" })), this.showOptionValue
668
+ ? h("span", { class: "item__value item__value--hidden", ref: elem => this._itemValueBasis = elem })
669
+ : undefined, this.canShowListOptions() && this._visibleOptions.map((opt, index) => this.buildItem(opt, index)))))));
670
+ }
671
+ get el() { return getElement(this); }
672
+ static get watchers() { return {
673
+ "errorMessage": ["observeErrorMessage"],
674
+ "value": ["observeValue"],
675
+ "options": ["observeOptions"]
676
+ }; }
677
+ };
678
+ var SearchMode;
679
+ (function (SearchMode) {
680
+ SearchMode["ADVANCED"] = "ADVANCED";
681
+ SearchMode["PRELOAD"] = "PRELOAD";
682
+ SearchMode["PREDICTIVE"] = "PREDICTIVE";
683
+ })(SearchMode || (SearchMode = {}));
684
+ EzComboBox.style = ezComboBoxCss;
685
+
686
+ export { EzComboBox as ez_combo_box };