@firestitch/list 14.0.0 → 14.0.1

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 (159) 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 +14 -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/esm2020/app/classes/actions-controller.mjs +55 -55
  77. package/esm2020/app/classes/columns-controller.mjs +205 -205
  78. package/esm2020/app/classes/data-controller.mjs +344 -344
  79. package/esm2020/app/classes/external-params-controller.mjs +146 -146
  80. package/esm2020/app/classes/index.mjs +3 -3
  81. package/esm2020/app/classes/list-controller.mjs +673 -673
  82. package/esm2020/app/classes/pagination-controller.mjs +490 -490
  83. package/esm2020/app/classes/persistance-controller.mjs +19 -19
  84. package/esm2020/app/classes/reorder-controller.mjs +181 -181
  85. package/esm2020/app/classes/selection-controller.mjs +465 -465
  86. package/esm2020/app/classes/sorting-controller.mjs +201 -201
  87. package/esm2020/app/components/body/body.component.mjs +63 -63
  88. package/esm2020/app/components/body/row/actions/actions.component.mjs +96 -96
  89. package/esm2020/app/components/body/row/cell/cell.component.mjs +107 -107
  90. package/esm2020/app/components/body/row/inline-action/inline-action.component.mjs +32 -32
  91. package/esm2020/app/components/body/row/menu-action/menu-action.component.mjs +45 -45
  92. package/esm2020/app/components/body/row/row.component.mjs +321 -321
  93. package/esm2020/app/components/customize-cols/customize-cols.component.mjs +68 -68
  94. package/esm2020/app/components/footer/footer-row/footer-cell/footer-cell.component.mjs +16 -16
  95. package/esm2020/app/components/footer/footer-row/footer-row.component.mjs +27 -27
  96. package/esm2020/app/components/footer/footer.component.mjs +30 -30
  97. package/esm2020/app/components/head/head-cell/head-cell.component.mjs +29 -29
  98. package/esm2020/app/components/head/head.component.mjs +102 -102
  99. package/esm2020/app/components/list/list.component.mjs +384 -384
  100. package/esm2020/app/components/loader/loader.component.mjs +40 -40
  101. package/esm2020/app/components/manage-saved-filters/manage-saved-filters.component.mjs +76 -76
  102. package/esm2020/app/components/pagination/pagination.component.mjs +37 -37
  103. package/esm2020/app/components/saved-filters/saved-filters.component.mjs +29 -29
  104. package/esm2020/app/components/status/status.component.mjs +64 -64
  105. package/esm2020/app/directives/cell/cell.directive.mjs +18 -18
  106. package/esm2020/app/directives/column/column.directive.mjs +120 -120
  107. package/esm2020/app/directives/content/content.directive.mjs +12 -12
  108. package/esm2020/app/directives/content-init/content-init.directive.mjs +21 -21
  109. package/esm2020/app/directives/draggable-list/draggable-list.directive.mjs +330 -328
  110. package/esm2020/app/directives/draggable-row/draggable-row.directive.mjs +77 -77
  111. package/esm2020/app/directives/empty-state/empty-state.directive.mjs +13 -13
  112. package/esm2020/app/directives/footer/footer.directive.mjs +18 -18
  113. package/esm2020/app/directives/group-expand-trigger/group-expand-trigger.directive.mjs +26 -26
  114. package/esm2020/app/directives/group-footer/group-footer.directive.mjs +13 -13
  115. package/esm2020/app/directives/group-header/group-header.directive.mjs +13 -13
  116. package/esm2020/app/directives/header/header.directive.mjs +18 -18
  117. package/esm2020/app/directives/heading/heading.directive.mjs +13 -13
  118. package/esm2020/app/directives/heading-container/heading-container.directive.mjs +13 -13
  119. package/esm2020/app/directives/index.mjs +4 -4
  120. package/esm2020/app/directives/subheading/subheading.directive.mjs +13 -13
  121. package/esm2020/app/enums/action-type.enum.mjs +8 -8
  122. package/esm2020/app/enums/page-change-type.enum.mjs +6 -6
  123. package/esm2020/app/enums/pagination-strategy.enum.mjs +7 -7
  124. package/esm2020/app/enums/row-type.enum.mjs +7 -7
  125. package/esm2020/app/enums/state.enum.mjs +11 -11
  126. package/esm2020/app/fs-list.module.mjs +243 -243
  127. package/esm2020/app/fs-list.providers.mjs +4 -4
  128. package/esm2020/app/interfaces/cellconfig.interface.mjs +2 -2
  129. package/esm2020/app/interfaces/column-config.interface.mjs +1 -1
  130. package/esm2020/app/interfaces/draggable-list.interface.mjs +2 -2
  131. package/esm2020/app/interfaces/external-params.interface.mjs +2 -2
  132. package/esm2020/app/interfaces/index.mjs +5 -5
  133. package/esm2020/app/interfaces/listconfig.interface.mjs +1 -1
  134. package/esm2020/app/interfaces/pagination-state.interface.mjs +1 -1
  135. package/esm2020/app/interfaces/pagination.interface.mjs +2 -2
  136. package/esm2020/app/interfaces/sorting-change-event.interface.mjs +2 -2
  137. package/esm2020/app/models/column-async-attribute.mjs +13 -13
  138. package/esm2020/app/models/column-attributes.mjs +131 -131
  139. package/esm2020/app/models/column.model.mjs +163 -163
  140. package/esm2020/app/models/row/base-row.mjs +23 -23
  141. package/esm2020/app/models/row/child-row.mjs +28 -28
  142. package/esm2020/app/models/row/group-footer-row.mjs +20 -20
  143. package/esm2020/app/models/row/group-row.mjs +44 -44
  144. package/esm2020/app/models/row/simple-row.mjs +10 -10
  145. package/esm2020/app/models/row-action.model.mjs +89 -89
  146. package/esm2020/app/models/row.mjs +88 -88
  147. package/esm2020/app/models/styleConfig.model.mjs +75 -75
  148. package/esm2020/app/pipes/action-label.mjs +16 -16
  149. package/esm2020/app/pipes/index.mjs +1 -1
  150. package/esm2020/app/services/group-expand-notifier.service.mjs +26 -26
  151. package/esm2020/firestitch-list.mjs +4 -4
  152. package/esm2020/public_api.mjs +45 -45
  153. package/fesm2015/firestitch-list.mjs +5626 -5624
  154. package/fesm2015/firestitch-list.mjs.map +1 -1
  155. package/fesm2020/firestitch-list.mjs +5619 -5617
  156. package/fesm2020/firestitch-list.mjs.map +1 -1
  157. package/index.d.ts +5 -5
  158. package/package.json +1 -1
  159. package/public_api.d.ts +41 -41
