@sankhyalabs/ezui 5.20.4 → 5.21.0-dev.10

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 (271) 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 +123 -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 +3 -3
  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 +2 -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 +48 -16
  22. package/dist/cjs/ez-form.cjs.entry.js +29 -3
  23. package/dist/cjs/ez-grid.cjs.entry.js +216 -72
  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 +19 -3
  29. package/dist/cjs/ez-modal.cjs.entry.js +8 -9
  30. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +1 -1
  31. package/dist/cjs/ez-number-input.cjs.entry.js +10 -3
  32. package/dist/cjs/ez-popover.cjs.entry.js +1 -1
  33. package/dist/cjs/ez-popup.cjs.entry.js +21 -8
  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 +625 -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 +129 -48
  56. package/dist/collection/components/ez-button/ez-button.css +7 -0
  57. package/dist/collection/components/ez-button/ez-button.js +1 -1
  58. package/dist/collection/components/ez-card-item/ez-card-item.css +52 -3
  59. package/dist/collection/components/ez-card-item/ez-card-item.js +22 -3
  60. package/dist/collection/components/ez-check/ez-check.css +1 -0
  61. package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.css +1 -0
  62. package/dist/collection/components/ez-combo-box/ez-combo-box.js +19 -179
  63. package/dist/collection/components/ez-dropdown/ez-dropdown.js +32 -3
  64. package/dist/collection/components/ez-form/ez-form.js +76 -2
  65. package/dist/collection/components/ez-form-view/ez-form-view.css +17 -1
  66. package/dist/collection/components/ez-form-view/ez-form-view.js +60 -5
  67. package/dist/collection/components/ez-form-view/fieldbuilder/templates/CheckBox.tpl.js +1 -1
  68. package/dist/collection/components/ez-form-view/fieldbuilder/templates/ComboBox.tpl.js +1 -1
  69. package/dist/collection/components/ez-form-view/fieldbuilder/templates/DateInput.tpl.js +3 -3
  70. package/dist/collection/components/ez-form-view/fieldbuilder/templates/FileInput.tpl.js +4 -2
  71. package/dist/collection/components/ez-form-view/fieldbuilder/templates/NumberInput.tpl.js +1 -1
  72. package/dist/collection/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.js +1 -1
  73. package/dist/collection/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.js +1 -1
  74. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +26 -13
  75. package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +3 -4
  76. package/dist/collection/components/ez-grid/controller/ag-grid/DataSourceInterceptor.js +21 -0
  77. package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.js +1 -3
  78. package/dist/collection/components/ez-grid/ez-grid.css +25 -1
  79. package/dist/collection/components/ez-grid/ez-grid.js +228 -35
  80. package/dist/collection/components/ez-grid/interfaces/ICustomFormatter.js +1 -0
  81. package/dist/collection/components/ez-grid/interfaces/index.js +1 -0
  82. package/dist/collection/components/ez-grid/subcomponents/filter-column.js +16 -5
  83. package/dist/collection/components/ez-grid/subcomponents/selection-counter.js +3 -11
  84. package/dist/collection/components/ez-grid/subcomponents/utils/selectionCounterUtils.js +24 -0
  85. package/dist/collection/components/ez-grid/test/resources/gridDataUnit.js +19 -0
  86. package/dist/collection/components/ez-icon/ez-icon.css +119 -117
  87. package/dist/collection/components/ez-modal/ez-modal.js +22 -9
  88. package/dist/collection/components/ez-modal-container/ez-modal-container.css +4 -0
  89. package/dist/collection/components/ez-modal-container/ez-modal-container.js +26 -1
  90. package/dist/collection/components/ez-number-input/ez-number-input.js +11 -0
  91. package/dist/collection/components/ez-popup/ez-popup.css +2 -5
  92. package/dist/collection/components/ez-popup/ez-popup.js +35 -8
  93. package/dist/collection/components/ez-search/ez-search.css +331 -0
  94. package/dist/collection/components/ez-search/ez-search.js +701 -55
  95. package/dist/collection/components/ez-split-button/ez-split-button.css +229 -0
  96. package/dist/collection/components/ez-split-button/ez-split-button.js +455 -0
  97. package/dist/collection/components/ez-split-button/test/dropdownItems.js +42 -0
  98. package/dist/collection/components/ez-split-panel/ez-split-panel.css +6 -7
  99. package/dist/collection/components/ez-split-panel/ez-split-panel.js +103 -15
  100. package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.css +59 -12
  101. package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.js +82 -2
  102. package/dist/collection/components/ez-tree/ez-tree.css +26 -0
  103. package/dist/collection/components/ez-tree/interfaces/ITreeItemBadge.js +1 -0
  104. package/dist/collection/components/ez-tree/subcomponents/TreeItem.js +15 -2
  105. package/dist/collection/utils/CSSVarsUtils.js +13 -0
  106. package/dist/collection/utils/form/test/DataBinder.test.js +9 -0
  107. package/dist/custom-elements/index.d.ts +6 -0
  108. package/dist/custom-elements/index.js +1427 -397
  109. package/dist/esm/{CSSVarsUtils-a97cfa29.js → CSSVarsUtils-71ce76be.js} +13 -0
  110. package/dist/esm/ez-actions-button.entry.js +2 -2
  111. package/dist/esm/ez-alert-list.entry.js +123 -49
  112. package/dist/esm/ez-alert.entry.js +1 -1
  113. package/dist/esm/ez-application.entry.js +1 -1
  114. package/dist/esm/ez-badge.entry.js +1 -1
  115. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  116. package/dist/esm/ez-button.entry.js +3 -3
  117. package/dist/esm/ez-calendar.entry.js +1 -1
  118. package/dist/esm/ez-card-item_3.entry.js +177 -0
  119. package/dist/esm/ez-check.entry.js +2 -2
  120. package/dist/esm/ez-chip.entry.js +1 -1
  121. package/dist/esm/ez-collapsible-box.entry.js +1 -1
  122. package/dist/esm/ez-combo-box.entry.js +21 -164
  123. package/dist/esm/ez-date-input.entry.js +2 -2
  124. package/dist/esm/ez-date-time-input.entry.js +2 -2
  125. package/dist/esm/ez-dialog.entry.js +1 -1
  126. package/dist/esm/ez-dropdown.entry.js +10 -4
  127. package/dist/esm/ez-file-item.entry.js +1 -1
  128. package/dist/esm/ez-form-view.entry.js +48 -16
  129. package/dist/esm/ez-form.entry.js +29 -3
  130. package/dist/esm/ez-grid.entry.js +217 -73
  131. package/dist/esm/ez-guide-navigator.entry.js +1 -1
  132. package/dist/esm/ez-icon.entry.js +2 -2
  133. package/dist/esm/ez-list.entry.js +1 -1
  134. package/dist/esm/ez-loading-bar.entry.js +1 -1
  135. package/dist/esm/ez-modal-container.entry.js +19 -3
  136. package/dist/esm/ez-modal.entry.js +9 -10
  137. package/dist/esm/ez-multi-selection-list.entry.js +1 -1
  138. package/dist/esm/ez-number-input.entry.js +10 -3
  139. package/dist/esm/ez-popover.entry.js +1 -1
  140. package/dist/esm/ez-popup.entry.js +22 -9
  141. package/dist/esm/ez-radio-button.entry.js +1 -1
  142. package/dist/esm/ez-scroller_3.entry.js +19 -5
  143. package/dist/esm/ez-search.entry.js +626 -34
  144. package/dist/esm/ez-skeleton.entry.js +1 -1
  145. package/dist/esm/ez-split-button.entry.js +162 -0
  146. package/dist/esm/ez-split-item.entry.js +21 -3
  147. package/dist/esm/ez-split-panel.entry.js +68 -14
  148. package/dist/esm/ez-tabselector.entry.js +1 -1
  149. package/dist/esm/ez-text-area.entry.js +1 -1
  150. package/dist/esm/ez-text-edit.entry.js +1 -1
  151. package/dist/esm/ez-text-input.entry.js +1 -1
  152. package/dist/esm/ez-time-input.entry.js +2 -2
  153. package/dist/esm/ez-toast.entry.js +1 -1
  154. package/dist/esm/ez-upload.entry.js +1 -1
  155. package/dist/esm/ez-view-stack.entry.js +1 -1
  156. package/dist/esm/ezui.js +3 -3
  157. package/dist/esm/filter-column.entry.js +17 -6
  158. package/dist/esm/{index-296b8458.js → index-baa5e267.js} +12 -10
  159. package/dist/esm/loader.js +3 -3
  160. package/dist/ezui/ezui.esm.js +1 -1
  161. package/dist/ezui/{p-5cef0264.entry.js → p-0306dff7.entry.js} +1 -1
  162. package/dist/ezui/{p-871c1a07.entry.js → p-0447d17c.entry.js} +1 -1
  163. package/dist/ezui/p-072e6347.entry.js +1 -0
  164. package/dist/ezui/p-09de35a2.entry.js +1 -0
  165. package/dist/ezui/p-13d2fe2d.entry.js +1 -0
  166. package/dist/ezui/{p-f4208819.entry.js → p-17be134a.entry.js} +1 -1
  167. package/dist/ezui/{p-545b5b2f.entry.js → p-1db718ab.entry.js} +2 -2
  168. package/dist/ezui/{p-cd19a6f8.entry.js → p-1e7a8633.entry.js} +1 -1
  169. package/dist/ezui/{p-60ba28ea.entry.js → p-1f50fa05.entry.js} +1 -1
  170. package/dist/ezui/{p-245a44ed.entry.js → p-20ec22c0.entry.js} +1 -1
  171. package/dist/ezui/{p-e318d280.js → p-23a36bb6.js} +1 -1
  172. package/dist/ezui/p-30775e7f.entry.js +1 -0
  173. package/dist/ezui/{p-8252d9b5.entry.js → p-3a21618b.entry.js} +1 -1
  174. package/dist/ezui/p-3faa2b46.entry.js +1 -0
  175. package/dist/ezui/{p-9b347f04.entry.js → p-44caad9a.entry.js} +1 -1
  176. package/dist/ezui/{p-7319c253.entry.js → p-49456b34.entry.js} +1 -1
  177. package/dist/ezui/{p-ccb4ccd9.entry.js → p-555c9018.entry.js} +1 -1
  178. package/dist/ezui/{p-52dd8b4c.entry.js → p-5bd5e68f.entry.js} +1 -1
  179. package/dist/ezui/{p-7525e604.entry.js → p-5ed81457.entry.js} +1 -1
  180. package/dist/ezui/p-637f69f2.entry.js +1 -0
  181. package/dist/ezui/{p-c49dbf23.entry.js → p-650e4b6d.entry.js} +1 -1
  182. package/dist/ezui/{p-f55d75e7.entry.js → p-6e429cff.entry.js} +1 -1
  183. package/dist/ezui/{p-0b902469.entry.js → p-77a4bd35.entry.js} +1 -1
  184. package/dist/ezui/{p-81cd05c8.entry.js → p-784fe207.entry.js} +1 -1
  185. package/dist/ezui/p-7af81663.entry.js +1 -0
  186. package/dist/ezui/p-7bc07c31.entry.js +1 -0
  187. package/dist/ezui/p-7c770f14.entry.js +1 -0
  188. package/dist/ezui/p-836cdfdf.entry.js +1 -0
  189. package/dist/ezui/{p-5d6f2550.entry.js → p-85c8baae.entry.js} +1 -1
  190. package/dist/ezui/{p-d3b5228e.entry.js → p-8defa6d3.entry.js} +1 -1
  191. package/dist/ezui/{p-fbca293f.entry.js → p-8df1ca33.entry.js} +1 -1
  192. package/dist/ezui/{p-391de0e4.entry.js → p-9050d2cd.entry.js} +1 -1
  193. package/dist/ezui/p-91f626d3.entry.js +1 -0
  194. package/dist/ezui/{p-3e7cc8a4.entry.js → p-99ead599.entry.js} +1 -1
  195. package/dist/ezui/p-99f46950.entry.js +1 -0
  196. package/dist/ezui/{p-7eb3e1a5.js → p-9e11fc7b.js} +1 -1
  197. package/dist/ezui/{p-b11f035c.entry.js → p-9f5fa3f9.entry.js} +1 -1
  198. package/dist/ezui/{p-2da09f70.entry.js → p-a80b1287.entry.js} +1 -1
  199. package/dist/ezui/{p-d20ed286.entry.js → p-af2ecb1b.entry.js} +1 -1
  200. package/dist/ezui/{p-e8f88361.entry.js → p-af95cd16.entry.js} +1 -1
  201. package/dist/ezui/p-bae3d0aa.entry.js +1 -0
  202. package/dist/ezui/{p-fb21d72f.entry.js → p-bae4e180.entry.js} +1 -1
  203. package/dist/ezui/p-baf80b13.entry.js +1 -0
  204. package/dist/ezui/p-bc2f844e.entry.js +1 -0
  205. package/dist/ezui/p-bf79aaa1.entry.js +1 -0
  206. package/dist/ezui/{p-83885b21.entry.js → p-cc2dc4f4.entry.js} +1 -1
  207. package/dist/ezui/p-d9401ea0.entry.js +1 -0
  208. package/dist/ezui/{p-028f264f.entry.js → p-e85c48d7.entry.js} +1 -1
  209. package/dist/ezui/p-f3c526cc.entry.js +1 -0
  210. package/dist/types/components/ez-alert-list/ez-alert-list.d.ts +38 -4
  211. package/dist/types/components/ez-card-item/ez-card-item.d.ts +4 -0
  212. package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +1 -15
  213. package/dist/types/components/ez-dropdown/ez-dropdown.d.ts +5 -0
  214. package/dist/types/components/ez-form/ez-form.d.ts +12 -0
  215. package/dist/types/components/ez-form-view/ez-form-view.d.ts +7 -0
  216. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +10 -0
  217. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +4 -0
  218. package/dist/types/components/ez-grid/controller/ag-grid/DataSourceInterceptor.d.ts +8 -0
  219. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.d.ts +1 -1
  220. package/dist/types/components/ez-grid/ez-grid.d.ts +35 -3
  221. package/dist/types/components/ez-grid/interfaces/ICustomFormatter.d.ts +5 -0
  222. package/dist/types/components/ez-grid/interfaces/index.d.ts +1 -0
  223. package/dist/types/components/ez-grid/subcomponents/filter-column.d.ts +4 -1
  224. package/dist/types/components/ez-grid/subcomponents/utils/selectionCounterUtils.d.ts +4 -0
  225. package/dist/types/components/ez-grid/test/resources/gridDataUnit.d.ts +2 -0
  226. package/dist/types/components/ez-guide-navigator/interfaces/IGuideItem.d.ts +0 -1
  227. package/dist/types/components/ez-modal/ez-modal.d.ts +9 -1
  228. package/dist/types/components/ez-modal-container/ez-modal-container.d.ts +4 -0
  229. package/dist/types/components/ez-number-input/ez-number-input.d.ts +1 -0
  230. package/dist/types/components/ez-popup/ez-popup.d.ts +9 -3
  231. package/dist/types/components/ez-search/ez-search.d.ts +101 -10
  232. package/dist/types/components/ez-split-button/ez-split-button.d.ts +92 -0
  233. package/dist/types/components/ez-split-button/test/dropdownItems.d.ts +2 -0
  234. package/dist/types/components/ez-split-panel/ez-split-panel.d.ts +29 -0
  235. package/dist/types/components/ez-split-panel/structure/item/ez-split-item.d.ts +27 -0
  236. package/dist/types/components/ez-tree/interfaces/ITreeItem.d.ts +3 -1
  237. package/dist/types/components/ez-tree/interfaces/ITreeItemBadge.d.ts +6 -0
  238. package/dist/types/components/ez-tree/subcomponents/TreeItem.d.ts +0 -1
  239. package/dist/types/components.d.ts +225 -16
  240. package/dist/types/utils/CSSVarsUtils.d.ts +1 -0
  241. package/dist/types/utils/form/test/DataBinder.test.d.ts +1 -0
  242. package/dist/types/utils/interfaces/AbstractFieldMetadata.d.ts +2 -1
  243. package/dist/types/utils/interfaces/IAction.d.ts +1 -1
  244. package/package.json +13 -5
  245. package/react/components.d.ts +1 -0
  246. package/react/components.js +1 -0
  247. package/react/components.js.map +1 -1
  248. package/dist/cjs/ez-card-item.cjs.entry.js +0 -52
  249. package/dist/cjs/ez-filter-input_2.cjs.entry.js +0 -137
  250. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridUtils.js +0 -8
  251. package/dist/esm/ez-card-item.entry.js +0 -48
  252. package/dist/esm/ez-filter-input_2.entry.js +0 -132
  253. package/dist/ezui/p-12526044.entry.js +0 -1
  254. package/dist/ezui/p-32b4163f.entry.js +0 -1
  255. package/dist/ezui/p-47afb974.entry.js +0 -1
  256. package/dist/ezui/p-59bcb27c.entry.js +0 -1
  257. package/dist/ezui/p-62304715.entry.js +0 -1
  258. package/dist/ezui/p-74049254.entry.js +0 -1
  259. package/dist/ezui/p-76d16a24.entry.js +0 -1
  260. package/dist/ezui/p-7fd54841.entry.js +0 -1
  261. package/dist/ezui/p-87e85160.entry.js +0 -1
  262. package/dist/ezui/p-95426f93.entry.js +0 -1
  263. package/dist/ezui/p-99692afa.entry.js +0 -1
  264. package/dist/ezui/p-a01068e1.entry.js +0 -1
  265. package/dist/ezui/p-a42fe2ce.entry.js +0 -1
  266. package/dist/ezui/p-af285e68.entry.js +0 -1
  267. package/dist/ezui/p-b6867f19.entry.js +0 -1
  268. package/dist/ezui/p-d51aa09b.entry.js +0 -1
  269. package/dist/ezui/p-d81917fd.entry.js +0 -1
  270. package/dist/ezui/p-f8653522.entry.js +0 -1
  271. package/dist/types/components/ez-grid/controller/ag-grid/AgGridUtils.d.ts +0 -1
