@sankhyalabs/sankhyablocks 10.1.0-dev.37 → 10.1.0-dev.39

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 (225) hide show
  1. package/dist/cjs/{ConfigStorage-e384fb7b.js → ConfigStorage-a1fab5ca.js} +2 -2
  2. package/dist/cjs/ContinuousInsertUtils-1ae0c6ac.js +41 -0
  3. package/dist/cjs/{DataFetcher-3a8ea521.js → DataFetcher-384d2ce8.js} +1 -1
  4. package/dist/cjs/{ISave-a66bb65e.js → ISave-ecbe9336.js} +1 -1
  5. package/dist/cjs/{ImageUtils-5e3f406b.js → ImageUtils-c46f2d11.js} +1 -1
  6. package/dist/cjs/{SnkFormConfigManager-73df0f8b.js → SnkFormConfigManager-44386305.js} +2 -2
  7. package/dist/cjs/{SnkMessageBuilder-d9558dba.js → SnkMessageBuilder-a9300ebe.js} +24 -0
  8. package/dist/cjs/{SnkMultiSelectionListDataSource-016393f3.js → SnkMultiSelectionListDataSource-b951ed91.js} +61 -47
  9. package/dist/cjs/{auth-fetcher-80e608b0.js → auth-fetcher-6b134ec4.js} +1 -1
  10. package/dist/cjs/{dataunit-fetcher-6febd6c4.js → dataunit-fetcher-93f53260.js} +2 -2
  11. package/dist/cjs/{form-config-fetcher-81cbd405.js → form-config-fetcher-45d1964c.js} +1 -1
  12. package/dist/cjs/index-1894343a.js +8 -8
  13. package/dist/cjs/loader.cjs.js +1 -1
  14. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +5 -5
  15. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  16. package/dist/cjs/{snk-actions-button_8.cjs.entry.js → snk-actions-button_9.cjs.entry.js} +52 -12
  17. package/dist/cjs/snk-application.cjs.entry.js +7 -7
  18. package/dist/cjs/snk-attach.cjs.entry.js +50 -24
  19. package/dist/cjs/snk-crud.cjs.entry.js +344 -109
  20. package/dist/cjs/snk-data-exporter.cjs.entry.js +8 -7
  21. package/dist/cjs/{snk-data-unit-94757628.js → snk-data-unit-6abc5efc.js} +2 -2
  22. package/dist/cjs/snk-data-unit.cjs.entry.js +4 -4
  23. package/dist/cjs/snk-detail-view.cjs.entry.js +11 -16
  24. package/dist/cjs/snk-entity-search.cjs.entry.js +211 -0
  25. package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
  26. package/dist/cjs/{snk-filter-advanced-mode_2.cjs.entry.js → snk-filter-advanced-mode_3.cjs.entry.js} +39 -1
  27. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +106 -95
  28. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +4 -4
  29. package/dist/cjs/snk-form-view.cjs.entry.js +1 -1
  30. package/dist/cjs/snk-form_2.cjs.entry.js +5 -5
  31. package/dist/cjs/snk-grid.cjs.entry.js +40 -17
  32. package/dist/cjs/{snk-guides-viewer-688c4398.js → snk-guides-viewer-b4ca3437.js} +37 -153
  33. package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -17
  34. package/dist/cjs/snk-image-input.cjs.entry.js +2 -2
  35. package/dist/cjs/snk-layout-form-config.cjs.entry.js +5 -5
  36. package/dist/cjs/snk-personalized-filter.cjs.entry.js +5 -5
  37. package/dist/cjs/snk-pesquisa.cjs.entry.js +5 -5
  38. package/dist/cjs/snk-simple-crud.cjs.entry.js +12 -12
  39. package/dist/cjs/snk-taskbar.cjs.entry.js +181 -124
  40. package/dist/cjs/taskbar-elements-80eddec8.js +152 -0
  41. package/dist/collection/collection-manifest.json +2 -0
  42. package/dist/collection/components/snk-actions-button/snk-actions-button.js +27 -3
  43. package/dist/collection/components/snk-attach/snk-attach.css +29 -7
  44. package/dist/collection/components/snk-attach/snk-attach.js +81 -18
  45. package/dist/collection/components/snk-crud/snk-crud.css +46 -0
  46. package/dist/collection/components/snk-crud/snk-crud.js +143 -94
  47. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +2 -5
  48. package/dist/collection/components/snk-crud/subcomponents/snk-entity-search.css +17 -0
  49. package/dist/collection/components/snk-crud/subcomponents/snk-entity-search.js +330 -0
  50. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +22 -8
  51. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +35 -144
  52. package/dist/collection/components/snk-crud/utils/taskbarUtils.js +144 -0
  53. package/dist/collection/components/snk-data-exporter/exporter-email-sender/snk-exporter-email-sender.js +1 -1
  54. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +20 -1
  55. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.css +2 -2
  56. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +23 -1
  57. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +6 -1
  58. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +8 -5
  59. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +1 -6
  60. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +139 -84
  61. package/dist/collection/components/snk-grid/snk-grid.css +12 -3
  62. package/dist/collection/components/snk-grid/snk-grid.js +148 -4
  63. package/dist/collection/components/snk-image-input/utils/ImageUtils.js +1 -1
  64. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +1 -1
  65. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.css +8 -0
  66. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +38 -2
  67. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +51 -35
  68. package/dist/collection/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.js +27 -1
  69. package/dist/collection/components/snk-taskbar/processor/simple-taskbar-processor.js +55 -0
  70. package/dist/collection/components/snk-taskbar/snk-taskbar.css +44 -1
  71. package/dist/collection/components/snk-taskbar/snk-taskbar.js +248 -132
  72. package/dist/collection/components/snk-taskbar/subcomponents/snk-taskbar-skeleton.css +12 -0
  73. package/dist/collection/components/snk-taskbar/subcomponents/snk-taskbar-skeleton.js +19 -0
  74. package/dist/collection/lib/message/resources/en-us/snk-crud.msg.js +8 -0
  75. package/dist/collection/lib/message/resources/es-es/snk-crud.msg.js +8 -0
  76. package/dist/collection/lib/message/resources/pt-br/snk-crud.msg.js +8 -0
  77. package/dist/components/ContinuousInsertUtils.js +1 -1
  78. package/dist/components/SnkMessageBuilder.js +24 -0
  79. package/dist/components/index.d.ts +2 -0
  80. package/dist/components/index.js +2 -0
  81. package/dist/components/snk-actions-button2.js +6 -3
  82. package/dist/components/snk-attach2.js +56 -27
  83. package/dist/components/snk-crud.js +422 -175
  84. package/dist/components/snk-data-exporter2.js +3 -1
  85. package/dist/components/snk-detail-view2.js +158 -258
  86. package/dist/components/snk-entity-search.d.ts +11 -0
  87. package/dist/components/snk-entity-search.js +6 -0
  88. package/dist/components/snk-entity-search2.js +231 -0
  89. package/dist/components/snk-exporter-email-sender2.js +1 -1
  90. package/dist/components/snk-filter-bar2.js +94 -85
  91. package/dist/components/snk-filter-item2.js +4 -2
  92. package/dist/components/snk-filter-modal2.js +8 -5
  93. package/dist/components/snk-grid2.js +82 -47
  94. package/dist/components/snk-image-input2.js +1 -1
  95. package/dist/components/snk-personalized-filter2.js +1 -1
  96. package/dist/components/snk-simple-crud2.js +29 -23
  97. package/dist/components/snk-taskbar-skeleton.d.ts +11 -0
  98. package/dist/components/snk-taskbar-skeleton.js +6 -0
  99. package/dist/components/snk-taskbar-skeleton2.js +29 -0
  100. package/dist/components/snk-taskbar2.js +253 -174
  101. package/dist/components/taskbar-actions-button2.js +21 -2
  102. package/dist/components/taskbar-split-button2.js +10 -1
  103. package/dist/esm/{ConfigStorage-82ff76fb.js → ConfigStorage-76872695.js} +2 -2
  104. package/dist/esm/ContinuousInsertUtils-bce77dc1.js +39 -0
  105. package/dist/esm/{DataFetcher-1dd7e8c0.js → DataFetcher-e60f8d53.js} +1 -1
  106. package/dist/esm/{ISave-498c4831.js → ISave-4929c071.js} +1 -1
  107. package/dist/esm/{ImageUtils-8fc8d905.js → ImageUtils-7f3a4149.js} +1 -1
  108. package/dist/esm/{SnkFormConfigManager-e8ae1561.js → SnkFormConfigManager-83f6b22f.js} +2 -2
  109. package/dist/esm/{SnkMessageBuilder-c0bc4424.js → SnkMessageBuilder-1eb7a1af.js} +24 -0
  110. package/dist/esm/{SnkMultiSelectionListDataSource-ec783ded.js → SnkMultiSelectionListDataSource-7fe25a58.js} +55 -41
  111. package/dist/esm/{auth-fetcher-38a83f5e.js → auth-fetcher-1a31c1e4.js} +1 -1
  112. package/dist/esm/{dataunit-fetcher-21c43ec7.js → dataunit-fetcher-050b6d31.js} +2 -2
  113. package/dist/esm/{form-config-fetcher-24eb587c.js → form-config-fetcher-b44b2727.js} +1 -1
  114. package/dist/esm/index-04f73a26.js +8 -8
  115. package/dist/esm/loader.js +1 -1
  116. package/dist/esm/pesquisa-grid_2.entry.js +5 -5
  117. package/dist/esm/sankhyablocks.js +1 -1
  118. package/dist/esm/{snk-actions-button_8.entry.js → snk-actions-button_9.entry.js} +52 -13
  119. package/dist/esm/snk-application.entry.js +7 -7
  120. package/dist/esm/snk-attach.entry.js +50 -24
  121. package/dist/esm/snk-crud.entry.js +333 -98
  122. package/dist/esm/snk-data-exporter.entry.js +8 -7
  123. package/dist/esm/{snk-data-unit-3b06a0f3.js → snk-data-unit-ca2c9858.js} +2 -2
  124. package/dist/esm/snk-data-unit.entry.js +4 -4
  125. package/dist/esm/snk-detail-view.entry.js +11 -16
  126. package/dist/esm/snk-entity-search.entry.js +207 -0
  127. package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
  128. package/dist/esm/{snk-filter-advanced-mode_2.entry.js → snk-filter-advanced-mode_3.entry.js} +40 -3
  129. package/dist/esm/snk-filter-bar_4.entry.js +107 -96
  130. package/dist/esm/snk-filter-modal-item.entry.js +4 -4
  131. package/dist/esm/snk-form-view.entry.js +1 -1
  132. package/dist/esm/snk-form_2.entry.js +5 -5
  133. package/dist/esm/snk-grid.entry.js +37 -14
  134. package/dist/esm/{snk-guides-viewer-6ddc7e6a.js → snk-guides-viewer-cc37535b.js} +38 -154
  135. package/dist/esm/snk-guides-viewer.entry.js +9 -17
  136. package/dist/esm/snk-image-input.entry.js +2 -2
  137. package/dist/esm/snk-layout-form-config.entry.js +5 -5
  138. package/dist/esm/snk-personalized-filter.entry.js +5 -5
  139. package/dist/esm/snk-pesquisa.entry.js +5 -5
  140. package/dist/esm/snk-simple-crud.entry.js +10 -10
  141. package/dist/esm/snk-taskbar.entry.js +182 -125
  142. package/dist/esm/taskbar-elements-63651ca7.js +149 -0
  143. package/dist/sankhyablocks/p-09ba6bd4.js +1 -0
  144. package/dist/sankhyablocks/p-10f27dc6.entry.js +1 -0
  145. package/dist/sankhyablocks/{p-54f5c36d.entry.js → p-20af4b6a.entry.js} +1 -1
  146. package/dist/sankhyablocks/p-225f92cf.entry.js +1 -0
  147. package/dist/sankhyablocks/{p-605a2a99.entry.js → p-251aee41.entry.js} +1 -1
  148. package/dist/sankhyablocks/p-2af815bb.entry.js +1 -0
  149. package/dist/sankhyablocks/{p-bdf0077f.js → p-2af8aca3.js} +1 -1
  150. package/dist/sankhyablocks/p-3072136e.js +1 -0
  151. package/dist/sankhyablocks/p-33492640.entry.js +1 -0
  152. package/dist/sankhyablocks/{p-f208ec52.entry.js → p-35317d9a.entry.js} +1 -1
  153. package/dist/sankhyablocks/{p-6753f16e.js → p-3704bf1b.js} +1 -1
  154. package/dist/sankhyablocks/{p-2d606189.js → p-3870748a.js} +1 -1
  155. package/dist/sankhyablocks/{p-e057ecb6.js → p-3c990841.js} +1 -1
  156. package/dist/sankhyablocks/{p-4ff3b494.js → p-420b39b5.js} +1 -1
  157. package/dist/sankhyablocks/{p-8bb4e86b.entry.js → p-46f75667.entry.js} +1 -1
  158. package/dist/sankhyablocks/{p-32ad76cc.js → p-4f7adf97.js} +2 -2
  159. package/dist/sankhyablocks/p-554c0e54.js +1 -0
  160. package/dist/sankhyablocks/p-6ae7543b.entry.js +1 -0
  161. package/dist/sankhyablocks/p-771b137e.js +1 -0
  162. package/dist/sankhyablocks/p-77f608bc.entry.js +1 -0
  163. package/dist/sankhyablocks/p-7c8bf699.entry.js +1 -0
  164. package/dist/sankhyablocks/{p-d34a41ec.entry.js → p-8a8900a9.entry.js} +1 -1
  165. package/dist/sankhyablocks/{p-e484913b.entry.js → p-95af0bb1.entry.js} +1 -1
  166. package/dist/sankhyablocks/{p-10cad767.entry.js → p-98241c21.entry.js} +1 -1
  167. package/dist/sankhyablocks/{p-f5b929c2.entry.js → p-ab12f544.entry.js} +1 -1
  168. package/dist/sankhyablocks/{p-ef8cf0e2.js → p-ab5e12fa.js} +1 -1
  169. package/dist/sankhyablocks/p-ac384a1e.entry.js +1 -0
  170. package/dist/sankhyablocks/{p-3a98c337.entry.js → p-aff2d081.entry.js} +1 -1
  171. package/dist/sankhyablocks/p-b3b51693.entry.js +1 -0
  172. package/dist/sankhyablocks/{p-08415ef7.entry.js → p-bab4cde4.entry.js} +1 -1
  173. package/dist/sankhyablocks/p-ce3b284c.entry.js +1 -0
  174. package/dist/sankhyablocks/p-ce8ccd72.entry.js +1 -0
  175. package/dist/sankhyablocks/{p-b9970342.js → p-d972a9c1.js} +1 -1
  176. package/dist/sankhyablocks/p-e5a3711f.js +1 -0
  177. package/dist/sankhyablocks/{p-2b882835.entry.js → p-e737fd5a.entry.js} +1 -1
  178. package/dist/sankhyablocks/p-efd18bc2.entry.js +1 -0
  179. package/dist/sankhyablocks/{p-362e6e8c.js → p-f185d5ad.js} +1 -1
  180. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  181. package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +4 -0
  182. package/dist/types/components/snk-attach/snk-attach.d.ts +20 -4
  183. package/dist/types/components/snk-crud/snk-crud.d.ts +28 -10
  184. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +1 -1
  185. package/dist/types/components/snk-crud/subcomponents/snk-entity-search.d.ts +62 -0
  186. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +4 -18
  187. package/dist/types/components/snk-crud/utils/taskbarUtils.d.ts +13 -0
  188. package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +4 -0
  189. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +4 -0
  190. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +32 -20
  191. package/dist/types/components/snk-grid/snk-grid.d.ts +28 -1
  192. package/dist/types/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.d.ts +6 -0
  193. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +29 -2
  194. package/dist/types/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.d.ts +5 -0
  195. package/dist/types/components/snk-taskbar/processor/simple-taskbar-processor.d.ts +31 -0
  196. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +32 -21
  197. package/dist/types/components/snk-taskbar/subcomponents/snk-taskbar-skeleton.d.ts +3 -0
  198. package/dist/types/components.d.ts +197 -4
  199. package/package.json +2 -2
  200. package/react/components.d.ts +2 -0
  201. package/react/components.js +2 -0
  202. package/react/components.js.map +1 -1
  203. package/dist/cjs/snk-simple-bar.cjs.entry.js +0 -45
  204. package/dist/cjs/taskbar-elements-a94d4318.js +0 -133
  205. package/dist/cjs/taskbar-processor-2fba34a8.js +0 -53
  206. package/dist/esm/snk-simple-bar.entry.js +0 -41
  207. package/dist/esm/taskbar-elements-97541bdd.js +0 -130
  208. package/dist/esm/taskbar-processor-3436124c.js +0 -51
  209. package/dist/sankhyablocks/p-07aa8192.entry.js +0 -1
  210. package/dist/sankhyablocks/p-1a0caadb.js +0 -1
  211. package/dist/sankhyablocks/p-27aea149.entry.js +0 -1
  212. package/dist/sankhyablocks/p-27d6590e.js +0 -1
  213. package/dist/sankhyablocks/p-449e36d2.entry.js +0 -1
  214. package/dist/sankhyablocks/p-615655bd.entry.js +0 -1
  215. package/dist/sankhyablocks/p-62e17eea.entry.js +0 -1
  216. package/dist/sankhyablocks/p-6e1a7929.entry.js +0 -1
  217. package/dist/sankhyablocks/p-72d62f22.js +0 -1
  218. package/dist/sankhyablocks/p-9c1ff75e.entry.js +0 -1
  219. package/dist/sankhyablocks/p-a8c5ebf1.entry.js +0 -1
  220. package/dist/sankhyablocks/p-b25777fa.entry.js +0 -1
  221. package/dist/sankhyablocks/p-b6d47f08.entry.js +0 -1
  222. package/dist/sankhyablocks/p-b8453e18.js +0 -1
  223. package/dist/sankhyablocks/p-c8043a53.entry.js +0 -1
  224. package/dist/sankhyablocks/p-f0c9969e.entry.js +0 -1
  225. package/dist/sankhyablocks/p-fc5938fb.js +0 -1
