@den4ik92/ng2-smart-table 18.2.13 → 19.0.4
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.
- package/README.md +167 -0
- package/fesm2022/den4ik92-ng2-smart-table.mjs +1502 -1581
- package/fesm2022/den4ik92-ng2-smart-table.mjs.map +1 -1
- package/lib/components/cell/cell-edit-mode/custom-edit.component.d.ts +3 -5
- package/lib/components/cell/cell-edit-mode/default-edit.component.d.ts +3 -3
- package/lib/components/cell/cell-edit-mode/edit-cell-default.d.ts +2 -3
- package/lib/components/cell/cell-edit-mode/edit-cell.component.d.ts +4 -5
- package/lib/components/cell/cell-editors/checkbox-editor.component.d.ts +2 -2
- package/lib/components/cell/cell-editors/default-editor.d.ts +8 -8
- package/lib/components/cell/cell-editors/input-editor.component.d.ts +2 -2
- package/lib/components/cell/cell-editors/select-editor.component.d.ts +2 -2
- package/lib/components/cell/cell-editors/textarea-editor.component.d.ts +2 -2
- package/lib/components/cell/cell-view-mode/custom-view.component.d.ts +1 -1
- package/lib/components/cell/cell-view-mode/view-cell.component.d.ts +2 -2
- package/lib/components/cell/cell.component.d.ts +8 -8
- package/lib/components/filter/custom-filter.component.d.ts +3 -5
- package/lib/components/filter/default-filter.component.d.ts +1 -1
- package/lib/components/filter/filter-default.d.ts +2 -3
- package/lib/components/filter/filter-types/checkbox-filter.component.d.ts +4 -4
- package/lib/components/filter/filter-types/default-filter.d.ts +4 -4
- package/lib/components/filter/filter-types/input-filter.component.d.ts +4 -4
- package/lib/components/filter/filter-types/select-filter.component.d.ts +1 -1
- package/lib/components/filter/filter.component.d.ts +2 -2
- package/lib/components/pager/pager.component.d.ts +5 -5
- package/lib/components/tbody/cells/create-cancel.component.d.ts +4 -4
- package/lib/components/tbody/cells/custom.component.d.ts +2 -3
- package/lib/components/tbody/cells/edit-delete.component.d.ts +7 -7
- package/lib/components/tbody/tbody.component.d.ts +19 -19
- package/lib/components/thead/cells/actions-title.component.d.ts +3 -4
- package/lib/components/thead/cells/actions.component.d.ts +4 -4
- package/lib/components/thead/cells/add-button.component.d.ts +5 -6
- package/lib/components/thead/cells/checkbox-select-all.component.d.ts +3 -3
- package/lib/components/thead/cells/column-title.component.d.ts +4 -5
- package/lib/components/thead/cells/title/title.component.d.ts +8 -8
- package/lib/components/thead/rows/thead-filters-row.component.d.ts +4 -4
- package/lib/components/thead/rows/thead-form-row.component.d.ts +4 -4
- package/lib/components/thead/rows/thead-titles-row.component.d.ts +6 -6
- package/lib/components/thead/thead.component.d.ts +7 -7
- package/lib/lib/grid.d.ts +20 -11
- package/lib/lib/helpers.d.ts +4 -1
- package/lib/lib/interfaces/smart-table.models.d.ts +16 -12
- package/lib/ng2-smart-table.component.d.ts +20 -21
- package/package.json +6 -7
- package/public-api.d.ts +0 -1
- package/esm2022/den4ik92-ng2-smart-table.mjs +0 -5
- package/esm2022/lib/components/cell/cell-edit-mode/custom-edit.component.mjs +0 -44
- package/esm2022/lib/components/cell/cell-edit-mode/default-edit.component.mjs +0 -26
- package/esm2022/lib/components/cell/cell-edit-mode/edit-cell-default.mjs +0 -35
- package/esm2022/lib/components/cell/cell-edit-mode/edit-cell.component.mjs +0 -76
- package/esm2022/lib/components/cell/cell-editors/checkbox-editor.component.mjs +0 -40
- package/esm2022/lib/components/cell/cell-editors/default-editor.mjs +0 -30
- package/esm2022/lib/components/cell/cell-editors/input-editor.component.mjs +0 -37
- package/esm2022/lib/components/cell/cell-editors/select-editor.component.mjs +0 -52
- package/esm2022/lib/components/cell/cell-editors/textarea-editor.component.mjs +0 -39
- package/esm2022/lib/components/cell/cell-view-mode/custom-view.component.mjs +0 -15
- package/esm2022/lib/components/cell/cell-view-mode/view-cell.component.mjs +0 -47
- package/esm2022/lib/components/cell/cell-view-mode/view-cell.mjs +0 -2
- package/esm2022/lib/components/cell/cell.component.mjs +0 -73
- package/esm2022/lib/components/cell/cell.module.mjs +0 -75
- package/esm2022/lib/components/filter/custom-filter.component.mjs +0 -43
- package/esm2022/lib/components/filter/default-filter.component.mjs +0 -73
- package/esm2022/lib/components/filter/filter-default.mjs +0 -37
- package/esm2022/lib/components/filter/filter-types/checkbox-filter.component.mjs +0 -54
- package/esm2022/lib/components/filter/filter-types/default-filter.mjs +0 -36
- package/esm2022/lib/components/filter/filter-types/input-filter.component.mjs +0 -53
- package/esm2022/lib/components/filter/filter-types/select-filter.component.mjs +0 -58
- package/esm2022/lib/components/filter/filter.component.mjs +0 -86
- package/esm2022/lib/components/filter/filter.module.mjs +0 -62
- package/esm2022/lib/components/pager/pager.component.mjs +0 -241
- package/esm2022/lib/components/pager/pager.module.mjs +0 -28
- package/esm2022/lib/components/tbody/cells/create-cancel.component.mjs +0 -195
- package/esm2022/lib/components/tbody/cells/custom.component.mjs +0 -59
- package/esm2022/lib/components/tbody/cells/edit-delete.component.mjs +0 -241
- package/esm2022/lib/components/tbody/tbody.component.mjs +0 -95
- package/esm2022/lib/components/tbody/tbody.module.mjs +0 -47
- package/esm2022/lib/components/thead/cells/actions-title.component.mjs +0 -31
- package/esm2022/lib/components/thead/cells/actions.component.mjs +0 -42
- package/esm2022/lib/components/thead/cells/add-button.component.mjs +0 -57
- package/esm2022/lib/components/thead/cells/checkbox-select-all.component.mjs +0 -25
- package/esm2022/lib/components/thead/cells/column-title.component.mjs +0 -34
- package/esm2022/lib/components/thead/cells/title/title.component.mjs +0 -87
- package/esm2022/lib/components/thead/rows/thead-filters-row.component.mjs +0 -89
- package/esm2022/lib/components/thead/rows/thead-form-row.component.mjs +0 -108
- package/esm2022/lib/components/thead/rows/thead-titles-row.component.mjs +0 -87
- package/esm2022/lib/components/thead/thead.component.mjs +0 -42
- package/esm2022/lib/components/thead/thead.module.mjs +0 -75
- package/esm2022/lib/lib/data-set/cell.mjs +0 -43
- package/esm2022/lib/lib/data-set/column.mjs +0 -74
- package/esm2022/lib/lib/data-set/data-set.mjs +0 -96
- package/esm2022/lib/lib/data-set/row.mjs +0 -47
- package/esm2022/lib/lib/data-source/data-source.mjs +0 -92
- package/esm2022/lib/lib/data-source/local/local.data-source.mjs +0 -263
- package/esm2022/lib/lib/data-source/local/local.filter.mjs +0 -13
- package/esm2022/lib/lib/data-source/local/local.pager.mjs +0 -6
- package/esm2022/lib/lib/data-source/local/local.sorter.mjs +0 -19
- package/esm2022/lib/lib/grid.mjs +0 -218
- package/esm2022/lib/lib/helpers.mjs +0 -84
- package/esm2022/lib/lib/interfaces/smart-table.models.mjs +0 -16
- package/esm2022/lib/ng2-smart-table.component.mjs +0 -169
- package/esm2022/lib/ng2-smart-table.module.mjs +0 -51
- package/esm2022/public-api.mjs +0 -12
- package/lib/components/cell/cell.module.d.ts +0 -20
- package/lib/components/filter/filter.module.d.ts +0 -16
- package/lib/components/pager/pager.module.d.ts +0 -9
- package/lib/components/tbody/tbody.module.d.ts +0 -13
- package/lib/components/thead/thead.module.d.ts +0 -20
- package/lib/ng2-smart-table.module.d.ts +0 -14
|
@@ -1,241 +0,0 @@
|
|
|
1
|
-
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
-
import { LocalDataSource } from '../../lib/data-source/local/local.data-source';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@angular/forms";
|
|
6
|
-
export class PagerComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.perPageSelect = [];
|
|
9
|
-
this.changePage = new EventEmitter();
|
|
10
|
-
this.currentPerPage = 0;
|
|
11
|
-
this.pages = [];
|
|
12
|
-
this.page = 1;
|
|
13
|
-
this.count = 0;
|
|
14
|
-
this.perPage = 0;
|
|
15
|
-
}
|
|
16
|
-
ngOnChanges(changes) {
|
|
17
|
-
if (changes['source']) {
|
|
18
|
-
if (!changes['source'].firstChange && this.dataChangedSub) {
|
|
19
|
-
this.dataChangedSub.unsubscribe();
|
|
20
|
-
}
|
|
21
|
-
this.dataChangedSub = this.source.onChanged().subscribe((dataChanges) => {
|
|
22
|
-
const paging = this.source.getPaging();
|
|
23
|
-
if (paging) {
|
|
24
|
-
this.page = paging.page;
|
|
25
|
-
this.perPage = paging.perPage;
|
|
26
|
-
}
|
|
27
|
-
this.currentPerPage = this.perPage;
|
|
28
|
-
this.count = this.source.count();
|
|
29
|
-
if (this.isPageOutOfBounce()) {
|
|
30
|
-
this.source.setPage(--this.page);
|
|
31
|
-
}
|
|
32
|
-
this.processPageChange(dataChanges);
|
|
33
|
-
this.initPages();
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* We change the page here depending on the action performed against data source
|
|
39
|
-
* if a new element was added to the end of the table - then change the page to the last
|
|
40
|
-
* if a new element was added to the beginning of the table - then to the first page
|
|
41
|
-
* @param changes
|
|
42
|
-
*/
|
|
43
|
-
processPageChange(changes) {
|
|
44
|
-
if (changes['action'] === 'prepend') {
|
|
45
|
-
this.source.setPage(1);
|
|
46
|
-
}
|
|
47
|
-
if (changes['action'] === 'append') {
|
|
48
|
-
this.source.setPage(this.getLast());
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
shouldShow() {
|
|
52
|
-
return this.source.count() > this.perPage;
|
|
53
|
-
}
|
|
54
|
-
paginate(page) {
|
|
55
|
-
this.source.setPage(page);
|
|
56
|
-
this.page = page;
|
|
57
|
-
this.changePage.emit({ page });
|
|
58
|
-
return false;
|
|
59
|
-
}
|
|
60
|
-
next() {
|
|
61
|
-
return this.paginate(this.getPage() + 1);
|
|
62
|
-
}
|
|
63
|
-
prev() {
|
|
64
|
-
return this.paginate(this.getPage() - 1);
|
|
65
|
-
}
|
|
66
|
-
getPage() {
|
|
67
|
-
return this.page;
|
|
68
|
-
}
|
|
69
|
-
getPages() {
|
|
70
|
-
return this.pages;
|
|
71
|
-
}
|
|
72
|
-
getLast() {
|
|
73
|
-
return Math.ceil(this.count / this.perPage);
|
|
74
|
-
}
|
|
75
|
-
isPageOutOfBounce() {
|
|
76
|
-
return (this.page * this.perPage) >= (this.count + this.perPage) && this.page > 1;
|
|
77
|
-
}
|
|
78
|
-
initPages() {
|
|
79
|
-
const pagesCount = this.getLast();
|
|
80
|
-
let showPagesCount = 4;
|
|
81
|
-
showPagesCount = pagesCount < showPagesCount ? pagesCount : showPagesCount;
|
|
82
|
-
this.pages = [];
|
|
83
|
-
if (this.shouldShow()) {
|
|
84
|
-
let middleOne = Math.ceil(showPagesCount / 2);
|
|
85
|
-
middleOne = this.page >= middleOne ? this.page : middleOne;
|
|
86
|
-
let lastOne = middleOne + Math.floor(showPagesCount / 2);
|
|
87
|
-
lastOne = lastOne >= pagesCount ? pagesCount : lastOne;
|
|
88
|
-
const firstOne = lastOne - showPagesCount + 1;
|
|
89
|
-
for (let i = firstOne; i <= lastOne; i++) {
|
|
90
|
-
this.pages.push(i);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
onChangePerPage() {
|
|
95
|
-
const paging = this.source.getPaging();
|
|
96
|
-
if (paging) {
|
|
97
|
-
paging.perPage = this.currentPerPage * 1;
|
|
98
|
-
}
|
|
99
|
-
this.source.refresh();
|
|
100
|
-
this.initPages();
|
|
101
|
-
}
|
|
102
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PagerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
103
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: PagerComponent, selector: "ng2-smart-table-pager", inputs: { source: "source", perPageSelect: "perPageSelect" }, outputs: { changePage: "changePage" }, usesOnChanges: true, ngImport: i0, template: `
|
|
104
|
-
@if (shouldShow()) {
|
|
105
|
-
<nav class="ng2-smart-pagination-nav">
|
|
106
|
-
<ul class="ng2-smart-pagination pagination">
|
|
107
|
-
<li class="ng2-smart-page-item page-item" [ngClass]="{disabled: getPage() == 1}">
|
|
108
|
-
<a class="ng2-smart-page-link page-link" href="#"
|
|
109
|
-
(click)="getPage() == 1 ? false : paginate(1)" aria-label="First">
|
|
110
|
-
<span aria-hidden="true">«</span>
|
|
111
|
-
<span class="sr-only">First</span>
|
|
112
|
-
</a>
|
|
113
|
-
</li>
|
|
114
|
-
<li class="ng2-smart-page-item page-item" [ngClass]="{disabled: getPage() == 1}">
|
|
115
|
-
<a class="ng2-smart-page-link page-link page-link-prev" href="#"
|
|
116
|
-
(click)="getPage() == 1 ? false : prev()" aria-label="Prev">
|
|
117
|
-
<span aria-hidden="true"><</span>
|
|
118
|
-
<span class="sr-only">Prev</span>
|
|
119
|
-
</a>
|
|
120
|
-
</li>
|
|
121
|
-
@for (page of getPages(); track page) {
|
|
122
|
-
<li class="ng2-smart-page-item page-item"
|
|
123
|
-
[ngClass]="{active: getPage() == page}">
|
|
124
|
-
@if (getPage() == page) {
|
|
125
|
-
<span class="ng2-smart-page-link page-link"
|
|
126
|
-
>{{ page }} <span class="sr-only">(current)</span></span>
|
|
127
|
-
}
|
|
128
|
-
@if (getPage() != page) {
|
|
129
|
-
<a class="ng2-smart-page-link page-link" href="#"
|
|
130
|
-
(click)="paginate(page)">{{ page }}</a>
|
|
131
|
-
}
|
|
132
|
-
</li>
|
|
133
|
-
}
|
|
134
|
-
<li class="ng2-smart-page-item page-item"
|
|
135
|
-
[ngClass]="{disabled: getPage() == getLast()}">
|
|
136
|
-
<a class="ng2-smart-page-link page-link page-link-next" href="#"
|
|
137
|
-
(click)="getPage() == getLast() ? false : next()" aria-label="Next">
|
|
138
|
-
<span aria-hidden="true">></span>
|
|
139
|
-
<span class="sr-only">Next</span>
|
|
140
|
-
</a>
|
|
141
|
-
</li>
|
|
142
|
-
<li class="ng2-smart-page-item page-item"
|
|
143
|
-
[ngClass]="{disabled: getPage() == getLast()}">
|
|
144
|
-
<a class="ng2-smart-page-link page-link" href="#"
|
|
145
|
-
(click)="getPage() == getLast() ? false : paginate(getLast())" aria-label="Last">
|
|
146
|
-
<span aria-hidden="true">»</span>
|
|
147
|
-
<span class="sr-only">Last</span>
|
|
148
|
-
</a>
|
|
149
|
-
</li>
|
|
150
|
-
</ul>
|
|
151
|
-
</nav>
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
@if (perPageSelect && perPageSelect.length > 0) {
|
|
155
|
-
<nav class="ng2-smart-pagination-per-page">
|
|
156
|
-
<label for="per-page">
|
|
157
|
-
Per Page:
|
|
158
|
-
</label>
|
|
159
|
-
<select (change)="onChangePerPage()" [(ngModel)]="currentPerPage" id="per-page">
|
|
160
|
-
@for (item of perPageSelect; track item) {
|
|
161
|
-
<option [value]="item">{{ item }}</option>
|
|
162
|
-
}
|
|
163
|
-
</select>
|
|
164
|
-
</nav>
|
|
165
|
-
}
|
|
166
|
-
`, isInline: true, styles: [".ng2-smart-pagination{display:inline-flex;font-size:.875em;padding:0}.ng2-smart-pagination .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.ng2-smart-pagination .ng2-smart-page-item{display:inline}.ng2-smart-pagination .page-link-next,.ng2-smart-pagination .page-link-prev{font-size:10px}:host{display:flex;justify-content:space-between}:host select{margin:1rem 0 1rem 1rem}:host label{margin:1rem 0 1rem 1rem;line-height:2.5rem}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
167
|
-
}
|
|
168
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PagerComponent, decorators: [{
|
|
169
|
-
type: Component,
|
|
170
|
-
args: [{ selector: 'ng2-smart-table-pager', template: `
|
|
171
|
-
@if (shouldShow()) {
|
|
172
|
-
<nav class="ng2-smart-pagination-nav">
|
|
173
|
-
<ul class="ng2-smart-pagination pagination">
|
|
174
|
-
<li class="ng2-smart-page-item page-item" [ngClass]="{disabled: getPage() == 1}">
|
|
175
|
-
<a class="ng2-smart-page-link page-link" href="#"
|
|
176
|
-
(click)="getPage() == 1 ? false : paginate(1)" aria-label="First">
|
|
177
|
-
<span aria-hidden="true">«</span>
|
|
178
|
-
<span class="sr-only">First</span>
|
|
179
|
-
</a>
|
|
180
|
-
</li>
|
|
181
|
-
<li class="ng2-smart-page-item page-item" [ngClass]="{disabled: getPage() == 1}">
|
|
182
|
-
<a class="ng2-smart-page-link page-link page-link-prev" href="#"
|
|
183
|
-
(click)="getPage() == 1 ? false : prev()" aria-label="Prev">
|
|
184
|
-
<span aria-hidden="true"><</span>
|
|
185
|
-
<span class="sr-only">Prev</span>
|
|
186
|
-
</a>
|
|
187
|
-
</li>
|
|
188
|
-
@for (page of getPages(); track page) {
|
|
189
|
-
<li class="ng2-smart-page-item page-item"
|
|
190
|
-
[ngClass]="{active: getPage() == page}">
|
|
191
|
-
@if (getPage() == page) {
|
|
192
|
-
<span class="ng2-smart-page-link page-link"
|
|
193
|
-
>{{ page }} <span class="sr-only">(current)</span></span>
|
|
194
|
-
}
|
|
195
|
-
@if (getPage() != page) {
|
|
196
|
-
<a class="ng2-smart-page-link page-link" href="#"
|
|
197
|
-
(click)="paginate(page)">{{ page }}</a>
|
|
198
|
-
}
|
|
199
|
-
</li>
|
|
200
|
-
}
|
|
201
|
-
<li class="ng2-smart-page-item page-item"
|
|
202
|
-
[ngClass]="{disabled: getPage() == getLast()}">
|
|
203
|
-
<a class="ng2-smart-page-link page-link page-link-next" href="#"
|
|
204
|
-
(click)="getPage() == getLast() ? false : next()" aria-label="Next">
|
|
205
|
-
<span aria-hidden="true">></span>
|
|
206
|
-
<span class="sr-only">Next</span>
|
|
207
|
-
</a>
|
|
208
|
-
</li>
|
|
209
|
-
<li class="ng2-smart-page-item page-item"
|
|
210
|
-
[ngClass]="{disabled: getPage() == getLast()}">
|
|
211
|
-
<a class="ng2-smart-page-link page-link" href="#"
|
|
212
|
-
(click)="getPage() == getLast() ? false : paginate(getLast())" aria-label="Last">
|
|
213
|
-
<span aria-hidden="true">»</span>
|
|
214
|
-
<span class="sr-only">Last</span>
|
|
215
|
-
</a>
|
|
216
|
-
</li>
|
|
217
|
-
</ul>
|
|
218
|
-
</nav>
|
|
219
|
-
}
|
|
220
|
-
|
|
221
|
-
@if (perPageSelect && perPageSelect.length > 0) {
|
|
222
|
-
<nav class="ng2-smart-pagination-per-page">
|
|
223
|
-
<label for="per-page">
|
|
224
|
-
Per Page:
|
|
225
|
-
</label>
|
|
226
|
-
<select (change)="onChangePerPage()" [(ngModel)]="currentPerPage" id="per-page">
|
|
227
|
-
@for (item of perPageSelect; track item) {
|
|
228
|
-
<option [value]="item">{{ item }}</option>
|
|
229
|
-
}
|
|
230
|
-
</select>
|
|
231
|
-
</nav>
|
|
232
|
-
}
|
|
233
|
-
`, styles: [".ng2-smart-pagination{display:inline-flex;font-size:.875em;padding:0}.ng2-smart-pagination .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.ng2-smart-pagination .ng2-smart-page-item{display:inline}.ng2-smart-pagination .page-link-next,.ng2-smart-pagination .page-link-prev{font-size:10px}:host{display:flex;justify-content:space-between}:host select{margin:1rem 0 1rem 1rem}:host label{margin:1rem 0 1rem 1rem;line-height:2.5rem}\n"] }]
|
|
234
|
-
}], propDecorators: { source: [{
|
|
235
|
-
type: Input
|
|
236
|
-
}], perPageSelect: [{
|
|
237
|
-
type: Input
|
|
238
|
-
}], changePage: [{
|
|
239
|
-
type: Output
|
|
240
|
-
}] } });
|
|
241
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmcyLXNtYXJ0LXRhYmxlL3NyYy9saWIvY29tcG9uZW50cy9wYWdlci9wYWdlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFFakcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtDQUErQyxDQUFDOzs7O0FBc0VoRixNQUFNLE9BQU8sY0FBYztJQXBFM0I7UUF1RVcsa0JBQWEsR0FBYSxFQUFFLENBQUM7UUFFNUIsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFFL0MsbUJBQWMsR0FBVyxDQUFDLENBQUM7UUFFakIsVUFBSyxHQUFhLEVBQUUsQ0FBQztRQUNyQixTQUFJLEdBQVcsQ0FBQyxDQUFDO1FBQ2pCLFVBQUssR0FBVyxDQUFDLENBQUM7UUFDbEIsWUFBTyxHQUFXLENBQUMsQ0FBQztLQTJHL0I7SUF2R0MsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUMxRCxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3BDLENBQUM7WUFDRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7Z0JBQ3RFLE1BQU0sTUFBTSxHQUFpQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNyRSxJQUFJLE1BQU0sRUFBRSxDQUFDO29CQUNY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WUFFdkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQStEUDs4QkFJTSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFSSxVQUFVO3NCQUFuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU21hcnRUYWJsZVBhZ2luZ0l0ZW0gfSBmcm9tICcuLy4uLy4uL2xpYi9pbnRlcmZhY2VzL3NtYXJ0LXRhYmxlLm1vZGVscyc7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExvY2FsRGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uL2xpYi9kYXRhLXNvdXJjZS9sb2NhbC9sb2NhbC5kYXRhLXNvdXJjZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25nMi1zbWFydC10YWJsZS1wYWdlcicsXG4gIHN0eWxlVXJsczogWycuL3BhZ2VyLmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlOiBgXG4gICAgQGlmIChzaG91bGRTaG93KCkpIHtcbiAgICAgIDxuYXYgY2xhc3M9XCJuZzItc21hcnQtcGFnaW5hdGlvbi1uYXZcIj5cbiAgICAgICAgPHVsIGNsYXNzPVwibmcyLXNtYXJ0LXBhZ2luYXRpb24gcGFnaW5hdGlvblwiPlxuICAgICAgICAgIDxsaSBjbGFzcz1cIm5nMi1zbWFydC1wYWdlLWl0ZW0gcGFnZS1pdGVtXCIgW25nQ2xhc3NdPVwie2Rpc2FibGVkOiBnZXRQYWdlKCkgPT0gMX1cIj5cbiAgICAgICAgICAgIDxhIGNsYXNzPVwibmcyLXNtYXJ0LXBhZ2UtbGluayBwYWdlLWxpbmtcIiBocmVmPVwiI1wiXG4gICAgICAgICAgICAgIChjbGljayk9XCJnZXRQYWdlKCkgPT0gMSA/IGZhbHNlIDogcGFnaW5hdGUoMSlcIiBhcmlhLWxhYmVsPVwiRmlyc3RcIj5cbiAgICAgICAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JmxhcXVvOzwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+Rmlyc3Q8L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgICA8bGkgY2xhc3M9XCJuZzItc21hcnQtcGFnZS1pdGVtIHBhZ2UtaXRlbVwiIFtuZ0NsYXNzXT1cIntkaXNhYmxlZDogZ2V0UGFnZSgpID09IDF9XCI+XG4gICAgICAgICAgICA8YSBjbGFzcz1cIm5nMi1zbWFydC1wYWdlLWxpbmsgcGFnZS1saW5rIHBhZ2UtbGluay1wcmV2XCIgaHJlZj1cIiNcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiZ2V0UGFnZSgpID09IDEgPyBmYWxzZSA6IHByZXYoKVwiIGFyaWEtbGFiZWw9XCJQcmV2XCI+XG4gICAgICAgICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiZsdDs8L3NwYW4+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3Itb25seVwiPlByZXY8L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgICBAZm9yIChwYWdlIG9mIGdldFBhZ2VzKCk7IHRyYWNrIHBhZ2UpIHtcbiAgICAgICAgICAgIDxsaSBjbGFzcz1cIm5nMi1zbWFydC1wYWdlLWl0ZW0gcGFnZS1pdGVtXCJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie2FjdGl2ZTogZ2V0UGFnZSgpID09IHBhZ2V9XCI+XG4gICAgICAgICAgICAgIEBpZiAoZ2V0UGFnZSgpID09IHBhZ2UpIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5nMi1zbWFydC1wYWdlLWxpbmsgcGFnZS1saW5rXCJcbiAgICAgICAgICAgICAgICAgID57eyBwYWdlIH19IDxzcGFuIGNsYXNzPVwic3Itb25seVwiPihjdXJyZW50KTwvc3Bhbj48L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAoZ2V0UGFnZSgpICE9IHBhZ2UpIHtcbiAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwibmcyLXNtYXJ0LXBhZ2UtbGluayBwYWdlLWxpbmtcIiBocmVmPVwiI1wiXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwicGFnaW5hdGUocGFnZSlcIj57eyBwYWdlIH19PC9hPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxsaSBjbGFzcz1cIm5nMi1zbWFydC1wYWdlLWl0ZW0gcGFnZS1pdGVtXCJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie2Rpc2FibGVkOiBnZXRQYWdlKCkgPT0gZ2V0TGFzdCgpfVwiPlxuICAgICAgICAgICAgICA8YSBjbGFzcz1cIm5nMi1zbWFydC1wYWdlLWxpbmsgcGFnZS1saW5rIHBhZ2UtbGluay1uZXh0XCIgaHJlZj1cIiNcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJnZXRQYWdlKCkgPT0gZ2V0TGFzdCgpID8gZmFsc2UgOiBuZXh0KClcIiBhcmlhLWxhYmVsPVwiTmV4dFwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiZndDs8L3NwYW4+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+TmV4dDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDxsaSBjbGFzcz1cIm5nMi1zbWFydC1wYWdlLWl0ZW0gcGFnZS1pdGVtXCJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie2Rpc2FibGVkOiBnZXRQYWdlKCkgPT0gZ2V0TGFzdCgpfVwiPlxuICAgICAgICAgICAgICA8YSBjbGFzcz1cIm5nMi1zbWFydC1wYWdlLWxpbmsgcGFnZS1saW5rXCIgaHJlZj1cIiNcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJnZXRQYWdlKCkgPT0gZ2V0TGFzdCgpID8gZmFsc2UgOiBwYWdpbmF0ZShnZXRMYXN0KCkpXCIgYXJpYS1sYWJlbD1cIkxhc3RcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIj4mcmFxdW87PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3Itb25seVwiPkxhc3Q8L3NwYW4+XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgPC91bD5cbiAgICAgICAgPC9uYXY+XG4gICAgICB9XG4gICAgXG4gICAgICBAaWYgKHBlclBhZ2VTZWxlY3QgJiYgcGVyUGFnZVNlbGVjdC5sZW5ndGggPiAwKSB7XG4gICAgICAgIDxuYXYgY2xhc3M9XCJuZzItc21hcnQtcGFnaW5hdGlvbi1wZXItcGFnZVwiPlxuICAgICAgICAgIDxsYWJlbCBmb3I9XCJwZXItcGFnZVwiPlxuICAgICAgICAgICAgUGVyIFBhZ2U6XG4gICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICA8c2VsZWN0IChjaGFuZ2UpPVwib25DaGFuZ2VQZXJQYWdlKClcIiBbKG5nTW9kZWwpXT1cImN1cnJlbnRQZXJQYWdlXCIgaWQ9XCJwZXItcGFnZVwiPlxuICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBwZXJQYWdlU2VsZWN0OyB0cmFjayBpdGVtKSB7XG4gICAgICAgICAgICAgIDxvcHRpb24gW3ZhbHVlXT1cIml0ZW1cIj57eyBpdGVtIH19PC9vcHRpb24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgIDwvbmF2PlxuICAgICAgfVxuICAgIGAsXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcblxuICBASW5wdXQoKSBzb3VyY2UhOiBMb2NhbERhdGFTb3VyY2U7XG4gIEBJbnB1dCgpIHBlclBhZ2VTZWxlY3Q6IG51bWJlcltdID0gW107XG5cbiAgQE91dHB1dCgpIGNoYW5nZVBhZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBjdXJyZW50UGVyUGFnZTogbnVtYmVyID0gMDtcblxuICBwcm90ZWN0ZWQgcGFnZXM6IG51bWJlcltdID0gW107XG4gIHByb3RlY3RlZCBwYWdlOiBudW1iZXIgPSAxO1xuICBwcm90ZWN0ZWQgY291bnQ6IG51bWJlciA9IDA7XG4gIHByb3RlY3RlZCBwZXJQYWdlOiBudW1iZXIgPSAwO1xuXG4gIHByb3RlY3RlZCBkYXRhQ2hhbmdlZFN1YjogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkO1xuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1snc291cmNlJ10pIHtcbiAgICAgIGlmICghY2hhbmdlc1snc291cmNlJ10uZmlyc3RDaGFuZ2UgJiYgdGhpcy5kYXRhQ2hhbmdlZFN1Yikge1xuICAgICAgICB0aGlzLmRhdGFDaGFuZ2VkU3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICB9XG4gICAgICB0aGlzLmRhdGFDaGFuZ2VkU3ViID0gdGhpcy5zb3VyY2Uub25DaGFuZ2VkKCkuc3Vic2NyaWJlKChkYXRhQ2hhbmdlcykgPT4ge1xuICAgICAgICBjb25zdCBwYWdpbmc6IFNtYXJ0VGFibGVQYWdpbmdJdGVtIHwgZmFsc2UgPSB0aGlzLnNvdXJjZS5nZXRQYWdpbmcoKTtcbiAgICAgICAgaWYgKHBhZ2luZykge1xuICAgICAgICAgIHRoaXMucGFnZSA9IHBhZ2luZy5wYWdlO1xuICAgICAgICAgIHRoaXMucGVyUGFnZSA9IHBhZ2luZy5wZXJQYWdlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY3VycmVudFBlclBhZ2UgPSB0aGlzLnBlclBhZ2U7XG4gICAgICAgIHRoaXMuY291bnQgPSB0aGlzLnNvdXJjZS5jb3VudCgpO1xuICAgICAgICBpZiAodGhpcy5pc1BhZ2VPdXRPZkJvdW5jZSgpKSB7XG4gICAgICAgICAgdGhpcy5zb3VyY2Uuc2V0UGFnZSgtLXRoaXMucGFnZSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnByb2Nlc3NQYWdlQ2hhbmdlKGRhdGFDaGFuZ2VzKTtcbiAgICAgICAgdGhpcy5pbml0UGFnZXMoKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBXZSBjaGFuZ2UgdGhlIHBhZ2UgaGVyZSBkZXBlbmRpbmcgb24gdGhlIGFjdGlvbiBwZXJmb3JtZWQgYWdhaW5zdCBkYXRhIHNvdXJjZVxuICAgKiBpZiBhIG5ldyBlbGVtZW50IHdhcyBhZGRlZCB0byB0aGUgZW5kIG9mIHRoZSB0YWJsZSAtIHRoZW4gY2hhbmdlIHRoZSBwYWdlIHRvIHRoZSBsYXN0XG4gICAqIGlmIGEgbmV3IGVsZW1lbnQgd2FzIGFkZGVkIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIHRhYmxlIC0gdGhlbiB0byB0aGUgZmlyc3QgcGFnZVxuICAgKiBAcGFyYW0gY2hhbmdlc1xuICAgKi9cbiAgcHJvY2Vzc1BhZ2VDaGFuZ2UoY2hhbmdlczogYW55KSB7XG4gICAgaWYgKGNoYW5nZXNbJ2FjdGlvbiddID09PSAncHJlcGVuZCcpIHtcbiAgICAgIHRoaXMuc291cmNlLnNldFBhZ2UoMSk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzWydhY3Rpb24nXSA9PT0gJ2FwcGVuZCcpIHtcbiAgICAgIHRoaXMuc291cmNlLnNldFBhZ2UodGhpcy5nZXRMYXN0KCkpO1xuICAgIH1cbiAgfVxuXG4gIHNob3VsZFNob3coKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc291cmNlLmNvdW50KCkgPiB0aGlzLnBlclBhZ2U7XG4gIH1cblxuICBwYWdpbmF0ZShwYWdlOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICB0aGlzLnNvdXJjZS5zZXRQYWdlKHBhZ2UpO1xuICAgIHRoaXMucGFnZSA9IHBhZ2U7XG4gICAgdGhpcy5jaGFuZ2VQYWdlLmVtaXQoeyBwYWdlIH0pO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIG5leHQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucGFnaW5hdGUodGhpcy5nZXRQYWdlKCkgKyAxKTtcbiAgfVxuXG4gIHByZXYoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucGFnaW5hdGUodGhpcy5nZXRQYWdlKCkgLSAxKTtcbiAgfVxuXG4gIGdldFBhZ2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wYWdlO1xuICB9XG5cbiAgZ2V0UGFnZXMoKTogbnVtYmVyW10ge1xuICAgIHJldHVybiB0aGlzLnBhZ2VzO1xuICB9XG5cbiAgZ2V0TGFzdCgpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLmNlaWwodGhpcy5jb3VudCAvIHRoaXMucGVyUGFnZSk7XG4gIH1cblxuICBpc1BhZ2VPdXRPZkJvdW5jZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKHRoaXMucGFnZSAqIHRoaXMucGVyUGFnZSkgPj0gKHRoaXMuY291bnQgKyB0aGlzLnBlclBhZ2UpICYmIHRoaXMucGFnZSA+IDE7XG4gIH1cblxuICBpbml0UGFnZXMoKSB7XG4gICAgY29uc3QgcGFnZXNDb3VudCA9IHRoaXMuZ2V0TGFzdCgpO1xuICAgIGxldCBzaG93UGFnZXNDb3VudCA9IDQ7XG4gICAgc2hvd1BhZ2VzQ291bnQgPSBwYWdlc0NvdW50IDwgc2hvd1BhZ2VzQ291bnQgPyBwYWdlc0NvdW50IDogc2hvd1BhZ2VzQ291bnQ7XG4gICAgdGhpcy5wYWdlcyA9IFtdO1xuXG4gICAgaWYgKHRoaXMuc2hvdWxkU2hvdygpKSB7XG5cbiAgICAgIGxldCBtaWRkbGVPbmUgPSBNYXRoLmNlaWwoc2hvd1BhZ2VzQ291bnQgLyAyKTtcbiAgICAgIG1pZGRsZU9uZSA9IHRoaXMucGFnZSA+PSBtaWRkbGVPbmUgPyB0aGlzLnBhZ2UgOiBtaWRkbGVPbmU7XG5cbiAgICAgIGxldCBsYXN0T25lID0gbWlkZGxlT25lICsgTWF0aC5mbG9vcihzaG93UGFnZXNDb3VudCAvIDIpO1xuICAgICAgbGFzdE9uZSA9IGxhc3RPbmUgPj0gcGFnZXNDb3VudCA/IHBhZ2VzQ291bnQgOiBsYXN0T25lO1xuXG4gICAgICBjb25zdCBmaXJzdE9uZSA9IGxhc3RPbmUgLSBzaG93UGFnZXNDb3VudCArIDE7XG5cbiAgICAgIGZvciAobGV0IGkgPSBmaXJzdE9uZTsgaSA8PSBsYXN0T25lOyBpKyspIHtcbiAgICAgICAgdGhpcy5wYWdlcy5wdXNoKGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uQ2hhbmdlUGVyUGFnZSgpIHtcbiAgICBjb25zdCBwYWdpbmc6IFNtYXJ0VGFibGVQYWdpbmdJdGVtIHwgZmFsc2UgPSB0aGlzLnNvdXJjZS5nZXRQYWdpbmcoKTsgXG4gICAgaWYgKHBhZ2luZykge1xuICAgICAgcGFnaW5nLnBlclBhZ2UgPSB0aGlzLmN1cnJlbnRQZXJQYWdlICogMTtcbiAgICB9XG4gICAgdGhpcy5zb3VyY2UucmVmcmVzaCgpO1xuICAgIHRoaXMuaW5pdFBhZ2VzKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { FormsModule } from '@angular/forms';
|
|
4
|
-
import { PagerComponent } from './pager.component';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class PagerModule {
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PagerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: PagerModule, declarations: [PagerComponent], imports: [CommonModule,
|
|
9
|
-
FormsModule], exports: [PagerComponent] }); }
|
|
10
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PagerModule, imports: [CommonModule,
|
|
11
|
-
FormsModule] }); }
|
|
12
|
-
}
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PagerModule, decorators: [{
|
|
14
|
-
type: NgModule,
|
|
15
|
-
args: [{
|
|
16
|
-
imports: [
|
|
17
|
-
CommonModule,
|
|
18
|
-
FormsModule,
|
|
19
|
-
],
|
|
20
|
-
declarations: [
|
|
21
|
-
PagerComponent,
|
|
22
|
-
],
|
|
23
|
-
exports: [
|
|
24
|
-
PagerComponent,
|
|
25
|
-
],
|
|
26
|
-
}]
|
|
27
|
-
}] });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmcyLXNtYXJ0LXRhYmxlL3NyYy9saWIvY29tcG9uZW50cy9wYWdlci9wYWdlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFjbkQsTUFBTSxPQUFPLFdBQVc7K0dBQVgsV0FBVztnSEFBWCxXQUFXLGlCQU5wQixjQUFjLGFBSmQsWUFBWTtZQUNaLFdBQVcsYUFNWCxjQUFjO2dIQUdMLFdBQVcsWUFWcEIsWUFBWTtZQUNaLFdBQVc7OzRGQVNGLFdBQVc7a0JBWnZCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVztxQkFDWjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osY0FBYztxQkFDZjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsY0FBYztxQkFDZjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFBhZ2VyQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBQYWdlckNvbXBvbmVudCxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFBhZ2VyQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBQYWdlck1vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -1,195 +0,0 @@
|
|
|
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
|
-
export class TbodyCreateCancelComponent {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.cancelButtonContent = "";
|
|
8
|
-
this.saveButtonContent = "";
|
|
9
|
-
}
|
|
10
|
-
onSave(event) {
|
|
11
|
-
event.preventDefault();
|
|
12
|
-
event.stopPropagation();
|
|
13
|
-
this.grid.save(this.row, this.editConfirm);
|
|
14
|
-
}
|
|
15
|
-
onCancelEdit(event) {
|
|
16
|
-
event.preventDefault();
|
|
17
|
-
event.stopPropagation();
|
|
18
|
-
this.editCancel.emit(true);
|
|
19
|
-
this.row.isInEditing = false;
|
|
20
|
-
}
|
|
21
|
-
ngOnChanges() {
|
|
22
|
-
this.saveButtonContent = this.grid.getSetting("edit.saveButtonContent", "save");
|
|
23
|
-
this.cancelButtonContent = this.grid.getSetting("edit.cancelButtonContent", "cancel");
|
|
24
|
-
}
|
|
25
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TbodyCreateCancelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: TbodyCreateCancelComponent, selector: "ng2-st-tbody-create-cancel", inputs: { grid: "grid", row: "row", editConfirm: "editConfirm", editCancel: "editCancel" }, usesOnChanges: true, ngImport: i0, template: `
|
|
27
|
-
@if (!row.pending) {
|
|
28
|
-
<a
|
|
29
|
-
href="#"
|
|
30
|
-
[id]="'row-' + row.index + '_editing-confirm-button'"
|
|
31
|
-
class="ng2-smart-action ng2-smart-action-edit-save"
|
|
32
|
-
[innerHTML]="saveButtonContent"
|
|
33
|
-
(click)="onSave($event)"
|
|
34
|
-
></a>
|
|
35
|
-
<a
|
|
36
|
-
href="#"
|
|
37
|
-
[id]="'row-' + row.index + '_editing-cancel-button'"
|
|
38
|
-
class="ng2-smart-action ng2-smart-action-edit-cancel"
|
|
39
|
-
[innerHTML]="cancelButtonContent"
|
|
40
|
-
(click)="onCancelEdit($event)"
|
|
41
|
-
></a>
|
|
42
|
-
} @else {
|
|
43
|
-
<div style="display: flex;">
|
|
44
|
-
<svg
|
|
45
|
-
(click)="$event.stopPropagation()"
|
|
46
|
-
style="height: 2rem; width: 2rem;"
|
|
47
|
-
version="1.1"
|
|
48
|
-
id="L9"
|
|
49
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
50
|
-
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
51
|
-
x="0px"
|
|
52
|
-
y="0px"
|
|
53
|
-
viewBox="0 0 100 100"
|
|
54
|
-
enable-background="new 0 0 0 0"
|
|
55
|
-
xml:space="preserve"
|
|
56
|
-
>
|
|
57
|
-
<path
|
|
58
|
-
fill="#e9e9e9"
|
|
59
|
-
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"
|
|
60
|
-
>
|
|
61
|
-
<animateTransform
|
|
62
|
-
attributeName="transform"
|
|
63
|
-
attributeType="XML"
|
|
64
|
-
type="rotate"
|
|
65
|
-
dur="1s"
|
|
66
|
-
from="0 50 50"
|
|
67
|
-
to="360 50 50"
|
|
68
|
-
repeatCount="indefinite"
|
|
69
|
-
/>
|
|
70
|
-
</path>
|
|
71
|
-
</svg>
|
|
72
|
-
<svg
|
|
73
|
-
(click)="$event.stopPropagation()"
|
|
74
|
-
style="height: 2rem; width: 2rem; "
|
|
75
|
-
version="1.1"
|
|
76
|
-
id="L9"
|
|
77
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
78
|
-
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
79
|
-
x="0px"
|
|
80
|
-
y="0px"
|
|
81
|
-
viewBox="0 0 100 100"
|
|
82
|
-
enable-background="new 0 0 0 0"
|
|
83
|
-
xml:space="preserve"
|
|
84
|
-
>
|
|
85
|
-
<path
|
|
86
|
-
fill="#e9e9e9"
|
|
87
|
-
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"
|
|
88
|
-
>
|
|
89
|
-
<animateTransform
|
|
90
|
-
attributeName="transform"
|
|
91
|
-
attributeType="XML"
|
|
92
|
-
type="rotate"
|
|
93
|
-
dur="1s"
|
|
94
|
-
from="0 50 50"
|
|
95
|
-
to="360 50 50"
|
|
96
|
-
repeatCount="indefinite"
|
|
97
|
-
/>
|
|
98
|
-
</path>
|
|
99
|
-
</svg>
|
|
100
|
-
</div>
|
|
101
|
-
}
|
|
102
|
-
`, isInline: true }); }
|
|
103
|
-
}
|
|
104
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TbodyCreateCancelComponent, decorators: [{
|
|
105
|
-
type: Component,
|
|
106
|
-
args: [{
|
|
107
|
-
selector: "ng2-st-tbody-create-cancel",
|
|
108
|
-
template: `
|
|
109
|
-
@if (!row.pending) {
|
|
110
|
-
<a
|
|
111
|
-
href="#"
|
|
112
|
-
[id]="'row-' + row.index + '_editing-confirm-button'"
|
|
113
|
-
class="ng2-smart-action ng2-smart-action-edit-save"
|
|
114
|
-
[innerHTML]="saveButtonContent"
|
|
115
|
-
(click)="onSave($event)"
|
|
116
|
-
></a>
|
|
117
|
-
<a
|
|
118
|
-
href="#"
|
|
119
|
-
[id]="'row-' + row.index + '_editing-cancel-button'"
|
|
120
|
-
class="ng2-smart-action ng2-smart-action-edit-cancel"
|
|
121
|
-
[innerHTML]="cancelButtonContent"
|
|
122
|
-
(click)="onCancelEdit($event)"
|
|
123
|
-
></a>
|
|
124
|
-
} @else {
|
|
125
|
-
<div style="display: flex;">
|
|
126
|
-
<svg
|
|
127
|
-
(click)="$event.stopPropagation()"
|
|
128
|
-
style="height: 2rem; width: 2rem;"
|
|
129
|
-
version="1.1"
|
|
130
|
-
id="L9"
|
|
131
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
132
|
-
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
133
|
-
x="0px"
|
|
134
|
-
y="0px"
|
|
135
|
-
viewBox="0 0 100 100"
|
|
136
|
-
enable-background="new 0 0 0 0"
|
|
137
|
-
xml:space="preserve"
|
|
138
|
-
>
|
|
139
|
-
<path
|
|
140
|
-
fill="#e9e9e9"
|
|
141
|
-
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"
|
|
142
|
-
>
|
|
143
|
-
<animateTransform
|
|
144
|
-
attributeName="transform"
|
|
145
|
-
attributeType="XML"
|
|
146
|
-
type="rotate"
|
|
147
|
-
dur="1s"
|
|
148
|
-
from="0 50 50"
|
|
149
|
-
to="360 50 50"
|
|
150
|
-
repeatCount="indefinite"
|
|
151
|
-
/>
|
|
152
|
-
</path>
|
|
153
|
-
</svg>
|
|
154
|
-
<svg
|
|
155
|
-
(click)="$event.stopPropagation()"
|
|
156
|
-
style="height: 2rem; width: 2rem; "
|
|
157
|
-
version="1.1"
|
|
158
|
-
id="L9"
|
|
159
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
160
|
-
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
161
|
-
x="0px"
|
|
162
|
-
y="0px"
|
|
163
|
-
viewBox="0 0 100 100"
|
|
164
|
-
enable-background="new 0 0 0 0"
|
|
165
|
-
xml:space="preserve"
|
|
166
|
-
>
|
|
167
|
-
<path
|
|
168
|
-
fill="#e9e9e9"
|
|
169
|
-
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"
|
|
170
|
-
>
|
|
171
|
-
<animateTransform
|
|
172
|
-
attributeName="transform"
|
|
173
|
-
attributeType="XML"
|
|
174
|
-
type="rotate"
|
|
175
|
-
dur="1s"
|
|
176
|
-
from="0 50 50"
|
|
177
|
-
to="360 50 50"
|
|
178
|
-
repeatCount="indefinite"
|
|
179
|
-
/>
|
|
180
|
-
</path>
|
|
181
|
-
</svg>
|
|
182
|
-
</div>
|
|
183
|
-
}
|
|
184
|
-
`,
|
|
185
|
-
}]
|
|
186
|
-
}], propDecorators: { grid: [{
|
|
187
|
-
type: Input
|
|
188
|
-
}], row: [{
|
|
189
|
-
type: Input
|
|
190
|
-
}], editConfirm: [{
|
|
191
|
-
type: Input
|
|
192
|
-
}], editCancel: [{
|
|
193
|
-
type: Input
|
|
194
|
-
}] } });
|
|
195
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNhbmNlbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZzItc21hcnQtdGFibGUvc3JjL2xpYi9jb21wb25lbnRzL3Rib2R5L2NlbGxzL2NyZWF0ZS1jYW5jZWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQWtGekMsTUFBTSxPQUFPLDBCQUEwQjtJQWhGdkM7UUFzRkUsd0JBQW1CLEdBQVcsRUFBRSxDQUFDO1FBQ2pDLHNCQUFpQixHQUFXLEVBQUUsQ0FBQztLQXlCaEM7SUF2QkMsTUFBTSxDQUFDLEtBQVU7UUFDZixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxZQUFZLENBQUMsS0FBVTtRQUNyQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUMvQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FDM0Msd0JBQXdCLEVBQ3hCLE1BQU0sQ0FDUCxDQUFDO1FBQ0YsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUM3QywwQkFBMEIsRUFDMUIsUUFBUSxDQUNULENBQUM7SUFDSixDQUFDOytHQS9CVSwwQkFBMEI7bUdBQTFCLDBCQUEwQixtTEE5RTNCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBNEVQOzs0RkFFUSwwQkFBMEI7a0JBaEZ0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQTRFUDtpQkFDSjs4QkFFVSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuaW1wb3J0IHsgUm93IH0gZnJvbSBcIi4uLy4uLy4uL2xpYi9kYXRhLXNldC9yb3dcIjtcbmltcG9ydCB7IEdyaWQgfSBmcm9tIFwiLi4vLi4vLi4vbGliL2dyaWRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcIm5nMi1zdC10Ym9keS1jcmVhdGUtY2FuY2VsXCIsXG4gIHRlbXBsYXRlOiBgXG4gICAgQGlmICghcm93LnBlbmRpbmcpIHtcbiAgICAgIDxhXG4gICAgICAgIGhyZWY9XCIjXCJcbiAgICAgICAgW2lkXT1cIidyb3ctJyArIHJvdy5pbmRleCArICdfZWRpdGluZy1jb25maXJtLWJ1dHRvbidcIlxuICAgICAgICBjbGFzcz1cIm5nMi1zbWFydC1hY3Rpb24gbmcyLXNtYXJ0LWFjdGlvbi1lZGl0LXNhdmVcIlxuICAgICAgICBbaW5uZXJIVE1MXT1cInNhdmVCdXR0b25Db250ZW50XCJcbiAgICAgICAgKGNsaWNrKT1cIm9uU2F2ZSgkZXZlbnQpXCJcbiAgICAgID48L2E+XG4gICAgICA8YVxuICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgIFtpZF09XCIncm93LScgKyByb3cuaW5kZXggKyAnX2VkaXRpbmctY2FuY2VsLWJ1dHRvbidcIlxuICAgICAgICBjbGFzcz1cIm5nMi1zbWFydC1hY3Rpb24gbmcyLXNtYXJ0LWFjdGlvbi1lZGl0LWNhbmNlbFwiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiY2FuY2VsQnV0dG9uQ29udGVudFwiXG4gICAgICAgIChjbGljayk9XCJvbkNhbmNlbEVkaXQoJGV2ZW50KVwiXG4gICAgICA+PC9hPlxuICAgIH0gQGVsc2Uge1xuICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7XCI+XG4gICAgICAgIDxzdmdcbiAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICBzdHlsZT1cImhlaWdodDogMnJlbTsgd2lkdGg6IDJyZW07XCJcbiAgICAgICAgICB2ZXJzaW9uPVwiMS4xXCJcbiAgICAgICAgICBpZD1cIkw5XCJcbiAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIlxuICAgICAgICAgIHg9XCIwcHhcIlxuICAgICAgICAgIHk9XCIwcHhcIlxuICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTAwIDEwMFwiXG4gICAgICAgICAgZW5hYmxlLWJhY2tncm91bmQ9XCJuZXcgMCAwIDAgMFwiXG4gICAgICAgICAgeG1sOnNwYWNlPVwicHJlc2VydmVcIlxuICAgICAgICAgID5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgZmlsbD1cIiNlOWU5ZTlcIlxuICAgICAgICAgICAgZD1cIk03Myw1MGMwLTEyLjctMTAuMy0yMy0yMy0yM1MyNywzNy4zLDI3LDUwIE0zMC45LDUwYzAtMTAuNSw4LjUtMTkuMSwxOS4xLTE5LjFTNjkuMSwzOS41LDY5LjEsNTBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPGFuaW1hdGVUcmFuc2Zvcm1cbiAgICAgICAgICAgICAgYXR0cmlidXRlTmFtZT1cInRyYW5zZm9ybVwiXG4gICAgICAgICAgICAgIGF0dHJpYnV0ZVR5cGU9XCJYTUxcIlxuICAgICAgICAgICAgICB0eXBlPVwicm90YXRlXCJcbiAgICAgICAgICAgICAgZHVyPVwiMXNcIlxuICAgICAgICAgICAgICBmcm9tPVwiMCA1MCA1MFwiXG4gICAgICAgICAgICAgIHRvPVwiMzYwIDUwIDUwXCJcbiAgICAgICAgICAgICAgcmVwZWF0Q291bnQ9XCJpbmRlZmluaXRlXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L3BhdGg+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgICA8c3ZnXG4gICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgc3R5bGU9XCJoZWlnaHQ6IDJyZW07IHdpZHRoOiAycmVtOyBcIlxuICAgICAgICAgIHZlcnNpb249XCIxLjFcIlxuICAgICAgICAgIGlkPVwiTDlcIlxuICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXG4gICAgICAgICAgeD1cIjBweFwiXG4gICAgICAgICAgeT1cIjBweFwiXG4gICAgICAgICAgdmlld0JveD1cIjAgMCAxMDAgMTAwXCJcbiAgICAgICAgICBlbmFibGUtYmFja2dyb3VuZD1cIm5ldyAwIDAgMCAwXCJcbiAgICAgICAgICB4bWw6c3BhY2U9XCJwcmVzZXJ2ZVwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICBmaWxsPVwiI2U5ZTllOVwiXG4gICAgICAgICAgICBkPVwiTTczLDUwYzAtMTIuNy0xMC4zLTIzLTIzLTIzUzI3LDM3LjMsMjcsNTAgTTMwLjksNTBjMC0xMC41LDguNS0xOS4xLDE5LjEtMTkuMVM2OS4xLDM5LjUsNjkuMSw1MFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8YW5pbWF0ZVRyYW5zZm9ybVxuICAgICAgICAgICAgICBhdHRyaWJ1dGVOYW1lPVwidHJhbnNmb3JtXCJcbiAgICAgICAgICAgICAgYXR0cmlidXRlVHlwZT1cIlhNTFwiXG4gICAgICAgICAgICAgIHR5cGU9XCJyb3RhdGVcIlxuICAgICAgICAgICAgICBkdXI9XCIxc1wiXG4gICAgICAgICAgICAgIGZyb209XCIwIDUwIDUwXCJcbiAgICAgICAgICAgICAgdG89XCIzNjAgNTAgNTBcIlxuICAgICAgICAgICAgICByZXBlYXRDb3VudD1cImluZGVmaW5pdGVcIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgIDwvcGF0aD5cbiAgICAgICAgPC9zdmc+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gICAgYCxcbn0pXG5leHBvcnQgY2xhc3MgVGJvZHlDcmVhdGVDYW5jZWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBncmlkITogR3JpZDtcbiAgQElucHV0KCkgcm93ITogUm93O1xuICBASW5wdXQoKSBlZGl0Q29uZmlybSE6IEV2ZW50RW1pdHRlcjxhbnk+O1xuICBASW5wdXQoKSBlZGl0Q2FuY2VsITogRXZlbnRFbWl0dGVyPGFueT47XG5cbiAgY2FuY2VsQnV0dG9uQ29udGVudDogc3RyaW5nID0gXCJcIjtcbiAgc2F2ZUJ1dHRvbkNvbnRlbnQ6IHN0cmluZyA9IFwiXCI7XG5cbiAgb25TYXZlKGV2ZW50OiBhbnkpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuZ3JpZC5zYXZlKHRoaXMucm93LCB0aGlzLmVkaXRDb25maXJtKTtcbiAgfVxuXG4gIG9uQ2FuY2VsRWRpdChldmVudDogYW55KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmVkaXRDYW5jZWwuZW1pdCh0cnVlKTtcbiAgICB0aGlzLnJvdy5pc0luRWRpdGluZyA9IGZhbHNlO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgdGhpcy5zYXZlQnV0dG9uQ29udGVudCA9IHRoaXMuZ3JpZC5nZXRTZXR0aW5nKFxuICAgICAgXCJlZGl0LnNhdmVCdXR0b25Db250ZW50XCIsXG4gICAgICBcInNhdmVcIlxuICAgICk7XG4gICAgdGhpcy5jYW5jZWxCdXR0b25Db250ZW50ID0gdGhpcy5ncmlkLmdldFNldHRpbmcoXG4gICAgICBcImVkaXQuY2FuY2VsQnV0dG9uQ29udGVudFwiLFxuICAgICAgXCJjYW5jZWxcIlxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,59 +0,0 @@
|
|
|
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
|
-
export class TbodyCustomComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.custom = new EventEmitter();
|
|
9
|
-
}
|
|
10
|
-
onCustom(action) {
|
|
11
|
-
this.custom.emit({
|
|
12
|
-
action: action.name,
|
|
13
|
-
data: this.row.getData(),
|
|
14
|
-
source: this.source,
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
customActions() {
|
|
18
|
-
return this.grid.getSetting("actions.custom");
|
|
19
|
-
}
|
|
20
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TbodyCustomComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: TbodyCustomComponent, selector: "ng2-st-tbody-custom", inputs: { grid: "grid", row: "row", source: "source" }, outputs: { custom: "custom" }, ngImport: i0, template: `
|
|
22
|
-
@for (action of customActions(); track $index) {
|
|
23
|
-
<a
|
|
24
|
-
[id]="'row-' + row.index + '_action-' + action.name + '-button'"
|
|
25
|
-
href="#"
|
|
26
|
-
class="ng2-smart-action ng2-smart-action-custom-custom"
|
|
27
|
-
[innerHTML]="action.title"
|
|
28
|
-
(click)="$event.stopPropagation(); $event.preventDefault(); onCustom(action)"
|
|
29
|
-
></a>
|
|
30
|
-
}
|
|
31
|
-
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
32
|
-
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TbodyCustomComponent, decorators: [{
|
|
34
|
-
type: Component,
|
|
35
|
-
args: [{
|
|
36
|
-
selector: "ng2-st-tbody-custom",
|
|
37
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
38
|
-
template: `
|
|
39
|
-
@for (action of customActions(); track $index) {
|
|
40
|
-
<a
|
|
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
|
-
}]
|
|
50
|
-
}], propDecorators: { grid: [{
|
|
51
|
-
type: Input
|
|
52
|
-
}], row: [{
|
|
53
|
-
type: Input
|
|
54
|
-
}], source: [{
|
|
55
|
-
type: Input
|
|
56
|
-
}], custom: [{
|
|
57
|
-
type: Output
|
|
58
|
-
}] } });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nMi1zbWFydC10YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdGJvZHkvY2VsbHMvY3VzdG9tLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRXJGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFrQnpDLE1BQU0sT0FBTyxvQkFBb0I7SUFmakM7UUFtQlksV0FBTSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7S0FhNUM7SUFYQyxRQUFRLENBQUMsTUFBVztRQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztZQUNmLE1BQU0sRUFBRSxNQUFNLENBQUMsSUFBSTtZQUNuQixJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUU7WUFDeEIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1NBQ3BCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBdUMsZ0JBQWdCLENBQUMsQ0FBQztJQUN0RixDQUFDOytHQWhCVSxvQkFBb0I7bUdBQXBCLG9CQUFvQixrSkFackI7Ozs7Ozs7Ozs7S0FVUDs7NEZBRVEsb0JBQW9CO2tCQWZoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7S0FVUDtpQkFDSjs4QkFFVSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDSSxNQUFNO3NCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBSb3cgfSBmcm9tIFwiLi4vLi4vLi4vbGliL2RhdGEtc2V0L3Jvd1wiO1xuaW1wb3J0IHsgTG9jYWxEYXRhU291cmNlIH0gZnJvbSBcIi4vLi4vLi4vLi4vbGliL2RhdGEtc291cmNlL2xvY2FsL2xvY2FsLmRhdGEtc291cmNlXCI7XG5cbmltcG9ydCB7IEdyaWQgfSBmcm9tIFwiLi4vLi4vLi4vbGliL2dyaWRcIjtcbmltcG9ydCB7IFNtYXJ0VGFibGVDdXN0b21BY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vbGliL2ludGVyZmFjZXMvc21hcnQtdGFibGUubW9kZWxzXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJuZzItc3QtdGJvZHktY3VzdG9tXCIsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogYFxuICAgIEBmb3IgKGFjdGlvbiBvZiBjdXN0b21BY3Rpb25zKCk7IHRyYWNrICRpbmRleCkge1xuICAgICAgPGFcbiAgICAgICAgW2lkXT1cIidyb3ctJyArIHJvdy5pbmRleCArICdfYWN0aW9uLScgKyBhY3Rpb24ubmFtZSArICctYnV0dG9uJ1wiXG4gICAgICAgIGhyZWY9XCIjXCJcbiAgICAgICAgY2xhc3M9XCJuZzItc21hcnQtYWN0aW9uIG5nMi1zbWFydC1hY3Rpb24tY3VzdG9tLWN1c3RvbVwiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiYWN0aW9uLnRpdGxlXCJcbiAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKTsgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7IG9uQ3VzdG9tKGFjdGlvbilcIlxuICAgICAgPjwvYT5cbiAgICB9XG4gICAgYCxcbn0pXG5leHBvcnQgY2xhc3MgVGJvZHlDdXN0b21Db21wb25lbnQge1xuICBASW5wdXQoKSBncmlkITogR3JpZDtcbiAgQElucHV0KCkgcm93ITogUm93O1xuICBASW5wdXQoKSBzb3VyY2UhOiBMb2NhbERhdGFTb3VyY2U7XG4gIEBPdXRwdXQoKSBjdXN0b20gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBvbkN1c3RvbShhY3Rpb246IGFueSkge1xuICAgIHRoaXMuY3VzdG9tLmVtaXQoe1xuICAgICAgYWN0aW9uOiBhY3Rpb24ubmFtZSxcbiAgICAgIGRhdGE6IHRoaXMucm93LmdldERhdGEoKSxcbiAgICAgIHNvdXJjZTogdGhpcy5zb3VyY2UsXG4gICAgfSk7XG4gIH1cblxuICBjdXN0b21BY3Rpb25zKCkge1xuICAgIHJldHVybiB0aGlzLmdyaWQuZ2V0U2V0dGluZzxTbWFydFRhYmxlQ3VzdG9tQWN0aW9uW10gfCB1bmRlZmluZWQ+KFwiYWN0aW9ucy5jdXN0b21cIik7XG4gIH1cbn1cbiJdfQ==
|