@firestitch/list 15.0.0 → 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 (149) hide show
  1. package/app/components/body/body.component.d.ts +1 -1
  2. package/app/components/body/row/actions/actions.component.d.ts +1 -1
  3. package/app/components/body/row/cell/cell.component.d.ts +1 -1
  4. package/app/components/body/row/inline-action/inline-action.component.d.ts +1 -1
  5. package/app/components/body/row/menu-action/menu-action.component.d.ts +1 -1
  6. package/app/components/body/row/row.component.d.ts +1 -1
  7. package/app/components/footer/footer-row/footer-row.component.d.ts +1 -7
  8. package/app/components/footer/footer.component.d.ts +1 -1
  9. package/app/components/head/head.component.d.ts +1 -1
  10. package/app/components/list/list.component.d.ts +1 -1
  11. package/app/components/loader/loader.component.d.ts +1 -1
  12. package/app/components/pagination/pagination.component.d.ts +1 -1
  13. package/app/components/status/status.component.d.ts +1 -1
  14. package/app/directives/cell/cell.directive.d.ts +1 -1
  15. package/app/directives/column/column.directive.d.ts +1 -1
  16. package/app/directives/content-init/content-init.directive.d.ts +1 -1
  17. package/app/directives/draggable-list/draggable-list.directive.d.ts +1 -1
  18. package/app/directives/draggable-row/draggable-row.directive.d.ts +1 -1
  19. package/app/directives/footer/footer.directive.d.ts +1 -1
  20. package/app/directives/group-expand-trigger/group-expand-trigger.directive.d.ts +1 -1
  21. package/app/directives/header/header.directive.d.ts +1 -1
  22. package/app/models/column.model.d.ts +1 -1
  23. package/esm2022/app/classes/actions-controller.mjs +57 -0
  24. package/esm2022/app/classes/columns-controller.mjs +211 -0
  25. package/esm2022/app/classes/data-controller.mjs +348 -0
  26. package/esm2022/app/classes/external-params-controller.mjs +153 -0
  27. package/esm2022/app/classes/list-controller.mjs +712 -0
  28. package/esm2022/app/classes/pagination-controller.mjs +491 -0
  29. package/esm2022/app/classes/persistance-controller.mjs +19 -0
  30. package/esm2022/app/classes/reorder-controller.mjs +191 -0
  31. package/esm2022/app/classes/selection-controller.mjs +473 -0
  32. package/esm2022/app/classes/sorting-controller.mjs +207 -0
  33. package/esm2022/app/components/body/body.component.mjs +73 -0
  34. package/esm2022/app/components/body/row/actions/actions.component.mjs +102 -0
  35. package/esm2022/app/components/body/row/cell/cell.component.mjs +109 -0
  36. package/esm2022/app/components/body/row/inline-action/inline-action.component.mjs +32 -0
  37. package/esm2022/app/components/body/row/menu-action/menu-action.component.mjs +51 -0
  38. package/esm2022/app/components/body/row/row.component.mjs +341 -0
  39. package/esm2022/app/components/customize-cols/customize-cols.component.mjs +70 -0
  40. package/{esm2020 → esm2022}/app/components/footer/footer-row/footer-cell/footer-cell.component.mjs +4 -4
  41. package/esm2022/app/components/footer/footer-row/footer-row.component.mjs +17 -0
  42. package/esm2022/app/components/footer/footer.component.mjs +35 -0
  43. package/esm2022/app/components/head/head-cell/head-cell.component.mjs +32 -0
  44. package/esm2022/app/components/head/head.component.mjs +113 -0
  45. package/esm2022/app/components/list/list.component.mjs +406 -0
  46. package/esm2022/app/components/loader/loader.component.mjs +40 -0
  47. package/esm2022/app/components/manage-saved-filters/manage-saved-filters.component.mjs +78 -0
  48. package/esm2022/app/components/pagination/pagination.component.mjs +40 -0
  49. package/esm2022/app/components/saved-filters/saved-filters.component.mjs +32 -0
  50. package/esm2022/app/components/status/status.component.mjs +69 -0
  51. package/esm2022/app/directives/cell/cell.directive.mjs +21 -0
  52. package/esm2022/app/directives/column/column.directive.mjs +137 -0
  53. package/{esm2020 → esm2022}/app/directives/content/content.directive.mjs +4 -4
  54. package/esm2022/app/directives/content-init/content-init.directive.mjs +23 -0
  55. package/esm2022/app/directives/draggable-list/draggable-list.directive.mjs +344 -0
  56. package/esm2022/app/directives/draggable-row/draggable-row.directive.mjs +83 -0
  57. package/{esm2020 → esm2022}/app/directives/empty-state/empty-state.directive.mjs +4 -4
  58. package/esm2022/app/directives/footer/footer.directive.mjs +21 -0
  59. package/esm2022/app/directives/group-expand-trigger/group-expand-trigger.directive.mjs +28 -0
  60. package/{esm2020 → esm2022}/app/directives/group-footer/group-footer.directive.mjs +4 -4
  61. package/{esm2020 → esm2022}/app/directives/group-header/group-header.directive.mjs +4 -4
  62. package/esm2022/app/directives/header/header.directive.mjs +21 -0
  63. package/{esm2020 → esm2022}/app/directives/heading/heading.directive.mjs +4 -4
  64. package/{esm2020 → esm2022}/app/directives/heading-container/heading-container.directive.mjs +4 -4
  65. package/{esm2020 → esm2022}/app/directives/subheading/subheading.directive.mjs +4 -4
  66. package/{esm2020 → esm2022}/app/fs-list.module.mjs +89 -89
  67. package/esm2022/app/models/column-attributes.mjs +139 -0
  68. package/esm2022/app/models/column.model.mjs +173 -0
  69. package/esm2022/app/models/row/base-row.mjs +25 -0
  70. package/esm2022/app/models/row/child-row.mjs +29 -0
  71. package/esm2022/app/models/row/group-footer-row.mjs +22 -0
  72. package/{esm2020 → esm2022}/app/models/row/group-row.mjs +3 -3
  73. package/esm2022/app/models/row-action.model.mjs +102 -0
  74. package/esm2022/app/models/row.mjs +90 -0
  75. package/esm2022/app/models/styleConfig.model.mjs +78 -0
  76. package/{esm2020 → esm2022}/app/pipes/action-label.mjs +4 -4
  77. package/esm2022/app/services/group-expand-notifier.service.mjs +24 -0
  78. package/{fesm2020 → fesm2022}/firestitch-list.mjs +675 -442
  79. package/fesm2022/firestitch-list.mjs.map +1 -0
  80. package/package.json +5 -11
  81. package/esm2020/app/classes/actions-controller.mjs +0 -55
  82. package/esm2020/app/classes/columns-controller.mjs +0 -206
  83. package/esm2020/app/classes/data-controller.mjs +0 -345
  84. package/esm2020/app/classes/external-params-controller.mjs +0 -147
  85. package/esm2020/app/classes/list-controller.mjs +0 -674
  86. package/esm2020/app/classes/pagination-controller.mjs +0 -491
  87. package/esm2020/app/classes/persistance-controller.mjs +0 -19
  88. package/esm2020/app/classes/reorder-controller.mjs +0 -182
  89. package/esm2020/app/classes/selection-controller.mjs +0 -466
  90. package/esm2020/app/classes/sorting-controller.mjs +0 -206
  91. package/esm2020/app/components/body/body.component.mjs +0 -64
  92. package/esm2020/app/components/body/row/actions/actions.component.mjs +0 -97
  93. package/esm2020/app/components/body/row/cell/cell.component.mjs +0 -107
  94. package/esm2020/app/components/body/row/inline-action/inline-action.component.mjs +0 -33
  95. package/esm2020/app/components/body/row/menu-action/menu-action.component.mjs +0 -46
  96. package/esm2020/app/components/body/row/row.component.mjs +0 -322
  97. package/esm2020/app/components/customize-cols/customize-cols.component.mjs +0 -68
  98. package/esm2020/app/components/footer/footer-row/footer-row.component.mjs +0 -28
  99. package/esm2020/app/components/footer/footer.component.mjs +0 -31
  100. package/esm2020/app/components/head/head-cell/head-cell.component.mjs +0 -29
  101. package/esm2020/app/components/head/head.component.mjs +0 -103
  102. package/esm2020/app/components/list/list.component.mjs +0 -385
  103. package/esm2020/app/components/loader/loader.component.mjs +0 -40
  104. package/esm2020/app/components/manage-saved-filters/manage-saved-filters.component.mjs +0 -76
  105. package/esm2020/app/components/pagination/pagination.component.mjs +0 -37
  106. package/esm2020/app/components/saved-filters/saved-filters.component.mjs +0 -29
  107. package/esm2020/app/components/status/status.component.mjs +0 -64
  108. package/esm2020/app/directives/cell/cell.directive.mjs +0 -18
  109. package/esm2020/app/directives/column/column.directive.mjs +0 -121
  110. package/esm2020/app/directives/content-init/content-init.directive.mjs +0 -22
  111. package/esm2020/app/directives/draggable-list/draggable-list.directive.mjs +0 -330
  112. package/esm2020/app/directives/draggable-row/draggable-row.directive.mjs +0 -78
  113. package/esm2020/app/directives/footer/footer.directive.mjs +0 -18
  114. package/esm2020/app/directives/group-expand-trigger/group-expand-trigger.directive.mjs +0 -26
  115. package/esm2020/app/directives/header/header.directive.mjs +0 -18
  116. package/esm2020/app/models/column-attributes.mjs +0 -132
  117. package/esm2020/app/models/column.model.mjs +0 -164
  118. package/esm2020/app/models/row/base-row.mjs +0 -23
  119. package/esm2020/app/models/row/child-row.mjs +0 -28
  120. package/esm2020/app/models/row/group-footer-row.mjs +0 -21
  121. package/esm2020/app/models/row-action.model.mjs +0 -90
  122. package/esm2020/app/models/row.mjs +0 -89
  123. package/esm2020/app/models/styleConfig.model.mjs +0 -76
  124. package/esm2020/app/services/group-expand-notifier.service.mjs +0 -26
  125. package/fesm2015/firestitch-list.mjs +0 -5802
  126. package/fesm2015/firestitch-list.mjs.map +0 -1
  127. package/fesm2020/firestitch-list.mjs.map +0 -1
  128. /package/{esm2020 → esm2022}/app/classes/index.mjs +0 -0
  129. /package/{esm2020 → esm2022}/app/directives/index.mjs +0 -0
  130. /package/{esm2020 → esm2022}/app/enums/action-type.enum.mjs +0 -0
  131. /package/{esm2020 → esm2022}/app/enums/page-change-type.enum.mjs +0 -0
  132. /package/{esm2020 → esm2022}/app/enums/pagination-strategy.enum.mjs +0 -0
  133. /package/{esm2020 → esm2022}/app/enums/row-type.enum.mjs +0 -0
  134. /package/{esm2020 → esm2022}/app/enums/state.enum.mjs +0 -0
  135. /package/{esm2020 → esm2022}/app/fs-list.providers.mjs +0 -0
  136. /package/{esm2020 → esm2022}/app/interfaces/cellconfig.interface.mjs +0 -0
  137. /package/{esm2020 → esm2022}/app/interfaces/column-config.interface.mjs +0 -0
  138. /package/{esm2020 → esm2022}/app/interfaces/draggable-list.interface.mjs +0 -0
  139. /package/{esm2020 → esm2022}/app/interfaces/external-params.interface.mjs +0 -0
  140. /package/{esm2020 → esm2022}/app/interfaces/index.mjs +0 -0
  141. /package/{esm2020 → esm2022}/app/interfaces/listconfig.interface.mjs +0 -0
  142. /package/{esm2020 → esm2022}/app/interfaces/pagination-state.interface.mjs +0 -0
  143. /package/{esm2020 → esm2022}/app/interfaces/pagination.interface.mjs +0 -0
  144. /package/{esm2020 → esm2022}/app/interfaces/sorting-change-event.interface.mjs +0 -0
  145. /package/{esm2020 → esm2022}/app/models/column-async-attribute.mjs +0 -0
  146. /package/{esm2020 → esm2022}/app/models/row/simple-row.mjs +0 -0
  147. /package/{esm2020 → esm2022}/app/pipes/index.mjs +0 -0
  148. /package/{esm2020 → esm2022}/firestitch-list.mjs +0 -0
  149. /package/{esm2020 → esm2022}/public_api.mjs +0 -0
@@ -1,132 +0,0 @@
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
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWF0dHJpYnV0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL21vZGVscy9jb2x1bW4tYXR0cmlidXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVoRSxNQUFNLE9BQU8sZ0JBQWdCO0lBYTNCLFlBQVksUUFBZ0MsRUFBRTtRQVR0QyxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBR2xCLGdCQUFXLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUk3QyxjQUFTLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUdqRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxRQUFRO0lBQ1IsSUFBVyxLQUFLLENBQUMsS0FBYTtRQUM1QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxPQUFPO0lBQ1AsSUFBVyxJQUFJLENBQUMsS0FBYTtRQUMzQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxZQUFZO0lBQ1osSUFBVyxTQUFTLENBQUMsS0FBYztRQUNqQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsV0FBVztJQUNYLElBQVcsUUFBUSxDQUFDLEtBQWM7UUFDaEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDekIs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QkFBRSxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztxQkFBRTtvQkFBQyxNQUFNO2dCQUNsRCxLQUFLLFNBQVM7b0JBQUU7d0JBQUUsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7cUJBQUU7b0JBQUMsTUFBTTthQUN0RDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDb2x1bW5Bc3luY0F0dHJpYnV0ZSB9IGZyb20gJy4vY29sdW1uLWFzeW5jLWF0dHJpYnV0ZSc7XG5cbmV4cG9ydCBjbGFzcyBDb2x1bW5BdHRyaWJ1dGVzIHtcblxuICBwcml2YXRlIF90aXRsZTogc3RyaW5nO1xuICBwcml2YXRlIF9uYW1lOiBzdHJpbmc7XG4gIHByaXZhdGUgX2N1c3RvbWl6ZSA9IHRydWU7XG4gIHByaXZhdGUgX3NvcnRhYmxlOiBib29sZWFuO1xuICBwcml2YXRlIF9zb3J0YWJsZURlZmF1bHQ6IGJvb2xlYW47XG4gIHByaXZhdGUgX2RpcmVjdGlvbiQgPSBuZXcgQ29sdW1uQXN5bmNBdHRyaWJ1dGUobnVsbCk7XG4gIHByaXZhdGUgX2FsaWduOiBzdHJpbmc7XG4gIHByaXZhdGUgX3dpZHRoOiBzdHJpbmc7XG4gIHByaXZhdGUgX2NsYXNzTmFtZTogc3RyaW5nIHwgc3RyaW5nW107XG4gIHByaXZhdGUgX3Zpc2libGUkID0gbmV3IENvbHVtbkFzeW5jQXR0cmlidXRlKHRydWUpO1xuXG4gIGNvbnN0cnVjdG9yKGF0dHJzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge30pIHtcbiAgICB0aGlzLl9pbml0KGF0dHJzKTtcbiAgfVxuXG4gIC8vIHRpdGxlXG4gIHB1YmxpYyBzZXQgdGl0bGUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3RpdGxlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RpdGxlO1xuICB9XG5cbiAgLy8gbmFtZVxuICBwdWJsaWMgc2V0IG5hbWUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX25hbWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9uYW1lO1xuICB9XG5cbiAgLy8gY3VzdG9taXplXG4gIHB1YmxpYyBzZXQgY3VzdG9taXplKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fY3VzdG9taXplID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGN1c3RvbWl6ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fY3VzdG9taXplO1xuICB9XG5cbiAgLy8gc29ydGFibGVcbiAgcHVibGljIHNldCBzb3J0YWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3NvcnRhYmxlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNvcnRhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zb3J0YWJsZTtcbiAgfVxuXG4gIC8vIHNvcnRhYmxlRGVmYXVsdFxuICBwdWJsaWMgc2V0IHNvcnRhYmxlRGVmYXVsdCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3NvcnRhYmxlRGVmYXVsdCA9IHZhbHVlO1xuXG4gICAgaWYgKHRoaXMuc29ydGFibGVEZWZhdWx0KSB7XG4gICAgICB0aGlzLnNvcnRhYmxlID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNvcnRhYmxlRGVmYXVsdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fc29ydGFibGVEZWZhdWx0O1xuICB9XG5cbiAgLy8gZGlyZWN0aW9uXG4gIHB1YmxpYyBzZXQgZGlyZWN0aW9uKHZhbHVlOiAnYXNjJyB8ICdkZXNjJykge1xuICAgIHRoaXMuc29ydGFibGUgPSB0cnVlO1xuICAgIFxuICAgIHRoaXMuX2RpcmVjdGlvbiQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpcmVjdGlvbigpOiAnYXNjJyB8ICdkZXNjJyB7XG4gICAgcmV0dXJuIHRoaXMuX2RpcmVjdGlvbiQudmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpcmVjdGlvbiQoKTogT2JzZXJ2YWJsZTwnYXNjJyB8ICdkZXNjJz4ge1xuICAgIHJldHVybiB0aGlzLl9kaXJlY3Rpb24kLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgLy8gYWxpZ25cbiAgcHVibGljIHNldCBhbGlnbih2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fYWxpZ24gPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWxpZ24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fYWxpZ247XG4gIH1cblxuICAvLyB3aWR0aFxuICBwdWJsaWMgc2V0IHdpZHRoKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl93aWR0aCA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCB3aWR0aCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl93aWR0aDtcbiAgfVxuXG4gIC8vIGNsYXNzTmFtZVxuICBwdWJsaWMgc2V0IGNsYXNzTmFtZSh2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10pIHtcbiAgICB0aGlzLl9jbGFzc05hbWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2xhc3NOYW1lKCk6IHN0cmluZyB8IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5fY2xhc3NOYW1lO1xuICB9XG5cbiAgLy8gdmlzaWJpbGl0eVxuICBwdWJsaWMgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl92aXNpYmxlJC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZSQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmlzaWJsZSQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGUkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdChhdHRyczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSkge1xuICAgIE9iamVjdC5rZXlzKGF0dHJzKVxuICAgICAgLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBzd2l0Y2ggKGtleSkge1xuICAgICAgICAgIGNhc2UgJ3RpdGxlJzogeyB0aGlzLnRpdGxlID0gYXR0cnNba2V5XTsgfSBicmVhaztcbiAgICAgICAgICBjYXNlICduYW1lJzogeyB0aGlzLm5hbWUgPSBhdHRyc1trZXldOyB9IGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ2FsaWduJzogeyB0aGlzLmFsaWduID0gYXR0cnNba2V5XTsgfSBicmVhaztcbiAgICAgICAgICBjYXNlICdkaXJlY3Rpb24nOiB7IHRoaXMuZGlyZWN0aW9uID0gYXR0cnNba2V5XTsgfSBicmVhaztcbiAgICAgICAgICBjYXNlICdzb3J0YWJsZSc6IHsgdGhpcy5zb3J0YWJsZSA9IGF0dHJzW2tleV07IH0gYnJlYWs7XG4gICAgICAgICAgY2FzZSAnc2hvdyc6IHsgdGhpcy52aXNpYmxlID0gYXR0cnNba2V5XTsgfSBicmVhaztcbiAgICAgICAgICBjYXNlICd2aXNpYmxlJzogeyB0aGlzLnZpc2libGUgPSBhdHRyc1trZXldOyB9IGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxufVxuIl19
@@ -1,164 +0,0 @@
1
- import { isBoolean, isObject } from 'lodash-es';
2
- import { StyleConfig } from './styleConfig.model';
3
- export var SortingDirection;
4
- (function (SortingDirection) {
5
- SortingDirection["asc"] = "asc";
6
- SortingDirection["desc"] = "desc";
7
- })(SortingDirection || (SortingDirection = {}));
8
- const ALLOWED_DEFAULTS = [
9
- 'title',
10
- 'sortable',
11
- 'align',
12
- 'class',
13
- ];
14
- export class Column {
15
- constructor(colConfig, colDefaults = false) {
16
- this.headerConfigs = new StyleConfig();
17
- this.groupHeaderConfigs = new StyleConfig();
18
- this.groupFooterConfigs = new StyleConfig();
19
- this.cellConfigs = new StyleConfig();
20
- this.footerConfigs = new StyleConfig();
21
- this.headerColspanned = false;
22
- this.groupHeaderColspanned = false;
23
- this.groupFooterColspanned = false;
24
- this.cellColspanned = false;
25
- this.footerColspanned = false;
26
- this._ordered = false;
27
- this._parseConfig(colConfig);
28
- this.colStyles = new StyleConfig({
29
- className: this._attributes.className,
30
- align: this._attributes.align,
31
- });
32
- this.mergeWithColumnDefaults(colDefaults);
33
- }
34
- set title(value) {
35
- this._attributes.title = value;
36
- }
37
- get title() {
38
- return this._attributes.title;
39
- }
40
- get name() {
41
- return this._attributes.name;
42
- }
43
- get customize() {
44
- return this._attributes.customize;
45
- }
46
- get width() {
47
- return this._attributes.width;
48
- }
49
- set sortable(value) {
50
- this._attributes.sortable = value;
51
- }
52
- get sortable() {
53
- return this._attributes.sortable;
54
- }
55
- get sortableDefault() {
56
- return this._attributes.sortableDefault;
57
- }
58
- set sortingDirection(value) {
59
- this._attributes.direction = value;
60
- }
61
- get sortingDirection() {
62
- return this._attributes.direction;
63
- }
64
- get sortingDirection$() {
65
- return this._attributes.direction$;
66
- }
67
- get visible() {
68
- return this._attributes.visible;
69
- }
70
- get visible$() {
71
- return this._attributes.visible$;
72
- }
73
- get direction() {
74
- return (this.sortingDirection === SortingDirection.asc) ? 'asc' : 'desc';
75
- }
76
- get fullNameDirection() {
77
- return (this.sortingDirection === SortingDirection.asc) ? 'Ascending' : 'Descending';
78
- }
79
- get ordered() {
80
- return this._ordered;
81
- }
82
- set ordered(value) {
83
- if (value && this._ordered !== value) {
84
- this.sortingDirection = this._defaultDirection ?? SortingDirection.asc;
85
- }
86
- this._ordered = value;
87
- }
88
- /**
89
- * Merge with defaults with existing config
90
- *
91
- * @param defaults
92
- */
93
- mergeWithColumnDefaults(defaults) {
94
- if (!isObject(defaults)) {
95
- defaults = {};
96
- }
97
- ALLOWED_DEFAULTS.forEach((key) => {
98
- switch (key) {
99
- case 'title':
100
- {
101
- this.title = this.title || defaults.title;
102
- }
103
- break;
104
- case 'sortable':
105
- {
106
- if (isBoolean(defaults.sortable)) {
107
- if (this.sortable === void 0) {
108
- this.sortable = defaults.sortable;
109
- }
110
- }
111
- }
112
- break;
113
- case 'class':
114
- {
115
- this.headerConfigs.mergeClassByPriority(this.colStyles, defaults.header);
116
- this.groupHeaderConfigs.mergeClassByPriority(this.colStyles, defaults.cell);
117
- this.groupFooterConfigs.mergeClassByPriority(this.colStyles, defaults.cell);
118
- this.cellConfigs.mergeClassByPriority(this.colStyles, defaults.cell);
119
- this.footerConfigs.mergeClassByPriority(this.colStyles, defaults.footer);
120
- }
121
- break;
122
- case 'align':
123
- {
124
- this.headerConfigs.mergeAlignByPriority(this.colStyles, defaults.header);
125
- this.groupHeaderConfigs.mergeAlignByPriority(this.colStyles, defaults.cell);
126
- this.groupFooterConfigs.mergeAlignByPriority(this.colStyles, defaults.cell);
127
- this.cellConfigs.mergeAlignByPriority(this.colStyles, defaults.cell);
128
- this.footerConfigs.mergeAlignByPriority(this.colStyles, defaults.footer);
129
- }
130
- break;
131
- }
132
- });
133
- this.headerConfigs.updateClasesArray();
134
- this.groupHeaderConfigs.updateClasesArray();
135
- this.groupFooterConfigs.updateClasesArray();
136
- this.cellConfigs.updateClasesArray();
137
- this.footerConfigs.updateClasesArray();
138
- }
139
- /**
140
- * Change sorting direction
141
- */
142
- changeDirection() {
143
- this.sortingDirection = this.sortingDirection === SortingDirection.asc ? SortingDirection.desc : SortingDirection.asc;
144
- }
145
- updateVisibility(value) {
146
- this._attributes.visible = value;
147
- }
148
- _parseConfig(config) {
149
- this._attributes = config.attributes;
150
- this.headerTemplate = config.headerTemplate;
151
- this.groupHeaderTemplate = config.groupHeaderTemplate;
152
- this.groupFooterTemplate = config.groupFooterTemplate;
153
- this.cellTemplate = config.cellTemplate;
154
- this.footerTemplate = config.footerTemplate;
155
- this.headerConfigs = new StyleConfig(config.headerConfigs);
156
- this.groupHeaderConfigs = new StyleConfig(config.groupHeaderConfigs);
157
- this.groupFooterConfigs = new StyleConfig(config.groupFooterConfigs);
158
- this.cellConfigs = new StyleConfig(config.cellConfigs);
159
- this.footerConfigs = new StyleConfig(config.footerConfigs);
160
- this.expandTrigger = config.expandTrigger;
161
- this._defaultDirection = config.attributes.direction;
162
- }
163
- }
164
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2RlbHMvY29sdW1uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBTWhELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRCxNQUFNLENBQU4sSUFBWSxnQkFHWDtBQUhELFdBQVksZ0JBQWdCO0lBQzFCLCtCQUFXLENBQUE7SUFDWCxpQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQUhXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFHM0I7QUFFRCxNQUFNLGdCQUFnQixHQUFHO0lBQ3ZCLE9BQU87SUFDUCxVQUFVO0lBQ1YsT0FBTztJQUNQLE9BQU87Q0FDUixDQUFDO0FBRUYsTUFBTSxPQUFPLE1BQU07SUErQmpCLFlBQVksU0FBNkIsRUFBRSxjQUFtQixLQUFLO1FBdEI1RCxrQkFBYSxHQUFnQixJQUFJLFdBQVcsRUFBRSxDQUFDO1FBRS9DLHVCQUFrQixHQUFnQixJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ3BELHVCQUFrQixHQUFnQixJQUFJLFdBQVcsRUFBRSxDQUFDO1FBRXBELGdCQUFXLEdBQWdCLElBQUksV0FBVyxFQUFFLENBQUM7UUFFN0Msa0JBQWEsR0FBZ0IsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUkvQyxxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDekIsMEJBQXFCLEdBQUcsS0FBSyxDQUFDO1FBQzlCLDBCQUFxQixHQUFHLEtBQUssQ0FBQztRQUM5QixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFLeEIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUd2QixJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTdCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFB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TSxDQUFDLGNBQWMsQ0FBQztRQUM1QyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDO1FBQ3RELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUM7UUFDdEQsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQztRQUM1QyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksV0FBVyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMzRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksV0FBVyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3JFLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQztRQUMxQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUM7SUFDdkQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUXVlcnlMaXN0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IGlzQm9vbGVhbiwgaXNPYmplY3QgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5pbXBvcnQgeyBGc0xpc3RHcm91cEV4cGFuZFRyaWdnZXJEaXJlY3RpdmUgfSBmcm9tICcuLi9kaXJlY3RpdmVzL2dyb3VwLWV4cGFuZC10cmlnZ2VyL2dyb3VwLWV4cGFuZC10cmlnZ2VyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RDb2x1bW5Db25maWcgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2NvbHVtbi1jb25maWcuaW50ZXJmYWNlJztcblxuaW1wb3J0IHsgQ29sdW1uQXR0cmlidXRlcyB9IGZyb20gJy4vY29sdW1uLWF0dHJpYnV0ZXMnO1xuaW1wb3J0IHsgU3R5bGVDb25maWcgfSBmcm9tICcuL3N0eWxlQ29uZmlnLm1vZGVsJztcblxuZXhwb3J0IGVudW0gU29ydGluZ0RpcmVjdGlvbiB7XG4gIGFzYyA9ICdhc2MnLFxuICBkZXNjID0gJ2Rlc2MnXG59XG5cbmNvbnN0IEFMTE9XRURfREVGQVVMVFMgPSBbXG4gICd0aXRsZScsXG4gICdzb3J0YWJsZScsXG4gICdhbGlnbicsXG4gICdjbGFzcycsXG5dO1xuXG5leHBvcnQgY2xhc3MgQ29sdW1uIHtcblxuICBwdWJsaWMgaGVhZGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIHB1YmxpYyBncm91cEhlYWRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBwdWJsaWMgZ3JvdXBGb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgcHVibGljIGNlbGxUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgcHVibGljIGZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBwdWJsaWMgZXhwYW5kVHJpZ2dlcjogUXVlcnlMaXN0PEZzTGlzdEdyb3VwRXhwYW5kVHJpZ2dlckRpcmVjdGl2ZT47XG5cbiAgcHVibGljIGhlYWRlckNvbmZpZ3M6IFN0eWxlQ29uZmlnID0gbmV3IFN0eWxlQ29uZmlnKCk7XG5cbiAgcHVibGljIGdyb3VwSGVhZGVyQ29uZmlnczogU3R5bGVDb25maWcgPSBuZXcgU3R5bGVDb25maWcoKTtcbiAgcHVibGljIGdyb3VwRm9vdGVyQ29uZmlnczogU3R5bGVDb25maWcgPSBuZXcgU3R5bGVDb25maWcoKTtcblxuICBwdWJsaWMgY2VsbENvbmZpZ3M6IFN0eWxlQ29uZmlnID0gbmV3IFN0eWxlQ29uZmlnKCk7XG5cbiAgcHVibGljIGZvb3RlckNvbmZpZ3M6IFN0eWxlQ29uZmlnID0gbmV3IFN0eWxlQ29uZmlnKCk7XG5cbiAgcHVibGljIGNvbFN0eWxlczogU3R5bGVDb25maWc7XG5cbiAgcHVibGljIGhlYWRlckNvbHNwYW5uZWQgPSBmYWxzZTtcbiAgcHVibGljIGdyb3VwSGVhZGVyQ29sc3Bhbm5lZCA9IGZhbHNlO1xuICBwdWJsaWMgZ3JvdXBGb290ZXJDb2xzcGFubmVkID0gZmFsc2U7XG4gIHB1YmxpYyBjZWxsQ29sc3Bhbm5lZCA9IGZhbHNlO1xuICBwdWJsaWMgZm9vdGVyQ29sc3Bhbm5lZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2F0dHJpYnV0ZXM6IENvbHVtbkF0dHJpYnV0ZXM7XG4gIHByaXZhdGUgX2RlZmF1bHREaXJlY3Rpb246ICdhc2MnIHwgJ2Rlc2MnO1xuXG4gIHByaXZhdGUgX29yZGVyZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihjb2xDb25maWc6IEZzTGlzdENvbHVtbkNvbmZpZywgY29sRGVmYXVsdHM6IGFueSA9IGZhbHNlKSB7XG4gICAgdGhpcy5fcGFyc2VDb25maWcoY29sQ29uZmlnKTtcblxuICAgIHRoaXMuY29sU3R5bGVzID0gbmV3IFN0eWxlQ29uZmlnKHtcbiAgICAgIGNsYXNzTmFtZTogdGhpcy5fYXR0cmlidXRlcy5jbGFzc05hbWUsXG4gICAgICBhbGlnbjogdGhpcy5fYXR0cmlidXRlcy5hbGlnbixcbiAgICB9KTtcblxuICAgIHRoaXMubWVyZ2VXaXRoQ29sdW1uRGVmYXVsdHMoY29sRGVmYXVsdHMpO1xuICB9XG5cbiAgcHVibGljIHNldCB0aXRsZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fYXR0cmlidXRlcy50aXRsZSA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCB0aXRsZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9hdHRyaWJ1dGVzLnRpdGxlO1xuICB9XG5cbiAgcHVibGljIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2F0dHJpYnV0ZXMubmFtZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY3VzdG9taXplKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9hdHRyaWJ1dGVzLmN1c3RvbWl6ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgd2lkdGgoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fYXR0cmlidXRlcy53aWR0aDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgc29ydGFibGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9hdHRyaWJ1dGVzLnNvcnRhYmxlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNvcnRhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9hdHRyaWJ1dGVzLnNvcnRhYmxlO1xuICB9XG5cbiAgcHVibGljIGdldCBzb3J0YWJsZURlZmF1bHQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2F0dHJpYnV0ZXMuc29ydGFibGVEZWZhdWx0O1xuICB9XG5cbiAgcHVibGljIHNldCBzb3J0aW5nRGlyZWN0aW9uKHZhbHVlOiAnYXNjJyB8ICdkZXNjJykge1xuICAgIHRoaXMuX2F0dHJpYnV0ZXMuZGlyZWN0aW9uID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNvcnRpbmdEaXJlY3Rpb24oKTogJ2FzYycgfCAnZGVzYycge1xuICAgIHJldHVybiB0aGlzLl9hdHRyaWJ1dGVzLmRpcmVjdGlvbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc29ydGluZ0RpcmVjdGlvbiQoKTogT2JzZXJ2YWJsZTwnYXNjJyB8ICdkZXNjJz4ge1xuICAgIHJldHVybiB0aGlzLl9hdHRyaWJ1dGVzLmRpcmVjdGlvbiQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2F0dHJpYnV0ZXMudmlzaWJsZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmlzaWJsZSQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX2F0dHJpYnV0ZXMudmlzaWJsZSQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpcmVjdGlvbigpIHtcbiAgICByZXR1cm4gKHRoaXMuc29ydGluZ0RpcmVjdGlvbiA9PT0gU29ydGluZ0RpcmVjdGlvbi5hc2MpID8gJ2FzYycgOiAnZGVzYyc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZ1bGxOYW1lRGlyZWN0aW9uKCkge1xuICAgIHJldHVybiAodGhpcy5zb3J0aW5nRGlyZWN0aW9uID09PSBTb3J0aW5nRGlyZWN0aW9uLmFzYykgPyAnQXNjZW5kaW5nJyA6ICdEZXNjZW5kaW5nJztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgb3JkZXJlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fb3JkZXJlZDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgb3JkZXJlZCh2YWx1ZSkge1xuICAgIGlmICh2YWx1ZSAmJiB0aGlzLl9vcmRlcmVkICE9PSB2YWx1ZSkge1xuICAgICAgdGhpcy5zb3J0aW5nRGlyZWN0aW9uID0gdGhpcy5fZGVmYXVsdERpcmVjdGlvbiA/PyBTb3J0aW5nRGlyZWN0aW9uLmFzYztcbiAgICB9XG5cbiAgICB0aGlzLl9vcmRlcmVkID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogTWVyZ2Ugd2l0aCBkZWZhdWx0cyB3aXRoIGV4aXN0aW5nIGNvbmZpZ1xuICAgKlxuICAgKiBAcGFyYW0gZGVmYXVsdHNcbiAgICovXG4gIHB1YmxpYyBtZXJnZVdpdGhDb2x1bW5EZWZhdWx0cyhkZWZhdWx0cykge1xuICAgIGlmICghaXNPYmplY3QoZGVmYXVsdHMpKSB7XG4gICAgICBkZWZhdWx0cyA9IHt9O1xuICAgIH1cblxuICAgIEFMTE9XRURfREVGQVVMVFMuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBzd2l0Y2ggKGtleSkge1xuICAgICAgICBjYXNlICd0aXRsZSc6IHtcbiAgICAgICAgICB0aGlzLnRpdGxlID0gdGhpcy50aXRsZSB8fCBkZWZhdWx0cy50aXRsZTtcbiAgICAgICAgfSBicmVhaztcblxuICAgICAgICBjYXNlICdzb3J0YWJsZSc6IHtcbiAgICAgICAgICBpZiAoaXNCb29sZWFuKGRlZmF1bHRzLnNvcnRhYmxlKSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuc29ydGFibGUgPT09IHZvaWQgMCkge1xuICAgICAgICAgICAgICB0aGlzLnNvcnRhYmxlID0gZGVmYXVsdHMuc29ydGFibGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ2NsYXNzJzoge1xuICAgICAgICAgIHRoaXMuaGVhZGVyQ29uZmlncy5tZXJnZUNsYXNzQnlQcmlvcml0eSh0aGlzLmNvbFN0eWxlcywgZGVmYXVsdHMuaGVhZGVyKTtcbiAgICAgICAgICB0aGlzLmdyb3VwSGVhZGVyQ29uZmlncy5tZXJnZUNsYXNzQnlQcmlvcml0eSh0aGlzLmNvbFN0eWxlcywgZGVmYXVsdHMuY2VsbCk7XG4gICAgICAgICAgdGhpcy5ncm91cEZvb3RlckNvbmZpZ3MubWVyZ2VDbGFzc0J5UHJpb3JpdHkodGhpcy5jb2xTdHlsZXMsIGRlZmF1bHRzLmNlbGwpO1xuICAgICAgICAgIHRoaXMuY2VsbENvbmZpZ3MubWVyZ2VDbGFzc0J5UHJpb3JpdHkodGhpcy5jb2xTdHlsZXMsIGRlZmF1bHRzLmNlbGwpO1xuICAgICAgICAgIHRoaXMuZm9vdGVyQ29uZmlncy5tZXJnZUNsYXNzQnlQcmlvcml0eSh0aGlzLmNvbFN0eWxlcywgZGVmYXVsdHMuZm9vdGVyKTtcbiAgICAgICAgfSBicmVhaztcblxuICAgICAgICBjYXNlICdhbGlnbic6IHtcbiAgICAgICAgICB0aGlzLmhlYWRlckNvbmZpZ3MubWVyZ2VBbGlnbkJ5UHJpb3JpdHkodGhpcy5jb2xTdHlsZXMsIGRlZmF1bHRzLmhlYWRlcik7XG4gICAgICAgICAgdGhpcy5ncm91cEhlYWRlckNvbmZpZ3MubWVyZ2VBbGlnbkJ5UHJpb3JpdHkodGhpcy5jb2xTdHlsZXMsIGRlZmF1bHRzLmNlbGwpO1xuICAgICAgICAgIHRoaXMuZ3JvdXBGb290ZXJDb25maWdzLm1lcmdlQWxpZ25CeVByaW9yaXR5KHRoaXMuY29sU3R5bGVzLCBkZWZhdWx0cy5jZWxsKTtcbiAgICAgICAgICB0aGlzLmNlbGxDb25maWdzLm1lcmdlQWxpZ25CeVByaW9yaXR5KHRoaXMuY29sU3R5bGVzLCBkZWZhdWx0cy5jZWxsKTtcbiAgICAgICAgICB0aGlzLmZvb3RlckNvbmZpZ3MubWVyZ2VBbGlnbkJ5UHJpb3JpdHkodGhpcy5jb2xTdHlsZXMsIGRlZmF1bHRzLmZvb3Rlcik7XG4gICAgICAgIH0gYnJlYWs7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLmhlYWRlckNvbmZpZ3MudXBkYXRlQ2xhc2VzQXJyYXkoKTtcbiAgICB0aGlzLmdyb3VwSGVhZGVyQ29uZmlncy51cGRhdGVDbGFzZXNBcnJheSgpO1xuICAgIHRoaXMuZ3JvdXBGb290ZXJDb25maWdzLnVwZGF0ZUNsYXNlc0FycmF5KCk7XG4gICAgdGhpcy5jZWxsQ29uZmlncy51cGRhdGVDbGFzZXNBcnJheSgpO1xuICAgIHRoaXMuZm9vdGVyQ29uZmlncy51cGRhdGVDbGFzZXNBcnJheSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoYW5nZSBzb3J0aW5nIGRpcmVjdGlvblxuICAgKi9cbiAgcHVibGljIGNoYW5nZURpcmVjdGlvbigpIHtcbiAgICB0aGlzLnNvcnRpbmdEaXJlY3Rpb24gPSB0aGlzLnNvcnRpbmdEaXJlY3Rpb24gPT09IFNvcnRpbmdEaXJlY3Rpb24uYXNjID8gU29ydGluZ0RpcmVjdGlvbi5kZXNjIDogU29ydGluZ0RpcmVjdGlvbi5hc2M7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlVmlzaWJpbGl0eSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2F0dHJpYnV0ZXMudmlzaWJsZSA9IHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfcGFyc2VDb25maWcoY29uZmlnOiBGc0xpc3RDb2x1bW5Db25maWcpIHtcbiAgICB0aGlzLl9hdHRyaWJ1dGVzID0gY29uZmlnLmF0dHJpYnV0ZXM7XG5cbiAgICB0aGlzLmhlYWRlclRlbXBsYXRlID0gY29uZmlnLmhlYWRlclRlbXBsYXRlO1xuICAgIHRoaXMuZ3JvdXBIZWFkZXJUZW1wbGF0ZSA9IGNvbmZpZy5ncm91cEhlYWRlclRlbXBsYXRlO1xuICAgIHRoaXMuZ3JvdXBGb290ZXJUZW1wbGF0ZSA9IGNvbmZpZy5ncm91cEZvb3RlclRlbXBsYXRlO1xuICAgIHRoaXMuY2VsbFRlbXBsYXRlID0gY29uZmlnLmNlbGxUZW1wbGF0ZTtcbiAgICB0aGlzLmZvb3RlclRlbXBsYXRlID0gY29uZmlnLmZvb3RlclRlbXBsYXRlO1xuICAgIHRoaXMuaGVhZGVyQ29uZmlncyA9IG5ldyBTdHlsZUNvbmZpZyhjb25maWcuaGVhZGVyQ29uZmlncyk7XG4gICAgdGhpcy5ncm91cEhlYWRlckNvbmZpZ3MgPSBuZXcgU3R5bGVDb25maWcoY29uZmlnLmdyb3VwSGVhZGVyQ29uZmlncyk7XG4gICAgdGhpcy5ncm91cEZvb3RlckNvbmZpZ3MgPSBuZXcgU3R5bGVDb25maWcoY29uZmlnLmdyb3VwRm9vdGVyQ29uZmlncyk7XG4gICAgdGhpcy5jZWxsQ29uZmlncyA9IG5ldyBTdHlsZUNvbmZpZyhjb25maWcuY2VsbENvbmZpZ3MpO1xuICAgIHRoaXMuZm9vdGVyQ29uZmlncyA9IG5ldyBTdHlsZUNvbmZpZyhjb25maWcuZm9vdGVyQ29uZmlncyk7XG4gICAgdGhpcy5leHBhbmRUcmlnZ2VyID0gY29uZmlnLmV4cGFuZFRyaWdnZXI7XG4gICAgdGhpcy5fZGVmYXVsdERpcmVjdGlvbiA9IGNvbmZpZy5hdHRyaWJ1dGVzLmRpcmVjdGlvbjtcbiAgfVxufVxuIl19
@@ -1,23 +0,0 @@
1
- import { RowType } from '../../enums/row-type.enum';
2
- export class BaseRow {
3
- constructor(data = {}, rowType = RowType.Simple) {
4
- this.readyToSwap = true;
5
- this._data = {};
6
- this._data = data;
7
- this._rowType = rowType;
8
- }
9
- get data() {
10
- return this._data;
11
- }
12
- get type() {
13
- return this._rowType;
14
- }
15
- getReorderData() {
16
- return {
17
- type: this._rowType,
18
- data: this.data,
19
- parent: null,
20
- };
21
- }
22
- }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1yb3cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZGVscy9yb3cvYmFzZS1yb3cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBR3BELE1BQU0sT0FBZ0IsT0FBTztJQVMzQixZQUNFLE9BQVksRUFBRSxFQUNkLE9BQU8sR0FBRyxPQUFPLENBQUMsTUFBTTtRQVJuQixnQkFBVyxHQUFHLElBQUksQ0FBQztRQUlULFVBQUssR0FBUSxFQUFFLENBQUM7UUFNL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDbEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxjQUFjO1FBQ25CLE9BQU87WUFDTCxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDbkIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsTUFBTSxFQUFFLElBQUk7U0FDYixDQUFBO0lBQ0gsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm93VHlwZSB9IGZyb20gJy4uLy4uL2VudW1zL3Jvdy10eXBlLmVudW0nO1xuaW1wb3J0IHsgRnNMaXN0UmVvcmRlckRhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VSb3cge1xuXG4gIHB1YmxpYyBpbmRleDogbnVtYmVyO1xuICBwdWJsaWMgcmVhZHlUb1N3YXAgPSB0cnVlO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfcm93VHlwZTogUm93VHlwZTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9kYXRhOiBhbnkgPSB7fTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBkYXRhOiBhbnkgPSB7fSxcbiAgICByb3dUeXBlID0gUm93VHlwZS5TaW1wbGUsXG4gICkge1xuICAgIHRoaXMuX2RhdGEgPSBkYXRhO1xuICAgIHRoaXMuX3Jvd1R5cGUgPSByb3dUeXBlO1xuICB9XG5cbiAgcHVibGljIGdldCBkYXRhKCkge1xuICAgIHJldHVybiB0aGlzLl9kYXRhO1xuICB9XG5cbiAgcHVibGljIGdldCB0eXBlKCkge1xuICAgIHJldHVybiB0aGlzLl9yb3dUeXBlO1xuICB9XG5cbiAgcHVibGljIGdldFJlb3JkZXJEYXRhKCk6IEZzTGlzdFJlb3JkZXJEYXRhIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogdGhpcy5fcm93VHlwZSxcbiAgICAgIGRhdGE6IHRoaXMuZGF0YSxcbiAgICAgIHBhcmVudDogbnVsbCxcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYWJzdHJhY3QgZGVzdHJveSgpO1xufVxuIl19
@@ -1,28 +0,0 @@
1
- import { BaseRow } from './base-row';
2
- import { RowType } from '../../enums/row-type.enum';
3
- export class ChildRow extends BaseRow {
4
- constructor(data = {}, parent = null) {
5
- super(data, RowType.GroupChild);
6
- this.visible = true;
7
- this._parent = parent;
8
- if (this.parent) {
9
- this.visible = this._parent.expanded;
10
- this.index = this.parent.children.length;
11
- }
12
- }
13
- get parent() {
14
- return this._parent;
15
- }
16
- get isChild() {
17
- return true;
18
- }
19
- getReorderData() {
20
- return {
21
- type: this._rowType,
22
- data: this.data,
23
- parent: this.parent.getReorderData(),
24
- };
25
- }
26
- destroy() { }
27
- }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpbGQtcm93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2RlbHMvcm93L2NoaWxkLXJvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUtwRCxNQUFNLE9BQU8sUUFBUyxTQUFRLE9BQU87SUFLbkMsWUFDRSxPQUFZLEVBQUUsRUFDZCxTQUFtQixJQUFJO1FBRXZCLEtBQUssQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBUDNCLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFTcEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFFdEIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztZQUNyQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztTQUMxQztJQUNILENBQUM7SUFFRCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxjQUFjO1FBQ25CLE9BQU87WUFDTCxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDbkIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFO1NBQ3JDLENBQUE7SUFDSCxDQUFDO0lBRU0sT0FBTyxLQUFJLENBQUM7Q0FDcEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlUm93IH0gZnJvbSAnLi9iYXNlLXJvdyc7XG5pbXBvcnQgeyBSb3dUeXBlIH0gZnJvbSAnLi4vLi4vZW51bXMvcm93LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBHcm91cFJvdyB9IGZyb20gJy4vZ3JvdXAtcm93JztcbmltcG9ydCB7IEZzTGlzdFJlb3JkZXJEYXRhIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5cblxuZXhwb3J0IGNsYXNzIENoaWxkUm93IGV4dGVuZHMgQmFzZVJvdyB7XG5cbiAgcHVibGljIHZpc2libGUgPSB0cnVlO1xuICBwcml2YXRlIHJlYWRvbmx5IF9wYXJlbnQ6IEdyb3VwUm93O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGRhdGE6IGFueSA9IHt9LFxuICAgIHBhcmVudDogR3JvdXBSb3cgPSBudWxsLFxuICApIHtcbiAgICBzdXBlcihkYXRhLCBSb3dUeXBlLkdyb3VwQ2hpbGQpO1xuXG4gICAgdGhpcy5fcGFyZW50ID0gcGFyZW50O1xuXG4gICAgaWYgKHRoaXMucGFyZW50KSB7XG4gICAgICB0aGlzLnZpc2libGUgPSB0aGlzLl9wYXJlbnQuZXhwYW5kZWQ7XG4gICAgICB0aGlzLmluZGV4ID0gdGhpcy5wYXJlbnQuY2hpbGRyZW4ubGVuZ3RoO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgcGFyZW50KCk6IEdyb3VwUm93IHtcbiAgICByZXR1cm4gdGhpcy5fcGFyZW50O1xuICB9XG5cbiAgcHVibGljIGdldCBpc0NoaWxkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHVibGljIGdldFJlb3JkZXJEYXRhKCk6IEZzTGlzdFJlb3JkZXJEYXRhIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogdGhpcy5fcm93VHlwZSxcbiAgICAgIGRhdGE6IHRoaXMuZGF0YSxcbiAgICAgIHBhcmVudDogdGhpcy5wYXJlbnQuZ2V0UmVvcmRlckRhdGEoKSxcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZGVzdHJveSgpIHt9XG59XG4iXX0=
@@ -1,21 +0,0 @@
1
- import { BaseRow } from './base-row';
2
- import { RowType } from '../../enums/row-type.enum';
3
- export class GroupFooterRow extends BaseRow {
4
- constructor(data = {}, parent = null) {
5
- super(data, RowType.GroupFooter);
6
- this.visible = true;
7
- this._parent = parent;
8
- if (this.parent) {
9
- this.visible = this._parent.expanded;
10
- this.index = this.parent.children.length;
11
- }
12
- }
13
- get parent() {
14
- return this._parent;
15
- }
16
- get isGroupFooter() {
17
- return true;
18
- }
19
- destroy() { }
20
- }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtZm9vdGVyLXJvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kZWxzL3Jvdy9ncm91cC1mb290ZXItcm93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSXBELE1BQU0sT0FBTyxjQUFlLFNBQVEsT0FBTztJQUt6QyxZQUNFLE9BQVksRUFBRSxFQUNkLFNBQW1CLElBQUk7UUFFdkIsS0FBSyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFQNUIsWUFBTyxHQUFHLElBQUksQ0FBQztRQVNwQixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUV0QixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDZixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1NBQzFDO0lBQ0gsQ0FBQztJQUVELElBQVcsTUFBTTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLE9BQU8sS0FBSSxDQUFDO0NBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVJvdyB9IGZyb20gJy4vYmFzZS1yb3cnO1xuaW1wb3J0IHsgUm93VHlwZSB9IGZyb20gJy4uLy4uL2VudW1zL3Jvdy10eXBlLmVudW0nO1xuaW1wb3J0IHsgR3JvdXBSb3cgfSBmcm9tICcuL2dyb3VwLXJvdyc7XG5cblxuZXhwb3J0IGNsYXNzIEdyb3VwRm9vdGVyUm93IGV4dGVuZHMgQmFzZVJvdyB7XG5cbiAgcHVibGljIHZpc2libGUgPSB0cnVlO1xuICBwcml2YXRlIHJlYWRvbmx5IF9wYXJlbnQ6IEdyb3VwUm93O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGRhdGE6IGFueSA9IHt9LFxuICAgIHBhcmVudDogR3JvdXBSb3cgPSBudWxsLFxuICApIHtcbiAgICBzdXBlcihkYXRhLCBSb3dUeXBlLkdyb3VwRm9vdGVyKTtcblxuICAgIHRoaXMuX3BhcmVudCA9IHBhcmVudDtcblxuICAgIGlmICh0aGlzLnBhcmVudCkge1xuICAgICAgdGhpcy52aXNpYmxlID0gdGhpcy5fcGFyZW50LmV4cGFuZGVkO1xuICAgICAgdGhpcy5pbmRleCA9IHRoaXMucGFyZW50LmNoaWxkcmVuLmxlbmd0aDtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBhcmVudCgpOiBHcm91cFJvdyB7XG4gICAgcmV0dXJuIHRoaXMuX3BhcmVudDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNHcm91cEZvb3RlcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBkZXN0cm95KCkge31cbn1cbiJdfQ==
@@ -1,90 +0,0 @@
1
- import { ActionType } from '../enums/action-type.enum';
2
- export class RowAction {
3
- constructor(config = {}) {
4
- this.label = '';
5
- this.classArray = [];
6
- this.isShown = true;
7
- this._isGroup = false;
8
- this._init(config);
9
- if (Array.isArray(this.rowActions)) {
10
- this._isGroup = true;
11
- }
12
- }
13
- get isGroup() {
14
- return this._isGroup;
15
- }
16
- _init(value) {
17
- this.icon = value.icon;
18
- this.menu = value.menu ?? true;
19
- this.remove = value.remove;
20
- this.className = value.className;
21
- this.type = this.menu && this.icon && !this.label && !value.type ? ActionType.Icon : value.type ?? ActionType.Basic;
22
- this.show = value.show;
23
- this.restore = value.restore;
24
- this.rowActions = value.rowActions
25
- ?.map((action) => new RowAction(action));
26
- // Re-assign click function
27
- const clickFn = value.click;
28
- this.click = (row, event, index, rowActionsRef = null) => {
29
- return this._clickEvent(row, event, index, rowActionsRef, clickFn);
30
- };
31
- this._linkFn = value.link;
32
- if (value.file) {
33
- this.fileConfig = { ...value.file };
34
- if (this.fileConfig.select) {
35
- const selectFn = this.fileConfig.select;
36
- this.fileConfig.select = (selection, row, index) => {
37
- selectFn(selection, row, index);
38
- };
39
- }
40
- }
41
- this.label = value.label;
42
- if (this.className) {
43
- this.classArray = this.className.split(' ').reduce((acc, elem) => {
44
- acc.push(elem);
45
- return acc;
46
- }, []);
47
- }
48
- }
49
- checkShowStatus(row, index) {
50
- if (this.isGroup) {
51
- this.rowActions.forEach((action) => {
52
- action.checkShowStatus(row, index);
53
- });
54
- const groupVisible = !this.show || this.show(row, index);
55
- this.isShown = groupVisible && this.rowActions.some((action) => action.isShown);
56
- }
57
- else if (this.show) {
58
- this.isShown = this.show(row, index);
59
- }
60
- }
61
- updateLink(row) {
62
- if (!this.isShown) {
63
- return;
64
- }
65
- if (this.isGroup) {
66
- this.rowActions.forEach((action) => {
67
- action.updateLink(row);
68
- });
69
- }
70
- else if (this._linkFn) {
71
- this.routerLink = this._linkFn(row);
72
- if (this.routerLink && !this.routerLink.target) {
73
- this.routerLink.target = null;
74
- }
75
- }
76
- }
77
- _clickEvent(row, event, index, rowActionsRef, clickFn) {
78
- // Stop event propagation for parent
79
- event.stopPropagation();
80
- // Close menu
81
- if (rowActionsRef) {
82
- rowActionsRef.closeMenu();
83
- }
84
- if (clickFn) {
85
- // Fire passed callback
86
- return clickFn(row, event, index);
87
- }
88
- }
89
- }
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LWFjdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kZWxzL3Jvdy1hY3Rpb24ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBUXZELE1BQU0sT0FBTyxTQUFTO0lBcUJwQixZQUFZLFNBQWMsRUFBRTtRQVhyQixVQUFLLEdBQUcsRUFBRSxDQUFDO1FBRVgsZUFBVSxHQUFhLEVBQUUsQ0FBQztRQUMxQixZQUFPLEdBQUcsSUFBSSxDQUFDO1FBTUwsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUd6QyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRW5CLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7U0FDdEI7SUFDSCxDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRU0sS0FBSyxDQUFDLEtBQVU7UUFDckIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUNqQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMs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RTtZQUNoQixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUNqQyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3pCLENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBRXBDLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFO2dCQUM5QyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7YUFDL0I7U0FDRjtJQUNILENBQUM7SUFFTyxXQUFXLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLE9BQU87UUFDM0Qsb0NBQW9DO1FBQ3BDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV4QixhQUFhO1FBQ2IsSUFBSSxhQUFhLEVBQUU7WUFDakIsYUFBYSxDQUFDLFNBQVMsRUFBRSxDQUFDO1NBQzNCO1FBRUQsSUFBSSxPQUFPLEVBQUU7WUFDWCx1QkFBdUI7WUFDdkIsT0FBTyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztTQUNuQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvblR5cGUgfSBmcm9tICcuLi9lbnVtcy9hY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7XG4gIEZzTGlzdFJvd0FjdGlvbkZpbGUsXG4gIEZzTGlzdFJvd0FjdGlvbkxpbmssXG4gIEZzTGlzdFJvd0FjdGlvbkxpbmtGbixcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5cblxuZXhwb3J0IGNsYXNzIFJvd0FjdGlvbiB7XG5cbiAgcHVibGljIGljb246IHN0cmluZztcbiAgcHVibGljIG1lbnU6IGJvb2xlYW47XG4gIHB1YmxpYyByZW1vdmU6IHsgdGl0bGU6IHN0cmluZzsgdGVtcGxhdGU6IHN0cmluZyB9O1xuICBwdWJsaWMgY2xhc3NOYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyB0eXBlOiBBY3Rpb25UeXBlO1xuICBwdWJsaWMgc2hvdzogRnVuY3Rpb247XG4gIHB1YmxpYyByZXN0b3JlOiBib29sZWFuO1xuICBwdWJsaWMgcm93QWN0aW9uczogUm93QWN0aW9uW107XG4gIHB1YmxpYyBsYWJlbCA9ICcnO1xuICBwdWJsaWMgcm91dGVyTGluazogRnNMaXN0Um93QWN0aW9uTGluaztcbiAgcHVibGljIGNsYXNzQXJyYXk6IHN0cmluZ1tdID0gW107XG4gIHB1YmxpYyBpc1Nob3duID0gdHJ1ZTtcbiAgcHVibGljIGNsaWNrOiBGdW5jdGlvbjtcblxuICBwdWJsaWMgZmlsZUNvbmZpZzogRnNMaXN0Um93QWN0aW9uRmlsZTtcblxuICBwcml2YXRlIF9saW5rRm46IEZzTGlzdFJvd0FjdGlvbkxpbmtGbjtcbiAgcHJpdmF0ZSByZWFkb25seSBfaXNHcm91cDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKGNvbmZpZzogYW55ID0ge30pIHtcbiAgICB0aGlzLl9pbml0KGNvbmZpZyk7XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLnJvd0FjdGlvbnMpKSB7XG4gICAgICB0aGlzLl9pc0dyb3VwID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzR3JvdXAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lzR3JvdXA7XG4gIH1cblxuICBwdWJsaWMgX2luaXQodmFsdWU6IGFueSkge1xuICAgIHRoaXMuaWNvbiA9IHZhbHVlLmljb247XG4gICAgdGhpcy5tZW51ID0gdmFsdWUubWVudSA/PyB0cnVlO1xuICAgIHRoaXMucmVtb3ZlID0gdmFsdWUucmVtb3ZlO1xuICAgIHRoaXMuY2xhc3NOYW1lID0gdmFsdWUuY2xhc3NOYW1lO1xuICAgIHRoaXMudHlwZSA9IHRoaXMubWVudSAmJiB0aGlzLmljb24gJiYgIXRoaXMubGFiZWwgJiYgIXZhbHVlLnR5cGUgPyBBY3Rpb25UeXBlLkljb24gOiB2YWx1ZS50eXBlID8/IEFjdGlvblR5cGUuQmFzaWM7XG4gICAgdGhpcy5zaG93ID0gdmFsdWUuc2hvdztcbiAgICB0aGlzLnJlc3RvcmUgPSB2YWx1ZS5yZXN0b3JlO1xuICAgIHRoaXMucm93QWN0aW9ucyA9IHZhbHVlLnJvd0FjdGlvbnNcbiAgICAgID8ubWFwKChhY3Rpb24pID0+IG5ldyBSb3dBY3Rpb24oYWN0aW9uKSk7XG5cblxuICAgIC8vIFJlLWFzc2lnbiBjbGljayBmdW5jdGlvblxuICAgIGNvbnN0IGNsaWNrRm4gPSB2YWx1ZS5jbGljaztcbiAgICB0aGlzLmNsaWNrID0gKHJvdywgZXZlbnQsIGluZGV4LCByb3dBY3Rpb25zUmVmID0gbnVsbCkgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuX2NsaWNrRXZlbnQocm93LCBldmVudCwgaW5kZXgsIHJvd0FjdGlvbnNSZWYsIGNsaWNrRm4pO1xuICAgIH07XG5cbiAgICB0aGlzLl9saW5rRm4gPSB2YWx1ZS5saW5rO1xuXG4gICAgaWYgKHZhbHVlLmZpbGUpIHtcbiAgICAgIHRoaXMuZmlsZUNvbmZpZyA9IHsgLi4udmFsdWUuZmlsZSB9O1xuXG4gICAgICBpZiAodGhpcy5maWxlQ29uZmlnLnNlbGVjdCkge1xuICAgICAgICBjb25zdCBzZWxlY3RGbiA9IHRoaXMuZmlsZUNvbmZpZy5zZWxlY3Q7XG4gICAgICAgIHRoaXMuZmlsZUNvbmZpZy5zZWxlY3QgPSAoc2VsZWN0aW9uLCByb3csIGluZGV4KSA9PiB7XG4gICAgICAgICAgc2VsZWN0Rm4oc2VsZWN0aW9uLCByb3csIGluZGV4KTtcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmxhYmVsID0gdmFsdWUubGFiZWw7XG5cbiAgICBpZiAodGhpcy5jbGFzc05hbWUpIHtcbiAgICAgIHRoaXMuY2xhc3NBcnJheSA9IHRoaXMuY2xhc3NOYW1lLnNwbGl0KCcgJykucmVkdWNlKChhY2MsIGVsZW0pID0+IHtcbiAgICAgICAgYWNjLnB1c2goZWxlbSk7XG5cbiAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgIH0sIFtdKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY2hlY2tTaG93U3RhdHVzKHJvdywgaW5kZXgpIHtcbiAgICBpZiAodGhpcy5pc0dyb3VwKSB7XG4gICAgICB0aGlzLnJvd0FjdGlvbnMuZm9yRWFjaCgoYWN0aW9uKSA9PiB7XG4gICAgICAgIGFjdGlvbi5jaGVja1Nob3dTdGF0dXMocm93LCBpbmRleCk7XG4gICAgICB9KTtcblxuICAgICAgY29uc3QgZ3JvdXBWaXNpYmxlID0gIXRoaXMuc2hvdyB8fCB0aGlzLnNob3cocm93LCBpbmRleCk7XG5cbiAgICAgIHRoaXMuaXNTaG93biA9IGdyb3VwVmlzaWJsZSAmJiB0aGlzLnJvd0FjdGlvbnMuc29tZSgoYWN0aW9uKSA9PiBhY3Rpb24uaXNTaG93bik7XG4gICAgfSBlbHNlIGlmICh0aGlzLnNob3cpIHtcbiAgICAgIHRoaXMuaXNTaG93biA9IHRoaXMuc2hvdyhyb3csIGluZGV4KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlTGluayhyb3cpIHtcbiAgICBpZiAoIXRoaXMuaXNTaG93bikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzR3JvdXApIHtcbiAgICAgIHRoaXMucm93QWN0aW9ucy5mb3JFYWNoKChhY3Rpb24pID0+IHtcbiAgICAgICAgYWN0aW9uLnVwZGF0ZUxpbmsocm93KTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAodGhpcy5fbGlua0ZuKSB7XG4gICAgICB0aGlzLnJvdXRlckxpbmsgPSB0aGlzLl9saW5rRm4ocm93KTtcblxuICAgICAgaWYgKHRoaXMucm91dGVyTGluayAmJiAhdGhpcy5yb3V0ZXJMaW5rLnRhcmdldCkge1xuICAgICAgICB0aGlzLnJvdXRlckxpbmsudGFyZ2V0ID0gbnVsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9jbGlja0V2ZW50KHJvdywgZXZlbnQsIGluZGV4LCByb3dBY3Rpb25zUmVmLCBjbGlja0ZuKSB7XG4gICAgLy8gU3RvcCBldmVudCBwcm9wYWdhdGlvbiBmb3IgcGFyZW50XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAvLyBDbG9zZSBtZW51XG4gICAgaWYgKHJvd0FjdGlvbnNSZWYpIHtcbiAgICAgIHJvd0FjdGlvbnNSZWYuY2xvc2VNZW51KCk7XG4gICAgfVxuXG4gICAgaWYgKGNsaWNrRm4pIHtcbiAgICAgIC8vIEZpcmUgcGFzc2VkIGNhbGxiYWNrXG4gICAgICByZXR1cm4gY2xpY2tGbihyb3csIGV2ZW50LCBpbmRleCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,89 +0,0 @@
1
- import { Subject } from 'rxjs';
2
- import { RowType } from '../enums/row-type.enum';
3
- import { ChildRow } from './row/child-row';
4
- import { GroupFooterRow } from './row/group-footer-row';
5
- import { GroupRow } from './row/group-row';
6
- import { SimpleRow } from './row/simple-row';
7
- export class Row {
8
- constructor(data = {}, rowType = RowType.Simple, { parent, initialExpand } = {}) {
9
- this._actionsUpdate$ = new Subject();
10
- switch (rowType) {
11
- case RowType.Simple:
12
- {
13
- this._row = new SimpleRow(data);
14
- }
15
- break;
16
- case RowType.Group:
17
- {
18
- this._row = new GroupRow(data, initialExpand);
19
- }
20
- break;
21
- case RowType.GroupChild:
22
- {
23
- this._row = new ChildRow(data, parent);
24
- }
25
- break;
26
- }
27
- }
28
- get index() {
29
- return this._row.index;
30
- }
31
- get actionsUpdate$() {
32
- return this._actionsUpdate$.asObservable();
33
- }
34
- actionsUpdate() {
35
- return this._actionsUpdate$.next();
36
- }
37
- set index(value) {
38
- this._row.index = value;
39
- }
40
- get readyToSwap() {
41
- return this._row.readyToSwap;
42
- }
43
- get visible() {
44
- return this._row.visible;
45
- }
46
- set readyToSwap(value) {
47
- this._row.readyToSwap = value;
48
- }
49
- get data() {
50
- return this._row.data;
51
- }
52
- get type() {
53
- return this._row.type;
54
- }
55
- get isGroup() {
56
- return this._row instanceof GroupRow;
57
- }
58
- get isGroupChild() {
59
- return this._row instanceof ChildRow;
60
- }
61
- get isGroupFooter() {
62
- return this._row instanceof GroupFooterRow;
63
- }
64
- get parent() {
65
- return this._row.parent;
66
- }
67
- get children() {
68
- return this._row.children;
69
- }
70
- get expanded() {
71
- return this._row.expanded;
72
- }
73
- get expanded$() {
74
- return this._row.expanded$;
75
- }
76
- updateChildrenIndexes() {
77
- this._row.updateChildrenIndexes();
78
- }
79
- toggleRowExpandStatus() {
80
- this._row.toggleRowExpandStatus();
81
- }
82
- getReorderData() {
83
- return this._row.getReorderData();
84
- }
85
- destroy() {
86
- this._row.destroy();
87
- }
88
- }
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2RlbHMvcm93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU3QyxNQUFNLE9BQU8sR0FBRztJQU1kLFlBQ0UsT0FBWSxFQUFFLEVBQ2QsVUFBbUIsT0FBTyxDQUFDLE1BQU0sRUFDakMsRUFBRSxNQUFNLEVBQUUsYUFBYSxLQUFxRCxFQUFFO1FBTHhFLG9CQUFlLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQU90QyxRQUFRLE9BQU8sRUFBRTtZQUNmLEtBQUssT0FBTyxDQUFDLE1BQU07Z0JBQUU7b0JBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ2pDO2dCQUFDLE1BQU07WUFFUixLQUFLLE9BQU8sQ0FBQyxLQUFLO2dCQUFFO29CQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksUUFBUSxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQztpQkFDL0M7Z0JBQUMsTUFBTTtZQUVSLEtBQUssT0FBTyxDQUFDLFVBQVU7Z0JBQUU7b0JBQ3ZCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2lCQUN4QztnQkFBQyxNQUFNO1NBQ1Q7SUFDSCxDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBVyxjQUFjO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRU0sYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELElBQVcsS0FBSyxDQUFDLEtBQWE7UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQVEsSUFBSSxDQUFDLElBQWlCLENBQUMsT0FBTyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFXLFdBQVcsQ0FBQyxLQUFjO1FBQ25DLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLElBQUksWUFBWSxRQUFRLENBQUM7SUFDdkMsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxJQUFJLFlBQVksUUFBUSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsSUFBSSxZQUFZLGNBQWMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsSUFBVyxNQUFNO1FBQ2YsT0FBUSxJQUFJLENBQUMsSUFBaUIsQ0FBQyxNQUFNLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFRLElBQUksQ0FBQyxJQUFpQixDQUFDLFFBQVEsQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLE9BQVEsSUFBSSxDQUFDLElBQWlCLENBQUMsUUFBUSxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBUSxJQUFJLENBQUMsSUFBaUIsQ0FBQyxTQUFTLENBQUM7SUFDM0MsQ0FBQztJQUVNLHFCQUFxQjtRQUN6QixJQUFJLENBQUMsSUFBaUIsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFFTSxxQkFBcUI7UUFDekIsSUFBSSxDQUFDLElBQWlCLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUNsRCxDQUFDO0lBRU0sY0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLE9BQU87UUFDWixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3RCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJvd1R5cGUgfSBmcm9tICcuLi9lbnVtcy9yb3ctdHlwZS5lbnVtJztcbmltcG9ydCB7IEZzTGlzdFJlb3JkZXJEYXRhIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBDaGlsZFJvdyB9IGZyb20gJy4vcm93L2NoaWxkLXJvdyc7XG5pbXBvcnQgeyBHcm91cEZvb3RlclJvdyB9IGZyb20gJy4vcm93L2dyb3VwLWZvb3Rlci1yb3cnO1xuaW1wb3J0IHsgR3JvdXBSb3cgfSBmcm9tICcuL3Jvdy9ncm91cC1yb3cnO1xuaW1wb3J0IHsgU2ltcGxlUm93IH0gZnJvbSAnLi9yb3cvc2ltcGxlLXJvdyc7XG5cbmV4cG9ydCBjbGFzcyBSb3cge1xuXG4gIHByaXZhdGUgX3JvdzogKFNpbXBsZVJvdyB8IENoaWxkUm93IHwgR3JvdXBSb3cpO1xuXG4gIHByaXZhdGUgX2FjdGlvbnNVcGRhdGUkID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBkYXRhOiBhbnkgPSB7fSxcbiAgICByb3dUeXBlOiBSb3dUeXBlID0gUm93VHlwZS5TaW1wbGUsXG4gICAgeyBwYXJlbnQsIGluaXRpYWxFeHBhbmQgfTogeyBwYXJlbnQ/OiBHcm91cFJvdywgaW5pdGlhbEV4cGFuZD86IGJvb2xlYW4gfSA9IHt9LFxuICApIHtcbiAgICBzd2l0Y2ggKHJvd1R5cGUpIHtcbiAgICAgIGNhc2UgUm93VHlwZS5TaW1wbGU6IHtcbiAgICAgICAgdGhpcy5fcm93ID0gbmV3IFNpbXBsZVJvdyhkYXRhKTtcbiAgICAgIH0gYnJlYWs7XG5cbiAgICAgIGNhc2UgUm93VHlwZS5Hcm91cDoge1xuICAgICAgICB0aGlzLl9yb3cgPSBuZXcgR3JvdXBSb3coZGF0YSwgaW5pdGlhbEV4cGFuZCk7XG4gICAgICB9IGJyZWFrO1xuXG4gICAgICBjYXNlIFJvd1R5cGUuR3JvdXBDaGlsZDoge1xuICAgICAgICB0aGlzLl9yb3cgPSBuZXcgQ2hpbGRSb3coZGF0YSwgcGFyZW50KTtcbiAgICAgIH0gYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBpbmRleCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9yb3cuaW5kZXg7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFjdGlvbnNVcGRhdGUkKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGlvbnNVcGRhdGUkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGFjdGlvbnNVcGRhdGUoKTogdm9pZCB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGlvbnNVcGRhdGUkLm5leHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgaW5kZXgodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3Jvdy5pbmRleCA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCByZWFkeVRvU3dhcCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcm93LnJlYWR5VG9Td2FwO1xuICB9XG5cbiAgcHVibGljIGdldCB2aXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAodGhpcy5fcm93IGFzIENoaWxkUm93KS52aXNpYmxlO1xuICB9XG5cbiAgcHVibGljIHNldCByZWFkeVRvU3dhcCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3Jvdy5yZWFkeVRvU3dhcCA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBkYXRhKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuX3Jvdy5kYXRhO1xuICB9XG5cbiAgcHVibGljIGdldCB0eXBlKCk6IFJvd1R5cGUge1xuICAgIHJldHVybiB0aGlzLl9yb3cudHlwZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNHcm91cCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcm93IGluc3RhbmNlb2YgR3JvdXBSb3c7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzR3JvdXBDaGlsZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcm93IGluc3RhbmNlb2YgQ2hpbGRSb3c7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzR3JvdXBGb290ZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JvdyBpbnN0YW5jZW9mIEdyb3VwRm9vdGVyUm93O1xuICB9XG5cbiAgcHVibGljIGdldCBwYXJlbnQoKTogR3JvdXBSb3cge1xuICAgIHJldHVybiAodGhpcy5fcm93IGFzIENoaWxkUm93KS5wYXJlbnQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNoaWxkcmVuKCk6IChDaGlsZFJvdyB8IEdyb3VwRm9vdGVyUm93KVtdIHtcbiAgICByZXR1cm4gKHRoaXMuX3JvdyBhcyBHcm91cFJvdykuY2hpbGRyZW47XG4gIH1cblxuICBwdWJsaWMgZ2V0IGV4cGFuZGVkKCkge1xuICAgIHJldHVybiAodGhpcy5fcm93IGFzIEdyb3VwUm93KS5leHBhbmRlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZXhwYW5kZWQkKCkge1xuICAgIHJldHVybiAodGhpcy5fcm93IGFzIEdyb3VwUm93KS5leHBhbmRlZCQ7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlQ2hpbGRyZW5JbmRleGVzKCkge1xuICAgICh0aGlzLl9yb3cgYXMgR3JvdXBSb3cpLnVwZGF0ZUNoaWxkcmVuSW5kZXhlcygpO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZVJvd0V4cGFuZFN0YXR1cygpIHtcbiAgICAodGhpcy5fcm93IGFzIEdyb3VwUm93KS50b2dnbGVSb3dFeHBhbmRTdGF0dXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRSZW9yZGVyRGF0YSgpOiBGc0xpc3RSZW9yZGVyRGF0YSB7XG4gICAgcmV0dXJuIHRoaXMuX3Jvdy5nZXRSZW9yZGVyRGF0YSgpO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKSB7XG4gICAgdGhpcy5fcm93LmRlc3Ryb3koKTtcbiAgfVxufVxuIl19