@sankhyalabs/ezui 0.0.0-bugfix-dev-KB-76362.1 → 0.0.0-bugfix-dev-KB-79020.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 (273) 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-actions-button.cjs.entry.js +4 -3
  4. package/dist/cjs/ez-alert-list.cjs.entry.js +1 -1
  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 +2 -2
  10. package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
  11. package/dist/cjs/ez-card-item_3.cjs.entry.js +13 -20
  12. package/dist/cjs/ez-chart.cjs.entry.js +2 -2
  13. package/dist/cjs/ez-check.cjs.entry.js +1 -1
  14. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-collapsible-box.cjs.entry.js +1 -1
  16. package/dist/cjs/ez-combo-box.cjs.entry.js +49 -13
  17. package/dist/cjs/ez-custom-form-input_2.cjs.entry.js +5 -4
  18. package/dist/cjs/ez-date-input.cjs.entry.js +9 -3
  19. package/dist/cjs/ez-date-time-input.cjs.entry.js +9 -3
  20. package/dist/cjs/ez-dialog.cjs.entry.js +11 -3
  21. package/dist/cjs/ez-dropdown_2.cjs.entry.js +1 -1
  22. package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
  23. package/dist/cjs/ez-form-view.cjs.entry.js +3 -3
  24. package/dist/cjs/ez-form.cjs.entry.js +6 -326
  25. package/dist/cjs/ez-grid.cjs.entry.js +14620 -70502
  26. package/dist/cjs/ez-guide-navigator.cjs.entry.js +1 -1
  27. package/dist/cjs/ez-icon.cjs.entry.js +2 -2
  28. package/dist/cjs/ez-list.cjs.entry.js +152 -101
  29. package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
  30. package/dist/cjs/ez-modal-container.cjs.entry.js +1 -1
  31. package/dist/cjs/ez-modal.cjs.entry.js +2 -2
  32. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +1 -1
  33. package/dist/cjs/ez-number-input.cjs.entry.js +9 -2
  34. package/dist/cjs/ez-popover.cjs.entry.js +2 -2
  35. package/dist/cjs/ez-popup.cjs.entry.js +2 -2
  36. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  37. package/dist/cjs/ez-scroller_2.cjs.entry.js +1 -1
  38. package/dist/cjs/ez-search.cjs.entry.js +68 -23
  39. package/dist/cjs/ez-sidebar-navigator.cjs.entry.js +1 -1
  40. package/dist/cjs/ez-split-button.cjs.entry.js +2 -2
  41. package/dist/cjs/ez-split-item.cjs.entry.js +1 -1
  42. package/dist/cjs/ez-split-panel.cjs.entry.js +15 -5
  43. package/dist/cjs/ez-tabselector.cjs.entry.js +1 -1
  44. package/dist/cjs/ez-text-area.cjs.entry.js +67 -5
  45. package/dist/cjs/ez-text-input.cjs.entry.js +80 -8
  46. package/dist/cjs/ez-time-input.cjs.entry.js +7 -1
  47. package/dist/cjs/ez-toast.cjs.entry.js +1 -1
  48. package/dist/cjs/ez-tree.cjs.entry.js +1 -1
  49. package/dist/cjs/ez-upload.cjs.entry.js +1 -1
  50. package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
  51. package/dist/cjs/ezui.cjs.js +2 -2
  52. package/dist/cjs/filter-column.cjs.entry.js +1 -1
  53. package/dist/cjs/{index-9e5554cb.js → index-a7b0c73d.js} +0 -3
  54. package/dist/cjs/loader.cjs.js +2 -2
  55. package/dist/collection/collection-manifest.json +1 -1
  56. package/dist/collection/components/ez-actions-button/ez-actions-button.js +3 -2
  57. package/dist/collection/components/ez-button/ez-button.css +2 -2
  58. package/dist/collection/components/ez-card-item/ez-card-item.css +14 -5
  59. package/dist/collection/components/ez-combo-box/ez-combo-box.css +12 -0
  60. package/dist/collection/components/ez-combo-box/ez-combo-box.js +76 -15
  61. package/dist/collection/components/ez-date-input/ez-date-input.js +35 -4
  62. package/dist/collection/components/ez-date-time-input/ez-date-time-input.js +35 -4
  63. package/dist/collection/components/ez-dialog/ez-dialog.css +3 -3
  64. package/dist/collection/components/ez-dialog/ez-dialog.js +9 -1
  65. package/dist/collection/components/ez-filter-input/ez-filter-input.css +0 -11
  66. package/dist/collection/components/ez-filter-input/ez-filter-input.js +22 -52
  67. package/dist/collection/components/ez-form/ez-form.js +1 -0
  68. package/dist/collection/components/ez-form-view/custom-input/ez-custom-form-input.js +3 -2
  69. package/dist/collection/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.js +2 -2
  70. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +100 -27
  71. package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +8 -0
  72. package/dist/collection/components/ez-grid/controller/ag-grid/GridEditionManager.js +164 -46
  73. package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomCellEditor.js +7 -0
  74. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/ComboBox.tpl.js +1 -0
  75. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/DateInput.tpl.js +1 -0
  76. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/NumberInput.tpl.js +1 -0
  77. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/Search.tpl.js +1 -0
  78. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/TextInput.tpl.js +4 -1
  79. package/dist/collection/components/ez-grid/ez-grid.js +90 -3
  80. package/dist/collection/components/ez-icon/ez-icon.css +153 -149
  81. package/dist/collection/components/ez-list/ez-list.css +5 -5
  82. package/dist/collection/components/ez-list/ez-list.js +152 -170
  83. package/dist/collection/components/ez-modal/ez-modal.css +4 -0
  84. package/dist/collection/components/ez-modal/ez-modal.js +2 -2
  85. package/dist/collection/components/ez-number-input/ez-number-input.css +8 -0
  86. package/dist/collection/components/ez-number-input/ez-number-input.js +25 -0
  87. package/dist/collection/components/ez-popover/ez-popover.css +3 -10
  88. package/dist/collection/components/ez-popup/ez-popup.css +4 -8
  89. package/dist/collection/components/ez-search/ez-search.css +1 -1
  90. package/dist/collection/components/ez-search/ez-search.js +94 -24
  91. package/dist/collection/components/ez-split-button/ez-split-button.css +2 -2
  92. package/dist/collection/components/ez-split-panel/ez-split-panel.js +35 -4
  93. package/dist/collection/components/ez-split-panel/interfaces/IPanelSizeInfo.js +1 -0
  94. package/dist/collection/components/ez-text-area/ez-text-area.css +49 -0
  95. package/dist/collection/components/ez-text-area/ez-text-area.js +102 -2
  96. package/dist/collection/components/ez-text-input/ez-text-input.css +33 -53
  97. package/dist/collection/components/ez-text-input/ez-text-input.js +88 -6
  98. package/dist/collection/components/ez-time-input/ez-time-input.js +24 -0
  99. package/dist/collection/utils/FocusResolver.js +31 -0
  100. package/dist/collection/utils/ResponsiveInputUtils.js +26 -0
  101. package/dist/collection/utils/form/DataBinder.js +18 -3
  102. package/dist/collection/utils/form/FormMetadata.js +1 -1
  103. package/dist/collection/utils/interfaces/AbstractFieldMetadata.js +1 -1
  104. package/dist/custom-elements/index.js +15381 -70913
  105. package/dist/esm/DataBinder-02fa9bb9.js +441 -0
  106. package/dist/esm/FocusResolver-1ccbf850.js +33 -0
  107. package/dist/esm/ez-actions-button.entry.js +4 -3
  108. package/dist/esm/ez-alert-list.entry.js +1 -1
  109. package/dist/esm/ez-alert.entry.js +1 -1
  110. package/dist/esm/ez-application.entry.js +1 -1
  111. package/dist/esm/ez-badge.entry.js +1 -1
  112. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  113. package/dist/esm/ez-button.entry.js +2 -2
  114. package/dist/esm/ez-calendar.entry.js +1 -1
  115. package/dist/esm/ez-card-item_3.entry.js +13 -20
  116. package/dist/esm/ez-chart.entry.js +2 -2
  117. package/dist/esm/ez-check.entry.js +1 -1
  118. package/dist/esm/ez-chip.entry.js +1 -1
  119. package/dist/esm/ez-collapsible-box.entry.js +1 -1
  120. package/dist/esm/ez-combo-box.entry.js +50 -14
  121. package/dist/esm/ez-custom-form-input_2.entry.js +5 -4
  122. package/dist/esm/ez-date-input.entry.js +9 -3
  123. package/dist/esm/ez-date-time-input.entry.js +9 -3
  124. package/dist/esm/ez-dialog.entry.js +11 -3
  125. package/dist/esm/ez-dropdown_2.entry.js +1 -1
  126. package/dist/esm/ez-file-item.entry.js +1 -1
  127. package/dist/esm/ez-form-view.entry.js +3 -3
  128. package/dist/esm/ez-form.entry.js +5 -325
  129. package/dist/esm/ez-grid.entry.js +14589 -70471
  130. package/dist/esm/ez-guide-navigator.entry.js +1 -1
  131. package/dist/esm/ez-icon.entry.js +2 -2
  132. package/dist/esm/ez-list.entry.js +153 -102
  133. package/dist/esm/ez-loading-bar.entry.js +1 -1
  134. package/dist/esm/ez-modal-container.entry.js +1 -1
  135. package/dist/esm/ez-modal.entry.js +2 -2
  136. package/dist/esm/ez-multi-selection-list.entry.js +1 -1
  137. package/dist/esm/ez-number-input.entry.js +9 -2
  138. package/dist/esm/ez-popover.entry.js +2 -2
  139. package/dist/esm/ez-popup.entry.js +2 -2
  140. package/dist/esm/ez-radio-button.entry.js +1 -1
  141. package/dist/esm/ez-scroller_2.entry.js +1 -1
  142. package/dist/esm/ez-search.entry.js +68 -23
  143. package/dist/esm/ez-sidebar-navigator.entry.js +1 -1
  144. package/dist/esm/ez-split-button.entry.js +2 -2
  145. package/dist/esm/ez-split-item.entry.js +1 -1
  146. package/dist/esm/ez-split-panel.entry.js +15 -5
  147. package/dist/esm/ez-tabselector.entry.js +1 -1
  148. package/dist/esm/ez-text-area.entry.js +67 -5
  149. package/dist/esm/ez-text-input.entry.js +80 -8
  150. package/dist/esm/ez-time-input.entry.js +7 -1
  151. package/dist/esm/ez-toast.entry.js +1 -1
  152. package/dist/esm/ez-tree.entry.js +1 -1
  153. package/dist/esm/ez-upload.entry.js +1 -1
  154. package/dist/esm/ez-view-stack.entry.js +1 -1
  155. package/dist/esm/ezui.js +3 -3
  156. package/dist/esm/filter-column.entry.js +1 -1
  157. package/dist/esm/{index-5a720e56.js → index-baa5e267.js} +1 -3
  158. package/dist/esm/loader.js +3 -3
  159. package/dist/ezui/ezui.esm.js +1 -1
  160. package/dist/ezui/{p-e6b38ade.entry.js → p-0306dff7.entry.js} +1 -1
  161. package/dist/ezui/p-039a95bd.entry.js +1 -0
  162. package/dist/ezui/{p-91ccae0c.entry.js → p-09de35a2.entry.js} +1 -1
  163. package/dist/ezui/p-0a75bb05.entry.js +1 -0
  164. package/dist/ezui/p-0db68715.entry.js +1 -0
  165. package/dist/ezui/p-151fc744.entry.js +1 -0
  166. package/dist/ezui/p-15d7af92.entry.js +1 -0
  167. package/dist/ezui/{p-b2f6bc0a.entry.js → p-17be134a.entry.js} +1 -1
  168. package/dist/ezui/p-19098a3f.entry.js +1 -0
  169. package/dist/ezui/{p-81461d2f.entry.js → p-1e7a8633.entry.js} +1 -1
  170. package/dist/ezui/{p-6b51c9cc.entry.js → p-1f50fa05.entry.js} +1 -1
  171. package/dist/ezui/{p-e4c7eb39.js → p-23a36bb6.js} +2 -2
  172. package/dist/ezui/p-2b46b37b.entry.js +1 -0
  173. package/dist/ezui/p-2bb2a0c4.entry.js +1 -0
  174. package/dist/ezui/p-3175fe8c.entry.js +1 -0
  175. package/dist/ezui/p-43b41d3e.entry.js +309 -0
  176. package/dist/ezui/{p-0378416a.entry.js → p-44caad9a.entry.js} +1 -1
  177. package/dist/ezui/p-455e737c.js +1 -0
  178. package/dist/ezui/p-4575d511.entry.js +1 -0
  179. package/dist/ezui/{p-7567ccdd.entry.js → p-555c9018.entry.js} +1 -1
  180. package/dist/ezui/{p-6fc26622.entry.js → p-5ed81457.entry.js} +1 -1
  181. package/dist/ezui/{p-f1c2c19e.entry.js → p-650e4b6d.entry.js} +1 -1
  182. package/dist/ezui/{p-554522db.entry.js → p-6d79930d.entry.js} +1 -1
  183. package/dist/ezui/{p-fc194825.entry.js → p-6e429cff.entry.js} +1 -1
  184. package/dist/ezui/{p-3b546374.entry.js → p-7409eeaa.entry.js} +1 -1
  185. package/dist/ezui/{p-11bfeca3.entry.js → p-77a4bd35.entry.js} +1 -1
  186. package/dist/ezui/p-783ea398.entry.js +1 -0
  187. package/dist/ezui/p-7ed30844.entry.js +1 -0
  188. package/dist/ezui/{p-e18d9e6a.entry.js → p-7fdd479f.entry.js} +1 -1
  189. package/dist/ezui/p-7fde6c1d.entry.js +1 -0
  190. package/dist/ezui/p-8481a08a.entry.js +1 -0
  191. package/dist/ezui/{p-1b08bf3c.entry.js → p-8888d9ed.entry.js} +1 -1
  192. package/dist/ezui/{p-82fa4b09.entry.js → p-8df1ca33.entry.js} +1 -1
  193. package/dist/ezui/{p-e7395eae.entry.js → p-90bcd2ba.entry.js} +1 -1
  194. package/dist/ezui/{p-a921e3e7.entry.js → p-990b4318.entry.js} +1 -1
  195. package/dist/ezui/{p-c2b20f78.entry.js → p-9f5fa3f9.entry.js} +1 -1
  196. package/dist/ezui/p-a5b91a77.entry.js +1 -0
  197. package/dist/ezui/p-a80b1287.entry.js +1 -0
  198. package/dist/ezui/{p-30951bd7.entry.js → p-baf80b13.entry.js} +1 -1
  199. package/dist/ezui/p-bc2f844e.entry.js +1 -0
  200. package/dist/ezui/p-bfad39eb.entry.js +1 -0
  201. package/dist/ezui/{p-92748142.entry.js → p-c0d9c4f8.entry.js} +1 -1
  202. package/dist/ezui/{p-b858fc6e.entry.js → p-c3045972.entry.js} +1 -1
  203. package/dist/ezui/{p-a563df31.entry.js → p-c4320a39.entry.js} +1 -1
  204. package/dist/ezui/p-cd2e78f0.entry.js +1 -0
  205. package/dist/ezui/p-d0ca26fe.entry.js +1 -0
  206. package/dist/ezui/p-dc628ed3.js +1 -0
  207. package/dist/ezui/p-dc8b36c3.entry.js +1 -0
  208. package/dist/ezui/{p-bef7daac.entry.js → p-e347df9c.entry.js} +1 -1
  209. package/dist/ezui/{p-70f1c812.entry.js → p-f9e551de.entry.js} +1 -1
  210. package/dist/ezui/p-fec696ab.entry.js +1 -0
  211. package/dist/ezui/p-ffd246f5.entry.js +1 -0
  212. package/dist/types/components/ez-actions-button/ez-actions-button.d.ts +1 -0
  213. package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +7 -1
  214. package/dist/types/components/ez-date-input/ez-date-input.d.ts +6 -1
  215. package/dist/types/components/ez-date-time-input/ez-date-time-input.d.ts +6 -1
  216. package/dist/types/components/ez-dialog/ez-dialog.d.ts +2 -0
  217. package/dist/types/components/ez-filter-input/ez-filter-input.d.ts +4 -11
  218. package/dist/types/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.d.ts +1 -1
  219. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +12 -0
  220. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +7 -2
  221. package/dist/types/components/ez-grid/controller/ag-grid/DataSource.d.ts +2 -1
  222. package/dist/types/components/ez-grid/controller/ag-grid/GridEditionManager.d.ts +19 -7
  223. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomCellEditor.d.ts +3 -1
  224. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomCellRender.d.ts +1 -1
  225. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.d.ts +1 -1
  226. package/dist/types/components/ez-grid/controller/ag-grid/components/cellRendererStatus.d.ts +1 -1
  227. package/dist/types/components/ez-grid/controller/ag-grid/components/selectionHeader.d.ts +1 -1
  228. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellEditor.d.ts +1 -1
  229. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellRender.d.ts +1 -1
  230. package/dist/types/components/ez-grid/controller/ag-grid/editor/IUICellEditor.d.ts +1 -0
  231. package/dist/types/components/ez-grid/controller/ag-grid/mock/Server.d.ts +1 -1
  232. package/dist/types/components/ez-grid/ez-grid.d.ts +11 -1
  233. package/dist/types/components/ez-list/ez-list.d.ts +3 -26
  234. package/dist/types/components/ez-modal/ez-modal.d.ts +1 -1
  235. package/dist/types/components/ez-number-input/ez-number-input.d.ts +4 -0
  236. package/dist/types/components/ez-search/ez-search.d.ts +10 -2
  237. package/dist/types/components/ez-split-panel/ez-split-panel.d.ts +4 -0
  238. package/dist/types/components/ez-split-panel/interfaces/IPanelSizeInfo.d.ts +9 -0
  239. package/dist/types/components/ez-text-area/ez-text-area.d.ts +17 -0
  240. package/dist/types/components/ez-text-input/ez-text-input.d.ts +9 -0
  241. package/dist/types/components/ez-time-input/ez-time-input.d.ts +4 -0
  242. package/dist/types/components.d.ts +114 -44
  243. package/dist/types/utils/FocusResolver.d.ts +5 -0
  244. package/dist/types/utils/ResponsiveInputUtils.d.ts +6 -0
  245. package/dist/types/utils/form/DataBinder.d.ts +3 -0
  246. package/package.json +11 -4
  247. package/dist/cjs/RecordValidationProcessor-10846595.js +0 -108
  248. package/dist/esm/RecordValidationProcessor-9c6cc267.js +0 -105
  249. package/dist/ezui/p-00687830.entry.js +0 -1
  250. package/dist/ezui/p-044d46d5.entry.js +0 -1
  251. package/dist/ezui/p-11b09aa1.entry.js +0 -1
  252. package/dist/ezui/p-190c190f.entry.js +0 -304
  253. package/dist/ezui/p-2de9f0aa.entry.js +0 -1
  254. package/dist/ezui/p-36180f4d.entry.js +0 -1
  255. package/dist/ezui/p-3f8c33e0.entry.js +0 -1
  256. package/dist/ezui/p-52100a6e.entry.js +0 -1
  257. package/dist/ezui/p-5a40c77a.entry.js +0 -1
  258. package/dist/ezui/p-61059f6b.entry.js +0 -1
  259. package/dist/ezui/p-68267f59.entry.js +0 -1
  260. package/dist/ezui/p-6ec40dec.entry.js +0 -1
  261. package/dist/ezui/p-823cc11b.entry.js +0 -1
  262. package/dist/ezui/p-85b500bb.entry.js +0 -1
  263. package/dist/ezui/p-868b56f7.entry.js +0 -1
  264. package/dist/ezui/p-8ac13678.entry.js +0 -1
  265. package/dist/ezui/p-940760bf.entry.js +0 -1
  266. package/dist/ezui/p-9e08ddb0.entry.js +0 -1
  267. package/dist/ezui/p-b2a1398f.entry.js +0 -1
  268. package/dist/ezui/p-ba5f4ee7.entry.js +0 -1
  269. package/dist/ezui/p-d40b93a7.entry.js +0 -1
  270. package/dist/ezui/p-d4aba783.entry.js +0 -1
  271. package/dist/ezui/p-e3ec7422.entry.js +0 -1
  272. package/dist/ezui/p-f291db18.entry.js +0 -1
  273. package/dist/ezui/p-f42855b9.js +0 -1
