@theseam/ui-common 1.0.0-beta.9 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/buttons/index.d.ts +4 -1
- package/datatable/index.d.ts +44 -24
- package/fesm2022/theseam-ui-common-asset-reader.mjs +10 -10
- package/fesm2022/theseam-ui-common-asset-reader.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-breadcrumbs.mjs +6 -6
- package/fesm2022/theseam-ui-common-breadcrumbs.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-buttons.mjs +35 -28
- package/fesm2022/theseam-ui-common-buttons.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-card.mjs +16 -16
- package/fesm2022/theseam-ui-common-card.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-carousel.mjs +10 -10
- package/fesm2022/theseam-ui-common-carousel.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-checkbox.mjs +7 -7
- package/fesm2022/theseam-ui-common-checkbox.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-confirm-dialog.mjs +13 -13
- package/fesm2022/theseam-ui-common-confirm-dialog.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-data-exporter.mjs +31 -14
- package/fesm2022/theseam-ui-common-data-exporter.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-data-filters.mjs +13 -13
- package/fesm2022/theseam-ui-common-data-filters.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-datatable-alterations-display.mjs +12 -12
- package/fesm2022/theseam-ui-common-datatable-alterations-display.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-datatable-dynamic.mjs +25 -25
- package/fesm2022/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-datatable.mjs +177 -145
- package/fesm2022/theseam-ui-common-datatable.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-dynamic-component-loader.mjs +7 -7
- package/fesm2022/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-dynamic.mjs +21 -21
- package/fesm2022/theseam-ui-common-dynamic.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-footer-bar.mjs +7 -7
- package/fesm2022/theseam-ui-common-footer-bar.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-form-field-error.mjs +16 -16
- package/fesm2022/theseam-ui-common-form-field-error.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-form-field.mjs +22 -22
- package/fesm2022/theseam-ui-common-form-field.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-framework.mjs +160 -158
- package/fesm2022/theseam-ui-common-framework.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-google-maps.mjs +40 -40
- package/fesm2022/theseam-ui-common-google-maps.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-graphql.mjs +3 -3
- package/fesm2022/theseam-ui-common-graphql.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-icon.mjs +13 -13
- package/fesm2022/theseam-ui-common-icon.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-layout.mjs +7 -7
- package/fesm2022/theseam-ui-common-layout.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-loading.mjs +10 -10
- package/fesm2022/theseam-ui-common-loading.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-menu.mjs +25 -25
- package/fesm2022/theseam-ui-common-menu.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-modal.mjs +43 -43
- package/fesm2022/theseam-ui-common-modal.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-navigation-reload.mjs +3 -3
- package/fesm2022/theseam-ui-common-navigation-reload.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-popover.mjs +10 -10
- package/fesm2022/theseam-ui-common-popover.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-progress.mjs +7 -7
- package/fesm2022/theseam-ui-common-progress.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-rich-text.mjs +7 -7
- package/fesm2022/theseam-ui-common-rich-text.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-scrollbar.mjs +6 -6
- package/fesm2022/theseam-ui-common-scrollbar.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-services.mjs +12 -12
- package/fesm2022/theseam-ui-common-services.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-shared.mjs +37 -37
- package/fesm2022/theseam-ui-common-shared.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-storage.mjs +3 -3
- package/fesm2022/theseam-ui-common-storage.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-story-helpers.mjs +26 -26
- package/fesm2022/theseam-ui-common-story-helpers.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-tabbed.mjs +22 -22
- package/fesm2022/theseam-ui-common-tabbed.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-table-cell-type.mjs +10 -10
- package/fesm2022/theseam-ui-common-table-cell-type.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-table-cell-types.mjs +31 -31
- package/fesm2022/theseam-ui-common-table-cell-types.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-table.mjs +20 -28
- package/fesm2022/theseam-ui-common-table.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-tel-input.mjs +13 -13
- package/fesm2022/theseam-ui-common-tel-input.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-tiled-select.mjs +22 -22
- package/fesm2022/theseam-ui-common-tiled-select.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-toggle-edit.mjs +16 -16
- package/fesm2022/theseam-ui-common-toggle-edit.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-toggle-group.mjs +10 -10
- package/fesm2022/theseam-ui-common-toggle-group.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-tooltip.mjs +10 -10
- package/fesm2022/theseam-ui-common-tooltip.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-unsaved-changes-dialog.mjs +10 -10
- package/fesm2022/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-vertical-list-filter.mjs +3 -3
- package/fesm2022/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-viewers.mjs +12 -12
- package/fesm2022/theseam-ui-common-viewers.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-widget.mjs +135 -135
- package/fesm2022/theseam-ui-common-widget.mjs.map +1 -1
- package/modal/README.md +5 -5
- package/package.json +54 -54
- package/table/index.d.ts +1 -5
- package/tel-input/README.md +27 -27
|
@@ -14,10 +14,10 @@ import { CdkTableModule } from '@angular/cdk/table';
|
|
|
14
14
|
|
|
15
15
|
class TheSeamTableCellTplDirective {
|
|
16
16
|
template = inject((TemplateRef));
|
|
17
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
18
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.
|
|
17
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTableCellTplDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
18
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: TheSeamTableCellTplDirective, isStandalone: true, selector: "[seamTableCellTpl]", ngImport: i0 });
|
|
19
19
|
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTableCellTplDirective, decorators: [{
|
|
21
21
|
type: Directive,
|
|
22
22
|
args: [{
|
|
23
23
|
selector: '[seamTableCellTpl]',
|
|
@@ -27,10 +27,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.7", ngImpor
|
|
|
27
27
|
|
|
28
28
|
class TheSeamTableColumnHeaderTplDirective {
|
|
29
29
|
template = inject((TemplateRef));
|
|
30
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
31
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.
|
|
30
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTableColumnHeaderTplDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
31
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: TheSeamTableColumnHeaderTplDirective, isStandalone: true, selector: "[seamTableColumnHeaderTpl]", ngImport: i0 });
|
|
32
32
|
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTableColumnHeaderTplDirective, decorators: [{
|
|
34
34
|
type: Directive,
|
|
35
35
|
args: [{
|
|
36
36
|
selector: '[seamTableColumnHeaderTpl]',
|
|
@@ -43,7 +43,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.7", ngImpor
|
|
|
43
43
|
class TheSeamTableColumnComponent {
|
|
44
44
|
name;
|
|
45
45
|
prop;
|
|
46
|
-
flexGrow
|
|
46
|
+
// @Input() flexGrow?: number | null
|
|
47
47
|
// @Input() minWidth?: number | null
|
|
48
48
|
// @Input() maxWidth?: number | null
|
|
49
49
|
// @Input() width?: number | null
|
|
@@ -51,9 +51,9 @@ class TheSeamTableColumnComponent {
|
|
|
51
51
|
headerClass;
|
|
52
52
|
// @Input() cellClass?: string | ((data: any) => string|any) | null
|
|
53
53
|
cellClass;
|
|
54
|
-
align
|
|
55
|
-
alignHeader
|
|
56
|
-
alignCell
|
|
54
|
+
// @Input() align?: 'left' | 'center' | 'right' | null
|
|
55
|
+
// @Input() alignHeader?: 'left' | 'center' | 'right' | null
|
|
56
|
+
// @Input() alignCell?: 'left' | 'center' | 'right' | null
|
|
57
57
|
_isFirstChange = true;
|
|
58
58
|
cellTplDirective;
|
|
59
59
|
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
@@ -82,10 +82,10 @@ class TheSeamTableColumnComponent {
|
|
|
82
82
|
this._columnChange.next();
|
|
83
83
|
}
|
|
84
84
|
}
|
|
85
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
86
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
85
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTableColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
86
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: TheSeamTableColumnComponent, isStandalone: true, selector: "seam-table-column", inputs: { name: "name", prop: "prop", headerClass: "headerClass", cellClass: "cellClass", _cellTemplateInput: ["cellTemplate", "_cellTemplateInput"], _headerTemplateInput: ["headerTemplate", "_headerTemplateInput"] }, queries: [{ propertyName: "cellTplDirective", first: true, predicate: TheSeamTableCellTplDirective, descendants: true, static: true }, { propertyName: "_cellTemplateQuery", first: true, predicate: TheSeamTableCellTplDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "_headerTemplateQuery", first: true, predicate: TheSeamTableColumnHeaderTplDirective, descendants: true, read: TemplateRef, static: true }], usesOnChanges: true, ngImport: i0, template: ``, isInline: true });
|
|
87
87
|
}
|
|
88
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
88
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTableColumnComponent, decorators: [{
|
|
89
89
|
type: Component,
|
|
90
90
|
args: [{
|
|
91
91
|
selector: 'seam-table-column',
|
|
@@ -96,18 +96,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.7", ngImpor
|
|
|
96
96
|
type: Input
|
|
97
97
|
}], prop: [{
|
|
98
98
|
type: Input
|
|
99
|
-
}], flexGrow: [{
|
|
100
|
-
type: Input
|
|
101
99
|
}], headerClass: [{
|
|
102
100
|
type: Input
|
|
103
101
|
}], cellClass: [{
|
|
104
102
|
type: Input
|
|
105
|
-
}], align: [{
|
|
106
|
-
type: Input
|
|
107
|
-
}], alignHeader: [{
|
|
108
|
-
type: Input
|
|
109
|
-
}], alignCell: [{
|
|
110
|
-
type: Input
|
|
111
103
|
}], cellTplDirective: [{
|
|
112
104
|
type: ContentChild,
|
|
113
105
|
args: [TheSeamTableCellTplDirective, { static: true }]
|
|
@@ -290,13 +282,13 @@ class TableComponent {
|
|
|
290
282
|
_trackByRecords(r) {
|
|
291
283
|
return r.prop + r.name;
|
|
292
284
|
}
|
|
293
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
294
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
285
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TableComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
286
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: TableComponent, isStandalone: false, selector: "seam-table", inputs: { columns: "columns", rows: "rows", trackBy: "trackBy", size: "size", hasHeader: "hasHeader" }, outputs: { columnsChange: "columnsChange", actionRefreshRequest: "actionRefreshRequest" }, queries: [{ propertyName: "columnComponents", predicate: TheSeamTableColumnComponent }], usesOnChanges: true, ngImport: i0, template: "<table\n cdk-table\n [dataSource]=\"displayedRows\"\n class=\"table table-header-divider-indented mb-0\"\n [class.table-striped]=\"rows && rows.length > 0\"\n [class.table-sm]=\"size === 'sm'\"\n [class.table-no-header]=\"!hasHeader\"\n>\n <ng-container\n *ngFor=\"\n let r of displayedRecords;\n first as isFirst;\n trackBy: _trackByRecords\n \"\n >\n <ng-container [cdkColumnDef]=\"r.prop\">\n <th cdk-header-cell *cdkHeaderCellDef [class]=\"r.headerClass\">\n <ng-container *ngIf=\"hasHeader\">\n <ng-container *ngIf=\"$any(r)?.headerTemplate; else noHeaderTpl\">\n <ng-template\n [ngTemplateOutlet]=\"$any(r)?.headerTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: r.name,\n prop: r.prop,\n column: r,\n }\"\n >\n </ng-template>\n </ng-container>\n <ng-template #noHeaderTpl>\n {{ r.name }}\n </ng-template>\n </ng-container>\n </th>\n <td\n cdk-cell\n *cdkCellDef=\"let element; index as rowIndex\"\n [attr.colspan]=\"element?._emptyDisplay && isFirst ? 2 : undefined\"\n [class]=\"element?._emptyDisplay ? undefined : r.cellClass\"\n [class.border-top-0]=\"element?._emptyDisplay && isFirst\"\n [class.d-none]=\"element?._emptyDisplay && !isFirst\"\n [style]=\"$any(r)?.cellTypeConfig?.styles\"\n >\n <span [style]=\"$any(r)?.cellTypeConfig?.styles\"></span>\n\n <ng-container\n *ngIf=\"element?._emptyDisplay && isFirst; else hasDataTpl\"\n >\n No records found\n </ng-container>\n\n <ng-template #hasDataTpl>\n <seam-table-cell-type-selector\n *ngIf=\"$any(r)?.cellType; else noCellType\"\n [type]=\"$any(r)?.cellType\"\n [value]=\"element[r.prop]\"\n [rowIndex]=\"rowIndex\"\n [row]=\"element\"\n [colData]=\"r\"\n >\n </seam-table-cell-type-selector>\n <ng-template #noCellType>\n <ng-container *ngIf=\"$any(r)?.cellTemplate; else noCellTpl\">\n <ng-template\n [ngTemplateOutlet]=\"$any(r)?.cellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: element[r.prop],\n row: element,\n rowIndex: rowIndex,\n column: r,\n }\"\n >\n </ng-template>\n </ng-container>\n </ng-template>\n <ng-template #noCellTpl>\n <div class=\"td-text-truncate\" [title]=\"element[r.prop]\">\n {{ element[r.prop] }}\n </div>\n </ng-template>\n </ng-template>\n </td>\n </ng-container>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColumns\"></tr>\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColumns\"></tr>\n</table>\n", styles: [":host{display:block}:host .table-no-header ::ng-deep thead{display:none}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.CdkTable, selector: "cdk-table, table[cdk-table]", inputs: ["trackBy", "dataSource", "multiTemplateDataRows", "fixedLayout"], outputs: ["contentChanged"], exportAs: ["cdkTable"] }, { kind: "directive", type: i3.CdkRowDef, selector: "[cdkRowDef]", inputs: ["cdkRowDefColumns", "cdkRowDefWhen"] }, { kind: "directive", type: i3.CdkCellDef, selector: "[cdkCellDef]" }, { kind: "directive", type: i3.CdkHeaderCellDef, selector: "[cdkHeaderCellDef]" }, { kind: "directive", type: i3.CdkColumnDef, selector: "[cdkColumnDef]", inputs: ["cdkColumnDef", "sticky", "stickyEnd"] }, { kind: "directive", type: i3.CdkCell, selector: "cdk-cell, td[cdk-cell]" }, { kind: "component", type: i3.CdkRow, selector: "cdk-row, tr[cdk-row]" }, { kind: "directive", type: i3.CdkHeaderCell, selector: "cdk-header-cell, th[cdk-header-cell]" }, { kind: "component", type: i3.CdkHeaderRow, selector: "cdk-header-row, tr[cdk-header-row]" }, { kind: "directive", type: i3.CdkHeaderRowDef, selector: "[cdkHeaderRowDef]", inputs: ["cdkHeaderRowDef", "cdkHeaderRowDefSticky"] }, { kind: "component", type: i4.TableCellTypeSelectorComponent, selector: "seam-table-cell-type-selector", inputs: ["type", "value", "rowIndex", "row", "colData"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
295
287
|
}
|
|
296
288
|
__decorate([
|
|
297
289
|
InputBoolean()
|
|
298
290
|
], TableComponent.prototype, "hasHeader", void 0);
|
|
299
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
291
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TableComponent, decorators: [{
|
|
300
292
|
type: Component,
|
|
301
293
|
args: [{ selector: 'seam-table', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<table\n cdk-table\n [dataSource]=\"displayedRows\"\n class=\"table table-header-divider-indented mb-0\"\n [class.table-striped]=\"rows && rows.length > 0\"\n [class.table-sm]=\"size === 'sm'\"\n [class.table-no-header]=\"!hasHeader\"\n>\n <ng-container\n *ngFor=\"\n let r of displayedRecords;\n first as isFirst;\n trackBy: _trackByRecords\n \"\n >\n <ng-container [cdkColumnDef]=\"r.prop\">\n <th cdk-header-cell *cdkHeaderCellDef [class]=\"r.headerClass\">\n <ng-container *ngIf=\"hasHeader\">\n <ng-container *ngIf=\"$any(r)?.headerTemplate; else noHeaderTpl\">\n <ng-template\n [ngTemplateOutlet]=\"$any(r)?.headerTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: r.name,\n prop: r.prop,\n column: r,\n }\"\n >\n </ng-template>\n </ng-container>\n <ng-template #noHeaderTpl>\n {{ r.name }}\n </ng-template>\n </ng-container>\n </th>\n <td\n cdk-cell\n *cdkCellDef=\"let element; index as rowIndex\"\n [attr.colspan]=\"element?._emptyDisplay && isFirst ? 2 : undefined\"\n [class]=\"element?._emptyDisplay ? undefined : r.cellClass\"\n [class.border-top-0]=\"element?._emptyDisplay && isFirst\"\n [class.d-none]=\"element?._emptyDisplay && !isFirst\"\n [style]=\"$any(r)?.cellTypeConfig?.styles\"\n >\n <span [style]=\"$any(r)?.cellTypeConfig?.styles\"></span>\n\n <ng-container\n *ngIf=\"element?._emptyDisplay && isFirst; else hasDataTpl\"\n >\n No records found\n </ng-container>\n\n <ng-template #hasDataTpl>\n <seam-table-cell-type-selector\n *ngIf=\"$any(r)?.cellType; else noCellType\"\n [type]=\"$any(r)?.cellType\"\n [value]=\"element[r.prop]\"\n [rowIndex]=\"rowIndex\"\n [row]=\"element\"\n [colData]=\"r\"\n >\n </seam-table-cell-type-selector>\n <ng-template #noCellType>\n <ng-container *ngIf=\"$any(r)?.cellTemplate; else noCellTpl\">\n <ng-template\n [ngTemplateOutlet]=\"$any(r)?.cellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: element[r.prop],\n row: element,\n rowIndex: rowIndex,\n column: r,\n }\"\n >\n </ng-template>\n </ng-container>\n </ng-template>\n <ng-template #noCellTpl>\n <div class=\"td-text-truncate\" [title]=\"element[r.prop]\">\n {{ element[r.prop] }}\n </div>\n </ng-template>\n </ng-template>\n </td>\n </ng-container>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColumns\"></tr>\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColumns\"></tr>\n</table>\n", styles: [":host{display:block}:host .table-no-header ::ng-deep thead{display:none}\n"] }]
|
|
302
294
|
}], ctorParameters: () => [{ type: i1.DomSanitizer }], propDecorators: { columns: [{
|
|
@@ -319,8 +311,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.7", ngImpor
|
|
|
319
311
|
}] } });
|
|
320
312
|
|
|
321
313
|
class TheSeamTableModule {
|
|
322
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
323
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.
|
|
314
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
315
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTableModule, declarations: [TableComponent], imports: [CommonModule,
|
|
324
316
|
CdkTableModule,
|
|
325
317
|
TheSeamTableCellTypeModule,
|
|
326
318
|
TheSeamTableColumnComponent,
|
|
@@ -329,11 +321,11 @@ class TheSeamTableModule {
|
|
|
329
321
|
TheSeamTableColumnComponent,
|
|
330
322
|
TheSeamTableCellTplDirective,
|
|
331
323
|
TheSeamTableColumnHeaderTplDirective] });
|
|
332
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.
|
|
324
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTableModule, imports: [CommonModule,
|
|
333
325
|
CdkTableModule,
|
|
334
326
|
TheSeamTableCellTypeModule] });
|
|
335
327
|
}
|
|
336
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
328
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTableModule, decorators: [{
|
|
337
329
|
type: NgModule,
|
|
338
330
|
args: [{
|
|
339
331
|
declarations: [TableComponent],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theseam-ui-common-table.mjs","sources":["../../../projects/ui-common/table/table-cell-tpl.directive.ts","../../../projects/ui-common/table/table-column-header-tpl.directive.ts","../../../projects/ui-common/table/table-column.component.ts","../../../projects/ui-common/table/table/table.component.ts","../../../projects/ui-common/table/table/table.component.html","../../../projects/ui-common/table/table.module.ts","../../../projects/ui-common/table/theseam-ui-common-table.ts"],"sourcesContent":["import { Directive, inject, TemplateRef } from '@angular/core'\n\n@Directive({\n selector: '[seamTableCellTpl]',\n standalone: true,\n})\nexport class TheSeamTableCellTplDirective {\n template = inject(TemplateRef<any>)\n}\n","import { Directive, inject, TemplateRef } from '@angular/core'\n\n@Directive({\n selector: '[seamTableColumnHeaderTpl]',\n standalone: true,\n})\nexport class TheSeamTableColumnHeaderTplDirective {\n template = inject(TemplateRef<any>)\n}\n","import {\n Component,\n ContentChild,\n Input,\n OnChanges,\n SimpleChanges,\n TemplateRef,\n} from '@angular/core'\nimport { Subject } from 'rxjs'\n\nimport { ColumnChangesService, TableColumnProp } from '@marklb/ngx-datatable'\n\nimport { TheSeamTableCellTplDirective } from './table-cell-tpl.directive'\nimport { TheSeamTableColumnHeaderTplDirective } from './table-column-header-tpl.directive'\n\n// TODO: The column component should implement `ITableColumn`, since\n// providing some properties by input and some by template could be confusing.\n\n@Component({\n selector: 'seam-table-column',\n standalone: true,\n template: ``,\n})\nexport class TheSeamTableColumnComponent implements OnChanges {\n @Input() name?: string | null\n @Input() prop?: TableColumnProp | null\n\n @Input() flexGrow?: number | null\n // @Input() minWidth?: number | null\n // @Input() maxWidth?: number | null\n // @Input() width?: number | null\n\n // @Input() headerClass?: string | ((data: any) => string|any) | null\n @Input() headerClass?: string | null\n // @Input() cellClass?: string | ((data: any) => string|any) | null\n @Input() cellClass?: string | null\n\n @Input() align?: 'left' | 'center' | 'right' | null\n @Input() alignHeader?: 'left' | 'center' | 'right' | null\n @Input() alignCell?: 'left' | 'center' | 'right' | null\n\n private _isFirstChange = true\n\n @ContentChild(TheSeamTableCellTplDirective, { static: true })\n cellTplDirective?: TheSeamTableCellTplDirective\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('cellTemplate')\n _cellTemplateInput?: TemplateRef<any> | null\n\n @ContentChild(TheSeamTableCellTplDirective, {\n read: TemplateRef,\n static: true,\n })\n _cellTemplateQuery?: TemplateRef<any>\n\n get cellTemplate(): TemplateRef<any> | undefined | null {\n return this._cellTemplateInput || this._cellTemplateQuery\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('headerTemplate')\n _headerTemplateInput?: TemplateRef<any> | null\n\n @ContentChild(TheSeamTableColumnHeaderTplDirective, {\n read: TemplateRef,\n static: true,\n })\n _headerTemplateQuery?: TemplateRef<any>\n\n get headerTemplate(): TemplateRef<any> | undefined | null {\n return this._headerTemplateInput || this._headerTemplateQuery\n }\n\n private readonly _columnChange = new Subject<void>()\n public columnChange$ = this._columnChange.asObservable()\n\n // constructor(\n // private _columnChangesService: DatatableColumnChangesService\n // ) {}\n\n ngOnChanges(changes: SimpleChanges) {\n if (this._isFirstChange) {\n this._isFirstChange = false\n } else {\n // this._columnChangesService.onInputChange()\n this._columnChange.next()\n }\n }\n}\n","import { BooleanInput, coerceArray } from '@angular/cdk/coercion'\nimport {\n AfterContentChecked,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n QueryList,\n SimpleChanges,\n TemplateRef,\n} from '@angular/core'\nimport { DomSanitizer } from '@angular/platform-browser'\nimport { merge, Subject, Subscription } from 'rxjs'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\nimport { setColumnAlignDefaults } from '@theseam/ui-common/table-cell-type'\n\nimport { TheSeamTableColumnComponent } from '../table-column.component'\n\n/**\n * An optional function passed into the `NgForOf` directive that defines how to track\n * changes for items in an iterable.\n * The function takes the iteration index and item ID.\n * When supplied, Angular tracks changes by the return value of the function.\n *\n * NOTE: Can't import the type from'@angular/core', because of a bug in angular-cli's\n * build that can't find exported types that only exist at compile time if there\n * are exports that exist at runtime in the same file.\n */\nexport type TrackByFunction<T> = (index: number, item: T) => any\n\nexport interface ITableColumn {\n prop: string\n name?: string\n cellTemplate?: TemplateRef<any>\n headerTemplate?: TemplateRef<any>\n cellClass?: string // | ((data: any) => string | any)\n headerClass?: string // | ((data: any) => string | any)\n}\n\nfunction mergeColumnsAndTplColumns(\n columns: (string | ITableColumn)[],\n tplColumns: TheSeamTableColumnComponent[],\n): ITableColumn[] {\n const newCols: ITableColumn[] = []\n\n for (const col of columns) {\n const newCol: ITableColumn = {\n ...(typeof col === 'string'\n ? {\n prop: col,\n name: col,\n }\n : col),\n }\n const tplCol = tplColumns.find((c) => c.prop === newCol.prop)\n // newCol.cellTypeConfig = tplCol?.cellTypeConfig\n if (tplCol) {\n if (tplCol.name !== undefined && tplCol.name !== null) {\n newCol.name = tplCol.name ?? undefined\n }\n if (tplCol.cellTemplate !== undefined && tplCol.cellTemplate !== null) {\n newCol.cellTemplate = tplCol.cellTemplate ?? undefined\n }\n if (\n tplCol.headerTemplate !== undefined &&\n tplCol.headerTemplate !== null\n ) {\n newCol.headerTemplate = tplCol.headerTemplate ?? undefined\n }\n if (tplCol.cellClass !== undefined && tplCol.cellClass !== null) {\n newCol.cellClass = tplCol.cellClass ?? undefined\n }\n if (tplCol.headerClass !== undefined && tplCol.headerClass !== null) {\n newCol.headerClass = tplCol.headerClass ?? undefined\n }\n }\n\n setColumnAlignDefaults(newCol)\n\n newCols.push(newCol)\n }\n\n return newCols\n}\n\n@Component({\n selector: 'seam-table',\n templateUrl: './table.component.html',\n styleUrls: ['./table.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class TableComponent<T = any>\n implements OnInit, OnChanges, AfterContentChecked\n{\n static ngAcceptInputType_hasHeader: BooleanInput\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input()\n get columns() {\n return this._columns\n }\n set columns(value: (string | ITableColumn)[] | undefined | null) {\n this._columns = value\n // this._setColumns(value || [])\n const cols = mergeColumnsAndTplColumns(\n value || [],\n this._columnComponents?.toArray() ?? [],\n )\n // this._setColumns(cols)\n this._pendingColumns = cols\n }\n private _columns: (string | ITableColumn)[] | undefined | null\n\n @Input()\n get rows(): T[] | undefined | null {\n return this._rows\n }\n set rows(value: T[] | undefined | null) {\n this._rows = value ? coerceArray(value) : []\n\n if (this._rows.length < 1) {\n this._displayedRows = [{ _emptyDisplay: true } as any]\n } else {\n this._displayedRows = this._rows\n }\n }\n private _rows: T[] | undefined | null = []\n\n get displayedRows() {\n return this._displayedRows\n }\n private _displayedRows: T[] & { _colSpan?: number } = []\n\n @Input() trackBy: TrackByFunction<T> | undefined | null\n\n @Input() size: 'sm' | 'md' | undefined | null\n\n @Input() @InputBoolean() hasHeader = true\n\n private _pendingColumns?: ITableColumn[]\n\n public displayedRecords?: ITableColumn[]\n public displayedColumns?: string[]\n\n @Output() readonly columnsChange = new EventEmitter<{\n previous: ITableColumn[] | undefined\n current: ITableColumn[]\n }>()\n @Output() readonly actionRefreshRequest = new EventEmitter<void>()\n\n @ContentChildren(TheSeamTableColumnComponent)\n set columnComponents(\n value: QueryList<TheSeamTableColumnComponent> | undefined,\n ) {\n // this._columnsManager.setTemplateColumns(translateTemplateColumns(value?.toArray() ?? []))\n this._columnComponents = value\n if (value?.toArray().length === 0) return\n const cols = mergeColumnsAndTplColumns(\n this._columns || [],\n value?.toArray() ?? [],\n )\n // this._setColumns(cols)\n this._pendingColumns = cols\n\n if (this._columnComponentChange) this._columnComponentChange.unsubscribe()\n const obsArr = value?.toArray().map((c) => c.columnChange$)\n if (obsArr && obsArr.length > 0) {\n this._columnComponentChange = merge(obsArr).subscribe(() => {\n const _cols = mergeColumnsAndTplColumns(\n this._columns || [],\n value?.toArray() ?? [],\n )\n // this._setColumns(_cols)\n this._pendingColumns = _cols\n })\n }\n }\n private _columnComponents: QueryList<TheSeamTableColumnComponent> | undefined\n private _columnComponentChange = Subscription.EMPTY\n\n constructor(private readonly _sanitizer: DomSanitizer) {}\n\n ngOnInit() {\n this._updateColumns()\n }\n\n ngAfterContentChecked() {\n this._updateColumns()\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.columns) {\n this._updateColumns()\n }\n }\n\n private _updateColumns() {\n const pending = this._pendingColumns\n this._pendingColumns = undefined\n if (pending) {\n this._setColumns(pending)\n }\n }\n\n // TODO: Improve column handling, like datatable, to avoid excessive updates.\n private _setColumns(cols: (string | ITableColumn)[]) {\n const prev = this.displayedRecords\n const newCols: ITableColumn[] = []\n\n for (const col of cols) {\n if (typeof col === 'string') {\n const newCol: ITableColumn = {\n prop: col,\n name: col,\n }\n newCols.push(newCol)\n } else {\n let name = col.name\n if (name === undefined || name === null) {\n name = col.prop\n }\n const newCol: ITableColumn = {\n ...col,\n prop: col.prop,\n name,\n }\n newCols.push(newCol)\n }\n }\n\n for (const col of newCols) {\n const _col = col as any\n if (_col && _col.cellTypeConfig && _col.cellTypeConfig.styles) {\n _col.cellTypeConfig.styles = this._sanitizer.bypassSecurityTrustStyle(\n _col.cellTypeConfig.styles,\n )\n }\n }\n\n this.displayedRecords = newCols\n this.displayedColumns = newCols.map((c) => c.prop)\n this.columnsChange.emit({ previous: prev, current: newCols })\n }\n\n public triggerActionRefreshRequest() {\n this.actionRefreshRequest.emit(undefined)\n }\n\n _trackByRecords(r: any) {\n return r.prop + r.name\n }\n}\n","<table\n cdk-table\n [dataSource]=\"displayedRows\"\n class=\"table table-header-divider-indented mb-0\"\n [class.table-striped]=\"rows && rows.length > 0\"\n [class.table-sm]=\"size === 'sm'\"\n [class.table-no-header]=\"!hasHeader\"\n>\n <ng-container\n *ngFor=\"\n let r of displayedRecords;\n first as isFirst;\n trackBy: _trackByRecords\n \"\n >\n <ng-container [cdkColumnDef]=\"r.prop\">\n <th cdk-header-cell *cdkHeaderCellDef [class]=\"r.headerClass\">\n <ng-container *ngIf=\"hasHeader\">\n <ng-container *ngIf=\"$any(r)?.headerTemplate; else noHeaderTpl\">\n <ng-template\n [ngTemplateOutlet]=\"$any(r)?.headerTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: r.name,\n prop: r.prop,\n column: r,\n }\"\n >\n </ng-template>\n </ng-container>\n <ng-template #noHeaderTpl>\n {{ r.name }}\n </ng-template>\n </ng-container>\n </th>\n <td\n cdk-cell\n *cdkCellDef=\"let element; index as rowIndex\"\n [attr.colspan]=\"element?._emptyDisplay && isFirst ? 2 : undefined\"\n [class]=\"element?._emptyDisplay ? undefined : r.cellClass\"\n [class.border-top-0]=\"element?._emptyDisplay && isFirst\"\n [class.d-none]=\"element?._emptyDisplay && !isFirst\"\n [style]=\"$any(r)?.cellTypeConfig?.styles\"\n >\n <span [style]=\"$any(r)?.cellTypeConfig?.styles\"></span>\n\n <ng-container\n *ngIf=\"element?._emptyDisplay && isFirst; else hasDataTpl\"\n >\n No records found\n </ng-container>\n\n <ng-template #hasDataTpl>\n <seam-table-cell-type-selector\n *ngIf=\"$any(r)?.cellType; else noCellType\"\n [type]=\"$any(r)?.cellType\"\n [value]=\"element[r.prop]\"\n [rowIndex]=\"rowIndex\"\n [row]=\"element\"\n [colData]=\"r\"\n >\n </seam-table-cell-type-selector>\n <ng-template #noCellType>\n <ng-container *ngIf=\"$any(r)?.cellTemplate; else noCellTpl\">\n <ng-template\n [ngTemplateOutlet]=\"$any(r)?.cellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: element[r.prop],\n row: element,\n rowIndex: rowIndex,\n column: r,\n }\"\n >\n </ng-template>\n </ng-container>\n </ng-template>\n <ng-template #noCellTpl>\n <div class=\"td-text-truncate\" [title]=\"element[r.prop]\">\n {{ element[r.prop] }}\n </div>\n </ng-template>\n </ng-template>\n </td>\n </ng-container>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColumns\"></tr>\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColumns\"></tr>\n</table>\n","import { CdkTableModule } from '@angular/cdk/table'\nimport { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { TheSeamTableCellTypeModule } from '@theseam/ui-common/table-cell-type'\n\nimport { TableComponent } from './table/table.component'\nimport { TheSeamTableColumnComponent } from './table-column.component'\nimport { TheSeamTableCellTplDirective } from './table-cell-tpl.directive'\nimport { TheSeamTableColumnHeaderTplDirective } from './table-column-header-tpl.directive'\n\n@NgModule({\n declarations: [TableComponent],\n imports: [\n CommonModule,\n CdkTableModule,\n TheSeamTableCellTypeModule,\n TheSeamTableColumnComponent,\n TheSeamTableCellTplDirective,\n TheSeamTableColumnHeaderTplDirective,\n ],\n exports: [\n TableComponent,\n TheSeamTableColumnComponent,\n TheSeamTableCellTplDirective,\n TheSeamTableColumnHeaderTplDirective,\n ],\n})\nexport class TheSeamTableModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;MAMa,4BAA4B,CAAA;AACvC,IAAA,QAAQ,GAAG,MAAM,EAAC,WAAgB,EAAC;uGADxB,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAA5B,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAJxC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;MCCY,oCAAoC,CAAA;AAC/C,IAAA,QAAQ,GAAG,MAAM,EAAC,WAAgB,EAAC;uGADxB,oCAAoC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAApC,oCAAoC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAApC,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBAJhD,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,4BAA4B;AACtC,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACUD;AACA;MAOa,2BAA2B,CAAA;AAC7B,IAAA,IAAI;AACJ,IAAA,IAAI;AAEJ,IAAA,QAAQ;;;;;AAMR,IAAA,WAAW;;AAEX,IAAA,SAAS;AAET,IAAA,KAAK;AACL,IAAA,WAAW;AACX,IAAA,SAAS;IAEV,cAAc,GAAG,IAAI;AAG7B,IAAA,gBAAgB;;AAIhB,IAAA,kBAAkB;AAMlB,IAAA,kBAAkB;AAElB,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,kBAAkB;IAC3D;;AAIA,IAAA,oBAAoB;AAMpB,IAAA,oBAAoB;AAEpB,IAAA,IAAI,cAAc,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,oBAAoB;IAC/D;AAEiB,IAAA,aAAa,GAAG,IAAI,OAAO,EAAQ;AAC7C,IAAA,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE;;;;AAMxD,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE;AACvB,YAAA,IAAI,CAAC,cAAc,GAAG,KAAK;QAC7B;aAAO;;AAEL,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;QAC3B;IACF;uGAjEW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAA3B,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,kBAAA,EAAA,CAAA,cAAA,EAAA,oBAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,gBAAA,EAAA,sBAAA,CAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAoBxB,4BAA4B,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAO5B,4BAA4B,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAClC,WAAW,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,sBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAaL,oCAAoC,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAC1C,WAAW,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EA5CT,CAAA,CAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA;;2FAED,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBALvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,CAAA,CAAE;AACb,iBAAA;;sBAEE;;sBACA;;sBAEA;;sBAMA;;sBAEA;;sBAEA;;sBACA;;sBACA;;sBAIA,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,4BAA4B,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;sBAI3D,KAAK;uBAAC,cAAc;;sBAGpB,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,4BAA4B,EAAE;AAC1C,wBAAA,IAAI,EAAE,WAAW;AACjB,wBAAA,MAAM,EAAE,IAAI;AACb,qBAAA;;sBAQA,KAAK;uBAAC,gBAAgB;;sBAGtB,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,oCAAoC,EAAE;AAClD,wBAAA,IAAI,EAAE,WAAW;AACjB,wBAAA,MAAM,EAAE,IAAI;AACb,qBAAA;;;ACvBH,SAAS,yBAAyB,CAChC,OAAkC,EAClC,UAAyC,EAAA;IAEzC,MAAM,OAAO,GAAmB,EAAE;AAElC,IAAA,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE;AACzB,QAAA,MAAM,MAAM,GAAiB;AAC3B,YAAA,IAAI,OAAO,GAAG,KAAK;AACjB,kBAAE;AACE,oBAAA,IAAI,EAAE,GAAG;AACT,oBAAA,IAAI,EAAE,GAAG;AACV;kBACD,GAAG,CAAC;SACT;AACD,QAAA,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC;;QAE7D,IAAI,MAAM,EAAE;AACV,YAAA,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE;gBACrD,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,SAAS;YACxC;AACA,YAAA,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,IAAI,MAAM,CAAC,YAAY,KAAK,IAAI,EAAE;gBACrE,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,SAAS;YACxD;AACA,YAAA,IACE,MAAM,CAAC,cAAc,KAAK,SAAS;AACnC,gBAAA,MAAM,CAAC,cAAc,KAAK,IAAI,EAC9B;gBACA,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,SAAS;YAC5D;AACA,YAAA,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI,EAAE;gBAC/D,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,SAAS;YAClD;AACA,YAAA,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,IAAI,MAAM,CAAC,WAAW,KAAK,IAAI,EAAE;gBACnE,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,SAAS;YACtD;QACF;QAEA,sBAAsB,CAAC,MAAM,CAAC;AAE9B,QAAA,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;IACtB;AAEA,IAAA,OAAO,OAAO;AAChB;MASa,cAAc,CAAA;AA0FI,IAAA,UAAA;IAvF7B,OAAO,2BAA2B;AAEjB,IAAA,cAAc,GAAG,IAAI,OAAO,EAAQ;AAErD,IAAA,IACI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ;IACtB;IACA,IAAI,OAAO,CAAC,KAAmD,EAAA;AAC7D,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;;AAErB,QAAA,MAAM,IAAI,GAAG,yBAAyB,CACpC,KAAK,IAAI,EAAE,EACX,IAAI,CAAC,iBAAiB,EAAE,OAAO,EAAE,IAAI,EAAE,CACxC;;AAED,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI;IAC7B;AACQ,IAAA,QAAQ;AAEhB,IAAA,IACI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK;IACnB;IACA,IAAI,IAAI,CAAC,KAA6B,EAAA;AACpC,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE;QAE5C,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,IAAI,CAAC,cAAc,GAAG,CAAC,EAAE,aAAa,EAAE,IAAI,EAAS,CAAC;QACxD;aAAO;AACL,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK;QAClC;IACF;IACQ,KAAK,GAA2B,EAAE;AAE1C,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,cAAc;IAC5B;IACQ,cAAc,GAAgC,EAAE;AAE/C,IAAA,OAAO;AAEP,IAAA,IAAI;IAEY,SAAS,GAAG,IAAI;AAEjC,IAAA,eAAe;AAEhB,IAAA,gBAAgB;AAChB,IAAA,gBAAgB;AAEJ,IAAA,aAAa,GAAG,IAAI,YAAY,EAG/C;AACe,IAAA,oBAAoB,GAAG,IAAI,YAAY,EAAQ;IAElE,IACI,gBAAgB,CAClB,KAAyD,EAAA;;AAGzD,QAAA,IAAI,CAAC,iBAAiB,GAAG,KAAK;AAC9B,QAAA,IAAI,KAAK,EAAE,OAAO,EAAE,CAAC,MAAM,KAAK,CAAC;YAAE;AACnC,QAAA,MAAM,IAAI,GAAG,yBAAyB,CACpC,IAAI,CAAC,QAAQ,IAAI,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CACvB;;AAED,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI;QAE3B,IAAI,IAAI,CAAC,sBAAsB;AAAE,YAAA,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE;AAC1E,QAAA,MAAM,MAAM,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC;QAC3D,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,MAAK;AACzD,gBAAA,MAAM,KAAK,GAAG,yBAAyB,CACrC,IAAI,CAAC,QAAQ,IAAI,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CACvB;;AAED,gBAAA,IAAI,CAAC,eAAe,GAAG,KAAK;AAC9B,YAAA,CAAC,CAAC;QACJ;IACF;AACQ,IAAA,iBAAiB;AACjB,IAAA,sBAAsB,GAAG,YAAY,CAAC,KAAK;AAEnD,IAAA,WAAA,CAA6B,UAAwB,EAAA;QAAxB,IAAA,CAAA,UAAU,GAAV,UAAU;IAAiB;IAExD,QAAQ,GAAA;QACN,IAAI,CAAC,cAAc,EAAE;IACvB;IAEA,qBAAqB,GAAA;QACnB,IAAI,CAAC,cAAc,EAAE;IACvB;AAEA,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,OAAO,EAAE;YACnB,IAAI,CAAC,cAAc,EAAE;QACvB;IACF;IAEQ,cAAc,GAAA;AACpB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe;AACpC,QAAA,IAAI,CAAC,eAAe,GAAG,SAAS;QAChC,IAAI,OAAO,EAAE;AACX,YAAA,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QAC3B;IACF;;AAGQ,IAAA,WAAW,CAAC,IAA+B,EAAA;AACjD,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB;QAClC,MAAM,OAAO,GAAmB,EAAE;AAElC,QAAA,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;AACtB,YAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;AAC3B,gBAAA,MAAM,MAAM,GAAiB;AAC3B,oBAAA,IAAI,EAAE,GAAG;AACT,oBAAA,IAAI,EAAE,GAAG;iBACV;AACD,gBAAA,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YACtB;iBAAO;AACL,gBAAA,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI;gBACnB,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE;AACvC,oBAAA,IAAI,GAAG,GAAG,CAAC,IAAI;gBACjB;AACA,gBAAA,MAAM,MAAM,GAAiB;AAC3B,oBAAA,GAAG,GAAG;oBACN,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI;iBACL;AACD,gBAAA,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YACtB;QACF;AAEA,QAAA,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE;YACzB,MAAM,IAAI,GAAG,GAAU;AACvB,YAAA,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;AAC7D,gBAAA,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,wBAAwB,CACnE,IAAI,CAAC,cAAc,CAAC,MAAM,CAC3B;YACH;QACF;AAEA,QAAA,IAAI,CAAC,gBAAgB,GAAG,OAAO;AAC/B,QAAA,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;AAClD,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAC/D;IAEO,2BAA2B,GAAA;AAChC,QAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC;IAC3C;AAEA,IAAA,eAAe,CAAC,CAAM,EAAA;AACpB,QAAA,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI;IACxB;uGAhKW,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAd,cAAc,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,SAAA,EA4DR,2BAA2B,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC7J9C,69FAwFA,EAAA,MAAA,EAAA,CAAA,4EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,YAAA,EAAA,uBAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,oCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,uBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,KAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;ADwD2B,UAAA,CAAA;AAAf,IAAA,YAAY;AAAmB,CAAA,EAAA,cAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA;2FA/C9B,cAAc,EAAA,UAAA,EAAA,CAAA;kBAP1B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,EAAA,eAAA,EAGL,uBAAuB,CAAC,MAAM,cACnC,KAAK,EAAA,QAAA,EAAA,69FAAA,EAAA,MAAA,EAAA,CAAA,4EAAA,CAAA,EAAA;;sBAShB;;sBAgBA;;sBAoBA;;sBAEA;;sBAEA;;sBAOA;;sBAIA;;sBAEA,eAAe;uBAAC,2BAA2B;;;MEjIjC,kBAAkB,CAAA;uGAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAAlB,kBAAkB,EAAA,YAAA,EAAA,CAhBd,cAAc,CAAA,EAAA,OAAA,EAAA,CAE3B,YAAY;YACZ,cAAc;YACd,0BAA0B;YAC1B,2BAA2B;YAC3B,4BAA4B;AAC5B,YAAA,oCAAoC,aAGpC,cAAc;YACd,2BAA2B;YAC3B,4BAA4B;YAC5B,oCAAoC,CAAA,EAAA,CAAA;AAG3B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAd3B,YAAY;YACZ,cAAc;YACd,0BAA0B,CAAA,EAAA,CAAA;;2FAYjB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAjB9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,cAAc,CAAC;AAC9B,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,cAAc;wBACd,0BAA0B;wBAC1B,2BAA2B;wBAC3B,4BAA4B;wBAC5B,oCAAoC;AACrC,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,cAAc;wBACd,2BAA2B;wBAC3B,4BAA4B;wBAC5B,oCAAoC;AACrC,qBAAA;AACF,iBAAA;;;AC3BD;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"theseam-ui-common-table.mjs","sources":["../../../projects/ui-common/table/table-cell-tpl.directive.ts","../../../projects/ui-common/table/table-column-header-tpl.directive.ts","../../../projects/ui-common/table/table-column.component.ts","../../../projects/ui-common/table/table/table.component.ts","../../../projects/ui-common/table/table/table.component.html","../../../projects/ui-common/table/table.module.ts","../../../projects/ui-common/table/theseam-ui-common-table.ts"],"sourcesContent":["import { Directive, inject, TemplateRef } from '@angular/core'\n\n@Directive({\n selector: '[seamTableCellTpl]',\n standalone: true,\n})\nexport class TheSeamTableCellTplDirective {\n template = inject(TemplateRef<any>)\n}\n","import { Directive, inject, TemplateRef } from '@angular/core'\n\n@Directive({\n selector: '[seamTableColumnHeaderTpl]',\n standalone: true,\n})\nexport class TheSeamTableColumnHeaderTplDirective {\n template = inject(TemplateRef<any>)\n}\n","import {\n Component,\n ContentChild,\n Input,\n OnChanges,\n SimpleChanges,\n TemplateRef,\n} from '@angular/core'\nimport { Subject } from 'rxjs'\n\nimport { ColumnChangesService, TableColumnProp } from '@marklb/ngx-datatable'\n\nimport { TheSeamTableCellTplDirective } from './table-cell-tpl.directive'\nimport { TheSeamTableColumnHeaderTplDirective } from './table-column-header-tpl.directive'\n\n// TODO: The column component should implement `ITableColumn`, since\n// providing some properties by input and some by template could be confusing.\n\n@Component({\n selector: 'seam-table-column',\n standalone: true,\n template: ``,\n})\nexport class TheSeamTableColumnComponent implements OnChanges {\n @Input() name?: string | null\n @Input() prop?: TableColumnProp | null\n\n // @Input() flexGrow?: number | null\n // @Input() minWidth?: number | null\n // @Input() maxWidth?: number | null\n // @Input() width?: number | null\n\n // @Input() headerClass?: string | ((data: any) => string|any) | null\n @Input() headerClass?: string | null\n // @Input() cellClass?: string | ((data: any) => string|any) | null\n @Input() cellClass?: string | null\n\n // @Input() align?: 'left' | 'center' | 'right' | null\n // @Input() alignHeader?: 'left' | 'center' | 'right' | null\n // @Input() alignCell?: 'left' | 'center' | 'right' | null\n\n private _isFirstChange = true\n\n @ContentChild(TheSeamTableCellTplDirective, { static: true })\n cellTplDirective?: TheSeamTableCellTplDirective\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('cellTemplate')\n _cellTemplateInput?: TemplateRef<any> | null\n\n @ContentChild(TheSeamTableCellTplDirective, {\n read: TemplateRef,\n static: true,\n })\n _cellTemplateQuery?: TemplateRef<any>\n\n get cellTemplate(): TemplateRef<any> | undefined | null {\n return this._cellTemplateInput || this._cellTemplateQuery\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('headerTemplate')\n _headerTemplateInput?: TemplateRef<any> | null\n\n @ContentChild(TheSeamTableColumnHeaderTplDirective, {\n read: TemplateRef,\n static: true,\n })\n _headerTemplateQuery?: TemplateRef<any>\n\n get headerTemplate(): TemplateRef<any> | undefined | null {\n return this._headerTemplateInput || this._headerTemplateQuery\n }\n\n private readonly _columnChange = new Subject<void>()\n public columnChange$ = this._columnChange.asObservable()\n\n // constructor(\n // private _columnChangesService: DatatableColumnChangesService\n // ) {}\n\n ngOnChanges(changes: SimpleChanges) {\n if (this._isFirstChange) {\n this._isFirstChange = false\n } else {\n // this._columnChangesService.onInputChange()\n this._columnChange.next()\n }\n }\n}\n","import { BooleanInput, coerceArray } from '@angular/cdk/coercion'\nimport {\n AfterContentChecked,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n QueryList,\n SimpleChanges,\n TemplateRef,\n} from '@angular/core'\nimport { DomSanitizer } from '@angular/platform-browser'\nimport { merge, Subject, Subscription } from 'rxjs'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\nimport { setColumnAlignDefaults } from '@theseam/ui-common/table-cell-type'\n\nimport { TheSeamTableColumnComponent } from '../table-column.component'\n\n/**\n * An optional function passed into the `NgForOf` directive that defines how to track\n * changes for items in an iterable.\n * The function takes the iteration index and item ID.\n * When supplied, Angular tracks changes by the return value of the function.\n *\n * NOTE: Can't import the type from'@angular/core', because of a bug in angular-cli's\n * build that can't find exported types that only exist at compile time if there\n * are exports that exist at runtime in the same file.\n */\nexport type TrackByFunction<T> = (index: number, item: T) => any\n\nexport interface ITableColumn {\n prop: string\n name?: string\n cellTemplate?: TemplateRef<any>\n headerTemplate?: TemplateRef<any>\n cellClass?: string // | ((data: any) => string | any)\n headerClass?: string // | ((data: any) => string | any)\n}\n\nfunction mergeColumnsAndTplColumns(\n columns: (string | ITableColumn)[],\n tplColumns: TheSeamTableColumnComponent[],\n): ITableColumn[] {\n const newCols: ITableColumn[] = []\n\n for (const col of columns) {\n const newCol: ITableColumn = {\n ...(typeof col === 'string'\n ? {\n prop: col,\n name: col,\n }\n : col),\n }\n const tplCol = tplColumns.find((c) => c.prop === newCol.prop)\n // newCol.cellTypeConfig = tplCol?.cellTypeConfig\n if (tplCol) {\n if (tplCol.name !== undefined && tplCol.name !== null) {\n newCol.name = tplCol.name ?? undefined\n }\n if (tplCol.cellTemplate !== undefined && tplCol.cellTemplate !== null) {\n newCol.cellTemplate = tplCol.cellTemplate ?? undefined\n }\n if (\n tplCol.headerTemplate !== undefined &&\n tplCol.headerTemplate !== null\n ) {\n newCol.headerTemplate = tplCol.headerTemplate ?? undefined\n }\n if (tplCol.cellClass !== undefined && tplCol.cellClass !== null) {\n newCol.cellClass = tplCol.cellClass ?? undefined\n }\n if (tplCol.headerClass !== undefined && tplCol.headerClass !== null) {\n newCol.headerClass = tplCol.headerClass ?? undefined\n }\n }\n\n setColumnAlignDefaults(newCol)\n\n newCols.push(newCol)\n }\n\n return newCols\n}\n\n@Component({\n selector: 'seam-table',\n templateUrl: './table.component.html',\n styleUrls: ['./table.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class TableComponent<T = any>\n implements OnInit, OnChanges, AfterContentChecked\n{\n static ngAcceptInputType_hasHeader: BooleanInput\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input()\n get columns() {\n return this._columns\n }\n set columns(value: (string | ITableColumn)[] | undefined | null) {\n this._columns = value\n // this._setColumns(value || [])\n const cols = mergeColumnsAndTplColumns(\n value || [],\n this._columnComponents?.toArray() ?? [],\n )\n // this._setColumns(cols)\n this._pendingColumns = cols\n }\n private _columns: (string | ITableColumn)[] | undefined | null\n\n @Input()\n get rows(): T[] | undefined | null {\n return this._rows\n }\n set rows(value: T[] | undefined | null) {\n this._rows = value ? coerceArray(value) : []\n\n if (this._rows.length < 1) {\n this._displayedRows = [{ _emptyDisplay: true } as any]\n } else {\n this._displayedRows = this._rows\n }\n }\n private _rows: T[] | undefined | null = []\n\n get displayedRows() {\n return this._displayedRows\n }\n private _displayedRows: T[] & { _colSpan?: number } = []\n\n @Input() trackBy: TrackByFunction<T> | undefined | null\n\n @Input() size: 'sm' | 'md' | undefined | null\n\n @Input() @InputBoolean() hasHeader = true\n\n private _pendingColumns?: ITableColumn[]\n\n public displayedRecords?: ITableColumn[]\n public displayedColumns?: string[]\n\n @Output() readonly columnsChange = new EventEmitter<{\n previous: ITableColumn[] | undefined\n current: ITableColumn[]\n }>()\n @Output() readonly actionRefreshRequest = new EventEmitter<void>()\n\n @ContentChildren(TheSeamTableColumnComponent)\n set columnComponents(\n value: QueryList<TheSeamTableColumnComponent> | undefined,\n ) {\n // this._columnsManager.setTemplateColumns(translateTemplateColumns(value?.toArray() ?? []))\n this._columnComponents = value\n if (value?.toArray().length === 0) return\n const cols = mergeColumnsAndTplColumns(\n this._columns || [],\n value?.toArray() ?? [],\n )\n // this._setColumns(cols)\n this._pendingColumns = cols\n\n if (this._columnComponentChange) this._columnComponentChange.unsubscribe()\n const obsArr = value?.toArray().map((c) => c.columnChange$)\n if (obsArr && obsArr.length > 0) {\n this._columnComponentChange = merge(obsArr).subscribe(() => {\n const _cols = mergeColumnsAndTplColumns(\n this._columns || [],\n value?.toArray() ?? [],\n )\n // this._setColumns(_cols)\n this._pendingColumns = _cols\n })\n }\n }\n private _columnComponents: QueryList<TheSeamTableColumnComponent> | undefined\n private _columnComponentChange = Subscription.EMPTY\n\n constructor(private readonly _sanitizer: DomSanitizer) {}\n\n ngOnInit() {\n this._updateColumns()\n }\n\n ngAfterContentChecked() {\n this._updateColumns()\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.columns) {\n this._updateColumns()\n }\n }\n\n private _updateColumns() {\n const pending = this._pendingColumns\n this._pendingColumns = undefined\n if (pending) {\n this._setColumns(pending)\n }\n }\n\n // TODO: Improve column handling, like datatable, to avoid excessive updates.\n private _setColumns(cols: (string | ITableColumn)[]) {\n const prev = this.displayedRecords\n const newCols: ITableColumn[] = []\n\n for (const col of cols) {\n if (typeof col === 'string') {\n const newCol: ITableColumn = {\n prop: col,\n name: col,\n }\n newCols.push(newCol)\n } else {\n let name = col.name\n if (name === undefined || name === null) {\n name = col.prop\n }\n const newCol: ITableColumn = {\n ...col,\n prop: col.prop,\n name,\n }\n newCols.push(newCol)\n }\n }\n\n for (const col of newCols) {\n const _col = col as any\n if (_col && _col.cellTypeConfig && _col.cellTypeConfig.styles) {\n _col.cellTypeConfig.styles = this._sanitizer.bypassSecurityTrustStyle(\n _col.cellTypeConfig.styles,\n )\n }\n }\n\n this.displayedRecords = newCols\n this.displayedColumns = newCols.map((c) => c.prop)\n this.columnsChange.emit({ previous: prev, current: newCols })\n }\n\n public triggerActionRefreshRequest() {\n this.actionRefreshRequest.emit(undefined)\n }\n\n _trackByRecords(r: any) {\n return r.prop + r.name\n }\n}\n","<table\n cdk-table\n [dataSource]=\"displayedRows\"\n class=\"table table-header-divider-indented mb-0\"\n [class.table-striped]=\"rows && rows.length > 0\"\n [class.table-sm]=\"size === 'sm'\"\n [class.table-no-header]=\"!hasHeader\"\n>\n <ng-container\n *ngFor=\"\n let r of displayedRecords;\n first as isFirst;\n trackBy: _trackByRecords\n \"\n >\n <ng-container [cdkColumnDef]=\"r.prop\">\n <th cdk-header-cell *cdkHeaderCellDef [class]=\"r.headerClass\">\n <ng-container *ngIf=\"hasHeader\">\n <ng-container *ngIf=\"$any(r)?.headerTemplate; else noHeaderTpl\">\n <ng-template\n [ngTemplateOutlet]=\"$any(r)?.headerTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: r.name,\n prop: r.prop,\n column: r,\n }\"\n >\n </ng-template>\n </ng-container>\n <ng-template #noHeaderTpl>\n {{ r.name }}\n </ng-template>\n </ng-container>\n </th>\n <td\n cdk-cell\n *cdkCellDef=\"let element; index as rowIndex\"\n [attr.colspan]=\"element?._emptyDisplay && isFirst ? 2 : undefined\"\n [class]=\"element?._emptyDisplay ? undefined : r.cellClass\"\n [class.border-top-0]=\"element?._emptyDisplay && isFirst\"\n [class.d-none]=\"element?._emptyDisplay && !isFirst\"\n [style]=\"$any(r)?.cellTypeConfig?.styles\"\n >\n <span [style]=\"$any(r)?.cellTypeConfig?.styles\"></span>\n\n <ng-container\n *ngIf=\"element?._emptyDisplay && isFirst; else hasDataTpl\"\n >\n No records found\n </ng-container>\n\n <ng-template #hasDataTpl>\n <seam-table-cell-type-selector\n *ngIf=\"$any(r)?.cellType; else noCellType\"\n [type]=\"$any(r)?.cellType\"\n [value]=\"element[r.prop]\"\n [rowIndex]=\"rowIndex\"\n [row]=\"element\"\n [colData]=\"r\"\n >\n </seam-table-cell-type-selector>\n <ng-template #noCellType>\n <ng-container *ngIf=\"$any(r)?.cellTemplate; else noCellTpl\">\n <ng-template\n [ngTemplateOutlet]=\"$any(r)?.cellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: element[r.prop],\n row: element,\n rowIndex: rowIndex,\n column: r,\n }\"\n >\n </ng-template>\n </ng-container>\n </ng-template>\n <ng-template #noCellTpl>\n <div class=\"td-text-truncate\" [title]=\"element[r.prop]\">\n {{ element[r.prop] }}\n </div>\n </ng-template>\n </ng-template>\n </td>\n </ng-container>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColumns\"></tr>\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColumns\"></tr>\n</table>\n","import { CdkTableModule } from '@angular/cdk/table'\nimport { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { TheSeamTableCellTypeModule } from '@theseam/ui-common/table-cell-type'\n\nimport { TableComponent } from './table/table.component'\nimport { TheSeamTableColumnComponent } from './table-column.component'\nimport { TheSeamTableCellTplDirective } from './table-cell-tpl.directive'\nimport { TheSeamTableColumnHeaderTplDirective } from './table-column-header-tpl.directive'\n\n@NgModule({\n declarations: [TableComponent],\n imports: [\n CommonModule,\n CdkTableModule,\n TheSeamTableCellTypeModule,\n TheSeamTableColumnComponent,\n TheSeamTableCellTplDirective,\n TheSeamTableColumnHeaderTplDirective,\n ],\n exports: [\n TableComponent,\n TheSeamTableColumnComponent,\n TheSeamTableCellTplDirective,\n TheSeamTableColumnHeaderTplDirective,\n ],\n})\nexport class TheSeamTableModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;MAMa,4BAA4B,CAAA;AACvC,IAAA,QAAQ,GAAG,MAAM,EAAC,WAAgB,EAAC;wGADxB,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAA5B,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAJxC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;MCCY,oCAAoC,CAAA;AAC/C,IAAA,QAAQ,GAAG,MAAM,EAAC,WAAgB,EAAC;wGADxB,oCAAoC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAApC,oCAAoC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAApC,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBAJhD,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,4BAA4B;AACtC,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACUD;AACA;MAOa,2BAA2B,CAAA;AAC7B,IAAA,IAAI;AACJ,IAAA,IAAI;;;;;;AAQJ,IAAA,WAAW;;AAEX,IAAA,SAAS;;;;IAMV,cAAc,GAAG,IAAI;AAG7B,IAAA,gBAAgB;;AAIhB,IAAA,kBAAkB;AAMlB,IAAA,kBAAkB;AAElB,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,kBAAkB;IAC3D;;AAIA,IAAA,oBAAoB;AAMpB,IAAA,oBAAoB;AAEpB,IAAA,IAAI,cAAc,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,oBAAoB;IAC/D;AAEiB,IAAA,aAAa,GAAG,IAAI,OAAO,EAAQ;AAC7C,IAAA,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE;;;;AAMxD,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE;AACvB,YAAA,IAAI,CAAC,cAAc,GAAG,KAAK;QAC7B;aAAO;;AAEL,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;QAC3B;IACF;wGAjEW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAA3B,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,kBAAA,EAAA,CAAA,cAAA,EAAA,oBAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,gBAAA,EAAA,sBAAA,CAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAoBxB,4BAA4B,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAO5B,4BAA4B,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAClC,WAAW,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,sBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAaL,oCAAoC,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAC1C,WAAW,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EA5CT,CAAA,CAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA;;4FAED,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBALvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,CAAA,CAAE;AACb,iBAAA;;sBAEE;;sBACA;;sBAQA;;sBAEA;;sBAQA,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,4BAA4B,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;sBAI3D,KAAK;uBAAC,cAAc;;sBAGpB,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,4BAA4B,EAAE;AAC1C,wBAAA,IAAI,EAAE,WAAW;AACjB,wBAAA,MAAM,EAAE,IAAI;AACb,qBAAA;;sBAQA,KAAK;uBAAC,gBAAgB;;sBAGtB,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,oCAAoC,EAAE;AAClD,wBAAA,IAAI,EAAE,WAAW;AACjB,wBAAA,MAAM,EAAE,IAAI;AACb,qBAAA;;;ACvBH,SAAS,yBAAyB,CAChC,OAAkC,EAClC,UAAyC,EAAA;IAEzC,MAAM,OAAO,GAAmB,EAAE;AAElC,IAAA,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE;AACzB,QAAA,MAAM,MAAM,GAAiB;AAC3B,YAAA,IAAI,OAAO,GAAG,KAAK;AACjB,kBAAE;AACE,oBAAA,IAAI,EAAE,GAAG;AACT,oBAAA,IAAI,EAAE,GAAG;AACV;kBACD,GAAG,CAAC;SACT;AACD,QAAA,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC;;QAE7D,IAAI,MAAM,EAAE;AACV,YAAA,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE;gBACrD,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,SAAS;YACxC;AACA,YAAA,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,IAAI,MAAM,CAAC,YAAY,KAAK,IAAI,EAAE;gBACrE,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,SAAS;YACxD;AACA,YAAA,IACE,MAAM,CAAC,cAAc,KAAK,SAAS;AACnC,gBAAA,MAAM,CAAC,cAAc,KAAK,IAAI,EAC9B;gBACA,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,SAAS;YAC5D;AACA,YAAA,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI,EAAE;gBAC/D,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,SAAS;YAClD;AACA,YAAA,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,IAAI,MAAM,CAAC,WAAW,KAAK,IAAI,EAAE;gBACnE,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,SAAS;YACtD;QACF;QAEA,sBAAsB,CAAC,MAAM,CAAC;AAE9B,QAAA,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;IACtB;AAEA,IAAA,OAAO,OAAO;AAChB;MASa,cAAc,CAAA;AA0FI,IAAA,UAAA;IAvF7B,OAAO,2BAA2B;AAEjB,IAAA,cAAc,GAAG,IAAI,OAAO,EAAQ;AAErD,IAAA,IACI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ;IACtB;IACA,IAAI,OAAO,CAAC,KAAmD,EAAA;AAC7D,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;;AAErB,QAAA,MAAM,IAAI,GAAG,yBAAyB,CACpC,KAAK,IAAI,EAAE,EACX,IAAI,CAAC,iBAAiB,EAAE,OAAO,EAAE,IAAI,EAAE,CACxC;;AAED,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI;IAC7B;AACQ,IAAA,QAAQ;AAEhB,IAAA,IACI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK;IACnB;IACA,IAAI,IAAI,CAAC,KAA6B,EAAA;AACpC,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE;QAE5C,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,IAAI,CAAC,cAAc,GAAG,CAAC,EAAE,aAAa,EAAE,IAAI,EAAS,CAAC;QACxD;aAAO;AACL,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK;QAClC;IACF;IACQ,KAAK,GAA2B,EAAE;AAE1C,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,cAAc;IAC5B;IACQ,cAAc,GAAgC,EAAE;AAE/C,IAAA,OAAO;AAEP,IAAA,IAAI;IAEY,SAAS,GAAG,IAAI;AAEjC,IAAA,eAAe;AAEhB,IAAA,gBAAgB;AAChB,IAAA,gBAAgB;AAEJ,IAAA,aAAa,GAAG,IAAI,YAAY,EAG/C;AACe,IAAA,oBAAoB,GAAG,IAAI,YAAY,EAAQ;IAElE,IACI,gBAAgB,CAClB,KAAyD,EAAA;;AAGzD,QAAA,IAAI,CAAC,iBAAiB,GAAG,KAAK;AAC9B,QAAA,IAAI,KAAK,EAAE,OAAO,EAAE,CAAC,MAAM,KAAK,CAAC;YAAE;AACnC,QAAA,MAAM,IAAI,GAAG,yBAAyB,CACpC,IAAI,CAAC,QAAQ,IAAI,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CACvB;;AAED,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI;QAE3B,IAAI,IAAI,CAAC,sBAAsB;AAAE,YAAA,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE;AAC1E,QAAA,MAAM,MAAM,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC;QAC3D,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,MAAK;AACzD,gBAAA,MAAM,KAAK,GAAG,yBAAyB,CACrC,IAAI,CAAC,QAAQ,IAAI,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CACvB;;AAED,gBAAA,IAAI,CAAC,eAAe,GAAG,KAAK;AAC9B,YAAA,CAAC,CAAC;QACJ;IACF;AACQ,IAAA,iBAAiB;AACjB,IAAA,sBAAsB,GAAG,YAAY,CAAC,KAAK;AAEnD,IAAA,WAAA,CAA6B,UAAwB,EAAA;QAAxB,IAAA,CAAA,UAAU,GAAV,UAAU;IAAiB;IAExD,QAAQ,GAAA;QACN,IAAI,CAAC,cAAc,EAAE;IACvB;IAEA,qBAAqB,GAAA;QACnB,IAAI,CAAC,cAAc,EAAE;IACvB;AAEA,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,OAAO,EAAE;YACnB,IAAI,CAAC,cAAc,EAAE;QACvB;IACF;IAEQ,cAAc,GAAA;AACpB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe;AACpC,QAAA,IAAI,CAAC,eAAe,GAAG,SAAS;QAChC,IAAI,OAAO,EAAE;AACX,YAAA,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QAC3B;IACF;;AAGQ,IAAA,WAAW,CAAC,IAA+B,EAAA;AACjD,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB;QAClC,MAAM,OAAO,GAAmB,EAAE;AAElC,QAAA,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;AACtB,YAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;AAC3B,gBAAA,MAAM,MAAM,GAAiB;AAC3B,oBAAA,IAAI,EAAE,GAAG;AACT,oBAAA,IAAI,EAAE,GAAG;iBACV;AACD,gBAAA,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YACtB;iBAAO;AACL,gBAAA,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI;gBACnB,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE;AACvC,oBAAA,IAAI,GAAG,GAAG,CAAC,IAAI;gBACjB;AACA,gBAAA,MAAM,MAAM,GAAiB;AAC3B,oBAAA,GAAG,GAAG;oBACN,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI;iBACL;AACD,gBAAA,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YACtB;QACF;AAEA,QAAA,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE;YACzB,MAAM,IAAI,GAAG,GAAU;AACvB,YAAA,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;AAC7D,gBAAA,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,wBAAwB,CACnE,IAAI,CAAC,cAAc,CAAC,MAAM,CAC3B;YACH;QACF;AAEA,QAAA,IAAI,CAAC,gBAAgB,GAAG,OAAO;AAC/B,QAAA,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;AAClD,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAC/D;IAEO,2BAA2B,GAAA;AAChC,QAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC;IAC3C;AAEA,IAAA,eAAe,CAAC,CAAM,EAAA;AACpB,QAAA,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI;IACxB;wGAhKW,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAAd,cAAc,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,SAAA,EA4DR,2BAA2B,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC7J9C,69FAwFA,EAAA,MAAA,EAAA,CAAA,4EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,YAAA,EAAA,uBAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,oCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,uBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,KAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;ADwD2B,UAAA,CAAA;AAAf,IAAA,YAAY;AAAmB,CAAA,EAAA,cAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA;4FA/C9B,cAAc,EAAA,UAAA,EAAA,CAAA;kBAP1B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,EAAA,eAAA,EAGL,uBAAuB,CAAC,MAAM,cACnC,KAAK,EAAA,QAAA,EAAA,69FAAA,EAAA,MAAA,EAAA,CAAA,4EAAA,CAAA,EAAA;;sBAShB;;sBAgBA;;sBAoBA;;sBAEA;;sBAEA;;sBAOA;;sBAIA;;sBAEA,eAAe;uBAAC,2BAA2B;;;MEjIjC,kBAAkB,CAAA;wGAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;yGAAlB,kBAAkB,EAAA,YAAA,EAAA,CAhBd,cAAc,CAAA,EAAA,OAAA,EAAA,CAE3B,YAAY;YACZ,cAAc;YACd,0BAA0B;YAC1B,2BAA2B;YAC3B,4BAA4B;AAC5B,YAAA,oCAAoC,aAGpC,cAAc;YACd,2BAA2B;YAC3B,4BAA4B;YAC5B,oCAAoC,CAAA,EAAA,CAAA;AAG3B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAd3B,YAAY;YACZ,cAAc;YACd,0BAA0B,CAAA,EAAA,CAAA;;4FAYjB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAjB9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,cAAc,CAAC;AAC9B,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,cAAc;wBACd,0BAA0B;wBAC1B,2BAA2B;wBAC3B,4BAA4B;wBAC5B,oCAAoC;AACrC,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,cAAc;wBACd,2BAA2B;wBAC3B,4BAA4B;wBAC5B,oCAAoC;AACrC,qBAAA;AACF,iBAAA;;;AC3BD;;AAEG;;;;"}
|
|
@@ -462,10 +462,10 @@ class TheSeamTelInputDirective {
|
|
|
462
462
|
getHostElement() {
|
|
463
463
|
return this._elementRef.nativeElement;
|
|
464
464
|
}
|
|
465
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
466
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.
|
|
465
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTelInputDirective, deps: [{ token: i0.ElementRef }, { token: i1.AssetLoaderService }, { token: i0.NgZone }, { token: DOCUMENT, optional: true }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
466
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: TheSeamTelInputDirective, isStandalone: true, selector: "input[seamTelInput]", inputs: { value: "value" }, host: { properties: { "attr.type": "this._attrType" } }, exportAs: ["seamTelInput"], ngImport: i0 });
|
|
467
467
|
}
|
|
468
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
468
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTelInputDirective, decorators: [{
|
|
469
469
|
type: Directive,
|
|
470
470
|
args: [{
|
|
471
471
|
selector: 'input[seamTelInput]',
|
|
@@ -659,8 +659,8 @@ class TheSeamTelInputComponent {
|
|
|
659
659
|
hasFocus() {
|
|
660
660
|
return this._focusOrigin !== null && this._focusOrigin !== undefined;
|
|
661
661
|
}
|
|
662
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
663
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
662
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTelInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.Injector }, { token: i0.ElementRef }, { token: i1$1.FocusMonitor }], target: i0.ɵɵFactoryTarget.Component });
|
|
663
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: TheSeamTelInputComponent, isStandalone: true, selector: "seam-tel-input", inputs: { required: "required", disabled: "disabled", tabIndex: "tabIndex", name: "name", value: "value" }, outputs: { change: "change" }, host: { listeners: { "focus": "_onFocus($event)" }, properties: { "attr.disabled": "this._attrDisabled", "attr.tabindex": "this._attrTabIndex" } }, providers: [
|
|
664
664
|
{
|
|
665
665
|
provide: NG_VALUE_ACCESSOR,
|
|
666
666
|
useExisting: forwardRef(() => TheSeamTelInputComponent),
|
|
@@ -671,7 +671,7 @@ class TheSeamTelInputComponent {
|
|
|
671
671
|
__decorate([
|
|
672
672
|
InputBoolean()
|
|
673
673
|
], TheSeamTelInputComponent.prototype, "required", void 0);
|
|
674
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
674
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTelInputComponent, decorators: [{
|
|
675
675
|
type: Component,
|
|
676
676
|
args: [{ selector: 'seam-tel-input', providers: [
|
|
677
677
|
{
|
|
@@ -782,10 +782,10 @@ class TheSeamPhoneNumberPipe {
|
|
|
782
782
|
// this._cdr.markForCheck()
|
|
783
783
|
this._cdr.detectChanges();
|
|
784
784
|
}
|
|
785
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
786
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.
|
|
785
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamPhoneNumberPipe, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
786
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: TheSeamPhoneNumberPipe, isStandalone: false, name: "phoneNumber", pure: false });
|
|
787
787
|
}
|
|
788
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
788
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamPhoneNumberPipe, decorators: [{
|
|
789
789
|
type: Pipe,
|
|
790
790
|
args: [{
|
|
791
791
|
name: 'phoneNumber',
|
|
@@ -795,20 +795,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.7", ngImpor
|
|
|
795
795
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }] });
|
|
796
796
|
|
|
797
797
|
class TheSeamTelInputModule {
|
|
798
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
799
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.
|
|
798
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTelInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
799
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTelInputModule, declarations: [TheSeamPhoneNumberPipe], imports: [CommonModule,
|
|
800
800
|
ReactiveFormsModule,
|
|
801
801
|
TheSeamFormFieldModule,
|
|
802
802
|
TheSeamTelInputDirective,
|
|
803
803
|
TheSeamTelInputComponent], exports: [TheSeamTelInputDirective,
|
|
804
804
|
TheSeamTelInputComponent,
|
|
805
805
|
TheSeamPhoneNumberPipe] });
|
|
806
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.
|
|
806
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTelInputModule, imports: [CommonModule,
|
|
807
807
|
ReactiveFormsModule,
|
|
808
808
|
TheSeamFormFieldModule,
|
|
809
809
|
TheSeamTelInputComponent] });
|
|
810
810
|
}
|
|
811
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
811
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TheSeamTelInputModule, decorators: [{
|
|
812
812
|
type: NgModule,
|
|
813
813
|
args: [{
|
|
814
814
|
declarations: [TheSeamPhoneNumberPipe],
|