@angular/material 19.0.0-next.8 → 19.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_index.scss +1 -2
- package/autocomplete/_autocomplete-theme.scss +37 -24
- package/autocomplete/index.d.ts +5 -6
- package/badge/_badge-theme.scss +38 -24
- package/bottom-sheet/_bottom-sheet-theme.scss +32 -20
- package/button/_button-theme.scss +229 -105
- package/button/_fab-theme.scss +95 -44
- package/button/_icon-button-theme.scss +38 -25
- package/button/index.d.ts +3 -3
- package/button-toggle/_button-toggle-theme.scss +62 -37
- package/card/_card-theme.scss +79 -38
- package/card/index.d.ts +2 -3
- package/checkbox/_checkbox-theme.scss +16 -10
- package/chips/_chips-theme.scss +64 -30
- package/core/_core-theme.scss +55 -37
- package/core/_core.scss +3 -6
- package/core/option/_optgroup-theme.scss +29 -18
- package/core/option/_option-theme.scss +34 -21
- package/core/ripple/_ripple-theme.scss +33 -21
- package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +49 -23
- package/core/theming/_config-validation.scss +4 -4
- package/core/theming/_definition.scss +12 -2
- package/core/tokens/_m3-system.scss +86 -42
- package/core/tokens/_token-utils.scss +91 -34
- package/core/tokens/m2/mat/_badge.scss +12 -3
- package/core/tokens/m2/mdc/_radio.scss +1 -1
- package/core/tokens/m3/definitions/_md-comp-elevated-card.scss +1 -1
- package/core/tokens/m3/mat/_badge.scss +6 -3
- package/datepicker/_datepicker-theme.scss +53 -32
- package/datepicker/index.d.ts +33 -34
- package/dialog/_dialog-theme.scss +46 -23
- package/divider/_divider-theme.scss +28 -17
- package/expansion/_expansion-theme.scss +36 -24
- package/fesm2022/autocomplete/testing.mjs +2 -5
- package/fesm2022/autocomplete/testing.mjs.map +1 -1
- package/fesm2022/autocomplete.mjs +225 -148
- package/fesm2022/autocomplete.mjs.map +1 -1
- package/fesm2022/badge/testing.mjs +2 -5
- package/fesm2022/badge/testing.mjs.map +1 -1
- package/fesm2022/badge.mjs +45 -35
- package/fesm2022/badge.mjs.map +1 -1
- package/fesm2022/bottom-sheet/testing.mjs +1 -1
- package/fesm2022/bottom-sheet/testing.mjs.map +1 -1
- package/fesm2022/bottom-sheet.mjs +80 -58
- package/fesm2022/bottom-sheet.mjs.map +1 -1
- package/fesm2022/button/testing.mjs +2 -2
- package/fesm2022/button/testing.mjs.map +1 -1
- package/fesm2022/button-toggle/testing.mjs +4 -7
- package/fesm2022/button-toggle/testing.mjs.map +1 -1
- package/fesm2022/button-toggle.mjs +82 -45
- package/fesm2022/button-toggle.mjs.map +1 -1
- package/fesm2022/button.mjs +106 -79
- package/fesm2022/button.mjs.map +1 -1
- package/fesm2022/card/testing.mjs +3 -6
- package/fesm2022/card/testing.mjs.map +1 -1
- package/fesm2022/card.mjs +56 -69
- package/fesm2022/card.mjs.map +1 -1
- package/fesm2022/checkbox/testing.mjs +4 -7
- package/fesm2022/checkbox/testing.mjs.map +1 -1
- package/fesm2022/checkbox.mjs +104 -62
- package/fesm2022/checkbox.mjs.map +1 -1
- package/fesm2022/chips/testing.mjs +11 -14
- package/fesm2022/chips/testing.mjs.map +1 -1
- package/fesm2022/chips.mjs +322 -276
- package/fesm2022/chips.mjs.map +1 -1
- package/fesm2022/core/testing.mjs +5 -11
- package/fesm2022/core/testing.mjs.map +1 -1
- package/fesm2022/core.mjs +242 -187
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/datepicker/testing.mjs +13 -22
- package/fesm2022/datepicker/testing.mjs.map +1 -1
- package/fesm2022/datepicker.mjs +827 -582
- package/fesm2022/datepicker.mjs.map +1 -1
- package/fesm2022/dialog/testing.mjs +15 -10
- package/fesm2022/dialog/testing.mjs.map +1 -1
- package/fesm2022/dialog.mjs +221 -156
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/divider/testing.mjs +1 -1
- package/fesm2022/divider/testing.mjs.map +1 -1
- package/fesm2022/divider.mjs +10 -12
- package/fesm2022/divider.mjs.map +1 -1
- package/fesm2022/expansion/testing.mjs +7 -10
- package/fesm2022/expansion/testing.mjs.map +1 -1
- package/fesm2022/expansion.mjs +86 -80
- package/fesm2022/expansion.mjs.map +1 -1
- package/fesm2022/form-field/testing.mjs +12 -15
- package/fesm2022/form-field/testing.mjs.map +1 -1
- package/fesm2022/form-field.mjs +179 -132
- package/fesm2022/form-field.mjs.map +1 -1
- package/fesm2022/grid-list/testing.mjs +11 -17
- package/fesm2022/grid-list/testing.mjs.map +1 -1
- package/fesm2022/grid-list.mjs +75 -56
- package/fesm2022/grid-list.mjs.map +1 -1
- package/fesm2022/icon/testing.mjs +8 -8
- package/fesm2022/icon/testing.mjs.map +1 -1
- package/fesm2022/icon.mjs +66 -46
- package/fesm2022/icon.mjs.map +1 -1
- package/fesm2022/input/testing.mjs +3 -3
- package/fesm2022/input/testing.mjs.map +1 -1
- package/fesm2022/input.mjs +103 -72
- package/fesm2022/input.mjs.map +1 -1
- package/fesm2022/list/testing.mjs +21 -38
- package/fesm2022/list/testing.mjs.map +1 -1
- package/fesm2022/list.mjs +197 -195
- package/fesm2022/list.mjs.map +1 -1
- package/fesm2022/menu/testing.mjs +3 -6
- package/fesm2022/menu/testing.mjs.map +1 -1
- package/fesm2022/menu.mjs +178 -127
- package/fesm2022/menu.mjs.map +1 -1
- package/fesm2022/paginator/testing.mjs +10 -13
- package/fesm2022/paginator/testing.mjs.map +1 -1
- package/fesm2022/paginator.mjs +83 -58
- package/fesm2022/paginator.mjs.map +1 -1
- package/fesm2022/progress-bar/testing.mjs +1 -1
- package/fesm2022/progress-bar/testing.mjs.map +1 -1
- package/fesm2022/progress-bar.mjs +36 -35
- package/fesm2022/progress-bar.mjs.map +1 -1
- package/fesm2022/progress-spinner/testing.mjs +1 -1
- package/fesm2022/progress-spinner/testing.mjs.map +1 -1
- package/fesm2022/progress-spinner.mjs +28 -14
- package/fesm2022/progress-spinner.mjs.map +1 -1
- package/fesm2022/radio/testing.mjs +6 -12
- package/fesm2022/radio/testing.mjs.map +1 -1
- package/fesm2022/radio.mjs +123 -87
- package/fesm2022/radio.mjs.map +1 -1
- package/fesm2022/select/testing.mjs +6 -9
- package/fesm2022/select/testing.mjs.map +1 -1
- package/fesm2022/select.mjs +219 -182
- package/fesm2022/select.mjs.map +1 -1
- package/fesm2022/sidenav/testing.mjs +6 -6
- package/fesm2022/sidenav/testing.mjs.map +1 -1
- package/fesm2022/sidenav.mjs +136 -125
- package/fesm2022/sidenav.mjs.map +1 -1
- package/fesm2022/slide-toggle/testing.mjs +3 -6
- package/fesm2022/slide-toggle/testing.mjs.map +1 -1
- package/fesm2022/slide-toggle.mjs +77 -47
- package/fesm2022/slide-toggle.mjs.map +1 -1
- package/fesm2022/slider/testing.mjs +2 -2
- package/fesm2022/slider/testing.mjs.map +1 -1
- package/fesm2022/slider.mjs +262 -194
- package/fesm2022/slider.mjs.map +1 -1
- package/fesm2022/snack-bar/testing.mjs +4 -7
- package/fesm2022/snack-bar/testing.mjs.map +1 -1
- package/fesm2022/snack-bar.mjs +143 -111
- package/fesm2022/snack-bar.mjs.map +1 -1
- package/fesm2022/sort/testing.mjs +3 -6
- package/fesm2022/sort/testing.mjs.map +1 -1
- package/fesm2022/sort.mjs +94 -74
- package/fesm2022/sort.mjs.map +1 -1
- package/fesm2022/stepper/testing.mjs +4 -4
- package/fesm2022/stepper/testing.mjs.map +1 -1
- package/fesm2022/stepper.mjs +146 -113
- package/fesm2022/stepper.mjs.map +1 -1
- package/fesm2022/table/testing.mjs +13 -25
- package/fesm2022/table/testing.mjs.map +1 -1
- package/fesm2022/table.mjs +183 -194
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/tabs/testing.mjs +5 -5
- package/fesm2022/tabs/testing.mjs.map +1 -1
- package/fesm2022/tabs.mjs +329 -251
- package/fesm2022/tabs.mjs.map +1 -1
- package/fesm2022/timepicker/testing.mjs +7 -16
- package/fesm2022/timepicker/testing.mjs.map +1 -1
- package/fesm2022/timepicker.mjs +160 -155
- package/fesm2022/timepicker.mjs.map +1 -1
- package/fesm2022/toolbar/testing.mjs +2 -5
- package/fesm2022/toolbar/testing.mjs.map +1 -1
- package/fesm2022/toolbar.mjs +26 -17
- package/fesm2022/toolbar.mjs.map +1 -1
- package/fesm2022/tooltip/testing.mjs +6 -9
- package/fesm2022/tooltip/testing.mjs.map +1 -1
- package/fesm2022/tooltip.mjs +97 -74
- package/fesm2022/tooltip.mjs.map +1 -1
- package/fesm2022/tree/testing.mjs +3 -6
- package/fesm2022/tree/testing.mjs.map +1 -1
- package/fesm2022/tree.mjs +57 -61
- package/fesm2022/tree.mjs.map +1 -1
- package/form-field/_form-field-theme.scss +114 -61
- package/form-field/index.d.ts +9 -10
- package/grid-list/_grid-list-theme.scss +25 -15
- package/icon/_icon-theme.scss +22 -14
- package/input/_input-theme.scss +18 -11
- package/list/_list-theme.scss +89 -47
- package/list/index.d.ts +20 -21
- package/menu/_menu-theme.scss +33 -21
- package/menu/index.d.ts +8 -9
- package/package.json +2 -2
- package/paginator/_paginator-theme.scss +39 -23
- package/prebuilt-themes/azure-blue.css +1 -1
- package/prebuilt-themes/cyan-orange.css +1 -1
- package/prebuilt-themes/deeppurple-amber.css +1 -1
- package/prebuilt-themes/indigo-pink.css +1 -1
- package/prebuilt-themes/magenta-violet.css +1 -1
- package/prebuilt-themes/pink-bluegrey.css +1 -1
- package/prebuilt-themes/purple-green.css +1 -1
- package/prebuilt-themes/rose-red.css +1 -1
- package/progress-bar/_progress-bar-theme.scss +20 -16
- package/progress-spinner/_progress-spinner-theme.scss +41 -25
- package/progress-spinner/index.d.ts +3 -4
- package/radio/_radio-theme.scss +60 -32
- package/radio/index.d.ts +2 -3
- package/schematics/collection.json +3 -3
- package/schematics/ng-add/index.js +1 -1
- package/schematics/ng-add/index.mjs +1 -1
- package/schematics/ng-add/theming/create-custom-theme.js +1 -6
- package/schematics/ng-add/theming/create-custom-theme.mjs +1 -6
- package/schematics/ng-generate/{m3-theme → theme-color}/index_bundled.js +480 -288
- package/schematics/ng-generate/theme-color/index_bundled.js.map +7 -0
- package/schematics/ng-generate/{m3-theme → theme-color}/schema.json +7 -13
- package/schematics/ng-update/index_bundled.js +6 -1
- package/schematics/ng-update/index_bundled.js.map +1 -1
- package/select/_select-theme.scss +38 -25
- package/select/index.d.ts +6 -7
- package/sidenav/_sidenav-theme.scss +28 -17
- package/slide-toggle/_slide-toggle-theme.scss +52 -28
- package/slider/_slider-theme.scss +62 -38
- package/snack-bar/_snack-bar-theme.scss +29 -17
- package/sort/_sort-theme.scss +33 -21
- package/stepper/_stepper-theme.scss +40 -27
- package/stepper/index.d.ts +14 -15
- package/table/_table-theme.scss +36 -23
- package/tabs/_tabs-theme.scss +97 -50
- package/tabs/index.d.ts +2 -2
- package/timepicker/_timepicker-theme.scss +37 -24
- package/toolbar/_toolbar-theme.scss +35 -22
- package/tooltip/_tooltip-theme.scss +18 -15
- package/tooltip/index.d.ts +5 -6
- package/tree/_tree-theme.scss +33 -21
- package/schematics/ng-generate/m3-theme/index_bundled.js.map +0 -7
package/fesm2022/table.mjs
CHANGED
|
@@ -12,27 +12,23 @@ import { map } from 'rxjs/operators';
|
|
|
12
12
|
* tables that animate rows.
|
|
13
13
|
*/
|
|
14
14
|
class MatRecycleRows {
|
|
15
|
-
static
|
|
16
|
-
static
|
|
15
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRecycleRows, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
16
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatRecycleRows, isStandalone: true, selector: "mat-table[recycleRows], table[mat-table][recycleRows]", providers: [{ provide: _VIEW_REPEATER_STRATEGY, useClass: _RecycleViewRepeaterStrategy }], ngImport: i0 });
|
|
17
17
|
}
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRecycleRows, decorators: [{
|
|
19
19
|
type: Directive,
|
|
20
20
|
args: [{
|
|
21
21
|
selector: 'mat-table[recycleRows], table[mat-table][recycleRows]',
|
|
22
22
|
providers: [{ provide: _VIEW_REPEATER_STRATEGY, useClass: _RecycleViewRepeaterStrategy }],
|
|
23
|
-
standalone: true,
|
|
24
23
|
}]
|
|
25
24
|
}] });
|
|
26
25
|
class MatTable extends CdkTable {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
}
|
|
34
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: MatTable, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
35
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.0-next.8", type: MatTable, isStandalone: true, selector: "mat-table, table[mat-table]", host: { properties: { "class.mdc-table-fixed-layout": "fixedLayout" }, classAttribute: "mat-mdc-table mdc-data-table__table" }, providers: [
|
|
26
|
+
/** Overrides the sticky CSS class set by the `CdkTable`. */
|
|
27
|
+
stickyCssClass = 'mat-mdc-table-sticky';
|
|
28
|
+
/** Overrides the need to add position: sticky on every sticky cell element in `CdkTable`. */
|
|
29
|
+
needsPositionStickyOnElement = false;
|
|
30
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatTable, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.0-next.10", type: MatTable, isStandalone: true, selector: "mat-table, table[mat-table]", host: { properties: { "class.mdc-table-fixed-layout": "fixedLayout" }, classAttribute: "mat-mdc-table mdc-data-table__table" }, providers: [
|
|
36
32
|
{ provide: CdkTable, useExisting: MatTable },
|
|
37
33
|
{ provide: CDK_TABLE, useExisting: MatTable },
|
|
38
34
|
{ provide: _COALESCED_STYLE_SCHEDULER, useClass: _CoalescedStyleScheduler },
|
|
@@ -70,9 +66,9 @@ class MatTable extends CdkTable {
|
|
|
70
66
|
<ng-container noDataRowOutlet/>
|
|
71
67
|
<ng-container footerRowOutlet/>
|
|
72
68
|
}
|
|
73
|
-
`, isInline: true, styles: [".mat-mdc-table-sticky{position:sticky !important}mat-table{display:block}mat-header-row{min-height:56px}mat-row,mat-footer-row{min-height:48px}mat-row,mat-header-row,mat-footer-row{display:flex;border-width:0;border-bottom-width:1px;border-style:solid;align-items:center;box-sizing:border-box}mat-cell:first-of-type,mat-header-cell:first-of-type,mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] mat-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}mat-cell:last-of-type,mat-header-cell:last-of-type,mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] mat-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}mat-cell,mat-header-cell,mat-footer-cell{flex:1;display:flex;align-items:center;overflow:hidden;word-wrap:break-word;min-height:inherit}.mat-mdc-table{min-width:100%;border:0;border-spacing:0;table-layout:auto;white-space:normal;background-color:var(--mat-table-background-color, var(--mat-
|
|
69
|
+
`, isInline: true, styles: [".mat-mdc-table-sticky{position:sticky !important}mat-table{display:block}mat-header-row{min-height:56px}mat-row,mat-footer-row{min-height:48px}mat-row,mat-header-row,mat-footer-row{display:flex;border-width:0;border-bottom-width:1px;border-style:solid;align-items:center;box-sizing:border-box}mat-cell:first-of-type,mat-header-cell:first-of-type,mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] mat-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}mat-cell:last-of-type,mat-header-cell:last-of-type,mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] mat-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}mat-cell,mat-header-cell,mat-footer-cell{flex:1;display:flex;align-items:center;overflow:hidden;word-wrap:break-word;min-height:inherit}.mat-mdc-table{min-width:100%;border:0;border-spacing:0;table-layout:auto;white-space:normal;background-color:var(--mat-table-background-color, var(--mat-sys-surface))}.mdc-data-table__cell{box-sizing:border-box;overflow:hidden;text-align:left;text-overflow:ellipsis}[dir=rtl] .mdc-data-table__cell{text-align:right}.mdc-data-table__cell,.mdc-data-table__header-cell{padding:0 16px}.mat-mdc-header-row{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;height:var(--mat-table-header-container-height, 56px);color:var(--mat-table-header-headline-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)));font-family:var(--mat-table-header-headline-font, var(--mat-sys-title-small-font, Roboto, sans-serif));line-height:var(--mat-table-header-headline-line-height, var(--mat-sys-title-small-line-height));font-size:var(--mat-table-header-headline-size, var(--mat-sys-title-small-size, 14px));font-weight:var(--mat-table-header-headline-weight, var(--mat-sys-title-small-weight, 500))}.mat-mdc-row{height:var(--mat-table-row-item-container-height, 52px);color:var(--mat-table-row-item-label-text-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)))}.mat-mdc-row,.mdc-data-table__content{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-table-row-item-label-text-font, var(--mat-sys-body-medium-font, Roboto, sans-serif));line-height:var(--mat-table-row-item-label-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-table-row-item-label-text-size, var(--mat-sys-body-medium-size, 14px));font-weight:var(--mat-table-row-item-label-text-weight, var(--mat-sys-body-medium-weight))}.mat-mdc-footer-row{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;height:var(--mat-table-footer-container-height, 52px);color:var(--mat-table-row-item-label-text-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)));font-family:var(--mat-table-footer-supporting-text-font, var(--mat-sys-body-medium-font, Roboto, sans-serif));line-height:var(--mat-table-footer-supporting-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-table-footer-supporting-text-size, var(--mat-sys-body-medium-size, 14px));font-weight:var(--mat-table-footer-supporting-text-weight, var(--mat-sys-body-medium-weight));letter-spacing:var(--mat-table-footer-supporting-text-tracking, var(--mat-sys-body-medium-tracking))}.mat-mdc-header-cell{border-bottom-color:var(--mat-table-row-item-outline-color, var(--mat-sys-outline, rgba(0, 0, 0, 0.12)));border-bottom-width:var(--mat-table-row-item-outline-width, 1px);border-bottom-style:solid;letter-spacing:var(--mat-table-header-headline-tracking, var(--mat-sys-title-small-tracking));font-weight:inherit;line-height:inherit;box-sizing:border-box;text-overflow:ellipsis;overflow:hidden;outline:none;text-align:left}[dir=rtl] .mat-mdc-header-cell{text-align:right}.mat-mdc-cell{border-bottom-color:var(--mat-table-row-item-outline-color, var(--mat-sys-outline, rgba(0, 0, 0, 0.12)));border-bottom-width:var(--mat-table-row-item-outline-width, 1px);border-bottom-style:solid;letter-spacing:var(--mat-table-row-item-label-text-tracking, var(--mat-sys-body-medium-tracking));line-height:inherit}.mdc-data-table__row:last-child .mat-mdc-cell{border-bottom:none}.mat-mdc-footer-cell{letter-spacing:var(--mat-table-row-item-label-text-tracking, var(--mat-sys-body-medium-tracking))}mat-row.mat-mdc-row,mat-header-row.mat-mdc-header-row,mat-footer-row.mat-mdc-footer-row{border-bottom:none}.mat-mdc-table tbody,.mat-mdc-table tfoot,.mat-mdc-table thead,.mat-mdc-cell,.mat-mdc-footer-cell,.mat-mdc-header-row,.mat-mdc-row,.mat-mdc-footer-row,.mat-mdc-table .mat-mdc-header-cell{background:inherit}.mat-mdc-table mat-header-row.mat-mdc-header-row,.mat-mdc-table mat-row.mat-mdc-row,.mat-mdc-table mat-footer-row.mat-mdc-footer-cell{height:unset}mat-header-cell.mat-mdc-header-cell,mat-cell.mat-mdc-cell,mat-footer-cell.mat-mdc-footer-cell{align-self:stretch}"], dependencies: [{ kind: "directive", type: HeaderRowOutlet, selector: "[headerRowOutlet]" }, { kind: "directive", type: DataRowOutlet, selector: "[rowOutlet]" }, { kind: "directive", type: NoDataRowOutlet, selector: "[noDataRowOutlet]" }, { kind: "directive", type: FooterRowOutlet, selector: "[footerRowOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
|
|
74
70
|
}
|
|
75
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
71
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatTable, decorators: [{
|
|
76
72
|
type: Component,
|
|
77
73
|
args: [{ selector: 'mat-table, table[mat-table]', exportAs: 'matTable', template: `
|
|
78
74
|
<ng-content select="caption"/>
|
|
@@ -115,7 +111,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
115
111
|
{ provide: _VIEW_REPEATER_STRATEGY, useClass: _DisposeViewRepeaterStrategy },
|
|
116
112
|
// Prevent nested tables from seeing this table's StickyPositioningListener.
|
|
117
113
|
{ provide: STICKY_POSITIONING_LISTENER, useValue: null },
|
|
118
|
-
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default,
|
|
114
|
+
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, imports: [HeaderRowOutlet, DataRowOutlet, NoDataRowOutlet, FooterRowOutlet], styles: [".mat-mdc-table-sticky{position:sticky !important}mat-table{display:block}mat-header-row{min-height:56px}mat-row,mat-footer-row{min-height:48px}mat-row,mat-header-row,mat-footer-row{display:flex;border-width:0;border-bottom-width:1px;border-style:solid;align-items:center;box-sizing:border-box}mat-cell:first-of-type,mat-header-cell:first-of-type,mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] mat-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}mat-cell:last-of-type,mat-header-cell:last-of-type,mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] mat-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}mat-cell,mat-header-cell,mat-footer-cell{flex:1;display:flex;align-items:center;overflow:hidden;word-wrap:break-word;min-height:inherit}.mat-mdc-table{min-width:100%;border:0;border-spacing:0;table-layout:auto;white-space:normal;background-color:var(--mat-table-background-color, var(--mat-sys-surface))}.mdc-data-table__cell{box-sizing:border-box;overflow:hidden;text-align:left;text-overflow:ellipsis}[dir=rtl] .mdc-data-table__cell{text-align:right}.mdc-data-table__cell,.mdc-data-table__header-cell{padding:0 16px}.mat-mdc-header-row{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;height:var(--mat-table-header-container-height, 56px);color:var(--mat-table-header-headline-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)));font-family:var(--mat-table-header-headline-font, var(--mat-sys-title-small-font, Roboto, sans-serif));line-height:var(--mat-table-header-headline-line-height, var(--mat-sys-title-small-line-height));font-size:var(--mat-table-header-headline-size, var(--mat-sys-title-small-size, 14px));font-weight:var(--mat-table-header-headline-weight, var(--mat-sys-title-small-weight, 500))}.mat-mdc-row{height:var(--mat-table-row-item-container-height, 52px);color:var(--mat-table-row-item-label-text-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)))}.mat-mdc-row,.mdc-data-table__content{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-table-row-item-label-text-font, var(--mat-sys-body-medium-font, Roboto, sans-serif));line-height:var(--mat-table-row-item-label-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-table-row-item-label-text-size, var(--mat-sys-body-medium-size, 14px));font-weight:var(--mat-table-row-item-label-text-weight, var(--mat-sys-body-medium-weight))}.mat-mdc-footer-row{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;height:var(--mat-table-footer-container-height, 52px);color:var(--mat-table-row-item-label-text-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)));font-family:var(--mat-table-footer-supporting-text-font, var(--mat-sys-body-medium-font, Roboto, sans-serif));line-height:var(--mat-table-footer-supporting-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-table-footer-supporting-text-size, var(--mat-sys-body-medium-size, 14px));font-weight:var(--mat-table-footer-supporting-text-weight, var(--mat-sys-body-medium-weight));letter-spacing:var(--mat-table-footer-supporting-text-tracking, var(--mat-sys-body-medium-tracking))}.mat-mdc-header-cell{border-bottom-color:var(--mat-table-row-item-outline-color, var(--mat-sys-outline, rgba(0, 0, 0, 0.12)));border-bottom-width:var(--mat-table-row-item-outline-width, 1px);border-bottom-style:solid;letter-spacing:var(--mat-table-header-headline-tracking, var(--mat-sys-title-small-tracking));font-weight:inherit;line-height:inherit;box-sizing:border-box;text-overflow:ellipsis;overflow:hidden;outline:none;text-align:left}[dir=rtl] .mat-mdc-header-cell{text-align:right}.mat-mdc-cell{border-bottom-color:var(--mat-table-row-item-outline-color, var(--mat-sys-outline, rgba(0, 0, 0, 0.12)));border-bottom-width:var(--mat-table-row-item-outline-width, 1px);border-bottom-style:solid;letter-spacing:var(--mat-table-row-item-label-text-tracking, var(--mat-sys-body-medium-tracking));line-height:inherit}.mdc-data-table__row:last-child .mat-mdc-cell{border-bottom:none}.mat-mdc-footer-cell{letter-spacing:var(--mat-table-row-item-label-text-tracking, var(--mat-sys-body-medium-tracking))}mat-row.mat-mdc-row,mat-header-row.mat-mdc-header-row,mat-footer-row.mat-mdc-footer-row{border-bottom:none}.mat-mdc-table tbody,.mat-mdc-table tfoot,.mat-mdc-table thead,.mat-mdc-cell,.mat-mdc-footer-cell,.mat-mdc-header-row,.mat-mdc-row,.mat-mdc-footer-row,.mat-mdc-table .mat-mdc-header-cell{background:inherit}.mat-mdc-table mat-header-row.mat-mdc-header-row,.mat-mdc-table mat-row.mat-mdc-row,.mat-mdc-table mat-footer-row.mat-mdc-footer-cell{height:unset}mat-header-cell.mat-mdc-header-cell,mat-cell.mat-mdc-cell,mat-footer-cell.mat-mdc-footer-cell{align-self:stretch}"] }]
|
|
119
115
|
}] });
|
|
120
116
|
|
|
121
117
|
/**
|
|
@@ -123,15 +119,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
123
119
|
* Captures the template of a column's data row cell as well as cell-specific properties.
|
|
124
120
|
*/
|
|
125
121
|
class MatCellDef extends CdkCellDef {
|
|
126
|
-
static
|
|
127
|
-
static
|
|
122
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCellDef, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
123
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatCellDef, isStandalone: true, selector: "[matCellDef]", providers: [{ provide: CdkCellDef, useExisting: MatCellDef }], usesInheritance: true, ngImport: i0 });
|
|
128
124
|
}
|
|
129
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
125
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCellDef, decorators: [{
|
|
130
126
|
type: Directive,
|
|
131
127
|
args: [{
|
|
132
128
|
selector: '[matCellDef]',
|
|
133
129
|
providers: [{ provide: CdkCellDef, useExisting: MatCellDef }],
|
|
134
|
-
standalone: true,
|
|
135
130
|
}]
|
|
136
131
|
}] });
|
|
137
132
|
/**
|
|
@@ -139,15 +134,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
139
134
|
* Captures the template of a column's header cell and as well as cell-specific properties.
|
|
140
135
|
*/
|
|
141
136
|
class MatHeaderCellDef extends CdkHeaderCellDef {
|
|
142
|
-
static
|
|
143
|
-
static
|
|
137
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatHeaderCellDef, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
138
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatHeaderCellDef, isStandalone: true, selector: "[matHeaderCellDef]", providers: [{ provide: CdkHeaderCellDef, useExisting: MatHeaderCellDef }], usesInheritance: true, ngImport: i0 });
|
|
144
139
|
}
|
|
145
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
140
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatHeaderCellDef, decorators: [{
|
|
146
141
|
type: Directive,
|
|
147
142
|
args: [{
|
|
148
143
|
selector: '[matHeaderCellDef]',
|
|
149
144
|
providers: [{ provide: CdkHeaderCellDef, useExisting: MatHeaderCellDef }],
|
|
150
|
-
standalone: true,
|
|
151
145
|
}]
|
|
152
146
|
}] });
|
|
153
147
|
/**
|
|
@@ -155,15 +149,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
155
149
|
* Captures the template of a column's footer cell and as well as cell-specific properties.
|
|
156
150
|
*/
|
|
157
151
|
class MatFooterCellDef extends CdkFooterCellDef {
|
|
158
|
-
static
|
|
159
|
-
static
|
|
152
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatFooterCellDef, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
153
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatFooterCellDef, isStandalone: true, selector: "[matFooterCellDef]", providers: [{ provide: CdkFooterCellDef, useExisting: MatFooterCellDef }], usesInheritance: true, ngImport: i0 });
|
|
160
154
|
}
|
|
161
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
155
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatFooterCellDef, decorators: [{
|
|
162
156
|
type: Directive,
|
|
163
157
|
args: [{
|
|
164
158
|
selector: '[matFooterCellDef]',
|
|
165
159
|
providers: [{ provide: CdkFooterCellDef, useExisting: MatFooterCellDef }],
|
|
166
|
-
standalone: true,
|
|
167
160
|
}]
|
|
168
161
|
}] });
|
|
169
162
|
/**
|
|
@@ -188,13 +181,13 @@ class MatColumnDef extends CdkColumnDef {
|
|
|
188
181
|
super._updateColumnCssClassName();
|
|
189
182
|
this._columnCssClassName.push(`mat-column-${this.cssClassFriendlyName}`);
|
|
190
183
|
}
|
|
191
|
-
static
|
|
192
|
-
static
|
|
184
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatColumnDef, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
185
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatColumnDef, isStandalone: true, selector: "[matColumnDef]", inputs: { name: ["matColumnDef", "name"] }, providers: [
|
|
193
186
|
{ provide: CdkColumnDef, useExisting: MatColumnDef },
|
|
194
187
|
{ provide: 'MAT_SORT_HEADER_COLUMN_DEF', useExisting: MatColumnDef },
|
|
195
|
-
], usesInheritance: true, ngImport: i0 });
|
|
188
|
+
], usesInheritance: true, ngImport: i0 });
|
|
196
189
|
}
|
|
197
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
190
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatColumnDef, decorators: [{
|
|
198
191
|
type: Directive,
|
|
199
192
|
args: [{
|
|
200
193
|
selector: '[matColumnDef]',
|
|
@@ -202,7 +195,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
202
195
|
{ provide: CdkColumnDef, useExisting: MatColumnDef },
|
|
203
196
|
{ provide: 'MAT_SORT_HEADER_COLUMN_DEF', useExisting: MatColumnDef },
|
|
204
197
|
],
|
|
205
|
-
standalone: true,
|
|
206
198
|
}]
|
|
207
199
|
}], propDecorators: { name: [{
|
|
208
200
|
type: Input,
|
|
@@ -210,10 +202,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
210
202
|
}] } });
|
|
211
203
|
/** Header cell template container that adds the right classes and role. */
|
|
212
204
|
class MatHeaderCell extends CdkHeaderCell {
|
|
213
|
-
static
|
|
214
|
-
static
|
|
205
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatHeaderCell, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
206
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatHeaderCell, isStandalone: true, selector: "mat-header-cell, th[mat-header-cell]", host: { attributes: { "role": "columnheader" }, classAttribute: "mat-mdc-header-cell mdc-data-table__header-cell" }, usesInheritance: true, ngImport: i0 });
|
|
215
207
|
}
|
|
216
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
208
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatHeaderCell, decorators: [{
|
|
217
209
|
type: Directive,
|
|
218
210
|
args: [{
|
|
219
211
|
selector: 'mat-header-cell, th[mat-header-cell]',
|
|
@@ -221,37 +213,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
221
213
|
'class': 'mat-mdc-header-cell mdc-data-table__header-cell',
|
|
222
214
|
'role': 'columnheader',
|
|
223
215
|
},
|
|
224
|
-
standalone: true,
|
|
225
216
|
}]
|
|
226
217
|
}] });
|
|
227
218
|
/** Footer cell template container that adds the right classes and role. */
|
|
228
219
|
class MatFooterCell extends CdkFooterCell {
|
|
229
|
-
static
|
|
230
|
-
static
|
|
220
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatFooterCell, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
221
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatFooterCell, isStandalone: true, selector: "mat-footer-cell, td[mat-footer-cell]", host: { classAttribute: "mat-mdc-footer-cell mdc-data-table__cell" }, usesInheritance: true, ngImport: i0 });
|
|
231
222
|
}
|
|
232
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
223
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatFooterCell, decorators: [{
|
|
233
224
|
type: Directive,
|
|
234
225
|
args: [{
|
|
235
226
|
selector: 'mat-footer-cell, td[mat-footer-cell]',
|
|
236
227
|
host: {
|
|
237
228
|
'class': 'mat-mdc-footer-cell mdc-data-table__cell',
|
|
238
229
|
},
|
|
239
|
-
standalone: true,
|
|
240
230
|
}]
|
|
241
231
|
}] });
|
|
242
232
|
/** Cell template container that adds the right classes and role. */
|
|
243
233
|
class MatCell extends CdkCell {
|
|
244
|
-
static
|
|
245
|
-
static
|
|
234
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCell, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
235
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatCell, isStandalone: true, selector: "mat-cell, td[mat-cell]", host: { classAttribute: "mat-mdc-cell mdc-data-table__cell" }, usesInheritance: true, ngImport: i0 });
|
|
246
236
|
}
|
|
247
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
237
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCell, decorators: [{
|
|
248
238
|
type: Directive,
|
|
249
239
|
args: [{
|
|
250
240
|
selector: 'mat-cell, td[mat-cell]',
|
|
251
241
|
host: {
|
|
252
242
|
'class': 'mat-mdc-cell mdc-data-table__cell',
|
|
253
243
|
},
|
|
254
|
-
standalone: true,
|
|
255
244
|
}]
|
|
256
245
|
}] });
|
|
257
246
|
|
|
@@ -262,10 +251,10 @@ const ROW_TEMPLATE = `<ng-container cdkCellOutlet></ng-container>`;
|
|
|
262
251
|
* Captures the header row's template and other header properties such as the columns to display.
|
|
263
252
|
*/
|
|
264
253
|
class MatHeaderRowDef extends CdkHeaderRowDef {
|
|
265
|
-
static
|
|
266
|
-
static
|
|
254
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatHeaderRowDef, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
255
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.0-next.10", type: MatHeaderRowDef, isStandalone: true, selector: "[matHeaderRowDef]", inputs: { columns: ["matHeaderRowDef", "columns"], sticky: ["matHeaderRowDefSticky", "sticky", booleanAttribute] }, providers: [{ provide: CdkHeaderRowDef, useExisting: MatHeaderRowDef }], usesInheritance: true, ngImport: i0 });
|
|
267
256
|
}
|
|
268
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
257
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatHeaderRowDef, decorators: [{
|
|
269
258
|
type: Directive,
|
|
270
259
|
args: [{
|
|
271
260
|
selector: '[matHeaderRowDef]',
|
|
@@ -274,7 +263,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
274
263
|
{ name: 'columns', alias: 'matHeaderRowDef' },
|
|
275
264
|
{ name: 'sticky', alias: 'matHeaderRowDefSticky', transform: booleanAttribute },
|
|
276
265
|
],
|
|
277
|
-
standalone: true,
|
|
278
266
|
}]
|
|
279
267
|
}] });
|
|
280
268
|
/**
|
|
@@ -282,10 +270,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
282
270
|
* Captures the footer row's template and other footer properties such as the columns to display.
|
|
283
271
|
*/
|
|
284
272
|
class MatFooterRowDef extends CdkFooterRowDef {
|
|
285
|
-
static
|
|
286
|
-
static
|
|
273
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatFooterRowDef, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
274
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.0-next.10", type: MatFooterRowDef, isStandalone: true, selector: "[matFooterRowDef]", inputs: { columns: ["matFooterRowDef", "columns"], sticky: ["matFooterRowDefSticky", "sticky", booleanAttribute] }, providers: [{ provide: CdkFooterRowDef, useExisting: MatFooterRowDef }], usesInheritance: true, ngImport: i0 });
|
|
287
275
|
}
|
|
288
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
276
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatFooterRowDef, decorators: [{
|
|
289
277
|
type: Directive,
|
|
290
278
|
args: [{
|
|
291
279
|
selector: '[matFooterRowDef]',
|
|
@@ -294,7 +282,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
294
282
|
{ name: 'columns', alias: 'matFooterRowDef' },
|
|
295
283
|
{ name: 'sticky', alias: 'matFooterRowDefSticky', transform: booleanAttribute },
|
|
296
284
|
],
|
|
297
|
-
standalone: true,
|
|
298
285
|
}]
|
|
299
286
|
}] });
|
|
300
287
|
/**
|
|
@@ -303,10 +290,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
303
290
|
* a when predicate that describes when this row should be used.
|
|
304
291
|
*/
|
|
305
292
|
class MatRowDef extends CdkRowDef {
|
|
306
|
-
static
|
|
307
|
-
static
|
|
293
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRowDef, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
294
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatRowDef, isStandalone: true, selector: "[matRowDef]", inputs: { columns: ["matRowDefColumns", "columns"], when: ["matRowDefWhen", "when"] }, providers: [{ provide: CdkRowDef, useExisting: MatRowDef }], usesInheritance: true, ngImport: i0 });
|
|
308
295
|
}
|
|
309
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
296
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRowDef, decorators: [{
|
|
310
297
|
type: Directive,
|
|
311
298
|
args: [{
|
|
312
299
|
selector: '[matRowDef]',
|
|
@@ -315,15 +302,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
315
302
|
{ name: 'columns', alias: 'matRowDefColumns' },
|
|
316
303
|
{ name: 'when', alias: 'matRowDefWhen' },
|
|
317
304
|
],
|
|
318
|
-
standalone: true,
|
|
319
305
|
}]
|
|
320
306
|
}] });
|
|
321
307
|
/** Header template container that contains the cell outlet. Adds the right class and role. */
|
|
322
308
|
class MatHeaderRow extends CdkHeaderRow {
|
|
323
|
-
static
|
|
324
|
-
static
|
|
309
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatHeaderRow, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
310
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatHeaderRow, isStandalone: true, selector: "mat-header-row, tr[mat-header-row]", host: { attributes: { "role": "row" }, classAttribute: "mat-mdc-header-row mdc-data-table__header-row" }, providers: [{ provide: CdkHeaderRow, useExisting: MatHeaderRow }], exportAs: ["matHeaderRow"], usesInheritance: true, ngImport: i0, template: "<ng-container cdkCellOutlet></ng-container>", isInline: true, dependencies: [{ kind: "directive", type: CdkCellOutlet, selector: "[cdkCellOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
|
|
325
311
|
}
|
|
326
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
312
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatHeaderRow, decorators: [{
|
|
327
313
|
type: Component,
|
|
328
314
|
args: [{
|
|
329
315
|
selector: 'mat-header-row, tr[mat-header-row]',
|
|
@@ -338,16 +324,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
338
324
|
encapsulation: ViewEncapsulation.None,
|
|
339
325
|
exportAs: 'matHeaderRow',
|
|
340
326
|
providers: [{ provide: CdkHeaderRow, useExisting: MatHeaderRow }],
|
|
341
|
-
standalone: true,
|
|
342
327
|
imports: [CdkCellOutlet],
|
|
343
328
|
}]
|
|
344
329
|
}] });
|
|
345
330
|
/** Footer template container that contains the cell outlet. Adds the right class and role. */
|
|
346
331
|
class MatFooterRow extends CdkFooterRow {
|
|
347
|
-
static
|
|
348
|
-
static
|
|
332
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatFooterRow, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
333
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatFooterRow, isStandalone: true, selector: "mat-footer-row, tr[mat-footer-row]", host: { attributes: { "role": "row" }, classAttribute: "mat-mdc-footer-row mdc-data-table__row" }, providers: [{ provide: CdkFooterRow, useExisting: MatFooterRow }], exportAs: ["matFooterRow"], usesInheritance: true, ngImport: i0, template: "<ng-container cdkCellOutlet></ng-container>", isInline: true, dependencies: [{ kind: "directive", type: CdkCellOutlet, selector: "[cdkCellOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
|
|
349
334
|
}
|
|
350
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
335
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatFooterRow, decorators: [{
|
|
351
336
|
type: Component,
|
|
352
337
|
args: [{
|
|
353
338
|
selector: 'mat-footer-row, tr[mat-footer-row]',
|
|
@@ -362,16 +347,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
362
347
|
encapsulation: ViewEncapsulation.None,
|
|
363
348
|
exportAs: 'matFooterRow',
|
|
364
349
|
providers: [{ provide: CdkFooterRow, useExisting: MatFooterRow }],
|
|
365
|
-
standalone: true,
|
|
366
350
|
imports: [CdkCellOutlet],
|
|
367
351
|
}]
|
|
368
352
|
}] });
|
|
369
353
|
/** Data row template container that contains the cell outlet. Adds the right class and role. */
|
|
370
354
|
class MatRow extends CdkRow {
|
|
371
|
-
static
|
|
372
|
-
static
|
|
355
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRow, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
356
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatRow, isStandalone: true, selector: "mat-row, tr[mat-row]", host: { attributes: { "role": "row" }, classAttribute: "mat-mdc-row mdc-data-table__row" }, providers: [{ provide: CdkRow, useExisting: MatRow }], exportAs: ["matRow"], usesInheritance: true, ngImport: i0, template: "<ng-container cdkCellOutlet></ng-container>", isInline: true, dependencies: [{ kind: "directive", type: CdkCellOutlet, selector: "[cdkCellOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
|
|
373
357
|
}
|
|
374
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
358
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRow, decorators: [{
|
|
375
359
|
type: Component,
|
|
376
360
|
args: [{
|
|
377
361
|
selector: 'mat-row, tr[mat-row]',
|
|
@@ -386,25 +370,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
386
370
|
encapsulation: ViewEncapsulation.None,
|
|
387
371
|
exportAs: 'matRow',
|
|
388
372
|
providers: [{ provide: CdkRow, useExisting: MatRow }],
|
|
389
|
-
standalone: true,
|
|
390
373
|
imports: [CdkCellOutlet],
|
|
391
374
|
}]
|
|
392
375
|
}] });
|
|
393
376
|
/** Row that can be used to display a message when no data is shown in the table. */
|
|
394
377
|
class MatNoDataRow extends CdkNoDataRow {
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
}
|
|
399
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: MatNoDataRow, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
400
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.8", type: MatNoDataRow, isStandalone: true, selector: "ng-template[matNoDataRow]", providers: [{ provide: CdkNoDataRow, useExisting: MatNoDataRow }], usesInheritance: true, ngImport: i0 }); }
|
|
378
|
+
_contentClassName = 'mat-mdc-no-data-row';
|
|
379
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNoDataRow, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
380
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatNoDataRow, isStandalone: true, selector: "ng-template[matNoDataRow]", providers: [{ provide: CdkNoDataRow, useExisting: MatNoDataRow }], usesInheritance: true, ngImport: i0 });
|
|
401
381
|
}
|
|
402
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
382
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNoDataRow, decorators: [{
|
|
403
383
|
type: Directive,
|
|
404
384
|
args: [{
|
|
405
385
|
selector: 'ng-template[matNoDataRow]',
|
|
406
386
|
providers: [{ provide: CdkNoDataRow, useExisting: MatNoDataRow }],
|
|
407
|
-
standalone: true,
|
|
408
387
|
}]
|
|
409
388
|
}] });
|
|
410
389
|
|
|
@@ -418,8 +397,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
418
397
|
* input.
|
|
419
398
|
*/
|
|
420
399
|
class MatTextColumn extends CdkTextColumn {
|
|
421
|
-
static
|
|
422
|
-
static
|
|
400
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatTextColumn, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
401
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatTextColumn, isStandalone: true, selector: "mat-text-column", usesInheritance: true, ngImport: i0, template: `
|
|
423
402
|
<ng-container matColumnDef>
|
|
424
403
|
<th mat-header-cell *matHeaderCellDef [style.text-align]="justify">
|
|
425
404
|
{{headerText}}
|
|
@@ -428,9 +407,9 @@ class MatTextColumn extends CdkTextColumn {
|
|
|
428
407
|
{{dataAccessor(data, name)}}
|
|
429
408
|
</td>
|
|
430
409
|
</ng-container>
|
|
431
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: MatCell, selector: "mat-cell, td[mat-cell]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
|
|
410
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: MatCell, selector: "mat-cell, td[mat-cell]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
|
|
432
411
|
}
|
|
433
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
412
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatTextColumn, decorators: [{
|
|
434
413
|
type: Component,
|
|
435
414
|
args: [{
|
|
436
415
|
selector: 'mat-text-column',
|
|
@@ -452,7 +431,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
|
|
|
452
431
|
// an ExpressionChangedAfterItHasBeenCheckedError).
|
|
453
432
|
// tslint:disable-next-line:validate-decorators
|
|
454
433
|
changeDetection: ChangeDetectionStrategy.Default,
|
|
455
|
-
standalone: true,
|
|
456
434
|
imports: [MatColumnDef, MatHeaderCellDef, MatHeaderCell, MatCellDef, MatCell],
|
|
457
435
|
}]
|
|
458
436
|
}] });
|
|
@@ -481,8 +459,8 @@ const EXPORTED_DECLARATIONS = [
|
|
|
481
459
|
MatTextColumn,
|
|
482
460
|
];
|
|
483
461
|
class MatTableModule {
|
|
484
|
-
static
|
|
485
|
-
static
|
|
462
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
463
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatTableModule, imports: [MatCommonModule, CdkTableModule,
|
|
486
464
|
// Table
|
|
487
465
|
MatTable,
|
|
488
466
|
MatRecycleRows,
|
|
@@ -524,10 +502,10 @@ class MatTableModule {
|
|
|
524
502
|
MatRow,
|
|
525
503
|
MatFooterRow,
|
|
526
504
|
MatNoDataRow,
|
|
527
|
-
MatTextColumn] });
|
|
528
|
-
static
|
|
505
|
+
MatTextColumn] });
|
|
506
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatTableModule, imports: [MatCommonModule, CdkTableModule, MatCommonModule] });
|
|
529
507
|
}
|
|
530
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.
|
|
508
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatTableModule, decorators: [{
|
|
531
509
|
type: NgModule,
|
|
532
510
|
args: [{
|
|
533
511
|
imports: [MatCommonModule, CdkTableModule, ...EXPORTED_DECLARATIONS],
|
|
@@ -554,6 +532,26 @@ const MAX_SAFE_INTEGER = 9007199254740991;
|
|
|
554
532
|
* own `DataSource`.
|
|
555
533
|
*/
|
|
556
534
|
class MatTableDataSource extends DataSource {
|
|
535
|
+
/** Stream that emits when a new data array is set on the data source. */
|
|
536
|
+
_data;
|
|
537
|
+
/** Stream emitting render data to the table (depends on ordered data changes). */
|
|
538
|
+
_renderData = new BehaviorSubject([]);
|
|
539
|
+
/** Stream that emits when a new filter string is set on the data source. */
|
|
540
|
+
_filter = new BehaviorSubject('');
|
|
541
|
+
/** Used to react to internal changes of the paginator that are made by the data source itself. */
|
|
542
|
+
_internalPageChanges = new Subject();
|
|
543
|
+
/**
|
|
544
|
+
* Subscription to the changes that should trigger an update to the table's rendered rows, such
|
|
545
|
+
* as filtering, sorting, pagination, or base data changes.
|
|
546
|
+
*/
|
|
547
|
+
_renderChangesSubscription = null;
|
|
548
|
+
/**
|
|
549
|
+
* The filtered set of data that has been matched by the filter string, or all the data if there
|
|
550
|
+
* is no filter. Useful for knowing the set of data the table represents.
|
|
551
|
+
* For example, a 'selectAll()' function would likely want to select the set of filtered data
|
|
552
|
+
* shown to the user rather than all the data.
|
|
553
|
+
*/
|
|
554
|
+
filteredData;
|
|
557
555
|
/** Array of data that should be rendered by the table, where each object represents one row. */
|
|
558
556
|
get data() {
|
|
559
557
|
return this._data.value;
|
|
@@ -593,6 +591,7 @@ class MatTableDataSource extends DataSource {
|
|
|
593
591
|
this._sort = sort;
|
|
594
592
|
this._updateChangeSubscription();
|
|
595
593
|
}
|
|
594
|
+
_sort;
|
|
596
595
|
/**
|
|
597
596
|
* Instance of the paginator component used by the table to control what page of the data is
|
|
598
597
|
* displayed. Page changes emitted by the paginator will trigger an update to the
|
|
@@ -610,119 +609,109 @@ class MatTableDataSource extends DataSource {
|
|
|
610
609
|
this._paginator = paginator;
|
|
611
610
|
this._updateChangeSubscription();
|
|
612
611
|
}
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
const
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
}
|
|
660
|
-
return data.sort((a, b) => {
|
|
661
|
-
let valueA = this.sortingDataAccessor(a, active);
|
|
662
|
-
let valueB = this.sortingDataAccessor(b, active);
|
|
663
|
-
// If there are data in the column that can be converted to a number,
|
|
664
|
-
// it must be ensured that the rest of the data
|
|
665
|
-
// is of the same type so as not to order incorrectly.
|
|
666
|
-
const valueAType = typeof valueA;
|
|
667
|
-
const valueBType = typeof valueB;
|
|
668
|
-
if (valueAType !== valueBType) {
|
|
669
|
-
if (valueAType === 'number') {
|
|
670
|
-
valueA += '';
|
|
671
|
-
}
|
|
672
|
-
if (valueBType === 'number') {
|
|
673
|
-
valueB += '';
|
|
674
|
-
}
|
|
612
|
+
_paginator;
|
|
613
|
+
/**
|
|
614
|
+
* Data accessor function that is used for accessing data properties for sorting through
|
|
615
|
+
* the default sortData function.
|
|
616
|
+
* This default function assumes that the sort header IDs (which defaults to the column name)
|
|
617
|
+
* matches the data's properties (e.g. column Xyz represents data['Xyz']).
|
|
618
|
+
* May be set to a custom function for different behavior.
|
|
619
|
+
* @param data Data object that is being accessed.
|
|
620
|
+
* @param sortHeaderId The name of the column that represents the data.
|
|
621
|
+
*/
|
|
622
|
+
sortingDataAccessor = (data, sortHeaderId) => {
|
|
623
|
+
const value = data[sortHeaderId];
|
|
624
|
+
if (_isNumberValue(value)) {
|
|
625
|
+
const numberValue = Number(value);
|
|
626
|
+
// Numbers beyond `MAX_SAFE_INTEGER` can't be compared reliably so we leave them as strings.
|
|
627
|
+
// See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER
|
|
628
|
+
return numberValue < MAX_SAFE_INTEGER ? numberValue : value;
|
|
629
|
+
}
|
|
630
|
+
return value;
|
|
631
|
+
};
|
|
632
|
+
/**
|
|
633
|
+
* Gets a sorted copy of the data array based on the state of the MatSort. Called
|
|
634
|
+
* after changes are made to the filtered data or when sort changes are emitted from MatSort.
|
|
635
|
+
* By default, the function retrieves the active sort and its direction and compares data
|
|
636
|
+
* by retrieving data using the sortingDataAccessor. May be overridden for a custom implementation
|
|
637
|
+
* of data ordering.
|
|
638
|
+
* @param data The array of data that should be sorted.
|
|
639
|
+
* @param sort The connected MatSort that holds the current sort state.
|
|
640
|
+
*/
|
|
641
|
+
sortData = (data, sort) => {
|
|
642
|
+
const active = sort.active;
|
|
643
|
+
const direction = sort.direction;
|
|
644
|
+
if (!active || direction == '') {
|
|
645
|
+
return data;
|
|
646
|
+
}
|
|
647
|
+
return data.sort((a, b) => {
|
|
648
|
+
let valueA = this.sortingDataAccessor(a, active);
|
|
649
|
+
let valueB = this.sortingDataAccessor(b, active);
|
|
650
|
+
// If there are data in the column that can be converted to a number,
|
|
651
|
+
// it must be ensured that the rest of the data
|
|
652
|
+
// is of the same type so as not to order incorrectly.
|
|
653
|
+
const valueAType = typeof valueA;
|
|
654
|
+
const valueBType = typeof valueB;
|
|
655
|
+
if (valueAType !== valueBType) {
|
|
656
|
+
if (valueAType === 'number') {
|
|
657
|
+
valueA += '';
|
|
675
658
|
}
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
// This avoids inconsistent results when comparing values to undefined/null.
|
|
679
|
-
// If neither value exists, return 0 (equal).
|
|
680
|
-
let comparatorResult = 0;
|
|
681
|
-
if (valueA != null && valueB != null) {
|
|
682
|
-
// Check if one value is greater than the other; if equal, comparatorResult should remain 0.
|
|
683
|
-
if (valueA > valueB) {
|
|
684
|
-
comparatorResult = 1;
|
|
685
|
-
}
|
|
686
|
-
else if (valueA < valueB) {
|
|
687
|
-
comparatorResult = -1;
|
|
688
|
-
}
|
|
659
|
+
if (valueBType === 'number') {
|
|
660
|
+
valueB += '';
|
|
689
661
|
}
|
|
690
|
-
|
|
662
|
+
}
|
|
663
|
+
// If both valueA and valueB exist (truthy), then compare the two. Otherwise, check if
|
|
664
|
+
// one value exists while the other doesn't. In this case, existing value should come last.
|
|
665
|
+
// This avoids inconsistent results when comparing values to undefined/null.
|
|
666
|
+
// If neither value exists, return 0 (equal).
|
|
667
|
+
let comparatorResult = 0;
|
|
668
|
+
if (valueA != null && valueB != null) {
|
|
669
|
+
// Check if one value is greater than the other; if equal, comparatorResult should remain 0.
|
|
670
|
+
if (valueA > valueB) {
|
|
691
671
|
comparatorResult = 1;
|
|
692
672
|
}
|
|
693
|
-
else if (
|
|
673
|
+
else if (valueA < valueB) {
|
|
694
674
|
comparatorResult = -1;
|
|
695
675
|
}
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
//
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
676
|
+
}
|
|
677
|
+
else if (valueA != null) {
|
|
678
|
+
comparatorResult = 1;
|
|
679
|
+
}
|
|
680
|
+
else if (valueB != null) {
|
|
681
|
+
comparatorResult = -1;
|
|
682
|
+
}
|
|
683
|
+
return comparatorResult * (direction == 'asc' ? 1 : -1);
|
|
684
|
+
});
|
|
685
|
+
};
|
|
686
|
+
/**
|
|
687
|
+
* Checks if a data object matches the data source's filter string. By default, each data object
|
|
688
|
+
* is converted to a string of its properties and returns true if the filter has
|
|
689
|
+
* at least one occurrence in that string. By default, the filter string has its whitespace
|
|
690
|
+
* trimmed and the match is case-insensitive. May be overridden for a custom implementation of
|
|
691
|
+
* filter matching.
|
|
692
|
+
* @param data Data object used to check against the filter.
|
|
693
|
+
* @param filter Filter string that has been set on the data source.
|
|
694
|
+
* @returns Whether the filter matches against the data
|
|
695
|
+
*/
|
|
696
|
+
filterPredicate = (data, filter) => {
|
|
697
|
+
// Transform the data into a lowercase string of all property values.
|
|
698
|
+
const dataStr = Object.keys(data)
|
|
699
|
+
.reduce((currentTerm, key) => {
|
|
700
|
+
// Use an obscure Unicode character to delimit the words in the concatenated string.
|
|
701
|
+
// This avoids matches where the values of two columns combined will match the user's query
|
|
702
|
+
// (e.g. `Flute` and `Stop` will match `Test`). The character is intended to be something
|
|
703
|
+
// that has a very low chance of being typed in by somebody in a text field. This one in
|
|
704
|
+
// particular is "White up-pointing triangle with dot" from
|
|
705
|
+
// https://en.wikipedia.org/wiki/List_of_Unicode_characters
|
|
706
|
+
return currentTerm + data[key] + '◬';
|
|
707
|
+
}, '')
|
|
708
|
+
.toLowerCase();
|
|
709
|
+
// Transform the filter by converting it to lowercase and removing whitespace.
|
|
710
|
+
const transformedFilter = filter.trim().toLowerCase();
|
|
711
|
+
return dataStr.indexOf(transformedFilter) != -1;
|
|
712
|
+
};
|
|
713
|
+
constructor(initialData = []) {
|
|
714
|
+
super();
|
|
726
715
|
this._data = new BehaviorSubject(initialData);
|
|
727
716
|
this._updateChangeSubscription();
|
|
728
717
|
}
|