@@ -6,10 +6,12 @@
6
6
  --ez-text-input--width: 100%;
7
7
  /*@doc Define a largura do slot que contém o ícone.*/
8
8
  --ez-text-input__icon--width: 48px;
9
- --ez-text-input__icon--left--width: var(--ez-text-input__icon--width);
10
- --ez-text-input__icon--right--width: var(--ez-text-input__icon--width);
11
9
  /*@doc Define a altura do componente em modo "slim".*/
12
10
  --ez-text-input--height--slim: 32px;
11
+ /*@doc Define a largura maxima do componente.*/
12
+ --ez-text-input__min-width: 0px;
13
+ /*@doc Define a largura minima do componente.*/
14
+ --ez-text-input__max-width: 100%;
13
15
 
14
16
  /* general */
15
17
  /*@doc Define o raio da borda do input do componente.*/
@@ -48,6 +50,9 @@
48
50
  --ez-text-input__input--noborder-color: white;
49
51
  /*@doc Define o padding do input*/
50
52
  --ez-text-input__input--padding: var(--space--medium, 6px);
53
+ /*@doc Define a cor do placeholder do input.*/
54
+ --ez-text-input__placeholder--color: var(--text--secondary, #a2abb9);
55
+
51
56
 
52
57
  /* message box */
53
58
  /*@doc Define o tamanho da fonte da mensagem abaixo do input.*/
@@ -82,6 +87,8 @@
82
87
  position: relative;
83
88
  /*public*/
84
89
  width: var(--ez-text-input--width);
90
+ min-width: var(--ez-text-input__min-width);
91
+ max-width: var(--ez-text-input__max-width);
85
92
  }