@@ -54,6 +54,7 @@ svg {
54
54
  -moz-osx-font-smoothing: grayscale;
55
55
  }
56
56
 
57
+
57
58
  .ez-icon-2chevron-down:before { content: "\ea01"; }
58
59
  .ez-icon-2chevron-up:before { content: "\ea02"; }
59
60
  .ez-icon-acao:before { content: "\ea03"; }
@@ -64,7 +65,7 @@ svg {
64
65
  .ez-icon-alert-mail:before { content: "\ea08"; }
65
66
  .ez-icon-alert-popup:before { content: "\ea09"; }
66
67
  .ez-icon-anexo:before { content: "\ea0a"; }
67
- .ez-icon-antecipação:before { content: "\ea0b"; }
68
+ .ez-icon-antecipacao:before { content: "\ea0b"; }
68
69
  .ez-icon-apps:before { content: "\ea0c"; }
69
70
  .ez-icon-arrow-forward:before { content: "\ea0d"; }
70
71
  .ez-icon-arrow-upward:before { content: "\ea0e"; }
@@ -91,122 +92,123 @@ svg {
91
92
  .ez-icon-circle:before { content: "\ea23"; }
92
93
  .ez-icon-cleaning:before { content: "\ea24"; }
93
94
  .ez-icon-clipboard:before { content: "\ea25"; }
94
- .ez-icon-close:before { content: "\ea26"; }
95
- .ez-icon-cobrar:before { content: "\ea27"; }
96
- .ez-icon-code:before { content: "\ea28"; }
97
- .ez-icon-configuration:before { content: "\ea29"; }
98
- .ez-icon-content-cut:before { content: "\ea2a"; }
99
- .ez-icon-copy:before { content: "\ea2b"; }
100
- .ez-icon-credit_card:before { content: "\ea2c"; }
101
- .ez-icon-crop:before { content: "\ea2d"; }
102
- .ez-icon-custom:before { content: "\ea2e"; }
103
- .ez-icon-delete-file:before { content: "\ea2f"; }
104
- .ez-icon-delete:before { content: "\ea30"; }
105
- .ez-icon-description:before { content: "\ea31"; }
106
- .ez-icon-dividir:before { content: "\ea32"; }
107
- .ez-icon-docx:before { content: "\ea33"; }
108
- .ez-icon-dot-notification:before { content: "\ea34"; }
109
- .ez-icon-dots-horizontal:before { content: "\ea35"; }
110
- .ez-icon-dots-vertical:before { content: "\ea36"; }
111
- .ez-icon-drag-indicator:before { content: "\ea37"; }
112
- .ez-icon-dual-chevron-down:before { content: "\ea38"; }
113
- .ez-icon-dual-chevron-left:before { content: "\ea39"; }
114
- .ez-icon-dual-chevron-right:before { content: "\ea3a"; }
115
- .ez-icon-dual-chevron-up:before { content: "\ea3b"; }
116
- .ez-icon-edit-file:before { content: "\ea3c"; }
117
- .ez-icon-edit-table:before { content: "\ea3d"; }
118
- .ez-icon-edit-time:before { content: "\ea3e"; }
119
- .ez-icon-edit-value:before { content: "\ea3f"; }
120
- .ez-icon-edit:before { content: "\ea40"; }
121
- .ez-icon-email:before { content: "\ea41"; }
122
- .ez-icon-estorno:before { content: "\ea42"; }
123
- .ez-icon-exe:before { content: "\ea43"; }
124
- .ez-icon-expand:before { content: "\ea44"; }
125
- .ez-icon-expandir_card:before { content: "\ea45"; }
126
- .ez-icon-extrato:before { content: "\ea46"; }
127
- .ez-icon-eye-off:before { content: "\ea47"; }
128
- .ez-icon-eye:before { content: "\ea48"; }
129
- .ez-icon-favorite:before { content: "\ea49"; }
130
- .ez-icon-figma:before { content: "\ea4a"; }
131
- .ez-icon-file-download:before { content: "\ea4b"; }
132
- .ez-icon-file-upload:before { content: "\ea4c"; }
133
- .ez-icon-filter:before { content: "\ea4d"; }
134
- .ez-icon-find-file:before { content: "\ea4e"; }
135
- .ez-icon-find-page:before { content: "\ea4f"; }
136
- .ez-icon-format-color-fill:before { content: "\ea50"; }
137
- .ez-icon-generic:before { content: "\ea51"; }
138
- .ez-icon-gif:before { content: "\ea52"; }
139
- .ez-icon-graph_bar:before { content: "\ea53"; }
140
- .ez-icon-handshake:before { content: "\ea54"; }
141
- .ez-icon-help-inverted:before { content: "\ea55"; }
142
- .ez-icon-help:before { content: "\ea56"; }
143
- .ez-icon-hide_menu:before { content: "\ea57"; }
144
- .ez-icon-home:before { content: "\ea58"; }
145
- .ez-icon-icons104:before { content: "\ea59"; }
146
- .ez-icon-language:before { content: "\ea5a"; }
147
- .ez-icon-launch:before { content: "\ea5b"; }
148
- .ez-icon-lightbulb:before { content: "\ea5c"; }
149
- .ez-icon-list:before { content: "\ea5d"; }
150
- .ez-icon-location:before { content: "\ea5e"; }
151
- .ez-icon-lock-outline:before { content: "\ea5f"; }
152
- .ez-icon-lock:before { content: "\ea60"; }
153
- .ez-icon-menu:before { content: "\ea61"; }
154
- .ez-icon-mid:before { content: "\ea62"; }
155
- .ez-icon-minus:before { content: "\ea63"; }
156
- .ez-icon-money-off:before { content: "\ea64"; }
157
- .ez-icon-money:before { content: "\ea65"; }
158
- .ez-icon-more:before { content: "\ea66"; }
159
- .ez-icon-mp3:before { content: "\ea67"; }
160
- .ez-icon-mp4:before { content: "\ea68"; }
161
- .ez-icon-multiple-files:before { content: "\ea69"; }
162
- .ez-icon-north-west:before { content: "\ea6a"; }
163
- .ez-icon-number:before { content: "\ea6b"; }
164
- .ez-icon-ordem-ascendente:before { content: "\ea6c"; }
165
- .ez-icon-ordem-descendente:before { content: "\ea6d"; }
166
- .ez-icon-parcelar:before { content: "\ea6e"; }
167
- .ez-icon-pause:before { content: "\ea6f"; }
168
- .ez-icon-payments:before { content: "\ea70"; }
169
- .ez-icon-pdf:before { content: "\ea71"; }
170
- .ez-icon-play:before { content: "\ea72"; }
171
- .ez-icon-plus:before { content: "\ea73"; }
172
- .ez-icon-png:before { content: "\ea74"; }
173
- .ez-icon-power:before { content: "\ea75"; }
174
- .ez-icon-pptx:before { content: "\ea76"; }
175
- .ez-icon-preview:before { content: "\ea77"; }
176
- .ez-icon-print:before { content: "\ea78"; }
177
- .ez-icon-push-pin:before { content: "\ea79"; }
178
- .ez-icon-rateio:before { content: "\ea7a"; }
179
- .ez-icon-receipt:before { content: "\ea7b"; }
180
- .ez-icon-recolher_card:before { content: "\ea7c"; }
181
- .ez-icon-restore:before { content: "\ea7d"; }
182
- .ez-icon-return:before { content: "\ea7e"; }
183
- .ez-icon-sankhya-place:before { content: "\ea7f"; }
184
- .ez-icon-save:before { content: "\ea80"; }
185
- .ez-icon-search:before { content: "\ea81"; }
186
- .ez-icon-settings-inverted:before { content: "\ea82"; }
187
- .ez-icon-settings:before { content: "\ea83"; }
188
- .ez-icon-share:before { content: "\ea84"; }
189
- .ez-icon-shield:before { content: "\ea85"; }
190
- .ez-icon-show_menu:before { content: "\ea86"; }
191
- .ez-icon-south-east:before { content: "\ea87"; }
192
- .ez-icon-sync:before { content: "\ea88"; }
193
- .ez-icon-table:before { content: "\ea89"; }
194
- .ez-icon-tag_code:before { content: "\ea8a"; }
195
- .ez-icon-text:before { content: "\ea8b"; }
196
- .ez-icon-timeline:before { content: "\ea8c"; }
197
- .ez-icon-timer-outline:before { content: "\ea8d"; }
198
- .ez-icon-trending-up:before { content: "\ea8e"; }
199
- .ez-icon-tune:before { content: "\ea8f"; }
200
- .ez-icon-txt:before { content: "\ea90"; }
201
- .ez-icon-un-pin:before { content: "\ea91"; }
202
- .ez-icon-unfold_less:before { content: "\ea92"; }
203
- .ez-icon-unfold_more:before { content: "\ea93"; }
204
- .ez-icon-user-circle:before { content: "\ea94"; }
205
- .ez-icon-warning-outline:before { content: "\ea95"; }
206
- .ez-icon-warning_triangle:before { content: "\ea96"; }
207
- .ez-icon-whatshot:before { content: "\ea97"; }
208
- .ez-icon-xlsx:before { content: "\ea98"; }
209
- .ez-icon-zip:before { content: "\ea99"; }
95
+ .ez-icon-clock-rotate-left:before { content: "\ea26"; }
96
+ .ez-icon-close:before { content: "\ea27"; }
97
+ .ez-icon-cobrar:before { content: "\ea28"; }
98
+ .ez-icon-code:before { content: "\ea29"; }
99
+ .ez-icon-configuration:before { content: "\ea2a"; }
100
+ .ez-icon-content-cut:before { content: "\ea2b"; }
101
+ .ez-icon-copy:before { content: "\ea2c"; }
102
+ .ez-icon-credit_card:before { content: "\ea2d"; }
103
+ .ez-icon-crop:before { content: "\ea2e"; }
104
+ .ez-icon-custom:before { content: "\ea2f"; }
105
+ .ez-icon-delete-file:before { content: "\ea30"; }
106
+ .ez-icon-delete:before { content: "\ea31"; }
107
+ .ez-icon-description:before { content: "\ea32"; }
108
+ .ez-icon-dividir:before { content: "\ea33"; }
109
+ .ez-icon-docx:before { content: "\ea34"; }
110
+ .ez-icon-dot-notification:before { content: "\ea35"; }
111
+ .ez-icon-dots-horizontal:before { content: "\ea36"; }
112
+ .ez-icon-dots-vertical:before { content: "\ea37"; }
113
+ .ez-icon-drag-indicator:before { content: "\ea38"; }
114
+ .ez-icon-dual-chevron-down:before { content: "\ea39"; }
115
+ .ez-icon-dual-chevron-left:before { content: "\ea3a"; }
116
+ .ez-icon-dual-chevron-right:before { content: "\ea3b"; }
117
+ .ez-icon-dual-chevron-up:before { content: "\ea3c"; }
118
+ .ez-icon-edit-file:before { content: "\ea3d"; }
119
+ .ez-icon-edit-table:before { content: "\ea3e"; }
120
+ .ez-icon-edit-time:before { content: "\ea3f"; }
121
+ .ez-icon-edit-value:before { content: "\ea40"; }
122
+ .ez-icon-edit:before { content: "\ea41"; }
123
+ .ez-icon-email:before { content: "\ea42"; }
124
+ .ez-icon-estorno:before { content: "\ea43"; }
125
+ .ez-icon-exe:before { content: "\ea44"; }
126
+ .ez-icon-expand:before { content: "\ea45"; }
127
+ .ez-icon-expandir_card:before { content: "\ea46"; }
128
+ .ez-icon-extrato:before { content: "\ea47"; }
129
+ .ez-icon-eye-off:before { content: "\ea48"; }
130
+ .ez-icon-eye:before { content: "\ea49"; }
131
+ .ez-icon-favorite:before { content: "\ea4a"; }
132
+ .ez-icon-figma:before { content: "\ea4b"; }
133
+ .ez-icon-file-download:before { content: "\ea4c"; }
134
+ .ez-icon-file-upload:before { content: "\ea4d"; }
135
+ .ez-icon-filter:before { content: "\ea4e"; }
136
+ .ez-icon-find-file:before { content: "\ea4f"; }
137
+ .ez-icon-find-page:before { content: "\ea50"; }
138
+ .ez-icon-format-color-fill:before { content: "\ea51"; }
139
+ .ez-icon-generic:before { content: "\ea52"; }
140
+ .ez-icon-gif:before { content: "\ea53"; }
141
+ .ez-icon-graph_bar:before { content: "\ea54"; }
142
+ .ez-icon-handshake:before { content: "\ea55"; }
143
+ .ez-icon-help-inverted:before { content: "\ea56"; }
144
+ .ez-icon-help:before { content: "\ea57"; }
145
+ .ez-icon-hide_menu:before { content: "\ea58"; }
146
+ .ez-icon-home:before { content: "\ea59"; }
147
+ .ez-icon-icons104:before { content: "\ea5a"; }
148
+ .ez-icon-language:before { content: "\ea5b"; }
149
+ .ez-icon-launch:before { content: "\ea5c"; }
150
+ .ez-icon-lightbulb:before { content: "\ea5d"; }
151
+ .ez-icon-list:before { content: "\ea5e"; }
152
+ .ez-icon-location:before { content: "\ea5f"; }
153
+ .ez-icon-lock-outline:before { content: "\ea60"; }
154
+ .ez-icon-lock:before { content: "\ea61"; }
155
+ .ez-icon-menu:before { content: "\ea62"; }
156
+ .ez-icon-mid:before { content: "\ea63"; }
157
+ .ez-icon-minus:before { content: "\ea64"; }
158
+ .ez-icon-money-off:before { content: "\ea65"; }
159
+ .ez-icon-money:before { content: "\ea66"; }
160
+ .ez-icon-more:before { content: "\ea67"; }
161
+ .ez-icon-mp3:before { content: "\ea68"; }
162
+ .ez-icon-mp4:before { content: "\ea69"; }
163
+ .ez-icon-multiple-files:before { content: "\ea6a"; }
164
+ .ez-icon-north-west:before { content: "\ea6b"; }
165
+ .ez-icon-number:before { content: "\ea6c"; }
166
+ .ez-icon-ordem-ascendente:before { content: "\ea6d"; }
167
+ .ez-icon-ordem-descendente:before { content: "\ea6e"; }
168
+ .ez-icon-parcelar:before { content: "\ea6f"; }
169
+ .ez-icon-pause:before { content: "\ea70"; }
170
+ .ez-icon-payments:before { content: "\ea71"; }
171
+ .ez-icon-pdf:before { content: "\ea72"; }
172
+ .ez-icon-play:before { content: "\ea73"; }
173
+ .ez-icon-plus:before { content: "\ea74"; }
174
+ .ez-icon-png:before { content: "\ea75"; }
175
+ .ez-icon-power:before { content: "\ea76"; }
176
+ .ez-icon-pptx:before { content: "\ea77"; }
177
+ .ez-icon-preview:before { content: "\ea78"; }
178
+ .ez-icon-print:before { content: "\ea79"; }
179
+ .ez-icon-push-pin:before { content: "\ea7a"; }
180
+ .ez-icon-rateio:before { content: "\ea7b"; }
181
+ .ez-icon-receipt:before { content: "\ea7c"; }
182
+ .ez-icon-recolher_card:before { content: "\ea7d"; }
183
+ .ez-icon-restore:before { content: "\ea7e"; }
184
+ .ez-icon-return:before { content: "\ea7f"; }
185
+ .ez-icon-sankhya-place:before { content: "\ea80"; }
186
+ .ez-icon-save:before { content: "\ea81"; }
187
+ .ez-icon-search:before { content: "\ea82"; }
188
+ .ez-icon-settings-inverted:before { content: "\ea83"; }
189
+ .ez-icon-settings:before { content: "\ea84"; }
190
+ .ez-icon-share:before { content: "\ea85"; }
191
+ .ez-icon-shield:before { content: "\ea86"; }
192
+ .ez-icon-show_menu:before { content: "\ea87"; }
193
+ .ez-icon-south-east:before { content: "\ea88"; }
194
+ .ez-icon-sync:before { content: "\ea89"; }
195
+ .ez-icon-table:before { content: "\ea8a"; }
196
+ .ez-icon-tag_code:before { content: "\ea8b"; }
197
+ .ez-icon-text:before { content: "\ea8c"; }
198
+ .ez-icon-timeline:before { content: "\ea8d"; }
199
+ .ez-icon-timer-outline:before { content: "\ea8e"; }
200
+ .ez-icon-trending-up:before { content: "\ea8f"; }
201
+ .ez-icon-tune:before { content: "\ea90"; }
202
+ .ez-icon-txt:before { content: "\ea91"; }
203
+ .ez-icon-un-pin:before { content: "\ea92"; }
204
+ .ez-icon-unfold_less:before { content: "\ea93"; }
205
+ .ez-icon-unfold_more:before { content: "\ea94"; }
206
+ .ez-icon-user-circle:before { content: "\ea95"; }
207
+ .ez-icon-warning-outline:before { content: "\ea96"; }
208
+ .ez-icon-warning_triangle:before { content: "\ea97"; }
209
+ .ez-icon-whatshot:before { content: "\ea98"; }
210
+ .ez-icon-xlsx:before { content: "\ea99"; }
211
+ .ez-icon-zip:before { content: "\ea9a"; }
210
212
  /*
211
213
  END CSS GENERATED BY EZ-DESIGN ICONS
212
214
  */
@@ -1,12 +1,7 @@
1
1
  import { Host, h } from "@stencil/core";
2
- import { FloatingManager } from '@sankhyalabs/core';
2
+ import { FloatingManager, KeyboardManager } from '@sankhyalabs/core';
3
3
  export class EzModal {
4
4
  constructor() {
5
- this.handleKeyboardEvent = (ev) => {
6
- if ((ev === null || ev === void 0 ? void 0 : ev.key) === "Escape" && this.closeEsc) {
7
- this.closeModal();
8
- }
9
- };
10
5
  this.modalSize = undefined;
11
6
  this.align = undefined;
12
7
  this.heightMode = "regular";
@@ -18,11 +13,9 @@ export class EzModal {
18
13
  observeOpened() {
19
14
  if (this.opened) {
20
15
  this._overlayId = FloatingManager.subscribeOverlayControl(this._modalRef);
21
- document.addEventListener("keydown", this.handleKeyboardEvent);
22
16
  }
23
17
  else {
24
18
  FloatingManager.unsubscribeOverlayControl(this._modalRef || this._overlayId);
25
- document.removeEventListener("keydown", this.handleKeyboardEvent);
26
19
  }
27
20
  }
28
21
  closeModal() {
@@ -31,6 +24,10 @@ export class EzModal {
31
24
  }
32
25
  componentDidLoad() {
33
26
  this.observeOpened();
27
+ new KeyboardManager({ propagate: false, element: this._element })
28
+ .bind("Enter", this.ezModalAction.emit.bind("OK"))
29
+ .bind("Escape", () => this.closeModal())
30
+ .bind("Esc", () => this.closeModal());
34
31
  }
35
32
  componentDidRender() {
36
33
  if (this.opened) {
@@ -49,7 +46,7 @@ export class EzModal {
49
46
  const scrimType = `modal__screen-${this.scrim}`;
50
47
  return (h(Host, null, this.opened
51
48
  ?
52
- h("div", { ref: ref => this._modalRef = ref, class: `modal ${scrimType} ${regularVerticalPaddingClass}`, onMouseDown: evt => this.onMouseDownHandler(evt) }, h("div", { class: `modal__container modal__container--${positionSufix}`, ref: ref => this._overlay = ref }, h("div", { class: `modal__content ${modalContentHeightMode} ${this.modalSize}` }, h("slot", null))))
49
+ h("div", { ref: ref => this._modalRef = ref, class: `modal ${scrimType} ${regularVerticalPaddingClass}`, onMouseDown: evt => this.onMouseDownHandler(evt), tabIndex: -1 }, h("div", { class: `modal__container modal__container--${positionSufix}`, ref: ref => this._overlay = ref }, h("div", { class: `modal__content ${modalContentHeightMode} ${this.modalSize}` }, h("slot", null))))
53
50
  :
54
51
  undefined));
55
52
  }
@@ -228,8 +225,24 @@ export class EzModal {
228
225
  "resolved": "any",
229
226
  "references": {}
230
227
  }
228
+ }, {
229
+ "method": "ezModalAction",
230
+ "name": "ezModalAction",
231
+ "bubbles": true,
232
+ "cancelable": true,
233
+ "composed": true,
234
+ "docs": {
235
+ "tags": [],
236
+ "text": "Representa a intera\u00E7\u00E3o com o usu\u00E1rio.\nOK - Quando o bot\u00E3o \u00E9 acionado\nCANCEL - Quando o bot\u00E3o de cancelar \u00E9 acionado\nCLOSE - Quando o bot\u00E3o de fechar \u00E9 acionado.\nLOAD - Quando o modal \u00E9 carregado (eventualmente pode ser usado para dar foco a um elemento espec\u00EDfico)"
237
+ },
238
+ "complexType": {
239
+ "original": "string",
240
+ "resolved": "string",
241
+ "references": {}
242
+ }
231
243
  }];
232
244
  }
245
+ static get elementRef() { return "_element"; }
233
246
  static get watchers() {
234
247
  return [{
235
248
  "propName": "opened",
@@ -7,6 +7,10 @@
7
7
  height: 100%;
8
8
  }
9
9
 
10
+ .ez-modal-container__header-container{
11
+ outline: none;
12
+ }
13
+
10
14
  .ez-modal-container__header {
11
15
  display: flex;
12
16
  flex-wrap: nowrap;
@@ -1,4 +1,5 @@
1
1
  import { h, Host } from "@stencil/core";
2
+ import { KeyboardManager } from "@sankhyalabs/core";
2
3
  import ModalAction from "./modal-action";
3
4
  import ModalButtonStatus from "./modal-button-status";
4
5
  export class EzModalContainer {
@@ -11,6 +12,12 @@ export class EzModalContainer {
11
12
  this.cancelButtonStatus = undefined;
12
13
  this.okButtonStatus = undefined;
13
14
  }
15
+ async handleEzModalAction(event) {
16
+ var _a;
17
+ if ((event === null || event === void 0 ? void 0 : event.target) && (event === null || event === void 0 ? void 0 : event.target) === ((_a = this._element) === null || _a === void 0 ? void 0 : _a.parentElement)) {
18
+ this.closeModal();
19
+ }
20
+ }
14
21
  cancelIsVisible() {
15
22
  return (this.cancelButtonStatus !== ModalButtonStatus.HIDDEN && this.cancelButtonLabel != undefined);
16
23
  }
@@ -20,7 +27,15 @@ export class EzModalContainer {
20
27
  componentDidLoad() {
21
28
  window.requestAnimationFrame(() => {
22
29
  this.ezModalAction.emit(ModalAction.LOAD);
30
+ this._modalRef.focus();
23
31
  });
32
+ new KeyboardManager({ propagate: false, element: this._element })
33
+ .bind("Enter", this.ezModalAction.emit.bind(ModalAction.OK))
34
+ .bind("Escape", () => this.closeModal())
35
+ .bind("Esc", () => this.closeModal());
36
+ }
37
+ closeModal() {
38
+ this.ezModalAction.emit("CLOSE");
24
39
  }
25
40
  focusLast() {
26
41
  if (this._okButton == undefined) {
@@ -32,7 +47,7 @@ export class EzModalContainer {
32
47
  this._closeButton.focus();
33
48
  }
34
49
  render() {
35
- return (h(Host, null, h("button", { class: "ez-modal-container__focus-ctrl", onFocusin: () => this.focusLast() }), h("div", null, this.showTitleBar && (h("div", { class: "ez-modal-container__header ez-margin-bottom--large" }, h("div", { class: "ez-col ez-align--middle ez-modal-container__title" }, h("h2", { class: "ez-text ez-title--large ez-title--primary ez-text--bold ez-margin-vertical--extra-small" }, this.modalTitle), this.modalSubTitle && (h("div", { class: "ez-text ez-text--medium ez-text--primary ez-margin-vertical--extra-small" }, this.modalSubTitle))), h("button", { ref: ref => this._closeButton = ref, class: "ez-modal-container__close-button", onClick: () => this.ezModalAction.emit(ModalAction.CLOSE) }, h("ez-icon", { class: "ez-modal-container__close-icon", size: "medium", iconName: "close" }))))), h("div", { class: "ez-modal-container__content" }, h("slot", null)), h("div", { class: "ez-modal-container__footer" }, this.cancelIsVisible() && (h("ez-button", { label: this.cancelButtonLabel, enabled: this.cancelButtonStatus !== ModalButtonStatus.DISABLED, onClick: () => this.ezModalAction.emit(ModalAction.CANCEL) })), this.okIsVisible() && (h("ez-button", { ref: ref => this._okButton = ref, class: "ez-button--primary", label: this.okButtonLabel, enabled: this.okButtonStatus !== ModalButtonStatus.DISABLED, onClick: () => this.ezModalAction.emit(ModalAction.OK) }))), h("button", { class: "ez-modal-container__focus-ctrl", onFocusin: () => this.focusFirst() })));
50
+ return (h(Host, null, h("button", { class: "ez-modal-container__focus-ctrl", onFocusin: () => this.focusLast() }), h("div", { ref: ref => this._modalRef = ref, tabIndex: -1, class: "ez-modal-container__header-container" }, this.showTitleBar && (h("div", { class: "ez-modal-container__header ez-margin-bottom--large" }, h("div", { class: "ez-col ez-align--middle ez-modal-container__title" }, h("h2", { class: "ez-text ez-title--large ez-title--primary ez-text--bold ez-margin-vertical--extra-small" }, this.modalTitle), this.modalSubTitle && (h("div", { class: "ez-text ez-text--medium ez-text--primary ez-margin-vertical--extra-small" }, this.modalSubTitle))), h("button", { ref: ref => this._closeButton = ref, class: "ez-modal-container__close-button", onClick: () => this.ezModalAction.emit(ModalAction.CLOSE) }, h("ez-icon", { class: "ez-modal-container__close-icon", size: "medium", iconName: "close" }))))), h("div", { class: "ez-modal-container__content" }, h("slot", null)), h("div", { class: "ez-modal-container__footer" }, this.cancelIsVisible() && (h("ez-button", { label: this.cancelButtonLabel, enabled: this.cancelButtonStatus !== ModalButtonStatus.DISABLED, onClick: () => this.ezModalAction.emit(ModalAction.CANCEL) })), this.okIsVisible() && (h("ez-button", { ref: ref => this._okButton = ref, class: "ez-button--primary", label: this.okButtonLabel, enabled: this.okButtonStatus !== ModalButtonStatus.DISABLED, onClick: () => this.ezModalAction.emit(ModalAction.OK) }))), h("button", { class: "ez-modal-container__focus-ctrl", onFocusin: () => this.focusFirst() })));
36
51
  }
37
52
  static get is() { return "ez-modal-container"; }
38
53
  static get encapsulation() { return "scoped"; }
@@ -188,4 +203,14 @@ export class EzModalContainer {
188
203
  }
189
204
  }];
190
205
  }
206
+ static get elementRef() { return "_element"; }
207
+ static get listeners() {
208
+ return [{
209
+ "name": "ezCloseModal",
210
+ "method": "handleEzModalAction",
211
+ "target": "document",
212
+ "capture": false,
213
+ "passive": false
214
+ }];
215
+ }
191
216
  }
@@ -82,6 +82,11 @@ export class EzNumberInput {
82
82
  }
83
83
  this._changePending = false;
84
84
  }
85
+ observePrecision() {
86
+ if (this._textInput) {
87
+ this.setInputValue();
88
+ }
89
+ }
85
90
  validateValue(value) {
86
91
  return isNaN(value) || value === undefined ? null : value;
87
92
  }
@@ -455,6 +460,12 @@ export class EzNumberInput {
455
460
  }, {
456
461
  "propName": "value",
457
462
  "methodName": "observeValue"
463
+ }, {
464
+ "propName": "precision",
465
+ "methodName": "observePrecision"
466
+ }, {
467
+ "propName": "prettyPrecision",
468
+ "methodName": "observePrecision"
458
469
  }];
459
470
  }
460
471
  }
@@ -77,17 +77,14 @@
77
77
 
78
78
  .popup__content {
79
79
  box-sizing: border-box;
80
- max-height: 100%;
80
+ height: 100%;
81
81
  width: 100%;
82
- display: grid;
83
- grid-template-rows: auto 1fr;
84
82
  }
85
83
 
86
84
  .popup__expandable-content {
87
85
  box-sizing: border-box;
88
86
  width: 100%;
89
- min-height: 100%;
90
- height: 100%;
87
+ height: calc(100% - 44px);
91
88
  }
92
89
 
93
90
  .popup__header {
@@ -1,5 +1,5 @@
1
1
  import { Host, h, Fragment } from "@stencil/core";
2
- import { FloatingManager } from '@sankhyalabs/core';
2
+ import { FloatingManager, KeyboardManager } from '@sankhyalabs/core';
3
3
  export class EzPopup {
4
4
  constructor() {
5
5
  this._sizeClasses = {
@@ -19,6 +19,20 @@ export class EzPopup {
19
19
  observeConfig() {
20
20
  this.manageOverflow();
21
21
  }
22
+ componentDidLoad() {
23
+ if (this.opened && this._popupRef) {
24
+ this._popupRef.focus();
25
+ }
26
+ new KeyboardManager({ propagate: false, element: this._element })
27
+ .bind("Enter", this.ezPopupAction.emit.bind("OK"))
28
+ .bind("Escape", () => this.closePopup())
29
+ .bind("Esc", () => this.closePopup());
30
+ }
31
+ closePopup() {
32
+ this.opened = false;
33
+ this.manageOverflow();
34
+ this.ezClosePopup.emit();
35
+ }
22
36
  manageOverflow() {
23
37
  if (this.opened) {
24
38
  window.document.body.style.overflow = "hidden";
@@ -29,23 +43,20 @@ export class EzPopup {
29
43
  }
30
44
  manageOverlay() {
31
45
  if (this.opened) {
32
- this._overlayId = FloatingManager.subscribeOverlayControl(this._modalRef);
46
+ this._overlayId = FloatingManager.subscribeOverlayControl(this._popupRef);
33
47
  }
34
48
  else {
35
- FloatingManager.unsubscribeOverlayControl(this._modalRef || this._overlayId);
49
+ FloatingManager.unsubscribeOverlayControl(this._popupRef || this._overlayId);
36
50
  }
37
51
  }
38
52
  getGridSize() {
39
53
  return this._sizeClasses[this.size] || this._sizeClasses["medium"];
40
54
  }
41
55
  componentDidRender() {
42
- if (this._container) {
43
- this._container.focus();
44
- }
45
56
  this.manageOverlay();
46
57
  }
47
58
  render() {
48
- return (h(Host, null, this.opened ? (h("div", { class: "overlay", ref: ref => this._modalRef = ref }, h("div", { class: "popup col " + this.getGridSize() }, h("div", { class: "popup__container " + (this.heightMode === "auto" ? "popup__container--auto" : ""), ref: elem => this._container = elem, tabIndex: -1 }, h("div", { class: "popup__content" }, h("div", { class: "popup__header " + (this.useHeader ? "popup__header--padding" : "") }, this.useHeader &&
59
+ return (h(Host, null, this.opened ? (h("div", { class: "overlay", ref: ref => this._popupRef = ref, tabIndex: -1 }, h("div", { class: "popup col " + this.getGridSize() }, h("div", { class: "popup__container " + (this.heightMode === "auto" ? "popup__container--auto" : "") }, h("div", { class: "popup__content" }, h("div", { class: "popup__header " + (this.useHeader ? "popup__header--padding" : "") }, this.useHeader &&
49
60
  h(Fragment, null, !!this.ezTitle && h("div", { class: "popup__title" }, this.ezTitle), h("button", { class: this.ezTitle ? "btn-close" : "btn-close btn-close--solo", onClick: () => { this.opened = false; this.ezClosePopup.emit(); } }))), h("div", { class: "popup__expandable-content" }, h("slot", null))))))) : undefined));
50
61
  }
51
62
  static get is() { return "ez-popup"; }
@@ -162,15 +173,31 @@ export class EzPopup {
162
173
  "composed": true,
163
174
  "docs": {
164
175
  "tags": [],
165
- "text": "Emitido ao clicar no bot\u00E3o de fechar (onEzClosePopup)."
176
+ "text": "Evento emitido ao clicar no bot\u00E3o de fechar (onEzClosePopup)."
166
177
  },
167
178
  "complexType": {
168
179
  "original": "any",
169
180
  "resolved": "any",
170
181
  "references": {}
171
182
  }
183
+ }, {
184
+ "method": "ezPopupAction",
185
+ "name": "ezPopupAction",
186
+ "bubbles": true,
187
+ "cancelable": true,
188
+ "composed": true,
189
+ "docs": {
190
+ "tags": [],
191
+ "text": "Evento emitido ao clicar no bot\u00E3o de fechar (ezPopupAction = OK)"
192
+ },
193
+ "complexType": {
194
+ "original": "string",
195
+ "resolved": "string",
196
+ "references": {}
197
+ }
172
198
  }];
173
199
  }
200
+ static get elementRef() { return "_element"; }
174
201
  static get watchers() {
175
202
  return [{
176
203
  "propName": "opened",