@den4ik92/ng2-smart-table 2.0.6 → 2.1.2

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 +236 -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 -438
  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,236 @@
1
+ import { 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"] }] }); }
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
+ template: `
137
+ <ng-container *ngIf="!row.pending; else loader">
138
+ <a
139
+ href="#"
140
+ *ngIf="isActionEdit"
141
+ [id]="'row-' + row.index + '_action-edit-button'"
142
+ class="ng2-smart-action ng2-smart-action-edit-edit"
143
+ [innerHTML]="editRowButtonContent"
144
+ (click)="onEdit($event)"
145
+ ></a>
146
+ <a
147
+ href="#"
148
+ *ngIf="isActionDelete"
149
+ [id]="'row-' + row.index + '_action-delete-button'"
150
+ class="ng2-smart-action ng2-smart-action-delete-delete"
151
+ [innerHTML]="deleteRowButtonContent"
152
+ (click)="onDelete($event)"
153
+ ></a>
154
+ </ng-container>
155
+ <ng-template #loader>
156
+ <div style="display: flex;">
157
+ <svg
158
+ *ngIf="isActionEdit"
159
+ (click)="$event.stopPropagation()"
160
+ style="height: 2rem; width: 2rem;"
161
+ version="1.1"
162
+ id="L9"
163
+ xmlns="http://www.w3.org/2000/svg"
164
+ xmlns:xlink="http://www.w3.org/1999/xlink"
165
+ x="0px"
166
+ y="0px"
167
+ viewBox="0 0 100 100"
168
+ enable-background="new 0 0 0 0"
169
+ xml:space="preserve"
170
+ >
171
+ <path
172
+ fill="#e9e9e9"
173
+ 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"
174
+ >
175
+ <animateTransform
176
+ attributeName="transform"
177
+ attributeType="XML"
178
+ type="rotate"
179
+ dur="1s"
180
+ from="0 50 50"
181
+ to="360 50 50"
182
+ repeatCount="indefinite"
183
+ />
184
+ </path>
185
+ </svg>
186
+ <svg
187
+ *ngIf="isActionDelete"
188
+ (click)="$event.stopPropagation()"
189
+ style="height: 2rem; width: 2rem;"
190
+ version="1.1"
191
+ id="L9"
192
+ xmlns="http://www.w3.org/2000/svg"
193
+ xmlns:xlink="http://www.w3.org/1999/xlink"
194
+ x="0px"
195
+ y="0px"
196
+ viewBox="0 0 100 100"
197
+ enable-background="new 0 0 0 0"
198
+ xml:space="preserve"
199
+ >
200
+ <path
201
+ fill="#e9e9e9"
202
+ 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"
203
+ >
204
+ <animateTransform
205
+ attributeName="transform"
206
+ attributeType="XML"
207
+ type="rotate"
208
+ dur="1s"
209
+ from="0 50 50"
210
+ to="360 50 50"
211
+ repeatCount="indefinite"
212
+ />
213
+ </path>
214
+ </svg>
215
+ </div>
216
+ </ng-template>
217
+ `,
218
+ }]
219
+ }], propDecorators: { grid: [{
220
+ type: Input
221
+ }], row: [{
222
+ type: Input
223
+ }], source: [{
224
+ type: Input
225
+ }], deleteConfirm: [{
226
+ type: Input
227
+ }], editConfirm: [{
228
+ type: Input
229
+ }], edit: [{
230
+ type: Output
231
+ }], delete: [{
232
+ type: Output
233
+ }], editRowSelect: [{
234
+ type: Output
235
+ }] } });
236
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1kZWxldGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmcyLXNtYXJ0LXRhYmxlL3NyYy9saWIvY29tcG9uZW50cy90Ym9keS9jZWxscy9lZGl0LWRlbGV0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ25GLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBdUZ6QyxNQUFNLE9BQU8sd0JBQXdCO0lBckZyQztRQTRGWSxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUMvQixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNqQyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFFbEQsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFDOUIsbUJBQWMsR0FBWSxLQUFLLENBQUM7UUFDaEMseUJBQW9CLEdBQVcsRUFBRSxDQUFDO1FBQ2xDLDJCQUFzQixHQUFXLEVBQUUsQ0FBQztLQXVDckM7SUFyQ0MsTUFBTSxDQUFDLEtBQVU7UUFDZixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXhCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVsQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNiLElBQUksRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRTtZQUN4QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDcEIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxVQUFVLEVBQUU7WUFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzFCO0lBQ0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFVO1FBQ2pCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFeEIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxVQUFVLEVBQUU7WUFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7Z0JBQ2YsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFO2dCQUN4QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07YUFDcEIsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ2hEO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3pELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQ2hELDRCQUE0QixDQUM3QixDQUFDO0lBQ0osQ0FBQzsrR0FwRFUsd0JBQXdCO21HQUF4Qix3QkFBd0Isc1JBbkZ6Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUZUOzs0RkFFVSx3QkFBd0I7a0JBckZwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUZUO2lCQUNGOzhCQUVVLElBQUk7c0JBQVosS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFSSxJQUFJO3NCQUFiLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IFJvdyB9IGZyb20gXCIuLi8uLi8uLi9saWIvZGF0YS1zZXQvcm93XCI7XG5pbXBvcnQgeyBMb2NhbERhdGFTb3VyY2UgfSBmcm9tIFwiLi4vLi4vLi4vbGliL2RhdGEtc291cmNlL2xvY2FsL2xvY2FsLmRhdGEtc291cmNlXCI7XG5pbXBvcnQgeyBHcmlkIH0gZnJvbSBcIi4uLy4uLy4uL2xpYi9ncmlkXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJuZzItc3QtdGJvZHktZWRpdC1kZWxldGVcIixcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXJvdy5wZW5kaW5nOyBlbHNlIGxvYWRlclwiPlxuICAgICAgPGFcbiAgICAgICAgaHJlZj1cIiNcIlxuICAgICAgICAqbmdJZj1cImlzQWN0aW9uRWRpdFwiXG4gICAgICAgIFtpZF09XCIncm93LScgKyByb3cuaW5kZXggKyAnX2FjdGlvbi1lZGl0LWJ1dHRvbidcIlxuICAgICAgICBjbGFzcz1cIm5nMi1zbWFydC1hY3Rpb24gbmcyLXNtYXJ0LWFjdGlvbi1lZGl0LWVkaXRcIlxuICAgICAgICBbaW5uZXJIVE1MXT1cImVkaXRSb3dCdXR0b25Db250ZW50XCJcbiAgICAgICAgKGNsaWNrKT1cIm9uRWRpdCgkZXZlbnQpXCJcbiAgICAgID48L2E+XG4gICAgICA8YVxuICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgICpuZ0lmPVwiaXNBY3Rpb25EZWxldGVcIlxuICAgICAgICBbaWRdPVwiJ3Jvdy0nICsgcm93LmluZGV4ICsgJ19hY3Rpb24tZGVsZXRlLWJ1dHRvbidcIlxuICAgICAgICBjbGFzcz1cIm5nMi1zbWFydC1hY3Rpb24gbmcyLXNtYXJ0LWFjdGlvbi1kZWxldGUtZGVsZXRlXCJcbiAgICAgICAgW2lubmVySFRNTF09XCJkZWxldGVSb3dCdXR0b25Db250ZW50XCJcbiAgICAgICAgKGNsaWNrKT1cIm9uRGVsZXRlKCRldmVudClcIlxuICAgICAgPjwvYT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2xvYWRlcj5cbiAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4O1wiPlxuICAgICAgICA8c3ZnXG4gICAgICAgICAgKm5nSWY9XCJpc0FjdGlvbkVkaXRcIlxuICAgICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgIHN0eWxlPVwiaGVpZ2h0OiAycmVtOyB3aWR0aDogMnJlbTtcIlxuICAgICAgICAgIHZlcnNpb249XCIxLjFcIlxuICAgICAgICAgIGlkPVwiTDlcIlxuICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXG4gICAgICAgICAgeD1cIjBweFwiXG4gICAgICAgICAgeT1cIjBweFwiXG4gICAgICAgICAgdmlld0JveD1cIjAgMCAxMDAgMTAwXCJcbiAgICAgICAgICBlbmFibGUtYmFja2dyb3VuZD1cIm5ldyAwIDAgMCAwXCJcbiAgICAgICAgICB4bWw6c3BhY2U9XCJwcmVzZXJ2ZVwiXG4gICAgICAgID5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgZmlsbD1cIiNlOWU5ZTlcIlxuICAgICAgICAgICAgZD1cIk03Myw1MGMwLTEyLjctMTAuMy0yMy0yMy0yM1MyNywzNy4zLDI3LDUwIE0zMC45LDUwYzAtMTAuNSw4LjUtMTkuMSwxOS4xLTE5LjFTNjkuMSwzOS41LDY5LjEsNTBcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxhbmltYXRlVHJhbnNmb3JtXG4gICAgICAgICAgICAgIGF0dHJpYnV0ZU5hbWU9XCJ0cmFuc2Zvcm1cIlxuICAgICAgICAgICAgICBhdHRyaWJ1dGVUeXBlPVwiWE1MXCJcbiAgICAgICAgICAgICAgdHlwZT1cInJvdGF0ZVwiXG4gICAgICAgICAgICAgIGR1cj1cIjFzXCJcbiAgICAgICAgICAgICAgZnJvbT1cIjAgNTAgNTBcIlxuICAgICAgICAgICAgICB0bz1cIjM2MCA1MCA1MFwiXG4gICAgICAgICAgICAgIHJlcGVhdENvdW50PVwiaW5kZWZpbml0ZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvcGF0aD5cbiAgICAgICAgPC9zdmc+XG4gICAgICAgIDxzdmdcbiAgICAgICAgICAqbmdJZj1cImlzQWN0aW9uRGVsZXRlXCJcbiAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICBzdHlsZT1cImhlaWdodDogMnJlbTsgd2lkdGg6IDJyZW07XCJcbiAgICAgICAgICB2ZXJzaW9uPVwiMS4xXCJcbiAgICAgICAgICBpZD1cIkw5XCJcbiAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIlxuICAgICAgICAgIHg9XCIwcHhcIlxuICAgICAgICAgIHk9XCIwcHhcIlxuICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTAwIDEwMFwiXG4gICAgICAgICAgZW5hYmxlLWJhY2tncm91bmQ9XCJuZXcgMCAwIDAgMFwiXG4gICAgICAgICAgeG1sOnNwYWNlPVwicHJlc2VydmVcIlxuICAgICAgICA+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIGZpbGw9XCIjZTllOWU5XCJcbiAgICAgICAgICAgIGQ9XCJNNzMsNTBjMC0xMi43LTEwLjMtMjMtMjMtMjNTMjcsMzcuMywyNyw1MCBNMzAuOSw1MGMwLTEwLjUsOC41LTE5LjEsMTkuMS0xOS4xUzY5LjEsMzkuNSw2OS4xLDUwXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8YW5pbWF0ZVRyYW5zZm9ybVxuICAgICAgICAgICAgICBhdHRyaWJ1dGVOYW1lPVwidHJhbnNmb3JtXCJcbiAgICAgICAgICAgICAgYXR0cmlidXRlVHlwZT1cIlhNTFwiXG4gICAgICAgICAgICAgIHR5cGU9XCJyb3RhdGVcIlxuICAgICAgICAgICAgICBkdXI9XCIxc1wiXG4gICAgICAgICAgICAgIGZyb209XCIwIDUwIDUwXCJcbiAgICAgICAgICAgICAgdG89XCIzNjAgNTAgNTBcIlxuICAgICAgICAgICAgICByZXBlYXRDb3VudD1cImluZGVmaW5pdGVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L3BhdGg+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgVGJvZHlFZGl0RGVsZXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgZ3JpZCE6IEdyaWQ7XG4gIEBJbnB1dCgpIHJvdyE6IFJvdztcbiAgQElucHV0KCkgc291cmNlITogTG9jYWxEYXRhU291cmNlO1xuICBASW5wdXQoKSBkZWxldGVDb25maXJtITogRXZlbnRFbWl0dGVyPGFueT47XG4gIEBJbnB1dCgpIGVkaXRDb25maXJtITogRXZlbnRFbWl0dGVyPGFueT47XG5cbiAgQE91dHB1dCgpIGVkaXQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIGRlbGV0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgZWRpdFJvd1NlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGlzQWN0aW9uRWRpdDogYm9vbGVhbiA9IGZhbHNlO1xuICBpc0FjdGlvbkRlbGV0ZTogYm9vbGVhbiA9IGZhbHNlO1xuICBlZGl0Um93QnV0dG9uQ29udGVudDogc3RyaW5nID0gXCJcIjtcbiAgZGVsZXRlUm93QnV0dG9uQ29udGVudDogc3RyaW5nID0gXCJcIjtcblxuICBvbkVkaXQoZXZlbnQ6IGFueSkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICB0aGlzLmVkaXRSb3dTZWxlY3QuZW1pdCh0aGlzLnJvdyk7XG5cbiAgICB0aGlzLmVkaXQuZW1pdCh7XG4gICAgICBkYXRhOiB0aGlzLnJvdy5nZXREYXRhKCksXG4gICAgICBzb3VyY2U6IHRoaXMuc291cmNlLFxuICAgIH0pO1xuICAgIGlmICh0aGlzLmdyaWQuZ2V0U2V0dGluZyhcIm1vZGVcIikgIT09IFwiZXh0ZXJuYWxcIikge1xuICAgICAgdGhpcy5ncmlkLmVkaXQodGhpcy5yb3cpO1xuICAgIH1cbiAgfVxuXG4gIG9uRGVsZXRlKGV2ZW50OiBhbnkpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgaWYgKHRoaXMuZ3JpZC5nZXRTZXR0aW5nKFwibW9kZVwiKSA9PT0gXCJleHRlcm5hbFwiKSB7XG4gICAgICB0aGlzLmRlbGV0ZS5lbWl0KHtcbiAgICAgICAgZGF0YTogdGhpcy5yb3cuZ2V0RGF0YSgpLFxuICAgICAgICBzb3VyY2U6IHRoaXMuc291cmNlLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZ3JpZC5kZWxldGUodGhpcy5yb3csIHRoaXMuZGVsZXRlQ29uZmlybSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgdGhpcy5pc0FjdGlvbkVkaXQgPSB0aGlzLmdyaWQuZ2V0U2V0dGluZyhcImFjdGlvbnMuZWRpdFwiKTtcbiAgICB0aGlzLmlzQWN0aW9uRGVsZXRlID0gdGhpcy5ncmlkLmdldFNldHRpbmcoXCJhY3Rpb25zLmRlbGV0ZVwiKTtcbiAgICB0aGlzLmVkaXRSb3dCdXR0b25Db250ZW50ID0gdGhpcy5ncmlkLmdldFNldHRpbmcoXCJlZGl0LmVkaXRCdXR0b25Db250ZW50XCIpO1xuICAgIHRoaXMuZGVsZXRlUm93QnV0dG9uQ29udGVudCA9IHRoaXMuZ3JpZC5nZXRTZXR0aW5nKFxuICAgICAgXCJkZWxldGUuZGVsZXRlQnV0dG9uQ29udGVudFwiXG4gICAgKTtcbiAgfVxufVxuIl19