86
93
 
87
94
  :host(.grid_editor){
@@ -104,8 +111,6 @@ input {
104
111
  color: var(--ez-text-input--color);
105
112
  font-weight: var(--ez-text-input--font-weight);
106
113
  padding: var(--ez-text-input__input--padding);
107
- text-overflow: ellipsis;
108
- overflow: hidden;
109
114
  }
110
115
 
111
116
  input:disabled {
@@ -123,11 +128,11 @@ input:focus {
123
128
  }
124
129
 
125
130
  input.icon--left {
126
- padding-left: var(--ez-text-input__icon--left--width);
131
+ padding-left: var(--ez-text-input__icon--width);
127
132
  }
128
133
 
129
134
  input.icon--right {
130
- padding-right: var(--ez-text-input__icon--right--width);
135
+ padding-right: var(--ez-text-input__icon--width);
131
136
  }
132
137
 
133
138
  input.hasError {
@@ -204,23 +209,25 @@ input:read-only {
204
209
  cursor: not-allowed;
205
210
  }
206
211
 
207
- .input__label--left.input__label--right {
208
- left: calc(var(--ez-text-input__icon--left--width) + 2px);
209
- /*borda*/
210
- width: calc(100% - (var(--ez-text-input__icon--right--width) + var(--ez-text-input__icon--left--width)));
211
- }
212
212
  .input__label--left {
213
213
  /*public*/
214
214
  text-align: left;
215
- left: calc(var(--ez-text-input__icon--left--width) + 2px);
215
+ left: calc(var(--ez-text-input__icon--width) + 2px);
216
216
  /*borda*/
217
- width: calc(100% - var(--ez-text-input__icon--left--width));
217
+ width: calc(100% - var(--ez-text-input__icon--width));
218
218
  }
219
219
 
220
220
  .input__label--right {
221
221
  /*public*/
222
- right: var(--ez-text-input__icon--right--width);
223
- width: calc(100% - var(--ez-text-input__icon--right--width));
222
+ right: var(--ez-text-input__icon--width);
223
+ width: calc(100% - var(--ez-text-input__icon--width));
224
+ }
225
+
226
+ /* ISSO TA ERRADO CRIAR INPUT__LABEL--BOTH */
227
+ .input__label--left.input__label--right {
228
+ left: calc(var(--ez-text-input__icon--width) + 2px);
229
+ /*borda*/
230
+ width: calc(100% - var(--ez-text-input__icon--width) * 2);
224
231
  }
225
232
 
226
233
  .input--with--label {
@@ -240,45 +247,18 @@ input:read-only {
240
247
  font-weight: bold;
241
248
  }
242
249
 
243
- .input--slim::-webkit-input-placeholder { /* Edge */
244
- /*public*/
245
- font-family: var(--ez-text-input--font-family);
246
- font-size: var(--ez-text-input--font-size);
247
- font-weight: var(--ez-text-input--font-weight);
248
- color: var(--ez-text-input--color);
249
- }
250
+ .input--slim::-webkit-input-placeholder, /* Edge */
251
+ .input--slim:-moz-placeholder, /* Firefox 4-18 */
252
+ .input--slim::-moz-placeholder, /* Firefox 19+ */
253
+ .input--slim:-ms-input-placeholder, /* IE 10-11 */
254
+ .input--slim::placeholder { /* Modern browsers */
255
+ /*public*/
256
+ font-family: var(--ez-text-input--font-family);
257
+ font-size: var(--ez-text-input--font-size);
258
+ font-weight: var(--ez-text-input--font-weight);
259
+ color: var(--ez-text-input__placeholder--color);
260
+ }
250
261
 
251
- .input--slim:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
252
- /*public*/
253
- font-family: var(--ez-text-input--font-family);
254
- font-size: var(--ez-text-input--font-size);
255
- font-weight: var(--ez-text-input--font-weight);
256
- color: var(--ez-text-input--color);
257
- }
258
-
259
- .input--slim::-moz-placeholder { /* Mozilla Firefox 19+ */
260
- /*public*/
261
- font-family: var(--ez-text-input--font-family);
262
- font-size: var(--ez-text-input--font-size);
263
- font-weight: var(--ez-text-input--font-weight);
264
- color: var(--ez-text-input--color);
265
- }
266
-
267
- .input--slim:-ms-input-placeholder { /* Internet Explorer 10-11 */
268
- /*public*/
269
- font-family: var(--ez-text-input--font-family);
270
- font-size: var(--ez-text-input--font-size);
271
- font-weight: var(--ez-text-input--font-weight);
272
- color: var(--ez-text-input--color);
273
- }
274
-
275
- .input--slim::placeholder {
276
- /*public*/
277
- font-family: var(--ez-text-input--font-family);
278
- font-size: var(--ez-text-input--font-size);
279
- font-weight: var(--ez-text-input--font-weight);
280
- color: var(--ez-text-input--color);
281
- }
282
262
 
283
263
  .input--slim:disabled::-webkit-input-placeholder, /* WebKit browsers */
284
264
  .input--slim:disabled:-moz-placeholder, /* Mozilla Firefox 4 to 18 */
@@ -1,5 +1,6 @@
1
1
  import { h, Host } from "@stencil/core";
2
2
  import { ElementIDUtils, MaskFormatter } from "@sankhyalabs/core";
3
+ import { applyEllipsisToInput } from "../../utils/ResponsiveInputUtils";
3
4
  export class EzTextInput {
4
5
  constructor() {
5
6
  this.label = undefined;
@@ -7,11 +8,13 @@ export class EzTextInput {
7
8
  this.enabled = true;
8
9
  this.errorMessage = undefined;
9
10
  this.mask = undefined;
11
+ this.cleanValueMask = false;
10
12
  this.canShowError = true;
11
13
  this.restrict = undefined;
12
14
  this.mode = "regular";
13
15
  this.noBorder = false;
14
16
  this.password = false;
17
+ this.autoFocus = false;
15
18
  }
16
19
  observeErrorMessage() {
17
20
  if (this._inputElem) {
@@ -121,7 +124,12 @@ export class EzTextInput {
121
124
  const value = this._inputElem.value;
122
125
  if (value && this._maskFormatter) {
123
126
  try {
124
- this._inputElem.value = this._maskFormatter.format(value);
127
+ if (this.cleanValueMask) {
128
+ this.applyMask(value);
129
+ }
130
+ else {
131
+ this._inputElem.value = this._maskFormatter.format(value);
132
+ }
125
133
  }
126
134
  catch (e) {
127
135
  this.errorMessage = e.message;
@@ -139,9 +147,35 @@ export class EzTextInput {
139
147
  }
140
148
  controlChangeValue() {
141
149
  if (this._inputElem && (this.value || '') !== this._inputElem.value) {
142
- this.value = this._inputElem.value;
150
+ if (this.cleanValueMask) {
151
+ this.value = this._maskFormatter.removeMask(this._inputElem.value);
152
+ }
153
+ else {
154
+ this.value = this._inputElem.value;
155
+ }
143
156
  }
144
157
  }
158
+ applyMask(value) {
159
+ if (!value || value === "")
160
+ return value;
161
+ if (this._maskFormatter) {
162
+ try {
163
+ const formattedValue = this._maskFormatter.applyMask(this._maskFormatter.removeMask(value));
164
+ if (this._inputElem) {
165
+ this._inputElem.value = formattedValue;
166
+ return this._inputElem.value;
167
+ }
168
+ else {
169
+ this.value = formattedValue;
170
+ return this.value;
171
+ }
172
+ }
173
+ catch (e) {
174
+ this.errorMessage = e.message;
175
+ }
176
+ }
177
+ return value;
178
+ }
145
179
  handleChange() {
146
180
  if (!this._inputElem) {
147
181
  return;
@@ -165,9 +199,9 @@ export class EzTextInput {
165
199
  content.style.justifyContent = "center";
166
200
  content.style.overflow = "hidden";
167
201
  content.style.top = "0px";
202
+ content.style.width = "var(--ez-text-input__icon--width)";
168
203
  content.style.height = this.mode != "slim" ? "var(--ez-text-input--height)" : "var(--ez-text-input--height--slim)";
169
204
  if (slot.name == "leftIcon") {
170
- content.style.width = "var(--ez-text-input__icon--left--width)";
171
205
  content.style.left = "0px";
172
206
  content.style.borderRadius = "var(--ez-text-input--border-radius) 0 0 var(--ez-text-input--border-radius)";
173
207
  this._inputElem.classList.add("icon--left");
@@ -177,7 +211,6 @@ export class EzTextInput {
177
211
  this._contentLeftSlot = content;
178
212
  }
179
213
  else if (slot.name == "rightIcon") {
180
- content.style.width = "var(--ez-text-input__icon--right--width)";
181
214
  content.style.right = "0px";
182
215
  content.style.borderRadius = "0 var(--ez-text-input--border-radius) var(--ez-text-input--border-radius) 0";
183
216
  this._inputElem.classList.add("icon--right");
@@ -203,16 +236,29 @@ export class EzTextInput {
203
236
  this.observeMask();
204
237
  this.adjustFloatingLabel();
205
238
  this.adjustBorderInput();
239
+ if (this.autoFocus) {
240
+ requestAnimationFrame(() => {
241
+ this.setFocus({ selectText: true });
242
+ });
243
+ }
206
244
  this._inputElem.addEventListener('focus', () => {
207
245
  this._inputElem.setSelectionRange(0, this._inputElem.value.length);
208
246
  });
247
+ if (this._inputElem) {
248
+ applyEllipsisToInput(this._inputElem);
249
+ }
209
250
  }
210
251
  componentWillLoad() {
211
252
  this.observeMask();
212
253
  if (this.value) {
213
254
  if (this._maskFormatter) {
214
255
  try {
215
- this.value = this._maskFormatter.format(this.value);
256
+ if (this.cleanValueMask) {
257
+ this.applyMask(this.value);
258
+ }
259
+ else {
260
+ this.value = this._maskFormatter.format(this.value);
261
+ }
216
262
  }
217
263
  catch (e) {
218
264
  this.errorMessage = e.message;
@@ -228,7 +274,7 @@ export class EzTextInput {
228
274
  ElementIDUtils.addIDInfoIfNotExists(this._hostElement, 'input');
229
275
  return (h(Host, { style: this._hostElement.classList.contains("grid_editor") ? { "height": "100%" } : null }, h("slot", { name: "leftIcon", onSlotchange: (ev) => { this.handleSlotChange(ev); } }), this.label && this.mode != "slim" ?
230
276
  h("label", { ref: (el) => this._labelElem = el, class: this.enabled ? "input__label" : "input__label input__label--disabled", onClick: () => this._inputElem.focus(), title: this.label }, this.label)
231
- : null, h("input", { "data-element-id": ElementIDUtils.getInternalIDInfo("input"), onFocus: () => this.doFocus(), ref: (el) => this._inputElem = el, type: this.password ? "password" : "text", class: this.mode === "slim" ? "input--slim" : "", placeholder: this.mode === "slim" && this.label ? this.label : "", value: this.value, disabled: !this.enabled, onInput: () => { this.handleChange(); }, onFocusout: () => { this.handleFocusout(); } }), h("slot", { name: "rightIcon", onSlotchange: (ev) => { this.handleSlotChange(ev); } }), this.canShowError && this.mode != "slim" &&
277
+ : null, h("input", { "data-element-id": ElementIDUtils.getInternalIDInfo("input"), onFocus: () => this.doFocus(), ref: (el) => this._inputElem = el, type: this.password ? "password" : "text", class: this.mode === "slim" ? "input--slim" : "", placeholder: this.mode === "slim" && this.label ? this.label : "", value: this.mask && this.cleanValueMask ? this.applyMask(this.value) : this.value, disabled: !this.enabled, onInput: () => { this.handleChange(); }, onFocusout: () => { this.handleFocusout(); } }), h("slot", { name: "rightIcon", onSlotchange: (ev) => { this.handleSlotChange(ev); } }), this.canShowError && this.mode != "slim" &&
232
278
  h("span", { class: "message-box", ref: (el) => this._messageBoxElem = el, title: this.errorMessage, "data-element-id": ElementIDUtils.getInternalIDInfo("message_box") }, this.errorMessage)));
233
279
  }
234
280
  static get is() { return "ez-text-input"; }
@@ -331,6 +377,24 @@ export class EzTextInput {
331
377
  "attribute": "mask",
332
378
  "reflect": false
333
379
  },
380
+ "cleanValueMask": {
381
+ "type": "boolean",
382
+ "mutable": false,
383
+ "complexType": {
384
+ "original": "boolean",
385
+ "resolved": "boolean",
386
+ "references": {}
387
+ },
388
+ "required": false,
389
+ "optional": false,
390
+ "docs": {
391
+ "tags": [],
392
+ "text": "Para remover a m\u00E1scara quando fizer um apply no formul\u00E1rio."
393
+ },
394
+ "attribute": "clean-value-mask",
395
+ "reflect": false,
396
+ "defaultValue": "false"
397
+ },
334
398
  "canShowError": {
335
399
  "type": "boolean",
336
400
  "mutable": false,
@@ -419,6 +483,24 @@ export class EzTextInput {
419
483
  "attribute": "password",
420
484
  "reflect": false,
421
485
  "defaultValue": "false"
486
+ },
487
+ "autoFocus": {
488
+ "type": "boolean",
489
+ "mutable": false,
490
+ "complexType": {
491
+ "original": "boolean",
492
+ "resolved": "boolean",
493
+ "references": {}
494
+ },
495
+ "required": false,
496
+ "optional": false,
497
+ "docs": {
498
+ "tags": [],
499
+ "text": "Se true o campo receber\u00E1 o foco ao ser renderizado."
500
+ },
501
+ "attribute": "auto-focus",
502
+ "reflect": false,
503
+ "defaultValue": "false"
422
504
  }
423
505
  };
424
506
  }
@@ -10,6 +10,7 @@ export class EzTimeInput {
10
10
  this.showSeconds = false;
11
11
  this.mode = "regular";
12
12
  this.canShowError = true;
13
+ this.autoFocus = false;
13
14
  }
14
15
  observeErrorMessage() {
15
16
  var _a;
@@ -130,6 +131,11 @@ export class EzTimeInput {
130
131
  //---------------------------------------------
131
132
  componentDidLoad() {
132
133
  CSSVarsUtils.applyVarsTextInput(this._elem, this._textInput);
134
+ if (this.autoFocus) {
135
+ requestAnimationFrame(() => {
136
+ this.setFocus({ selectText: true });
137
+ });
138
+ }
133
139
  }
134
140
  componentWillLoad() {
135
141
  this.observeShowSeconds();
@@ -281,6 +287,24 @@ export class EzTimeInput {
281
287
  "attribute": "can-show-error",
282
288
  "reflect": true,
283
289
  "defaultValue": "true"
290
+ },
291
+ "autoFocus": {
292
+ "type": "boolean",
293
+ "mutable": false,
294
+ "complexType": {
295
+ "original": "boolean",
296
+ "resolved": "boolean",
297
+ "references": {}
298
+ },
299
+ "required": false,
300
+ "optional": false,
301
+ "docs": {
302
+ "tags": [],
303
+ "text": "Se true o campo de texto receber\u00E1 o foco ao ser renderizado."
304
+ },
305
+ "attribute": "auto-focus",
306
+ "reflect": false,
307
+ "defaultValue": "false"
284
308
  }
285
309
  };
286
310
  }
@@ -0,0 +1,31 @@
1
+ export default class FocusResolver {
2
+ static resolveFocus(element, selectText = true) {
3
+ var _a;
4
+ if (!element)
5
+ return;
6
+ (_a = element.focus) === null || _a === void 0 ? void 0 : _a.call(element);
7
+ if (element.setFocus) {
8
+ element.setFocus({ selectText });
9
+ return;
10
+ }
11
+ this.resolveFocusOnChild(element, selectText);
12
+ }
13
+ static resolveFocusOnChild(element, selectText = true) {
14
+ var _a, _b;
15
+ if (this.isGridCell(element) && element.firstElementChild) {
16
+ this.resolveFocusOnChild(element.firstElementChild);
17
+ return;
18
+ }
19
+ if (!element || !element.classList.contains('hydrated'))
20
+ return;
21
+ const firstChild = element.firstElementChild;
22
+ if (!(firstChild === null || firstChild === void 0 ? void 0 : firstChild.focus) && !(firstChild === null || firstChild === void 0 ? void 0 : firstChild.setFocus))
23
+ return;
24
+ (_a = firstChild === null || firstChild === void 0 ? void 0 : firstChild.focus) === null || _a === void 0 ? void 0 : _a.call(firstChild);
25
+ (_b = firstChild === null || firstChild === void 0 ? void 0 : firstChild.setFocus) === null || _b === void 0 ? void 0 : _b.call(firstChild, { selectText });
26
+ }
27
+ static isGridCell(element) {
28
+ var _a;
29
+ return ((_a = element === null || element === void 0 ? void 0 : element.getAttribute) === null || _a === void 0 ? void 0 : _a.call(element, "role")) === 'gridcell';
30
+ }
31
+ }
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Aplica comportamento de elipses a um input caso o texto ultrapasse o tamanho disponível.
3
+ *
4
+ * @param inputElement A referência ao elemento input (HTMLInputElement).
5
+ */
6
+ export const applyEllipsisToInput = (inputElement) => {
7
+ if (!inputElement || !inputElement.style) {
8
+ console.error('[applyEllipsisToInput] Referência ao elemento input é inválida.');
9
+ return;
10
+ }
11
+ inputElement.style.textOverflow = 'ellipsis';
12
+ inputElement.style.overflow = 'hidden';
13
+ inputElement.style.whiteSpace = 'nowrap';
14
+ const adjustEllipsis = () => {
15
+ const value = inputElement.value || '';
16
+ const isOverflowing = inputElement.scrollWidth > inputElement.clientWidth;
17
+ if (isOverflowing) {
18
+ inputElement.setAttribute('title', value);
19
+ }
20
+ else {
21
+ inputElement.removeAttribute('title');
22
+ }
23
+ };
24
+ inputElement.addEventListener('input', adjustEllipsis);
25
+ adjustEllipsis();
26
+ };
@@ -22,6 +22,7 @@ export default class DataBinder {
22
22
  (_a = this._fields) === null || _a === void 0 ? void 0 : _a.forEach(field => {
23
23
  this.updateValue(field.fieldName, field.field);
24
24
  });
25
+ this.clearFieldError(Object.keys(action.payload)[0]);
25
26
  break;
26
27
  case Action.FIELD_INVALIDATED:
27
28
  (_b = this._fields) === null || _b === void 0 ? void 0 : _b.forEach(field => {
@@ -67,11 +68,14 @@ export default class DataBinder {
67
68
  });
68
69
  this._formMetadata = formMetadata;
69
70
  this._recordValidatorProcessor = new RecordValidationProcessor(this._dataUnit, {
70
- getRequiredFields: () => this._formMetadata.getRequiredFields(),
71
+ getRequiredFields: () => this.getFormRequiredFields(),
71
72
  markAsInvalid: field => this.markInvalid(field),
72
73
  getMessageForField: field => this.getErrorMessage(field),
73
74
  }, recordsValidator);
74
75
  }
76
+ getFormRequiredFields() {
77
+ return this._formMetadata.getRequiredFields();
78
+ }
75
79
  disconnectDataUnit() {
76
80
  const dataBindersByDataUnit = ApplicationContext.getContextValue("__DATABINDER_BY_DATAUNIT__") || new Map();
77
81
  const dataBinders = dataBindersByDataUnit.get(this._dataUnit.dataUnitId);
@@ -111,6 +115,14 @@ export default class DataBinder {
111
115
  fieldElement["errorMessage"] = "";
112
116
  });
113
117
  }
118
+ clearFieldError(fieldName) {
119
+ var _a;
120
+ const field = (_a = this._fields.get(fieldName)) === null || _a === void 0 ? void 0 : _a.field;
121
+ if (field["errorMessage"]) {
122
+ field["errorMessage"] = "";
123
+ this._dataUnit.clearInvalid(this.getCurrentRecordId(), fieldName);
124
+ }
125
+ }
114
126
  updateValue(fieldName, field) {
115
127
  const bind = this._fields.get(fieldName);
116
128
  try {
@@ -131,8 +143,7 @@ export default class DataBinder {
131
143
  }
132
144
  static async validateByDataunit(dataUnit) {
133
145
  try {
134
- const dataBindersByDataUnit = ApplicationContext.getContextValue("__DATABINDER_BY_DATAUNIT__");
135
- const dataBinders = dataBindersByDataUnit.get(dataUnit.dataUnitId) || [];
146
+ const dataBinders = this.getDataBindersByDataUnit(dataUnit);
136
147
  await Promise.all(dataBinders.map((dataBinder) => dataBinder.validate()));
137
148
  return true;
138
149
  }
@@ -140,6 +151,10 @@ export default class DataBinder {
140
151
  return false;
141
152
  }
142
153
  }
154
+ static getDataBindersByDataUnit(dataUnit) {
155
+ const dataBindersByDataUnit = ApplicationContext.getContextValue("__DATABINDER_BY_DATAUNIT__");
156
+ return dataBindersByDataUnit.get(dataUnit.dataUnitId) || [];
157
+ }
143
158
  updateErrorMessage(fieldName, field, message) {
144
159
  if (message == undefined) {
145
160
  message = this._dataUnit.getInvalidMessage(this.getCurrentRecordId(), fieldName);
@@ -97,7 +97,7 @@ export const buildFormMetadata = (config, dataUnit, includeDetails = false) => {
97
97
  return;
98
98
  }
99
99
  const descriptor = dataUnit.getField(field.name);
100
- if (descriptor && tabConfig.visible) {
100
+ if (descriptor && descriptor.visible && tabConfig.visible) {
101
101
  if (!sheets.has(tabConfig)) {
102
102
  sheets.set(tabConfig, []);
103
103
  }
@@ -16,6 +16,6 @@ export const buildFieldMetadata = (descriptor, config) => {
16
16
  name, label, group,
17
17
  readOnly, required,
18
18
  props,
19
- userInterface: userInterface || UserInterface.SHORTTEXT
19
+ userInterface: userInterface || UserInterface.SHORTTEXT,
20
20
  };
21
21
  };