@sankhyalabs/ezui 5.22.0-dev.5 → 5.22.0-dev.51

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 (247) hide show
  1. package/dist/cjs/DataBinder-3b083480.js +445 -0
  2. package/dist/cjs/FocusResolver-885f2173.js +35 -0
  3. package/dist/cjs/ez-button.cjs.entry.js +11 -5
  4. package/dist/cjs/ez-card-item_3.cjs.entry.js +21 -6
  5. package/dist/cjs/ez-chart.cjs.entry.js +1 -1
  6. package/dist/cjs/ez-check.cjs.entry.js +1 -1
  7. package/dist/cjs/ez-collapsible-box.cjs.entry.js +1 -1
  8. package/dist/cjs/ez-combo-box.cjs.entry.js +64 -11
  9. package/dist/cjs/ez-custom-form-input_2.cjs.entry.js +35 -5
  10. package/dist/cjs/ez-date-input.cjs.entry.js +12 -3
  11. package/dist/cjs/ez-date-time-input.cjs.entry.js +9 -3
  12. package/dist/cjs/ez-dialog.cjs.entry.js +10 -2
  13. package/dist/cjs/{ez-dropdown.cjs.entry.js → ez-dropdown_2.cjs.entry.js} +75 -8
  14. package/dist/cjs/ez-form-view.cjs.entry.js +5 -4
  15. package/dist/cjs/ez-form.cjs.entry.js +5 -325
  16. package/dist/cjs/ez-grid.cjs.entry.js +14701 -70252
  17. package/dist/cjs/ez-icon.cjs.entry.js +1 -1
  18. package/dist/cjs/ez-list.cjs.entry.js +6 -7
  19. package/dist/cjs/ez-modal-container.cjs.entry.js +2 -1
  20. package/dist/cjs/ez-modal.cjs.entry.js +19 -4
  21. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +1 -1
  22. package/dist/cjs/ez-number-input.cjs.entry.js +13 -1
  23. package/dist/cjs/ez-popup.cjs.entry.js +21 -2
  24. package/dist/cjs/ez-scroller_2.cjs.entry.js +3 -3
  25. package/dist/cjs/ez-search.cjs.entry.js +107 -44
  26. package/dist/cjs/ez-sidebar-navigator.cjs.entry.js +1 -1
  27. package/dist/cjs/ez-split-button.cjs.entry.js +2 -2
  28. package/dist/cjs/ez-split-item.cjs.entry.js +1 -1
  29. package/dist/cjs/ez-split-panel.cjs.entry.js +14 -4
  30. package/dist/cjs/ez-text-area.cjs.entry.js +67 -5
  31. package/dist/cjs/ez-text-input.cjs.entry.js +51 -5
  32. package/dist/cjs/ez-time-input.cjs.entry.js +6 -0
  33. package/dist/cjs/ezui.cjs.js +1 -1
  34. package/dist/cjs/index-9e5554cb.js +2 -6
  35. package/dist/cjs/loader.cjs.js +1 -1
  36. package/dist/collection/collection-manifest.json +1 -1
  37. package/dist/collection/components/ez-button/ez-button.css +23 -13
  38. package/dist/collection/components/ez-button/ez-button.js +12 -6
  39. package/dist/collection/components/ez-card-item/ez-card-item.css +60 -10
  40. package/dist/collection/components/ez-card-item/ez-card-item.js +30 -3
  41. package/dist/collection/components/ez-check/ez-check.css +1 -6
  42. package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.css +2 -2
  43. package/dist/collection/components/ez-combo-box/ez-combo-box.css +1 -1
  44. package/dist/collection/components/ez-combo-box/ez-combo-box.js +109 -13
  45. package/dist/collection/components/ez-date-input/ez-date-input.css +1 -1
  46. package/dist/collection/components/ez-date-input/ez-date-input.js +38 -4
  47. package/dist/collection/components/ez-date-time-input/ez-date-time-input.css +1 -1
  48. package/dist/collection/components/ez-date-time-input/ez-date-time-input.js +35 -4
  49. package/dist/collection/components/ez-dialog/ez-dialog.css +3 -3
  50. package/dist/collection/components/ez-dialog/ez-dialog.js +9 -1
  51. package/dist/collection/components/ez-dropdown/ez-dropdown.js +33 -8
  52. package/dist/collection/components/ez-filter-input/ez-filter-input.js +35 -4
  53. package/dist/collection/components/ez-form/ez-form.js +1 -0
  54. package/dist/collection/components/ez-form-view/custom-input/ez-custom-form-input.js +49 -6
  55. package/dist/collection/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.js +3 -2
  56. package/dist/collection/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.js +2 -2
  57. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +254 -53
  58. package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +107 -5
  59. package/dist/collection/components/ez-grid/controller/ag-grid/GridEditionManager.js +219 -42
  60. package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomCellEditor.js +16 -0
  61. package/dist/collection/components/ez-grid/controller/ag-grid/editor/EzCellEditor.js +8 -0
  62. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/ComboBox.tpl.js +2 -0
  63. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/DateInput.tpl.js +1 -0
  64. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/NumberInput.tpl.js +1 -0
  65. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/Search.tpl.js +4 -1
  66. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/TextInput.tpl.js +4 -1
  67. package/dist/collection/components/ez-grid/controller/ag-grid/test/constants/GridEditionMock.js +2 -0
  68. package/dist/collection/components/ez-grid/ez-grid.css +17 -7
  69. package/dist/collection/components/ez-grid/ez-grid.js +181 -7
  70. package/dist/collection/components/ez-icon/ez-icon.css +153 -149
  71. package/dist/collection/components/ez-list/ez-list.css +2 -1
  72. package/dist/collection/components/ez-list/ez-list.js +6 -7
  73. package/dist/collection/components/ez-modal/ez-modal.css +5 -1
  74. package/dist/collection/components/ez-modal/ez-modal.js +38 -5
  75. package/dist/collection/components/ez-modal-container/ez-modal-container.js +20 -1
  76. package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.js +1 -1
  77. package/dist/collection/components/ez-number-input/ez-number-input.js +49 -1
  78. package/dist/collection/components/ez-popup/ez-popup.css +7 -3
  79. package/dist/collection/components/ez-popup/ez-popup.js +38 -1
  80. package/dist/collection/components/ez-scroller/ez-scroller.css +1 -0
  81. package/dist/collection/components/ez-search/ez-search.css +21 -10
  82. package/dist/collection/components/ez-search/ez-search.js +173 -48
  83. package/dist/collection/components/ez-sidebar-button/ez-sidebar-button.css +3 -0
  84. package/dist/collection/components/ez-sidebar-button/ez-sidebar-button.js +1 -1
  85. package/dist/collection/components/ez-sidebar-navigator/ez-sidebar-navigator.css +3 -1
  86. package/dist/collection/components/ez-split-button/ez-split-button.css +50 -14
  87. package/dist/collection/components/ez-split-button/ez-split-button.js +3 -3
  88. package/dist/collection/components/ez-split-panel/ez-split-panel.js +35 -4
  89. package/dist/collection/components/ez-split-panel/interfaces/IPanelSizeInfo.js +1 -0
  90. package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.css +1 -0
  91. package/dist/collection/components/ez-text-area/ez-text-area.css +73 -28
  92. package/dist/collection/components/ez-text-area/ez-text-area.js +103 -3
  93. package/dist/collection/components/ez-text-input/ez-text-input.css +41 -71
  94. package/dist/collection/components/ez-text-input/ez-text-input.js +86 -4
  95. package/dist/collection/components/ez-time-input/ez-time-input.js +24 -0
  96. package/dist/collection/sw.js +46 -0
  97. package/dist/collection/utils/FocusResolver.js +31 -0
  98. package/dist/collection/utils/form/DataBinder.js +20 -5
  99. package/dist/collection/utils/form/FormMetadata.js +1 -1
  100. package/dist/collection/utils/interfaces/AbstractFieldMetadata.js +1 -1
  101. package/dist/collection/utils/validators/recordvalidator/IInvalidCells.js +1 -0
  102. package/dist/collection/utils/validators/recordvalidator/RecordValidationProcessor.js +7 -1
  103. package/dist/custom-elements/index.js +15603 -70736
  104. package/dist/esm/DataBinder-02fa9bb9.js +441 -0
  105. package/dist/esm/FocusResolver-1ccbf850.js +33 -0
  106. package/dist/esm/ez-button.entry.js +11 -5
  107. package/dist/esm/ez-card-item_3.entry.js +21 -6
  108. package/dist/esm/ez-chart.entry.js +1 -1
  109. package/dist/esm/ez-check.entry.js +1 -1
  110. package/dist/esm/ez-collapsible-box.entry.js +1 -1
  111. package/dist/esm/ez-combo-box.entry.js +65 -12
  112. package/dist/esm/ez-custom-form-input_2.entry.js +36 -6
  113. package/dist/esm/ez-date-input.entry.js +12 -3
  114. package/dist/esm/ez-date-time-input.entry.js +9 -3
  115. package/dist/esm/ez-dialog.entry.js +10 -2
  116. package/dist/esm/{ez-dropdown.entry.js → ez-dropdown_2.entry.js} +75 -9
  117. package/dist/esm/ez-form-view.entry.js +5 -4
  118. package/dist/esm/ez-form.entry.js +4 -324
  119. package/dist/esm/ez-grid.entry.js +14754 -70305
  120. package/dist/esm/ez-icon.entry.js +1 -1
  121. package/dist/esm/ez-list.entry.js +6 -7
  122. package/dist/esm/ez-modal-container.entry.js +2 -1
  123. package/dist/esm/ez-modal.entry.js +19 -4
  124. package/dist/esm/ez-multi-selection-list.entry.js +1 -1
  125. package/dist/esm/ez-number-input.entry.js +13 -1
  126. package/dist/esm/ez-popup.entry.js +21 -2
  127. package/dist/esm/ez-scroller_2.entry.js +3 -3
  128. package/dist/esm/ez-search.entry.js +107 -44
  129. package/dist/esm/ez-sidebar-navigator.entry.js +1 -1
  130. package/dist/esm/ez-split-button.entry.js +2 -2
  131. package/dist/esm/ez-split-item.entry.js +1 -1
  132. package/dist/esm/ez-split-panel.entry.js +15 -5
  133. package/dist/esm/ez-text-area.entry.js +67 -5
  134. package/dist/esm/ez-text-input.entry.js +51 -5
  135. package/dist/esm/ez-time-input.entry.js +6 -0
  136. package/dist/esm/ezui.js +1 -1
  137. package/dist/esm/index-5a720e56.js +2 -6
  138. package/dist/esm/loader.js +1 -1
  139. package/dist/ezui/ezui.esm.js +1 -1
  140. package/dist/ezui/p-16e21a40.entry.js +1 -0
  141. package/dist/ezui/p-2a7f7580.entry.js +1 -0
  142. package/dist/ezui/p-2f53435e.entry.js +1 -0
  143. package/dist/ezui/p-33675dae.entry.js +1 -0
  144. package/dist/ezui/p-397e3026.entry.js +1 -0
  145. package/dist/ezui/p-3af64edd.entry.js +1 -0
  146. package/dist/ezui/p-3c10cd94.entry.js +1 -0
  147. package/dist/ezui/p-3cc9b84a.entry.js +1 -0
  148. package/dist/ezui/p-3d38bfea.entry.js +1 -0
  149. package/dist/ezui/p-455e737c.js +1 -0
  150. package/dist/ezui/p-46a46507.entry.js +1 -0
  151. package/dist/ezui/p-554522db.entry.js +1 -0
  152. package/dist/ezui/p-6bc25bc8.entry.js +1 -0
  153. package/dist/ezui/p-6bda82d1.entry.js +1 -0
  154. package/dist/ezui/p-6d31c43c.entry.js +1 -0
  155. package/dist/ezui/p-6f0422ff.entry.js +309 -0
  156. package/dist/ezui/p-70f1c812.entry.js +1 -0
  157. package/dist/ezui/p-7f5afb1f.entry.js +1 -0
  158. package/dist/ezui/p-8f026744.entry.js +1 -0
  159. package/dist/ezui/p-a4ee2991.entry.js +1 -0
  160. package/dist/ezui/{p-82ac8b06.entry.js → p-a563df31.entry.js} +1 -1
  161. package/dist/ezui/p-a921e3e7.entry.js +1 -0
  162. package/dist/ezui/p-b858fc6e.entry.js +1 -0
  163. package/dist/ezui/p-be34c77f.entry.js +1 -0
  164. package/dist/ezui/{p-9aa27e69.entry.js → p-bef7daac.entry.js} +1 -1
  165. package/dist/ezui/p-bfc30e61.entry.js +1 -0
  166. package/dist/ezui/p-bfc59380.entry.js +1 -0
  167. package/dist/ezui/p-d960a031.entry.js +1 -0
  168. package/dist/ezui/p-dc628ed3.js +1 -0
  169. package/dist/ezui/{p-33792b2b.entry.js → p-e18d9e6a.entry.js} +1 -1
  170. package/dist/ezui/{p-31674f8e.entry.js → p-e7395eae.entry.js} +1 -1
  171. package/dist/ezui/p-efbe0b73.entry.js +1 -0
  172. package/dist/types/components/ez-button/ez-button.d.ts +2 -1
  173. package/dist/types/components/ez-card-item/ez-card-item.d.ts +5 -0
  174. package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +12 -1
  175. package/dist/types/components/ez-date-input/ez-date-input.d.ts +6 -1
  176. package/dist/types/components/ez-date-time-input/ez-date-time-input.d.ts +6 -1
  177. package/dist/types/components/ez-dialog/ez-dialog.d.ts +2 -0
  178. package/dist/types/components/ez-dropdown/ez-dropdown.d.ts +4 -0
  179. package/dist/types/components/ez-dropdown/structure/DropdownItem.d.ts +1 -1
  180. package/dist/types/components/ez-filter-input/ez-filter-input.d.ts +6 -1
  181. package/dist/types/components/ez-form-view/custom-input/ez-custom-form-input.d.ts +7 -1
  182. package/dist/types/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.d.ts +1 -1
  183. package/dist/types/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.d.ts +1 -1
  184. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +56 -4
  185. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +32 -4
  186. package/dist/types/components/ez-grid/controller/ag-grid/DataSource.d.ts +23 -1
  187. package/dist/types/components/ez-grid/controller/ag-grid/GridEditionManager.d.ts +33 -7
  188. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomCellEditor.d.ts +4 -1
  189. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomCellRender.d.ts +1 -1
  190. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.d.ts +1 -1
  191. package/dist/types/components/ez-grid/controller/ag-grid/components/cellRendererStatus.d.ts +1 -1
  192. package/dist/types/components/ez-grid/controller/ag-grid/components/selectionHeader.d.ts +1 -1
  193. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellEditor.d.ts +2 -1
  194. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellRender.d.ts +1 -1
  195. package/dist/types/components/ez-grid/controller/ag-grid/editor/IUICellEditor.d.ts +1 -0
  196. package/dist/types/components/ez-grid/controller/ag-grid/mock/Server.d.ts +1 -1
  197. package/dist/types/components/ez-grid/ez-grid.d.ts +27 -1
  198. package/dist/types/components/ez-modal/ez-modal.d.ts +7 -1
  199. package/dist/types/components/ez-modal-container/ez-modal-container.d.ts +4 -0
  200. package/dist/types/components/ez-number-input/ez-number-input.d.ts +8 -0
  201. package/dist/types/components/ez-popup/ez-popup.d.ts +7 -0
  202. package/dist/types/components/ez-search/ez-search.d.ts +25 -5
  203. package/dist/types/components/ez-split-button/ez-split-button.d.ts +1 -1
  204. package/dist/types/components/ez-split-panel/ez-split-panel.d.ts +4 -0
  205. package/dist/types/components/ez-split-panel/interfaces/IPanelSizeInfo.d.ts +9 -0
  206. package/dist/types/components/ez-text-area/ez-text-area.d.ts +17 -0
  207. package/dist/types/components/ez-text-input/ez-text-input.d.ts +9 -0
  208. package/dist/types/components/ez-time-input/ez-time-input.d.ts +4 -0
  209. package/dist/types/components.d.ts +218 -20
  210. package/dist/types/utils/FocusResolver.d.ts +5 -0
  211. package/dist/types/utils/customEditor/interfaces/ICustomEditor.d.ts +2 -0
  212. package/dist/types/utils/form/DataBinder.d.ts +3 -0
  213. package/dist/types/utils/validators/recordvalidator/IInvalidCells.d.ts +5 -0
  214. package/dist/types/utils/validators/recordvalidator/RecordValidationProcessor.d.ts +1 -1
  215. package/package.json +12 -4
  216. package/dist/cjs/RecordValidationProcessor-4c893e04.js +0 -102
  217. package/dist/cjs/ez-skeleton.cjs.entry.js +0 -67
  218. package/dist/esm/RecordValidationProcessor-b00b8b77.js +0 -99
  219. package/dist/esm/ez-skeleton.entry.js +0 -63
  220. package/dist/ezui/p-044d46d5.entry.js +0 -1
  221. package/dist/ezui/p-04f24913.js +0 -1
  222. package/dist/ezui/p-11b09aa1.entry.js +0 -1
  223. package/dist/ezui/p-24ca32a3.entry.js +0 -1
  224. package/dist/ezui/p-2af4e2de.entry.js +0 -1
  225. package/dist/ezui/p-33b08253.entry.js +0 -304
  226. package/dist/ezui/p-36180f4d.entry.js +0 -1
  227. package/dist/ezui/p-3f8c33e0.entry.js +0 -1
  228. package/dist/ezui/p-5fefcdc9.entry.js +0 -1
  229. package/dist/ezui/p-752c4069.entry.js +0 -1
  230. package/dist/ezui/p-81cffa53.entry.js +0 -1
  231. package/dist/ezui/p-81f99ace.entry.js +0 -1
  232. package/dist/ezui/p-8eef0f70.entry.js +0 -1
  233. package/dist/ezui/p-9634631d.entry.js +0 -1
  234. package/dist/ezui/p-9a11e223.entry.js +0 -1
  235. package/dist/ezui/p-9a23d513.entry.js +0 -1
  236. package/dist/ezui/p-9c2e2d68.entry.js +0 -1
  237. package/dist/ezui/p-a35b41e6.entry.js +0 -1
  238. package/dist/ezui/p-acbf0e76.entry.js +0 -1
  239. package/dist/ezui/p-b0e71d23.entry.js +0 -1
  240. package/dist/ezui/p-c3b7a23e.entry.js +0 -1
  241. package/dist/ezui/p-cd1a2e6b.entry.js +0 -1
  242. package/dist/ezui/p-dbeee5aa.entry.js +0 -1
  243. package/dist/ezui/p-de870657.entry.js +0 -1
  244. package/dist/ezui/p-e151e795.entry.js +0 -1
  245. package/dist/ezui/p-ee9315ff.entry.js +0 -1
  246. package/dist/ezui/p-f1c3f85d.entry.js +0 -1
  247. package/dist/ezui/p-f291db18.entry.js +0 -1
@@ -25,10 +25,10 @@ export class EzList {
25
25
  */
26
26
  async scrollToTop() {
27
27
  if (this.useGroups) {
28
- this._element.shadowRoot.querySelector('.group-container').scrollTop = 0;
28
+ this._element.querySelector('.group-container').scrollTop = 0;
29
29
  }
30
30
  else {
31
- this._element.shadowRoot.querySelector('.items-container').scrollTop = 0;
31
+ this._element.querySelector('.items-container').scrollTop = 0;
32
32
  }
33
33
  }
34
34
  /**
@@ -148,8 +148,7 @@ export class EzList {
148
148
  }
149
149
  }
150
150
  buildIdDraggableListAndSelectable() {
151
- const shadow = this._element.shadowRoot;
152
- const draggableList = shadow.querySelectorAll('.draggable-list');
151
+ const draggableList = this._element.querySelectorAll('.draggable-list');
153
152
  draggableList === null || draggableList === void 0 ? void 0 : draggableList.forEach((draggable, index) => {
154
153
  var _a, _b;
155
154
  let suffix = 'draggableList';
@@ -159,7 +158,7 @@ export class EzList {
159
158
  }
160
159
  ElementIDUtils.addIDInfoIfNotExists(draggable, suffix);
161
160
  });
162
- const selectable = shadow.querySelectorAll('.selectable-container');
161
+ const selectable = this._element.querySelectorAll('.selectable-container');
163
162
  selectable === null || selectable === void 0 ? void 0 : selectable.forEach((item) => {
164
163
  ElementIDUtils.addIDInfoIfNotExists(item, 'selectable');
165
164
  });
@@ -288,7 +287,7 @@ export class EzList {
288
287
  }
289
288
  if (this._draggingElement) {
290
289
  try {
291
- this._element.shadowRoot.removeChild(this._draggingElement);
290
+ this._element.removeChild(this._draggingElement);
292
291
  }
293
292
  catch (err) { }
294
293
  this._draggingElement = undefined;
@@ -551,7 +550,7 @@ export class EzList {
551
550
  }, onDragEnd: () => this.onDragEnd(), onDrop: event => this.onDropLastIndex(event) }))))));
552
551
  }
553
552
  static get is() { return "ez-list"; }
554
- static get encapsulation() { return "shadow"; }
553
+ static get encapsulation() { return "scoped"; }
555
554
  static get originalStyleUrls() {
556
555
  return {
557
556
  "$": ["ez-list.css"]
@@ -1,6 +1,6 @@
1
1
  :host {
2
2
  /*@doc Define a camada em que o componente será exibido.*/
3
- --ez-modal-z-index: var(--elevation--12, 12);;
3
+ --ez-modal-z-index: var(--elevation--22, 22);
4
4
  /*@doc Define o espaçamento vertical do conteúdo do modal.*/
5
5
  --ez-modal-vertical-padding: var(--space--large, 24px);
6
6
  /*@doc Define o padding entre o conteúdo e o modal */
@@ -23,6 +23,10 @@
23
23
  background: rgba(0, 4, 12, 0.1);
24
24
  }
