@sankhyalabs/ezui 0.0.0-bugfix-dev-KB-86600.1 → 0.0.0-bugfix-dev-KB-86904.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 (262) hide show
  1. package/dist/cjs/{types-6a5df0c7.js → FormLayout-18853e70.js} +6 -0
  2. package/dist/cjs/ez-actions-button.cjs.entry.js +3 -4
  3. package/dist/cjs/ez-alert-list.cjs.entry.js +1 -1
  4. package/dist/cjs/ez-alert.cjs.entry.js +1 -1
  5. package/dist/cjs/ez-application.cjs.entry.js +1 -1
  6. package/dist/cjs/ez-avatar.cjs.entry.js +50 -0
  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_2.cjs.entry.js +13 -16
  12. package/dist/cjs/ez-chart.cjs.entry.js +1 -1
  13. package/dist/cjs/ez-check.cjs.entry.js +2 -2
  14. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-collapsible-box.cjs.entry.js +3 -4
  16. package/dist/cjs/ez-combo-box-list_3.cjs.entry.js +4 -5
  17. package/dist/cjs/ez-combo-box.cjs.entry.js +7 -8
  18. package/dist/cjs/ez-date-input.cjs.entry.js +1 -1
  19. package/dist/cjs/ez-date-time-input.cjs.entry.js +1 -1
  20. package/dist/cjs/ez-dialog.cjs.entry.js +1 -1
  21. package/dist/cjs/ez-double-list.cjs.entry.js +1 -1
  22. package/dist/cjs/ez-dropdown.cjs.entry.js +2 -2
  23. package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
  24. package/dist/cjs/ez-filter-input.cjs.entry.js +1 -1
  25. package/dist/cjs/ez-form-view.cjs.entry.js +1 -1
  26. package/dist/cjs/ez-form.cjs.entry.js +61 -6
  27. package/dist/cjs/ez-grid.cjs.entry.js +80 -17
  28. package/dist/cjs/ez-guide-navigator.cjs.entry.js +1 -1
  29. package/dist/cjs/ez-icon.cjs.entry.js +12 -6
  30. package/dist/cjs/ez-list.cjs.entry.js +2 -2
  31. package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
  32. package/dist/cjs/ez-modal-container.cjs.entry.js +2 -2
  33. package/dist/cjs/ez-modal.cjs.entry.js +1 -1
  34. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +1 -1
  35. package/dist/cjs/ez-number-input.cjs.entry.js +1 -1
  36. package/dist/cjs/ez-popover-plus_3.cjs.entry.js +32 -3
  37. package/dist/cjs/ez-popover.cjs.entry.js +1 -1
  38. package/dist/cjs/ez-popup.cjs.entry.js +1 -1
  39. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  40. package/dist/cjs/ez-scroller_2.cjs.entry.js +1 -1
  41. package/dist/cjs/ez-search-plus.cjs.entry.js +5 -6
  42. package/dist/cjs/ez-search-result-list.cjs.entry.js +1 -1
  43. package/dist/cjs/ez-search.cjs.entry.js +14 -4
  44. package/dist/cjs/ez-sidebar-navigator.cjs.entry.js +1 -1
  45. package/dist/cjs/ez-skeleton.cjs.entry.js +119 -37
  46. package/dist/cjs/ez-split-button.cjs.entry.js +16 -7
  47. package/dist/cjs/ez-split-item.cjs.entry.js +2 -3
  48. package/dist/cjs/ez-split-panel.cjs.entry.js +1 -1
  49. package/dist/cjs/ez-tabselector.cjs.entry.js +1 -1
  50. package/dist/cjs/ez-text-area.cjs.entry.js +1 -1
  51. package/dist/cjs/ez-text-input.cjs.entry.js +17 -3
  52. package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
  53. package/dist/cjs/ez-toast.cjs.entry.js +1 -1
  54. package/dist/cjs/ez-tooltip.cjs.entry.js +3 -3
  55. package/dist/cjs/ez-tree.cjs.entry.js +1 -1
  56. package/dist/cjs/ez-upload.cjs.entry.js +1 -1
  57. package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
  58. package/dist/cjs/ezui.cjs.js +2 -2
  59. package/dist/cjs/filter-column.cjs.entry.js +1 -2
  60. package/dist/cjs/{index-a7b0c73d.js → index-9e5554cb.js} +7 -0
  61. package/dist/cjs/loader.cjs.js +2 -2
  62. package/dist/cjs/{DataBinder-b9973a19.js → search-column-1d3c9fa5.js} +31 -0
  63. package/dist/collection/collection-manifest.json +1 -0
  64. package/dist/collection/components/ez-actions-button/ez-actions-button.css +2 -0
  65. package/dist/collection/components/ez-avatar/ez-avatar.css +139 -0
  66. package/dist/collection/components/ez-avatar/ez-avatar.js +143 -0
  67. package/dist/collection/components/ez-button/ez-button.css +2 -2
  68. package/dist/collection/components/ez-check/ez-check.css +1 -1
  69. package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.css +2 -1
  70. package/dist/collection/components/ez-combo-box/ez-combo-box.js +5 -5
  71. package/dist/collection/components/ez-dropdown/ez-dropdown.js +1 -1
  72. package/dist/collection/components/ez-form/ez-form.js +95 -2
  73. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +25 -2
  74. package/dist/collection/components/ez-grid/ez-grid.css +8 -0
  75. package/dist/collection/components/ez-grid/ez-grid.js +84 -6
  76. package/dist/collection/components/ez-grid/subcomponents/filter-column.js +0 -1
  77. package/dist/collection/components/ez-icon/ez-icon.js +28 -5
  78. package/dist/collection/components/ez-list/ez-list.css +1 -0
  79. package/dist/collection/components/ez-modal-container/ez-modal-container.css +2 -1
  80. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.js +12 -15
  81. package/dist/collection/components/ez-search/ez-search.js +12 -1
  82. package/dist/collection/components/ez-search/subcomponent/search-list/search-list.js +31 -2
  83. package/dist/collection/components/ez-search-plus/ez-search-plus.js +16 -40
  84. package/dist/collection/components/ez-skeleton/ez-skeleton.constants.js +25 -1
  85. package/dist/collection/components/ez-skeleton/ez-skeleton.css +122 -80
  86. package/dist/collection/components/ez-skeleton/ez-skeleton.js +210 -46
  87. package/dist/collection/components/ez-split-button/ez-split-button.css +1 -1
  88. package/dist/collection/components/ez-split-button/ez-split-button.js +87 -10
  89. package/dist/collection/components/ez-text-input/ez-text-input.css +7 -0
  90. package/dist/collection/components/ez-text-input/ez-text-input.js +15 -1
  91. package/dist/collection/components/ez-tooltip/ez-tooltip.css +1 -0
  92. package/dist/collection/components/ez-tooltip/ez-tooltip.js +2 -2
  93. package/dist/collection/utils/index.js +1 -0
  94. package/dist/collection/utils/searchColumn/search-column.js +35 -0
  95. package/dist/custom-elements/index.d.ts +6 -0
  96. package/dist/custom-elements/index.js +434 -98
  97. package/dist/esm/{types-6f6b2650.js → FormLayout-071d324c.js} +7 -1
  98. package/dist/esm/ez-actions-button.entry.js +3 -4
  99. package/dist/esm/ez-alert-list.entry.js +1 -1
  100. package/dist/esm/ez-alert.entry.js +1 -1
  101. package/dist/esm/ez-application.entry.js +1 -1
  102. package/dist/esm/ez-avatar.entry.js +46 -0
  103. package/dist/esm/ez-badge.entry.js +1 -1
  104. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  105. package/dist/esm/ez-button.entry.js +2 -2
  106. package/dist/esm/ez-calendar.entry.js +1 -1
  107. package/dist/esm/ez-card-item_2.entry.js +13 -16
  108. package/dist/esm/ez-chart.entry.js +1 -1
  109. package/dist/esm/ez-check.entry.js +2 -2
  110. package/dist/esm/ez-chip.entry.js +1 -1
  111. package/dist/esm/ez-collapsible-box.entry.js +3 -4
  112. package/dist/esm/ez-combo-box-list_3.entry.js +3 -4
  113. package/dist/esm/ez-combo-box.entry.js +7 -8
  114. package/dist/esm/ez-date-input.entry.js +1 -1
  115. package/dist/esm/ez-date-time-input.entry.js +1 -1
  116. package/dist/esm/ez-dialog.entry.js +1 -1
  117. package/dist/esm/ez-double-list.entry.js +1 -1
  118. package/dist/esm/ez-dropdown.entry.js +2 -2
  119. package/dist/esm/ez-file-item.entry.js +1 -1
  120. package/dist/esm/ez-filter-input.entry.js +1 -1
  121. package/dist/esm/ez-form-view.entry.js +1 -1
  122. package/dist/esm/ez-form.entry.js +60 -5
  123. package/dist/esm/ez-grid.entry.js +75 -12
  124. package/dist/esm/ez-guide-navigator.entry.js +1 -1
  125. package/dist/esm/ez-icon.entry.js +12 -6
  126. package/dist/esm/ez-list.entry.js +2 -2
  127. package/dist/esm/ez-loading-bar.entry.js +1 -1
  128. package/dist/esm/ez-modal-container.entry.js +2 -2
  129. package/dist/esm/ez-modal.entry.js +1 -1
  130. package/dist/esm/ez-multi-selection-list.entry.js +1 -1
  131. package/dist/esm/ez-number-input.entry.js +1 -1
  132. package/dist/esm/ez-popover-plus_3.entry.js +32 -3
  133. package/dist/esm/ez-popover.entry.js +1 -1
  134. package/dist/esm/ez-popup.entry.js +1 -1
  135. package/dist/esm/ez-radio-button.entry.js +1 -1
  136. package/dist/esm/ez-scroller_2.entry.js +1 -1
  137. package/dist/esm/ez-search-plus.entry.js +2 -3
  138. package/dist/esm/ez-search-result-list.entry.js +1 -1
  139. package/dist/esm/ez-search.entry.js +14 -4
  140. package/dist/esm/ez-sidebar-navigator.entry.js +1 -1
  141. package/dist/esm/ez-skeleton.entry.js +119 -37
  142. package/dist/esm/ez-split-button.entry.js +16 -7
  143. package/dist/esm/ez-split-item.entry.js +2 -3
  144. package/dist/esm/ez-split-panel.entry.js +1 -1
  145. package/dist/esm/ez-tabselector.entry.js +1 -1
  146. package/dist/esm/ez-text-area.entry.js +1 -1
  147. package/dist/esm/ez-text-input.entry.js +17 -3
  148. package/dist/esm/ez-time-input.entry.js +1 -1
  149. package/dist/esm/ez-toast.entry.js +1 -1
  150. package/dist/esm/ez-tooltip.entry.js +3 -3
  151. package/dist/esm/ez-tree.entry.js +1 -1
  152. package/dist/esm/ez-upload.entry.js +1 -1
  153. package/dist/esm/ez-view-stack.entry.js +1 -1
  154. package/dist/esm/ezui.js +3 -3
  155. package/dist/esm/filter-column.entry.js +1 -2
  156. package/dist/esm/{index-baa5e267.js → index-5a720e56.js} +7 -1
  157. package/dist/esm/loader.js +3 -3
  158. package/dist/esm/{DataBinder-1035e36f.js → search-column-35f4ad93.js} +26 -1
  159. package/dist/ezui/ezui.esm.js +1 -1
  160. package/dist/ezui/{p-e75c7a23.entry.js → p-000159dc.entry.js} +1 -1
  161. package/dist/ezui/p-01b72d7e.entry.js +1 -0
  162. package/dist/ezui/{p-44caad9a.entry.js → p-0378416a.entry.js} +1 -1
  163. package/dist/ezui/{p-288631d1.entry.js → p-06f1b8e4.entry.js} +1 -1
  164. package/dist/ezui/{p-d47dabdf.entry.js → p-07594da0.entry.js} +1 -1
  165. package/dist/ezui/{p-77a4bd35.entry.js → p-11bfeca3.entry.js} +1 -1
  166. package/dist/ezui/p-15d9cd15.entry.js +1 -0
  167. package/dist/ezui/p-175154a0.js +1 -0
  168. package/dist/ezui/{p-9c5cd3b2.entry.js → p-18e71523.entry.js} +1 -1
  169. package/dist/ezui/{p-2b4df33d.entry.js → p-1fefb37a.entry.js} +1 -1
  170. package/dist/ezui/{p-7e677b7b.entry.js → p-2069c78a.entry.js} +1 -1
  171. package/dist/ezui/p-28987410.entry.js +1 -0
  172. package/dist/ezui/p-2d10bb18.entry.js +1 -0
  173. package/dist/ezui/{p-e06a9886.entry.js → p-2f351332.entry.js} +1 -1
  174. package/dist/ezui/p-30ffb9ed.js +1 -0
  175. package/dist/ezui/{p-fa6732f2.entry.js → p-44b39e81.entry.js} +1 -1
  176. package/dist/ezui/p-4a876b8b.entry.js +1 -0
  177. package/dist/ezui/{p-03c106f6.entry.js → p-4e66eaeb.entry.js} +1 -1
  178. package/dist/ezui/{p-574b9e72.entry.js → p-682931aa.entry.js} +46 -46
  179. package/dist/ezui/p-6b2cc9b8.entry.js +1 -0
  180. package/dist/ezui/{p-496f7832.entry.js → p-6b3fddee.entry.js} +1 -1
  181. package/dist/ezui/{p-1f50fa05.entry.js → p-6b51c9cc.entry.js} +1 -1
  182. package/dist/ezui/p-6ec40dec.entry.js +1 -0
  183. package/dist/ezui/{p-5ed81457.entry.js → p-6fc26622.entry.js} +1 -1
  184. package/dist/ezui/p-700c1320.entry.js +1 -0
  185. package/dist/ezui/{p-da1b4a38.entry.js → p-708b196e.entry.js} +1 -1
  186. package/dist/ezui/{p-555c9018.entry.js → p-7567ccdd.entry.js} +1 -1
  187. package/dist/ezui/p-769632d5.entry.js +1 -0
  188. package/dist/ezui/{p-0bffeffc.entry.js → p-7ec3f335.entry.js} +1 -1
  189. package/dist/ezui/{p-1e7a8633.entry.js → p-81461d2f.entry.js} +1 -1
  190. package/dist/ezui/{p-8df1ca33.entry.js → p-82fa4b09.entry.js} +1 -1
  191. package/dist/ezui/{p-2872fd16.entry.js → p-87f5a060.entry.js} +1 -1
  192. package/dist/ezui/p-90c90351.entry.js +1 -0
  193. package/dist/ezui/{p-4bd6dd6a.entry.js → p-90e91173.entry.js} +1 -1
  194. package/dist/ezui/{p-09de35a2.entry.js → p-91ccae0c.entry.js} +1 -1
  195. package/dist/ezui/{p-bac0f920.entry.js → p-926a0bde.entry.js} +1 -1
  196. package/dist/ezui/{p-c0d9c4f8.entry.js → p-92748142.entry.js} +1 -1
  197. package/dist/ezui/{p-3ba9565c.entry.js → p-97d94ef3.entry.js} +1 -1
  198. package/dist/ezui/{p-e6a9041d.entry.js → p-9e95bfeb.entry.js} +1 -1
  199. package/dist/ezui/{p-cb75eb46.entry.js → p-a11827ca.entry.js} +1 -1
  200. package/dist/ezui/{p-bf9dec89.entry.js → p-b3b3c99a.entry.js} +1 -1
  201. package/dist/ezui/{p-9f5fa3f9.entry.js → p-c2b20f78.entry.js} +1 -1
  202. package/dist/ezui/{p-dc73e1fe.entry.js → p-c7035d65.entry.js} +1 -1
  203. package/dist/ezui/p-c8e6204f.entry.js +1 -0
  204. package/dist/ezui/{p-20c024f7.entry.js → p-cf33bc48.entry.js} +1 -1
  205. package/dist/ezui/{p-7019f782.entry.js → p-d2290004.entry.js} +1 -1
  206. package/dist/ezui/p-d4d6d5fe.entry.js +1 -0
  207. package/dist/ezui/p-da66838e.entry.js +1 -0
  208. package/dist/ezui/p-dd7d305a.entry.js +1 -0
  209. package/dist/ezui/{p-9567b31a.entry.js → p-ddb22a70.entry.js} +1 -1
  210. package/dist/ezui/p-ddd0bd61.entry.js +1 -0
  211. package/dist/ezui/{p-a80b1287.entry.js → p-dfca5946.entry.js} +1 -1
  212. package/dist/ezui/{p-b81881ac.entry.js → p-e195eaad.entry.js} +1 -1
  213. package/dist/ezui/p-e4ae4ddb.entry.js +1 -0
  214. package/dist/ezui/{p-23a36bb6.js → p-e4c7eb39.js} +2 -2
  215. package/dist/ezui/p-e4ead194.entry.js +1 -0
  216. package/dist/ezui/{p-0306dff7.entry.js → p-e6b38ade.entry.js} +1 -1
  217. package/dist/ezui/{p-6825bdc7.entry.js → p-ea053063.entry.js} +1 -1
  218. package/dist/ezui/{p-9478b13b.entry.js → p-ed48a632.entry.js} +1 -1
  219. package/dist/ezui/{p-6e429cff.entry.js → p-fc194825.entry.js} +1 -1
  220. package/dist/types/components/ez-avatar/ez-avatar.d.ts +24 -0
  221. package/dist/types/components/ez-dropdown/structure/DropdownItem.d.ts +4 -4
  222. package/dist/types/components/ez-form/ez-form.d.ts +18 -0
  223. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +9 -1
  224. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +3 -1
  225. package/dist/types/components/ez-grid/ez-grid.d.ts +12 -0
  226. package/dist/types/components/ez-icon/ez-icon.d.ts +5 -0
  227. package/dist/types/components/ez-popover-plus/subcomponent/ez-popover-core.d.ts +1 -3
  228. package/dist/types/components/ez-search/ez-search.d.ts +1 -0
  229. package/dist/types/components/ez-search/subcomponent/search-list/search-list.d.ts +6 -0
  230. package/dist/types/components/ez-search-plus/ez-search-plus.d.ts +8 -8
  231. package/dist/types/components/ez-skeleton/ez-skeleton.constants.d.ts +55 -1
  232. package/dist/types/components/ez-skeleton/ez-skeleton.d.ts +50 -22
  233. package/dist/types/components/ez-split-button/ez-split-button.d.ts +14 -2
  234. package/dist/types/components/ez-text-input/ez-text-input.d.ts +2 -0
  235. package/dist/types/components.d.ts +182 -24
  236. package/dist/types/utils/index.d.ts +1 -0
  237. package/dist/types/utils/searchColumn/search-column.d.ts +9 -0
  238. package/package.json +5 -4
  239. package/react/components.d.ts +1 -0
  240. package/react/components.js +1 -0
  241. package/react/components.js.map +1 -1
  242. package/dist/cjs/FormLayout-c2451c7f.js +0 -7
  243. package/dist/esm/FormLayout-54092963.js +0 -7
  244. package/dist/ezui/p-15ea0c98.js +0 -1
  245. package/dist/ezui/p-173f68ea.js +0 -1
  246. package/dist/ezui/p-4cf0aaeb.entry.js +0 -1
  247. package/dist/ezui/p-56fe5341.entry.js +0 -1
  248. package/dist/ezui/p-5895e687.js +0 -1
  249. package/dist/ezui/p-5a14f506.entry.js +0 -1
  250. package/dist/ezui/p-5ec0ae79.entry.js +0 -1
  251. package/dist/ezui/p-629d15ed.entry.js +0 -1
  252. package/dist/ezui/p-6754489a.entry.js +0 -1
  253. package/dist/ezui/p-6f4681f8.entry.js +0 -1
  254. package/dist/ezui/p-7742802c.entry.js +0 -1
  255. package/dist/ezui/p-a4cee65d.entry.js +0 -1
  256. package/dist/ezui/p-bc2f844e.entry.js +0 -1
  257. package/dist/ezui/p-c00df4be.entry.js +0 -1
  258. package/dist/ezui/p-ebd23857.entry.js +0 -1
  259. package/dist/ezui/p-ecaac11f.entry.js +0 -1
  260. package/dist/ezui/p-f4861c6a.entry.js +0 -1
  261. package/dist/ezui/p-f5a30e35.entry.js +0 -1
  262. package/dist/ezui/p-f6316720.entry.js +0 -1
