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

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-531a191c.js} +21 -13
  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-76b4c346.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 +215 -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 +20 -12
  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 +344 -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 +19 -11
  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 +272 -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-02ecf57f.js} +21 -13
  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-90ca9105.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 +216 -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-2cfe0c2c.entry.js +1 -0
  125. package/dist/sankhyablocks/p-33718dfc.entry.js +1 -0
  126. package/dist/sankhyablocks/p-384fd6ae.js +1 -0
  127. package/dist/sankhyablocks/p-50783a8b.js +1 -0
  128. package/dist/sankhyablocks/p-5c0b53ce.js +56 -0
  129. package/dist/sankhyablocks/p-663ff67b.entry.js +1 -0
  130. package/dist/sankhyablocks/{p-7f3c7b09.entry.js → p-6b28cc74.entry.js} +1 -1
  131. package/dist/sankhyablocks/{p-e0fd9555.entry.js → p-7ddd95b6.entry.js} +1 -1
  132. package/dist/sankhyablocks/p-7e05bd83.entry.js +1 -0
  133. package/dist/sankhyablocks/p-7f97fee2.entry.js +1 -0
  134. package/dist/sankhyablocks/p-8111f63f.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-a83487a0.entry.js +1 -0
  138. package/dist/sankhyablocks/p-ae4fc9a9.js +1 -0
  139. package/dist/sankhyablocks/p-b11aa1e0.entry.js +1 -0
  140. package/dist/sankhyablocks/p-b41a622a.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-e7dbe53a.entry.js +1 -0
  147. package/dist/sankhyablocks/p-fad4c2fe.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 +2 -1
  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 +65 -3
  164. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +28 -1
  165. package/dist/types/components.d.ts +201 -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
@@ -3,13 +3,30 @@ import { SnkFilterItemConfig } from "../../components/snk-filter-bar/filter-item
3
3
  import { IFormCardConfig, IFormConfig } from "@sankhyalabs/ezui/dist/types/utils/form/interfaces";
4
4
  import { ISaveResourceResponse } from "../http/data-fetcher/fetchers/resource-fetcher";
5
5
  import { IPersonalizedFilter, IValidateFilter } from "../../components/snk-personalized-filter/interfaces/IPersonalizedFilter";
6
+ export declare enum CONFIG_SOURCE {
7
+ form = "form",
8
+ grid = "grid",
9
+ filterBar = "filterBar"
10
+ }
11
+ export interface ILegacyConfigNameParams {
12
+ gridLegacyConfig?: string;
13
+ formLegacyConfig?: string;
14
+ }
6
15
  export declare class ConfigStorage {
16
+ private static readonly CONFIG_NAME_ERROR_MESSAGE;
17
+ private static readonly LEGACY_CONFIG_NAME_ERROR_MESSAGE;
18
+ private static filterBarLegacyConfig;
19
+ private static formLegacyConfig;
20
+ private static gridLegacyConfig;
7
21
  private static configById;
8
22
  private static filterBarConfigFetcher;
9
23
  private static formConfigFetcher;
10
24
  private static gridConfigFetcher;
11
25
  private static personalizedFilterFetcher;
12
- static preload(resourceID: string, configName: string): void;
26
+ static addFilterBarLegacyConfig(configName: string, legacyConfigName: string): void;
27
+ static addFormLegacyConfig(configName: string, legacyConfigName: string): void;
28
+ static addGridLegacyConfig(configName: string, legacyConfigName: string): void;
29
+ static preload(resourceID: string, configName: string, legacyConfigs?: ILegacyConfigNameParams): void;
13
30
  static loadFilterBarConfig(name: string, resourceID: string, urlParams?: object): Promise<Array<SnkFilterItemConfig>>;
14
31
  static loadFormConfig(name: string, resourceID: string): Promise<IFormConfig>;
15
32
  static loadGridConfig(name: string, resourceID: string): Promise<IGridConfig>;
@@ -24,6 +41,9 @@ export declare class ConfigStorage {
24
41
  static deleteGridConfigCache(name: string, resourceID: string): Promise<void>;
25
42
  static deleteFormConfigCache(name: string, resourceID: string): Promise<void>;
26
43
  static deleteFilterBarConfigCache(name: string, resourceID: string): Promise<void>;
44
+ private static validateConfigName;
45
+ private static handleLegacyConfig;
46
+ private static handleLegacyConfigAsString;
27
47
  private static deleteConfigCache;
28
48
  private static buildCacheID;
29
49
  }
@@ -1,4 +1,5 @@
1
1
  export default class ParametersFetcher {
2
+ private _embeddedParams;
2
3
  private templateByQuery;
3
4
  constructor();
4
5
  private buldTemplates;
@@ -5,7 +5,8 @@ export default class PersonalizedFilterFetcher {
5
5
  constructor();
6
6
  private resolveURI;
7
7
  private buildTemplates;
8
- loadPersonalizedFilter(resourceID: string, filterID: string, configName?: string): Promise<IPersonalizedFilter>;
8
+ loadPersonalizedFilter(resourceID: string, filterID: string, configName?: string, legacyConfigName?: string): Promise<IPersonalizedFilter>;
9
+ private resolveLegacyConfigName;
9
10
  savePersonalizedFilter(personalizedFilter: IPersonalizedFilter, resourceID: string, configName?: string): Promise<IPersonalizedFilter>;
10
11
  removePersonalizedFilter(personalizedFilter: IPersonalizedFilter, resourceID: string, configName?: string): Promise<IPersonalizedFilter>;
11
12
  validatePersonalizedFilter(dataUnitName: string, expression: string): Promise<IValidateFilter>;
@@ -1,6 +1,9 @@
1
+ import { DataUnit } from '@sankhyalabs/core';
2
+ import { IGridConfig } from '@sankhyalabs/ezui/dist/types/components/ez-grid/controller/EzGridController';
1
3
  export interface CrudFindResult {
2
4
  fields: Map<string, string>;
3
5
  }
4
6
  export declare class CrudUtils {
7
+ static assertDefaultSorting(gridConfig: IGridConfig, dataUnit: DataUnit): void;
5
8
  static find(entityName: string, fields: Array<string>, criteria: Map<string, string>, onlyFirst: boolean, criteriaExpression: string, orderBy: string): Promise<unknown>;
6
9
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sankhyalabs/sankhyablocks",
3
- "version": "8.15.0-rc.1",
3
+ "version": "8.15.0-rc.11",
4
4
  "description": "Stencil Component Starter",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -63,7 +63,14 @@
63
63
  "redux": "^4.1.2"
64
64
  },
65
65
  "jest": {
66
- "verbose": true
66
+ "verbose": true,
67
+ "testResultsProcessor": "jest-sonar-reporter"
68
+ },
69
+ "jestSonar": {
70
+ "sonar56x": true,
71
+ "reportPath": "reports",
72
+ "reportFile": "test-report.xml",
73
+ "indent": 4
67
74
  },
68
75
  "peerDependencies": {
69
76
  "@sankhyalabs/core": "^5.0.0",
@@ -1,224 +0,0 @@
1
- 'use strict';
2
-
3
- const core = require('@sankhyalabs/core');
4
- const utils = require('@sankhyalabs/ezui/dist/collection/components/ez-grid/utils');
5
-
6
- class ArrayRepository {
7
- constructor(equalsFunction) {
8
- this._list = [];
9
- this._equalsFunction = equalsFunction;
10
- }
11
- async load(filterFunction, sortingFunction, offset, limit) {
12
- let result = [].concat(this._list);
13
- if (filterFunction != undefined) {
14
- result = this._list.filter(item => filterFunction(item));
15
- }
16
- if (sortingFunction != undefined) {
17
- result = result.sort(sortingFunction);
18
- }
19
- const count = result.length;
20
- if (limit != undefined) {
21
- const start = offset || 0;
22
- const end = limit ? start + limit : result.length;
23
- result = result.slice(start, end);
24
- }
25
- return Promise.resolve({ result, count });
26
- }
27
- async distict(itemProcessor) {
28
- const processedItems = [];
29
- let hasEmpty = false;
30
- for (const item of this._list) {
31
- const processedItem = itemProcessor(item);
32
- if (processedItem == undefined) {
33
- continue;
34
- }
35
- if (processedItem.value == undefined) {
36
- hasEmpty = true;
37
- continue;
38
- }
39
- processedItems.push(processedItem);
40
- }
41
- if (hasEmpty) {
42
- processedItems.push({ key: "", value: null });
43
- }
44
- return Promise.resolve(new Map(processedItems.map(item => [item.key, item.value])));
45
- }
46
- async push(items) {
47
- this._list.push(...items);
48
- }
49
- async clear() {
50
- this._list = [];
51
- }
52
- async delete(items) {
53
- this._list = this._list.filter(item => {
54
- for (const removed of items) {
55
- if (this._equalsFunction(item, removed)) {
56
- return false;
57
- }
58
- }
59
- return true;
60
- });
61
- }
62
- async update(items) {
63
- this._list = this._list.map(existingItem => {
64
- const newItem = items.find(newItem => this._equalsFunction(existingItem, newItem));
65
- return newItem == undefined ? existingItem : newItem;
66
- });
67
- }
68
- async insert(itemReference, items) {
69
- const itemPosition = this._list.indexOf(itemReference);
70
- if (itemPosition == -1) {
71
- this._list.push(...items);
72
- return;
73
- }
74
- this._list = this._list.slice(0, itemPosition).concat(items).concat(this._list.slice(itemPosition));
75
- }
76
- isOperating() {
77
- return true;
78
- }
79
- async isEmpty() {
80
- return Promise.resolve(this._list.length === 0);
81
- }
82
- async count() {
83
- return Promise.resolve(this._list.length);
84
- }
85
- }
86
-
87
- class PreloadManager {
88
- static setLoadingStatus(dataUnit, loadingInProgress) {
89
- this._loadingStatus.set(dataUnit.name, loadingInProgress);
90
- }
91
- static isCacheEnabled(_dataUnit) {
92
- return true;
93
- }
94
- static cacheRecords(dataUnit, records, resetDatabase, loadingInProgress) {
95
- PreloadManager.setLoadingStatus(dataUnit, loadingInProgress);
96
- if (PreloadManager.isCacheEnabled(dataUnit)) {
97
- this.getRepository(dataUnit).push(records);
98
- }
99
- else {
100
- if (resetDatabase) {
101
- this._repositories.delete(dataUnit.name);
102
- }
103
- }
104
- }
105
- static getSortingFunction(dataUnit, sorting) {
106
- if (sorting == undefined || sorting.length == 0) {
107
- return undefined;
108
- }
109
- return (recordA, recordB) => {
110
- for (const sort of sorting) {
111
- const result = core.FieldComparator.compare(dataUnit.getField(sort.field), recordA, recordB, sort.mode === core.SortMode.ASC);
112
- if (result != 0) {
113
- return result;
114
- }
115
- }
116
- };
117
- }
118
- static async getDistinct(dataUnit, fieldName) {
119
- if (!PreloadManager.isCacheEnabled(dataUnit)) {
120
- return Promise.resolve(utils.ColumnFilterManager.compileDistinct(fieldName, dataUnit));
121
- }
122
- let filterFunction;
123
- const request = dataUnit.getLastLoadRequest();
124
- if (request != undefined) {
125
- const columnFilters = utils.ColumnFilterManager.getColumnFilters(request.filters, fieldName);
126
- filterFunction = utils.ColumnFilterManager.getFilterFunction(dataUnit, Array.from(columnFilters.values()));
127
- }
128
- return new Promise((accept, reject) => {
129
- PreloadManager.getRepository(dataUnit).distict(record => {
130
- if (filterFunction != undefined && !filterFunction(record)) {
131
- return undefined;
132
- }
133
- const fieldValue = record[fieldName];
134
- if (fieldValue == undefined) {
135
- return { key: null, value: null };
136
- }
137
- const value = fieldValue.value != undefined ? fieldValue.value : fieldValue;
138
- return { key: dataUnit.getFormattedValue(fieldName, fieldValue), value };
139
- })
140
- .then(result => {
141
- if (result == undefined) {
142
- accept(undefined);
143
- return;
144
- }
145
- accept(Array.from(result.entries()).map(([label, value]) => ({ label, value, check: true })));
146
- })
147
- .catch(reason => reject(reason));
148
- });
149
- }
150
- static async loadData(dataUnit, request, loadFromServer) {
151
- try {
152
- if (PreloadManager.isCacheEnabled(dataUnit)) {
153
- let useCache = request.source === "EZ_GRID_LOADING_SOURCE" || request.source === core.DataUnit.CHANGING_PAGE_LOADING_SOURCE;
154
- if (useCache) {
155
- const isCacheEmpty = await PreloadManager.getRepository(dataUnit).isEmpty();
156
- if (!isCacheEmpty) {
157
- return PreloadManager.loadFromCache(dataUnit, request);
158
- }
159
- }
160
- //Como não vamos aproveitar o cache, ele precisa ser limpo.
161
- PreloadManager.getRepository(dataUnit).clear().catch(() => { });
162
- }
163
- return loadFromServer(dataUnit, request);
164
- }
165
- catch (error) {
166
- console.error(error);
167
- return Promise.reject(error);
168
- }
169
- }
170
- static insertRecords(dataUnit, reference, records) {
171
- if (PreloadManager.isCacheEnabled(dataUnit)) {
172
- PreloadManager.getRepository(dataUnit).insert(reference, records);
173
- }
174
- }
175
- static updateRecords(dataUnit, records) {
176
- if (PreloadManager.isCacheEnabled(dataUnit)) {
177
- PreloadManager.getRepository(dataUnit).update(records);
178
- }
179
- }
180
- static removeRecords(dataUnit, records) {
181
- if (PreloadManager.isCacheEnabled(dataUnit)) {
182
- PreloadManager.getRepository(dataUnit).delete(records);
183
- }
184
- }
185
- static async countRecords(dataUnit) {
186
- if (PreloadManager.isCacheEnabled(dataUnit)) {
187
- return PreloadManager.getRepository(dataUnit).count();
188
- }
189
- return Promise.resolve(0);
190
- }
191
- static getRepository(dataUnit) {
192
- const name = dataUnit.name;
193
- if (!PreloadManager._repositories.has(name)) {
194
- PreloadManager._repositories.set(name, new ArrayRepository((recordA, recordB) => recordA.__record__id__ === recordB.__record__id__));
195
- }
196
- return PreloadManager._repositories.get(name);
197
- }
198
- static async loadFromCache(dataUnit, request) {
199
- return new Promise((accept, reject) => {
200
- const columnFilters = utils.ColumnFilterManager.getColumnFilters(request.filters, "");
201
- const { limit, offset, sort } = request;
202
- PreloadManager.getRepository(dataUnit)
203
- .load(utils.ColumnFilterManager.getFilterFunction(dataUnit, Array.from(columnFilters.values())), PreloadManager.getSortingFunction(dataUnit, sort), offset, limit)
204
- .then(loadResult => {
205
- const stillLoading = PreloadManager._loadingStatus.get(dataUnit.name);
206
- const { count, result: records } = loadResult;
207
- const firstRecord = count == 0 ? 0 : offset + 1;
208
- const lastRecord = offset + Math.min(records.length, limit);
209
- const currentPage = offset / limit;
210
- const paginationInfo = {
211
- count, currentPage, firstRecord, lastRecord,
212
- hasMore: stillLoading || (lastRecord < count),
213
- total: stillLoading ? undefined : count
214
- };
215
- accept({ records, paginationInfo });
216
- })
217
- .catch(reason => reject(reason));
218
- });
219
- }
220
- }
221
- PreloadManager._repositories = new Map();
222
- PreloadManager._loadingStatus = new Map();
223
-
224
- exports.PreloadManager = PreloadManager;
@@ -1,49 +0,0 @@
1
- 'use strict';
2
-
3
- const core = require('@sankhyalabs/core');
4
- const InMemoryFilterColumnDataSource = require('@sankhyalabs/ezui/dist/collection/components/ez-grid/utils/InMemoryFilterColumnDataSource');
5
- const PreloadManager = require('./PreloadManager-84466da6.js');
6
-
7
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
-
9
- const InMemoryFilterColumnDataSource__default = /*#__PURE__*/_interopDefaultLegacy(InMemoryFilterColumnDataSource);
10
-
11
- class SnkMultiSelectionListDataSource {
12
- setDataUnit(dataUnit) {
13
- this._dataUnit = dataUnit;
14
- }
15
- setApplication(application) {
16
- this._application = application;
17
- }
18
- formatLabel(fieldName, value) {
19
- const { userInterface } = this._dataUnit.getField(fieldName);
20
- if (userInterface === core.UserInterface.DATETIME) {
21
- return core.DateUtils.formatDate(this._dataUnit.valueFromString(fieldName, value));
22
- }
23
- return String(this._dataUnit.getFormattedValue(fieldName, value));
24
- }
25
- async getStaticOptions(fieldName) {
26
- if (fieldName == undefined) {
27
- return Promise.resolve(undefined);
28
- }
29
- return Promise.resolve(await PreloadManager.PreloadManager.getDistinct(this._dataUnit, fieldName));
30
- }
31
- fetchData(filterTerm, fieldName) {
32
- return new Promise(resolve => {
33
- this._application.executeSelectDistinct(this._dataUnit, fieldName, filterTerm).then(result => {
34
- resolve(result.map(item => {
35
- const field = this._dataUnit.getField(fieldName);
36
- if (field.userInterface === core.UserInterface.SEARCH) {
37
- return Object.assign(Object.assign({}, JSON.parse(item)), { check: true });
38
- }
39
- return { value: item, label: this.formatLabel(fieldName, item), check: true };
40
- }));
41
- });
42
- });
43
- }
44
- sortItems(fieldName, items) {
45
- return InMemoryFilterColumnDataSource__default['default'].defaultSorterMultSelectionOption(this._dataUnit, fieldName, items);
46
- }
47
- }
48
-
49
- exports.SnkMultiSelectionListDataSource = SnkMultiSelectionListDataSource;