25
25
 
26
+ .modal__screen-none{
27
+ background: none;
28
+ }
29
+
26
30
  .modal__screen-medium{
27
31
  backdrop-filter: blur(4px);
28
32
  background: rgba(0, 4, 12, 0.4)
@@ -8,6 +8,7 @@ export class EzModal {
8
8
  this.opened = true;
9
9
  this.closeEsc = false;
10
10
  this.closeOutsideClick = false;
11
+ this.closeOutsideLeave = false;
11
12
  this.scrim = "medium";
12
13
  }
13
14
  observeOpened() {
@@ -30,15 +31,29 @@ export class EzModal {
30
31
  .bind("Esc", () => this.closeModal());
31
32
  }
32
33
  componentDidRender() {
33
- if (this.opened) {
34
- this.ezOpenModal.emit();
34
+ this.modalFocus();
35
+ }
36
+ modalFocus() {
37
+ if (!this.opened) {
38
+ return;
35
39
  }
40
+ requestAnimationFrame(() => {
41
+ const slot = this._element.shadowRoot.querySelector("ez-modal-container");
42
+ if (this._modalRef && slot === null) {
43
+ this._modalRef.focus();
44
+ }
45
+ });
36
46
  }
37
47
  onMouseDownHandler(event) {
38
48
  if (this.closeOutsideClick && event.target === this._overlay) {
39
49
  this.closeModal();
40
50
  }
41
51
  }
52
+ onMouseLeaveHandler() {
53
+ if (this.closeOutsideLeave) {
54
+ this.closeModal();
55
+ }
56
+ }
42
57
  render() {
43
58
  const positionSufix = this.align === "left" ? "left" : "right";
44
59
  const regularVerticalPaddingClass = this.heightMode === "regular" ? 'modal__vertical-padding' : '';
@@ -46,7 +61,7 @@ export class EzModal {
46
61
  const scrimType = `modal__screen-${this.scrim}`;
47
62
  return (h(Host, null, this.opened
48
63
  ?
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))))
64
+ 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", { onMouseLeave: () => this.onMouseLeaveHandler(), class: `modal__content ${modalContentHeightMode} ${this.modalSize}` }, h("slot", null))))
50
65
  :
51
66
  undefined));
52
67
  }