@@ -0,0 +1,139 @@
1
+ :host {
2
+ /* Cores e outras definições */
3
+ --ez-avatar--background-color: var(--color--ocean-green-600, #008561);
4
+ --ez-avatar--color: var(--color--gray-70, #fff);
5
+ --ez-avatar--border-radius-circle: 50%;
6
+ --ez-avatar--border-radius-square: 25%;
7
+
8
+ /* Hover */
9
+ --ez-avatar--background-color-hover: var(--color--ocean-green-700, #00684C);
10
+
11
+ }
12
+
13
+ button,
14
+ figure {
15
+ display: flex;
16
+ align-items: center;
17
+ justify-content: center;
18
+ border: var(--ez-avatar--border);
19
+ background-color: var(--ez-avatar--background-color);
20
+ color: var(--ez-avatar--color);
21
+ font-weight: var(--font-weight--medium, 500);
22
+ font-family: var(--font-pattern, 'Roboto');
23
+ transition: background-color 0.2s linear, color 0.2s linear;
24
+ margin: 0;
25
+ padding: 0;
26
+ }
27
+
28
+ button:hover {
29
+ cursor: pointer;
30
+ background-color: var(--ez-avatar--background-color-hover);
31
+ }
32
+
33
+ /* Definindo o tamanho do avatar com variáveis
34
+ * A largura e altura do avatar são definidas em rem para manter a consistência e escalabilidade em relação ao --avatar-size.
35
+ * Por exemplo, width: 20rem significa que o avatar terá 20 vezes o tamanho base da fonte do root (normalmente 320px se a base for 16px).
36
+ */
37
+ .avatar--320 {
38
+ --avatar-size: 320px;
39
+ width: 20rem;
40
+ height: 20rem;
41
+ }
42
+ .avatar--300 {
43
+ --avatar-size: 300px;
44
+ width: 18.75rem;
45
+ height: 18.75rem;
46
+ }
47
+ .avatar--280 {
48
+ --avatar-size: 280px;
49
+ width: 17.5rem;
50
+ height: 17.5rem;
51
+ }
52
+ .avatar--260 {
53
+ --avatar-size: 260px;
54
+ width: 16.25rem;
55
+ height: 16.25rem;
56
+ }
57
+ .avatar--240 {
58
+ --avatar-size: 240px;
59
+ width: 15rem;
60
+ height: 15rem;
61
+ }
62
+ .avatar--220 {
63
+ --avatar-size: 220px;
64
+ width: 13.75rem;
65
+ height: 13.75rem;
66
+ }
67
+ .avatar--200 {
68
+ --avatar-size: 200px;
69
+ width: 12.5rem;
70
+ height: 12.5rem;
71
+ }
72
+ .avatar--180 {
73
+ --avatar-size: 180px;
74
+ width: 11.25rem;
75
+ height: 11.25rem;
76
+ }
77
+ .avatar--160 {
78
+ --avatar-size: 160px;
79
+ width: 10rem;
80
+ height: 10rem;
81
+ }
82
+ .avatar--140 {
83
+ --avatar-size: 140px;
84
+ width: 8.75rem;
85
+ height: 8.75rem;
86
+ }
87
+ .avatar--120 {
88
+ --avatar-size: 120px;
89
+ width: 7.5rem;
90
+ height: 7.5rem;
91
+ }
92
+ .avatar--100 {
93
+ --avatar-size: 100px;
94
+ width: 6.25rem;
95
+ height: 6.25rem;
96
+ }
97
+ .avatar--80 {
98
+ --avatar-size: 80px;
99
+ width: 5rem;
100
+ height: 5rem;
101
+ }
102
+ .avatar--60 {
103
+ --avatar-size: 60px;
104
+ width: 3.75rem;
105
+ height: 3.75rem;
106
+ }
107
+
108
+ /* Estilo para inicial do Avatar */
109
+ .avatar-initial {
110
+ font-size: calc(0.375 * var(--avatar-size)); /* 37.5% do tamanho do avatar. */
111
+ }
112
+
113
+ /* Classes de formato */
114
+ .avatar--circle {
115
+ border-radius: var(--ez-avatar--border-radius-circle);
116
+ }
117
+
118
+ .avatar--square {
119
+ border-radius: var(--ez-avatar--border-radius-square);
120
+ }
121
+
122
+ /* Estilo para imagens dentro do avatar */
123
+ .avatar-image {
124
+ width: 100%;
125
+ height: 100%;
126
+ object-fit: cover;
127
+ border-radius: inherit;
128
+ }
129
+
130
+ .avatar--has-image {
131
+ background-color: transparent;
132
+ }
133
+
134
+ ez-icon {
135
+ --ez-icon--color: var(--color--gray-70, #fff);
136
+
137
+ font-weight: var(--font-weight--medium, 500);
138
+ }
139
+
@@ -0,0 +1,143 @@
1
+ import { h } from '@stencil/core';
2
+ export class EzAvatar {
3
+ constructor() {
4
+ this.DECIMAL_PARSE_BASE = 10;
5
+ this.FONT_SIZE_BASE_CALC = 0.375;
6
+ this.name = undefined;
7
+ this.imageSrc = undefined;
8
+ this.size = '100';
9
+ this.shape = 'circle';
10
+ this.isInteractive = false;
11
+ }
12
+ /** Obtém a inicial do nome do usuário. */
13
+ getInitial() {
14
+ var _a;
15
+ return ((_a = this.name) === null || _a === void 0 ? void 0 : _a.trim()) ? this.name.charAt(0).toUpperCase() : '';
16
+ }
17
+ calcFontSize() {
18
+ const sizeNumber = parseInt(this.size, this.DECIMAL_PARSE_BASE);
19
+ return this.FONT_SIZE_BASE_CALC * sizeNumber;
20
+ }
21
+ getClass() {
22
+ return `avatar avatar--${this.size} avatar--${this.shape} ${this.imageSrc ? 'avatar--has-image' : ''}`;
23
+ }
24
+ renderAvatarContent() {
25
+ if (this.imageSrc) {
26
+ return h("img", { src: this.imageSrc, alt: this.name || 'Avatar', class: "avatar-image" });
27
+ }
28
+ if (this.name) {
29
+ return h("span", { class: "avatar-initial", "aria-hidden": "true" }, this.getInitial());
30
+ }
31
+ return h("ez-icon", { class: "avatar-icon", iconName: "account-outline", fontSize: this.calcFontSize() });
32
+ }
33
+ render() {
34
+ if (this.isInteractive) {
35
+ return (h("button", { "aria-label": "Perfil", class: this.getClass() }, this.renderAvatarContent()));
36
+ }
37
+ return (h("figure", { class: this.getClass() }, this.renderAvatarContent()));
38
+ }
39
+ static get is() { return "ez-avatar"; }
40
+ static get encapsulation() { return "shadow"; }
41
+ static get originalStyleUrls() {
42
+ return {
43
+ "$": ["ez-avatar.css"]
44
+ };
45
+ }
46
+ static get styleUrls() {
47
+ return {
48
+ "$": ["ez-avatar.css"]
49
+ };
50
+ }
51
+ static get properties() {
52
+ return {
53
+ "name": {
54
+ "type": "string",
55
+ "mutable": false,
56
+ "complexType": {
57
+ "original": "string",
58
+ "resolved": "string",
59
+ "references": {}
60
+ },
61
+ "required": false,
62
+ "optional": true,
63
+ "docs": {
64
+ "tags": [],
65
+ "text": "Nome do usu\u00E1rio para exibi\u00E7\u00E3o da inicial."
66
+ },
67
+ "attribute": "name",
68
+ "reflect": true
69
+ },
70
+ "imageSrc": {
71
+ "type": "string",
72
+ "mutable": false,
73
+ "complexType": {
74
+ "original": "string",
75
+ "resolved": "string",
76
+ "references": {}
77
+ },
78
+ "required": false,
79
+ "optional": true,
80
+ "docs": {
81
+ "tags": [],
82
+ "text": "URL da imagem do Avatar."
83
+ },
84
+ "attribute": "image-src",
85
+ "reflect": true
86
+ },
87
+ "size": {
88
+ "type": "string",
89
+ "mutable": false,
90
+ "complexType": {
91
+ "original": "'320' | '300' | '280' | '260' | '240' | '220' | '200' | '180' | '160' | '140' | '120' | '100' | '80' | '60'",
92
+ "resolved": "\"100\" | \"120\" | \"140\" | \"160\" | \"180\" | \"200\" | \"220\" | \"240\" | \"260\" | \"280\" | \"300\" | \"320\" | \"60\" | \"80\"",
93
+ "references": {}
94
+ },
95
+ "required": false,
96
+ "optional": false,
97
+ "docs": {
98
+ "tags": [],
99
+ "text": "Tamanho do Avatar (valores permitidos):\n'320x320', '300x300', '280x280', '260x260', '240x240', '220x220', '200x200',\n'180x180', '160x160', '140x140', '120x120', '100x100', '80x80', '60x60'."
100
+ },
101
+ "attribute": "size",
102
+ "reflect": true,
103
+ "defaultValue": "'100'"
104
+ },
105
+ "shape": {
106
+ "type": "string",
107
+ "mutable": false,
108
+ "complexType": {
109
+ "original": "'circle' | 'square'",
110
+ "resolved": "\"circle\" | \"square\"",
111
+ "references": {}
112
+ },
113
+ "required": false,
114
+ "optional": false,
115
+ "docs": {
116
+ "tags": [],
117
+ "text": "Define o formato do Avatar: 'circle' ou 'square'."
118
+ },
119
+ "attribute": "shape",
120
+ "reflect": true,
121
+ "defaultValue": "'circle'"
122
+ },
123
+ "isInteractive": {
124
+ "type": "boolean",
125
+ "mutable": false,
126
+ "complexType": {
127
+ "original": "boolean",
128
+ "resolved": "boolean",
129
+ "references": {}
130
+ },
131
+ "required": false,
132
+ "optional": false,
133
+ "docs": {
134
+ "tags": [],
135
+ "text": "Se true, o Avatar ser\u00E1 interativo. Caso contr\u00E1rio, ser\u00E1 est\u00E1tico."
136
+ },
137
+ "attribute": "is-interactive",
138
+ "reflect": true,
139
+ "defaultValue": "false"
140
+ }
141
+ };
142
+ }
143
+ }
@@ -106,8 +106,8 @@ button {
106
106
  }
107
107
 
108
108
  button:focus {
109
- outline: var(--ez-button--focus--border);
110
- box-shadow: none;
109
+ outline: none;
110
+ box-shadow: var(--ez-button--focus--box-shadow);
111
111
  }
112
112
 
113
113
  button:hover {
@@ -351,7 +351,7 @@ input.switch-mode:checked:disabled::after {
351
351
  font-family: var(--ez-check--label--font-family);
352
352
  cursor: default;
353
353
  width: inherit;
354
- display: flex;
354
+ display: block;
355
355
  align-content: center;
356
356
  gap: var(--space--small);
357
357
  }
@@ -48,6 +48,7 @@ ez-icon {
48
48
  display: flex;
49
49
  flex-direction: column;
50
50
  width: 100%;
51
+ overflow: hidden;
51
52
  }
52
53
 
53
54
 
@@ -98,7 +99,7 @@ ez-icon {
98
99
 
99
100
  .collapsible-box__label {
100
101
  /*private*/
101
- display: block;
102
+ display: flex;
102
103
  white-space: nowrap;
103
104
  overflow: hidden;
104
105
  cursor: pointer;
@@ -193,17 +193,17 @@ export class EzComboBox {
193
193
  }
194
194
  return 0;
195
195
  }
196
- showOptions() {
196
+ async showOptions() {
197
197
  var _a, _b;
198
198
  if (!this.enabled)
199
199
  return;
200
- this.openPopover();
200
+ await this.openPopover();
201
201
  const valueString = (_b = (_a = this.value) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : this.value;
202
202
  const indexValue = this._visibleOptions.findIndex(option => option.value === valueString);
203
203
  this._preSelection = indexValue === -1 ? 0 : indexValue;
204
204
  if (!!this._resizeObserver)
205
205
  this._resizeObserver.observe(this._textInput);
206
- this.setFocus();
206
+ await this.setFocus();
207
207
  }
208
208
  hideOptions() {
209
209
  var _a;
@@ -430,10 +430,10 @@ export class EzComboBox {
430
430
  canShowListOptions() {
431
431
  return !this._showLoading && this._visibleOptions.length > 0;
432
432
  }
433
- openPopover() {
433
+ async openPopover() {
434
434
  var _a;
435
435
  this.isOpen = true;
436
- (_a = this._popover) === null || _a === void 0 ? void 0 : _a.show();
436
+ await ((_a = this._popover) === null || _a === void 0 ? void 0 : _a.showUnder(this._textInput));
437
437
  }
438
438
  render() {
439
439
  var _a;
@@ -129,7 +129,7 @@ export class EzDropdown {
129
129
  return (h("div", { class: "ez-dropdown__item" }, h("ez-skeleton", { width: '200px' })));
130
130
  case "divider":
131
131
  return (h("hr", Object.assign({ class: "ez-dropdown__divider" }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: ElementIDUtils.getInternalIDInfo(`${item.id}_ezDropdownDivider`) })));
132
- case "item":
132
+ default:
133
133
  return (h("div", Object.assign({ ref: (ref) => this._itemList[item.id] = ref, class: "ez-dropdown__item", "data-level": level }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: ElementIDUtils.getInternalIDInfo(`${item.id}_ezDropdownItem`) }), h("div", { class: "ez-dropdown__item-content", onClick: (evt) => this.onItemClick(evt, item), onMouseOver: (evt) => this.onShowSubmenu(evt, item), onMouseEnter: () => this.ezHover.emit(item) }, this.itemBuilder
134
134
  ? this.getContainerItemBuilder(item, level, isLockedLevels, hasIcon, hasChildren)
135
135
  : this.defaultItemBuilder(item, isLockedLevels, hasIcon, hasChildren)), ((_a = item.children) === null || _a === void 0 ? void 0 : _a.length) > 0 &&
@@ -1,10 +1,12 @@
1
- import { Action, DataUnit, ElementIDUtils, StringUtils, ApplicationContext } from "@sankhyalabs/core";
1
+ import { Action, DataUnit, ElementIDUtils, StringUtils, ApplicationContext, KeyboardManager } from "@sankhyalabs/core";
2
2
  import { Host, forceUpdate, h } from "@stencil/core";
3
3
  import { createStore } from "redux";
4
4
  import DataBinder from "../../utils/form/DataBinder";
5
5
  import { buildFormMetadata } from "../../utils/form/FormMetadata";
6
6
  import { FormLayout } from '../../utils/form/interfaces';
7
7
  import { changeTab, formReducer, loadMetadata, selectCurrentSheet, selectFormMetadata } from "./store/form.slice";
8
+ import { buildFieldSearch } from "../../utils";
9
+ import { focusOnFieldSerch, LABEL_SEARCH_FIELD, SEARCH_FIELD_FULL_WIDTH, SHORTCUT_SEARCH_FIELD } from "../../utils/searchColumn/search-column";
8
10
  export class EzForm {
9
11
  constructor() {
10
12
  this._customEditors = new Map();
@@ -21,6 +23,8 @@ export class EzForm {
21
23
  this.recordsValidator = undefined;
22
24
  this.fieldToFocus = undefined;
23
25
  this.onlyStaticFields = false;
26
+ this.useSearchField = true;
27
+ this.elementFocusSearchField = undefined;
24
28
  }
25
29
  /**
26
30
  * Realiza validação no conteúdo de todos os campos.
@@ -78,7 +82,56 @@ export class EzForm {
78
82
  }
79
83
  this.ezFormSetFields.emit(fields);
80
84
  const idFormSheet = `${StringUtils.replaceAccentuatedChars(StringUtils.toCamelCase(currentSheet === null || currentSheet === void 0 ? void 0 : currentSheet.label), false)}_selectorContainer`;
81
- return (h("div", { class: "dynamic-content", "data-element-id": idFormSheet }, h("ez-form-view", { ref: (element) => (this._formView = element), class: "ez-row ez-padding-vertical--small", fields: fields, singleColumn: this._singleColumn, selectedRecord: this.dataUnit.getSelectedRecord() })));
85
+ return (h("div", { class: "dynamic-content ez-box--no-outline", "data-element-id": idFormSheet, ref: elem => (this._container = elem), tabindex: "0" }, h("ez-popover", { ref: elem => (this._ezPopoverSearchField = elem), overlayType: "none" }, this.renderFieldColumn()), h("ez-form-view", { ref: (element) => (this._formView = element), class: "ez-row ez-padding-vertical--small", fields: fields, singleColumn: this._singleColumn, selectedRecord: this.dataUnit.getSelectedRecord() })));
86
+ }
87
+ renderFieldColumn() {
88
+ if (this._fieldSearch != undefined) {
89
+ return this._fieldSearch;
90
+ }
91
+ this._fieldSearch = buildFieldSearch({
92
+ value: StringUtils.generateUUID(),
93
+ label: LABEL_SEARCH_FIELD,
94
+ }, ({ argument }) => this.fieldsOptionLoader(argument), (option) => this.onSelectField(option));
95
+ return this._fieldSearch;
96
+ }
97
+ getFormFields() {
98
+ var _a;
99
+ return (_a = this.config) === null || _a === void 0 ? void 0 : _a.fields;
100
+ }
101
+ fieldsOptionLoader(argument) {
102
+ const searchTerm = argument === null || argument === void 0 ? void 0 : argument.toLowerCase();
103
+ const allFields = this.getFormFields().map(field => { var _a; return (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.getField(field.name); });
104
+ const filteredFields = allFields.filter(field => {
105
+ var _a, _b;
106
+ return ((_a = field.name) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes(searchTerm)) ||
107
+ ((_b = field.label) === null || _b === void 0 ? void 0 : _b.toLowerCase().includes(searchTerm));
108
+ });
109
+ const options = filteredFields.map(field => ({ value: field.name, label: field.label }));
110
+ return Promise.resolve(options);
111
+ }
112
+ onSelectField(option) {
113
+ if (option == undefined || option.value == undefined) {
114
+ this.fieldToFocus = "";
115
+ return;
116
+ }
117
+ this.fieldToFocus = option.value;
118
+ this._ezPopoverSearchField.hide();
119
+ }
120
+ async initKeyboardManager() {
121
+ var _a, _b;
122
+ this._keyboardManager = new KeyboardManager({ propagate: false, element: (_a = this.elementFocusSearchField) !== null && _a !== void 0 ? _a : this._element });
123
+ if (this.useSearchField) {
124
+ this._keyboardManager.bind(SHORTCUT_SEARCH_FIELD, async () => {
125
+ if (!this._container || !this._ezPopoverSearchField)
126
+ return;
127
+ const container = this._container.getBoundingClientRect();
128
+ await focusOnFieldSerch(this._fieldSearch);
129
+ this._ezPopoverSearchField.showUnder(this._container, { horizontalGap: container.width - (SEARCH_FIELD_FULL_WIDTH), verticalGap: container.height * -1 });
130
+ }, { description: LABEL_SEARCH_FIELD, element: (_b = this.elementFocusSearchField) !== null && _b !== void 0 ? _b : this._element });
131
+ }
132
+ }
133
+ componentDidLoad() {
134
+ this.initKeyboardManager();
82
135
  }
83
136
  processMetadata() {
84
137
  if (this.bindFields() && this.dataUnit && this._store) {
@@ -161,6 +214,7 @@ export class EzForm {
161
214
  requestAnimationFrame(() => {
162
215
  this._dataBinder.setFocus(this.fieldToFocus);
163
216
  this.ezFormRequestClearFieldToFocus.emit();
217
+ this.fieldToFocus = null;
164
218
  });
165
219
  }
166
220
  setFieldsProps() {
@@ -175,8 +229,10 @@ export class EzForm {
175
229
  }
176
230
  }
177
231
  disconnectedCallback() {
232
+ var _a;
178
233
  this.dataUnit.unsubscribe(this.onDataUnitAction);
179
234
  this._dataBinder.onDisconnectedCallback();
235
+ (_a = this._keyboardManager) === null || _a === void 0 ? void 0 : _a.unbindAllShortcutKeys();
180
236
  }
181
237
  buildIdTabSelector(tabs) {
182
238
  if (tabs) {
@@ -295,6 +351,43 @@ export class EzForm {
295
351
  "attribute": "only-static-fields",
296
352
  "reflect": false,
297
353
  "defaultValue": "false"
354
+ },
355
+ "useSearchField": {
356
+ "type": "boolean",
357
+ "mutable": false,
358
+ "complexType": {
359
+ "original": "boolean",
360
+ "resolved": "boolean",
361
+ "references": {}
362
+ },
363
+ "required": false,
364
+ "optional": false,
365
+ "docs": {
366
+ "tags": [],
367
+ "text": "Define se o formulario deve exibir um buscador de coluna com uso do Ctrl+F"
368
+ },
369
+ "attribute": "use-search-field",
370
+ "reflect": false,
371
+ "defaultValue": "true"
372
+ },
373
+ "elementFocusSearchField": {
374
+ "type": "unknown",
375
+ "mutable": false,
376
+ "complexType": {
377
+ "original": "HTMLElement",
378
+ "resolved": "HTMLElement",
379
+ "references": {
380
+ "HTMLElement": {
381
+ "location": "global"
382
+ }
383
+ }
384
+ },
385
+ "required": false,
386
+ "optional": false,
387
+ "docs": {
388
+ "tags": [],
389
+ "text": "Define uma ancoragem"
390
+ }
298
391
  }
299
392
  };
300
393
  }
@@ -65,8 +65,25 @@ export default class AgGridController {
65
65
  getGridConfig() {
66
66
  return this._gridConfig;
67
67
  }
68
- locateColumn(columnName) {
68
+ locateColumn(columnName, gridElement) {
69
69
  this._gridOptions.api.ensureColumnVisible(columnName);
70
+ requestAnimationFrame(() => {
71
+ this.highlightColumnHeader(columnName, gridElement);
72
+ });
73
+ }
74
+ highlightColumnHeader(columnName, gridElement) {
75
+ const headerElement = gridElement.querySelector(`.ag-header-cell[col-id="${columnName}"]`);
76
+ if (!headerElement)
77
+ return;
78
+ headerElement.classList.add("ez-grid__column-highlight-header");
79
+ headerElement.setAttribute("tabindex", "0");
80
+ const removeHighlight = (event) => {
81
+ if (!headerElement.contains(event.target)) {
82
+ headerElement.classList.remove("ez-grid__column-highlight-header");
83
+ document.removeEventListener("click", removeHighlight);
84
+ }
85
+ };
86
+ document.addEventListener("click", removeHighlight);
70
87
  }
71
88
  getSort(_dataUnitName, defaultSorting) {
72
89
  const sortedColumns = [];
@@ -163,6 +180,7 @@ export default class AgGridController {
163
180
  this._dataUnit.addFilterProvider(this);
164
181
  }
165
182
  this._gridOptions = {
183
+ suppressHorizontalScroll: options.suppressHorizontalScroll,
166
184
  localeText: gridTerms,
167
185
  enableRangeSelection: this._multipleSelection,
168
186
  rowSelection: this._multipleSelection ? 'multiple' : 'single',
@@ -752,6 +770,9 @@ export default class AgGridController {
752
770
  });
753
771
  return sortedColumnDefs;
754
772
  }
773
+ clearRangeSelection() {
774
+ this._gridOptions.api.clearRangeSelection();
775
+ }
755
776
  hideSelectionColumn() {
756
777
  var _a, _b;
757
778
  (_b = (_a = this._gridOptions) === null || _a === void 0 ? void 0 : _a.columnApi) === null || _b === void 0 ? void 0 : _b.setColumnVisible(this.CHECK_BOX_COL_ID, false);
@@ -1208,8 +1229,10 @@ export default class AgGridController {
1208
1229
  return cfgColumn.customWidth;
1209
1230
  }
1210
1231
  if (cfgColumn.width != undefined && !isNaN(cfgColumn.width)) {
1232
+ const parseWidth = parseInt(cfgColumn.width);
1211
1233
  // TODO: Valor somado devido a divergência do tamanho das fontes entre HTML5 e Design System.
1212
- return parseInt(cfgColumn.width) + this.DEFAULT_FONT_SIZE_HTML5;
1234
+ if (parseWidth > 0)
1235
+ return parseWidth + this.DEFAULT_FONT_SIZE_HTML5;
1213
1236
  }
1214
1237
  const field = (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.getField(cfgColumn.name);
1215
1238
  const label = (_b = field === null || field === void 0 ? void 0 : field.label) !== null && _b !== void 0 ? _b : (_f = (_e = (_d = (_c = this._gridOptions) === null || _c === void 0 ? void 0 : _c.columnApi) === null || _d === void 0 ? void 0 : _d.getColumn(cfgColumn.name)) === null || _e === void 0 ? void 0 : _e.getColDef()) === null || _f === void 0 ? void 0 : _f.headerName;
@@ -65,6 +65,14 @@
65
65
  border-radius: var(--border--radius-small);
66
66
  }
67
67
 
68
+ .grid__container.no-scroll{
69
+ width: 100vw;
70
+ }
71
+
72
+ :host(:not([no-header])) .grid__container {
73
+ border: none;
74
+ }
75
+
68
76
  .grid__container.outline-mode {
69
77
  /*public*/
70
78
  box-shadow: var(--ez-grid__container--shadow--outline);