@sankhyalabs/ezui 6.6.0-dev.1 → 6.6.0-dev.2

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 (252) hide show
  1. package/dist/cjs/ez-actions-button.cjs.entry.js +1 -1
  2. package/dist/cjs/ez-alert-list.cjs.entry.js +1 -1
  3. package/dist/cjs/ez-alert.cjs.entry.js +1 -1
  4. package/dist/cjs/ez-application.cjs.entry.js +1 -1
  5. package/dist/cjs/ez-avatar.cjs.entry.js +1 -1
  6. package/dist/cjs/ez-badge.cjs.entry.js +1 -1
  7. package/dist/cjs/ez-breadcrumb.cjs.entry.js +1 -1
  8. package/dist/cjs/ez-button.cjs.entry.js +1 -1
  9. package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
  10. package/dist/cjs/ez-card-item.cjs.entry.js +1 -1
  11. package/dist/cjs/ez-chart.cjs.entry.js +1 -1
  12. package/dist/cjs/ez-check.cjs.entry.js +1 -1
  13. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  14. package/dist/cjs/ez-classic-combo-box.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-classic-input.cjs.entry.js +1 -1
  16. package/dist/cjs/ez-classic-text-area.cjs.entry.js +1 -1
  17. package/dist/cjs/ez-collapsible-box.cjs.entry.js +1 -1
  18. package/dist/cjs/ez-combo-box-list_4.cjs.entry.js +2 -2
  19. package/dist/cjs/ez-combo-box.cjs.entry.js +1 -1
  20. package/dist/cjs/ez-date-input.cjs.entry.js +1 -1
  21. package/dist/cjs/ez-date-time-input.cjs.entry.js +1 -1
  22. package/dist/cjs/ez-dialog.cjs.entry.js +1 -1
  23. package/dist/cjs/ez-double-list.cjs.entry.js +1 -1
  24. package/dist/cjs/ez-dropdown.cjs.entry.js +1 -1
  25. package/dist/cjs/ez-empty-card.cjs.entry.js +1 -1
  26. package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
  27. package/dist/cjs/ez-filter-input.cjs.entry.js +1 -1
  28. package/dist/cjs/ez-form-view.cjs.entry.js +1 -1
  29. package/dist/cjs/ez-form.cjs.entry.js +2 -2
  30. package/dist/cjs/ez-grid-view.cjs.entry.js +190 -0
  31. package/dist/cjs/ez-grid.cjs.entry.js +4 -2
  32. package/dist/cjs/ez-guide-navigator.cjs.entry.js +1 -1
  33. package/dist/cjs/ez-icon.cjs.entry.js +1 -1
  34. package/dist/cjs/ez-link-builder_6.cjs.entry.js +1 -1
  35. package/dist/cjs/ez-list-item.cjs.entry.js +1 -1
  36. package/dist/cjs/ez-list.cjs.entry.js +1 -1
  37. package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
  38. package/dist/cjs/ez-modal-container.cjs.entry.js +1 -1
  39. package/dist/cjs/ez-modal.cjs.entry.js +1 -1
  40. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +1 -1
  41. package/dist/cjs/ez-number-input.cjs.entry.js +1 -1
  42. package/dist/cjs/ez-pagination.cjs.entry.js +1 -1
  43. package/dist/cjs/ez-popover-core.cjs.entry.js +1 -1
  44. package/dist/cjs/ez-popover-plus_3.cjs.entry.js +1 -1
  45. package/dist/cjs/ez-popover.cjs.entry.js +1 -1
  46. package/dist/cjs/ez-popup.cjs.entry.js +1 -1
  47. package/dist/cjs/ez-progress-bar.cjs.entry.js +1 -1
  48. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  49. package/dist/cjs/ez-rich-toolbar-item.cjs.entry.js +1 -1
  50. package/dist/cjs/ez-scroller_2.cjs.entry.js +1 -1
  51. package/dist/cjs/ez-search-plus.cjs.entry.js +1 -1
  52. package/dist/cjs/ez-search-result-list.cjs.entry.js +1 -1
  53. package/dist/cjs/ez-search.cjs.entry.js +1 -1
  54. package/dist/cjs/ez-sidebar-navigator.cjs.entry.js +1 -1
  55. package/dist/cjs/ez-skeleton.cjs.entry.js +1 -1
  56. package/dist/cjs/ez-sortable-list.cjs.entry.js +1 -1
  57. package/dist/cjs/ez-spinner.cjs.entry.js +1 -1
  58. package/dist/cjs/ez-split-button.cjs.entry.js +1 -1
  59. package/dist/cjs/ez-split-item.cjs.entry.js +1 -1
  60. package/dist/cjs/ez-split-panel.cjs.entry.js +1 -1
  61. package/dist/cjs/ez-tabselector.cjs.entry.js +1 -1
  62. package/dist/cjs/ez-tag-input.cjs.entry.js +1 -1
  63. package/dist/cjs/ez-tag.cjs.entry.js +1 -1
  64. package/dist/cjs/ez-text-area.cjs.entry.js +1 -1
  65. package/dist/cjs/ez-text-input.cjs.entry.js +1 -1
  66. package/dist/cjs/ez-tile-medium.cjs.entry.js +1 -1
  67. package/dist/cjs/ez-tile.cjs.entry.js +1 -1
  68. package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
  69. package/dist/cjs/ez-toast.cjs.entry.js +1 -1
  70. package/dist/cjs/ez-tooltip.cjs.entry.js +1 -1
  71. package/dist/cjs/ez-tree.cjs.entry.js +1 -1
  72. package/dist/cjs/ez-underface.cjs.entry.js +1 -1
  73. package/dist/cjs/ez-upload.cjs.entry.js +1 -1
  74. package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
  75. package/dist/cjs/ezui.cjs.js +2 -2
  76. package/dist/cjs/filter-column.cjs.entry.js +1 -1
  77. package/dist/cjs/{index-a7b0c73d.js → index-9e5554cb.js} +15 -8
  78. package/dist/cjs/loader.cjs.js +2 -2
  79. package/dist/cjs/{search-column-a9082ff9.js → search-column-eee8d44d.js} +1 -1
  80. package/dist/collection/collection-manifest.json +6 -0
  81. package/dist/collection/components/ez-grid/ez-grid.js +16 -0
  82. package/dist/collection/components/ez-grid-view/ez-grid-view.css +0 -0
  83. package/dist/collection/components/ez-grid-view/ez-grid-view.js +736 -0
  84. package/dist/custom-elements/index.d.ts +6 -0
  85. package/dist/custom-elements/index.js +189 -2
  86. package/dist/esm/ez-actions-button.entry.js +1 -1
  87. package/dist/esm/ez-alert-list.entry.js +1 -1
  88. package/dist/esm/ez-alert.entry.js +1 -1
  89. package/dist/esm/ez-application.entry.js +1 -1
  90. package/dist/esm/ez-avatar.entry.js +1 -1
  91. package/dist/esm/ez-badge.entry.js +1 -1
  92. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  93. package/dist/esm/ez-button.entry.js +1 -1
  94. package/dist/esm/ez-calendar.entry.js +1 -1
  95. package/dist/esm/ez-card-item.entry.js +1 -1
  96. package/dist/esm/ez-chart.entry.js +1 -1
  97. package/dist/esm/ez-check.entry.js +1 -1
  98. package/dist/esm/ez-chip.entry.js +1 -1
  99. package/dist/esm/ez-classic-combo-box.entry.js +1 -1
  100. package/dist/esm/ez-classic-input.entry.js +1 -1
  101. package/dist/esm/ez-classic-text-area.entry.js +1 -1
  102. package/dist/esm/ez-collapsible-box.entry.js +1 -1
  103. package/dist/esm/ez-combo-box-list_4.entry.js +2 -2
  104. package/dist/esm/ez-combo-box.entry.js +1 -1
  105. package/dist/esm/ez-date-input.entry.js +1 -1
  106. package/dist/esm/ez-date-time-input.entry.js +1 -1
  107. package/dist/esm/ez-dialog.entry.js +1 -1
  108. package/dist/esm/ez-double-list.entry.js +1 -1
  109. package/dist/esm/ez-dropdown.entry.js +1 -1
  110. package/dist/esm/ez-empty-card.entry.js +1 -1
  111. package/dist/esm/ez-file-item.entry.js +1 -1
  112. package/dist/esm/ez-filter-input.entry.js +1 -1
  113. package/dist/esm/ez-form-view.entry.js +1 -1
  114. package/dist/esm/ez-form.entry.js +2 -2
  115. package/dist/esm/ez-grid-view.entry.js +186 -0
  116. package/dist/esm/ez-grid.entry.js +4 -2
  117. package/dist/esm/ez-guide-navigator.entry.js +1 -1
  118. package/dist/esm/ez-icon.entry.js +1 -1
  119. package/dist/esm/ez-link-builder_6.entry.js +1 -1
  120. package/dist/esm/ez-list-item.entry.js +1 -1
  121. package/dist/esm/ez-list.entry.js +1 -1
  122. package/dist/esm/ez-loading-bar.entry.js +1 -1
  123. package/dist/esm/ez-modal-container.entry.js +1 -1
  124. package/dist/esm/ez-modal.entry.js +1 -1
  125. package/dist/esm/ez-multi-selection-list.entry.js +1 -1
  126. package/dist/esm/ez-number-input.entry.js +1 -1
  127. package/dist/esm/ez-pagination.entry.js +1 -1
  128. package/dist/esm/ez-popover-core.entry.js +1 -1
  129. package/dist/esm/ez-popover-plus_3.entry.js +1 -1
  130. package/dist/esm/ez-popover.entry.js +1 -1
  131. package/dist/esm/ez-popup.entry.js +1 -1
  132. package/dist/esm/ez-progress-bar.entry.js +1 -1
  133. package/dist/esm/ez-radio-button.entry.js +1 -1
  134. package/dist/esm/ez-rich-toolbar-item.entry.js +1 -1
  135. package/dist/esm/ez-scroller_2.entry.js +1 -1
  136. package/dist/esm/ez-search-plus.entry.js +1 -1
  137. package/dist/esm/ez-search-result-list.entry.js +1 -1
  138. package/dist/esm/ez-search.entry.js +1 -1
  139. package/dist/esm/ez-sidebar-navigator.entry.js +1 -1
  140. package/dist/esm/ez-skeleton.entry.js +1 -1
  141. package/dist/esm/ez-sortable-list.entry.js +1 -1
  142. package/dist/esm/ez-spinner.entry.js +1 -1
  143. package/dist/esm/ez-split-button.entry.js +1 -1
  144. package/dist/esm/ez-split-item.entry.js +1 -1
  145. package/dist/esm/ez-split-panel.entry.js +1 -1
  146. package/dist/esm/ez-tabselector.entry.js +1 -1
  147. package/dist/esm/ez-tag-input.entry.js +1 -1
  148. package/dist/esm/ez-tag.entry.js +1 -1
  149. package/dist/esm/ez-text-area.entry.js +1 -1
  150. package/dist/esm/ez-text-input.entry.js +1 -1
  151. package/dist/esm/ez-tile-medium.entry.js +1 -1
  152. package/dist/esm/ez-tile.entry.js +1 -1
  153. package/dist/esm/ez-time-input.entry.js +1 -1
  154. package/dist/esm/ez-toast.entry.js +1 -1
  155. package/dist/esm/ez-tooltip.entry.js +1 -1
  156. package/dist/esm/ez-tree.entry.js +1 -1
  157. package/dist/esm/ez-underface.entry.js +1 -1
  158. package/dist/esm/ez-upload.entry.js +1 -1
  159. package/dist/esm/ez-view-stack.entry.js +1 -1
  160. package/dist/esm/ezui.js +3 -3
  161. package/dist/esm/filter-column.entry.js +1 -1
  162. package/dist/esm/{index-baa5e267.js → index-5a720e56.js} +15 -9
  163. package/dist/esm/loader.js +3 -3
  164. package/dist/esm/{search-column-78d0ba11.js → search-column-56b69bf7.js} +1 -1
  165. package/dist/ezui/ezui.esm.js +1 -1
  166. package/dist/ezui/{p-e75c7a23.entry.js → p-000159dc.entry.js} +1 -1
  167. package/dist/ezui/{p-44caad9a.entry.js → p-0378416a.entry.js} +1 -1
  168. package/dist/ezui/{p-93e1c917.entry.js → p-05e68ab3.entry.js} +1 -1
  169. package/dist/ezui/{p-3bf7f94b.entry.js → p-06ed5e57.entry.js} +1 -1
  170. package/dist/ezui/{p-288631d1.entry.js → p-06f1b8e4.entry.js} +1 -1
  171. package/dist/ezui/{p-b989a33e.entry.js → p-09c2e631.entry.js} +1 -1
  172. package/dist/ezui/{p-18384b91.entry.js → p-0aed37a1.entry.js} +1 -1
  173. package/dist/ezui/{p-6d596a5a.entry.js → p-0b531233.entry.js} +1 -1
  174. package/dist/ezui/p-14d6aeb8.entry.js +1 -0
  175. package/dist/ezui/{p-6f77a359.entry.js → p-1723f728.entry.js} +1 -1
  176. package/dist/ezui/{p-2c21b2b6.entry.js → p-172abd0f.entry.js} +1 -1
  177. package/dist/ezui/{p-9b215871.entry.js → p-1857cfc0.entry.js} +1 -1
  178. package/dist/ezui/{p-358f6df9.entry.js → p-1c29ed5d.entry.js} +1 -1
  179. package/dist/ezui/{p-79abad9e.entry.js → p-2000464a.entry.js} +1 -1
  180. package/dist/ezui/{p-d79954ad.js → p-20cb76e7.js} +1 -1
  181. package/dist/ezui/{p-603ef267.entry.js → p-3234f883.entry.js} +1 -1
  182. package/dist/ezui/{p-95ae6281.entry.js → p-4177cec6.entry.js} +1 -1
  183. package/dist/ezui/{p-05c32903.entry.js → p-4463db7b.entry.js} +1 -1
  184. package/dist/ezui/{p-fa6732f2.entry.js → p-44b39e81.entry.js} +1 -1
  185. package/dist/ezui/{p-d6bb930d.entry.js → p-4837f475.entry.js} +1 -1
  186. package/dist/ezui/{p-4d30b703.entry.js → p-4a876b8b.entry.js} +1 -1
  187. package/dist/ezui/{p-f1de2cd6.entry.js → p-4b444fe9.entry.js} +1 -1
  188. package/dist/ezui/{p-3ce867cf.entry.js → p-4ca4d920.entry.js} +1 -1
  189. package/dist/ezui/{p-6ca0815e.entry.js → p-4f72c118.entry.js} +1 -1
  190. package/dist/ezui/{p-6369a0cd.entry.js → p-51e34317.entry.js} +1 -1
  191. package/dist/ezui/{p-48effc69.entry.js → p-570cf58a.entry.js} +1 -1
  192. package/dist/ezui/{p-dee18824.entry.js → p-5f4a66ec.entry.js} +1 -1
  193. package/dist/ezui/{p-1f50fa05.entry.js → p-6b51c9cc.entry.js} +1 -1
  194. package/dist/ezui/{p-721fd999.entry.js → p-6b6efa30.entry.js} +1 -1
  195. package/dist/ezui/{p-859e3134.entry.js → p-6dbf8f75.entry.js} +1 -1
  196. package/dist/ezui/p-6ec40dec.entry.js +1 -0
  197. package/dist/ezui/{p-5ed81457.entry.js → p-6fc26622.entry.js} +1 -1
  198. package/dist/ezui/{p-a4083a7a.entry.js → p-71c55a72.entry.js} +1 -1
  199. package/dist/ezui/{p-d6f50207.entry.js → p-770cf2b8.entry.js} +1 -1
  200. package/dist/ezui/{p-54c63f4d.entry.js → p-7820c5c0.entry.js} +1 -1
  201. package/dist/ezui/{p-91c9d50e.entry.js → p-78e975b4.entry.js} +1 -1
  202. package/dist/ezui/{p-1e7a8633.entry.js → p-81461d2f.entry.js} +1 -1
  203. package/dist/ezui/{p-8df1ca33.entry.js → p-82fa4b09.entry.js} +1 -1
  204. package/dist/ezui/{p-d7335fc9.entry.js → p-8bc350de.entry.js} +1 -1
  205. package/dist/ezui/{p-d52443f3.entry.js → p-8ca90a5e.entry.js} +1 -1
  206. package/dist/ezui/{p-1f8775ef.entry.js → p-8ea2a2f5.entry.js} +1 -1
  207. package/dist/ezui/{p-4314f87a.entry.js → p-8f0ed69d.entry.js} +1 -1
  208. package/dist/ezui/{p-a3075f52.entry.js → p-9bcfa689.entry.js} +1 -1
  209. package/dist/ezui/{p-3edbcc2c.entry.js → p-a5f5da25.entry.js} +1 -1
  210. package/dist/ezui/p-a646b54e.entry.js +1 -0
  211. package/dist/ezui/{p-39761eca.entry.js → p-a8eadb43.entry.js} +1 -1
  212. package/dist/ezui/{p-d6742c1e.entry.js → p-a9432878.entry.js} +1 -1
  213. package/dist/ezui/{p-b54da462.entry.js → p-aceeb4cc.entry.js} +2 -2
  214. package/dist/ezui/{p-9b3f3c02.entry.js → p-ad7c01c1.entry.js} +1 -1
  215. package/dist/ezui/{p-d5eb2fad.entry.js → p-b2ce629f.entry.js} +1 -1
  216. package/dist/ezui/{p-8803e321.entry.js → p-b6a8112c.entry.js} +1 -1
  217. package/dist/ezui/{p-7fe97ef5.entry.js → p-b7c6ce20.entry.js} +1 -1
  218. package/dist/ezui/{p-a0bf1fc7.entry.js → p-bc693db6.entry.js} +1 -1
  219. package/dist/ezui/{p-7f37ee99.entry.js → p-c291d6a0.entry.js} +1 -1
  220. package/dist/ezui/{p-9f5fa3f9.entry.js → p-c2b20f78.entry.js} +1 -1
  221. package/dist/ezui/{p-23739494.entry.js → p-c3ff0370.entry.js} +1 -1
  222. package/dist/ezui/{p-6020f3d5.entry.js → p-c754774e.entry.js} +1 -1
  223. package/dist/ezui/{p-d2645bdf.entry.js → p-c96e536d.entry.js} +1 -1
  224. package/dist/ezui/{p-34a476a9.entry.js → p-c9d70dab.entry.js} +1 -1
  225. package/dist/ezui/{p-20c024f7.entry.js → p-cf33bc48.entry.js} +1 -1
  226. package/dist/ezui/{p-0e49c0ff.entry.js → p-cf4e2a35.entry.js} +1 -1
  227. package/dist/ezui/{p-0f7971cf.entry.js → p-d1765c77.entry.js} +1 -1
  228. package/dist/ezui/{p-9b2e6438.entry.js → p-d3779449.entry.js} +1 -1
  229. package/dist/ezui/{p-37cb56d2.entry.js → p-d9d759bd.entry.js} +1 -1
  230. package/dist/ezui/{p-a35a5a11.entry.js → p-dd46153f.entry.js} +1 -1
  231. package/dist/ezui/{p-ce0b36d7.entry.js → p-df5b5c3d.entry.js} +1 -1
  232. package/dist/ezui/{p-a80b1287.entry.js → p-dfca5946.entry.js} +1 -1
  233. package/dist/ezui/{p-7f792043.entry.js → p-e195eaad.entry.js} +1 -1
  234. package/dist/ezui/{p-23a36bb6.js → p-e4c7eb39.js} +2 -2
  235. package/dist/ezui/{p-6c51ccd1.entry.js → p-e6eaa5ed.entry.js} +1 -1
  236. package/dist/ezui/{p-e7a7c594.entry.js → p-e9b409c1.entry.js} +1 -1
  237. package/dist/ezui/{p-79044c3e.entry.js → p-ea053063.entry.js} +1 -1
  238. package/dist/ezui/{p-a3ada561.entry.js → p-f26b97e9.entry.js} +1 -1
  239. package/dist/ezui/p-f7ca8634.entry.js +1 -0
  240. package/dist/ezui/{p-5c3a6717.entry.js → p-fcdc8089.entry.js} +1 -1
  241. package/dist/ezui/{p-14ceb733.entry.js → p-feea8ad8.entry.js} +1 -1
  242. package/dist/ezui/{p-3afa1c6e.entry.js → p-ffdf68cd.entry.js} +1 -1
  243. package/dist/types/components/ez-grid/ez-grid.d.ts +4 -0
  244. package/dist/types/components/ez-grid-view/ez-grid-view.d.ts +141 -0
  245. package/dist/types/components.d.ts +184 -2
  246. package/package.json +1 -1
  247. package/react/components.d.ts +1 -0
  248. package/react/components.js +1 -0
  249. package/react/components.js.map +1 -1
  250. package/dist/ezui/p-bc2f844e.entry.js +0 -1
  251. package/dist/ezui/p-d8cc640d.entry.js +0 -1
  252. package/dist/ezui/p-e0703190.entry.js +0 -1
@@ -0,0 +1,736 @@
1
+ import { h } from '@stencil/core';
2
+ import { DataUnitInMemoryLoader, RECORD_DATE_FORMAT, } from '@sankhyalabs/core';
3
+ export class EzGridView {
4
+ constructor() {
5
+ this.inMemoryLoader = undefined;
6
+ this.metadata = undefined;
7
+ this.records = undefined;
8
+ this.columnsConfig = undefined;
9
+ this.pageSize = 150;
10
+ this.recordDateFormat = RECORD_DATE_FORMAT.DD_MM_YYYY;
11
+ this.multipleSelection = false;
12
+ this.autoFocus = true;
13
+ this.paginationCounterMode = 'auto';
14
+ this.suppressCheckboxColumn = false;
15
+ this.suppressFilterColumn = false;
16
+ this.outlineMode = false;
17
+ this.enableRowTableStriped = true;
18
+ this.compact = false;
19
+ this.useSearchColumn = true;
20
+ this.suppressHorizontalScroll = false;
21
+ }
22
+ /**
23
+ * Obtém o DataUnit da grade.
24
+ */
25
+ async getDataUnit() {
26
+ if (!this.hasValidDependencies())
27
+ return;
28
+ this.ensureInMemoryLoaderExists();
29
+ return this.inMemoryLoader.dataUnit;
30
+ }
31
+ /**
32
+ * Recarrega os registros da grade.
33
+ */
34
+ async refresh() {
35
+ await this.inMemoryLoader.dataUnit.loadData();
36
+ }
37
+ /**
38
+ * Obtém as linhas selecionadas.
39
+ */
40
+ async getSelection() {
41
+ var _a;
42
+ return (_a = this._gridRef) === null || _a === void 0 ? void 0 : _a.getSelection();
43
+ }
44
+ /**
45
+ * Aplica um filtro rápido.
46
+ */
47
+ async quickFilter(term) {
48
+ var _a;
49
+ await ((_a = this._gridRef) === null || _a === void 0 ? void 0 : _a.quickFilter(term));
50
+ }
51
+ /**
52
+ * Localiza determinada coluna tornando-a visível.
53
+ */
54
+ async locateColumn(columnName) {
55
+ var _a;
56
+ await ((_a = this._gridRef) === null || _a === void 0 ? void 0 : _a.locateColumn(columnName));
57
+ }
58
+ /**
59
+ * Usa um argumento para filtrar as colunas por label
60
+ */
61
+ async filterColumns(search) {
62
+ var _a;
63
+ return (_a = this._gridRef) === null || _a === void 0 ? void 0 : _a.filterColumns(search);
64
+ }
65
+ /**
66
+ * Adiciona item de menu nas colunas.
67
+ */
68
+ async addColumnMenuItem(label, name, action, icon) {
69
+ await this._gridRef.addColumnMenuItem(label, name, action, icon);
70
+ }
71
+ /**
72
+ * Registra um formatador de valores para uma coluna da grid.
73
+ */
74
+ async addCustomValueFormatter(columnName, customFormatter) {
75
+ var _a;
76
+ await ((_a = this._gridRef) === null || _a === void 0 ? void 0 : _a.addCustomValueFormatter(columnName, customFormatter));
77
+ }
78
+ /**
79
+ * Remove o formatador de valores de uma coluna da grid.
80
+ */
81
+ async removeCustomValueFormatter(columnName) {
82
+ var _a;
83
+ await ((_a = this._gridRef) === null || _a === void 0 ? void 0 : _a.removeCustomValueFormatter(columnName));
84
+ }
85
+ /**
86
+ * Registra um render customizado para colunas da grid.
87
+ */
88
+ async addGridCustomRender(fieldName, customRender, detailContext) {
89
+ var _a;
90
+ await ((_a = this._gridRef) === null || _a === void 0 ? void 0 : _a.addGridCustomRender(fieldName, customRender, detailContext));
91
+ }
92
+ /**
93
+ * Atribui o foco para a grade.
94
+ */
95
+ async setFocus() {
96
+ var _a;
97
+ await ((_a = this._gridRef) === null || _a === void 0 ? void 0 : _a.setFocus());
98
+ }
99
+ async handleMetadataChanged() {
100
+ await this.configGrid();
101
+ }
102
+ async handleRecordsChanged() {
103
+ await this.configGrid();
104
+ }
105
+ async handlePageSizeChanged() {
106
+ await this.configGrid(true);
107
+ }
108
+ async handleRecordDateFormatChanged() {
109
+ await this.configGrid(true);
110
+ }
111
+ async configGrid(forceRebuild = false) {
112
+ if (!this.hasValidDependencies())
113
+ return;
114
+ this.ensureInMemoryLoaderExists(forceRebuild);
115
+ this.updateDURecords();
116
+ this.refreshFilterColumnDataSource();
117
+ }
118
+ updateDURecords() {
119
+ requestAnimationFrame(() => {
120
+ this.inMemoryLoader.records = this.records;
121
+ });
122
+ }
123
+ refreshFilterColumnDataSource() {
124
+ requestAnimationFrame(async () => {
125
+ var _a;
126
+ await ((_a = this._gridRef) === null || _a === void 0 ? void 0 : _a.refreshColumnFilterDataSource());
127
+ });
128
+ }
129
+ hasValidDependencies() {
130
+ return this.metadata && this.records;
131
+ }
132
+ buildGridConfig() {
133
+ if (!this.columnsConfig)
134
+ return;
135
+ const columns = this.columnsConfig.map(this.parseColumnConfig.bind(this));
136
+ return { columns };
137
+ }
138
+ parseColumnConfig(conf, index) {
139
+ return Object.assign(Object.assign({}, conf), { orderIndex: index });
140
+ }
141
+ ensureInMemoryLoaderExists(forceRebuild = false) {
142
+ if (forceRebuild) {
143
+ this.clearInMemoryLoader();
144
+ }
145
+ this.buildInMemoryLoader();
146
+ }
147
+ buildInMemoryLoader() {
148
+ requestAnimationFrame(() => {
149
+ if (!this.inMemoryLoader) {
150
+ this.inMemoryLoader = new DataUnitInMemoryLoader(this.metadata, this.records, this.buildInMemoryLoaderConfig());
151
+ }
152
+ });
153
+ }
154
+ clearInMemoryLoader() {
155
+ this.inMemoryLoader = undefined;
156
+ }
157
+ buildInMemoryLoaderConfig() {
158
+ const config = {
159
+ pageSize: this.pageSize,
160
+ recordDateFormat: this.recordDateFormat,
161
+ };
162
+ return config;
163
+ }
164
+ async componentDidLoad() {
165
+ await this.configGrid();
166
+ }
167
+ render() {
168
+ var _a;
169
+ if (!((_a = this.inMemoryLoader) === null || _a === void 0 ? void 0 : _a.dataUnit) || !this.records)
170
+ return;
171
+ return (h("ez-grid", { ref: ref => this._gridRef = ref, canEdit: false, dataUnit: this.inMemoryLoader.dataUnit, config: this.buildGridConfig(), multipleSelection: this.multipleSelection, autoFocus: this.autoFocus, paginationCounterMode: this.paginationCounterMode, suppressCheckboxColumn: this.suppressCheckboxColumn, suppressFilterColumn: this.suppressFilterColumn, suppressHorizontalScroll: this.suppressHorizontalScroll, outlineMode: this.outlineMode, enableRowTableStriped: this.enableRowTableStriped, useSearchColumn: this.useSearchColumn, compact: this.compact, onEzPageChangedChanged: () => this.refreshFilterColumnDataSource() }, h("slot", { name: "leftButtons" }), h("slot", { name: "footer" })));
172
+ }
173
+ static get is() { return "ez-grid-view"; }
174
+ static get encapsulation() { return "scoped"; }
175
+ static get originalStyleUrls() {
176
+ return {
177
+ "$": ["ez-grid-view.css"]
178
+ };
179
+ }
180
+ static get styleUrls() {
181
+ return {
182
+ "$": ["ez-grid-view.css"]
183
+ };
184
+ }
185
+ static get properties() {
186
+ return {
187
+ "metadata": {
188
+ "type": "unknown",
189
+ "mutable": false,
190
+ "complexType": {
191
+ "original": "UnitMetadata",
192
+ "resolved": "UnitMetadata",
193
+ "references": {
194
+ "UnitMetadata": {
195
+ "location": "import",
196
+ "path": "@sankhyalabs/core"
197
+ }
198
+ }
199
+ },
200
+ "required": false,
201
+ "optional": false,
202
+ "docs": {
203
+ "tags": [],
204
+ "text": "Metadados que definem a estrutura da grade."
205
+ }
206
+ },
207
+ "records": {
208
+ "type": "unknown",
209
+ "mutable": false,
210
+ "complexType": {
211
+ "original": "Record[]",
212
+ "resolved": "Record[]",
213
+ "references": {
214
+ "Record": {
215
+ "location": "import",
216
+ "path": "@sankhyalabs/core"
217
+ }
218
+ }
219
+ },
220
+ "required": false,
221
+ "optional": false,
222
+ "docs": {
223
+ "tags": [],
224
+ "text": "Registros a serem exibidos na grade."
225
+ }
226
+ },
227
+ "columnsConfig": {
228
+ "type": "unknown",
229
+ "mutable": true,
230
+ "complexType": {
231
+ "original": "ColumnConfig[]",
232
+ "resolved": "ColumnConfig[]",
233
+ "references": {
234
+ "ColumnConfig": {
235
+ "location": "local"
236
+ }
237
+ }
238
+ },
239
+ "required": false,
240
+ "optional": true,
241
+ "docs": {
242
+ "tags": [],
243
+ "text": "Configura\u00E7\u00E3o de exibi\u00E7\u00E3o da grade."
244
+ }
245
+ },
246
+ "pageSize": {
247
+ "type": "number",
248
+ "mutable": false,
249
+ "complexType": {
250
+ "original": "number",
251
+ "resolved": "number",
252
+ "references": {}
253
+ },
254
+ "required": false,
255
+ "optional": false,
256
+ "docs": {
257
+ "tags": [],
258
+ "text": "Quantidade de registros por p\u00E1gina."
259
+ },
260
+ "attribute": "page-size",
261
+ "reflect": false,
262
+ "defaultValue": "150"
263
+ },
264
+ "recordDateFormat": {
265
+ "type": "string",
266
+ "mutable": false,
267
+ "complexType": {
268
+ "original": "RECORD_DATE_FORMAT",
269
+ "resolved": "RECORD_DATE_FORMAT.DD_MM_YYYY | RECORD_DATE_FORMAT.ISO",
270
+ "references": {
271
+ "RECORD_DATE_FORMAT": {
272
+ "location": "import",
273
+ "path": "@sankhyalabs/core"
274
+ }
275
+ }
276
+ },
277
+ "required": false,
278
+ "optional": true,
279
+ "docs": {
280
+ "tags": [],
281
+ "text": "Formato dos campos data dos registros."
282
+ },
283
+ "attribute": "record-date-format",
284
+ "reflect": false,
285
+ "defaultValue": "RECORD_DATE_FORMAT.DD_MM_YYYY"
286
+ },
287
+ "multipleSelection": {
288
+ "type": "boolean",
289
+ "mutable": false,
290
+ "complexType": {
291
+ "original": "boolean",
292
+ "resolved": "boolean",
293
+ "references": {}
294
+ },
295
+ "required": false,
296
+ "optional": false,
297
+ "docs": {
298
+ "tags": [],
299
+ "text": "Habilita a sele\u00E7\u00E3o de v\u00E1rias linhas."
300
+ },
301
+ "attribute": "multiple-selection",
302
+ "reflect": false,
303
+ "defaultValue": "false"
304
+ },
305
+ "autoFocus": {
306
+ "type": "boolean",
307
+ "mutable": false,
308
+ "complexType": {
309
+ "original": "boolean",
310
+ "resolved": "boolean",
311
+ "references": {}
312
+ },
313
+ "required": false,
314
+ "optional": true,
315
+ "docs": {
316
+ "tags": [],
317
+ "text": "Define se a grid ser\u00E1 focada ao ser carregada."
318
+ },
319
+ "attribute": "auto-focus",
320
+ "reflect": false,
321
+ "defaultValue": "true"
322
+ },
323
+ "paginationCounterMode": {
324
+ "type": "string",
325
+ "mutable": false,
326
+ "complexType": {
327
+ "original": "'show' | 'hidden' | 'auto'",
328
+ "resolved": "\"auto\" | \"hidden\" | \"show\"",
329
+ "references": {}
330
+ },
331
+ "required": false,
332
+ "optional": true,
333
+ "docs": {
334
+ "tags": [],
335
+ "text": "Define a forma como a pagina\u00E7\u00E3o ir\u00E1 se comportar."
336
+ },
337
+ "attribute": "pagination-counter-mode",
338
+ "reflect": false,
339
+ "defaultValue": "'auto'"
340
+ },
341
+ "suppressCheckboxColumn": {
342
+ "type": "boolean",
343
+ "mutable": true,
344
+ "complexType": {
345
+ "original": "boolean",
346
+ "resolved": "boolean",
347
+ "references": {}
348
+ },
349
+ "required": false,
350
+ "optional": true,
351
+ "docs": {
352
+ "tags": [],
353
+ "text": "Informa se a coluna de chechbox deve ser suprimida"
354
+ },
355
+ "attribute": "suppress-checkbox-column",
356
+ "reflect": false,
357
+ "defaultValue": "false"
358
+ },
359
+ "suppressFilterColumn": {
360
+ "type": "boolean",
361
+ "mutable": false,
362
+ "complexType": {
363
+ "original": "boolean",
364
+ "resolved": "boolean",
365
+ "references": {}
366
+ },
367
+ "required": false,
368
+ "optional": true,
369
+ "docs": {
370
+ "tags": [],
371
+ "text": "Informa se a grade deve suprimir o filtro de coluna."
372
+ },
373
+ "attribute": "suppress-filter-column",
374
+ "reflect": false,
375
+ "defaultValue": "false"
376
+ },
377
+ "outlineMode": {
378
+ "type": "boolean",
379
+ "mutable": false,
380
+ "complexType": {
381
+ "original": "boolean",
382
+ "resolved": "boolean",
383
+ "references": {}
384
+ },
385
+ "required": false,
386
+ "optional": true,
387
+ "docs": {
388
+ "tags": [],
389
+ "text": "Altera visualmente as sombras e bordas do componente\nQuando false, aplica o padr\u00E3o de sombras ao componente (Utilizar quando for o elemento principal do layout)\nQuando true, aplica o padr\u00E3o de outline ao componente (Utilizar quando estiver contido em outro elemento como um painel ou pop-up)"
390
+ },
391
+ "attribute": "outline-mode",
392
+ "reflect": false,
393
+ "defaultValue": "false"
394
+ },
395
+ "enableRowTableStriped": {
396
+ "type": "boolean",
397
+ "mutable": false,
398
+ "complexType": {
399
+ "original": "boolean",
400
+ "resolved": "boolean",
401
+ "references": {}
402
+ },
403
+ "required": false,
404
+ "optional": true,
405
+ "docs": {
406
+ "tags": [],
407
+ "text": "Ativa modo de linhas com cores alternadas."
408
+ },
409
+ "attribute": "enable-row-table-striped",
410
+ "reflect": false,
411
+ "defaultValue": "true"
412
+ },
413
+ "compact": {
414
+ "type": "boolean",
415
+ "mutable": true,
416
+ "complexType": {
417
+ "original": "boolean",
418
+ "resolved": "boolean",
419
+ "references": {}
420
+ },
421
+ "required": false,
422
+ "optional": true,
423
+ "docs": {
424
+ "tags": [],
425
+ "text": "Define se a grade deve ser exibida em modo compacto"
426
+ },
427
+ "attribute": "compact",
428
+ "reflect": false,
429
+ "defaultValue": "false"
430
+ },
431
+ "useSearchColumn": {
432
+ "type": "boolean",
433
+ "mutable": false,
434
+ "complexType": {
435
+ "original": "boolean",
436
+ "resolved": "boolean",
437
+ "references": {}
438
+ },
439
+ "required": false,
440
+ "optional": false,
441
+ "docs": {
442
+ "tags": [],
443
+ "text": "Define se a grade deve exibir um buscador de coluna com uso do Ctrl+F"
444
+ },
445
+ "attribute": "use-search-column",
446
+ "reflect": false,
447
+ "defaultValue": "true"
448
+ },
449
+ "suppressHorizontalScroll": {
450
+ "type": "boolean",
451
+ "mutable": false,
452
+ "complexType": {
453
+ "original": "boolean",
454
+ "resolved": "boolean",
455
+ "references": {}
456
+ },
457
+ "required": false,
458
+ "optional": false,
459
+ "docs": {
460
+ "tags": [],
461
+ "text": "Define se a grade deve suprimir o scroll horizontal."
462
+ },
463
+ "attribute": "suppress-horizontal-scroll",
464
+ "reflect": false,
465
+ "defaultValue": "false"
466
+ }
467
+ };
468
+ }
469
+ static get states() {
470
+ return {
471
+ "inMemoryLoader": {}
472
+ };
473
+ }
474
+ static get methods() {
475
+ return {
476
+ "getDataUnit": {
477
+ "complexType": {
478
+ "signature": "() => Promise<DataUnit>",
479
+ "parameters": [],
480
+ "references": {
481
+ "Promise": {
482
+ "location": "global"
483
+ },
484
+ "DataUnit": {
485
+ "location": "import",
486
+ "path": "@sankhyalabs/core"
487
+ }
488
+ },
489
+ "return": "Promise<DataUnit>"
490
+ },
491
+ "docs": {
492
+ "text": "Obt\u00E9m o DataUnit da grade.",
493
+ "tags": []
494
+ }
495
+ },
496
+ "refresh": {
497
+ "complexType": {
498
+ "signature": "() => Promise<void>",
499
+ "parameters": [],
500
+ "references": {
501
+ "Promise": {
502
+ "location": "global"
503
+ }
504
+ },
505
+ "return": "Promise<void>"
506
+ },
507
+ "docs": {
508
+ "text": "Recarrega os registros da grade.",
509
+ "tags": []
510
+ }
511
+ },
512
+ "getSelection": {
513
+ "complexType": {
514
+ "signature": "() => Promise<Array<any>>",
515
+ "parameters": [],
516
+ "references": {
517
+ "Promise": {
518
+ "location": "global"
519
+ },
520
+ "Array": {
521
+ "location": "global"
522
+ }
523
+ },
524
+ "return": "Promise<any[]>"
525
+ },
526
+ "docs": {
527
+ "text": "Obt\u00E9m as linhas selecionadas.",
528
+ "tags": []
529
+ }
530
+ },
531
+ "quickFilter": {
532
+ "complexType": {
533
+ "signature": "(term: string) => Promise<void>",
534
+ "parameters": [{
535
+ "tags": [],
536
+ "text": ""
537
+ }],
538
+ "references": {
539
+ "Promise": {
540
+ "location": "global"
541
+ }
542
+ },
543
+ "return": "Promise<void>"
544
+ },
545
+ "docs": {
546
+ "text": "Aplica um filtro r\u00E1pido.",
547
+ "tags": []
548
+ }
549
+ },
550
+ "locateColumn": {
551
+ "complexType": {
552
+ "signature": "(columnName: string) => Promise<void>",
553
+ "parameters": [{
554
+ "tags": [],
555
+ "text": ""
556
+ }],
557
+ "references": {
558
+ "Promise": {
559
+ "location": "global"
560
+ }
561
+ },
562
+ "return": "Promise<void>"
563
+ },
564
+ "docs": {
565
+ "text": "Localiza determinada coluna tornando-a vis\u00EDvel.",
566
+ "tags": []
567
+ }
568
+ },
569
+ "filterColumns": {
570
+ "complexType": {
571
+ "signature": "(search: string) => Promise<Array<EzGridColumn>>",
572
+ "parameters": [{
573
+ "tags": [],
574
+ "text": ""
575
+ }],
576
+ "references": {
577
+ "Promise": {
578
+ "location": "global"
579
+ },
580
+ "EzGridColumn": {
581
+ "location": "import",
582
+ "path": "../ez-grid/controller/EzGridController"
583
+ },
584
+ "Array": {
585
+ "location": "global"
586
+ }
587
+ },
588
+ "return": "Promise<EzGridColumn[]>"
589
+ },
590
+ "docs": {
591
+ "text": "Usa um argumento para filtrar as colunas por label",
592
+ "tags": []
593
+ }
594
+ },
595
+ "addColumnMenuItem": {
596
+ "complexType": {
597
+ "signature": "(label: string, name: string, action: Function, icon: HTMLElement | string) => Promise<void>",
598
+ "parameters": [{
599
+ "tags": [],
600
+ "text": ""
601
+ }, {
602
+ "tags": [],
603
+ "text": ""
604
+ }, {
605
+ "tags": [],
606
+ "text": ""
607
+ }, {
608
+ "tags": [],
609
+ "text": ""
610
+ }],
611
+ "references": {
612
+ "Promise": {
613
+ "location": "global"
614
+ },
615
+ "Function": {
616
+ "location": "global"
617
+ },
618
+ "HTMLElement": {
619
+ "location": "global"
620
+ }
621
+ },
622
+ "return": "Promise<void>"
623
+ },
624
+ "docs": {
625
+ "text": "Adiciona item de menu nas colunas.",
626
+ "tags": []
627
+ }
628
+ },
629
+ "addCustomValueFormatter": {
630
+ "complexType": {
631
+ "signature": "(columnName: string, customFormatter: ICustomFormatter) => Promise<void>",
632
+ "parameters": [{
633
+ "tags": [],
634
+ "text": ""
635
+ }, {
636
+ "tags": [],
637
+ "text": ""
638
+ }],
639
+ "references": {
640
+ "Promise": {
641
+ "location": "global"
642
+ },
643
+ "ICustomFormatter": {
644
+ "location": "import",
645
+ "path": "../ez-grid/interfaces"
646
+ }
647
+ },
648
+ "return": "Promise<void>"
649
+ },
650
+ "docs": {
651
+ "text": "Registra um formatador de valores para uma coluna da grid.",
652
+ "tags": []
653
+ }
654
+ },
655
+ "removeCustomValueFormatter": {
656
+ "complexType": {
657
+ "signature": "(columnName: string) => Promise<void>",
658
+ "parameters": [{
659
+ "tags": [],
660
+ "text": ""
661
+ }],
662
+ "references": {
663
+ "Promise": {
664
+ "location": "global"
665
+ }
666
+ },
667
+ "return": "Promise<void>"
668
+ },
669
+ "docs": {
670
+ "text": "Remove o formatador de valores de uma coluna da grid.",
671
+ "tags": []
672
+ }
673
+ },
674
+ "addGridCustomRender": {
675
+ "complexType": {
676
+ "signature": "(fieldName: string, customRender: ICustomRender, detailContext?: string) => Promise<void>",
677
+ "parameters": [{
678
+ "tags": [],
679
+ "text": ""
680
+ }, {
681
+ "tags": [],
682
+ "text": ""
683
+ }, {
684
+ "tags": [],
685
+ "text": ""
686
+ }],
687
+ "references": {
688
+ "Promise": {
689
+ "location": "global"
690
+ },
691
+ "ICustomRender": {
692
+ "location": "import",
693
+ "path": "../../utils"
694
+ }
695
+ },
696
+ "return": "Promise<void>"
697
+ },
698
+ "docs": {
699
+ "text": "Registra um render customizado para colunas da grid.",
700
+ "tags": []
701
+ }
702
+ },
703
+ "setFocus": {
704
+ "complexType": {
705
+ "signature": "() => Promise<void>",
706
+ "parameters": [],
707
+ "references": {
708
+ "Promise": {
709
+ "location": "global"
710
+ }
711
+ },
712
+ "return": "Promise<void>"
713
+ },
714
+ "docs": {
715
+ "text": "Atribui o foco para a grade.",
716
+ "tags": []
717
+ }
718
+ }
719
+ };
720
+ }
721
+ static get watchers() {
722
+ return [{
723
+ "propName": "metadata",
724
+ "methodName": "handleMetadataChanged"
725
+ }, {
726
+ "propName": "records",
727
+ "methodName": "handleRecordsChanged"
728
+ }, {
729
+ "propName": "pageSize",
730
+ "methodName": "handlePageSizeChanged"
731
+ }, {
732
+ "propName": "recordDateFormat",
733
+ "methodName": "handleRecordDateFormatChanged"
734
+ }];
735
+ }
736
+ }