@@ -174,12 +189,30 @@ export class EzModal {
174
189
  "reflect": false,
175
190
  "defaultValue": "false"
176
191
  },
192
+ "closeOutsideLeave": {
193
+ "type": "boolean",
194
+ "mutable": false,
195
+ "complexType": {
196
+ "original": "boolean",
197
+ "resolved": "boolean",
198
+ "references": {}
199
+ },
200
+ "required": false,
201
+ "optional": true,
202
+ "docs": {
203
+ "tags": [],
204
+ "text": "Define se o modal ser\u00E1 fechado se o mouse sair para fora do conte\u00FAdo."
205
+ },
206
+ "attribute": "close-outside-leave",
207
+ "reflect": false,
208
+ "defaultValue": "false"
209
+ },
177
210
  "scrim": {
178
211
  "type": "string",
179
212
  "mutable": false,
180
213
  "complexType": {
181
- "original": "\"medium\" | \"light\"",
182
- "resolved": "\"light\" | \"medium\"",
214
+ "original": "\"medium\" | \"light\" | \"none\"",
215
+ "resolved": "\"light\" | \"medium\" | \"none\"",
183
216
  "references": {}
184
217
  },
185
218
  "required": false,
@@ -11,6 +11,7 @@ export class EzModalContainer {
11
11
  this.okButtonLabel = undefined;
12
12
  this.cancelButtonStatus = undefined;
13
13
  this.okButtonStatus = undefined;
14
+ this.showCloseButton = true;
14
15
  }
15
16
  async handleEzModalAction(event) {
16
17
  var _a;
@@ -47,7 +48,7 @@ export class EzModalContainer {
47
48
  this._closeButton.focus();
48
49
  }
49
50
  render() {
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() })));
51
+ 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--medium" }, 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))), (this.showCloseButton && 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() })));
51
52
  }
