@sankhyalabs/sankhyablocks 8.15.0-rc.1 → 8.15.0-rc.10

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 (216) hide show
  1. package/dist/cjs/{ConfigStorage-302bbbd4.js → ConfigStorage-34be11ce.js} +70 -7
  2. package/dist/cjs/{DataFetcher-ba94ed5b.js → DataFetcher-99f0f6ed.js} +5 -3
  3. package/dist/cjs/{SnkFormConfigManager-71c4768e.js → SnkFormConfigManager-6211fb28.js} +7 -2
  4. package/dist/cjs/{SnkMessageBuilder-e7dcf408.js → SnkMessageBuilder-141aa18d.js} +2 -1
  5. package/dist/cjs/SnkMultiSelectionListDataSource-5213120b.js +140 -0
  6. package/dist/cjs/{auth-fetcher-c8467c07.js → auth-fetcher-5161d082.js} +1 -1
  7. package/dist/cjs/{form-config-fetcher-df043d3d.js → form-config-fetcher-9f1a13ca.js} +1 -1
  8. package/dist/cjs/index-f9e81701.js +2 -10
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/cjs/{pesquisa-fetcher-e4a7c4c3.js → pesquisa-fetcher-94f6b316.js} +235 -24
  11. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  12. package/dist/cjs/{snk-actions-button_2.cjs.entry.js → snk-actions-button_4.cjs.entry.js} +520 -5
  13. package/dist/cjs/snk-application.cjs.entry.js +34 -8
  14. package/dist/cjs/snk-attach.cjs.entry.js +7 -8
  15. package/dist/cjs/snk-crud.cjs.entry.js +16 -10
  16. package/dist/cjs/snk-data-exporter.cjs.entry.js +8 -4
  17. package/dist/cjs/{snk-data-unit-82c08a8c.js → snk-data-unit-6026a9f7.js} +1 -1
  18. package/dist/cjs/snk-data-unit.cjs.entry.js +2 -2
  19. package/dist/cjs/snk-detail-view.cjs.entry.js +9 -10
  20. package/dist/cjs/snk-entity-list.cjs.entry.js +5 -3
  21. package/dist/cjs/snk-filter-bar.cjs.entry.js +36 -7
  22. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  23. package/dist/cjs/snk-form-config.cjs.entry.js +47 -27
  24. package/dist/cjs/snk-form.cjs.entry.js +11 -4
  25. package/dist/cjs/snk-grid.cjs.entry.js +40 -22
  26. package/dist/cjs/{snk-guides-viewer-d32c096f.js → snk-guides-viewer-508bb6fe.js} +15 -9
  27. package/dist/cjs/snk-guides-viewer.cjs.entry.js +7 -8
  28. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +3 -1
  29. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  30. package/dist/cjs/snk-simple-crud.cjs.entry.js +214 -23
  31. package/dist/cjs/snk-taskbar.cjs.entry.js +100 -14
  32. package/dist/cjs/{taskbar-elements-01b85b99.js → taskbar-elements-3ecd1278.js} +9 -9
  33. package/dist/collection/collection-manifest.json +6 -6
  34. package/dist/collection/components/snk-application/__mocks__/snk-application.js +7 -0
  35. package/dist/collection/components/snk-application/snk-application.js +51 -11
  36. package/dist/collection/components/snk-crud/snk-crud.js +95 -3
  37. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +2 -2
  38. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +11 -2
  39. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +27 -3
  40. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +5 -1
  41. package/dist/collection/components/snk-entity-list/snk-entity-list.js +5 -3
  42. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -1
  43. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +23 -1
  44. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +116 -4
  45. package/dist/collection/components/snk-form/snk-form.js +25 -1
  46. package/dist/collection/components/{snk-form → snk-form-config}/SnkFormConfigManager.js +6 -1
  47. package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.js +50 -30
  48. package/dist/collection/components/snk-grid/snk-grid.js +103 -16
  49. package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.js +130 -123
  50. package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.js +1 -1
  51. package/dist/collection/components/snk-simple-crud/regular-buttons.js +3 -0
  52. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +5 -0
  53. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +325 -17
  54. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +1 -1
  55. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +9 -9
  56. package/dist/collection/components/snk-taskbar/snk-taskbar.css +17 -0
  57. package/dist/collection/components/snk-taskbar/snk-taskbar.js +139 -13
  58. package/dist/collection/lib/configs/ConfigStorage.js +63 -3
  59. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +5 -3
  60. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +21 -0
  61. package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +6 -3
  62. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +4 -11
  63. package/dist/collection/lib/message/resources/snk-data-exporter.msg.js +2 -1
  64. package/dist/collection/lib/utils/CrudUtils.js +13 -1
  65. package/dist/components/ConfigStorage.js +68 -5
  66. package/dist/components/DataFetcher.js +5 -3
  67. package/dist/components/SnkFormConfigManager.js +5 -0
  68. package/dist/components/SnkMessageBuilder.js +2 -1
  69. package/dist/components/dataunit-fetcher.js +4 -11
  70. package/dist/components/field-search.js +93 -3
  71. package/dist/components/index.d.ts +6 -6
  72. package/dist/components/snk-application2.js +30 -1
  73. package/dist/components/snk-attach2.js +54 -12
  74. package/dist/components/snk-crud.js +15 -3
  75. package/dist/components/snk-data-exporter2.js +5 -1
  76. package/dist/components/snk-detail-view2.js +40 -7
  77. package/dist/components/snk-entity-list.js +5 -3
  78. package/dist/components/snk-filter-bar2.js +38 -5
  79. package/dist/components/snk-form-config2.js +46 -26
  80. package/dist/components/snk-form.js +8 -0
  81. package/dist/components/snk-grid-config2.js +128 -102
  82. package/dist/components/snk-grid2.js +41 -17
  83. package/dist/components/snk-personalized-filter-editor.js +3 -1
  84. package/dist/components/snk-simple-crud2.js +270 -28
  85. package/dist/components/snk-taskbar2.js +114 -24
  86. package/dist/components/taskbar-actions-button2.js +1 -1
  87. package/dist/esm/{ConfigStorage-4151acc8.js → ConfigStorage-101a2b4c.js} +70 -7
  88. package/dist/esm/{DataFetcher-aa159c5a.js → DataFetcher-a650ae58.js} +5 -3
  89. package/dist/esm/{SnkFormConfigManager-5c7d3771.js → SnkFormConfigManager-d86ba46f.js} +7 -2
  90. package/dist/esm/{SnkMessageBuilder-0fb796b9.js → SnkMessageBuilder-9747ddd2.js} +2 -1
  91. package/dist/esm/SnkMultiSelectionListDataSource-7e7eada5.js +133 -0
  92. package/dist/esm/{auth-fetcher-c05dc474.js → auth-fetcher-17dc5b5e.js} +1 -1
  93. package/dist/esm/{form-config-fetcher-36219cd3.js → form-config-fetcher-f121f880.js} +1 -1
  94. package/dist/esm/index-a7d3d3f1.js +2 -10
  95. package/dist/esm/loader.js +1 -1
  96. package/dist/esm/{pesquisa-fetcher-fa0c2540.js → pesquisa-fetcher-f05a12ca.js} +226 -16
  97. package/dist/esm/sankhyablocks.js +1 -1
  98. package/dist/esm/{snk-actions-button_2.entry.js → snk-actions-button_4.entry.js} +519 -6
  99. package/dist/esm/snk-application.entry.js +34 -8
  100. package/dist/esm/snk-attach.entry.js +6 -7
  101. package/dist/esm/snk-crud.entry.js +16 -10
  102. package/dist/esm/snk-data-exporter.entry.js +8 -4
  103. package/dist/esm/{snk-data-unit-5d201fb3.js → snk-data-unit-4c343635.js} +1 -1
  104. package/dist/esm/snk-data-unit.entry.js +2 -2
  105. package/dist/esm/snk-detail-view.entry.js +9 -10
  106. package/dist/esm/snk-entity-list.entry.js +5 -3
  107. package/dist/esm/snk-filter-bar.entry.js +36 -7
  108. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  109. package/dist/esm/snk-form-config.entry.js +48 -28
  110. package/dist/esm/snk-form.entry.js +11 -4
  111. package/dist/esm/snk-grid.entry.js +41 -23
  112. package/dist/esm/{snk-guides-viewer-f49613c6.js → snk-guides-viewer-18859840.js} +15 -9
  113. package/dist/esm/snk-guides-viewer.entry.js +7 -8
  114. package/dist/esm/snk-personalized-filter-editor.entry.js +3 -1
  115. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  116. package/dist/esm/snk-simple-crud.entry.js +215 -24
  117. package/dist/esm/snk-taskbar.entry.js +101 -15
  118. package/dist/esm/{taskbar-elements-d4d0b424.js → taskbar-elements-2473c8ac.js} +9 -9
  119. package/dist/sankhyablocks/p-1f3174cb.entry.js +1 -0
  120. package/dist/sankhyablocks/p-1fa5a18c.entry.js +11 -0
  121. package/dist/sankhyablocks/p-20b46647.entry.js +1 -0
  122. package/dist/sankhyablocks/p-2897fb8c.js +1 -0
  123. package/dist/sankhyablocks/{p-05243555.js → p-2936303b.js} +1 -1
  124. package/dist/sankhyablocks/p-2b909f08.entry.js +1 -0
  125. package/dist/sankhyablocks/p-33718dfc.entry.js +1 -0
  126. package/dist/sankhyablocks/p-50783a8b.js +1 -0
  127. package/dist/sankhyablocks/p-5c0b53ce.js +56 -0
  128. package/dist/sankhyablocks/p-5dbc1a3f.js +1 -0
  129. package/dist/sankhyablocks/p-60fa6c7a.js +1 -0
  130. package/dist/sankhyablocks/p-64c1b368.entry.js +1 -0
  131. package/dist/sankhyablocks/{p-7f3c7b09.entry.js → p-6b28cc74.entry.js} +1 -1
  132. package/dist/sankhyablocks/{p-e0fd9555.entry.js → p-7ddd95b6.entry.js} +1 -1
  133. package/dist/sankhyablocks/p-7e05bd83.entry.js +1 -0
  134. package/dist/sankhyablocks/p-7f97fee2.entry.js +1 -0
  135. package/dist/sankhyablocks/{p-f3d1c48e.js → p-9a5d1b39.js} +1 -1
  136. package/dist/sankhyablocks/{p-0d7863ed.js → p-a13ccb86.js} +1 -1
  137. package/dist/sankhyablocks/p-ae4fc9a9.js +1 -0
  138. package/dist/sankhyablocks/p-b11aa1e0.entry.js +1 -0
  139. package/dist/sankhyablocks/p-b41a622a.entry.js +1 -0
  140. package/dist/sankhyablocks/p-b4de81ac.entry.js +1 -0
  141. package/dist/sankhyablocks/p-ba4871b5.entry.js +1 -0
  142. package/dist/sankhyablocks/{p-9695f78b.js → p-be75153c.js} +1 -1
  143. package/dist/sankhyablocks/p-d01ceda6.entry.js +1 -0
  144. package/dist/sankhyablocks/p-d304659d.entry.js +1 -0
  145. package/dist/sankhyablocks/p-d78d4062.js +65 -0
  146. package/dist/sankhyablocks/p-e4fb3308.entry.js +1 -0
  147. package/dist/sankhyablocks/p-e7dbe53a.entry.js +1 -0
  148. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  149. package/dist/types/components/snk-actions-button/subcomponents/snk-actions-form.d.ts +1 -1
  150. package/dist/types/components/snk-application/__mocks__/snk-application.d.ts +3 -0
  151. package/dist/types/components/snk-application/snk-application.d.ts +8 -0
  152. package/dist/types/components/snk-crud/snk-crud.d.ts +21 -0
  153. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +1 -1
  154. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +6 -1
  155. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +19 -1
  156. package/dist/types/components/snk-form/snk-form.d.ts +6 -1
  157. package/dist/types/components/{snk-form → snk-form-config}/SnkFormConfigManager.d.ts +1 -0
  158. package/dist/types/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.d.ts +5 -3
  159. package/dist/types/components/snk-grid/snk-grid.d.ts +20 -1
  160. package/dist/types/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.d.ts +11 -6
  161. package/dist/types/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.d.ts +1 -1
  162. package/dist/types/components/snk-simple-crud/regular-buttons.d.ts +3 -0
  163. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +61 -3
  164. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +28 -1
  165. package/dist/types/components.d.ts +193 -12
  166. package/dist/types/lib/configs/ConfigStorage.d.ts +21 -1
  167. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  168. package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +2 -1
  169. package/dist/types/lib/utils/CrudUtils.d.ts +3 -0
  170. package/package.json +9 -2
  171. package/dist/cjs/PreloadManager-84466da6.js +0 -224
  172. package/dist/cjs/SnkMultiSelectionListDataSource-ba5838c2.js +0 -49
  173. package/dist/cjs/snk-grid-config.cjs.entry.js +0 -483
  174. package/dist/cjs/snk-select-box.cjs.entry.js +0 -25
  175. package/dist/esm/PreloadManager-c1c2f2b4.js +0 -222
  176. package/dist/esm/SnkMultiSelectionListDataSource-44494b0e.js +0 -43
  177. package/dist/esm/snk-grid-config.entry.js +0 -479
  178. package/dist/esm/snk-select-box.entry.js +0 -21
  179. package/dist/sankhyablocks/p-02e3a45b.entry.js +0 -1
  180. package/dist/sankhyablocks/p-094c30cb.js +0 -1
  181. package/dist/sankhyablocks/p-0ec5b2e5.js +0 -1
  182. package/dist/sankhyablocks/p-1d75d9f9.entry.js +0 -1
  183. package/dist/sankhyablocks/p-2582537c.entry.js +0 -1
  184. package/dist/sankhyablocks/p-282789a6.entry.js +0 -1
  185. package/dist/sankhyablocks/p-374d03f6.js +0 -1
  186. package/dist/sankhyablocks/p-3b0e4e08.js +0 -65
  187. package/dist/sankhyablocks/p-40915359.entry.js +0 -1
  188. package/dist/sankhyablocks/p-573a07c5.js +0 -1
  189. package/dist/sankhyablocks/p-62896624.entry.js +0 -1
  190. package/dist/sankhyablocks/p-69efa80d.entry.js +0 -1
  191. package/dist/sankhyablocks/p-761ed32f.entry.js +0 -1
  192. package/dist/sankhyablocks/p-98674137.entry.js +0 -1
  193. package/dist/sankhyablocks/p-9b5944a4.entry.js +0 -1
  194. package/dist/sankhyablocks/p-9bdbc7d8.entry.js +0 -1
  195. package/dist/sankhyablocks/p-aa95fb2c.js +0 -56
  196. package/dist/sankhyablocks/p-ac384baf.entry.js +0 -1
  197. package/dist/sankhyablocks/p-b05ab13d.entry.js +0 -1
  198. package/dist/sankhyablocks/p-c22c1d8e.js +0 -1
  199. package/dist/sankhyablocks/p-c4874327.entry.js +0 -1
  200. package/dist/sankhyablocks/p-c758265f.entry.js +0 -1
  201. package/dist/sankhyablocks/p-cb7419e0.entry.js +0 -1
  202. package/dist/sankhyablocks/p-d4f9ee17.entry.js +0 -1
  203. package/dist/sankhyablocks/p-e6380c60.js +0 -1
  204. package/dist/sankhyablocks/p-e817f254.entry.js +0 -11
  205. /package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.css +0 -0
  206. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.css +0 -0
  207. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.js +0 -0
  208. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.css +0 -0
  209. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.js +0 -0
  210. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.css +0 -0
  211. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.js +0 -0
  212. /package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.css +0 -0
  213. /package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.css +0 -0
  214. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.d.ts +0 -0
  215. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.d.ts +0 -0
  216. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.d.ts +0 -0
@@ -1,6 +1,6 @@
1
1
  import { h, Fragment } from '@stencil/core';
2
2
  import { ApplicationContext, DataType, ElementIDUtils, StringUtils } from '@sankhyalabs/core';
3
- import { SortMode, UserInterface } from '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
3
+ import { UserInterface } from '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
4
4
  import { TaskbarElement } from '../snk-taskbar/elements/taskbar-elements';
5
5
  import { ConfigStorage } from '../../lib/configs/ConfigStorage';
6
6
  import { PresentationMode } from '../../lib/@types';
@@ -9,6 +9,7 @@ import store from "../../lib/store";
9
9
  import SnkMultiSelectionListDataSource from './filtercolumn/SnkMultiSelectionListDataSource';
10
10
  import { SelectionMode } from '@sankhyalabs/core/dist/dataunit/DataUnit';
11
11
  import { buildFieldSearch, openFieldSearch } from '../snk-taskbar/subcomponents/field-search';
12
+ import { CrudUtils } from '../../lib';
12
13
  export class SnkGrid {
13
14
  constructor() {
14
15
  this._topTaskbarProcessor = new TaskbarProcessor({
@@ -37,6 +38,7 @@ export class SnkGrid {
37
38
  this._showSnkFilterBar = true;
38
39
  this.columnFilterDataSource = new SnkMultiSelectionListDataSource();
39
40
  this.configName = undefined;
41
+ this.filterBarTitle = undefined;
40
42
  this.resourceID = undefined;
41
43
  this.selectionToastConfig = undefined;
42
44
  this.actionsList = undefined;
@@ -52,6 +54,9 @@ export class SnkGrid {
52
54
  this.taskbarCustomContainerId = undefined;
53
55
  this.gridHeaderCustomSlotId = 'GRID_HEADER_CUSTOM_ELEMENTS';
54
56
  this.topTaskbarCustomSlotId = 'GRID_TASKBAR_CUSTOM_ELEMENTS';
57
+ this.disablePersonalizedFilter = undefined;
58
+ this.gridLegacyConfigName = undefined;
59
+ this.filterBarLegacyConfigName = undefined;
55
60
  }
56
61
  /**
57
62
  * Exibe a janela de configurações da grade.
@@ -96,6 +101,16 @@ export class SnkGrid {
96
101
  async findColumn() {
97
102
  await openFieldSearch(this._moreOptions, this._columnSearch);
98
103
  }
104
+ async handleGridLegacyConfigName(newLegacyConfig, oldLegacyConfig) {
105
+ if (!newLegacyConfig) {
106
+ return;
107
+ }
108
+ if (newLegacyConfig === oldLegacyConfig) {
109
+ return;
110
+ }
111
+ this.addGridLegacyConfigName();
112
+ this.loadConfig();
113
+ }
99
114
  openGridConfig() {
100
115
  this._grid.getColumnsState()
101
116
  .then((gridColumns) => {
@@ -109,19 +124,7 @@ export class SnkGrid {
109
124
  }
110
125
  setGridConfig(config) {
111
126
  this._gridConfig = config;
112
- this.assertDefaultSorting();
113
- }
114
- assertDefaultSorting() {
115
- if (this._gridConfig && this._dataUnit) {
116
- this._dataUnit.defaultSorting = this._gridConfig
117
- .columns
118
- .filter(col => col.ascending != undefined)
119
- .sort((colA, colB) => colA.orderIndex - colB.orderIndex)
120
- .map(({ name: field, ascending }) => {
121
- const { dataType } = this._dataUnit.getField(field);
122
- return { field, dataType, mode: ascending ? SortMode.ASC : SortMode.DESC };
123
- });
124
- }
127
+ CrudUtils.assertDefaultSorting(this._gridConfig, this._dataUnit);
125
128
  }
126
129
  loadConfig() {
127
130
  ConfigStorage.loadGridConfig(this.configName, this.resourceID)
@@ -132,6 +135,11 @@ export class SnkGrid {
132
135
  console.warn(error);
133
136
  });
134
137
  }
138
+ addGridLegacyConfigName() {
139
+ if (this.gridLegacyConfigName && this.configName) {
140
+ ConfigStorage.addGridLegacyConfig(this.configName, this.gridLegacyConfigName);
141
+ }
142
+ }
135
143
  gridConfigChangeHandler(evt) {
136
144
  const config = evt.detail;
137
145
  ConfigStorage.saveGridConfig(config, this.configName, this.resourceID);
@@ -247,7 +255,7 @@ export class SnkGrid {
247
255
  ElementIDUtils.addIDInfo(this._element, null, dataInfo);
248
256
  }
249
257
  finshLoading() {
250
- this.assertDefaultSorting();
258
+ CrudUtils.assertDefaultSorting(this._gridConfig, this._dataUnit);
251
259
  this.addElementID();
252
260
  if (this.columnFilterDataSource != undefined) {
253
261
  this.columnFilterDataSource.setApplication(this._application);
@@ -256,6 +264,7 @@ export class SnkGrid {
256
264
  }
257
265
  componentWillLoad() {
258
266
  this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
267
+ //TODO: substituir pelo metodo nativo closest
259
268
  let parent = this._element.parentElement;
260
269
  while (parent) {
261
270
  if (parent.tagName.toUpperCase() === "SNK-DATA-UNIT") {
@@ -285,6 +294,7 @@ export class SnkGrid {
285
294
  }
286
295
  parent = parent.parentElement;
287
296
  }
297
+ this.addGridLegacyConfigName();
288
298
  this.loadConfig();
289
299
  }
290
300
  getHeaderDisabledButtons() {
@@ -394,12 +404,15 @@ export class SnkGrid {
394
404
  }
395
405
  this._showSnkFilterBar = true;
396
406
  }
407
+ getConfig() {
408
+ return this._gridConfig == undefined ? undefined : Object.assign({}, this._gridConfig);
409
+ }
397
410
  render() {
398
411
  if (!this._dataUnit) {
399
412
  return undefined;
400
413
  }
401
414
  return (h("div", { class: "snk-grid__container ez-flex ez-flex--column ez-flex-item--auto ez-padding--large" }, h("div", { class: "snk-grid__header ez-margin-bottom--medium" }, this._showSnkFilterBar &&
402
- h(Fragment, null, h("snk-filter-bar", { ref: (ref) => this._snkFilterBar = ref, dataUnit: this._dataUnit, "data-element-id": "gridFilter", class: "snk-grid__filter-bar ez-align--top", configName: this.configName, messagesBuilder: this.messagesBuilder, resourceID: this.resourceID, onConfigUpdated: evt => this.handleFilterConfigUpdated(evt.detail) }), h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-left--medium snk-grid__header-divider" })), h("snk-taskbar", { class: "ez-padding-left--medium", "data-element-id": "grid_top", key: "topTaskbar", configName: this.configName, dataUnit: this._dataUnit, messagesBuilder: this.messagesBuilder, buttons: this._topTaskbarProcessor.buttons, disabledButtons: this._topTaskbarProcessor.disabledButtons, customButtons: this._topTaskbarProcessor.customButtons, primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.topTaskbarCustomSlotId }, h("slot", { name: this.topTaskbarCustomSlotId }))), h("ez-grid", { ref: ref => this._grid = ref, class: (this.presentationMode === PresentationMode.SECONDARY ? "snk-grid-container__without-shadow " : "") + "snk-grid__table", "data-element-id": "embedded", dataUnit: this._dataUnit, key: "grid-" + this._snkDataUnit.entityName, config: this._gridConfig, onConfigChange: (evt) => { this.gridConfigChangeHandler(evt); }, onEzDoubleClick: (evt) => this.gridDoubleClick.emit(evt.detail), statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, columnfilterDataSource: this.columnFilterDataSource, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, recordsValidator: this.recordsValidator, canEdit: this.canEdit }, h("snk-taskbar", { dataUnit: this._dataUnit, configName: this.configName, messagesBuilder: this.messagesBuilder, "data-element-id": "grid_left", buttons: this._headerTaskbarProcessor.buttons, presentationMode: this.presentationMode, disabledButtons: this._headerTaskbarProcessor.disabledButtons, customButtons: this._headerTaskbarProcessor.customButtons, slot: "leftButtons", actionsList: this.getActionsList(), primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.gridHeaderCustomSlotId }, h("slot", { name: this.gridHeaderCustomSlotId }))), h("div", { class: "ez-col ez-col--sd-12" }, h("slot", { name: "SnkGridFooter" })), h("ez-modal", { modalSize: "small", closeEsc: false, closeOutsideClick: false, opened: this._popUpGridConfig, onEzCloseModal: () => this.closeGridConfig() }, h("snk-grid-config", { ref: ref => this._snkGridConfig = ref, config: this._gridConfig, "data-element-id": this._element.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME), application: this._application, selectedIndex: 0, configName: this.configName, onConfigChange: (evt) => this.modalConfigChangeHandler(evt), onConfigCancel: () => this.closeGridConfig(), resourceID: this.resourceID }))));
415
+ h(Fragment, null, h("snk-filter-bar", { ref: (ref) => this._snkFilterBar = ref, title: this.filterBarTitle, dataUnit: this._dataUnit, "data-element-id": "gridFilter", class: "snk-grid__filter-bar ez-align--top", configName: this.configName, messagesBuilder: this.messagesBuilder, resourceID: this.resourceID, onConfigUpdated: evt => this.handleFilterConfigUpdated(evt.detail), disablePersonalizedFilter: this.disablePersonalizedFilter, filterBarLegacyConfigName: this.filterBarLegacyConfigName }), h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-left--medium snk-grid__header-divider" })), h("snk-taskbar", { class: "ez-padding-left--medium", "data-element-id": "grid_top", key: "topTaskbar", configName: this.configName, dataUnit: this._dataUnit, messagesBuilder: this.messagesBuilder, buttons: this._topTaskbarProcessor.buttons, disabledButtons: this._topTaskbarProcessor.disabledButtons, customButtons: this._topTaskbarProcessor.customButtons, primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.topTaskbarCustomSlotId, overflowStrategy: 'none' }, h("slot", { name: this.topTaskbarCustomSlotId }))), h("ez-grid", { ref: ref => this._grid = ref, class: (this.presentationMode === PresentationMode.SECONDARY ? "snk-grid-container__without-shadow " : "") + "snk-grid__table", "data-element-id": "embedded", dataUnit: this._dataUnit, key: "grid-" + this._snkDataUnit.entityName, config: this.getConfig(), onConfigChange: (evt) => { this.gridConfigChangeHandler(evt); }, onEzDoubleClick: (evt) => this.gridDoubleClick.emit(evt.detail), statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, columnfilterDataSource: this.columnFilterDataSource, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, recordsValidator: this.recordsValidator, canEdit: this.canEdit }, h("snk-taskbar", { id: 'teste', dataUnit: this._dataUnit, configName: this.configName, messagesBuilder: this.messagesBuilder, "data-element-id": "grid_left", buttons: this._headerTaskbarProcessor.buttons, presentationMode: this.presentationMode, disabledButtons: this._headerTaskbarProcessor.disabledButtons, customButtons: this._headerTaskbarProcessor.customButtons, slot: "leftButtons", actionsList: this.getActionsList(), primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.gridHeaderCustomSlotId }, h("slot", { name: this.gridHeaderCustomSlotId }))), h("div", { class: "ez-col ez-col--sd-12" }, h("slot", { name: "SnkGridFooter" })), h("ez-modal", { modalSize: "small", closeEsc: false, closeOutsideClick: false, opened: this._popUpGridConfig, onEzCloseModal: () => this.closeGridConfig() }, h("snk-grid-config", { ref: ref => this._snkGridConfig = ref, config: this._gridConfig, "data-element-id": this._element.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME), selectedIndex: 0, configName: this.configName, onConfigChange: (evt) => this.modalConfigChangeHandler(evt), onConfigCancel: () => this.closeGridConfig(), resourceID: this.resourceID }))));
403
416
  }
404
417
  static get is() { return "snk-grid"; }
405
418
  static get encapsulation() { return "scoped"; }
@@ -453,6 +466,23 @@ export class SnkGrid {
453
466
  "attribute": "config-name",
454
467
  "reflect": false
455
468
  },
469
+ "filterBarTitle": {
470
+ "type": "string",
471
+ "mutable": false,
472
+ "complexType": {
473
+ "original": "string",
474
+ "resolved": "string",
475
+ "references": {}
476
+ },
477
+ "required": false,
478
+ "optional": false,
479
+ "docs": {
480
+ "tags": [],
481
+ "text": "T\u00EDtulo que ser\u00E1 apresentado na barra de filtros"
482
+ },
483
+ "attribute": "filter-bar-title",
484
+ "reflect": false
485
+ },
456
486
  "resourceID": {
457
487
  "type": "string",
458
488
  "mutable": false,
@@ -742,6 +772,57 @@ export class SnkGrid {
742
772
  "attribute": "top-taskbar-custom-slot-id",
743
773
  "reflect": false,
744
774
  "defaultValue": "'GRID_TASKBAR_CUSTOM_ELEMENTS'"
775
+ },
776
+ "disablePersonalizedFilter": {
777
+ "type": "boolean",
778
+ "mutable": false,
779
+ "complexType": {
780
+ "original": "boolean",
781
+ "resolved": "boolean",
782
+ "references": {}
783
+ },
784
+ "required": false,
785
+ "optional": false,
786
+ "docs": {
787
+ "tags": [],
788
+ "text": "Desabilita a apresenta\u00E7\u00E3o da op\u00E7\u00E3o de filtros personalizados na filter bar (chip de filtros)\ne no modal lateral de filtros (container de filtros personalizados)."
789
+ },
790
+ "attribute": "disable-personalized-filter",
791
+ "reflect": false
792
+ },
793
+ "gridLegacyConfigName": {
794
+ "type": "string",
795
+ "mutable": false,
796
+ "complexType": {
797
+ "original": "string",
798
+ "resolved": "string",
799
+ "references": {}
800
+ },
801
+ "required": false,
802
+ "optional": false,
803
+ "docs": {
804
+ "tags": [],
805
+ "text": "Chave da configura\u00E7\u00E3o legado da grade."
806
+ },
807
+ "attribute": "grid-legacy-config-name",
808
+ "reflect": false
809
+ },
810
+ "filterBarLegacyConfigName": {
811
+ "type": "string",
812
+ "mutable": false,
813
+ "complexType": {
814
+ "original": "string",
815
+ "resolved": "string",
816
+ "references": {}
817
+ },
818
+ "required": false,
819
+ "optional": false,
820
+ "docs": {
821
+ "tags": [],
822
+ "text": "Chave da configura\u00E7\u00E3o legado da barra de filtros."
823
+ },
824
+ "attribute": "filter-bar-legacy-config-name",
825
+ "reflect": false
745
826
  }
746
827
  };
747
828
  }
@@ -898,4 +979,10 @@ export class SnkGrid {
898
979
  };
899
980
  }
900
981
  static get elementRef() { return "_element"; }
982
+ static get watchers() {
983
+ return [{
984
+ "propName": "gridLegacyConfigName",
985
+ "methodName": "handleGridLegacyConfigName"
986
+ }];
987
+ }
901
988
  }
@@ -1,9 +1,9 @@
1
- import { StringUtils, ElementIDUtils } from '@sankhyalabs/core';
1
+ import { StringUtils, ElementIDUtils, ApplicationContext } from '@sankhyalabs/core';
2
2
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
3
3
  import { CheckMode } from '@sankhyalabs/ezui/dist/collection/components/ez-check/CheckMode';
4
4
  import { h, Host } from '@stencil/core';
5
- import { ConfigStorage } from '../../../../lib/configs/ConfigStorage';
6
- import { ORDER_VALUES } from '../../../../lib/utils/constants';
5
+ import { ConfigStorage } from '../../lib/configs/ConfigStorage';
6
+ import { ORDER_VALUES } from '../../lib/utils/constants';
7
7
  export class SnkGridConfig {
8
8
  constructor() {
9
9
  this._orderListItems = [];
@@ -13,7 +13,6 @@ export class SnkGridConfig {
13
13
  this._dataChanged = false;
14
14
  this._componenteInternalKey = Date.now();
15
15
  this.selectedIndex = 0;
16
- this.application = undefined;
17
16
  this.columns = undefined;
18
17
  this.config = undefined;
19
18
  this.configName = undefined;
@@ -27,9 +26,10 @@ export class SnkGridConfig {
27
26
  * Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-grid.msg.ts"
28
27
  */
29
28
  getMessage(key, params) {
30
- return this.application.messagesBuilder.getMessage(key, params);
29
+ const application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
30
+ return application.messagesBuilder.getMessage(key, params);
31
31
  }
32
- createOrderList() {
32
+ getSortableColumns() {
33
33
  let newList = [];
34
34
  this.columns.filter(col => { var _a; return StringUtils.getBooleanValue((_a = col === null || col === void 0 ? void 0 : col.props) === null || _a === void 0 ? void 0 : _a.get("sortable"), true); }).forEach((column) => {
35
35
  var _a;
@@ -43,7 +43,11 @@ export class SnkGridConfig {
43
43
  newList.push(item);
44
44
  }
45
45
  });
46
- newList.sort((a, b) => {
46
+ return newList;
47
+ }
48
+ createOrderList() {
49
+ let newSortableList = this.getSortableColumns();
50
+ newSortableList.sort((a, b) => {
47
51
  //OS dois tem order index 0 e pelo menos um deles tem orientação de ordenação.
48
52
  if (a.orderIndex == 0 && b.orderIndex == 0 && (a.ascending != undefined || b.ascending != undefined)) {
49
53
  if (a.ascending != undefined)
@@ -66,7 +70,7 @@ export class SnkGridConfig {
66
70
  }
67
71
  return (a.orderIndex - b.orderIndex);
68
72
  });
69
- this._orderListItems = newList;
73
+ this._orderListItems = newSortableList;
70
74
  }
71
75
  createColumnList() {
72
76
  let visibleGroup = {
@@ -89,12 +93,18 @@ export class SnkGridConfig {
89
93
  });
90
94
  this._columListItems = [visibleGroup, hiddenGroup];
91
95
  }
96
+ createColumnListSlotDataElementId(item) {
97
+ return `configItem_${StringUtils.replaceAccentuatedChars(StringUtils.toCamelCase(item.label))}`;
98
+ }
92
99
  buildColumnListSlot(item, group) {
93
- const dataElementId = `configItem_${StringUtils.replaceAccentuatedChars(StringUtils.toCamelCase(item.label))}`;
100
+ const dataElementId = this.createColumnListSlotDataElementId(item);
94
101
  return (h("div", null, h("ez-check", { mode: CheckMode.SWITCH, id: CheckMode.SWITCH + ((item === null || item === void 0 ? void 0 : item.label) || '') + ((group === null || group === void 0 ? void 0 : group.group) || ''), value: group.group === this.getMessage("snkGridConfig.group.visible"), "data-element-id": dataElementId, onEzChange: (evt) => { this.switchColumnGroup(evt, item); } })));
95
102
  }
103
+ createOrderListSlotDataElementId(item) {
104
+ return `${this._element.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME)}_configItem_${StringUtils.toCamelCase(item.label)}`;
105
+ }
96
106
  buildOrderListSlot(item) {
97
- const dataElementId = `${this._element.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME)}_configItem_${StringUtils.toCamelCase(item.label)}`;
107
+ const dataElementId = this.createOrderListSlotDataElementId(item);
98
108
  let selectedOption = ORDER_VALUES.none.value;
99
109
  if ((item === null || item === void 0 ? void 0 : item.ascending) != undefined) {
100
110
  selectedOption = item.ascending == true ? ORDER_VALUES.asc.value : ORDER_VALUES.desc.value;
@@ -112,7 +122,7 @@ export class SnkGridConfig {
112
122
  let orderArray;
113
123
  if (((_a = this._orderPriorityList) === null || _a === void 0 ? void 0 : _a.length) > 0) {
114
124
  this._orderPriorityList.find((item) => item.label === newItem.label).sort = sortOrder;
115
- this._orderPriorityList.filter((item) => item.sort).map((item, index) => {
125
+ this._orderPriorityList.filter((item) => item.sort).forEach((item, index) => {
116
126
  if (item.label === newItem.label) {
117
127
  newItem.sortIndex = index;
118
128
  }
@@ -181,6 +191,35 @@ export class SnkGridConfig {
181
191
  this.closeConfig();
182
192
  this.save();
183
193
  }
194
+ saveGridConfigOnStorage(_newConfig) {
195
+ ConfigStorage.saveGridConfig(_newConfig, this.configName, this.resourceID)
196
+ .then((savedConfig) => {
197
+ this.configChange.emit(savedConfig);
198
+ this._orderList.clearHistory();
199
+ ApplicationUtils.info(this.getMessage("snkGridConfig.info.successfullyConfigSaved"), { iconName: "check" });
200
+ });
201
+ }
202
+ reOrderPriorityColumns(columns, orderPriorityList) {
203
+ let orderArray = [];
204
+ orderArray = columns.filter((item) => item.sort && item.hidden !== true)
205
+ .map((item) => {
206
+ return { label: item.label, orderIndex: 0 };
207
+ });
208
+ let indexCount = 0;
209
+ let newOrderArray = [];
210
+ orderPriorityList.forEach((orderPriorityItem) => {
211
+ let item = orderArray.find((column) => column.label === orderPriorityItem.label);
212
+ if (item) {
213
+ item.orderIndex = indexCount;
214
+ newOrderArray.push(item);
215
+ indexCount++;
216
+ }
217
+ });
218
+ if (newOrderArray.length > 0) {
219
+ orderArray = newOrderArray;
220
+ }
221
+ return orderArray;
222
+ }
184
223
  save() {
185
224
  var _a;
186
225
  let _newConfig;
@@ -193,30 +232,12 @@ export class SnkGridConfig {
193
232
  let _newColumnConfigList = [];
194
233
  let orderArray;
195
234
  if (((_a = this._orderPriorityList) === null || _a === void 0 ? void 0 : _a.length) > 0) {
196
- orderArray = this.columns.filter((item) => item.sort && item.hidden !== true)
197
- .map((item) => {
198
- return { label: item.label, orderIndex: 0 };
199
- });
200
- let indexCount = 0;
201
- let newOrderArray = [];
202
- this._orderPriorityList.forEach((orderPriorityItem) => {
203
- let item = orderArray.find((column) => column.label === orderPriorityItem.label);
204
- if (item) {
205
- item.orderIndex = indexCount;
206
- newOrderArray.push(item);
207
- indexCount++;
208
- }
209
- });
210
- if (newOrderArray.length > 0) {
211
- orderArray = newOrderArray;
212
- }
235
+ orderArray = this.reOrderPriorityColumns(this.columns, this._orderPriorityList);
213
236
  }
214
- for (let i = 0; i < this.columns.length; i++) {
215
- const column = this.columns[i];
237
+ this.columns.forEach((column) => {
216
238
  let _newColumnConfig = _newConfig.columns.find((_newColumnConfig) => column.name === _newColumnConfig.name);
217
- if (column.hidden === true && _newColumnConfig) {
218
- continue;
219
- }
239
+ if (column.hidden === true && _newColumnConfig)
240
+ return;
220
241
  if (_newColumnConfig) {
221
242
  _newColumnConfig.width = column.width;
222
243
  }
@@ -239,14 +260,9 @@ export class SnkGridConfig {
239
260
  }
240
261
  _newColumnConfigList.push(_newColumnConfig);
241
262
  }
242
- }
243
- _newConfig.columns = _newColumnConfigList;
244
- ConfigStorage.saveGridConfig(_newConfig, this.configName, this.resourceID)
245
- .then((savedConfig) => {
246
- this.configChange.emit(savedConfig);
247
- this._orderList.clearHistory();
248
- ApplicationUtils.info(this.getMessage("snkGridConfig.info.successfullyConfigSaved"), { iconName: "check" });
249
263
  });
264
+ _newConfig.columns = _newColumnConfigList;
265
+ this.saveGridConfigOnStorage(_newConfig);
250
266
  function adjustPriorityOrder(column, _newColumnConfig) {
251
267
  if (orderArray) {
252
268
  let orderItem = orderArray.find((item) => item.label === column.label);
@@ -281,85 +297,96 @@ export class SnkGridConfig {
281
297
  async locateColumn(evt, searchingText) {
282
298
  var _a;
283
299
  const hitEnter = evt.key === "Enter";
300
+ searchingText = searchingText || ((_a = evt.currentTarget) === null || _a === void 0 ? void 0 : _a.value);
284
301
  if (!searchingText) {
285
- searchingText = (_a = evt.currentTarget) === null || _a === void 0 ? void 0 : _a.value;
302
+ this.removeSelection();
303
+ return;
286
304
  }
287
- let newSelected = -1;
305
+ const matchedIndexes = await this.getMatchedIndexes(searchingText);
306
+ const newSelected = this.getNewSelectedIndex(matchedIndexes, hitEnter);
307
+ this._selectedIndex = newSelected;
288
308
  if (this.selectedIndex === 1) {
289
- if (searchingText) {
290
- const matchedIndexes = [];
291
- let orderListDatasource;
292
- await this._orderList.getList().then((listGroup) => {
293
- orderListDatasource = listGroup;
294
- orderListDatasource.forEach((column, index) => {
295
- if (this.compareWords(column, searchingText)) {
296
- matchedIndexes.push(index);
297
- }
298
- });
299
- });
300
- if (matchedIndexes.length > 0) {
301
- if (hitEnter) {
302
- for (let j = 0; j < matchedIndexes.length; j++) {
303
- if (matchedIndexes[j] > this._selectedIndex) {
304
- newSelected = matchedIndexes[j];
305
- break;
306
- }
307
- }
308
- }
309
- if (newSelected === -1) {
310
- newSelected = matchedIndexes[0];
311
- }
309
+ this.updateOrderListSelection(newSelected);
310
+ }
311
+ else {
312
+ this.updateColumnListSelection(newSelected);
313
+ }
314
+ }
315
+ async getMatchedIndexes(searchingText) {
316
+ const matchedIndexes = [];
317
+ if (this.selectedIndex === 1) {
318
+ const orderListDatasource = await this._orderList.getList();
319
+ orderListDatasource.forEach((column, index) => {
320
+ if (this.compareWords(column, searchingText)) {
321
+ matchedIndexes.push(index);
312
322
  }
313
- this._selectedIndex = newSelected;
314
- let selectedColumn;
315
- selectedColumn = orderListDatasource[newSelected];
316
- if (selectedColumn) {
317
- this._orderList.setSelection(selectedColumn, true);
323
+ });
324
+ }
325
+ else {
326
+ this.columns.forEach((column, index) => {
327
+ if (this.compareWords(column, searchingText)) {
328
+ matchedIndexes.push(index);
318
329
  }
319
- else {
320
- this._orderList.removeSelection();
330
+ });
331
+ }
332
+ return matchedIndexes;
333
+ }
334
+ getNewSelectedIndex(matchedIndexes, hitEnter) {
335
+ if (matchedIndexes.length === 0)
336
+ return -1;
337
+ if (hitEnter) {
338
+ for (const index of matchedIndexes) {
339
+ if (index > this._selectedIndex) {
340
+ return index;
321
341
  }
322
342
  }
343
+ }
344
+ return matchedIndexes[0];
345
+ }
346
+ updateOrderListSelection(newSelected) {
347
+ if (newSelected === -1) {
348
+ this._orderList.removeSelection();
349
+ return;
350
+ }
351
+ this._orderList.getList().then((orderListDatasource) => {
352
+ const selectedColumn = orderListDatasource[newSelected];
353
+ if (selectedColumn) {
354
+ this._orderList.setSelection(selectedColumn, true);
355
+ }
323
356
  else {
324
357
  this._orderList.removeSelection();
325
358
  }
359
+ });
360
+ }
361
+ updateColumnListSelection(newSelected) {
362
+ if (newSelected === -1) {
363
+ this._columnList.removeSelection();
364
+ return;
326
365
  }
327
- else {
328
- if (searchingText) {
329
- const matchedIndexes = [];
330
- this.columns.forEach((column, index) => {
331
- if (this.compareWords(column, searchingText)) {
332
- matchedIndexes.push(index);
333
- }
334
- });
335
- if (matchedIndexes.length > 0) {
336
- if (hitEnter) {
337
- for (let j = 0; j < matchedIndexes.length; j++) {
338
- if (matchedIndexes[j] > this._selectedIndex) {
339
- newSelected = matchedIndexes[j];
340
- break;
341
- }
342
- }
343
- }
344
- if (newSelected === -1) {
345
- newSelected = matchedIndexes[0];
346
- }
347
- }
348
- this._selectedIndex = newSelected;
349
- let selectedColumn = this.columns[newSelected];
350
- if (selectedColumn) {
351
- const listItem = this._columListItems.map(group => group.items).flat().find(item => item.label === selectedColumn.label);
352
- if (listItem)
353
- this._columnList.setSelection(listItem, true);
354
- }
355
- else {
356
- this._columnList.removeSelection();
357
- }
366
+ const selectedColumn = this.columns[newSelected];
367
+ if (selectedColumn) {
368
+ const listItem = this._columListItems
369
+ .map(group => group.items)
370
+ .flat()
371
+ .find(item => item.label === selectedColumn.label);
372
+ if (listItem) {
373
+ this._columnList.setSelection(listItem, true);
358
374
  }
359
375
  else {
360
376
  this._columnList.removeSelection();
361
377
  }
362
378
  }
379
+ else {
380
+ this._columnList.removeSelection();
381
+ }
382
+ }
383
+ removeSelection() {
384
+ if (this.selectedIndex === 1) {
385
+ this._orderList.removeSelection();
386
+ }
387
+ else {
388
+ this._columnList.removeSelection();
389
+ }
363
390
  }
364
391
  compareWords(column, searchingText) {
365
392
  var _a, _b;
@@ -493,26 +520,6 @@ export class SnkGridConfig {
493
520
  "reflect": false,
494
521
  "defaultValue": "0"
495
522
  },
496
- "application": {
497
- "type": "unknown",
498
- "mutable": false,
499
- "complexType": {
500
- "original": "SnkApplication",
501
- "resolved": "SnkApplication",
502
- "references": {
503
- "SnkApplication": {
504
- "location": "import",
505
- "path": "../../../snk-application/snk-application"
506
- }
507
- }
508
- },
509
- "required": false,
510
- "optional": false,
511
- "docs": {
512
- "tags": [],
513
- "text": "Refer\u00EAncia para o SnkApplication"
514
- }
515
- },
516
523
  "columns": {
517
524
  "type": "unknown",
518
525
  "mutable": true,
@@ -1,5 +1,5 @@
1
1
  import { h } from '@stencil/core';
2
- import { ORDER_VALUES } from '../../../../lib/utils/constants';
2
+ import { ORDER_VALUES } from '../../../lib/utils/constants';
3
3
  export class SelectBox {
4
4
  constructor() {
5
5
  this.selectedOption = ORDER_VALUES.none;
@@ -0,0 +1,3 @@
1
+ const REGULAR_DEFAULT_BTNS = ["INSERT", "REFRESH", "PREVIOUS", "NEXT", "DIVIDER", "MORE_OPTIONS"];
2
+ const REGULAR_SELECTED_BTNS = ["INSERT", "REFRESH", "PREVIOUS", "NEXT", "DIVIDER", "CLONE", "REMOVE", "DIVIDER", "MORE_OPTIONS"];
3
+ export { REGULAR_DEFAULT_BTNS, REGULAR_SELECTED_BTNS };
@@ -16,6 +16,11 @@
16
16
  flex-wrap: unset;
17
17
  flex-direction: column;
18
18
  }
19
+
20
+ .simple-crud__form--hidden {
21
+ display: none;
22
+ }
23
+
19
24
  ez-grid {
20
25
  --ez-grid__container--shadow: none;
21
26
  min-height: 300px;