@@ -1,2 +1,2 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydGluZy1jaGFuZ2UtZXZlbnQuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9pbnRlcmZhY2VzL3NvcnRpbmctY2hhbmdlLWV2ZW50LmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTb3J0aW5nQ2hhbmdlRXZlbnQge1xuICBzb3J0Qnk6IHN0cmluZztcbiAgc29ydERpcmVjdGlvbjogc3RyaW5nO1xufVxuIl19
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydGluZy1jaGFuZ2UtZXZlbnQuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9pbnRlcmZhY2VzL3NvcnRpbmctY2hhbmdlLWV2ZW50LmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTb3J0aW5nQ2hhbmdlRXZlbnQge1xyXG4gIHNvcnRCeTogc3RyaW5nO1xyXG4gIHNvcnREaXJlY3Rpb246IHN0cmluZztcclxufVxyXG4iXX0=
@@ -1,14 +1,14 @@
1
- import { BehaviorSubject } from 'rxjs';
2
- export class ColumnAsyncAttribute extends BehaviorSubject {
3
- constructor(value) {
4
- super(Object.freeze(value));
5
- }
6
- next(value) {
7
- const newValue = value;
8
- const oldValue = this.getValue();
9
- if (newValue !== oldValue) {
10
- super.next(Object.freeze(value));
11
- }
12
- }
13
- }
1
+ import { BehaviorSubject } from 'rxjs';
2
+ export class ColumnAsyncAttribute extends BehaviorSubject {
3
+ constructor(value) {
4
+ super(Object.freeze(value));
5
+ }
6
+ next(value) {
7
+ const newValue = value;
8
+ const oldValue = this.getValue();
9
+ if (newValue !== oldValue) {
10
+ super.next(Object.freeze(value));
11
+ }
12
+ }
13
+ }
14
14
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWFzeW5jLWF0dHJpYnV0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kZWxzL2NvbHVtbi1hc3luYy1hdHRyaWJ1dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV2QyxNQUFNLE9BQU8sb0JBQXdCLFNBQVEsZUFBa0I7SUFFN0QsWUFBWSxLQUFRO1FBQ2xCLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVNLElBQUksQ0FBQyxLQUFRO1FBQ2xCLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN2QixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakMsSUFBSSxRQUFRLEtBQUssUUFBUSxFQUFFO1lBQ3pCLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQ2xDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjbGFzcyBDb2x1bW5Bc3luY0F0dHJpYnV0ZTxUPiBleHRlbmRzIEJlaGF2aW9yU3ViamVjdDxUPiB7XG5cbiAgY29uc3RydWN0b3IodmFsdWU6IFQpIHtcbiAgICBzdXBlcihPYmplY3QuZnJlZXplKHZhbHVlKSk7XG4gIH1cblxuICBwdWJsaWMgbmV4dCh2YWx1ZTogVCk6IHZvaWQge1xuICAgIGNvbnN0IG5ld1ZhbHVlID0gdmFsdWU7XG4gICAgY29uc3Qgb2xkVmFsdWUgPSB0aGlzLmdldFZhbHVlKCk7XG5cbiAgICBpZiAobmV3VmFsdWUgIT09IG9sZFZhbHVlKSB7XG4gICAgICBzdXBlci5uZXh0KE9iamVjdC5mcmVlemUodmFsdWUpKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,132 +1,132 @@
1
- import { ColumnAsyncAttribute } from './column-async-attribute';
2
- export class ColumnAttributes {
3
- constructor(attrs = {}) {
4
- this._customize = true;
5
- this._direction$ = new ColumnAsyncAttribute(null);
6
- this._visible$ = new ColumnAsyncAttribute(true);
7
- this._init(attrs);
8
- }
9
- // title
10
- set title(value) {
11
- this._title = value;
12
- }
13
- get title() {
14
- return this._title;
15
- }
16
- // name
17
- set name(value) {
18
- this._name = value;
19
- }
20
- get name() {
21
- return this._name;
22
- }
23
- // customize
24
- set customize(value) {
25
- this._customize = value;
26
- }
27
- get customize() {
28
- return this._customize;
29
- }
30
- // sortable
31
- set sortable(value) {
32
- this._sortable = value;
33
- }
34
- get sortable() {
35
- return this._sortable;
36
- }
37
- // sortableDefault
38
- set sortableDefault(value) {
39
- this._sortableDefault = value;
40
- if (this.sortableDefault) {
41
- this.sortable = true;
42
- }
43
- }
44
- get sortableDefault() {
45
- return this._sortableDefault;
46
- }
47
- // direction
48
- set direction(value) {
49
- this.sortable = true;
50
- this._direction$.next(value);
51
- }
52
- get direction() {
53
- return this._direction$.value;
54
- }
55
- get direction$() {
56
- return this._direction$.asObservable();
57
- }
58
- // align
59
- set align(value) {
60
- this._align = value;
61
- }
62
- get align() {
63
- return this._align;
64
- }
65
- // width
66
- set width(value) {
67
- this._width = value;
68
- }
69
- get width() {
70
- return this._width;
71
- }
72
- // className
73
- set className(value) {
74
- this._className = value;
75
- }
76
- get className() {
77
- return this._className;
78
- }
79
- // visibility
80
- set visible(value) {
81
- this._visible$.next(value);
82
- }
83
- get visible() {
84
- return this._visible$.getValue();
85
- }
86
- get visible$() {
87
- return this._visible$.asObservable();
88
- }
89
- _init(attrs) {
90
- Object.keys(attrs)
91
- .forEach((key) => {
92
- switch (key) {
93
- case 'title':
94
- {
95
- this.title = attrs[key];
96
- }
97
- break;
98
- case 'name':
99
- {
100
- this.name = attrs[key];
101
- }
102
- break;
103
- case 'align':
104
- {
105
- this.align = attrs[key];
106
- }
107
- break;
108
- case 'direction':
109
- {
110
- this.direction = attrs[key];
111
- }
112
- break;
113
- case 'sortable':
114
- {
115
- this.sortable = attrs[key];
116
- }
117
- break;
118
- case 'show':
119
- {
120
- this.visible = attrs[key];
121
- }
122
- break;
123
- case 'visible':
124
- {
125
- this.visible = attrs[key];
126
- }
127
- break;
128
- }
129
- });
130
- }
131
- }
1
+ import { ColumnAsyncAttribute } from './column-async-attribute';
2
+ export class ColumnAttributes {
3
+ constructor(attrs = {}) {
4
+ this._customize = true;
5
+ this._direction$ = new ColumnAsyncAttribute(null);
6
+ this._visible$ = new ColumnAsyncAttribute(true);
7
+ this._init(attrs);
8
+ }
9
+ // title
10
+ set title(value) {
11
+ this._title = value;
12
+ }
13
+ get title() {
14
+ return this._title;
15
+ }
16
+ // name
17
+ set name(value) {
18
+ this._name = value;
19
+ }
20
+ get name() {
21
+ return this._name;
22
+ }
23
+ // customize
24
+ set customize(value) {
25
+ this._customize = value;
26
+ }
27
+ get customize() {
28
+ return this._customize;
29
+ }
30
+ // sortable
31
+ set sortable(value) {
32
+ this._sortable = value;
33
+ }
34
+ get sortable() {
35
+ return this._sortable;
36
+ }
37
+ // sortableDefault
38
+ set sortableDefault(value) {
39
+ this._sortableDefault = value;
40
+ if (this.sortableDefault) {
41
+ this.sortable = true;
42
+ }
43
+ }
44
+ get sortableDefault() {
45
+ return this._sortableDefault;
46
+ }
47
+ // direction
48
+ set direction(value) {
49
+ this.sortable = true;
50
+ this._direction$.next(value);
51
+ }
52
+ get direction() {
53
+ return this._direction$.value;
54
+ }
55
+ get direction$() {
56
+ return this._direction$.asObservable();
57
+ }
58
+ // align
59
+ set align(value) {
60
+ this._align = value;
61
+ }
62
+ get align() {
63
+ return this._align;
64
+ }
65
+ // width
66
+ set width(value) {
67
+ this._width = value;
68
+ }
69
+ get width() {
70
+ return this._width;
71
+ }
72
+ // className
73
+ set className(value) {
74
+ this._className = value;
75
+ }
76
+ get className() {
77
+ return this._className;
78
+ }
79
+ // visibility
80
+ set visible(value) {
81
+ this._visible$.next(value);
82
+ }
83
+ get visible() {
84
+ return this._visible$.getValue();
85
+ }
86
+ get visible$() {
87
+ return this._visible$.asObservable();
88
+ }
89
+ _init(attrs) {
90
+ Object.keys(attrs)
91
+ .forEach((key) => {
92
+ switch (key) {
93
+ case 'title':
94
+ {
95
+ this.title = attrs[key];
96
+ }
97
+ break;
98
+ case 'name':
99
+ {
100
+ this.name = attrs[key];
101
+ }
102
+ break;
103
+ case 'align':
104
+ {
105
+ this.align = attrs[key];
106
+ }
107
+ break;
108
+ case 'direction':
109
+ {
110
+ this.direction = attrs[key];
111
+ }
112
+ break;
113
+ case 'sortable':
114
+ {
115
+ this.sortable = attrs[key];
116
+ }
117
+ break;
118
+ case 'show':
119
+ {
120
+ this.visible = attrs[key];
121
+ }
122
+ break;
123
+ case 'visible':
124
+ {
125
+ this.visible = attrs[key];
126
+ }
127
+ break;
128
+ }
129
+ });
130
+ }
131
+ }
132
132
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWF0dHJpYnV0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL21vZGVscy9jb2x1bW4tYXR0cmlidXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVoRSxNQUFNLE9BQU8sZ0JBQWdCO0lBYTNCLFlBQVksUUFBZ0MsRUFBRTtRQVR0QyxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBR2xCLGdCQUFXLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUk3QyxjQUFTLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUdqRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxRQUFRO0lBQ1IsSUFBVyxLQUFLLENBQUMsS0FBYTtRQUM1QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxPQUFPO0lBQ1AsSUFBVyxJQUFJLENBQUMsS0FBYTtRQUMzQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxZQUFZO0lBQ1osSUFBVyxTQUFTLENBQUMsS0FBYztRQUNqQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsV0FBVztJQUNYLElBQVcsUUFBUSxDQUFDLEtBQWM7UUFDaEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDekIs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QkFBRSxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztxQkFBRTtvQkFBQyxNQUFNO2dCQUNsRCxLQUFLLFNBQVM7b0JBQUU7d0JBQUUsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7cUJBQUU7b0JBQUMsTUFBTTthQUN0RDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDb2x1bW5Bc3luY0F0dHJpYnV0ZSB9IGZyb20gJy4vY29sdW1uLWFzeW5jLWF0dHJpYnV0ZSc7XG5cbmV4cG9ydCBjbGFzcyBDb2x1bW5BdHRyaWJ1dGVzIHtcblxuICBwcml2YXRlIF90aXRsZTogc3RyaW5nO1xuICBwcml2YXRlIF9uYW1lOiBzdHJpbmc7XG4gIHByaXZhdGUgX2N1c3RvbWl6ZSA9IHRydWU7XG4gIHByaXZhdGUgX3NvcnRhYmxlOiBib29sZWFuO1xuICBwcml2YXRlIF9zb3J0YWJsZURlZmF1bHQ6IGJvb2xlYW47XG4gIHByaXZhdGUgX2RpcmVjdGlvbiQgPSBuZXcgQ29sdW1uQXN5bmNBdHRyaWJ1dGUobnVsbCk7XG4gIHByaXZhdGUgX2FsaWduOiBzdHJpbmc7XG4gIHByaXZhdGUgX3dpZHRoOiBzdHJpbmc7XG4gIHByaXZhdGUgX2NsYXNzTmFtZTogc3RyaW5nIHwgc3RyaW5nW107XG4gIHByaXZhdGUgX3Zpc2libGUkID0gbmV3IENvbHVtbkFzeW5jQXR0cmlidXRlKHRydWUpO1xuXG4gIGNvbnN0cnVjdG9yKGF0dHJzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge30pIHtcbiAgICB0aGlzLl9pbml0KGF0dHJzKTtcbiAgfVxuXG4gIC8vIHRpdGxlXG4gIHB1YmxpYyBzZXQgdGl0bGUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3RpdGxlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RpdGxlO1xuICB9XG5cbiAgLy8gbmFtZVxuICBwdWJsaWMgc2V0IG5hbWUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX25hbWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9uYW1lO1xuICB9XG5cbiAgLy8gY3VzdG9taXplXG4gIHB1YmxpYyBzZXQgY3VzdG9taXplKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fY3VzdG9taXplID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGN1c3RvbWl6ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fY3VzdG9taXplO1xuICB9XG5cbiAgLy8gc29ydGFibGVcbiAgcHVibGljIHNldCBzb3J0YWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3NvcnRhYmxlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNvcnRhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zb3J0YWJsZTtcbiAgfVxuXG4gIC8vIHNvcnRhYmxlRGVmYXVsdFxuICBwdWJsaWMgc2V0IHNvcnRhYmxlRGVmYXVsdCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3NvcnRhYmxlRGVmYXVsdCA9IHZhbHVlO1xuXG4gICAgaWYgKHRoaXMuc29ydGFibGVEZWZhdWx0KSB7XG4gICAgICB0aGlzLnNvcnRhYmxlID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNvcnRhYmxlRGVmYXVsdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fc29ydGFibGVEZWZhdWx0O1xuICB9XG5cbiAgLy8gZGlyZWN0aW9uXG4gIHB1YmxpYyBzZXQgZGlyZWN0aW9uKHZhbHVlOiAnYXNjJyB8ICdkZXNjJykge1xuICAgIHRoaXMuc29ydGFibGUgPSB0cnVlO1xuICAgIFxuICAgIHRoaXMuX2RpcmVjdGlvbiQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpcmVjdGlvbigpOiAnYXNjJyB8ICdkZXNjJyB7XG4gICAgcmV0dXJuIHRoaXMuX2RpcmVjdGlvbiQudmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpcmVjdGlvbiQoKTogT2JzZXJ2YWJsZTwnYXNjJyB8ICdkZXNjJz4ge1xuICAgIHJldHVybiB0aGlzLl9kaXJlY3Rpb24kLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgLy8gYWxpZ25cbiAgcHVibGljIHNldCBhbGlnbih2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fYWxpZ24gPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWxpZ24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fYWxpZ247XG4gIH1cblxuICAvLyB3aWR0aFxuICBwdWJsaWMgc2V0IHdpZHRoKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl93aWR0aCA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCB3aWR0aCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl93aWR0aDtcbiAgfVxuXG4gIC8vIGNsYXNzTmFtZVxuICBwdWJsaWMgc2V0IGNsYXNzTmFtZSh2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10pIHtcbiAgICB0aGlzLl9jbGFzc05hbWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2xhc3NOYW1lKCk6IHN0cmluZyB8IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5fY2xhc3NOYW1lO1xuICB9XG5cbiAgLy8gdmlzaWJpbGl0eVxuICBwdWJsaWMgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl92aXNpYmxlJC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZSQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmlzaWJsZSQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGUkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdChhdHRyczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSkge1xuICAgIE9iamVjdC5rZXlzKGF0dHJzKVxuICAgICAgLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBzd2l0Y2ggKGtleSkge1xuICAgICAgICAgIGNhc2UgJ3RpdGxlJzogeyB0aGlzLnRpdGxlID0gYXR0cnNba2V5XTsgfSBicmVhaztcbiAgICAgICAgICBjYXNlICduYW1lJzogeyB0aGlzLm5hbWUgPSBhdHRyc1trZXldOyB9IGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ2FsaWduJzogeyB0aGlzLmFsaWduID0gYXR0cnNba2V5XTsgfSBicmVhaztcbiAgICAgICAgICBjYXNlICdkaXJlY3Rpb24nOiB7IHRoaXMuZGlyZWN0aW9uID0gYXR0cnNba2V5XTsgfSBicmVhaztcbiAgICAgICAgICBjYXNlICdzb3J0YWJsZSc6IHsgdGhpcy5zb3J0YWJsZSA9IGF0dHJzW2tleV07IH0gYnJlYWs7XG4gICAgICAgICAgY2FzZSAnc2hvdyc6IHsgdGhpcy52aXNpYmxlID0gYXR0cnNba2V5XTsgfSBicmVhaztcbiAgICAgICAgICBjYXNlICd2aXNpYmxlJzogeyB0aGlzLnZpc2libGUgPSBhdHRyc1trZXldOyB9IGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxufVxuIl19