@den4ik92/ng2-smart-table 2.0.6 → 2.1.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 (100) hide show
  1. package/{esm2020 → esm2022}/lib/components/cell/cell-edit-mode/custom-edit.component.mjs +6 -6
  2. package/{esm2020 → esm2022}/lib/components/cell/cell-edit-mode/default-edit.component.mjs +4 -4
  3. package/{esm2020 → esm2022}/lib/components/cell/cell-edit-mode/edit-cell-default.mjs +4 -4
  4. package/{esm2020 → esm2022}/lib/components/cell/cell-edit-mode/edit-cell.component.mjs +6 -6
  5. package/{esm2020 → esm2022}/lib/components/cell/cell-editors/checkbox-editor.component.mjs +6 -6
  6. package/{esm2020 → esm2022}/lib/components/cell/cell-editors/default-editor.mjs +4 -4
  7. package/{esm2020 → esm2022}/lib/components/cell/cell-editors/input-editor.component.mjs +6 -6
  8. package/{esm2020 → esm2022}/lib/components/cell/cell-editors/select-editor.component.mjs +6 -6
  9. package/{esm2020 → esm2022}/lib/components/cell/cell-editors/textarea-editor.component.mjs +6 -6
  10. package/{esm2020 → esm2022}/lib/components/cell/cell-view-mode/custom-view.component.mjs +6 -6
  11. package/{esm2020 → esm2022}/lib/components/cell/cell-view-mode/view-cell.component.mjs +6 -6
  12. package/{esm2020 → esm2022}/lib/components/cell/cell.component.mjs +8 -8
  13. package/{esm2020 → esm2022}/lib/components/cell/cell.module.mjs +29 -29
  14. package/{esm2020 → esm2022}/lib/components/filter/custom-filter.component.mjs +4 -4
  15. package/{esm2020 → esm2022}/lib/components/filter/default-filter.component.mjs +6 -6
  16. package/{esm2020 → esm2022}/lib/components/filter/filter-default.mjs +4 -4
  17. package/{esm2020 → esm2022}/lib/components/filter/filter-types/checkbox-filter.component.mjs +6 -6
  18. package/{esm2020 → esm2022}/lib/components/filter/filter-types/default-filter.mjs +4 -4
  19. package/{esm2020 → esm2022}/lib/components/filter/filter-types/input-filter.component.mjs +6 -6
  20. package/{esm2020 → esm2022}/lib/components/filter/filter-types/select-filter.component.mjs +6 -6
  21. package/{esm2020 → esm2022}/lib/components/filter/filter.component.mjs +6 -6
  22. package/{esm2020 → esm2022}/lib/components/filter/filter.module.mjs +23 -23
  23. package/{esm2020 → esm2022}/lib/components/pager/pager.component.mjs +6 -6
  24. package/{esm2020 → esm2022}/lib/components/pager/pager.module.mjs +7 -7
  25. package/esm2022/lib/components/tbody/cells/create-cancel.component.mjs +198 -0
  26. package/esm2022/lib/components/tbody/cells/custom.component.mjs +58 -0
  27. package/esm2022/lib/components/tbody/cells/edit-delete.component.mjs +237 -0
  28. package/esm2022/lib/components/tbody/tbody.component.mjs +95 -0
  29. package/{esm2020 → esm2022}/lib/components/tbody/tbody.module.mjs +15 -15
  30. package/{esm2020 → esm2022}/lib/components/thead/cells/actions-title.component.mjs +6 -6
  31. package/{esm2020 → esm2022}/lib/components/thead/cells/actions.component.mjs +6 -6
  32. package/{esm2020 → esm2022}/lib/components/thead/cells/add-button.component.mjs +6 -6
  33. package/{esm2020 → esm2022}/lib/components/thead/cells/checkbox-select-all.component.mjs +6 -6
  34. package/{esm2020 → esm2022}/lib/components/thead/cells/column-title.component.mjs +6 -6
  35. package/{esm2020 → esm2022}/lib/components/thead/cells/title/title.component.mjs +6 -6
  36. package/{esm2020 → esm2022}/lib/components/thead/rows/thead-filters-row.component.mjs +6 -6
  37. package/{esm2020 → esm2022}/lib/components/thead/rows/thead-form-row.component.mjs +6 -6
  38. package/{esm2020 → esm2022}/lib/components/thead/rows/thead-titles-row.component.mjs +6 -6
  39. package/{esm2020 → esm2022}/lib/components/thead/thead.component.mjs +4 -4
  40. package/{esm2020 → esm2022}/lib/components/thead/thead.module.mjs +29 -29
  41. package/esm2022/lib/lib/data-set/cell.mjs +43 -0
  42. package/esm2022/lib/lib/data-set/column.mjs +74 -0
  43. package/esm2022/lib/lib/data-set/row.mjs +47 -0
  44. package/{esm2020 → esm2022}/lib/lib/data-source/local/local.data-source.mjs +1 -1
  45. package/esm2022/lib/lib/grid.mjs +218 -0
  46. package/{esm2020 → esm2022}/lib/lib/helpers.mjs +1 -1
  47. package/{esm2020 → esm2022}/lib/lib/interfaces/smart-table.models.mjs +1 -1
  48. package/{esm2020 → esm2022}/lib/ng2-smart-table.component.mjs +4 -4
  49. package/{esm2020 → esm2022}/lib/ng2-smart-table.module.mjs +19 -19
  50. package/{fesm2020 → fesm2022}/den4ik92-ng2-smart-table.mjs +752 -437
  51. package/fesm2022/den4ik92-ng2-smart-table.mjs.map +1 -0
  52. package/lib/components/cell/cell-edit-mode/edit-cell-default.d.ts +1 -1
  53. package/lib/components/cell/cell-edit-mode/edit-cell.component.d.ts +1 -1
  54. package/lib/components/cell/cell-editors/default-editor.d.ts +1 -1
  55. package/lib/components/cell/cell-view-mode/custom-view.component.d.ts +1 -1
  56. package/lib/components/cell/cell-view-mode/view-cell.component.d.ts +1 -1
  57. package/lib/components/cell/cell.component.d.ts +2 -2
  58. package/lib/components/filter/filter-default.d.ts +1 -1
  59. package/lib/components/filter/filter-types/default-filter.d.ts +1 -1
  60. package/lib/components/pager/pager.component.d.ts +1 -1
  61. package/lib/components/tbody/cells/create-cancel.component.d.ts +4 -4
  62. package/lib/components/tbody/cells/custom.component.d.ts +8 -6
  63. package/lib/components/tbody/cells/edit-delete.component.d.ts +5 -5
  64. package/lib/components/tbody/tbody.component.d.ts +1 -1
  65. package/lib/components/thead/cells/actions-title.component.d.ts +1 -1
  66. package/lib/components/thead/cells/actions.component.d.ts +1 -1
  67. package/lib/components/thead/cells/add-button.component.d.ts +1 -1
  68. package/lib/components/thead/cells/checkbox-select-all.component.d.ts +1 -1
  69. package/lib/components/thead/cells/column-title.component.d.ts +1 -1
  70. package/lib/components/thead/cells/title/title.component.d.ts +1 -1
  71. package/lib/components/thead/rows/thead-filters-row.component.d.ts +1 -1
  72. package/lib/components/thead/rows/thead-form-row.component.d.ts +1 -1
  73. package/lib/components/thead/rows/thead-titles-row.component.d.ts +1 -1
  74. package/lib/components/thead/thead.component.d.ts +1 -1
  75. package/lib/lib/data-set/cell.d.ts +3 -2
  76. package/lib/lib/data-set/column.d.ts +3 -3
  77. package/lib/lib/data-set/row.d.ts +1 -0
  78. package/lib/lib/helpers.d.ts +4 -4
  79. package/lib/lib/interfaces/smart-table.models.d.ts +1 -1
  80. package/lib/ng2-smart-table.component.d.ts +1 -1
  81. package/package.json +8 -14
  82. package/esm2020/lib/components/tbody/cells/create-cancel.component.mjs +0 -53
  83. package/esm2020/lib/components/tbody/cells/custom.component.mjs +0 -49
  84. package/esm2020/lib/components/tbody/cells/edit-delete.component.mjs +0 -85
  85. package/esm2020/lib/components/tbody/tbody.component.mjs +0 -95
  86. package/esm2020/lib/lib/data-set/cell.mjs +0 -41
  87. package/esm2020/lib/lib/data-set/column.mjs +0 -74
  88. package/esm2020/lib/lib/data-set/row.mjs +0 -46
  89. package/esm2020/lib/lib/grid.mjs +0 -211
  90. package/fesm2015/den4ik92-ng2-smart-table.mjs +0 -3175
  91. package/fesm2015/den4ik92-ng2-smart-table.mjs.map +0 -1
  92. package/fesm2020/den4ik92-ng2-smart-table.mjs.map +0 -1
  93. /package/{esm2020 → esm2022}/den4ik92-ng2-smart-table.mjs +0 -0
  94. /package/{esm2020 → esm2022}/lib/components/cell/cell-view-mode/view-cell.mjs +0 -0
  95. /package/{esm2020 → esm2022}/lib/lib/data-set/data-set.mjs +0 -0
  96. /package/{esm2020 → esm2022}/lib/lib/data-source/data-source.mjs +0 -0
  97. /package/{esm2020 → esm2022}/lib/lib/data-source/local/local.filter.mjs +0 -0
  98. /package/{esm2020 → esm2022}/lib/lib/data-source/local/local.pager.mjs +0 -0
  99. /package/{esm2020 → esm2022}/lib/lib/data-source/local/local.sorter.mjs +0 -0
  100. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
@@ -0,0 +1,198 @@
1
+ import { Component, EventEmitter, Input } from "@angular/core";
2
+ import { Row } from "../../../lib/data-set/row";
3
+ import { Grid } from "../../../lib/grid";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ export class TbodyCreateCancelComponent {
7
+ constructor() {
8
+ this.cancelButtonContent = "";
9
+ this.saveButtonContent = "";
10
+ }
11
+ onSave(event) {
12
+ event.preventDefault();
13
+ event.stopPropagation();
14
+ this.grid.save(this.row, this.editConfirm);
15
+ }
16
+ onCancelEdit(event) {
17
+ event.preventDefault();
18
+ event.stopPropagation();
19
+ this.editCancel.emit(true);
20
+ this.row.isInEditing = false;
21
+ }
22
+ ngOnChanges() {
23
+ this.saveButtonContent = this.grid.getSetting("edit.saveButtonContent", "save");
24
+ this.cancelButtonContent = this.grid.getSetting("edit.cancelButtonContent", "cancel");
25
+ }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TbodyCreateCancelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
27
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TbodyCreateCancelComponent, selector: "ng2-st-tbody-create-cancel", inputs: { grid: "grid", row: "row", editConfirm: "editConfirm", editCancel: "editCancel" }, usesOnChanges: true, ngImport: i0, template: `
28
+ <ng-container *ngIf="!row.pending; else loader">
29
+ <a
30
+ href="#"
31
+ [id]="'row-' + row.index + '_editing-confirm-button'"
32
+ class="ng2-smart-action ng2-smart-action-edit-save"
33
+ [innerHTML]="saveButtonContent"
34
+ (click)="onSave($event)"
35
+ ></a>
36
+ <a
37
+ href="#"
38
+ [id]="'row-' + row.index + '_editing-cancel-button'"
39
+ class="ng2-smart-action ng2-smart-action-edit-cancel"
40
+ [innerHTML]="cancelButtonContent"
41
+ (click)="onCancelEdit($event)"
42
+ ></a>
43
+ </ng-container>
44
+ <ng-template #loader>
45
+ <div style="display: flex;">
46
+ <svg
47
+ (click)="$event.stopPropagation()"
48
+ style="height: 2rem; width: 2rem;"
49
+ version="1.1"
50
+ id="L9"
51
+ xmlns="http://www.w3.org/2000/svg"
52
+ xmlns:xlink="http://www.w3.org/1999/xlink"
53
+ x="0px"
54
+ y="0px"
55
+ viewBox="0 0 100 100"
56
+ enable-background="new 0 0 0 0"
57
+ xml:space="preserve"
58
+ >
59
+ <path
60
+ fill="#e9e9e9"
61
+ d="M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"
62
+ >
63
+ <animateTransform
64
+ attributeName="transform"
65
+ attributeType="XML"
66
+ type="rotate"
67
+ dur="1s"
68
+ from="0 50 50"
69
+ to="360 50 50"
70
+ repeatCount="indefinite"
71
+ />
72
+ </path>
73
+ </svg>
74
+ <svg
75
+ (click)="$event.stopPropagation()"
76
+ style="height: 2rem; width: 2rem; "
77
+ version="1.1"
78
+ id="L9"
79
+ xmlns="http://www.w3.org/2000/svg"
80
+ xmlns:xlink="http://www.w3.org/1999/xlink"
81
+ x="0px"
82
+ y="0px"
83
+ viewBox="0 0 100 100"
84
+ enable-background="new 0 0 0 0"
85
+ xml:space="preserve"
86
+ >
87
+ <path
88
+ fill="#e9e9e9"
89
+ d="M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"
90
+ >
91
+ <animateTransform
92
+ attributeName="transform"
93
+ attributeType="XML"
94
+ type="rotate"
95
+ dur="1s"
96
+ from="0 50 50"
97
+ to="360 50 50"
98
+ repeatCount="indefinite"
99
+ />
100
+ </path>
101
+ </svg>
102
+ </div>
103
+ </ng-template>
104
+ `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
105
+ }
106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TbodyCreateCancelComponent, decorators: [{
107
+ type: Component,
108
+ args: [{
109
+ selector: "ng2-st-tbody-create-cancel",
110
+ template: `
111
+ <ng-container *ngIf="!row.pending; else loader">
112
+ <a
113
+ href="#"
114
+ [id]="'row-' + row.index + '_editing-confirm-button'"
115
+ class="ng2-smart-action ng2-smart-action-edit-save"
116
+ [innerHTML]="saveButtonContent"
117
+ (click)="onSave($event)"
118
+ ></a>
119
+ <a
120
+ href="#"
121
+ [id]="'row-' + row.index + '_editing-cancel-button'"
122
+ class="ng2-smart-action ng2-smart-action-edit-cancel"
123
+ [innerHTML]="cancelButtonContent"
124
+ (click)="onCancelEdit($event)"
125
+ ></a>
126
+ </ng-container>
127
+ <ng-template #loader>
128
+ <div style="display: flex;">
129
+ <svg
130
+ (click)="$event.stopPropagation()"
131
+ style="height: 2rem; width: 2rem;"
132
+ version="1.1"
133
+ id="L9"
134
+ xmlns="http://www.w3.org/2000/svg"
135
+ xmlns:xlink="http://www.w3.org/1999/xlink"
136
+ x="0px"
137
+ y="0px"
138
+ viewBox="0 0 100 100"
139
+ enable-background="new 0 0 0 0"
140
+ xml:space="preserve"
141
+ >
142
+ <path
143
+ fill="#e9e9e9"
144
+ d="M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"
145
+ >
146
+ <animateTransform
147
+ attributeName="transform"
148
+ attributeType="XML"
149
+ type="rotate"
150
+ dur="1s"
151
+ from="0 50 50"
152
+ to="360 50 50"
153
+ repeatCount="indefinite"
154
+ />
155
+ </path>
156
+ </svg>
157
+ <svg
158
+ (click)="$event.stopPropagation()"
159
+ style="height: 2rem; width: 2rem; "
160
+ version="1.1"
161
+ id="L9"
162
+ xmlns="http://www.w3.org/2000/svg"
163
+ xmlns:xlink="http://www.w3.org/1999/xlink"
164
+ x="0px"
165
+ y="0px"
166
+ viewBox="0 0 100 100"
167
+ enable-background="new 0 0 0 0"
168
+ xml:space="preserve"
169
+ >
170
+ <path
171
+ fill="#e9e9e9"
172
+ d="M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"
173
+ >
174
+ <animateTransform
175
+ attributeName="transform"
176
+ attributeType="XML"
177
+ type="rotate"
178
+ dur="1s"
179
+ from="0 50 50"
180
+ to="360 50 50"
181
+ repeatCount="indefinite"
182
+ />
183
+ </path>
184
+ </svg>
185
+ </div>
186
+ </ng-template>
187
+ `,
188
+ }]
189
+ }], propDecorators: { grid: [{
190
+ type: Input
191
+ }], row: [{
192
+ type: Input
193
+ }], editConfirm: [{
194
+ type: Input
195
+ }], editCancel: [{
196
+ type: Input
197
+ }] } });
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNhbmNlbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZzItc21hcnQtdGFibGUvc3JjL2xpYi9jb21wb25lbnRzL3Rib2R5L2NlbGxzL2NyZWF0ZS1jYW5jZWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFtRnpDLE1BQU0sT0FBTywwQkFBMEI7SUFqRnZDO1FBdUZFLHdCQUFtQixHQUFXLEVBQUUsQ0FBQztRQUNqQyxzQkFBaUIsR0FBVyxFQUFFLENBQUM7S0F5QmhDO0lBdkJDLE1BQU0sQ0FBQyxLQUFVO1FBQ2YsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQVU7UUFDckIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7SUFDL0IsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQzNDLHdCQUF3QixFQUN4QixNQUFNLENBQ1AsQ0FBQztRQUNGLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FDN0MsMEJBQTBCLEVBQzFCLFFBQVEsQ0FDVCxDQUFDO0lBQ0osQ0FBQzsrR0EvQlUsMEJBQTBCO21HQUExQiwwQkFBMEIsbUxBL0UzQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E2RVQ7OzRGQUVVLDBCQUEwQjtrQkFqRnRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTZFVDtpQkFDRjs4QkFFVSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuaW1wb3J0IHsgUm93IH0gZnJvbSBcIi4uLy4uLy4uL2xpYi9kYXRhLXNldC9yb3dcIjtcbmltcG9ydCB7IEdyaWQgfSBmcm9tIFwiLi4vLi4vLi4vbGliL2dyaWRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcIm5nMi1zdC10Ym9keS1jcmVhdGUtY2FuY2VsXCIsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFyb3cucGVuZGluZzsgZWxzZSBsb2FkZXJcIj5cbiAgICAgIDxhXG4gICAgICAgIGhyZWY9XCIjXCJcbiAgICAgICAgW2lkXT1cIidyb3ctJyArIHJvdy5pbmRleCArICdfZWRpdGluZy1jb25maXJtLWJ1dHRvbidcIlxuICAgICAgICBjbGFzcz1cIm5nMi1zbWFydC1hY3Rpb24gbmcyLXNtYXJ0LWFjdGlvbi1lZGl0LXNhdmVcIlxuICAgICAgICBbaW5uZXJIVE1MXT1cInNhdmVCdXR0b25Db250ZW50XCJcbiAgICAgICAgKGNsaWNrKT1cIm9uU2F2ZSgkZXZlbnQpXCJcbiAgICAgID48L2E+XG4gICAgICA8YVxuICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgIFtpZF09XCIncm93LScgKyByb3cuaW5kZXggKyAnX2VkaXRpbmctY2FuY2VsLWJ1dHRvbidcIlxuICAgICAgICBjbGFzcz1cIm5nMi1zbWFydC1hY3Rpb24gbmcyLXNtYXJ0LWFjdGlvbi1lZGl0LWNhbmNlbFwiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiY2FuY2VsQnV0dG9uQ29udGVudFwiXG4gICAgICAgIChjbGljayk9XCJvbkNhbmNlbEVkaXQoJGV2ZW50KVwiXG4gICAgICA+PC9hPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjbG9hZGVyPlxuICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7XCI+XG4gICAgICAgIDxzdmdcbiAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICBzdHlsZT1cImhlaWdodDogMnJlbTsgd2lkdGg6IDJyZW07XCJcbiAgICAgICAgICB2ZXJzaW9uPVwiMS4xXCJcbiAgICAgICAgICBpZD1cIkw5XCJcbiAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIlxuICAgICAgICAgIHg9XCIwcHhcIlxuICAgICAgICAgIHk9XCIwcHhcIlxuICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTAwIDEwMFwiXG4gICAgICAgICAgZW5hYmxlLWJhY2tncm91bmQ9XCJuZXcgMCAwIDAgMFwiXG4gICAgICAgICAgeG1sOnNwYWNlPVwicHJlc2VydmVcIlxuICAgICAgICA+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIGZpbGw9XCIjZTllOWU5XCJcbiAgICAgICAgICAgIGQ9XCJNNzMsNTBjMC0xMi43LTEwLjMtMjMtMjMtMjNTMjcsMzcuMywyNyw1MCBNMzAuOSw1MGMwLTEwLjUsOC41LTE5LjEsMTkuMS0xOS4xUzY5LjEsMzkuNSw2OS4xLDUwXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8YW5pbWF0ZVRyYW5zZm9ybVxuICAgICAgICAgICAgICBhdHRyaWJ1dGVOYW1lPVwidHJhbnNmb3JtXCJcbiAgICAgICAgICAgICAgYXR0cmlidXRlVHlwZT1cIlhNTFwiXG4gICAgICAgICAgICAgIHR5cGU9XCJyb3RhdGVcIlxuICAgICAgICAgICAgICBkdXI9XCIxc1wiXG4gICAgICAgICAgICAgIGZyb209XCIwIDUwIDUwXCJcbiAgICAgICAgICAgICAgdG89XCIzNjAgNTAgNTBcIlxuICAgICAgICAgICAgICByZXBlYXRDb3VudD1cImluZGVmaW5pdGVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L3BhdGg+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgICA8c3ZnXG4gICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgc3R5bGU9XCJoZWlnaHQ6IDJyZW07IHdpZHRoOiAycmVtOyBcIlxuICAgICAgICAgIHZlcnNpb249XCIxLjFcIlxuICAgICAgICAgIGlkPVwiTDlcIlxuICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXG4gICAgICAgICAgeD1cIjBweFwiXG4gICAgICAgICAgeT1cIjBweFwiXG4gICAgICAgICAgdmlld0JveD1cIjAgMCAxMDAgMTAwXCJcbiAgICAgICAgICBlbmFibGUtYmFja2dyb3VuZD1cIm5ldyAwIDAgMCAwXCJcbiAgICAgICAgICB4bWw6c3BhY2U9XCJwcmVzZXJ2ZVwiXG4gICAgICAgID5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgZmlsbD1cIiNlOWU5ZTlcIlxuICAgICAgICAgICAgZD1cIk03Myw1MGMwLTEyLjctMTAuMy0yMy0yMy0yM1MyNywzNy4zLDI3LDUwIE0zMC45LDUwYzAtMTAuNSw4LjUtMTkuMSwxOS4xLTE5LjFTNjkuMSwzOS41LDY5LjEsNTBcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxhbmltYXRlVHJhbnNmb3JtXG4gICAgICAgICAgICAgIGF0dHJpYnV0ZU5hbWU9XCJ0cmFuc2Zvcm1cIlxuICAgICAgICAgICAgICBhdHRyaWJ1dGVUeXBlPVwiWE1MXCJcbiAgICAgICAgICAgICAgdHlwZT1cInJvdGF0ZVwiXG4gICAgICAgICAgICAgIGR1cj1cIjFzXCJcbiAgICAgICAgICAgICAgZnJvbT1cIjAgNTAgNTBcIlxuICAgICAgICAgICAgICB0bz1cIjM2MCA1MCA1MFwiXG4gICAgICAgICAgICAgIHJlcGVhdENvdW50PVwiaW5kZWZpbml0ZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvcGF0aD5cbiAgICAgICAgPC9zdmc+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBUYm9keUNyZWF0ZUNhbmNlbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIGdyaWQhOiBHcmlkO1xuICBASW5wdXQoKSByb3chOiBSb3c7XG4gIEBJbnB1dCgpIGVkaXRDb25maXJtITogRXZlbnRFbWl0dGVyPGFueT47XG4gIEBJbnB1dCgpIGVkaXRDYW5jZWwhOiBFdmVudEVtaXR0ZXI8YW55PjtcblxuICBjYW5jZWxCdXR0b25Db250ZW50OiBzdHJpbmcgPSBcIlwiO1xuICBzYXZlQnV0dG9uQ29udGVudDogc3RyaW5nID0gXCJcIjtcblxuICBvblNhdmUoZXZlbnQ6IGFueSkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5ncmlkLnNhdmUodGhpcy5yb3csIHRoaXMuZWRpdENvbmZpcm0pO1xuICB9XG5cbiAgb25DYW5jZWxFZGl0KGV2ZW50OiBhbnkpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuZWRpdENhbmNlbC5lbWl0KHRydWUpO1xuICAgIHRoaXMucm93LmlzSW5FZGl0aW5nID0gZmFsc2U7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICB0aGlzLnNhdmVCdXR0b25Db250ZW50ID0gdGhpcy5ncmlkLmdldFNldHRpbmcoXG4gICAgICBcImVkaXQuc2F2ZUJ1dHRvbkNvbnRlbnRcIixcbiAgICAgIFwic2F2ZVwiXG4gICAgKTtcbiAgICB0aGlzLmNhbmNlbEJ1dHRvbkNvbnRlbnQgPSB0aGlzLmdyaWQuZ2V0U2V0dGluZyhcbiAgICAgIFwiZWRpdC5jYW5jZWxCdXR0b25Db250ZW50XCIsXG4gICAgICBcImNhbmNlbFwiXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,58 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from "@angular/core";
2
+ import { Row } from "../../../lib/data-set/row";
3
+ import { LocalDataSource } from "./../../../lib/data-source/local/local.data-source";
4
+ import { Grid } from "../../../lib/grid";
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ export class TbodyCustomComponent {
8
+ constructor() {
9
+ this.custom = new EventEmitter();
10
+ }
11
+ onCustom(action) {
12
+ this.custom.emit({
13
+ action: action.name,
14
+ data: this.row.getData(),
15
+ source: this.source,
16
+ });
17
+ }
18
+ customActions() {
19
+ return this.grid.getSetting("actions.custom");
20
+ }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TbodyCustomComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TbodyCustomComponent, selector: "ng2-st-tbody-custom", inputs: { grid: "grid", row: "row", source: "source" }, outputs: { custom: "custom" }, ngImport: i0, template: `
23
+ <a
24
+ *ngFor="let action of customActions()"
25
+ [id]="'row-' + row.index + '_action-' + action.name + '-button'"
26
+ href="#"
27
+ class="ng2-smart-action ng2-smart-action-custom-custom"
28
+ [innerHTML]="action.title"
29
+ (click)="$event.stopPropagation(); $event.preventDefault(); onCustom(action)"
30
+ ></a>
31
+ `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
32
+ }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TbodyCustomComponent, decorators: [{
34
+ type: Component,
35
+ args: [{
36
+ selector: "ng2-st-tbody-custom",
37
+ changeDetection: ChangeDetectionStrategy.OnPush,
38
+ template: `
39
+ <a
40
+ *ngFor="let action of customActions()"
41
+ [id]="'row-' + row.index + '_action-' + action.name + '-button'"
42
+ href="#"
43
+ class="ng2-smart-action ng2-smart-action-custom-custom"
44
+ [innerHTML]="action.title"
45
+ (click)="$event.stopPropagation(); $event.preventDefault(); onCustom(action)"
46
+ ></a>
47
+ `,
48
+ }]
49
+ }], propDecorators: { grid: [{
50
+ type: Input
51
+ }], row: [{
52
+ type: Input
53
+ }], source: [{
54
+ type: Input
55
+ }], custom: [{
56
+ type: Output
57
+ }] } });
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nMi1zbWFydC10YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdGJvZHkvY2VsbHMvY3VzdG9tLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRXJGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBaUJ6QyxNQUFNLE9BQU8sb0JBQW9CO0lBZGpDO1FBa0JZLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0tBYTVDO0lBWEMsUUFBUSxDQUFDLE1BQVc7UUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDZixNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUk7WUFDbkIsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFO1lBQ3hCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtTQUNwQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQXVDLGdCQUFnQixDQUFDLENBQUM7SUFDdEYsQ0FBQzsrR0FoQlUsb0JBQW9CO21HQUFwQixvQkFBb0Isa0pBWHJCOzs7Ozs7Ozs7R0FTVDs7NEZBRVUsb0JBQW9CO2tCQWRoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxRQUFRLEVBQUU7Ozs7Ozs7OztHQVNUO2lCQUNGOzhCQUVVLElBQUk7c0JBQVosS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNJLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFJvdyB9IGZyb20gXCIuLi8uLi8uLi9saWIvZGF0YS1zZXQvcm93XCI7XG5pbXBvcnQgeyBMb2NhbERhdGFTb3VyY2UgfSBmcm9tIFwiLi8uLi8uLi8uLi9saWIvZGF0YS1zb3VyY2UvbG9jYWwvbG9jYWwuZGF0YS1zb3VyY2VcIjtcblxuaW1wb3J0IHsgR3JpZCB9IGZyb20gXCIuLi8uLi8uLi9saWIvZ3JpZFwiO1xuaW1wb3J0IHsgU21hcnRUYWJsZUN1c3RvbUFjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9saWIvaW50ZXJmYWNlcy9zbWFydC10YWJsZS5tb2RlbHNcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcIm5nMi1zdC10Ym9keS1jdXN0b21cIixcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGFcbiAgICAgICpuZ0Zvcj1cImxldCBhY3Rpb24gb2YgY3VzdG9tQWN0aW9ucygpXCJcbiAgICAgIFtpZF09XCIncm93LScgKyByb3cuaW5kZXggKyAnX2FjdGlvbi0nICsgYWN0aW9uLm5hbWUgKyAnLWJ1dHRvbidcIlxuICAgICAgaHJlZj1cIiNcIlxuICAgICAgY2xhc3M9XCJuZzItc21hcnQtYWN0aW9uIG5nMi1zbWFydC1hY3Rpb24tY3VzdG9tLWN1c3RvbVwiXG4gICAgICBbaW5uZXJIVE1MXT1cImFjdGlvbi50aXRsZVwiXG4gICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyAkZXZlbnQucHJldmVudERlZmF1bHQoKTsgb25DdXN0b20oYWN0aW9uKVwiXG4gICAgPjwvYT5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgVGJvZHlDdXN0b21Db21wb25lbnQge1xuICBASW5wdXQoKSBncmlkITogR3JpZDtcbiAgQElucHV0KCkgcm93ITogUm93O1xuICBASW5wdXQoKSBzb3VyY2UhOiBMb2NhbERhdGFTb3VyY2U7XG4gIEBPdXRwdXQoKSBjdXN0b20gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBvbkN1c3RvbShhY3Rpb246IGFueSkge1xuICAgIHRoaXMuY3VzdG9tLmVtaXQoe1xuICAgICAgYWN0aW9uOiBhY3Rpb24ubmFtZSxcbiAgICAgIGRhdGE6IHRoaXMucm93LmdldERhdGEoKSxcbiAgICAgIHNvdXJjZTogdGhpcy5zb3VyY2UsXG4gICAgfSk7XG4gIH1cblxuICBjdXN0b21BY3Rpb25zKCkge1xuICAgIHJldHVybiB0aGlzLmdyaWQuZ2V0U2V0dGluZzxTbWFydFRhYmxlQ3VzdG9tQWN0aW9uW10gfCB1bmRlZmluZWQ+KFwiYWN0aW9ucy5jdXN0b21cIik7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,237 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from "@angular/core";
2
+ import { Row } from "../../../lib/data-set/row";
3
+ import { LocalDataSource } from "../../../lib/data-source/local/local.data-source";
4
+ import { Grid } from "../../../lib/grid";
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ export class TbodyEditDeleteComponent {
8
+ constructor() {
9
+ this.edit = new EventEmitter();
10
+ this.delete = new EventEmitter();
11
+ this.editRowSelect = new EventEmitter();
12
+ this.isActionEdit = false;
13
+ this.isActionDelete = false;
14
+ this.editRowButtonContent = "";
15
+ this.deleteRowButtonContent = "";
16
+ }
17
+ onEdit(event) {
18
+ event.preventDefault();
19
+ event.stopPropagation();
20
+ this.editRowSelect.emit(this.row);
21
+ this.edit.emit({
22
+ data: this.row.getData(),
23
+ source: this.source,
24
+ });
25
+ if (this.grid.getSetting("mode") !== "external") {
26
+ this.grid.edit(this.row);
27
+ }
28
+ }
29
+ onDelete(event) {
30
+ event.preventDefault();
31
+ event.stopPropagation();
32
+ if (this.grid.getSetting("mode") === "external") {
33
+ this.delete.emit({
34
+ data: this.row.getData(),
35
+ source: this.source,
36
+ });
37
+ }
38
+ else {
39
+ this.grid.delete(this.row, this.deleteConfirm);
40
+ }
41
+ }
42
+ ngOnChanges() {
43
+ this.isActionEdit = this.grid.getSetting("actions.edit");
44
+ this.isActionDelete = this.grid.getSetting("actions.delete");
45
+ this.editRowButtonContent = this.grid.getSetting("edit.editButtonContent");
46
+ this.deleteRowButtonContent = this.grid.getSetting("delete.deleteButtonContent");
47
+ }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TbodyEditDeleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TbodyEditDeleteComponent, selector: "ng2-st-tbody-edit-delete", inputs: { grid: "grid", row: "row", source: "source", deleteConfirm: "deleteConfirm", editConfirm: "editConfirm" }, outputs: { edit: "edit", delete: "delete", editRowSelect: "editRowSelect" }, usesOnChanges: true, ngImport: i0, template: `
50
+ <ng-container *ngIf="!row.pending; else loader">
51
+ <a
52
+ href="#"
53
+ *ngIf="isActionEdit"
54
+ [id]="'row-' + row.index + '_action-edit-button'"
55
+ class="ng2-smart-action ng2-smart-action-edit-edit"
56
+ [innerHTML]="editRowButtonContent"
57
+ (click)="onEdit($event)"
58
+ ></a>
59
+ <a
60
+ href="#"
61
+ *ngIf="isActionDelete"
62
+ [id]="'row-' + row.index + '_action-delete-button'"
63
+ class="ng2-smart-action ng2-smart-action-delete-delete"
64
+ [innerHTML]="deleteRowButtonContent"
65
+ (click)="onDelete($event)"
66
+ ></a>
67
+ </ng-container>
68
+ <ng-template #loader>
69
+ <div style="display: flex;">
70
+ <svg
71
+ *ngIf="isActionEdit"
72
+ (click)="$event.stopPropagation()"
73
+ style="height: 2rem; width: 2rem;"
74
+ version="1.1"
75
+ id="L9"
76
+ xmlns="http://www.w3.org/2000/svg"
77
+ xmlns:xlink="http://www.w3.org/1999/xlink"
78
+ x="0px"
79
+ y="0px"
80
+ viewBox="0 0 100 100"
81
+ enable-background="new 0 0 0 0"
82
+ xml:space="preserve"
83
+ >
84
+ <path
85
+ fill="#e9e9e9"
86
+ d="M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"
87
+ >
88
+ <animateTransform
89
+ attributeName="transform"
90
+ attributeType="XML"
91
+ type="rotate"
92
+ dur="1s"
93
+ from="0 50 50"
94
+ to="360 50 50"
95
+ repeatCount="indefinite"
96
+ />
97
+ </path>
98
+ </svg>
99
+ <svg
100
+ *ngIf="isActionDelete"
101
+ (click)="$event.stopPropagation()"
102
+ style="height: 2rem; width: 2rem;"
103
+ version="1.1"
104
+ id="L9"
105
+ xmlns="http://www.w3.org/2000/svg"
106
+ xmlns:xlink="http://www.w3.org/1999/xlink"
107
+ x="0px"
108
+ y="0px"
109
+ viewBox="0 0 100 100"
110
+ enable-background="new 0 0 0 0"
111
+ xml:space="preserve"
112
+ >
113
+ <path
114
+ fill="#e9e9e9"
115
+ d="M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"
116
+ >
117
+ <animateTransform
118
+ attributeName="transform"
119
+ attributeType="XML"
120
+ type="rotate"
121
+ dur="1s"
122
+ from="0 50 50"
123
+ to="360 50 50"
124
+ repeatCount="indefinite"
125
+ />
126
+ </path>
127
+ </svg>
128
+ </div>
129
+ </ng-template>
130
+ `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
131
+ }
132
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TbodyEditDeleteComponent, decorators: [{
133
+ type: Component,
134
+ args: [{
135
+ selector: "ng2-st-tbody-edit-delete",
136
+ changeDetection: ChangeDetectionStrategy.OnPush,
137
+ template: `
138
+ <ng-container *ngIf="!row.pending; else loader">
139
+ <a
140
+ href="#"
141
+ *ngIf="isActionEdit"
142
+ [id]="'row-' + row.index + '_action-edit-button'"
143
+ class="ng2-smart-action ng2-smart-action-edit-edit"
144
+ [innerHTML]="editRowButtonContent"
145
+ (click)="onEdit($event)"
146
+ ></a>
147
+ <a
148
+ href="#"
149
+ *ngIf="isActionDelete"
150
+ [id]="'row-' + row.index + '_action-delete-button'"
151
+ class="ng2-smart-action ng2-smart-action-delete-delete"
152
+ [innerHTML]="deleteRowButtonContent"
153
+ (click)="onDelete($event)"
154
+ ></a>
155
+ </ng-container>
156
+ <ng-template #loader>
157
+ <div style="display: flex;">
158
+ <svg
159
+ *ngIf="isActionEdit"
160
+ (click)="$event.stopPropagation()"
161
+ style="height: 2rem; width: 2rem;"
162
+ version="1.1"
163
+ id="L9"
164
+ xmlns="http://www.w3.org/2000/svg"
165
+ xmlns:xlink="http://www.w3.org/1999/xlink"
166
+ x="0px"
167
+ y="0px"
168
+ viewBox="0 0 100 100"
169
+ enable-background="new 0 0 0 0"
170
+ xml:space="preserve"
171
+ >
172
+ <path
173
+ fill="#e9e9e9"
174
+ d="M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"
175
+ >
176
+ <animateTransform
177
+ attributeName="transform"
178
+ attributeType="XML"
179
+ type="rotate"
180
+ dur="1s"
181
+ from="0 50 50"
182
+ to="360 50 50"
183
+ repeatCount="indefinite"
184
+ />
185
+ </path>
186
+ </svg>
187
+ <svg
188
+ *ngIf="isActionDelete"
189
+ (click)="$event.stopPropagation()"
190
+ style="height: 2rem; width: 2rem;"
191
+ version="1.1"
192
+ id="L9"
193
+ xmlns="http://www.w3.org/2000/svg"
194
+ xmlns:xlink="http://www.w3.org/1999/xlink"
195
+ x="0px"
196
+ y="0px"
197
+ viewBox="0 0 100 100"
198
+ enable-background="new 0 0 0 0"
199
+ xml:space="preserve"
200
+ >
201
+ <path
202
+ fill="#e9e9e9"
203
+ d="M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"
204
+ >
205
+ <animateTransform
206
+ attributeName="transform"
207
+ attributeType="XML"
208
+ type="rotate"
209
+ dur="1s"
210
+ from="0 50 50"
211
+ to="360 50 50"
212
+ repeatCount="indefinite"
213
+ />
214
+ </path>
215
+ </svg>
216
+ </div>
217
+ </ng-template>
218
+ `,
219
+ }]
220
+ }], propDecorators: { grid: [{
221
+ type: Input
222
+ }], row: [{
223
+ type: Input
224
+ }], source: [{
225
+ type: Input
226
+ }], deleteConfirm: [{
227
+ type: Input
228
+ }], editConfirm: [{
229
+ type: Input
230
+ }], edit: [{
231
+ type: Output
232
+ }], delete: [{
233
+ type: Output
234
+ }], editRowSelect: [{
235
+ type: Output
236
+ }] } });
237
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1kZWxldGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmcyLXNtYXJ0LXRhYmxlL3NyYy9saWIvY29tcG9uZW50cy90Ym9keS9jZWxscy9lZGl0LWRlbGV0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUNuRixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7OztBQXdGekMsTUFBTSxPQUFPLHdCQUF3QjtJQXRGckM7UUE2RlksU0FBSSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDL0IsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDakMsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRWxELGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBQzlCLG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBQ2hDLHlCQUFvQixHQUFXLEVBQUUsQ0FBQztRQUNsQywyQkFBc0IsR0FBVyxFQUFFLENBQUM7S0F1Q3JDO0lBckNDLE1BQU0sQ0FBQyxLQUFVO1FBQ2YsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV4QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDYixJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUU7WUFDeEIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1NBQ3BCLENBQUMsQ0FBQztRQUNILElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEtBQUssVUFBVSxFQUFFO1lBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUMxQjtJQUNILENBQUM7SUFFRCxRQUFRLENBQUMsS0FBVTtRQUNqQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXhCLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEtBQUssVUFBVSxFQUFFO1lBQy9DLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO2dCQUNmLElBQUksRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRTtnQkFDeEIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO2FBQ3BCLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUNoRDtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDM0UsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUNoRCw0QkFBNEIsQ0FDN0IsQ0FBQztJQUNKLENBQUM7K0dBcERVLHdCQUF3QjttR0FBeEIsd0JBQXdCLHNSQW5GekI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlGVDs7NEZBRVUsd0JBQXdCO2tCQXRGcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMEJBQTBCO29CQUNwQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpRlQ7aUJBQ0Y7OEJBRVUsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVJLElBQUk7c0JBQWIsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5pbXBvcnQgeyBSb3cgfSBmcm9tIFwiLi4vLi4vLi4vbGliL2RhdGEtc2V0L3Jvd1wiO1xuaW1wb3J0IHsgTG9jYWxEYXRhU291cmNlIH0gZnJvbSBcIi4uLy4uLy4uL2xpYi9kYXRhLXNvdXJjZS9sb2NhbC9sb2NhbC5kYXRhLXNvdXJjZVwiO1xuaW1wb3J0IHsgR3JpZCB9IGZyb20gXCIuLi8uLi8uLi9saWIvZ3JpZFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwibmcyLXN0LXRib2R5LWVkaXQtZGVsZXRlXCIsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhcm93LnBlbmRpbmc7IGVsc2UgbG9hZGVyXCI+XG4gICAgICA8YVxuICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgICpuZ0lmPVwiaXNBY3Rpb25FZGl0XCJcbiAgICAgICAgW2lkXT1cIidyb3ctJyArIHJvdy5pbmRleCArICdfYWN0aW9uLWVkaXQtYnV0dG9uJ1wiXG4gICAgICAgIGNsYXNzPVwibmcyLXNtYXJ0LWFjdGlvbiBuZzItc21hcnQtYWN0aW9uLWVkaXQtZWRpdFwiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiZWRpdFJvd0J1dHRvbkNvbnRlbnRcIlxuICAgICAgICAoY2xpY2spPVwib25FZGl0KCRldmVudClcIlxuICAgICAgPjwvYT5cbiAgICAgIDxhXG4gICAgICAgIGhyZWY9XCIjXCJcbiAgICAgICAgKm5nSWY9XCJpc0FjdGlvbkRlbGV0ZVwiXG4gICAgICAgIFtpZF09XCIncm93LScgKyByb3cuaW5kZXggKyAnX2FjdGlvbi1kZWxldGUtYnV0dG9uJ1wiXG4gICAgICAgIGNsYXNzPVwibmcyLXNtYXJ0LWFjdGlvbiBuZzItc21hcnQtYWN0aW9uLWRlbGV0ZS1kZWxldGVcIlxuICAgICAgICBbaW5uZXJIVE1MXT1cImRlbGV0ZVJvd0J1dHRvbkNvbnRlbnRcIlxuICAgICAgICAoY2xpY2spPVwib25EZWxldGUoJGV2ZW50KVwiXG4gICAgICA+PC9hPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjbG9hZGVyPlxuICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7XCI+XG4gICAgICAgIDxzdmdcbiAgICAgICAgICAqbmdJZj1cImlzQWN0aW9uRWRpdFwiXG4gICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgc3R5bGU9XCJoZWlnaHQ6IDJyZW07IHdpZHRoOiAycmVtO1wiXG4gICAgICAgICAgdmVyc2lvbj1cIjEuMVwiXG4gICAgICAgICAgaWQ9XCJMOVwiXG4gICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCJcbiAgICAgICAgICB4PVwiMHB4XCJcbiAgICAgICAgICB5PVwiMHB4XCJcbiAgICAgICAgICB2aWV3Qm94PVwiMCAwIDEwMCAxMDBcIlxuICAgICAgICAgIGVuYWJsZS1iYWNrZ3JvdW5kPVwibmV3IDAgMCAwIDBcIlxuICAgICAgICAgIHhtbDpzcGFjZT1cInByZXNlcnZlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICBmaWxsPVwiI2U5ZTllOVwiXG4gICAgICAgICAgICBkPVwiTTczLDUwYzAtMTIuNy0xMC4zLTIzLTIzLTIzUzI3LDM3LjMsMjcsNTAgTTMwLjksNTBjMC0xMC41LDguNS0xOS4xLDE5LjEtMTkuMVM2OS4xLDM5LjUsNjkuMSw1MFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGFuaW1hdGVUcmFuc2Zvcm1cbiAgICAgICAgICAgICAgYXR0cmlidXRlTmFtZT1cInRyYW5zZm9ybVwiXG4gICAgICAgICAgICAgIGF0dHJpYnV0ZVR5cGU9XCJYTUxcIlxuICAgICAgICAgICAgICB0eXBlPVwicm90YXRlXCJcbiAgICAgICAgICAgICAgZHVyPVwiMXNcIlxuICAgICAgICAgICAgICBmcm9tPVwiMCA1MCA1MFwiXG4gICAgICAgICAgICAgIHRvPVwiMzYwIDUwIDUwXCJcbiAgICAgICAgICAgICAgcmVwZWF0Q291bnQ9XCJpbmRlZmluaXRlXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9wYXRoPlxuICAgICAgICA8L3N2Zz5cbiAgICAgICAgPHN2Z1xuICAgICAgICAgICpuZ0lmPVwiaXNBY3Rpb25EZWxldGVcIlxuICAgICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgIHN0eWxlPVwiaGVpZ2h0OiAycmVtOyB3aWR0aDogMnJlbTtcIlxuICAgICAgICAgIHZlcnNpb249XCIxLjFcIlxuICAgICAgICAgIGlkPVwiTDlcIlxuICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXG4gICAgICAgICAgeD1cIjBweFwiXG4gICAgICAgICAgeT1cIjBweFwiXG4gICAgICAgICAgdmlld0JveD1cIjAgMCAxMDAgMTAwXCJcbiAgICAgICAgICBlbmFibGUtYmFja2dyb3VuZD1cIm5ldyAwIDAgMCAwXCJcbiAgICAgICAgICB4bWw6c3BhY2U9XCJwcmVzZXJ2ZVwiXG4gICAgICAgID5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgZmlsbD1cIiNlOWU5ZTlcIlxuICAgICAgICAgICAgZD1cIk03Myw1MGMwLTEyLjctMTAuMy0yMy0yMy0yM1MyNywzNy4zLDI3LDUwIE0zMC45LDUwYzAtMTAuNSw4LjUtMTkuMSwxOS4xLTE5LjFTNjkuMSwzOS41LDY5LjEsNTBcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxhbmltYXRlVHJhbnNmb3JtXG4gICAgICAgICAgICAgIGF0dHJpYnV0ZU5hbWU9XCJ0cmFuc2Zvcm1cIlxuICAgICAgICAgICAgICBhdHRyaWJ1dGVUeXBlPVwiWE1MXCJcbiAgICAgICAgICAgICAgdHlwZT1cInJvdGF0ZVwiXG4gICAgICAgICAgICAgIGR1cj1cIjFzXCJcbiAgICAgICAgICAgICAgZnJvbT1cIjAgNTAgNTBcIlxuICAgICAgICAgICAgICB0bz1cIjM2MCA1MCA1MFwiXG4gICAgICAgICAgICAgIHJlcGVhdENvdW50PVwiaW5kZWZpbml0ZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvcGF0aD5cbiAgICAgICAgPC9zdmc+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBUYm9keUVkaXREZWxldGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBncmlkITogR3JpZDtcbiAgQElucHV0KCkgcm93ITogUm93O1xuICBASW5wdXQoKSBzb3VyY2UhOiBMb2NhbERhdGFTb3VyY2U7XG4gIEBJbnB1dCgpIGRlbGV0ZUNvbmZpcm0hOiBFdmVudEVtaXR0ZXI8YW55PjtcbiAgQElucHV0KCkgZWRpdENvbmZpcm0hOiBFdmVudEVtaXR0ZXI8YW55PjtcblxuICBAT3V0cHV0KCkgZWRpdCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgZGVsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSBlZGl0Um93U2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgaXNBY3Rpb25FZGl0OiBib29sZWFuID0gZmFsc2U7XG4gIGlzQWN0aW9uRGVsZXRlOiBib29sZWFuID0gZmFsc2U7XG4gIGVkaXRSb3dCdXR0b25Db250ZW50OiBzdHJpbmcgPSBcIlwiO1xuICBkZWxldGVSb3dCdXR0b25Db250ZW50OiBzdHJpbmcgPSBcIlwiO1xuXG4gIG9uRWRpdChldmVudDogYW55KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIHRoaXMuZWRpdFJvd1NlbGVjdC5lbWl0KHRoaXMucm93KTtcblxuICAgIHRoaXMuZWRpdC5lbWl0KHtcbiAgICAgIGRhdGE6IHRoaXMucm93LmdldERhdGEoKSxcbiAgICAgIHNvdXJjZTogdGhpcy5zb3VyY2UsXG4gICAgfSk7XG4gICAgaWYgKHRoaXMuZ3JpZC5nZXRTZXR0aW5nKFwibW9kZVwiKSAhPT0gXCJleHRlcm5hbFwiKSB7XG4gICAgICB0aGlzLmdyaWQuZWRpdCh0aGlzLnJvdyk7XG4gICAgfVxuICB9XG5cbiAgb25EZWxldGUoZXZlbnQ6IGFueSkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICBpZiAodGhpcy5ncmlkLmdldFNldHRpbmcoXCJtb2RlXCIpID09PSBcImV4dGVybmFsXCIpIHtcbiAgICAgIHRoaXMuZGVsZXRlLmVtaXQoe1xuICAgICAgICBkYXRhOiB0aGlzLnJvdy5nZXREYXRhKCksXG4gICAgICAgIHNvdXJjZTogdGhpcy5zb3VyY2UsXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5ncmlkLmRlbGV0ZSh0aGlzLnJvdywgdGhpcy5kZWxldGVDb25maXJtKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICB0aGlzLmlzQWN0aW9uRWRpdCA9IHRoaXMuZ3JpZC5nZXRTZXR0aW5nKFwiYWN0aW9ucy5lZGl0XCIpO1xuICAgIHRoaXMuaXNBY3Rpb25EZWxldGUgPSB0aGlzLmdyaWQuZ2V0U2V0dGluZyhcImFjdGlvbnMuZGVsZXRlXCIpO1xuICAgIHRoaXMuZWRpdFJvd0J1dHRvbkNvbnRlbnQgPSB0aGlzLmdyaWQuZ2V0U2V0dGluZyhcImVkaXQuZWRpdEJ1dHRvbkNvbnRlbnRcIik7XG4gICAgdGhpcy5kZWxldGVSb3dCdXR0b25Db250ZW50ID0gdGhpcy5ncmlkLmdldFNldHRpbmcoXG4gICAgICBcImRlbGV0ZS5kZWxldGVCdXR0b25Db250ZW50XCJcbiAgICApO1xuICB9XG59XG4iXX0=