@firestitch/list 14.0.2 → 16.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (210) hide show
  1. package/app/classes/actions-controller.d.ts +20 -20
  2. package/app/classes/columns-controller.d.ts +71 -71
  3. package/app/classes/data-controller.d.ts +88 -88
  4. package/app/classes/external-params-controller.d.ts +32 -32
  5. package/app/classes/index.d.ts +2 -2
  6. package/app/classes/list-controller.d.ts +188 -188
  7. package/app/classes/pagination-controller.d.ts +197 -197
  8. package/app/classes/persistance-controller.d.ts +10 -10
  9. package/app/classes/reorder-controller.d.ts +67 -67
  10. package/app/classes/selection-controller.d.ts +155 -155
  11. package/app/classes/sorting-controller.d.ts +70 -70
  12. package/app/components/body/body.component.d.ts +28 -28
  13. package/app/components/body/row/actions/actions.component.d.ts +36 -36
  14. package/app/components/body/row/cell/cell.component.d.ts +22 -22
  15. package/app/components/body/row/inline-action/inline-action.component.d.ts +13 -13
  16. package/app/components/body/row/menu-action/menu-action.component.d.ts +20 -20
  17. package/app/components/body/row/row.component.d.ts +85 -85
  18. package/app/components/customize-cols/customize-cols.component.d.ts +17 -17
  19. package/app/components/footer/footer-row/footer-cell/footer-cell.component.d.ts +7 -7
  20. package/app/components/footer/footer-row/footer-row.component.d.ts +8 -14
  21. package/app/components/footer/footer.component.d.ts +15 -15
  22. package/app/components/head/head-cell/head-cell.component.d.ts +14 -14
  23. package/app/components/head/head.component.d.ts +49 -49
  24. package/app/components/list/list.component.d.ts +127 -127
  25. package/app/components/loader/loader.component.d.ts +14 -14
  26. package/app/components/manage-saved-filters/manage-saved-filters.component.d.ts +13 -13
  27. package/app/components/pagination/pagination.component.d.ts +14 -14
  28. package/app/components/saved-filters/saved-filters.component.d.ts +15 -15
  29. package/app/components/status/status.component.d.ts +20 -20
  30. package/app/directives/cell/cell.directive.d.ts +8 -8
  31. package/app/directives/column/column.directive.d.ts +37 -37
  32. package/app/directives/content/content.directive.d.ts +5 -5
  33. package/app/directives/content-init/content-init.directive.d.ts +9 -9
  34. package/app/directives/draggable-list/draggable-list.directive.d.ts +95 -95
  35. package/app/directives/draggable-row/draggable-row.directive.d.ts +23 -23
  36. package/app/directives/empty-state/empty-state.directive.d.ts +5 -5
  37. package/app/directives/footer/footer.directive.d.ts +8 -8
  38. package/app/directives/group-expand-trigger/group-expand-trigger.directive.d.ts +10 -10
  39. package/app/directives/group-footer/group-footer.directive.d.ts +6 -6
  40. package/app/directives/group-header/group-header.directive.d.ts +6 -6
  41. package/app/directives/header/header.directive.d.ts +8 -8
  42. package/app/directives/heading/heading.directive.d.ts +5 -5
  43. package/app/directives/heading-container/heading-container.directive.d.ts +5 -5
  44. package/app/directives/index.d.ts +3 -3
  45. package/app/directives/subheading/subheading.directive.d.ts +5 -5
  46. package/app/enums/action-type.enum.d.ts +7 -7
  47. package/app/enums/page-change-type.enum.d.ts +4 -4
  48. package/app/enums/pagination-strategy.enum.d.ts +5 -5
  49. package/app/enums/row-type.enum.d.ts +6 -6
  50. package/app/enums/state.enum.d.ts +9 -9
  51. package/app/fs-list.module.d.ts +60 -60
  52. package/app/fs-list.providers.d.ts +3 -3
  53. package/app/interfaces/cellconfig.interface.d.ts +5 -5
  54. package/app/interfaces/column-config.interface.d.ts +2 -2
  55. package/app/interfaces/draggable-list.interface.d.ts +7 -7
  56. package/app/interfaces/external-params.interface.d.ts +13 -13
  57. package/app/interfaces/index.d.ts +4 -4
  58. package/app/interfaces/listconfig.interface.d.ts +245 -245
  59. package/app/interfaces/pagination-state.interface.d.ts +9 -9
  60. package/app/interfaces/pagination.interface.d.ts +13 -13
  61. package/app/interfaces/sorting-change-event.interface.d.ts +4 -4
  62. package/app/models/column-async-attribute.d.ts +5 -5
  63. package/app/models/column-attributes.d.ts +39 -39
  64. package/app/models/column.model.d.ts +61 -61
  65. package/app/models/row/base-row.d.ts +13 -13
  66. package/app/models/row/child-row.d.ts +12 -12
  67. package/app/models/row/group-footer-row.d.ts +10 -10
  68. package/app/models/row/group-row.d.ts +16 -16
  69. package/app/models/row/simple-row.d.ts +5 -5
  70. package/app/models/row-action.model.d.ts +29 -29
  71. package/app/models/row.d.ts +34 -34
  72. package/app/models/styleConfig.model.d.ts +31 -31
  73. package/app/pipes/action-label.d.ts +8 -8
  74. package/app/pipes/index.d.ts +1 -1
  75. package/app/services/group-expand-notifier.service.d.ts +11 -11
  76. package/esm2022/app/classes/actions-controller.mjs +57 -0
  77. package/esm2022/app/classes/columns-controller.mjs +211 -0
  78. package/esm2022/app/classes/data-controller.mjs +348 -0
  79. package/esm2022/app/classes/external-params-controller.mjs +153 -0
  80. package/{esm2020 → esm2022}/app/classes/index.mjs +3 -3
  81. package/esm2022/app/classes/list-controller.mjs +712 -0
  82. package/esm2022/app/classes/pagination-controller.mjs +491 -0
  83. package/esm2022/app/classes/persistance-controller.mjs +19 -0
  84. package/esm2022/app/classes/reorder-controller.mjs +191 -0
  85. package/esm2022/app/classes/selection-controller.mjs +473 -0
  86. package/esm2022/app/classes/sorting-controller.mjs +207 -0
  87. package/esm2022/app/components/body/body.component.mjs +73 -0
  88. package/esm2022/app/components/body/row/actions/actions.component.mjs +102 -0
  89. package/esm2022/app/components/body/row/cell/cell.component.mjs +109 -0
  90. package/esm2022/app/components/body/row/inline-action/inline-action.component.mjs +32 -0
  91. package/esm2022/app/components/body/row/menu-action/menu-action.component.mjs +51 -0
  92. package/esm2022/app/components/body/row/row.component.mjs +341 -0
  93. package/esm2022/app/components/customize-cols/customize-cols.component.mjs +70 -0
  94. package/esm2022/app/components/footer/footer-row/footer-cell/footer-cell.component.mjs +16 -0
  95. package/esm2022/app/components/footer/footer-row/footer-row.component.mjs +17 -0
  96. package/esm2022/app/components/footer/footer.component.mjs +35 -0
  97. package/esm2022/app/components/head/head-cell/head-cell.component.mjs +32 -0
  98. package/esm2022/app/components/head/head.component.mjs +113 -0
  99. package/esm2022/app/components/list/list.component.mjs +406 -0
  100. package/esm2022/app/components/loader/loader.component.mjs +40 -0
  101. package/esm2022/app/components/manage-saved-filters/manage-saved-filters.component.mjs +78 -0
  102. package/esm2022/app/components/pagination/pagination.component.mjs +40 -0
  103. package/esm2022/app/components/saved-filters/saved-filters.component.mjs +32 -0
  104. package/esm2022/app/components/status/status.component.mjs +69 -0
  105. package/esm2022/app/directives/cell/cell.directive.mjs +21 -0
  106. package/esm2022/app/directives/column/column.directive.mjs +137 -0
  107. package/{esm2020 → esm2022}/app/directives/content/content.directive.mjs +13 -13
  108. package/esm2022/app/directives/content-init/content-init.directive.mjs +23 -0
  109. package/esm2022/app/directives/draggable-list/draggable-list.directive.mjs +344 -0
  110. package/esm2022/app/directives/draggable-row/draggable-row.directive.mjs +83 -0
  111. package/esm2022/app/directives/empty-state/empty-state.directive.mjs +13 -0
  112. package/esm2022/app/directives/footer/footer.directive.mjs +21 -0
  113. package/esm2022/app/directives/group-expand-trigger/group-expand-trigger.directive.mjs +28 -0
  114. package/{esm2020 → esm2022}/app/directives/group-footer/group-footer.directive.mjs +14 -14
  115. package/{esm2020 → esm2022}/app/directives/group-header/group-header.directive.mjs +14 -14
  116. package/esm2022/app/directives/header/header.directive.mjs +21 -0
  117. package/esm2022/app/directives/heading/heading.directive.mjs +13 -0
  118. package/{esm2020 → esm2022}/app/directives/heading-container/heading-container.directive.mjs +13 -13
  119. package/{esm2020 → esm2022}/app/directives/index.mjs +4 -4
  120. package/esm2022/app/directives/subheading/subheading.directive.mjs +13 -0
  121. package/{esm2020 → esm2022}/app/enums/action-type.enum.mjs +8 -8
  122. package/{esm2020 → esm2022}/app/enums/page-change-type.enum.mjs +6 -6
  123. package/{esm2020 → esm2022}/app/enums/pagination-strategy.enum.mjs +7 -7
  124. package/{esm2020 → esm2022}/app/enums/row-type.enum.mjs +7 -7
  125. package/{esm2020 → esm2022}/app/enums/state.enum.mjs +11 -11
  126. package/{esm2020 → esm2022}/app/fs-list.module.mjs +244 -244
  127. package/{esm2020 → esm2022}/app/fs-list.providers.mjs +4 -4
  128. package/{esm2020 → esm2022}/app/interfaces/cellconfig.interface.mjs +2 -2
  129. package/{esm2020 → esm2022}/app/interfaces/column-config.interface.mjs +1 -1
  130. package/{esm2020 → esm2022}/app/interfaces/draggable-list.interface.mjs +2 -2
  131. package/esm2022/app/interfaces/external-params.interface.mjs +2 -0
  132. package/{esm2020 → esm2022}/app/interfaces/index.mjs +5 -5
  133. package/{esm2020 → esm2022}/app/interfaces/listconfig.interface.mjs +1 -1
  134. package/{esm2020 → esm2022}/app/interfaces/pagination-state.interface.mjs +1 -1
  135. package/esm2022/app/interfaces/pagination.interface.mjs +2 -0
  136. package/{esm2020 → esm2022}/app/interfaces/sorting-change-event.interface.mjs +2 -2
  137. package/{esm2020 → esm2022}/app/models/column-async-attribute.mjs +13 -13
  138. package/esm2022/app/models/column-attributes.mjs +139 -0
  139. package/esm2022/app/models/column.model.mjs +173 -0
  140. package/esm2022/app/models/row/base-row.mjs +25 -0
  141. package/esm2022/app/models/row/child-row.mjs +29 -0
  142. package/esm2022/app/models/row/group-footer-row.mjs +22 -0
  143. package/{esm2020 → esm2022}/app/models/row/group-row.mjs +45 -45
  144. package/{esm2020 → esm2022}/app/models/row/simple-row.mjs +10 -10
  145. package/esm2022/app/models/row-action.model.mjs +102 -0
  146. package/esm2022/app/models/row.mjs +90 -0
  147. package/esm2022/app/models/styleConfig.model.mjs +78 -0
  148. package/{esm2020 → esm2022}/app/pipes/action-label.mjs +17 -17
  149. package/{esm2020 → esm2022}/app/pipes/index.mjs +1 -1
  150. package/esm2022/app/services/group-expand-notifier.service.mjs +24 -0
  151. package/{esm2020 → esm2022}/firestitch-list.mjs +4 -4
  152. package/{esm2020 → esm2022}/public_api.mjs +45 -45
  153. package/{fesm2020 → fesm2022}/firestitch-list.mjs +5854 -5620
  154. package/fesm2022/firestitch-list.mjs.map +1 -0
  155. package/index.d.ts +5 -5
  156. package/package.json +5 -11
  157. package/public_api.d.ts +41 -41
  158. package/esm2020/app/classes/actions-controller.mjs +0 -55
  159. package/esm2020/app/classes/columns-controller.mjs +0 -206
  160. package/esm2020/app/classes/data-controller.mjs +0 -345
  161. package/esm2020/app/classes/external-params-controller.mjs +0 -147
  162. package/esm2020/app/classes/list-controller.mjs +0 -674
  163. package/esm2020/app/classes/pagination-controller.mjs +0 -491
  164. package/esm2020/app/classes/persistance-controller.mjs +0 -19
  165. package/esm2020/app/classes/reorder-controller.mjs +0 -182
  166. package/esm2020/app/classes/selection-controller.mjs +0 -466
  167. package/esm2020/app/classes/sorting-controller.mjs +0 -206
  168. package/esm2020/app/components/body/body.component.mjs +0 -64
  169. package/esm2020/app/components/body/row/actions/actions.component.mjs +0 -97
  170. package/esm2020/app/components/body/row/cell/cell.component.mjs +0 -107
  171. package/esm2020/app/components/body/row/inline-action/inline-action.component.mjs +0 -33
  172. package/esm2020/app/components/body/row/menu-action/menu-action.component.mjs +0 -46
  173. package/esm2020/app/components/body/row/row.component.mjs +0 -322
  174. package/esm2020/app/components/customize-cols/customize-cols.component.mjs +0 -68
  175. package/esm2020/app/components/footer/footer-row/footer-cell/footer-cell.component.mjs +0 -16
  176. package/esm2020/app/components/footer/footer-row/footer-row.component.mjs +0 -28
  177. package/esm2020/app/components/footer/footer.component.mjs +0 -31
  178. package/esm2020/app/components/head/head-cell/head-cell.component.mjs +0 -29
  179. package/esm2020/app/components/head/head.component.mjs +0 -103
  180. package/esm2020/app/components/list/list.component.mjs +0 -385
  181. package/esm2020/app/components/loader/loader.component.mjs +0 -40
  182. package/esm2020/app/components/manage-saved-filters/manage-saved-filters.component.mjs +0 -76
  183. package/esm2020/app/components/pagination/pagination.component.mjs +0 -37
  184. package/esm2020/app/components/saved-filters/saved-filters.component.mjs +0 -29
  185. package/esm2020/app/components/status/status.component.mjs +0 -64
  186. package/esm2020/app/directives/cell/cell.directive.mjs +0 -18
  187. package/esm2020/app/directives/column/column.directive.mjs +0 -121
  188. package/esm2020/app/directives/content-init/content-init.directive.mjs +0 -22
  189. package/esm2020/app/directives/draggable-list/draggable-list.directive.mjs +0 -330
  190. package/esm2020/app/directives/draggable-row/draggable-row.directive.mjs +0 -78
  191. package/esm2020/app/directives/empty-state/empty-state.directive.mjs +0 -13
  192. package/esm2020/app/directives/footer/footer.directive.mjs +0 -18
  193. package/esm2020/app/directives/group-expand-trigger/group-expand-trigger.directive.mjs +0 -26
  194. package/esm2020/app/directives/header/header.directive.mjs +0 -18
  195. package/esm2020/app/directives/heading/heading.directive.mjs +0 -13
  196. package/esm2020/app/directives/subheading/subheading.directive.mjs +0 -13
  197. package/esm2020/app/interfaces/external-params.interface.mjs +0 -2
  198. package/esm2020/app/interfaces/pagination.interface.mjs +0 -2
  199. package/esm2020/app/models/column-attributes.mjs +0 -132
  200. package/esm2020/app/models/column.model.mjs +0 -164
  201. package/esm2020/app/models/row/base-row.mjs +0 -23
  202. package/esm2020/app/models/row/child-row.mjs +0 -28
  203. package/esm2020/app/models/row/group-footer-row.mjs +0 -21
  204. package/esm2020/app/models/row-action.model.mjs +0 -90
  205. package/esm2020/app/models/row.mjs +0 -89
  206. package/esm2020/app/models/styleConfig.model.mjs +0 -76
  207. package/esm2020/app/services/group-expand-notifier.service.mjs +0 -26
  208. package/fesm2015/firestitch-list.mjs +0 -5801
  209. package/fesm2015/firestitch-list.mjs.map +0 -1
  210. package/fesm2020/firestitch-list.mjs.map +0 -1
@@ -1,39 +1,39 @@
1
- import { Observable } from 'rxjs';
2
- export declare class ColumnAttributes {
3
- private _title;
4
- private _name;
5
- private _customize;
6
- private _sortable;
7
- private _sortableDefault;
8
- private _direction$;
9
- private _align;
10
- private _width;
11
- private _className;
12
- private _visible$;
13
- constructor(attrs?: {
14
- [key: string]: any;
15
- });
16
- set title(value: string);
17
- get title(): string;
18
- set name(value: string);
19
- get name(): string;
20
- set customize(value: boolean);
21
- get customize(): boolean;
22
- set sortable(value: boolean);
23
- get sortable(): boolean;
24
- set sortableDefault(value: boolean);
25
- get sortableDefault(): boolean;
26
- set direction(value: 'asc' | 'desc');
27
- get direction(): 'asc' | 'desc';
28
- get direction$(): Observable<'asc' | 'desc'>;
29
- set align(value: string);
30
- get align(): string;
31
- set width(value: string);
32
- get width(): string;
33
- set className(value: string | string[]);
34
- get className(): string | string[];
35
- set visible(value: boolean);
36
- get visible(): boolean;
37
- get visible$(): Observable<boolean>;
38
- private _init;
39
- }
1
+ import { Observable } from 'rxjs';
2
+ export declare class ColumnAttributes {
3
+ private _title;
4
+ private _name;
5
+ private _customize;
6
+ private _sortable;
7
+ private _sortableDefault;
8
+ private _direction$;
9
+ private _align;
10
+ private _width;
11
+ private _className;
12
+ private _visible$;
13
+ constructor(attrs?: {
14
+ [key: string]: any;
15
+ });
16
+ set title(value: string);
17
+ get title(): string;
18
+ set name(value: string);
19
+ get name(): string;
20
+ set customize(value: boolean);
21
+ get customize(): boolean;
22
+ set sortable(value: boolean);
23
+ get sortable(): boolean;
24
+ set sortableDefault(value: boolean);
25
+ get sortableDefault(): boolean;
26
+ set direction(value: 'asc' | 'desc');
27
+ get direction(): 'asc' | 'desc';
28
+ get direction$(): Observable<'asc' | 'desc'>;
29
+ set align(value: string);
30
+ get align(): string;
31
+ set width(value: string);
32
+ get width(): string;
33
+ set className(value: string | string[]);
34
+ get className(): string | string[];
35
+ set visible(value: boolean);
36
+ get visible(): boolean;
37
+ get visible$(): Observable<boolean>;
38
+ private _init;
39
+ }
@@ -1,61 +1,61 @@
1
- import { QueryList, TemplateRef } from '@angular/core';
2
- import { Observable } from 'rxjs';
3
- import { FsListGroupExpandTriggerDirective } from '../directives/group-expand-trigger/group-expand-trigger.directive';
4
- import { FsListColumnConfig } from '../interfaces/column-config.interface';
5
- import { StyleConfig } from './styleConfig.model';
6
- export declare enum SortingDirection {
7
- asc = "asc",
8
- desc = "desc"
9
- }
10
- export declare class Column {
11
- headerTemplate: TemplateRef<any>;
12
- groupHeaderTemplate: TemplateRef<any>;
13
- groupFooterTemplate: TemplateRef<any>;
14
- cellTemplate: TemplateRef<any>;
15
- footerTemplate: TemplateRef<any>;
16
- expandTrigger: QueryList<FsListGroupExpandTriggerDirective>;
17
- headerConfigs: StyleConfig;
18
- groupHeaderConfigs: StyleConfig;
19
- groupFooterConfigs: StyleConfig;
20
- cellConfigs: StyleConfig;
21
- footerConfigs: StyleConfig;
22
- colStyles: StyleConfig;
23
- headerColspanned: boolean;
24
- groupHeaderColspanned: boolean;
25
- groupFooterColspanned: boolean;
26
- cellColspanned: boolean;
27
- footerColspanned: boolean;
28
- private _attributes;
29
- private _defaultDirection;
30
- private _ordered;
31
- constructor(colConfig: FsListColumnConfig, colDefaults?: any);
32
- set title(value: string);
33
- get title(): string;
34
- get name(): string;
35
- get customize(): boolean;
36
- get width(): string;
37
- set sortable(value: boolean);
38
- get sortable(): boolean;
39
- get sortableDefault(): boolean;
40
- set sortingDirection(value: 'asc' | 'desc');
41
- get sortingDirection(): 'asc' | 'desc';
42
- get sortingDirection$(): Observable<'asc' | 'desc'>;
43
- get visible(): boolean;
44
- get visible$(): Observable<boolean>;
45
- get direction(): "desc" | "asc";
46
- get fullNameDirection(): "Ascending" | "Descending";
47
- get ordered(): boolean;
48
- set ordered(value: boolean);
49
- /**
50
- * Merge with defaults with existing config
51
- *
52
- * @param defaults
53
- */
54
- mergeWithColumnDefaults(defaults: any): void;
55
- /**
56
- * Change sorting direction
57
- */
58
- changeDirection(): void;
59
- updateVisibility(value: boolean): void;
60
- private _parseConfig;
61
- }
1
+ import { QueryList, TemplateRef } from '@angular/core';
2
+ import { Observable } from 'rxjs';
3
+ import { FsListGroupExpandTriggerDirective } from '../directives/group-expand-trigger/group-expand-trigger.directive';
4
+ import { FsListColumnConfig } from '../interfaces/column-config.interface';
5
+ import { StyleConfig } from './styleConfig.model';
6
+ export declare enum SortingDirection {
7
+ asc = "asc",
8
+ desc = "desc"
9
+ }
10
+ export declare class Column {
11
+ headerTemplate: TemplateRef<any>;
12
+ groupHeaderTemplate: TemplateRef<any>;
13
+ groupFooterTemplate: TemplateRef<any>;
14
+ cellTemplate: TemplateRef<any>;
15
+ footerTemplate: TemplateRef<any>;
16
+ expandTrigger: QueryList<FsListGroupExpandTriggerDirective>;
17
+ headerConfigs: StyleConfig;
18
+ groupHeaderConfigs: StyleConfig;
19
+ groupFooterConfigs: StyleConfig;
20
+ cellConfigs: StyleConfig;
21
+ footerConfigs: StyleConfig;
22
+ colStyles: StyleConfig;
23
+ headerColspanned: boolean;
24
+ groupHeaderColspanned: boolean;
25
+ groupFooterColspanned: boolean;
26
+ cellColspanned: boolean;
27
+ footerColspanned: boolean;
28
+ private _attributes;
29
+ private _defaultDirection;
30
+ private _ordered;
31
+ constructor(colConfig: FsListColumnConfig, colDefaults?: any);
32
+ set title(value: string);
33
+ get title(): string;
34
+ get name(): string;
35
+ get customize(): boolean;
36
+ get width(): string;
37
+ set sortable(value: boolean);
38
+ get sortable(): boolean;
39
+ get sortableDefault(): boolean;
40
+ set sortingDirection(value: 'asc' | 'desc');
41
+ get sortingDirection(): 'asc' | 'desc';
42
+ get sortingDirection$(): Observable<'asc' | 'desc'>;
43
+ get visible(): boolean;
44
+ get visible$(): Observable<boolean>;
45
+ get direction(): "asc" | "desc";
46
+ get fullNameDirection(): "Ascending" | "Descending";
47
+ get ordered(): boolean;
48
+ set ordered(value: boolean);
49
+ /**
50
+ * Merge with defaults with existing config
51
+ *
52
+ * @param defaults
53
+ */
54
+ mergeWithColumnDefaults(defaults: any): void;
55
+ /**
56
+ * Change sorting direction
57
+ */
58
+ changeDirection(): void;
59
+ updateVisibility(value: boolean): void;
60
+ private _parseConfig;
61
+ }
@@ -1,13 +1,13 @@
1
- import { RowType } from '../../enums/row-type.enum';
2
- import { FsListReorderData } from '../../interfaces';
3
- export declare abstract class BaseRow {
4
- index: number;
5
- readyToSwap: boolean;
6
- protected readonly _rowType: RowType;
7
- private readonly _data;
8
- constructor(data?: any, rowType?: RowType);
9
- get data(): any;
10
- get type(): RowType;
11
- getReorderData(): FsListReorderData;
12
- abstract destroy(): any;
13
- }
1
+ import { RowType } from '../../enums/row-type.enum';
2
+ import { FsListReorderData } from '../../interfaces';
3
+ export declare abstract class BaseRow {
4
+ index: number;
5
+ readyToSwap: boolean;
6
+ protected readonly _rowType: RowType;
7
+ private readonly _data;
8
+ constructor(data?: any, rowType?: RowType);
9
+ get data(): any;
10
+ get type(): RowType;
11
+ getReorderData(): FsListReorderData;
12
+ abstract destroy(): any;
13
+ }
@@ -1,12 +1,12 @@
1
- import { BaseRow } from './base-row';
2
- import { GroupRow } from './group-row';
3
- import { FsListReorderData } from '../../interfaces';
4
- export declare class ChildRow extends BaseRow {
5
- visible: boolean;
6
- private readonly _parent;
7
- constructor(data?: any, parent?: GroupRow);
8
- get parent(): GroupRow;
9
- get isChild(): boolean;
10
- getReorderData(): FsListReorderData;
11
- destroy(): void;
12
- }
1
+ import { BaseRow } from './base-row';
2
+ import { GroupRow } from './group-row';
3
+ import { FsListReorderData } from '../../interfaces';
4
+ export declare class ChildRow extends BaseRow {
5
+ visible: boolean;
6
+ private readonly _parent;
7
+ constructor(data?: any, parent?: GroupRow);
8
+ get parent(): GroupRow;
9
+ get isChild(): boolean;
10
+ getReorderData(): FsListReorderData;
11
+ destroy(): void;
12
+ }
@@ -1,10 +1,10 @@
1
- import { BaseRow } from './base-row';
2
- import { GroupRow } from './group-row';
3
- export declare class GroupFooterRow extends BaseRow {
4
- visible: boolean;
5
- private readonly _parent;
6
- constructor(data?: any, parent?: GroupRow);
7
- get parent(): GroupRow;
8
- get isGroupFooter(): boolean;
9
- destroy(): void;
10
- }
1
+ import { BaseRow } from './base-row';
2
+ import { GroupRow } from './group-row';
3
+ export declare class GroupFooterRow extends BaseRow {
4
+ visible: boolean;
5
+ private readonly _parent;
6
+ constructor(data?: any, parent?: GroupRow);
7
+ get parent(): GroupRow;
8
+ get isGroupFooter(): boolean;
9
+ destroy(): void;
10
+ }
@@ -1,16 +1,16 @@
1
- import { BaseRow } from './base-row';
2
- import { ChildRow } from './child-row';
3
- import { GroupFooterRow } from './group-footer-row';
4
- export declare class GroupRow extends BaseRow {
5
- children: (ChildRow | GroupFooterRow)[];
6
- private readonly _expanded;
7
- constructor(data?: any, initialExpand?: boolean);
8
- get childrenData(): any[];
9
- get isGroup(): boolean;
10
- get expanded(): boolean;
11
- get expanded$(): import("rxjs").Observable<boolean>;
12
- updateChildrenIndexes(): void;
13
- updateChildrenVisibility(): void;
14
- toggleRowExpandStatus(): void;
15
- destroy(): void;
16
- }
1
+ import { BaseRow } from './base-row';
2
+ import { ChildRow } from './child-row';
3
+ import { GroupFooterRow } from './group-footer-row';
4
+ export declare class GroupRow extends BaseRow {
5
+ children: (ChildRow | GroupFooterRow)[];
6
+ private readonly _expanded;
7
+ constructor(data?: any, initialExpand?: boolean);
8
+ get childrenData(): any[];
9
+ get isGroup(): boolean;
10
+ get expanded(): boolean;
11
+ get expanded$(): import("rxjs").Observable<boolean>;
12
+ updateChildrenIndexes(): void;
13
+ updateChildrenVisibility(): void;
14
+ toggleRowExpandStatus(): void;
15
+ destroy(): void;
16
+ }
@@ -1,5 +1,5 @@
1
- import { BaseRow } from './base-row';
2
- export declare class SimpleRow extends BaseRow {
3
- constructor(data?: any);
4
- destroy(): void;
5
- }
1
+ import { BaseRow } from './base-row';
2
+ export declare class SimpleRow extends BaseRow {
3
+ constructor(data?: any);
4
+ destroy(): void;
5
+ }
@@ -1,29 +1,29 @@
1
- import { ActionType } from '../enums/action-type.enum';
2
- import { FsListRowActionFile, FsListRowActionLink } from '../interfaces';
3
- export declare class RowAction {
4
- icon: string;
5
- menu: boolean;
6
- remove: {
7
- title: string;
8
- template: string;
9
- };
10
- className: string;
11
- type: ActionType;
12
- show: Function;
13
- restore: boolean;
14
- rowActions: RowAction[];
15
- label: string;
16
- routerLink: FsListRowActionLink;
17
- classArray: string[];
18
- isShown: boolean;
19
- click: Function;
20
- fileConfig: FsListRowActionFile;
21
- private _linkFn;
22
- private readonly _isGroup;
23
- constructor(config?: any);
24
- get isGroup(): boolean;
25
- _init(value: any): void;
26
- checkShowStatus(row: any, index: any): void;
27
- updateLink(row: any): void;
28
- private _clickEvent;
29
- }
1
+ import { ActionType } from '../enums/action-type.enum';
2
+ import { FsListRowActionFile, FsListRowActionLink } from '../interfaces';
3
+ export declare class RowAction {
4
+ icon: string;
5
+ menu: boolean;
6
+ remove: {
7
+ title: string;
8
+ template: string;
9
+ };
10
+ className: string;
11
+ type: ActionType;
12
+ show: Function;
13
+ restore: boolean;
14
+ rowActions: RowAction[];
15
+ label: string;
16
+ routerLink: FsListRowActionLink;
17
+ classArray: string[];
18
+ isShown: boolean;
19
+ click: Function;
20
+ fileConfig: FsListRowActionFile;
21
+ private _linkFn;
22
+ private readonly _isGroup;
23
+ constructor(config?: any);
24
+ get isGroup(): boolean;
25
+ _init(value: any): void;
26
+ checkShowStatus(row: any, index: any): void;
27
+ updateLink(row: any): void;
28
+ private _clickEvent;
29
+ }
@@ -1,34 +1,34 @@
1
- import { Observable } from 'rxjs';
2
- import { RowType } from '../enums/row-type.enum';
3
- import { FsListReorderData } from '../interfaces';
4
- import { ChildRow } from './row/child-row';
5
- import { GroupFooterRow } from './row/group-footer-row';
6
- import { GroupRow } from './row/group-row';
7
- export declare class Row {
8
- private _row;
9
- private _actionsUpdate$;
10
- constructor(data?: any, rowType?: RowType, { parent, initialExpand }?: {
11
- parent?: GroupRow;
12
- initialExpand?: boolean;
13
- });
14
- get index(): number;
15
- get actionsUpdate$(): Observable<any>;
16
- actionsUpdate(): void;
17
- set index(value: number);
18
- get readyToSwap(): boolean;
19
- get visible(): boolean;
20
- set readyToSwap(value: boolean);
21
- get data(): any;
22
- get type(): RowType;
23
- get isGroup(): boolean;
24
- get isGroupChild(): boolean;
25
- get isGroupFooter(): boolean;
26
- get parent(): GroupRow;
27
- get children(): (ChildRow | GroupFooterRow)[];
28
- get expanded(): boolean;
29
- get expanded$(): Observable<boolean>;
30
- updateChildrenIndexes(): void;
31
- toggleRowExpandStatus(): void;
32
- getReorderData(): FsListReorderData;
33
- destroy(): void;
34
- }
1
+ import { Observable } from 'rxjs';
2
+ import { RowType } from '../enums/row-type.enum';
3
+ import { FsListReorderData } from '../interfaces';
4
+ import { ChildRow } from './row/child-row';
5
+ import { GroupFooterRow } from './row/group-footer-row';
6
+ import { GroupRow } from './row/group-row';
7
+ export declare class Row {
8
+ private _row;
9
+ private _actionsUpdate$;
10
+ constructor(data?: any, rowType?: RowType, { parent, initialExpand }?: {
11
+ parent?: GroupRow;
12
+ initialExpand?: boolean;
13
+ });
14
+ get index(): number;
15
+ get actionsUpdate$(): Observable<any>;
16
+ actionsUpdate(): void;
17
+ set index(value: number);
18
+ get readyToSwap(): boolean;
19
+ get visible(): boolean;
20
+ set readyToSwap(value: boolean);
21
+ get data(): any;
22
+ get type(): RowType;
23
+ get isGroup(): boolean;
24
+ get isGroupChild(): boolean;
25
+ get isGroupFooter(): boolean;
26
+ get parent(): GroupRow;
27
+ get children(): (ChildRow | GroupFooterRow)[];
28
+ get expanded(): boolean;
29
+ get expanded$(): Observable<boolean>;
30
+ updateChildrenIndexes(): void;
31
+ toggleRowExpandStatus(): void;
32
+ getReorderData(): FsListReorderData;
33
+ destroy(): void;
34
+ }
@@ -1,31 +1,31 @@
1
- export declare class StyleConfig {
2
- colspan: any;
3
- align: string;
4
- className: string | string[];
5
- classesArray: any[];
6
- classesString: string;
7
- constructor(config?: {});
8
- /**
9
- * Create static array of styles for using in templates
10
- */
11
- updateClasesArray(): void;
12
- /**
13
- * Prioritized merge for align options
14
- * @param prior1
15
- * @param prior2
16
- */
17
- mergeAlignByPriority(prior1: StyleConfig, prior2: StyleConfig): void;
18
- /**
19
- * Prioritized merge for class options
20
- * @param prior1
21
- * @param prior2
22
- */
23
- mergeClassByPriority(prior1: StyleConfig, prior2: StyleConfig): void;
24
- private _init;
25
- /**
26
- * Merge params into array
27
- * @param to
28
- * @param from
29
- */
30
- private mergeAnythingIntoArray;
31
- }
1
+ export declare class StyleConfig {
2
+ colspan: any;
3
+ align: string;
4
+ className: string | string[];
5
+ classesArray: any[];
6
+ classesString: string;
7
+ constructor(config?: {});
8
+ /**
9
+ * Create static array of styles for using in templates
10
+ */
11
+ updateClasesArray(): void;
12
+ /**
13
+ * Prioritized merge for align options
14
+ * @param prior1
15
+ * @param prior2
16
+ */
17
+ mergeAlignByPriority(prior1: StyleConfig, prior2: StyleConfig): void;
18
+ /**
19
+ * Prioritized merge for class options
20
+ * @param prior1
21
+ * @param prior2
22
+ */
23
+ mergeClassByPriority(prior1: StyleConfig, prior2: StyleConfig): void;
24
+ private _init;
25
+ /**
26
+ * Merge params into array
27
+ * @param to
28
+ * @param from
29
+ */
30
+ private mergeAnythingIntoArray;
31
+ }
@@ -1,8 +1,8 @@
1
- import { PipeTransform } from '@angular/core';
2
- import { Row } from '../models/row';
3
- import * as i0 from "@angular/core";
4
- export declare class ActionLabelPipe implements PipeTransform {
5
- transform(label: any, row: Row): any;
6
- static ɵfac: i0.ɵɵFactoryDeclaration<ActionLabelPipe, never>;
7
- static ɵpipe: i0.ɵɵPipeDeclaration<ActionLabelPipe, "actionLabel", false>;
8
- }
1
+ import { PipeTransform } from '@angular/core';
2
+ import { Row } from '../models/row';
3
+ import * as i0 from "@angular/core";
4
+ export declare class ActionLabelPipe implements PipeTransform {
5
+ transform(label: any, row: Row): any;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<ActionLabelPipe, never>;
7
+ static ɵpipe: i0.ɵɵPipeDeclaration<ActionLabelPipe, "actionLabel", false>;
8
+ }
@@ -1 +1 @@
1
- export * from './action-label';
1
+ export * from './action-label';
@@ -1,11 +1,11 @@
1
- import { OnDestroy } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export declare class GroupExpandNotifierService implements OnDestroy {
4
- private _expandStatusChanged$;
5
- private _destroy$;
6
- get expandStatusChange$(): import("rxjs").Observable<unknown>;
7
- toggleExpandStatus(rowData: any): void;
8
- ngOnDestroy(): void;
9
- static ɵfac: i0.ɵɵFactoryDeclaration<GroupExpandNotifierService, never>;
10
- static ɵprov: i0.ɵɵInjectableDeclaration<GroupExpandNotifierService>;
11
- }
1
+ import { OnDestroy } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class GroupExpandNotifierService implements OnDestroy {
4
+ private _expandStatusChanged$;
5
+ private _destroy$;
6
+ get expandStatusChange$(): import("rxjs").Observable<unknown>;
7
+ toggleExpandStatus(rowData: any): void;
8
+ ngOnDestroy(): void;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<GroupExpandNotifierService, never>;
10
+ static ɵprov: i0.ɵɵInjectableDeclaration<GroupExpandNotifierService>;
11
+ }
@@ -0,0 +1,57 @@
1
+ import { Subject } from 'rxjs';
2
+ export class ActionsController {
3
+ _filterRef;
4
+ _actions = [];
5
+ _reorderAction;
6
+ _doneAction;
7
+ _destroy$ = new Subject();
8
+ constructor() { }
9
+ get destroy$() {
10
+ return this._destroy$.asObservable();
11
+ }
12
+ get actions() {
13
+ return this._actions;
14
+ }
15
+ get hasActions() {
16
+ return this._actions.length > 0;
17
+ }
18
+ setFilterRef(ref) {
19
+ this._filterRef = ref;
20
+ }
21
+ setActions(actions) {
22
+ this.clearActions();
23
+ this._actions = actions;
24
+ if (this._reorderAction) {
25
+ this._actions.unshift(this._reorderAction);
26
+ }
27
+ }
28
+ addReorderAction(action) {
29
+ const actionClickFn = action.click;
30
+ this._actions.unshift(action);
31
+ action.click = () => {
32
+ this._filterRef.updateActions([this._doneAction]);
33
+ this._filterRef.hideKeywordField();
34
+ this._filterRef.hideFiltersBtn();
35
+ actionClickFn(null);
36
+ };
37
+ this._reorderAction = action;
38
+ }
39
+ addReorderDoneAction(action) {
40
+ this._doneAction = action;
41
+ const actionClickFn = action.click;
42
+ this._doneAction.click = () => {
43
+ this._filterRef.updateActions(this._actions);
44
+ this._filterRef.showKeywordField();
45
+ this._filterRef.showFiltersBtn();
46
+ actionClickFn(null);
47
+ };
48
+ }
49
+ clearActions() {
50
+ this._actions = [];
51
+ this._destroy$.next();
52
+ }
53
+ updateDisabledState() {
54
+ this._filterRef.updateDisabledState();
55
+ }
56
+ }
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9jbGFzc2VzL2FjdGlvbnMtY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBTTNDLE1BQU0sT0FBTyxpQkFBaUI7SUFFcEIsVUFBVSxDQUFrQjtJQUU1QixRQUFRLEdBQW1CLEVBQUUsQ0FBQztJQUM5QixjQUFjLENBQWU7SUFDN0IsV0FBVyxDQUFlO0lBRTFCLFNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRXhDLGdCQUFlLENBQUM7SUFFaEIsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTSxZQUFZLENBQUMsR0FBb0I7UUFDdEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUM7SUFDeEIsQ0FBQztJQUVNLFVBQVUsQ0FBQyxPQUF1QjtRQUN2QyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFFeEIsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUM1QztJQUNILENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxNQUFvQjtRQUMxQyxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQ25DLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTlCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsR0FBRyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDakMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RCLENBQUMsQ0FBQTtRQUVELElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFFTSxvQkFBb0IsQ0FBQyxNQUFvQjtRQUM5QyxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQztRQUMxQixNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBRW5DLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxHQUFHLEdBQUcsRUFBRTtZQUM1QixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDN0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDakMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RCLENBQUMsQ0FBQTtJQUNILENBQUM7SUFFTSxZQUFZO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVNLG1CQUFtQjtRQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDeEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBGaWx0ZXJDb21wb25lbnQgfSBmcm9tICdAZmlyZXN0aXRjaC9maWx0ZXInO1xuaW1wb3J0IHsgRnNMaXN0QWN0aW9uIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9saXN0Y29uZmlnLmludGVyZmFjZSc7XG5cblxuZXhwb3J0IGNsYXNzIEFjdGlvbnNDb250cm9sbGVyIHtcblxuICBwcml2YXRlIF9maWx0ZXJSZWY6IEZpbHRlckNvbXBvbmVudDtcblxuICBwcml2YXRlIF9hY3Rpb25zOiBGc0xpc3RBY3Rpb25bXSA9IFtdO1xuICBwcml2YXRlIF9yZW9yZGVyQWN0aW9uOiBGc0xpc3RBY3Rpb247XG4gIHByaXZhdGUgX2RvbmVBY3Rpb246IEZzTGlzdEFjdGlvbjtcblxuICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHB1YmxpYyBnZXQgZGVzdHJveSQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rlc3Ryb3kkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBhY3Rpb25zKCk6IEZzTGlzdEFjdGlvbltdIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aW9ucztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzQWN0aW9ucygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aW9ucy5sZW5ndGggPiAwO1xuICB9XG5cbiAgcHVibGljIHNldEZpbHRlclJlZihyZWY6IEZpbHRlckNvbXBvbmVudCkge1xuICAgIHRoaXMuX2ZpbHRlclJlZiA9IHJlZjtcbiAgfVxuXG4gIHB1YmxpYyBzZXRBY3Rpb25zKGFjdGlvbnM6IEZzTGlzdEFjdGlvbltdKSB7XG4gICAgdGhpcy5jbGVhckFjdGlvbnMoKTtcbiAgICB0aGlzLl9hY3Rpb25zID0gYWN0aW9ucztcblxuICAgIGlmICh0aGlzLl9yZW9yZGVyQWN0aW9uKSB7XG4gICAgICB0aGlzLl9hY3Rpb25zLnVuc2hpZnQodGhpcy5fcmVvcmRlckFjdGlvbik7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFkZFJlb3JkZXJBY3Rpb24oYWN0aW9uOiBGc0xpc3RBY3Rpb24pIHtcbiAgICBjb25zdCBhY3Rpb25DbGlja0ZuID0gYWN0aW9uLmNsaWNrO1xuICAgIHRoaXMuX2FjdGlvbnMudW5zaGlmdChhY3Rpb24pO1xuXG4gICAgYWN0aW9uLmNsaWNrID0gKCkgPT4ge1xuICAgICAgdGhpcy5fZmlsdGVyUmVmLnVwZGF0ZUFjdGlvbnMoW3RoaXMuX2RvbmVBY3Rpb25dKTtcbiAgICAgIHRoaXMuX2ZpbHRlclJlZi5oaWRlS2V5d29yZEZpZWxkKCk7XG4gICAgICB0aGlzLl9maWx0ZXJSZWYuaGlkZUZpbHRlcnNCdG4oKTtcbiAgICAgIGFjdGlvbkNsaWNrRm4obnVsbCk7XG4gICAgfVxuXG4gICAgdGhpcy5fcmVvcmRlckFjdGlvbiA9IGFjdGlvbjtcbiAgfVxuXG4gIHB1YmxpYyBhZGRSZW9yZGVyRG9uZUFjdGlvbihhY3Rpb246IEZzTGlzdEFjdGlvbikge1xuICAgIHRoaXMuX2RvbmVBY3Rpb24gPSBhY3Rpb247XG4gICAgY29uc3QgYWN0aW9uQ2xpY2tGbiA9IGFjdGlvbi5jbGljaztcblxuICAgIHRoaXMuX2RvbmVBY3Rpb24uY2xpY2sgPSAoKSA9PiB7XG4gICAgICB0aGlzLl9maWx0ZXJSZWYudXBkYXRlQWN0aW9ucyh0aGlzLl9hY3Rpb25zKTtcbiAgICAgIHRoaXMuX2ZpbHRlclJlZi5zaG93S2V5d29yZEZpZWxkKCk7XG4gICAgICB0aGlzLl9maWx0ZXJSZWYuc2hvd0ZpbHRlcnNCdG4oKTtcbiAgICAgIGFjdGlvbkNsaWNrRm4obnVsbCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNsZWFyQWN0aW9ucygpIHtcbiAgICB0aGlzLl9hY3Rpb25zID0gW107XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZURpc2FibGVkU3RhdGUoKTogdm9pZCB7XG4gICAgdGhpcy5fZmlsdGVyUmVmLnVwZGF0ZURpc2FibGVkU3RhdGUoKTtcbiAgfVxufVxuIl19