@@ -1,6 +1,6 @@
1
1
  :host {
2
2
  display: flex;
3
- flex-wrap: wrap;
3
+ flex-wrap: nowrap;
4
4
  }
5
5
 
6
6
  :host.no-wrap {
@@ -18,3 +18,46 @@
18
18
  .overflowed {
19
19
  display: none;
20
20
  }
21
+
22
+ .taskbar-element {
23
+ width: auto;
24
+ }
25
+
26
+ .space-between-item {
27
+ margin-left: var(--space--8, 8px);
28
+ }
29
+
30
+ .icon-button--small {
31
+ width: 32px;
32
+ height: 32px;
33
+ }
34
+
35
+ .icon-button--medium {
36
+ width: 42px;
37
+ height: 42px;
38
+ }
39
+
40
+ .icon-button--large {
41
+ width: 46px;
42
+ height: 46px;
43
+ }
44
+
45
+ .taskbar-spacer {
46
+ flex: 1;
47
+ }
48
+
49
+ .taskbar-group {
50
+ display: flex;
51
+ flex-wrap: wrap;
52
+ min-width: 0;
53
+ }
54
+
55
+ .taskbar-group--start {
56
+ flex: 1 1 auto;
57
+ justify-content: flex-start;
58
+ }
59
+
60
+ .taskbar-group--end {
61
+ flex: 0 0 auto;
62
+ justify-content: flex-end;
63
+ }
@@ -12,6 +12,10 @@ export class SnkTaskbar {
12
12
  this.TASKBAR_ADDITIONAL_SLOT_CONTAINER_CLASS_NAME = 'taskbar-additional-slot-container';
13
13
  this.TASKBAR_ADDITIONAL_SLOT = 'taskbar-additional-slot-container';
14
14
  this._dataUnitInitialized = false;
15
+ this._permissions = {};
16
+ this._customElements = new Map();
17
+ this._customElementsId = [];
18
+ this._overFlowedElements = [];
15
19
  this._titleKeyByElement = {
16
20
  [TaskbarElement.UPDATE_MULTIPLE]: "snkTaskbar.titleUpdateMultiple",
17
21
  [TaskbarElement.UPDATE]: "snkTaskbar.titleUpdate",
@@ -43,15 +47,9 @@ export class SnkTaskbar {
43
47
  break;
44
48
  }
45
49
  };
46
- this._permissions = undefined;
47
- this._overFlowedElements = [];
48
- this._customElements = undefined;
49
- this._customElementsId = undefined;
50
- this._slotContainer = undefined;
51
50
  this._hiddenActionsList = [];
52
- this._lastWidth = undefined;
53
- this._hasToUpdateOverFlow = false;
54
51
  this._isWaitingForSave = false;
52
+ this._isLoading = true;
55
53
  this.alignRigth = false;
56
54
  this.customSlotId = "TASKBAR_CUSTOM_ELEMENTS";
57
55
  this.additionalSlotId = "TASKBAR_ADDITIONAL_SLOT";
@@ -63,11 +61,14 @@ export class SnkTaskbar {
63
61
  this.customButtons = undefined;
64
62
  this.actionsList = undefined;
65
63
  this.actionsSettingsList = undefined;
64
+ this.customActionsList = undefined;
66
65
  this.primaryButton = undefined;
67
66
  this.disabledButtons = undefined;
68
67
  this.dataUnit = undefined;
69
68
  this.presentationMode = PresentationMode.PRIMARY;
70
69
  this.messagesBuilder = undefined;
70
+ this.disableSkeleton = false;
71
+ this.sizeButtons = 'small';
71
72
  }
72
73
  handleCustomSlotElementsLoaded(event) {
73
74
  if (this.hasToSearchCustomElements(event)) {
@@ -88,19 +89,10 @@ export class SnkTaskbar {
88
89
  return this.customSlotId === event.detail && !this._slotContainer;
89
90
  }
90
91
  observeButtons() {
91
- this._definitions = undefined;
92
- requestAnimationFrame(() => {
93
- requestAnimationFrame(() => { var _a; return (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate(); });
94
- });
92
+ this.handleDefinitions();
95
93
  }
96
94
  observeDisabledButtons() {
97
- var _a;
98
- (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate();
99
- }
100
- observeLastWidth(newValue, oldValue) {
101
- if (oldValue === 0 && newValue !== 0) {
102
- this._hasToUpdateOverFlow = true;
103
- }
95
+ this.handleDefinitions();
104
96
  }
105
97
  observeIsWaitingForSave(newValue, oldValue) {
106
98
  if (newValue == true && oldValue == false) {
@@ -113,7 +105,7 @@ export class SnkTaskbar {
113
105
  observeDataUnit(newValue) {
114
106
  this.initializeDataUnit(newValue);
115
107
  }
116
- initializeDataUnit(dataUnit) {
108
+ initializeDataUnit(dataUnit = this.dataUnit) {
117
109
  if (!!dataUnit && !this._dataUnitInitialized) {
118
110
  this._dataUnitInitialized = true;
119
111
  const dataInfo = { dataUnit: this.dataUnit };
@@ -121,7 +113,6 @@ export class SnkTaskbar {
121
113
  this.dataUnit.subscribe(this.onSaveEvent);
122
114
  }
123
115
  }
124
- // Internal methods
125
116
  elementsFromString(strButtons) {
126
117
  const elements = [];
127
118
  if (strButtons == null)
@@ -135,15 +126,17 @@ export class SnkTaskbar {
135
126
  return elements;
136
127
  }
137
128
  isAllowed(buttonName) {
129
+ if (!this._permissions) {
130
+ return false;
131
+ }
132
+ if (this._permissions.isSup) {
133
+ return true;
134
+ }
138
135
  if (buttonName === AuthorizationElements.CONFIGURATOR) {
139
- return this._permissions
140
- ? this._permissions.isSup
141
- || this._permissions[AuthorizationConfig.CONFIG_GRID]
142
- || this._permissions[AuthorizationConfig.CONFIG]
143
- : false;
136
+ return this._permissions[AuthorizationConfig.CONFIG_GRID] || this._permissions[AuthorizationConfig.CONFIG];
144
137
  }
145
138
  if (AuthorizationElements[buttonName]) {
146
- return this._permissions ? this._permissions.isSup || this._permissions[buttonName] : false;
139
+ return this._permissions[buttonName];
147
140
  }
148
141
  return true;
149
142
  }
@@ -217,32 +210,54 @@ export class SnkTaskbar {
217
210
  }
218
211
  return !(this.disabledButtons && this.disabledButtons.includes(elem));
219
212
  }
220
- validatePresentationMode() {
221
- if (Object.values(PresentationMode).includes(this.presentationMode)) {
222
- return;
223
- }
224
- this.presentationMode = PresentationMode.PRIMARY;
225
- }
226
213
  getElement(index, def) {
227
- let className = def === this.primaryButton ? "ez-button--primary " : "";
228
- if (index > 1) {
229
- className += "ez-padding-left--medium";
230
- }
214
+ const className = {
215
+ "taskbar-element": true,
216
+ "space-between-item": index > 0
217
+ };
231
218
  const taskbarElement = TaskbarElement[def.toString()];
232
219
  const dataExporterStoreKey = this._element.dataset.exporterStoreKey || this.configName;
233
220
  if (taskbarElement) {
234
- return buildElem(def, className, this.getIdElemBtnNative(def), elem => this.getTitle(elem), elem => this.elementClick(elem), elem => this.isEnabled(elem), def !== TaskbarElement.CONFIGURATOR ? this.buildDynamicActionsList() : this.buildActionsSettingsList(), dataExporterStoreKey, this.presentationMode);
221
+ return buildElem({
222
+ element: def,
223
+ className,
224
+ dataElementId: this.getIdElemBtnNative(def),
225
+ getTitle: elem => this.getTitle(elem),
226
+ action: elem => this.elementClick(elem),
227
+ isEnabled: elem => this.isEnabled(elem),
228
+ actions: def !== TaskbarElement.CONFIGURATOR ? this.buildDynamicActionsList() : this.buildActionsSettingsList(),
229
+ dataExporterStoreKey,
230
+ presentationMode: this.presentationMode,
231
+ variant: def === this.primaryButton ? "primary" : "secondary",
232
+ size: this.sizeButtons,
233
+ });
235
234
  }
236
235
  else {
237
- return buildCustomButton(def, className, this.getIdElemBtnCustom(def), elem => this.elementClick(elem), elem => this.isEnabled(elem));
236
+ return buildCustomButton({
237
+ def: def,
238
+ className,
239
+ dataElementId: this.getIdElemBtnCustom(def),
240
+ action: elem => this.elementClick(elem),
241
+ isEnabled: elem => this.isEnabled(elem),
242
+ size: this.sizeButtons
243
+ });
238
244
  }
239
245
  }
246
+ buildDivider() {
247
+ return { value: '', label: '', type: 'divider' };
248
+ }
240
249
  buildDynamicActionsList() {
241
- var _a;
250
+ var _a, _b;
251
+ const customActions = [...((_a = this.customActionsList) !== null && _a !== void 0 ? _a : [])].filter(a => a !== undefined);
252
+ const defaultActionsList = [...((_b = this.actionsList) !== null && _b !== void 0 ? _b : [])].filter(a => a !== undefined);
253
+ if (customActions.length > 0 && defaultActionsList.length > 0) {
254
+ customActions.push(this.buildDivider());
255
+ }
256
+ const combinedList = [...customActions, ...defaultActionsList];
242
257
  if (this._hiddenActionsList.length) {
243
- return [...((_a = this.actionsList) !== null && _a !== void 0 ? _a : []), ...this._hiddenActionsList];
258
+ return [...combinedList, ...this._hiddenActionsList];
244
259
  }
245
- return this.actionsList;
260
+ return combinedList;
246
261
  }
247
262
  buildActionsSettingsList() {
248
263
  return this.actionsSettingsList;
@@ -312,38 +327,12 @@ export class SnkTaskbar {
312
327
  else {
313
328
  slotContainer = this._element.querySelector(`#${this.customSlotId}`);
314
329
  }
315
- // Caso nõa encontre o slot container dentro do próprio elemento, tenta buscar na DOM do document.
330
+ // Caso não encontre o slot container dentro do próprio elemento, tenta buscar na DOM do document.
316
331
  if (searchOnDocument && !slotContainer) {
317
332
  slotContainer = document.querySelector(`#${this.customSlotId}`);
318
333
  }
319
334
  return slotContainer;
320
335
  }
321
- componentWillLoad() {
322
- this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
323
- if (this._application) {
324
- this._application.getAllAccess(this.resourceID).then(access => this._permissions = access);
325
- }
326
- else {
327
- this._permissions = {};
328
- }
329
- this.getCustomElements();
330
- }
331
- componentWillRender() {
332
- this.handleDefinitions();
333
- this.validatePresentationMode();
334
- this.updateOverFlowIfNeeded();
335
- }
336
- handleDefinitions() {
337
- if (this._definitions == undefined && this._permissions) {
338
- this._definitions = this.elementsFromString(this.buttons);
339
- }
340
- }
341
- updateOverFlowIfNeeded() {
342
- if (this._hasToUpdateOverFlow) {
343
- requestAnimationFrame(() => { var _a; return (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate(); });
344
- this._hasToUpdateOverFlow = false;
345
- }
346
- }
347
336
  handleOverFlow(overFlowingElements) {
348
337
  const elementsToHandle = overFlowingElements.filter(element => !this.hasToIgnoreOverFlow(element));
349
338
  this.resetOverFlowedElements();
@@ -363,28 +352,38 @@ export class SnkTaskbar {
363
352
  this.addItemToActionList(element);
364
353
  });
365
354
  }
355
+ getAttributeFromName(element, attributeName) {
356
+ var _a;
357
+ if (!element) {
358
+ console.warn(`[snk-taskbar] Tentativa de acessar atributo "${attributeName}" em elemento nulo.`);
359
+ return "";
360
+ }
361
+ let attributeValue = element.getAttribute(attributeName);
362
+ if (!attributeValue && ((_a = element.tagName) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === 'ez-tooltip') {
363
+ const innerButton = element.querySelector('ez-button');
364
+ if (innerButton) {
365
+ attributeValue = innerButton.getAttribute(attributeName);
366
+ }
367
+ }
368
+ return attributeValue !== null && attributeValue !== void 0 ? attributeValue : "";
369
+ }
366
370
  addItemToActionList(element) {
367
- const taskbarElement = this.getTaskbarElementName(element);
371
+ const taskbarElement = this.getAttributeFromName(element, 'data-taskbar-element');
368
372
  if (taskbarElement && this.isEnabled(taskbarElement) && this.isAllowed(taskbarElement)) {
369
373
  const optionItem = {
370
374
  value: taskbarElement,
371
- label: this.getTaskbarElementLabel(element),
372
- iconName: this.getTaskbarElementIcon(element)
375
+ label: this.getAttributeFromName(element, 'data-taskbar-label'),
376
+ iconName: this.getIconName(element)
373
377
  };
374
378
  this._hiddenActionsList.push(optionItem);
375
379
  }
376
380
  }
377
- getTaskbarElementName(element) {
378
- var _a;
379
- return (_a = element.getAttribute('data-taskbar-element')) !== null && _a !== void 0 ? _a : "";
380
- }
381
- getTaskbarElementIcon(element) {
382
- var _a;
383
- return (_a = element.getAttribute('data-taskbar-icon')) !== null && _a !== void 0 ? _a : "";
384
- }
385
- getTaskbarElementLabel(element) {
386
- var _a;
387
- return (_a = element.getAttribute('data-taskbar-label')) !== null && _a !== void 0 ? _a : "";
381
+ getIconName(element) {
382
+ const taskbarElement = this.getAttributeFromName(element, 'data-taskbar-element');
383
+ if (taskbarElement === TaskbarElement.INSERT) {
384
+ return "plus";
385
+ }
386
+ return this.getAttributeFromName(element, 'data-taskbar-icon');
388
387
  }
389
388
  hasToIgnoreOverFlow(element) {
390
389
  return element.classList.contains(this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME) ||
@@ -403,22 +402,34 @@ export class SnkTaskbar {
403
402
  notOverFlow: this.NOT_OVERFLOW_ELEMENTS
404
403
  };
405
404
  }
406
- componentDidLoad() {
407
- this.initializeDataUnit(this.dataUnit);
408
- this.handleOverFlowStrategy();
409
- }
410
- componentDidRender() {
411
- this.appendCustomElementsInTaskbar();
412
- this.updateLastWidth();
413
- }
414
- updateLastWidth() {
415
- this._lastWidth = this._element.getBoundingClientRect().width;
405
+ handleDefinitions() {
406
+ if (!this._permissions) {
407
+ return;
408
+ }
409
+ this._definitions = this.elementsFromString(this.buttons);
410
+ requestAnimationFrame(() => {
411
+ requestAnimationFrame(() => {
412
+ var _a;
413
+ (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate();
414
+ });
415
+ });
416
416
  }
417
- disconnectedCallback() {
418
- var _a, _b;
419
- (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.unsubscribe(this.onSaveEvent);
420
- this.unlinkAllCustomElements();
421
- (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 : _b.destroy();
417
+ async getAccess() {
418
+ if (!this._application) {
419
+ this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
420
+ }
421
+ if (!this._application) {
422
+ console.warn('[snk-taskbar] Application context não encontrado. Permissões serão vazias.');
423
+ this._permissions = {};
424
+ return;
425
+ }
426
+ try {
427
+ this._permissions = await this._application.getAllAccess(this.resourceID);
428
+ }
429
+ catch (error) {
430
+ console.error('[snk-taskbar] Erro ao obter permissões:', error);
431
+ this._permissions = {};
432
+ }
422
433
  }
423
434
  unlinkAllCustomElements() {
424
435
  var _a;
@@ -431,35 +442,82 @@ export class SnkTaskbar {
431
442
  unlinkCustomElementFromTaskbar(customElement) {
432
443
  this._slotContainer.appendChild(customElement);
433
444
  }
434
- render() {
435
- var _a, _b;
436
- if (this._definitions === undefined) {
437
- return undefined;
438
- }
439
- let index = 0;
440
- return (h(Host, { class: this.getHostClasses() }, this.removeEmpty(this._definitions.map((elem) => {
441
- var _a, _b;
442
- index++;
443
- if (TaskbarElement[elem]) {
444
- return this.getElement(index, TaskbarElement[elem]);
445
- }
446
- if ((_a = this.customButtons) === null || _a === void 0 ? void 0 : _a.has(elem)) {
447
- return this.getElement(index, this.customButtons.get(elem));
448
- }
449
- if (this._customElements.has(elem)) {
450
- return this.addCustomElementContainer(elem);
451
- }
452
- (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 : _b.addNotOverFlowElement(elem);
453
- return h("slot", { name: elem });
454
- })), h("div", { id: this.TASKBAR_CUSTOM_ELEMENTS, class: this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME }, h("slot", { name: this.customSlotId }), (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 :
455
- _a.addNotOverFlowElement(this.TASKBAR_CUSTOM_ELEMENTS)), h("div", { id: this.TASKBAR_ADDITIONAL_SLOT, class: this.TASKBAR_ADDITIONAL_SLOT_CONTAINER_CLASS_NAME }, h("slot", { name: this.additionalSlotId }), (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 :
456
- _b.addNotOverFlowElement(this.TASKBAR_ADDITIONAL_SLOT))));
457
- }
458
445
  getHostClasses() {
459
446
  if (this.overflowStrategy !== 'hiddenItems')
460
447
  return 'no-wrap';
461
448
  return `full-width ${this.alignRigth ? 'align-right' : ""}`;
462
449
  }
450
+ connectedCallback() {
451
+ this.initializeDataUnit();
452
+ this.handleOverFlowStrategy();
453
+ this.getCustomElements();
454
+ }
455
+ async componentWillLoad() {
456
+ this._isLoading = true;
457
+ try {
458
+ await this.getAccess();
459
+ this.handleDefinitions();
460
+ }
461
+ catch (error) {
462
+ console.error('[snk-taskbar] Erro ao obter permissões de acesso:', error);
463
+ }
464
+ finally {
465
+ this._isLoading = false;
466
+ }
467
+ }
468
+ componentDidRender() {
469
+ this.appendCustomElementsInTaskbar();
470
+ }
471
+ disconnectedCallback() {
472
+ var _a, _b;
473
+ (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.unsubscribe(this.onSaveEvent);
474
+ this.unlinkAllCustomElements();
475
+ (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 : _b.destroy();
476
+ }
477
+ renderTaskbarElement(elem, index) {
478
+ var _a, _b;
479
+ if (TaskbarElement[elem]) {
480
+ return this.getElement(index, TaskbarElement[elem]);
481
+ }
482
+ if ((_a = this.customButtons) === null || _a === void 0 ? void 0 : _a.has(elem)) {
483
+ return this.getElement(index, this.customButtons.get(elem));
484
+ }
485
+ if (this._customElements.has(elem)) {
486
+ return this.addCustomElementContainer(elem);
487
+ }
488
+ (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 : _b.addNotOverFlowElement(elem);
489
+ return h("slot", { name: elem });
490
+ }
491
+ renderElements() {
492
+ var _a, _b;
493
+ const spacerIndex = (_a = this._definitions) === null || _a === void 0 ? void 0 : _a.indexOf(TaskbarElement.SPACER);
494
+ const hasSpacerElement = spacerIndex !== undefined && spacerIndex !== -1;
495
+ if (!hasSpacerElement) {
496
+ const arrayOfElements = (_b = this._definitions) === null || _b === void 0 ? void 0 : _b.map((elem, index) => this.renderTaskbarElement(elem, index));
497
+ return this.removeEmpty(arrayOfElements);
498
+ }
499
+ // Split elements into before and after spacer
500
+ const elementsBeforeSpacer = this._definitions.slice(0, spacerIndex);
501
+ const elementsAfterSpacer = this._definitions.slice(spacerIndex + 1);
502
+ const beforeElements = elementsBeforeSpacer.map((elem, index) => this.renderTaskbarElement(elem, index));
503
+ const afterElements = elementsAfterSpacer.map((elem, index) => this.renderTaskbarElement(elem, index + spacerIndex + 1));
504
+ return [
505
+ h("div", { class: "taskbar-group taskbar-group--start" }, this.removeEmpty(beforeElements)),
506
+ h("div", { class: "taskbar-group taskbar-group--end" }, this.removeEmpty(afterElements))
507
+ ];
508
+ }
509
+ render() {
510
+ var _a, _b;
511
+ if (!this._definitions) {
512
+ return;
513
+ }
514
+ if (this._isLoading && !this.disableSkeleton) {
515
+ return (h(Host, { class: this.getHostClasses() }, h("snk-taskbar-skeleton", null)));
516
+ }
517
+ return (h(Host, { class: this.getHostClasses() }, this.renderElements(), h("div", { id: this.TASKBAR_CUSTOM_ELEMENTS, class: this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME }, h("slot", { name: this.customSlotId }), (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 :
518
+ _a.addNotOverFlowElement(this.TASKBAR_CUSTOM_ELEMENTS)), h("div", { id: this.TASKBAR_ADDITIONAL_SLOT, class: this.TASKBAR_ADDITIONAL_SLOT_CONTAINER_CLASS_NAME }, h("slot", { name: this.additionalSlotId }), (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 :
519
+ _b.addNotOverFlowElement(this.TASKBAR_ADDITIONAL_SLOT))));
520
+ }
463
521
  static get is() { return "snk-taskbar"; }
464
522
  static get encapsulation() { return "scoped"; }
465
523
  static get originalStyleUrls() {
@@ -716,6 +774,31 @@ export class SnkTaskbar {
716
774
  "text": ""
717
775
  }
718
776
  },
777
+ "customActionsList": {
778
+ "type": "unknown",
779
+ "mutable": false,
780
+ "complexType": {
781
+ "original": "Array<Action>",
782
+ "resolved": "Action[]",
783
+ "references": {
784
+ "Array": {
785
+ "location": "global"
786
+ },
787
+ "Action": {
788
+ "location": "local"
789
+ }
790
+ }
791
+ },
792
+ "required": false,
793
+ "optional": false,
794
+ "docs": {
795
+ "tags": [{
796
+ "name": "description",
797
+ "text": "Lista de a\u00E7\u00F5es personalizadas que devem ser usadas no bot\u00E3o \"Mais op\u00E7\u00F5es\"."
798
+ }],
799
+ "text": ""
800
+ }
801
+ },
719
802
  "primaryButton": {
720
803
  "type": "string",
721
804
  "mutable": false,
@@ -829,20 +912,56 @@ export class SnkTaskbar {
829
912
  }],
830
913
  "text": ""
831
914
  }
915
+ },
916
+ "disableSkeleton": {
917
+ "type": "boolean",
918
+ "mutable": false,
919
+ "complexType": {
920
+ "original": "boolean",
921
+ "resolved": "boolean",
922
+ "references": {}
923
+ },
924
+ "required": false,
925
+ "optional": false,
926
+ "docs": {
927
+ "tags": [{
928
+ "name": "description",
929
+ "text": "Se verdadeiro, desabilita a exibi\u00E7\u00E3o do esqueleto de carregamento da barra de tarefas."
930
+ }],
931
+ "text": ""
932
+ },
933
+ "attribute": "disable-skeleton",
934
+ "reflect": false,
935
+ "defaultValue": "false"
936
+ },
937
+ "sizeButtons": {
938
+ "type": "string",
939
+ "mutable": false,
940
+ "complexType": {
941
+ "original": "'small' | 'medium' | 'large'",
942
+ "resolved": "\"large\" | \"medium\" | \"small\"",
943
+ "references": {}
944
+ },
945
+ "required": false,
946
+ "optional": false,
947
+ "docs": {
948
+ "tags": [{
949
+ "name": "description",
950
+ "text": "Define o tamanho dos bot\u00F5es da barra de tarefas, podendo ser 'small', 'medium' ou 'large'."
951
+ }],
952
+ "text": ""
953
+ },
954
+ "attribute": "size-buttons",
955
+ "reflect": false,
956
+ "defaultValue": "'small'"
832
957
  }
833
958
  };
834
959
  }
835
960
  static get states() {
836
961
  return {
837
- "_permissions": {},
838
- "_overFlowedElements": {},
839
- "_customElements": {},
840
- "_customElementsId": {},
841
- "_slotContainer": {},
842
962
  "_hiddenActionsList": {},
843
- "_lastWidth": {},
844
- "_hasToUpdateOverFlow": {},
845
- "_isWaitingForSave": {}
963
+ "_isWaitingForSave": {},
964
+ "_isLoading": {}
846
965
  };
847
966
  }
848
967
  static get events() {
@@ -919,9 +1038,6 @@ export class SnkTaskbar {
919
1038
  }, {
920
1039
  "propName": "disabledButtons",
921
1040
  "methodName": "observeDisabledButtons"
922
- }, {
923
- "propName": "_lastWidth",
924
- "methodName": "observeLastWidth"
925
1041
  }, {
926
1042
  "propName": "_isWaitingForSave",
927
1043
  "methodName": "observeIsWaitingForSave"
@@ -0,0 +1,12 @@
1
+ :host {
2
+ display: flex;
3
+ align-items: center;
4
+ height: 100%;
5
+ padding: 0 var(--space--8, 8px);
6
+ }
7
+
8
+ ez-skeleton {
9
+ --skeleton-width: 42px;
10
+ --skeleton-height: 42px;
11
+ --skeleton-margin-left: var(--space--4, 4px);
12
+ }
@@ -0,0 +1,19 @@
1
+ import { Host, h } from "@stencil/core";
2
+ export class SnkTaskbarSkeleton {
3
+ render() {
4
+ return (h(Host, null, h("ez-skeleton", { variant: "circle", count: 12 }), h("ez-skeleton", { width: "100px" })));
5
+ }
6
+ static get is() { return "snk-taskbar-skeleton"; }
7
+ static get encapsulation() { return "scoped"; }
8
+ static get originalStyleUrls() {
9
+ return {
10
+ "$": ["snk-taskbar-skeleton.css"]
11
+ };
12
+ }
13
+ static get styleUrls() {
14
+ return {
15
+ "$": ["snk-taskbar-skeleton.css"]
16
+ };
17
+ }
18
+ }
19
+ ;
@@ -31,5 +31,13 @@ export const snkCrudMessages = {
31
31
  removeRecord: "Remove the selected record.",
32
32
  refreshData: "Refresh data.",
33
33
  cancelAction: "Cancel an action."
34
+ },
35
+ customButtons: {
36
+ filter: "Opens the filters panel",
37
+ entitySearch: "Search in entity"
38
+ },
39
+ entitySearch: {
40
+ label: "Search for records",
41
+ placeholder: "Type what you are looking for here..."
34
42
  }
35
43
  };
@@ -31,5 +31,13 @@ export const snkCrudMessages = {
31
31
  removeRecord: "Eliminar el registro seleccionado.",
32
32
  refreshData: "Actualizar datos.",
33
33
  cancelAction: "Cancelar una acción."
34
+ },
35
+ customButtons: {
36
+ filter: "Abre el panel de filtros",
37
+ entitySearch: "Buscar en entidad"
38
+ },
39
+ entitySearch: {
40
+ label: "Búsqueda de registros",
41
+ placeholder: "Escribe lo que buscas aquí..."
34
42
  }
35
43
  };
@@ -31,5 +31,13 @@ export const snkCrudMessages = {
31
31
  removeRecord: "Remove o registro selecionado.",
32
32
  refreshData: "Atualiza os dados.",
33
33
  cancelAction: "Cancela uma ação."
34
+ },
35
+ customButtons: {
36
+ filter: "Abre o painel de filtros",
37
+ entitySearch: "Busca na entidade"
38
+ },
39
+ entitySearch: {
40
+ label: "Busca por registros",
41
+ placeholder: "Digite o que você procura aqui..."
34
42
  }
35
43
  };
@@ -420,4 +420,4 @@ class ContinuousInsertUtils {
420
420
  }
421
421
  }
422
422
 
423
- export { CommonsExporter as C, RmPrecisionCustomValueFormatter as R, SnkMultiSelectionListDataSource as S, TaskbarProcessor as T, CrudUtils as a, ContinuousInsertUtils as b, ClientSideExporterProvider as c };
423
+ export { ContinuousInsertUtils as C, RmPrecisionCustomValueFormatter as R, SnkMultiSelectionListDataSource as S, TaskbarProcessor as T, CommonsExporter as a, CrudUtils as b, ClientSideExporterProvider as c };