52
53
  static get is() { return "ez-modal-container"; }
53
54
  static get encapsulation() { return "scoped"; }
@@ -182,6 +183,24 @@ export class EzModalContainer {
182
183
  },
183
184
  "attribute": "ok-button-status",
184
185
  "reflect": false
186
+ },
187
+ "showCloseButton": {
188
+ "type": "boolean",
189
+ "mutable": false,
190
+ "complexType": {
191
+ "original": "boolean",
192
+ "resolved": "boolean",
193
+ "references": {}
194
+ },
195
+ "required": false,
196
+ "optional": true,
197
+ "docs": {
198
+ "tags": [],
199
+ "text": "Define a visibilidade do bot\u00E3o de fechar."
200
+ },
201
+ "attribute": "show-close-button",
202
+ "reflect": false,
203
+ "defaultValue": "true"
185
204
  }
186
205
  };
187
206
  }
@@ -96,7 +96,7 @@ export class EzMuiltiSelectionList {
96
96
  }
97
97
  async searchWithDataSource(searchArgument, fieldName) {
98
98
  const { argument, mode } = searchArgument;
99
- if (mode !== 'PRELOAD') {
99
+ if (mode !== 'PRELOAD' && fieldName) {
100
100
  return this.dataSource.fetchData(argument, fieldName);
101
101
  }
102
102
  }
@@ -12,9 +12,11 @@ export class EzNumberInput {
12
12
  this.enabled = true;
13
13
  this.canShowError = true;
14
14
  this.errorMessage = undefined;
15
+ this.allowNegative = true;
15
16
  this.precision = undefined;
16
17
  this.prettyPrecision = undefined;
17
18
  this.mode = "regular";
19
+ this.autoFocus = false;
18
20
  }
19
21
  /**
20
22
  * Aplica o foco no campo.
@@ -155,15 +157,25 @@ export class EzNumberInput {
155
157
  const textValue = this.getTextValue(this.value) || '';
156
158
  if ((this._value || '') !== textValue) {
157
159
  this._value = textValue;
160
+ this._textInput.value = this._value;
158
161
  }
159
162
  }
160
163
  componentDidLoad() {
161
164
  CSSVarsUtils.applyVarsTextInput(this._elem, this._textInput);
162
165
  this.setInputValue();
166
+ if (this.autoFocus) {
167
+ requestAnimationFrame(() => {
168
+ this.setFocus({ selectText: true });
169
+ });
170
+ }
163
171
  }
164
172
  render() {
165
173
  ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
166
- return (h("ez-text-input", { class: "number__input", "data-element-id": ElementIDUtils.getInternalIDInfo("textInput"), ref: elem => this._textInput = elem, "data-slave-mode": "true", label: this.label, onBlur: () => this.handleBlur(), onInput: () => this.handleInput(), restrict: this.precision > 0 ? "0123456789-,." : "0123456789-", enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode, canShowError: this.canShowError, value: this._value }));
174
+ let restrict = this.precision > 0 ? "0123456789,." : "0123456789";
175
+ if (this.allowNegative) {
176
+ restrict += '-';
177
+ }
178
+ return (h("ez-text-input", { class: "number__input", "data-element-id": ElementIDUtils.getInternalIDInfo("textInput"), ref: elem => this._textInput = elem, "data-slave-mode": "true", label: this.label, onBlur: () => this.handleBlur(), onInput: () => this.handleInput(), restrict: restrict, enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode, canShowError: this.canShowError, value: this._value }));
167
179
  }
168
180
  static get is() { return "ez-number-input"; }
169
181
  static get encapsulation() { return "shadow"; }
@@ -266,6 +278,24 @@ export class EzNumberInput {
266
278
  "attribute": "error-message",
267
279
  "reflect": true
268
280
  },
281
+ "allowNegative": {
282
+ "type": "boolean",
283
+ "mutable": false,
284
+ "complexType": {
285
+ "original": "boolean",
286
+ "resolved": "boolean",
287
+ "references": {}
288
+ },
289
+ "required": false,
290
+ "optional": false,
291
+ "docs": {
292
+ "tags": [],
293
+ "text": "Se false, o input n\u00E3o aceitar\u00E1 n\u00FAmeros negativos."
294
+ },
295
+ "attribute": "allow-negative",
296
+ "reflect": false,
297
+ "defaultValue": "true"
298
+ },
269
299
  "precision": {
270
300
  "type": "number",
271
301
  "mutable": false,
@@ -317,6 +347,24 @@ export class EzNumberInput {
317
347
  "attribute": "mode",
318
348
  "reflect": true,
319
349
  "defaultValue": "\"regular\""
350
+ },
351
+ "autoFocus": {
352
+ "type": "boolean",
353
+ "mutable": false,
354
+ "complexType": {
355
+ "original": "boolean",
356
+ "resolved": "boolean",
357
+ "references": {}
358
+ },
359
+ "required": false,
360
+ "optional": false,
361
+ "docs": {
362
+ "tags": [],
363
+ "text": "Se true o campo de texto receber\u00E1 o foco ao ser renderizado."
364
+ },
365
+ "attribute": "auto-focus",
366
+ "reflect": false,
367
+ "defaultValue": "false"
320
368
  }
321
369
  };
322
370
  }
@@ -8,7 +8,7 @@
8
8
  /*@doc Define a cor do texto do container do popup.*/
9
9
  --ez-popup__container--color: var(--title--primary, #2b3a54);
10
10
  /*@doc Define o espaçamento do container do popup.*/
11
- --ez-popup__container--padding: var(--space--large, 24px);
11
+ --ez-popup__container--padding: var(--space--md, 20px);
12
12
 
13
13
  /* Popup Header */
14
14
  /*@doc Define o espaçamento inferior do cabeçalho do popup.*/
@@ -18,7 +18,7 @@
18
18
  /*@doc Define a família da fonte do título do popup.*/
19
19
  --ez-popup__title--font-family: var(--font-pattern, "Roboto");
20
20
  /*@doc Define o tamanho da fonte do título do popup.*/
21
- --ez-popup__title--font-size: var(--title--extra-large, 24px);
21
+ --ez-popup__title--font-size: var(--title--large, 20px);
22
22
  /*@doc Define a cor da fonte do título do popup.*/
23
23
  --ez-popup__title--color: var(--title--primary, #2b3a54);
24
24
  /*@doc Define o peso da fonte do título do popup.*/
@@ -68,13 +68,17 @@
68
68
  border-radius: 12px;
69
69
  box-shadow: 0px 0px 16px rgba(0, 38, 111, 0.122);
70
70
  box-sizing: border-box;
71
- padding: var(--ez-popup__container--padding)
71
+ padding: var(--ez-popup__container--padding);
72
72
  }
73
73
 
74
74
  .popup__container--auto {
75
75
  height: auto;
76
76
  }
77
77
 
78
+ .popup__overflow-y--auto {
79
+ overflow-y: auto;
80
+ }
81
+
78
82
  .popup__content {
79
83
  box-sizing: border-box;
80
84
  height: 100%;
@@ -15,6 +15,7 @@ export class EzPopup {
15
15
  this.useHeader = true;
16
16
  this.heightMode = "full";
17
17
  this.ezTitle = undefined;
18
+ this.enabledScroll = false;
18
19
  }
19
20
  observeConfig() {
20
21
  this.manageOverflow();
@@ -49,14 +50,32 @@ export class EzPopup {
49
50
  FloatingManager.unsubscribeOverlayControl(this._popupRef || this._overlayId);
50
51
  }
51
52
  }
53
+ popUpFocus() {
54
+ if (!this.opened) {
55
+ return;
56
+ }
57
+ requestAnimationFrame(() => {
58
+ const slot = this._element.shadowRoot.querySelector("ez-modal-container");
59
+ if (this._popupRef && slot === null) {
60
+ this._popupRef.focus();
61
+ }
62
+ });
63
+ }
52
64
  getGridSize() {
53
65
  return this._sizeClasses[this.size] || this._sizeClasses["medium"];
54
66
  }
67
+ handlePopupHeight() {
68
+ return this.heightMode === 'auto' ? 'popup__container--auto' : '';
69
+ }
70
+ handlePopupOverflowY() {
71
+ return this.enabledScroll ? 'popup__overflow-y--auto' : '';
72
+ }
55
73
  componentDidRender() {
56
74
  this.manageOverlay();
75
+ this.popUpFocus();
57
76
  }
58
77
  render() {
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 &&
78
+ 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.handlePopupHeight())} ${this.handlePopupOverflowY()}` }, h("div", { class: "popup__content" }, h("div", { class: "popup__header " + (this.useHeader ? "popup__header--padding" : "") }, this.useHeader &&
60
79
  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));
61
80
  }
62
81
  static get is() { return "ez-popup"; }
@@ -161,6 +180,24 @@ export class EzPopup {
161
180
  },
162
181
  "attribute": "ez-title",
163
182
  "reflect": false
183
+ },
184
+ "enabledScroll": {
185
+ "type": "boolean",
186
+ "mutable": false,
187
+ "complexType": {
188
+ "original": "boolean",
189
+ "resolved": "boolean",
190
+ "references": {}
191
+ },
192
+ "required": false,
193
+ "optional": false,
194
+ "docs": {
195
+ "tags": [],
196
+ "text": "Possibilita scroll vertical no conte\u00FAdo interno do componente"
197
+ },
198
+ "attribute": "enabled-scroll",
199
+ "reflect": false,
200
+ "defaultValue": "false"
164
201
  }
165
202
  };
166
203
  }
@@ -56,6 +56,7 @@
56
56
  .ez-scroller__container--vertical {
57
57
  overflow-y: scroll;
58
58
  flex-direction: column;
59
+ width: 100%;
59
60
  max-height: var(--ez-scroller__max-height);
60
61
  }
61
62
 
@@ -135,10 +135,10 @@ ez-icon {
135
135
  background-color: var(--ez-search--background-color--xlight);
136
136
  border-radius: var(--ez-search--border-radius);
137
137
  box-shadow: var(--shadow, 0px 0px 16px 0px #000);
138
- padding: var(--ez-search--space--small);
139
138
  }
140
139
 
141
140
  .list-options {
141
+ margin-top: 0px;
142
142
  box-sizing: border-box;
143
143
  width: 100%;
144
144
  height: 100%;
@@ -146,20 +146,24 @@ ez-icon {
146
146
  display: flex;
147
147
  flex-direction: column;
148
148
  scroll-behavior: smooth;
149
- overflow: auto;
149
+ overflow-y: auto;
150
+ overflow-x: hidden;
150
151
  scrollbar-width: thin;
151
- gap: 3px;
152
152
 
153
153
  /*public*/
154
154
  scrollbar-color: var(--ez-search__scrollbar--color-clicked) var(--ez-search__scrollbar--color-background);
155
+
155
156
  }
156
157
 
157
158
  .list-options::-webkit-scrollbar {
158
159
  /*public*/
159
- background-color: var(--ez-search__scrollbar--color-background);
160
- width: var(--ez-search__scrollbar--width);
161
- max-width: var(--ez-search__scrollbar--width);
162
- min-width: var(--ez-search__scrollbar--width);
160
+ background-color: var(--scrollbar--background);
161
+ width: var(--space--small);
162
+ max-width: var(--space--small);
163
+ min-width: var(--space--small);
164
+ height: var(--space--small);
165
+ max-height: var(--space--small);
166
+ min-height: var(--space--small);
163
167
  }
164
168
 
165
169
  .list-options::-webkit-scrollbar-track {
@@ -196,7 +200,6 @@ ez-icon {
196
200
 
197
201
  /*public*/
198
202
  border-radius: var(--ez-search--border-radius-small);
199
- padding: var(--ez-search--space--small);
200
203
  gap: var(--space--small, 6px);
201
204
  }
202
205
 
@@ -296,14 +299,14 @@ ez-icon {
296
299
  }
297
300
 
298
301
  .btn:disabled {
299
- cursor: unset;
302
+ cursor: not-allowed;
300
303
 
301
304
  /*public*/
302
305
  color: var(--ez-search__btn-disabled--color);
303
306
  }
304
307
 
305
308
  .btn:disabled:hover {
306
- cursor: unset;
309
+ cursor: not-allowed;
307
310
 
308
311
  /*public*/
309
312
  color: var(--ez-search__btn-disabled--color);
@@ -331,4 +334,12 @@ ez-text-input:hover .btn__close, ez-text-input:focus .btn__close {
331
334
  @keyframes spin {
332
335
  0% { transform: rotate(0deg); }
333
336
  100% { transform: rotate(360deg); }
337
+ }
338
+
339
+ @supports not (scrollbar-width: thin) {
340
+ /* Estilos para navegadores que NÃO suportam scrollbar-width */
341
+ .item {
342
+ /* Estilos alternativos, por exemplo, para navegadores que não suportam scrollbar-width */
343
+ padding-right: 8px;
344
+ }
334
345
  }