@ng-matero/extensions 14.6.2 → 15.0.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/README.md +0 -1
- package/_index.scss +3 -4
- package/_theming.scss +3 -4
- package/alert/_alert-theme.import.scss +1 -1
- package/alert/_alert-theme.scss +2 -2
- package/alert/{alert.module.d.ts → alert-module.d.ts} +2 -2
- package/alert/{alert.component.d.ts → alert.d.ts} +4 -4
- package/alert/{alert.component.scss → alert.scss} +0 -0
- package/alert/public-api.d.ts +2 -2
- package/button/button-loading.d.ts +25 -0
- package/button/button-loading.scss +5 -4
- package/button/{button.module.d.ts → button-module.d.ts} +2 -2
- package/button/public-api.d.ts +2 -2
- package/checkbox-group/{checkbox-group.module.d.ts → checkbox-group-module.d.ts} +2 -2
- package/checkbox-group/{checkbox-group.component.d.ts → checkbox-group.d.ts} +4 -4
- package/checkbox-group/checkbox-group.scss +0 -0
- package/checkbox-group/{checkbox-group.interface.d.ts → interfaces.d.ts} +0 -0
- package/checkbox-group/public-api.d.ts +3 -3
- package/colorpicker/_colorpicker-theme.import.scss +1 -1
- package/colorpicker/_colorpicker-theme.scss +2 -2
- package/colorpicker/colorpicker-input.d.ts +1 -1
- package/colorpicker/colorpicker-toggle.d.ts +8 -6
- package/colorpicker/colorpicker.d.ts +2 -2
- package/column-resize/column-resize-directives/column-resize-flex.d.ts +1 -1
- package/column-resize/column-resize-directives/column-resize.d.ts +1 -1
- package/column-resize/column-resize.d.ts +1 -1
- package/column-resize/overlay-handle.d.ts +1 -1
- package/column-resize/resizable.d.ts +1 -1
- package/core/color/_all-color.scss +28 -0
- package/core/density/_all-density.scss +24 -0
- package/core/style/_elevation.scss +20 -126
- package/core/style/_private.scss +9 -18
- package/core/style/_variables.scss +1 -1
- package/core/style/_vendor-prefixes.scss +8 -21
- package/core/theming/_all-theme.scss +38 -0
- package/core/theming/_palette.scss +1 -1
- package/core/theming/_theming.scss +55 -22
- package/core/typography/_typography.scss +195 -17
- package/datetimepicker/_datetimepicker-theme.import.scss +1 -1
- package/datetimepicker/_datetimepicker-theme.scss +3 -4
- package/datetimepicker/calendar-body.d.ts +1 -1
- package/datetimepicker/calendar.d.ts +1 -1
- package/datetimepicker/calendar.scss +3 -0
- package/datetimepicker/clock.d.ts +1 -1
- package/datetimepicker/datetimepicker-input.d.ts +1 -1
- package/datetimepicker/datetimepicker-toggle.d.ts +5 -5
- package/datetimepicker/datetimepicker.d.ts +2 -2
- package/datetimepicker/month-view.d.ts +1 -1
- package/datetimepicker/multi-year-view.d.ts +1 -1
- package/datetimepicker/time.d.ts +2 -2
- package/datetimepicker/time.scss +9 -0
- package/datetimepicker/year-view.d.ts +1 -1
- package/dialog/dialog-container.d.ts +12 -0
- package/dialog/dialog-container.scss +48 -0
- package/dialog/{dialog.module.d.ts → dialog-module.d.ts} +2 -2
- package/dialog/public-api.d.ts +2 -2
- package/drawer/_drawer-theme.import.scss +1 -1
- package/drawer/_drawer-theme.scss +2 -2
- package/drawer/drawer-container.d.ts +1 -1
- package/esm2020/alert/alert-module.mjs +18 -0
- package/esm2020/alert/alert.mjs +52 -0
- package/esm2020/alert/public-api.mjs +3 -3
- package/esm2020/button/button-loading.mjs +76 -0
- package/esm2020/button/button-module.mjs +20 -0
- package/esm2020/button/public-api.mjs +3 -3
- package/esm2020/checkbox-group/{checkbox-group.module.mjs → checkbox-group-module.mjs} +8 -8
- package/esm2020/checkbox-group/checkbox-group.mjs +234 -0
- package/esm2020/checkbox-group/interfaces.mjs +2 -0
- package/esm2020/checkbox-group/public-api.mjs +4 -4
- package/esm2020/colorpicker/colorpicker-input.mjs +3 -3
- package/esm2020/colorpicker/colorpicker-module.mjs +4 -4
- package/esm2020/colorpicker/colorpicker-toggle.mjs +33 -22
- package/esm2020/colorpicker/colorpicker.mjs +6 -6
- package/esm2020/column-resize/column-resize-directives/column-resize-flex.mjs +3 -3
- package/esm2020/column-resize/column-resize-directives/column-resize.mjs +3 -3
- package/esm2020/column-resize/column-resize-module.mjs +4 -4
- package/esm2020/column-resize/column-resize-notifier.mjs +7 -7
- package/esm2020/column-resize/column-resize.mjs +3 -3
- package/esm2020/column-resize/column-size-store.mjs +3 -3
- package/esm2020/column-resize/event-dispatcher.mjs +3 -3
- package/esm2020/column-resize/overlay-handle.mjs +3 -3
- package/esm2020/column-resize/resizable.mjs +3 -3
- package/esm2020/column-resize/resize-strategy.mjs +9 -9
- package/esm2020/core/datetime/datetime.module.mjs +8 -8
- package/esm2020/core/datetime/native-datetime-adapter.mjs +3 -3
- package/esm2020/core/pipes/pipes.module.mjs +4 -4
- package/esm2020/core/pipes/to-observable.pipe.mjs +3 -3
- package/esm2020/datetimepicker/calendar-body.mjs +3 -3
- package/esm2020/datetimepicker/calendar.mjs +5 -5
- package/esm2020/datetimepicker/clock.mjs +4 -4
- package/esm2020/datetimepicker/datetimepicker-input.mjs +3 -3
- package/esm2020/datetimepicker/datetimepicker-intl.mjs +3 -3
- package/esm2020/datetimepicker/datetimepicker-module.mjs +4 -4
- package/esm2020/datetimepicker/datetimepicker-toggle.mjs +27 -20
- package/esm2020/datetimepicker/datetimepicker.mjs +6 -6
- package/esm2020/datetimepicker/month-view.mjs +3 -3
- package/esm2020/datetimepicker/multi-year-view.mjs +3 -3
- package/esm2020/datetimepicker/time.mjs +8 -8
- package/esm2020/datetimepicker/year-view.mjs +3 -3
- package/esm2020/dialog/dialog-container.mjs +35 -0
- package/esm2020/dialog/{dialog.module.mjs → dialog-module.mjs} +8 -8
- package/esm2020/dialog/dialog.mjs +7 -7
- package/esm2020/dialog/public-api.mjs +3 -3
- package/esm2020/drawer/drawer-container.mjs +3 -3
- package/esm2020/drawer/drawer-module.mjs +4 -4
- package/esm2020/drawer/drawer.mjs +4 -4
- package/esm2020/grid/cell.mjs +130 -0
- package/esm2020/grid/column-menu.mjs +112 -0
- package/esm2020/grid/column-resize/column-resize-directives/column-resize-flex.mjs +3 -3
- package/esm2020/grid/column-resize/column-resize-directives/column-resize.mjs +3 -3
- package/esm2020/grid/column-resize/column-resize-module.mjs +8 -8
- package/esm2020/grid/column-resize/overlay-handle.mjs +3 -3
- package/esm2020/grid/column-resize/resizable-directives/resizable.mjs +3 -3
- package/esm2020/grid/column-resize/resize-strategy.mjs +3 -3
- package/esm2020/grid/expansion-toggle.mjs +64 -0
- package/esm2020/grid/grid-module.mjs +115 -0
- package/esm2020/grid/grid-utils.mjs +44 -0
- package/esm2020/grid/grid.mjs +619 -0
- package/esm2020/grid/interfaces.mjs +2 -0
- package/esm2020/grid/public-api.mjs +8 -8
- package/esm2020/loader/loader-module.mjs +20 -0
- package/esm2020/loader/loader.mjs +69 -0
- package/esm2020/loader/public-api.mjs +3 -3
- package/esm2020/popover/popover-content.mjs +6 -6
- package/esm2020/popover/popover-module.mjs +4 -4
- package/esm2020/popover/popover-target.mjs +3 -3
- package/esm2020/popover/popover-trigger.mjs +3 -3
- package/esm2020/popover/popover.mjs +3 -3
- package/esm2020/progress/progress-module.mjs +18 -0
- package/esm2020/progress/progress.mjs +55 -0
- package/esm2020/progress/public-api.mjs +3 -3
- package/esm2020/select/option.mjs +57 -0
- package/esm2020/select/public-api.mjs +5 -5
- package/esm2020/select/select-module.mjs +74 -0
- package/esm2020/select/select.mjs +550 -0
- package/esm2020/select/templates.mjs +124 -0
- package/esm2020/slider/slider-module.mjs +4 -4
- package/esm2020/slider/slider.mjs +4 -4
- package/esm2020/split/interfaces.mjs +2 -0
- package/esm2020/split/public-api.mjs +5 -5
- package/esm2020/split/split-module.mjs +19 -0
- package/esm2020/split/split-pane.mjs +149 -0
- package/esm2020/split/split.mjs +619 -0
- package/esm2020/split/utils.mjs +4 -4
- package/esm2020/tooltip/tooltip-module.mjs +4 -4
- package/esm2020/tooltip/tooltip.mjs +6 -6
- package/fesm2015/mtxAlert.mjs +12 -11
- package/fesm2015/mtxAlert.mjs.map +1 -1
- package/fesm2015/mtxButton.mjs +31 -31
- package/fesm2015/mtxButton.mjs.map +1 -1
- package/fesm2015/mtxCheckboxGroup.mjs +16 -15
- package/fesm2015/mtxCheckboxGroup.mjs.map +1 -1
- package/fesm2015/mtxColorpicker.mjs +45 -31
- package/fesm2015/mtxColorpicker.mjs.map +1 -1
- package/fesm2015/mtxColumnResize.mjs +41 -40
- package/fesm2015/mtxColumnResize.mjs.map +1 -1
- package/fesm2015/mtxCore.mjs +19 -18
- package/fesm2015/mtxDatetimepicker.mjs +72 -62
- package/fesm2015/mtxDatetimepicker.mjs.map +1 -1
- package/fesm2015/mtxDialog.mjs +20 -17
- package/fesm2015/mtxDialog.mjs.map +1 -1
- package/fesm2015/mtxDrawer.mjs +11 -10
- package/fesm2015/mtxDrawer.mjs.map +1 -1
- package/fesm2015/mtxGrid.mjs +90 -90
- package/fesm2015/mtxGrid.mjs.map +1 -1
- package/fesm2015/mtxLoader.mjs +13 -12
- package/fesm2015/mtxLoader.mjs.map +1 -1
- package/fesm2015/mtxPopover.mjs +20 -19
- package/fesm2015/mtxProgress.mjs +12 -11
- package/fesm2015/mtxProgress.mjs.map +1 -1
- package/fesm2015/mtxSelect.mjs +122 -121
- package/fesm2015/mtxSelect.mjs.map +1 -1
- package/fesm2015/mtxSlider.mjs +9 -8
- package/fesm2015/mtxSlider.mjs.map +1 -1
- package/fesm2015/mtxSplit.mjs +19 -18
- package/fesm2015/mtxSplit.mjs.map +1 -1
- package/fesm2015/mtxTooltip.mjs +11 -10
- package/fesm2015/ng-matero-extensions.mjs +1 -0
- package/fesm2020/mtxAlert.mjs +12 -11
- package/fesm2020/mtxAlert.mjs.map +1 -1
- package/fesm2020/mtxButton.mjs +31 -31
- package/fesm2020/mtxButton.mjs.map +1 -1
- package/fesm2020/mtxCheckboxGroup.mjs +16 -15
- package/fesm2020/mtxCheckboxGroup.mjs.map +1 -1
- package/fesm2020/mtxColorpicker.mjs +43 -31
- package/fesm2020/mtxColorpicker.mjs.map +1 -1
- package/fesm2020/mtxColumnResize.mjs +41 -40
- package/fesm2020/mtxColumnResize.mjs.map +1 -1
- package/fesm2020/mtxCore.mjs +19 -18
- package/fesm2020/mtxDatetimepicker.mjs +70 -62
- package/fesm2020/mtxDatetimepicker.mjs.map +1 -1
- package/fesm2020/mtxDialog.mjs +20 -17
- package/fesm2020/mtxDialog.mjs.map +1 -1
- package/fesm2020/mtxDrawer.mjs +11 -10
- package/fesm2020/mtxDrawer.mjs.map +1 -1
- package/fesm2020/mtxGrid.mjs +90 -90
- package/fesm2020/mtxGrid.mjs.map +1 -1
- package/fesm2020/mtxLoader.mjs +13 -12
- package/fesm2020/mtxLoader.mjs.map +1 -1
- package/fesm2020/mtxPopover.mjs +20 -19
- package/fesm2020/mtxProgress.mjs +12 -11
- package/fesm2020/mtxProgress.mjs.map +1 -1
- package/fesm2020/mtxSelect.mjs +122 -121
- package/fesm2020/mtxSelect.mjs.map +1 -1
- package/fesm2020/mtxSlider.mjs +9 -8
- package/fesm2020/mtxSlider.mjs.map +1 -1
- package/fesm2020/mtxSplit.mjs +19 -18
- package/fesm2020/mtxSplit.mjs.map +1 -1
- package/fesm2020/mtxTooltip.mjs +11 -10
- package/fesm2020/ng-matero-extensions.mjs +1 -0
- package/grid/_grid-theme.import.scss +1 -1
- package/grid/_grid-theme.scss +16 -16
- package/grid/{cell.component.d.ts → cell.d.ts} +8 -8
- package/grid/{cell.component.scss → cell.scss} +0 -0
- package/grid/{column-menu.component.d.ts → column-menu.d.ts} +4 -4
- package/grid/{column-menu.component.scss → column-menu.scss} +6 -10
- package/grid/column-resize/_column-resize.scss +9 -9
- package/grid/column-resize/column-resize-directives/column-resize-flex.d.ts +1 -1
- package/grid/column-resize/column-resize-directives/column-resize.d.ts +1 -1
- package/grid/column-resize/overlay-handle.d.ts +1 -1
- package/grid/column-resize/resizable-directives/resizable.d.ts +1 -1
- package/grid/{expansion-toggle.directive.d.ts → expansion-toggle.d.ts} +4 -4
- package/grid/{grid.module.d.ts → grid-module.d.ts} +5 -5
- package/grid/{grid.service.d.ts → grid-utils.d.ts} +4 -4
- package/grid/{grid.component.d.ts → grid.d.ts} +18 -17
- package/grid/{grid.component.scss → grid.scss} +17 -29
- package/grid/{grid.interface.d.ts → interfaces.d.ts} +0 -6
- package/grid/public-api.d.ts +7 -7
- package/loader/_loader-theme.import.scss +1 -1
- package/loader/_loader-theme.scss +2 -2
- package/loader/{loader.module.d.ts → loader-module.d.ts} +2 -2
- package/loader/{loader.component.d.ts → loader.d.ts} +3 -3
- package/loader/{loader.component.scss → loader.scss} +2 -2
- package/loader/public-api.d.ts +2 -2
- package/package.json +8 -24
- package/popover/_popover-theme.import.scss +1 -1
- package/popover/_popover-theme.scss +2 -2
- package/popover/popover-content.d.ts +2 -2
- package/popover/popover-target.d.ts +1 -1
- package/popover/popover-trigger.d.ts +1 -1
- package/popover/popover.d.ts +1 -1
- package/progress/_progress-theme.import.scss +1 -1
- package/progress/_progress-theme.scss +2 -2
- package/progress/{progress.module.d.ts → progress-module.d.ts} +2 -2
- package/progress/{progress.component.d.ts → progress.d.ts} +3 -3
- package/progress/{progress.component.scss → progress.scss} +0 -0
- package/progress/public-api.d.ts +2 -2
- package/select/_select-density.scss +68 -0
- package/select/_select-theme.import.scss +2 -1
- package/select/_select-theme.scss +6 -2
- package/select/{option.component.d.ts → option.d.ts} +3 -3
- package/select/public-api.d.ts +4 -4
- package/select/select-module.d.ts +12 -0
- package/select/{select.component.d.ts → select.d.ts} +5 -5
- package/select/{select.component.scss → select.scss} +14 -22
- package/select/{templates.directive.d.ts → templates.d.ts} +33 -33
- package/slider/_slider-theme.import.scss +1 -1
- package/slider/_slider-theme.scss +3 -4
- package/slider/slider.d.ts +1 -1
- package/slider/slider.scss +3 -3
- package/split/_split-theme.import.scss +1 -1
- package/split/_split-theme.scss +2 -2
- package/split/{interface.d.ts → interfaces.d.ts} +2 -2
- package/split/public-api.d.ts +4 -4
- package/split/{split.module.d.ts → split-module.d.ts} +3 -3
- package/split/{split-pane.directive.d.ts → split-pane.d.ts} +5 -5
- package/split/{split.component.d.ts → split.d.ts} +11 -11
- package/split/{split.component.scss → split.scss} +0 -0
- package/split/utils.d.ts +4 -1
- package/tooltip/_tooltip-theme.import.scss +1 -1
- package/tooltip/_tooltip-theme.scss +3 -4
- package/tooltip/tooltip.d.ts +2 -2
- package/_all-color.scss +0 -47
- package/_all-theme.scss +0 -47
- package/button/button-loading.directive.d.ts +0 -26
- package/checkbox-group/checkbox-group.component.scss +0 -12
- package/core/density/private/_compatibility.scss +0 -74
- package/dialog/dialog.component.d.ts +0 -12
- package/dialog/dialog.component.scss +0 -27
- package/esm2020/alert/alert.component.mjs +0 -52
- package/esm2020/alert/alert.module.mjs +0 -18
- package/esm2020/button/button-loading.directive.mjs +0 -77
- package/esm2020/button/button.module.mjs +0 -20
- package/esm2020/checkbox-group/checkbox-group.component.mjs +0 -234
- package/esm2020/checkbox-group/checkbox-group.interface.mjs +0 -2
- package/esm2020/dialog/dialog.component.mjs +0 -33
- package/esm2020/form-group/form-group.component.mjs +0 -37
- package/esm2020/form-group/form-group.module.mjs +0 -18
- package/esm2020/form-group/mtxFormGroup.mjs +0 -5
- package/esm2020/form-group/public-api.mjs +0 -3
- package/esm2020/grid/cell.component.mjs +0 -130
- package/esm2020/grid/column-menu.component.mjs +0 -112
- package/esm2020/grid/expansion-toggle.directive.mjs +0 -64
- package/esm2020/grid/grid.component.mjs +0 -619
- package/esm2020/grid/grid.interface.mjs +0 -2
- package/esm2020/grid/grid.module.mjs +0 -115
- package/esm2020/grid/grid.service.mjs +0 -44
- package/esm2020/loader/loader.component.mjs +0 -69
- package/esm2020/loader/loader.module.mjs +0 -20
- package/esm2020/progress/progress.component.mjs +0 -55
- package/esm2020/progress/progress.module.mjs +0 -18
- package/esm2020/select/option.component.mjs +0 -57
- package/esm2020/select/select.component.mjs +0 -549
- package/esm2020/select/select.module.mjs +0 -74
- package/esm2020/select/templates.directive.mjs +0 -124
- package/esm2020/split/interface.mjs +0 -2
- package/esm2020/split/split-pane.directive.mjs +0 -149
- package/esm2020/split/split.component.mjs +0 -619
- package/esm2020/split/split.module.mjs +0 -19
- package/esm2020/text3d/mtxText3d.mjs +0 -5
- package/esm2020/text3d/public-api.mjs +0 -3
- package/esm2020/text3d/text3d.component.mjs +0 -45
- package/esm2020/text3d/text3d.module.mjs +0 -18
- package/fesm2015/mtxFormGroup.mjs +0 -59
- package/fesm2015/mtxFormGroup.mjs.map +0 -1
- package/fesm2015/mtxText3d.mjs +0 -67
- package/fesm2015/mtxText3d.mjs.map +0 -1
- package/fesm2020/mtxFormGroup.mjs +0 -59
- package/fesm2020/mtxFormGroup.mjs.map +0 -1
- package/fesm2020/mtxText3d.mjs +0 -67
- package/fesm2020/mtxText3d.mjs.map +0 -1
- package/form-group/_form-group-theme.import.scss +0 -2
- package/form-group/_form-group-theme.scss +0 -95
- package/form-group/form-group.component.d.ts +0 -15
- package/form-group/form-group.component.scss +0 -103
- package/form-group/form-group.module.d.ts +0 -8
- package/form-group/index.d.ts +0 -5
- package/form-group/public-api.d.ts +0 -2
- package/select/select.module.d.ts +0 -12
- package/text3d/_text3d-theme.import.scss +0 -2
- package/text3d/_text3d-theme.scss +0 -48
- package/text3d/index.d.ts +0 -5
- package/text3d/public-api.d.ts +0 -2
- package/text3d/text3d.component.d.ts +0 -14
- package/text3d/text3d.component.scss +0 -21
- package/text3d/text3d.module.d.ts +0 -8
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, EventEmitter, forwardRef, ContentChildren, } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
4
|
+
import { MatCheckbox } from '@angular/material/checkbox';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/cdk/a11y";
|
|
7
|
+
import * as i2 from "@angular/common";
|
|
8
|
+
import * as i3 from "@angular/forms";
|
|
9
|
+
import * as i4 from "@angular/material/checkbox";
|
|
10
|
+
import * as i5 from "@ng-matero/extensions/core";
|
|
11
|
+
export class MtxCheckboxBase {
|
|
12
|
+
constructor(label, value) {
|
|
13
|
+
this.label = label;
|
|
14
|
+
this.value = value;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
export class MtxCheckboxGroup {
|
|
18
|
+
constructor(_changeDetectorRef, _focusMonitor, _elementRef) {
|
|
19
|
+
this._changeDetectorRef = _changeDetectorRef;
|
|
20
|
+
this._focusMonitor = _focusMonitor;
|
|
21
|
+
this._elementRef = _elementRef;
|
|
22
|
+
this._items = [];
|
|
23
|
+
this._originalItems = [];
|
|
24
|
+
this.bindLabel = 'label';
|
|
25
|
+
this.bindValue = 'value';
|
|
26
|
+
this._showSelectAll = false;
|
|
27
|
+
this.selectAllLabel = 'Select All';
|
|
28
|
+
this._disabled = false;
|
|
29
|
+
this.change = new EventEmitter();
|
|
30
|
+
this.selectAll = false;
|
|
31
|
+
this.selectAllIndeterminate = false;
|
|
32
|
+
this.selectedItems = [];
|
|
33
|
+
this._onChange = () => null;
|
|
34
|
+
this._onTouched = () => null;
|
|
35
|
+
}
|
|
36
|
+
get items() {
|
|
37
|
+
return this._items;
|
|
38
|
+
}
|
|
39
|
+
set items(value) {
|
|
40
|
+
// TODO: Deep clone
|
|
41
|
+
this._originalItems = JSON.parse(JSON.stringify(value));
|
|
42
|
+
this._items = value.map(option => {
|
|
43
|
+
return option instanceof Object ? option : new MtxCheckboxBase(option, option);
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
get showSelectAll() {
|
|
47
|
+
return this._showSelectAll;
|
|
48
|
+
}
|
|
49
|
+
set showSelectAll(value) {
|
|
50
|
+
this._showSelectAll = coerceBooleanProperty(value);
|
|
51
|
+
}
|
|
52
|
+
get compareWith() {
|
|
53
|
+
return this._compareWith;
|
|
54
|
+
}
|
|
55
|
+
set compareWith(fn) {
|
|
56
|
+
if (typeof fn !== 'function') {
|
|
57
|
+
throw Error('`compareWith` must be a function.');
|
|
58
|
+
}
|
|
59
|
+
if (fn) {
|
|
60
|
+
this._compareWith = fn;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
get disabled() {
|
|
64
|
+
return this._disabled;
|
|
65
|
+
}
|
|
66
|
+
set disabled(value) {
|
|
67
|
+
this._disabled = coerceBooleanProperty(value);
|
|
68
|
+
}
|
|
69
|
+
ngAfterViewInit() {
|
|
70
|
+
this._focusMonitor.monitor(this._elementRef, true).subscribe(focusOrigin => {
|
|
71
|
+
if (!focusOrigin) {
|
|
72
|
+
// When a focused element becomes disabled, the browser *immediately* fires a blur event.
|
|
73
|
+
// Angular does not expect events to be raised during change detection, so any state change
|
|
74
|
+
// (such as a form control's 'ng-touched') will cause a changed-after-checked error.
|
|
75
|
+
// See https://github.com/angular/angular/issues/17793. To work around this, we defer
|
|
76
|
+
// telling the form control it has been touched until the next tick.
|
|
77
|
+
Promise.resolve().then(() => {
|
|
78
|
+
this._onTouched();
|
|
79
|
+
this._changeDetectorRef.markForCheck();
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
ngOnDestroy() {
|
|
85
|
+
this._focusMonitor.stopMonitoring(this._elementRef);
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Finds and selects and option based on its value.
|
|
89
|
+
* @returns Option that has the corresponding value.
|
|
90
|
+
*/
|
|
91
|
+
_selectValue(value) {
|
|
92
|
+
const correspondingOption = this.items.find(option => {
|
|
93
|
+
try {
|
|
94
|
+
const compareValue = option[this.bindValue] === value;
|
|
95
|
+
return this._compareWith ? this._compareWith(option, value) : compareValue;
|
|
96
|
+
}
|
|
97
|
+
catch (error) {
|
|
98
|
+
console.warn(error);
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
if (correspondingOption) {
|
|
103
|
+
correspondingOption.checked = true;
|
|
104
|
+
}
|
|
105
|
+
return correspondingOption;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Sets the model value. Implemented as part of ControlValueAccessor.
|
|
109
|
+
* @param value New value to be written to the model.
|
|
110
|
+
*/
|
|
111
|
+
writeValue(value) {
|
|
112
|
+
if (value) {
|
|
113
|
+
if (!Array.isArray(value)) {
|
|
114
|
+
throw Error('Value must be an array.');
|
|
115
|
+
}
|
|
116
|
+
value.forEach((currentValue) => this._selectValue(currentValue));
|
|
117
|
+
this.selectedItems = value;
|
|
118
|
+
}
|
|
119
|
+
this._checkMasterCheckboxState();
|
|
120
|
+
this._changeDetectorRef.markForCheck();
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Registers a callback to be triggered when the model value changes.
|
|
124
|
+
* Implemented as part of ControlValueAccessor.
|
|
125
|
+
* @param fn Callback to be registered.
|
|
126
|
+
*/
|
|
127
|
+
registerOnChange(fn) {
|
|
128
|
+
this._onChange = fn;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Registers a callback to be triggered when the control is touched.
|
|
132
|
+
* Implemented as part of ControlValueAccessor.
|
|
133
|
+
* @param fn Callback to be registered.
|
|
134
|
+
*/
|
|
135
|
+
registerOnTouched(fn) {
|
|
136
|
+
this._onTouched = fn;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Sets the disabled state of the control. Implemented as a part of ControlValueAccessor.
|
|
140
|
+
* @param isDisabled Whether the control should be disabled.
|
|
141
|
+
*/
|
|
142
|
+
setDisabledState(isDisabled) {
|
|
143
|
+
this._disabled = isDisabled;
|
|
144
|
+
}
|
|
145
|
+
_checkMasterCheckboxState() {
|
|
146
|
+
if (this.items
|
|
147
|
+
.filter(option => option.checked || !option.disabled)
|
|
148
|
+
.every(option => !option.checked)) {
|
|
149
|
+
this.selectAll = false;
|
|
150
|
+
this.selectAllIndeterminate = false;
|
|
151
|
+
}
|
|
152
|
+
else if (this.items
|
|
153
|
+
.filter(option => option.checked || !option.disabled)
|
|
154
|
+
.every(option => option.checked)) {
|
|
155
|
+
this.selectAll = true;
|
|
156
|
+
this.selectAllIndeterminate = false;
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
this.selectAllIndeterminate = true;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
_getSelectedItems(index) {
|
|
163
|
+
this.selectedItems = this.items.filter(option => option.checked);
|
|
164
|
+
if (this._compareWith) {
|
|
165
|
+
this.selectedItems = this._originalItems.filter(option => this.selectedItems.find(selectedOption => this._compareWith(option, selectedOption)));
|
|
166
|
+
}
|
|
167
|
+
else {
|
|
168
|
+
this.selectedItems = this.selectedItems.map(option => option[this.bindValue]);
|
|
169
|
+
}
|
|
170
|
+
this._onChange(this.selectedItems);
|
|
171
|
+
this.change.emit({ model: this.selectedItems, index });
|
|
172
|
+
}
|
|
173
|
+
/** Handle normal checkbox toggle */
|
|
174
|
+
_updateNormalCheckboxState(e, index) {
|
|
175
|
+
this._checkMasterCheckboxState();
|
|
176
|
+
this._getSelectedItems(index);
|
|
177
|
+
}
|
|
178
|
+
/** Handle master checkbox toggle */
|
|
179
|
+
_updateMasterCheckboxState(e, index) {
|
|
180
|
+
this.selectAll = !this.selectAll;
|
|
181
|
+
this.selectAllIndeterminate = false;
|
|
182
|
+
if (this.selectAll) {
|
|
183
|
+
this.items
|
|
184
|
+
.filter(option => option.checked || !option.disabled)
|
|
185
|
+
.forEach(option => (option.checked = true));
|
|
186
|
+
}
|
|
187
|
+
else {
|
|
188
|
+
this.items
|
|
189
|
+
.filter(option => option.checked || !option.disabled)
|
|
190
|
+
.forEach(option => (option.checked = !!option.disabled));
|
|
191
|
+
}
|
|
192
|
+
this._getSelectedItems(index);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
/** @nocollapse */ MtxCheckboxGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxCheckboxGroup, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
196
|
+
/** @nocollapse */ MtxCheckboxGroup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: MtxCheckboxGroup, selector: "mtx-checkbox-group", inputs: { items: "items", bindLabel: "bindLabel", bindValue: "bindValue", showSelectAll: "showSelectAll", selectAllLabel: "selectAllLabel", compareWith: "compareWith", disabled: "disabled" }, outputs: { change: "change" }, host: { classAttribute: "mtx-checkbox-group" }, providers: [
|
|
197
|
+
{
|
|
198
|
+
provide: NG_VALUE_ACCESSOR,
|
|
199
|
+
useExisting: forwardRef((() => MtxCheckboxGroup)),
|
|
200
|
+
multi: true,
|
|
201
|
+
},
|
|
202
|
+
], queries: [{ propertyName: "_checkboxes", predicate: i0.forwardRef(function () { return MatCheckbox; }), descendants: true }], exportAs: ["mtxCheckboxGroup"], ngImport: i0, template: "<mat-checkbox class=\"mtx-checkbox-master\"\n *ngIf=\"showSelectAll\"\n [checked]=\"selectAll\"\n [(indeterminate)]=\"selectAllIndeterminate\"\n [disabled]=\"disabled\"\n (change)=\"_updateMasterCheckboxState($event, -1);\">\n {{selectAllLabel}}\n</mat-checkbox>\n\n<mat-checkbox class=\"mtx-checkbox-normal\"\n *ngFor=\"let option of items; let i = index;\"\n [(ngModel)]=\"option.checked\"\n [ngModelOptions]=\"{standalone: true}\"\n [aria-describedby]=\"option.ariaDescribedby\"\n [aria-label]=\"option.ariaLabel\"\n [aria-labelledby]=\"option.ariaLabelledby\"\n [color]=\"option.color\"\n [disabled]=\"option.disabled || disabled\"\n [disableRipple]=\"option.disableRipple\"\n [labelPosition]=\"option.labelPosition\"\n [required]=\"option.required\"\n (change)=\"_updateNormalCheckboxState($event, i)\">\n {{option[bindLabel] | toObservable | async}}\n</mat-checkbox>\n", styles: [""], 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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i4.MatCheckboxRequiredValidator, selector: "mat-checkbox[required][formControlName], mat-checkbox[required][formControl], mat-checkbox[required][ngModel]" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.MtxToObservablePipe, name: "toObservable" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
203
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxCheckboxGroup, decorators: [{
|
|
204
|
+
type: Component,
|
|
205
|
+
args: [{ selector: 'mtx-checkbox-group', exportAs: 'mtxCheckboxGroup', host: {
|
|
206
|
+
class: 'mtx-checkbox-group',
|
|
207
|
+
}, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
208
|
+
{
|
|
209
|
+
provide: NG_VALUE_ACCESSOR,
|
|
210
|
+
useExisting: forwardRef((() => MtxCheckboxGroup)),
|
|
211
|
+
multi: true,
|
|
212
|
+
},
|
|
213
|
+
], template: "<mat-checkbox class=\"mtx-checkbox-master\"\n *ngIf=\"showSelectAll\"\n [checked]=\"selectAll\"\n [(indeterminate)]=\"selectAllIndeterminate\"\n [disabled]=\"disabled\"\n (change)=\"_updateMasterCheckboxState($event, -1);\">\n {{selectAllLabel}}\n</mat-checkbox>\n\n<mat-checkbox class=\"mtx-checkbox-normal\"\n *ngFor=\"let option of items; let i = index;\"\n [(ngModel)]=\"option.checked\"\n [ngModelOptions]=\"{standalone: true}\"\n [aria-describedby]=\"option.ariaDescribedby\"\n [aria-label]=\"option.ariaLabel\"\n [aria-labelledby]=\"option.ariaLabelledby\"\n [color]=\"option.color\"\n [disabled]=\"option.disabled || disabled\"\n [disableRipple]=\"option.disableRipple\"\n [labelPosition]=\"option.labelPosition\"\n [required]=\"option.required\"\n (change)=\"_updateNormalCheckboxState($event, i)\">\n {{option[bindLabel] | toObservable | async}}\n</mat-checkbox>\n" }]
|
|
214
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.FocusMonitor }, { type: i0.ElementRef }]; }, propDecorators: { _checkboxes: [{
|
|
215
|
+
type: ContentChildren,
|
|
216
|
+
args: [forwardRef(() => MatCheckbox), { descendants: true }]
|
|
217
|
+
}], items: [{
|
|
218
|
+
type: Input
|
|
219
|
+
}], bindLabel: [{
|
|
220
|
+
type: Input
|
|
221
|
+
}], bindValue: [{
|
|
222
|
+
type: Input
|
|
223
|
+
}], showSelectAll: [{
|
|
224
|
+
type: Input
|
|
225
|
+
}], selectAllLabel: [{
|
|
226
|
+
type: Input
|
|
227
|
+
}], compareWith: [{
|
|
228
|
+
type: Input
|
|
229
|
+
}], disabled: [{
|
|
230
|
+
type: Input
|
|
231
|
+
}], change: [{
|
|
232
|
+
type: Output
|
|
233
|
+
}] } });
|
|
234
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9leHRlbnNpb25zL2NoZWNrYm94LWdyb3VwL2NoZWNrYm94LWdyb3VwLnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh0ZW5zaW9ucy9jaGVja2JveC1ncm91cC9jaGVja2JveC1ncm91cC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFFWixVQUFVLEVBRVYsZUFBZSxHQUloQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQXdCLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVFLE9BQU8sRUFBRSxXQUFXLEVBQXFCLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7QUFJNUUsTUFBTSxPQUFPLGVBQWU7SUFDMUIsWUFBbUIsS0FBVyxFQUFTLEtBQVc7UUFBL0IsVUFBSyxHQUFMLEtBQUssQ0FBTTtRQUFTLFVBQUssR0FBTCxLQUFLLENBQU07SUFBRyxDQUFDO0NBQ3ZEO0FBb0JELE1BQU0sT0FBTyxnQkFBZ0I7SUFtRTNCLFlBQ1Usa0JBQXFDLEVBQ3JDLGFBQTJCLEVBQzNCLFdBQW9DO1FBRnBDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUFDckMsa0JBQWEsR0FBYixhQUFhLENBQWM7UUFDM0IsZ0JBQVcsR0FBWCxXQUFXLENBQXlCO1FBdkR0QyxXQUFNLEdBQVUsRUFBRSxDQUFDO1FBQ25CLG1CQUFjLEdBQVUsRUFBRSxDQUFDO1FBRTFCLGNBQVMsR0FBRyxPQUFPLENBQUM7UUFFcEIsY0FBUyxHQUFHLE9BQU8sQ0FBQztRQVNyQixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUV0QixtQkFBYyxH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Q29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgZm9yd2FyZFJlZixcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBRdWVyeUxpc3QsXG4gIEVsZW1lbnRSZWYsXG4gIE9uRGVzdHJveSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBNYXRDaGVja2JveCwgTWF0Q2hlY2tib3hDaGFuZ2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBNdHhDaGVja2JveEdyb3VwT3B0aW9uIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGNsYXNzIE10eENoZWNrYm94QmFzZSB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBsYWJlbD86IGFueSwgcHVibGljIHZhbHVlPzogYW55KSB7fVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdHgtY2hlY2tib3gtZ3JvdXAnLFxuICBleHBvcnRBczogJ210eENoZWNrYm94R3JvdXAnLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdtdHgtY2hlY2tib3gtZ3JvdXAnLFxuICB9LFxuICB0ZW1wbGF0ZVVybDogJy4vY2hlY2tib3gtZ3JvdXAuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NoZWNrYm94LWdyb3VwLnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTXR4Q2hlY2tib3hHcm91cCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBNdHhDaGVja2JveEdyb3VwIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBNYXRDaGVja2JveCksIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgX2NoZWNrYm94ZXMhOiBRdWVyeUxpc3Q8TWF0Q2hlY2tib3g+O1xuXG4gIEBJbnB1dCgpXG4gIGdldCBpdGVtcygpIHtcbiAgICByZXR1cm4gdGhpcy5faXRlbXM7XG4gIH1cbiAgc2V0IGl0ZW1zKHZhbHVlOiBhbnlbXSkge1xuICAgIC8vIFRPRE86IERlZXAgY2xvbmVcbiAgICB0aGlzLl9vcmlnaW5hbEl0ZW1zID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh2YWx1ZSkpO1xuICAgIHRoaXMuX2l0ZW1zID0gdmFsdWUubWFwKG9wdGlvbiA9PiB7XG4gICAgICByZXR1cm4gb3B0aW9uIGluc3RhbmNlb2YgT2JqZWN0ID8gb3B0aW9uIDogbmV3IE10eENoZWNrYm94QmFzZShvcHRpb24sIG9wdGlvbik7XG4gICAgfSk7XG4gIH1cbiAgcHJpdmF0ZSBfaXRlbXM6IGFueVtdID0gW107XG4gIHByaXZhdGUgX29yaWdpbmFsSXRlbXM6IGFueVtdID0gW107XG5cbiAgQElucHV0KCkgYmluZExhYmVsID0gJ2xhYmVsJztcblxuICBASW5wdXQoKSBiaW5kVmFsdWUgPSAndmFsdWUnO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBzaG93U2VsZWN0QWxsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zaG93U2VsZWN0QWxsO1xuICB9XG4gIHNldCBzaG93U2VsZWN0QWxsKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fc2hvd1NlbGVjdEFsbCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cbiAgcHJpdmF0ZSBfc2hvd1NlbGVjdEFsbCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIHNlbGVjdEFsbExhYmVsID0gJ1NlbGVjdCBBbGwnO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBjb21wYXJlV2l0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY29tcGFyZVdpdGg7XG4gIH1cbiAgc2V0IGNvbXBhcmVXaXRoKGZuOiAobzE6IGFueSwgbzI6IGFueSkgPT4gYm9vbGVhbikge1xuICAgIGlmICh0eXBlb2YgZm4gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IEVycm9yKCdgY29tcGFyZVdpdGhgIG11c3QgYmUgYSBmdW5jdGlvbi4nKTtcbiAgICB9XG5cbiAgICBpZiAoZm4pIHtcbiAgICAgIHRoaXMuX2NvbXBhcmVXaXRoID0gZm47XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX2NvbXBhcmVXaXRoITogKG8xOiBhbnksIG8yOiBhbnkpID0+IGJvb2xlYW47XG5cbiAgQElucHV0KClcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx7IG1vZGVsOiBNdHhDaGVja2JveEdyb3VwT3B0aW9uW107IGluZGV4OiBudW1iZXIgfT4oKTtcblxuICBzZWxlY3RBbGwgPSBmYWxzZTtcbiAgc2VsZWN0QWxsSW5kZXRlcm1pbmF0ZSA9IGZhbHNlO1xuXG4gIHNlbGVjdGVkSXRlbXM6IE10eENoZWNrYm94R3JvdXBPcHRpb25bXSA9IFtdO1xuXG4gIF9vbkNoYW5nZTogKHZhbHVlOiBNdHhDaGVja2JveEdyb3VwT3B0aW9uW10pID0+IHZvaWQgPSAoKSA9PiBudWxsO1xuICBfb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLl9mb2N1c01vbml0b3IubW9uaXRvcih0aGlzLl9lbGVtZW50UmVmLCB0cnVlKS5zdWJzY3JpYmUoZm9jdXNPcmlnaW4gPT4ge1xuICAgICAgaWYgKCFmb2N1c09yaWdpbikge1xuICAgICAgICAvLyBXaGVuIGEgZm9jdXNlZCBlbGVtZW50IGJlY29tZXMgZGlzYWJsZWQsIHRoZSBicm93c2VyICppbW1lZGlhdGVseSogZmlyZXMgYSBibHVyIGV2ZW50LlxuICAgICAgICAvLyBBbmd1bGFyIGRvZXMgbm90IGV4cGVjdCBldmVudHMgdG8gYmUgcmFpc2VkIGR1cmluZyBjaGFuZ2UgZGV0ZWN0aW9uLCBzbyBhbnkgc3RhdGUgY2hhbmdlXG4gICAgICAgIC8vIChzdWNoIGFzIGEgZm9ybSBjb250cm9sJ3MgJ25nLXRvdWNoZWQnKSB3aWxsIGNhdXNlIGEgY2hhbmdlZC1hZnRlci1jaGVja2VkIGVycm9yLlxuICAgICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTc3OTMuIFRvIHdvcmsgYXJvdW5kIHRoaXMsIHdlIGRlZmVyXG4gICAgICAgIC8vIHRlbGxpbmcgdGhlIGZvcm0gY29udHJvbCBpdCBoYXMgYmVlbiB0b3VjaGVkIHVudGlsIHRoZSBuZXh0IHRpY2suXG4gICAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX29uVG91Y2hlZCgpO1xuICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2ZvY3VzTW9uaXRvci5zdG9wTW9uaXRvcmluZyh0aGlzLl9lbGVtZW50UmVmKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kcyBhbmQgc2VsZWN0cyBhbmQgb3B0aW9uIGJhc2VkIG9uIGl0cyB2YWx1ZS5cbiAgICogQHJldHVybnMgT3B0aW9uIHRoYXQgaGFzIHRoZSBjb3JyZXNwb25kaW5nIHZhbHVlLlxuICAgKi9cbiAgcHJpdmF0ZSBfc2VsZWN0VmFsdWUodmFsdWU6IE10eENoZWNrYm94R3JvdXBPcHRpb24pIHtcbiAgICBjb25zdCBjb3JyZXNwb25kaW5nT3B0aW9uID0gKHRoaXMuaXRlbXMgYXMgTXR4Q2hlY2tib3hHcm91cE9wdGlvbltdKS5maW5kKG9wdGlvbiA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBjb21wYXJlVmFsdWUgPSBvcHRpb25bdGhpcy5iaW5kVmFsdWVdID09PSB2YWx1ZTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbXBhcmVXaXRoID8gdGhpcy5fY29tcGFyZVdpdGgob3B0aW9uLCB2YWx1ZSkgOiBjb21wYXJlVmFsdWU7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zb2xlLndhcm4oZXJyb3IpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoY29ycmVzcG9uZGluZ09wdGlvbikge1xuICAgICAgY29ycmVzcG9uZGluZ09wdGlvbi5jaGVja2VkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gY29ycmVzcG9uZGluZ09wdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBtb2RlbCB2YWx1ZS4gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICogQHBhcmFtIHZhbHVlIE5ldyB2YWx1ZSB0byBiZSB3cml0dGVuIHRvIHRoZSBtb2RlbC5cbiAgICovXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueVtdKTogdm9pZCB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgIHRocm93IEVycm9yKCdWYWx1ZSBtdXN0IGJlIGFuIGFycmF5LicpO1xuICAgICAgfVxuXG4gICAgICB2YWx1ZS5mb3JFYWNoKChjdXJyZW50VmFsdWU6IGFueSkgPT4gdGhpcy5fc2VsZWN0VmFsdWUoY3VycmVudFZhbHVlKSk7XG4gICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICB0aGlzLl9jaGVja01hc3RlckNoZWNrYm94U3RhdGUoKTtcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSBjYWxsYmFjayB0byBiZSB0cmlnZ2VyZWQgd2hlbiB0aGUgbW9kZWwgdmFsdWUgY2hhbmdlcy5cbiAgICogSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICogQHBhcmFtIGZuIENhbGxiYWNrIHRvIGJlIHJlZ2lzdGVyZWQuXG4gICAqL1xuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IE10eENoZWNrYm94R3JvdXBPcHRpb25bXSkgPT4gUmVjb3JkPHN0cmluZywgdW5rbm93bj4pOiB2b2lkIHtcbiAgICB0aGlzLl9vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIGNhbGxiYWNrIHRvIGJlIHRyaWdnZXJlZCB3aGVuIHRoZSBjb250cm9sIGlzIHRvdWNoZWQuXG4gICAqIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gICAqIEBwYXJhbSBmbiBDYWxsYmFjayB0byBiZSByZWdpc3RlcmVkLlxuICAgKi9cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogdm9pZCB7XG4gICAgdGhpcy5fb25Ub3VjaGVkID0gZm47XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgZGlzYWJsZWQgc3RhdGUgb2YgdGhlIGNvbnRyb2wuIEltcGxlbWVudGVkIGFzIGEgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICogQHBhcmFtIGlzRGlzYWJsZWQgV2hldGhlciB0aGUgY29udHJvbCBzaG91bGQgYmUgZGlzYWJsZWQuXG4gICAqL1xuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja01hc3RlckNoZWNrYm94U3RhdGUoKSB7XG4gICAgaWYgKFxuICAgICAgKHRoaXMuaXRlbXMgYXMgTXR4Q2hlY2tib3hHcm91cE9wdGlvbltdKVxuICAgICAgICAuZmlsdGVyKG9wdGlvbiA9PiBvcHRpb24uY2hlY2tlZCB8fCAhb3B0aW9uLmRpc2FibGVkKVxuICAgICAgICAuZXZlcnkob3B0aW9uID0+ICFvcHRpb24uY2hlY2tlZClcbiAgICApIHtcbiAgICAgIHRoaXMuc2VsZWN0QWxsID0gZmFsc2U7XG4gICAgICB0aGlzLnNlbGVjdEFsbEluZGV0ZXJtaW5hdGUgPSBmYWxzZTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgKHRoaXMuaXRlbXMgYXMgTXR4Q2hlY2tib3hHcm91cE9wdGlvbltdKVxuICAgICAgICAuZmlsdGVyKG9wdGlvbiA9PiBvcHRpb24uY2hlY2tlZCB8fCAhb3B0aW9uLmRpc2FibGVkKVxuICAgICAgICAuZXZlcnkob3B0aW9uID0+IG9wdGlvbi5jaGVja2VkKVxuICAgICkge1xuICAgICAgdGhpcy5zZWxlY3RBbGwgPSB0cnVlO1xuICAgICAgdGhpcy5zZWxlY3RBbGxJbmRldGVybWluYXRlID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0QWxsSW5kZXRlcm1pbmF0ZSA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0U2VsZWN0ZWRJdGVtcyhpbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gKHRoaXMuaXRlbXMgYXMgTXR4Q2hlY2tib3hHcm91cE9wdGlvbltdKS5maWx0ZXIob3B0aW9uID0+IG9wdGlvbi5jaGVja2VkKTtcblxuICAgIGlmICh0aGlzLl9jb21wYXJlV2l0aCkge1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gKHRoaXMuX29yaWdpbmFsSXRlbXMgYXMgTXR4Q2hlY2tib3hHcm91cE9wdGlvbltdKS5maWx0ZXIob3B0aW9uID0+XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5maW5kKHNlbGVjdGVkT3B0aW9uID0+IHRoaXMuX2NvbXBhcmVXaXRoKG9wdGlvbiwgc2VsZWN0ZWRPcHRpb24pKVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gdGhpcy5zZWxlY3RlZEl0ZW1zLm1hcChvcHRpb24gPT4gb3B0aW9uW3RoaXMuYmluZFZhbHVlXSk7XG4gICAgfVxuXG4gICAgdGhpcy5fb25DaGFuZ2UodGhpcy5zZWxlY3RlZEl0ZW1zKTtcblxuICAgIHRoaXMuY2hhbmdlLmVtaXQoeyBtb2RlbDogdGhpcy5zZWxlY3RlZEl0ZW1zLCBpbmRleCB9KTtcbiAgfVxuXG4gIC8qKiBIYW5kbGUgbm9ybWFsIGNoZWNrYm94IHRvZ2dsZSAqL1xuICBfdXBkYXRlTm9ybWFsQ2hlY2tib3hTdGF0ZShlOiBNYXRDaGVja2JveENoYW5nZSwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuX2NoZWNrTWFzdGVyQ2hlY2tib3hTdGF0ZSgpO1xuICAgIHRoaXMuX2dldFNlbGVjdGVkSXRlbXMoaW5kZXgpO1xuICB9XG5cbiAgLyoqIEhhbmRsZSBtYXN0ZXIgY2hlY2tib3ggdG9nZ2xlICovXG4gIF91cGRhdGVNYXN0ZXJDaGVja2JveFN0YXRlKGU6IE1hdENoZWNrYm94Q2hhbmdlLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RBbGwgPSAhdGhpcy5zZWxlY3RBbGw7XG4gICAgdGhpcy5zZWxlY3RBbGxJbmRldGVybWluYXRlID0gZmFsc2U7XG5cbiAgICBpZiAodGhpcy5zZWxlY3RBbGwpIHtcbiAgICAgICh0aGlzLml0ZW1zIGFzIE10eENoZWNrYm94R3JvdXBPcHRpb25bXSlcbiAgICAgICAgLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uLmNoZWNrZWQgfHwgIW9wdGlvbi5kaXNhYmxlZClcbiAgICAgICAgLmZvckVhY2gob3B0aW9uID0+IChvcHRpb24uY2hlY2tlZCA9IHRydWUpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgKHRoaXMuaXRlbXMgYXMgTXR4Q2hlY2tib3hHcm91cE9wdGlvbltdKVxuICAgICAgICAuZmlsdGVyKG9wdGlvbiA9PiBvcHRpb24uY2hlY2tlZCB8fCAhb3B0aW9uLmRpc2FibGVkKVxuICAgICAgICAuZm9yRWFjaChvcHRpb24gPT4gKG9wdGlvbi5jaGVja2VkID0gISFvcHRpb24uZGlzYWJsZWQpKTtcbiAgICB9XG5cbiAgICB0aGlzLl9nZXRTZWxlY3RlZEl0ZW1zKGluZGV4KTtcbiAgfVxuXG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zaG93U2VsZWN0QWxsOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9kaXNhYmxlZDogQm9vbGVhbklucHV0O1xufVxuIiwiPG1hdC1jaGVja2JveCBjbGFzcz1cIm10eC1jaGVja2JveC1tYXN0ZXJcIlxuICAgICAgICAgICAgICAqbmdJZj1cInNob3dTZWxlY3RBbGxcIlxuICAgICAgICAgICAgICBbY2hlY2tlZF09XCJzZWxlY3RBbGxcIlxuICAgICAgICAgICAgICBbKGluZGV0ZXJtaW5hdGUpXT1cInNlbGVjdEFsbEluZGV0ZXJtaW5hdGVcIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAoY2hhbmdlKT1cIl91cGRhdGVNYXN0ZXJDaGVja2JveFN0YXRlKCRldmVudCwgLTEpO1wiPlxuICB7e3NlbGVjdEFsbExhYmVsfX1cbjwvbWF0LWNoZWNrYm94PlxuXG48bWF0LWNoZWNrYm94IGNsYXNzPVwibXR4LWNoZWNrYm94LW5vcm1hbFwiXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgaXRlbXM7IGxldCBpID0gaW5kZXg7XCJcbiAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJvcHRpb24uY2hlY2tlZFwiXG4gICAgICAgICAgICAgIFtuZ01vZGVsT3B0aW9uc109XCJ7c3RhbmRhbG9uZTogdHJ1ZX1cIlxuICAgICAgICAgICAgICBbYXJpYS1kZXNjcmliZWRieV09XCJvcHRpb24uYXJpYURlc2NyaWJlZGJ5XCJcbiAgICAgICAgICAgICAgW2FyaWEtbGFiZWxdPVwib3B0aW9uLmFyaWFMYWJlbFwiXG4gICAgICAgICAgICAgIFthcmlhLWxhYmVsbGVkYnldPVwib3B0aW9uLmFyaWFMYWJlbGxlZGJ5XCJcbiAgICAgICAgICAgICAgW2NvbG9yXT1cIm9wdGlvbi5jb2xvclwiXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJvcHRpb24uZGlzYWJsZWQgfHwgZGlzYWJsZWRcIlxuICAgICAgICAgICAgICBbZGlzYWJsZVJpcHBsZV09XCJvcHRpb24uZGlzYWJsZVJpcHBsZVwiXG4gICAgICAgICAgICAgIFtsYWJlbFBvc2l0aW9uXT1cIm9wdGlvbi5sYWJlbFBvc2l0aW9uXCJcbiAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cIm9wdGlvbi5yZXF1aXJlZFwiXG4gICAgICAgICAgICAgIChjaGFuZ2UpPVwiX3VwZGF0ZU5vcm1hbENoZWNrYm94U3RhdGUoJGV2ZW50LCBpKVwiPlxuICB7e29wdGlvbltiaW5kTGFiZWxdIHwgdG9PYnNlcnZhYmxlIHwgYXN5bmN9fVxuPC9tYXQtY2hlY2tib3g+XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dGVuc2lvbnMvY2hlY2tib3gtZ3JvdXAvaW50ZXJmYWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBNdHhDaGVja2JveEdyb3VwT3B0aW9uIHtcbiAgYXJpYURlc2NyaWJlZGJ5Pzogc3RyaW5nO1xuICBhcmlhTGFiZWw/OiBzdHJpbmc7XG4gIGFyaWFMYWJlbGxlZGJ5Pzogc3RyaW5nO1xuICBsYWJlbD86IGFueTtcbiAgdmFsdWU/OiBhbnk7XG4gIGNvbG9yPzogc3RyaW5nO1xuICBjaGVja2VkPzogYm9vbGVhbjtcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBkaXNhYmxlUmlwcGxlPzogYm9vbGVhbjtcbiAgaW5kZXRlcm1pbmF0ZT86IGJvb2xlYW47XG4gIGxhYmVsUG9zaXRpb24/OiAnYmVmb3JlJyB8ICdhZnRlcic7XG4gIGlkPzogc3RyaW5nO1xuICBuYW1lPzogc3RyaW5nIHwgbnVsbDtcbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICBbazogc3RyaW5nXTogYW55O1xufVxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './checkbox-group
|
|
2
|
-
export * from './checkbox-group
|
|
3
|
-
export * from './
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export * from './checkbox-group-module';
|
|
2
|
+
export * from './checkbox-group';
|
|
3
|
+
export * from './interfaces';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dGVuc2lvbnMvY2hlY2tib3gtZ3JvdXAvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NoZWNrYm94LWdyb3VwLW1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2NoZWNrYm94LWdyb3VwJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcyc7XG4iXX0=
|
|
@@ -183,13 +183,13 @@ export class MtxColorpickerInput {
|
|
|
183
183
|
this._elementRef.nativeElement.value = value ? value : '';
|
|
184
184
|
}
|
|
185
185
|
}
|
|
186
|
-
/** @nocollapse */ MtxColorpickerInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
187
|
-
/** @nocollapse */ MtxColorpickerInput.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
186
|
+
/** @nocollapse */ MtxColorpickerInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpickerInput, deps: [{ token: i0.ElementRef }, { token: i1.MatFormField, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
187
|
+
/** @nocollapse */ MtxColorpickerInput.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.2", type: MtxColorpickerInput, selector: "input[mtxColorpicker]", inputs: { mtxColorpicker: "mtxColorpicker", disabled: "disabled", value: "value", format: "format" }, outputs: { colorChange: "colorChange", colorInput: "colorInput" }, host: { listeners: { "input": "_onInput($event.target.value)", "change": "_onChange()", "blur": "_onBlur()", "keydown": "_onKeydown($event)" }, properties: { "attr.aria-haspopup": "_picker ? \"dialog\" : null", "attr.aria-owns": "(_picker?.opened && _picker.id) || null", "disabled": "disabled" }, classAttribute: "mtx-colorpicker-input" }, providers: [
|
|
188
188
|
MTX_COLORPICKER_VALUE_ACCESSOR,
|
|
189
189
|
MTX_COLORPICKER_VALIDATORS,
|
|
190
190
|
{ provide: MAT_INPUT_VALUE_ACCESSOR, useExisting: MtxColorpickerInput },
|
|
191
191
|
], exportAs: ["mtxColorpickerInput"], ngImport: i0 });
|
|
192
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
192
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpickerInput, decorators: [{
|
|
193
193
|
type: Directive,
|
|
194
194
|
args: [{
|
|
195
195
|
selector: 'input[mtxColorpicker]',
|
|
@@ -11,8 +11,8 @@ import { ColorChromeModule } from 'ngx-color/chrome';
|
|
|
11
11
|
import * as i0 from "@angular/core";
|
|
12
12
|
export class MtxColorpickerModule {
|
|
13
13
|
}
|
|
14
|
-
/** @nocollapse */ MtxColorpickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
15
|
-
/** @nocollapse */ MtxColorpickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
14
|
+
/** @nocollapse */ MtxColorpickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
15
|
+
/** @nocollapse */ MtxColorpickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpickerModule, declarations: [MtxColorpicker,
|
|
16
16
|
MtxColorpickerContent,
|
|
17
17
|
MtxColorpickerInput,
|
|
18
18
|
MtxColorpickerToggle,
|
|
@@ -26,13 +26,13 @@ export class MtxColorpickerModule {
|
|
|
26
26
|
MtxColorpickerInput,
|
|
27
27
|
MtxColorpickerToggle,
|
|
28
28
|
MtxColorpickerToggleIcon] });
|
|
29
|
-
/** @nocollapse */ MtxColorpickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
29
|
+
/** @nocollapse */ MtxColorpickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpickerModule, providers: [MTX_COLORPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER], imports: [CommonModule,
|
|
30
30
|
OverlayModule,
|
|
31
31
|
A11yModule,
|
|
32
32
|
PortalModule,
|
|
33
33
|
MatButtonModule,
|
|
34
34
|
ColorChromeModule] });
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpickerModule, decorators: [{
|
|
36
36
|
type: NgModule,
|
|
37
37
|
args: [{
|
|
38
38
|
imports: [
|
|
@@ -1,24 +1,26 @@
|
|
|
1
1
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, ContentChild, Directive, Input, ViewChild, ViewEncapsulation, } from '@angular/core';
|
|
3
|
-
import { Subscription, of, merge } from 'rxjs';
|
|
2
|
+
import { Attribute, ChangeDetectionStrategy, Component, ContentChild, Directive, Input, ViewChild, ViewEncapsulation, } from '@angular/core';
|
|
3
|
+
import { Subscription, of as observableOf, merge } from 'rxjs';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "@angular/common";
|
|
6
6
|
import * as i2 from "@angular/material/button";
|
|
7
7
|
/** Can be used to override the icon of a `mtxColorpickerToggle`. */
|
|
8
8
|
export class MtxColorpickerToggleIcon {
|
|
9
9
|
}
|
|
10
|
-
/** @nocollapse */ MtxColorpickerToggleIcon.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
11
|
-
/** @nocollapse */ MtxColorpickerToggleIcon.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
10
|
+
/** @nocollapse */ MtxColorpickerToggleIcon.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpickerToggleIcon, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
11
|
+
/** @nocollapse */ MtxColorpickerToggleIcon.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.2", type: MtxColorpickerToggleIcon, selector: "[mtxColorpickerToggleIcon]", ngImport: i0 });
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpickerToggleIcon, decorators: [{
|
|
13
13
|
type: Directive,
|
|
14
14
|
args: [{
|
|
15
15
|
selector: '[mtxColorpickerToggleIcon]',
|
|
16
16
|
}]
|
|
17
17
|
}] });
|
|
18
18
|
export class MtxColorpickerToggle {
|
|
19
|
-
constructor(_changeDetectorRef) {
|
|
19
|
+
constructor(_changeDetectorRef, defaultTabIndex) {
|
|
20
20
|
this._changeDetectorRef = _changeDetectorRef;
|
|
21
21
|
this._stateChanges = Subscription.EMPTY;
|
|
22
|
+
const parsedTabIndex = Number(defaultTabIndex);
|
|
23
|
+
this.tabIndex = parsedTabIndex || parsedTabIndex === 0 ? parsedTabIndex : null;
|
|
22
24
|
}
|
|
23
25
|
/** Whether the toggle button is disabled. */
|
|
24
26
|
get disabled() {
|
|
@@ -41,41 +43,50 @@ export class MtxColorpickerToggle {
|
|
|
41
43
|
ngAfterContentInit() {
|
|
42
44
|
this._watchStateChanges();
|
|
43
45
|
}
|
|
44
|
-
|
|
46
|
+
_open(event) {
|
|
45
47
|
if (this.picker && !this.disabled) {
|
|
46
48
|
this.picker.open();
|
|
47
49
|
event.stopPropagation();
|
|
48
50
|
}
|
|
49
51
|
}
|
|
50
52
|
_watchStateChanges() {
|
|
51
|
-
const pickerDisabled = this.picker ? this.picker._disabledChange :
|
|
52
|
-
const inputDisabled = this.picker && this.picker.pickerInput
|
|
53
|
-
|
|
53
|
+
const pickerDisabled = this.picker ? this.picker._disabledChange : observableOf();
|
|
54
|
+
const inputDisabled = this.picker && this.picker.pickerInput
|
|
55
|
+
? this.picker.pickerInput._disabledChange
|
|
56
|
+
: observableOf();
|
|
57
|
+
const pickerToggled = this.picker
|
|
54
58
|
? merge(this.picker.openedStream, this.picker.closedStream)
|
|
55
|
-
:
|
|
59
|
+
: observableOf();
|
|
56
60
|
this._stateChanges.unsubscribe();
|
|
57
|
-
this._stateChanges = merge(
|
|
61
|
+
this._stateChanges = merge(pickerDisabled, inputDisabled, pickerToggled).subscribe(() => this._changeDetectorRef.markForCheck());
|
|
58
62
|
}
|
|
59
63
|
}
|
|
60
|
-
/** @nocollapse */ MtxColorpickerToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
61
|
-
/** @nocollapse */ MtxColorpickerToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
62
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
64
|
+
/** @nocollapse */ MtxColorpickerToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpickerToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
65
|
+
/** @nocollapse */ MtxColorpickerToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: MtxColorpickerToggle, selector: "mtx-colorpicker-toggle", inputs: { picker: ["for", "picker"], tabIndex: "tabIndex", ariaLabel: ["aria-label", "ariaLabel"], disabled: "disabled", disableRipple: "disableRipple" }, host: { listeners: { "click": "_open($event)" }, properties: { "attr.tabindex": "null", "class.mtx-colorpicker-toggle-active": "picker && picker.opened", "class.mat-accent": "picker && picker.color === \"accent\"", "class.mat-warn": "picker && picker.color === \"warn\"" }, classAttribute: "mtx-colorpicker-toggle" }, queries: [{ propertyName: "_customIcon", first: true, predicate: MtxColorpickerToggleIcon, descendants: true }], viewQueries: [{ propertyName: "_button", first: true, predicate: ["button"], descendants: true }], exportAs: ["mtxColorpickerToggle"], usesOnChanges: true, ngImport: i0, template: "<button #button\n mat-icon-button\n type=\"button\"\n [attr.aria-haspopup]=\"picker ? 'dialog' : null\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.tabindex]=\"disabled ? -1 : tabIndex\"\n [disabled]=\"disabled\"\n [disableRipple]=\"disableRipple\">\n\n <svg *ngIf=\"!_customIcon\"\n class=\"mtx-colorpicker-toggle-default-icon\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n height=\"24px\"\n fill=\"currentColor\"\n focusable=\"false\">\n <path\n d=\"M17.5,12A1.5,1.5 0 0,1 16,10.5A1.5,1.5 0 0,1 17.5,9A1.5,1.5 0 0,1 19,10.5A1.5,1.5 0 0,1 17.5,12M14.5,8A1.5,1.5 0 0,1 13,6.5A1.5,1.5 0 0,1 14.5,5A1.5,1.5 0 0,1 16,6.5A1.5,1.5 0 0,1 14.5,8M9.5,8A1.5,1.5 0 0,1 8,6.5A1.5,1.5 0 0,1 9.5,5A1.5,1.5 0 0,1 11,6.5A1.5,1.5 0 0,1 9.5,8M6.5,12A1.5,1.5 0 0,1 5,10.5A1.5,1.5 0 0,1 6.5,9A1.5,1.5 0 0,1 8,10.5A1.5,1.5 0 0,1 6.5,12M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A1.5,1.5 0 0,0 13.5,19.5C13.5,19.11 13.35,18.76 13.11,18.5C12.88,18.23 12.73,17.88 12.73,17.5A1.5,1.5 0 0,1 14.23,16H16A5,5 0 0,0 21,11C21,6.58 16.97,3 12,3Z\" />\n </svg>\n\n <ng-content select=\"[mtxColorpickerToggleIcon]\"></ng-content>\n</button>\n", styles: [".mat-form-field-appearance-legacy .mat-form-field-prefix .mtx-colorpicker-toggle-default-icon,.mat-form-field-appearance-legacy .mat-form-field-suffix .mtx-colorpicker-toggle-default-icon{width:1em}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mtx-colorpicker-toggle-default-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mtx-colorpicker-toggle-default-icon{display:block;width:1.5em;height:1.5em}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mtx-colorpicker-toggle-default-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mtx-colorpicker-toggle-default-icon{margin:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
66
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpickerToggle, decorators: [{
|
|
63
67
|
type: Component,
|
|
64
68
|
args: [{ selector: 'mtx-colorpicker-toggle', host: {
|
|
65
69
|
'class': 'mtx-colorpicker-toggle',
|
|
66
|
-
|
|
67
|
-
// consumer may have provided, while still being able to receive focus.
|
|
68
|
-
'[attr.tabindex]': 'disabled ? null : -1',
|
|
70
|
+
'[attr.tabindex]': 'null',
|
|
69
71
|
'[class.mtx-colorpicker-toggle-active]': 'picker && picker.opened',
|
|
70
72
|
'[class.mat-accent]': 'picker && picker.color === "accent"',
|
|
71
73
|
'[class.mat-warn]': 'picker && picker.color === "warn"',
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
74
|
+
// Bind the `click` on the host, rather than the inner `button`, so that we can call
|
|
75
|
+
// `stopPropagation` on it without affecting the user's `click` handlers. We need to stop
|
|
76
|
+
// it so that the input doesn't get focused automatically by the form field (See #21836).
|
|
77
|
+
'(click)': '_open($event)',
|
|
78
|
+
}, exportAs: 'mtxColorpickerToggle', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<button #button\n mat-icon-button\n type=\"button\"\n [attr.aria-haspopup]=\"picker ? 'dialog' : null\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.tabindex]=\"disabled ? -1 : tabIndex\"\n [disabled]=\"disabled\"\n [disableRipple]=\"disableRipple\">\n\n <svg *ngIf=\"!_customIcon\"\n class=\"mtx-colorpicker-toggle-default-icon\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n height=\"24px\"\n fill=\"currentColor\"\n focusable=\"false\">\n <path\n d=\"M17.5,12A1.5,1.5 0 0,1 16,10.5A1.5,1.5 0 0,1 17.5,9A1.5,1.5 0 0,1 19,10.5A1.5,1.5 0 0,1 17.5,12M14.5,8A1.5,1.5 0 0,1 13,6.5A1.5,1.5 0 0,1 14.5,5A1.5,1.5 0 0,1 16,6.5A1.5,1.5 0 0,1 14.5,8M9.5,8A1.5,1.5 0 0,1 8,6.5A1.5,1.5 0 0,1 9.5,5A1.5,1.5 0 0,1 11,6.5A1.5,1.5 0 0,1 9.5,8M6.5,12A1.5,1.5 0 0,1 5,10.5A1.5,1.5 0 0,1 6.5,9A1.5,1.5 0 0,1 8,10.5A1.5,1.5 0 0,1 6.5,12M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A1.5,1.5 0 0,0 13.5,19.5C13.5,19.11 13.35,18.76 13.11,18.5C12.88,18.23 12.73,17.88 12.73,17.5A1.5,1.5 0 0,1 14.23,16H16A5,5 0 0,0 21,11C21,6.58 16.97,3 12,3Z\" />\n </svg>\n\n <ng-content select=\"[mtxColorpickerToggleIcon]\"></ng-content>\n</button>\n", styles: [".mat-form-field-appearance-legacy .mat-form-field-prefix .mtx-colorpicker-toggle-default-icon,.mat-form-field-appearance-legacy .mat-form-field-suffix .mtx-colorpicker-toggle-default-icon{width:1em}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mtx-colorpicker-toggle-default-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mtx-colorpicker-toggle-default-icon{display:block;width:1.5em;height:1.5em}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mtx-colorpicker-toggle-default-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mtx-colorpicker-toggle-default-icon{margin:auto}\n"] }]
|
|
79
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
|
|
80
|
+
type: Attribute,
|
|
81
|
+
args: ['tabindex']
|
|
82
|
+
}] }]; }, propDecorators: { picker: [{
|
|
75
83
|
type: Input,
|
|
76
84
|
args: ['for']
|
|
77
85
|
}], tabIndex: [{
|
|
78
86
|
type: Input
|
|
87
|
+
}], ariaLabel: [{
|
|
88
|
+
type: Input,
|
|
89
|
+
args: ['aria-label']
|
|
79
90
|
}], disabled: [{
|
|
80
91
|
type: Input
|
|
81
92
|
}], disableRipple: [{
|
|
@@ -87,4 +98,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
87
98
|
type: ViewChild,
|
|
88
99
|
args: ['button']
|
|
89
100
|
}] } });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3JwaWNrZXItdG9nZ2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh0ZW5zaW9ucy9jb2xvcnBpY2tlci9jb2xvcnBpY2tlci10b2dnbGUudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9leHRlbnNpb25zL2NvbG9ycGlja2VyL2NvbG9ycGlja2VyLXRvZ2dsZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osU0FBUyxFQUNULEtBQUssRUFLTCxTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQzs7OztBQUcvQyxvRUFBb0U7QUFJcEUsTUFBTSxPQUFPLHdCQUF3Qjs7d0lBQXhCLHdCQUF3Qjs0SEFBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBSHBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtpQkFDdkM7O0FBcUJELE1BQU0sT0FBTyxvQkFBb0I7SUFnQy9CLFlBQW9CLGtCQUFxQztRQUFyQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBL0JqRCxrQkFBYSxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUM7SUErQmlCLENBQUM7SUF2QjdELDZDQUE2QztJQUM3QyxJQUNJLFFBQVE7UUFDVixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDekMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztTQUM3QjtRQUVELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLEtBQWM7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBY0QsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNsQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztTQUMzQjtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBWTtRQUNmLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNuQixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDekI7SUFDSCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUN4RSxNQUFNLGFBQWEsR0FDakIsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUMxRixNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxNQUFNO1lBQ25DLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7WUFDM0QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBRVQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxDQUFDLGNBQWMsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FDNUYsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUN2QyxDQUFDO0lBQ0osQ0FBQzs7b0lBbkVVLG9CQUFvQjt3SEFBcEIsb0JBQW9CLDBpQkEyQmpCLHdCQUF3Qiw0TUN2RXhDLDBxQ0FzQkE7MkZEc0JhLG9CQUFvQjtrQkFsQmhDLFNBQVM7K0JBQ0Usd0JBQXdCLFFBRzVCO3dCQUNKLE9BQU8sRUFBRSx3QkFBd0I7d0JBQ2pDLHdGQUF3Rjt3QkFDeEYsdUVBQXVFO3dCQUN2RSxpQkFBaUIsRUFBRSxzQkFBc0I7d0JBQ3pDLHVDQUF1QyxFQUFFLHlCQUF5Qjt3QkFDbEUsb0JBQW9CLEVBQUUscUNBQXFDO3dCQUMzRCxrQkFBa0IsRUFBRSxtQ0FBbUM7d0JBQ3ZELFNBQVMsRUFBRSxpQkFBaUI7cUJBQzdCLFlBQ1Msc0JBQXNCLGlCQUNqQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNO3dHQU1qQyxNQUFNO3NCQUFuQixLQUFLO3VCQUFDLEtBQUs7Z0JBR0gsUUFBUTtzQkFBaEIsS0FBSztnQkFJRixRQUFRO3NCQURYLEtBQUs7Z0JBY0csYUFBYTtzQkFBckIsS0FBSztnQkFHa0MsV0FBVztzQkFBbEQsWUFBWTt1QkFBQyx3QkFBd0I7Z0JBR2pCLE9BQU87c0JBQTNCLFNBQVM7dUJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIERpcmVjdGl2ZSxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgb2YsIG1lcmdlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNdHhDb2xvcnBpY2tlciB9IGZyb20gJy4vY29sb3JwaWNrZXInO1xuXG4vKiogQ2FuIGJlIHVzZWQgdG8gb3ZlcnJpZGUgdGhlIGljb24gb2YgYSBgbXR4Q29sb3JwaWNrZXJUb2dnbGVgLiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW210eENvbG9ycGlja2VyVG9nZ2xlSWNvbl0nLFxufSlcbmV4cG9ydCBjbGFzcyBNdHhDb2xvcnBpY2tlclRvZ2dsZUljb24ge31cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXR4LWNvbG9ycGlja2VyLXRvZ2dsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2xvcnBpY2tlci10b2dnbGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbG9ycGlja2VyLXRvZ2dsZS5zY3NzJ10sXG4gIGhvc3Q6IHtcbiAgICAnY2xhc3MnOiAnbXR4LWNvbG9ycGlja2VyLXRvZ2dsZScsXG4gICAgLy8gQWx3YXlzIHNldCB0aGUgdGFiaW5kZXggdG8gLTEgc28gdGhhdCBpdCBkb2Vzbid0IG92ZXJsYXAgd2l0aCBhbnkgY3VzdG9tIHRhYmluZGV4IHRoZVxuICAgIC8vIGNvbnN1bWVyIG1heSBoYXZlIHByb3ZpZGVkLCB3aGlsZSBzdGlsbCBiZWluZyBhYmxlIHRvIHJlY2VpdmUgZm9jdXMuXG4gICAgJ1thdHRyLnRhYmluZGV4XSc6ICdkaXNhYmxlZCA/IG51bGwgOiAtMScsXG4gICAgJ1tjbGFzcy5tdHgtY29sb3JwaWNrZXItdG9nZ2xlLWFjdGl2ZV0nOiAncGlja2VyICYmIHBpY2tlci5vcGVuZWQnLFxuICAgICdbY2xhc3MubWF0LWFjY2VudF0nOiAncGlja2VyICYmIHBpY2tlci5jb2xvciA9PT0gXCJhY2NlbnRcIicsXG4gICAgJ1tjbGFzcy5tYXQtd2Fybl0nOiAncGlja2VyICYmIHBpY2tlci5jb2xvciA9PT0gXCJ3YXJuXCInLFxuICAgICcoZm9jdXMpJzogJ19idXR0b24uZm9jdXMoKScsXG4gIH0sXG4gIGV4cG9ydEFzOiAnbXR4Q29sb3JwaWNrZXJUb2dnbGUnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTXR4Q29sb3JwaWNrZXJUb2dnbGUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX3N0YXRlQ2hhbmdlcyA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcblxuICAvKiogQ29sb3JwaWNrZXIgaW5zdGFuY2UgdGhhdCB0aGUgYnV0dG9uIHdpbGwgdG9nZ2xlLiAqL1xuICBASW5wdXQoJ2ZvcicpIHBpY2tlciE6IE10eENvbG9ycGlja2VyO1xuXG4gIC8qKiBUYWJpbmRleCBmb3IgdGhlIHRvZ2dsZS4gKi9cbiAgQElucHV0KCkgdGFiSW5kZXghOiBudW1iZXI7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHRvZ2dsZSBidXR0b24gaXMgZGlzYWJsZWQuICovXG4gIEBJbnB1dCgpXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5fZGlzYWJsZWQgPT0gbnVsbCAmJiB0aGlzLnBpY2tlcikge1xuICAgICAgcmV0dXJuIHRoaXMucGlja2VyLmRpc2FibGVkO1xuICAgIH1cblxuICAgIHJldHVybiAhIXRoaXMuX2Rpc2FibGVkO1xuICB9XG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuICBwcml2YXRlIF9kaXNhYmxlZCE6IGJvb2xlYW47XG5cbiAgLyoqIFdoZXRoZXIgcmlwcGxlcyBvbiB0aGUgdG9nZ2xlIHNob3VsZCBiZSBkaXNhYmxlZC4gKi9cbiAgQElucHV0KCkgZGlzYWJsZVJpcHBsZSE6IGJvb2xlYW47XG5cbiAgLyoqIEN1c3RvbSBpY29uIHNldCBieSB0aGUgY29uc3VtZXIuICovXG4gIEBDb250ZW50Q2hpbGQoTXR4Q29sb3JwaWNrZXJUb2dnbGVJY29uKSBfY3VzdG9tSWNvbiE6IE10eENvbG9ycGlja2VyVG9nZ2xlSWNvbjtcblxuICAvKiogVW5kZXJseWluZyBidXR0b24gZWxlbWVudC4gKi9cbiAgQFZpZXdDaGlsZCgnYnV0dG9uJykgX2J1dHRvbiE6IE1hdEJ1dHRvbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzLnBpY2tlcikge1xuICAgICAgdGhpcy5fd2F0Y2hTdGF0ZUNoYW5nZXMoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9zdGF0ZUNoYW5nZXMudW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLl93YXRjaFN0YXRlQ2hhbmdlcygpO1xuICB9XG5cbiAgb3BlbihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5waWNrZXIgJiYgIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMucGlja2VyLm9wZW4oKTtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3dhdGNoU3RhdGVDaGFuZ2VzKCkge1xuICAgIGNvbnN0IHBpY2tlckRpc2FibGVkID0gdGhpcy5waWNrZXIgPyB0aGlzLnBpY2tlci5fZGlzYWJsZWRDaGFuZ2UgOiBvZigpO1xuICAgIGNvbnN0IGlucHV0RGlzYWJsZWQgPVxuICAgICAgdGhpcy5waWNrZXIgJiYgdGhpcy5waWNrZXIucGlja2VySW5wdXQgPyB0aGlzLnBpY2tlci5waWNrZXJJbnB1dC5fZGlzYWJsZWRDaGFuZ2UgOiBvZigpO1xuICAgIGNvbnN0IGRhdGVwaWNrZXJUb2dnbGVkID0gdGhpcy5waWNrZXJcbiAgICAgID8gbWVyZ2UodGhpcy5waWNrZXIub3BlbmVkU3RyZWFtLCB0aGlzLnBpY2tlci5jbG9zZWRTdHJlYW0pXG4gICAgICA6IG9mKCk7XG5cbiAgICB0aGlzLl9zdGF0ZUNoYW5nZXMudW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLl9zdGF0ZUNoYW5nZXMgPSBtZXJnZShbcGlja2VyRGlzYWJsZWQsIGlucHV0RGlzYWJsZWQsIGRhdGVwaWNrZXJUb2dnbGVkXSkuc3Vic2NyaWJlKCgpID0+XG4gICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKVxuICAgICk7XG4gIH1cblxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dDtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2Rpc2FibGVSaXBwbGU6IEJvb2xlYW5JbnB1dDtcbn1cbiIsIjxidXR0b24gI2J1dHRvblxuICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFthdHRyLmFyaWEtaGFzcG9wdXBdPVwicGlja2VyID8gJ2RpYWxvZycgOiBudWxsXCJcbiAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwiZGlzYWJsZWQgPyAtMSA6IHRhYkluZGV4XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2Rpc2FibGVSaXBwbGVdPVwiZGlzYWJsZVJpcHBsZVwiXG4gICAgICAgIChjbGljayk9XCJvcGVuKCRldmVudClcIj5cblxuICA8c3ZnICpuZ0lmPVwiIV9jdXN0b21JY29uXCJcbiAgICAgICBjbGFzcz1cIm10eC1jb2xvcnBpY2tlci10b2dnbGUtZGVmYXVsdC1pY29uXCJcbiAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcbiAgICAgICB3aWR0aD1cIjI0cHhcIlxuICAgICAgIGhlaWdodD1cIjI0cHhcIlxuICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgIGZvY3VzYWJsZT1cImZhbHNlXCI+XG4gICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTE3LjUsMTJBMS41LDEuNSAwIDAsMSAxNiwxMC41QTEuNSwxLjUgMCAwLDEgMTcuNSw5QTEuNSwxLjUgMCAwLDEgMTksMTAuNUExLjUsMS41IDAgMCwxIDE3LjUsMTJNMTQuNSw4QTEuNSwxLjUgMCAwLDEgMTMsNi41QTEuNSwxLjUgMCAwLDEgMTQuNSw1QTEuNSwxLjUgMCAwLDEgMTYsNi41QTEuNSwxLjUgMCAwLDEgMTQuNSw4TTkuNSw4QTEuNSwxLjUgMCAwLDEgOCw2LjVBMS41LDEuNSAwIDAsMSA5LjUsNUExLjUsMS41IDAgMCwxIDExLDYuNUExLjUsMS41IDAgMCwxIDkuNSw4TTYuNSwxMkExLjUsMS41IDAgMCwxIDUsMTAuNUExLjUsMS41IDAgMCwxIDYuNSw5QTEuNSwxLjUgMCAwLDEgOCwxMC41QTEuNSwxLjUgMCAwLDEgNi41LDEyTTEyLDNBOSw5IDAgMCwwIDMsMTJBOSw5IDAgMCwwIDEyLDIxQTEuNSwxLjUgMCAwLDAgMTMuNSwxOS41QzEzLjUsMTkuMTEgMTMuMzUsMTguNzYgMTMuMTEsMTguNUMxMi44OCwxOC4yMyAxMi43MywxNy44OCAxMi43MywxNy41QTEuNSwxLjUgMCAwLDEgMTQuMjMsMTZIMTZBNSw1IDAgMCwwIDIxLDExQzIxLDYuNTggMTYuOTcsMyAxMiwzWlwiIC8+XG4gIDwvc3ZnPlxuXG4gIDxuZy1jb250ZW50IHNlbGVjdD1cIlttdHhDb2xvcnBpY2tlclRvZ2dsZUljb25dXCI+PC9uZy1jb250ZW50PlxuPC9idXR0b24+XG4iXX0=
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3JwaWNrZXItdG9nZ2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh0ZW5zaW9ucy9jb2xvcnBpY2tlci9jb2xvcnBpY2tlci10b2dnbGUudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9leHRlbnNpb25zL2NvbG9ycGlja2VyL2NvbG9ycGlja2VyLXRvZ2dsZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBRUwsU0FBUyxFQUNULHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFNBQVMsRUFDVCxLQUFLLEVBSUwsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsWUFBWSxFQUFFLEVBQUUsSUFBSSxZQUFZLEVBQUUsS0FBSyxFQUFjLE1BQU0sTUFBTSxDQUFDOzs7O0FBRzNFLG9FQUFvRTtBQUlwRSxNQUFNLE9BQU8sd0JBQXdCOzt3SUFBeEIsd0JBQXdCOzRIQUF4Qix3QkFBd0I7MkZBQXhCLHdCQUF3QjtrQkFIcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNEJBQTRCO2lCQUN2Qzs7QUFzQkQsTUFBTSxPQUFPLG9CQUFvQjtJQW1DL0IsWUFDVSxrQkFBcUMsRUFDdEIsZUFBdUI7UUFEdEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQW5DdkMsa0JBQWEsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDO1FBc0N6QyxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxjQUFjLElBQUksY0FBYyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDakYsQ0FBQztJQTdCRCw2Q0FBNkM7SUFDN0MsSUFDSSxR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QkFBbEQsWUFBWTt1QkFBQyx3QkFBd0I7Z0JBR2pCLE9BQU87c0JBQTNCLFNBQVM7dUJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEF0dHJpYnV0ZSxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRGlyZWN0aXZlLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgb2YgYXMgb2JzZXJ2YWJsZU9mLCBtZXJnZSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTXR4Q29sb3JwaWNrZXIgfSBmcm9tICcuL2NvbG9ycGlja2VyJztcblxuLyoqIENhbiBiZSB1c2VkIHRvIG92ZXJyaWRlIHRoZSBpY29uIG9mIGEgYG10eENvbG9ycGlja2VyVG9nZ2xlYC4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttdHhDb2xvcnBpY2tlclRvZ2dsZUljb25dJyxcbn0pXG5leHBvcnQgY2xhc3MgTXR4Q29sb3JwaWNrZXJUb2dnbGVJY29uIHt9XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ210eC1jb2xvcnBpY2tlci10b2dnbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29sb3JwaWNrZXItdG9nZ2xlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb2xvcnBpY2tlci10b2dnbGUuc2NzcyddLFxuICBob3N0OiB7XG4gICAgJ2NsYXNzJzogJ210eC1jb2xvcnBpY2tlci10b2dnbGUnLFxuICAgICdbYXR0ci50YWJpbmRleF0nOiAnbnVsbCcsXG4gICAgJ1tjbGFzcy5tdHgtY29sb3JwaWNrZXItdG9nZ2xlLWFjdGl2ZV0nOiAncGlja2VyICYmIHBpY2tlci5vcGVuZWQnLFxuICAgICdbY2xhc3MubWF0LWFjY2VudF0nOiAncGlja2VyICYmIHBpY2tlci5jb2xvciA9PT0gXCJhY2NlbnRcIicsXG4gICAgJ1tjbGFzcy5tYXQtd2Fybl0nOiAncGlja2VyICYmIHBpY2tlci5jb2xvciA9PT0gXCJ3YXJuXCInLFxuICAgIC8vIEJpbmQgdGhlIGBjbGlja2Agb24gdGhlIGhvc3QsIHJhdGhlciB0aGFuIHRoZSBpbm5lciBgYnV0dG9uYCwgc28gdGhhdCB3ZSBjYW4gY2FsbFxuICAgIC8vIGBzdG9wUHJvcGFnYXRpb25gIG9uIGl0IHdpdGhvdXQgYWZmZWN0aW5nIHRoZSB1c2VyJ3MgYGNsaWNrYCBoYW5kbGVycy4gV2UgbmVlZCB0byBzdG9wXG4gICAgLy8gaXQgc28gdGhhdCB0aGUgaW5wdXQgZG9lc24ndCBnZXQgZm9jdXNlZCBhdXRvbWF0aWNhbGx5IGJ5IHRoZSBmb3JtIGZpZWxkIChTZWUgIzIxODM2KS5cbiAgICAnKGNsaWNrKSc6ICdfb3BlbigkZXZlbnQpJyxcbiAgfSxcbiAgZXhwb3J0QXM6ICdtdHhDb2xvcnBpY2tlclRvZ2dsZScsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBNdHhDb2xvcnBpY2tlclRvZ2dsZSBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfc3RhdGVDaGFuZ2VzID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuXG4gIC8qKiBDb2xvcnBpY2tlciBpbnN0YW5jZSB0aGF0IHRoZSBidXR0b24gd2lsbCB0b2dnbGUuICovXG4gIEBJbnB1dCgnZm9yJykgcGlja2VyITogTXR4Q29sb3JwaWNrZXI7XG5cbiAgLyoqIFRhYmluZGV4IGZvciB0aGUgdG9nZ2xlLiAqL1xuICBASW5wdXQoKSB0YWJJbmRleDogbnVtYmVyIHwgbnVsbDtcblxuICAvKiogU2NyZWVuLXJlYWRlciBsYWJlbCBmb3IgdGhlIGJ1dHRvbi4gKi9cbiAgQElucHV0KCdhcmlhLWxhYmVsJykgYXJpYUxhYmVsITogc3RyaW5nO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSB0b2dnbGUgYnV0dG9uIGlzIGRpc2FibGVkLiAqL1xuICBASW5wdXQoKVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuX2Rpc2FibGVkID09IG51bGwgJiYgdGhpcy5waWNrZXIpIHtcbiAgICAgIHJldHVybiB0aGlzLnBpY2tlci5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICByZXR1cm4gISF0aGlzLl9kaXNhYmxlZDtcbiAgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cbiAgcHJpdmF0ZSBfZGlzYWJsZWQhOiBib29sZWFuO1xuXG4gIC8qKiBXaGV0aGVyIHJpcHBsZXMgb24gdGhlIHRvZ2dsZSBzaG91bGQgYmUgZGlzYWJsZWQuICovXG4gIEBJbnB1dCgpIGRpc2FibGVSaXBwbGUhOiBib29sZWFuO1xuXG4gIC8qKiBDdXN0b20gaWNvbiBzZXQgYnkgdGhlIGNvbnN1bWVyLiAqL1xuICBAQ29udGVudENoaWxkKE10eENvbG9ycGlja2VyVG9nZ2xlSWNvbikgX2N1c3RvbUljb24hOiBNdHhDb2xvcnBpY2tlclRvZ2dsZUljb247XG5cbiAgLyoqIFVuZGVybHlpbmcgYnV0dG9uIGVsZW1lbnQuICovXG4gIEBWaWV3Q2hpbGQoJ2J1dHRvbicpIF9idXR0b24hOiBNYXRCdXR0b247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIEBBdHRyaWJ1dGUoJ3RhYmluZGV4JykgZGVmYXVsdFRhYkluZGV4OiBzdHJpbmdcbiAgKSB7XG4gICAgY29uc3QgcGFyc2VkVGFiSW5kZXggPSBOdW1iZXIoZGVmYXVsdFRhYkluZGV4KTtcbiAgICB0aGlzLnRhYkluZGV4ID0gcGFyc2VkVGFiSW5kZXggfHwgcGFyc2VkVGFiSW5kZXggPT09IDAgPyBwYXJzZWRUYWJJbmRleCA6IG51bGw7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMucGlja2VyKSB7XG4gICAgICB0aGlzLl93YXRjaFN0YXRlQ2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX3N0YXRlQ2hhbmdlcy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIHRoaXMuX3dhdGNoU3RhdGVDaGFuZ2VzKCk7XG4gIH1cblxuICBfb3BlbihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5waWNrZXIgJiYgIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMucGlja2VyLm9wZW4oKTtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3dhdGNoU3RhdGVDaGFuZ2VzKCkge1xuICAgIGNvbnN0IHBpY2tlckRpc2FibGVkID0gdGhpcy5waWNrZXIgPyB0aGlzLnBpY2tlci5fZGlzYWJsZWRDaGFuZ2UgOiBvYnNlcnZhYmxlT2YoKTtcbiAgICBjb25zdCBpbnB1dERpc2FibGVkID1cbiAgICAgIHRoaXMucGlja2VyICYmIHRoaXMucGlja2VyLnBpY2tlcklucHV0XG4gICAgICAgID8gdGhpcy5waWNrZXIucGlja2VySW5wdXQuX2Rpc2FibGVkQ2hhbmdlXG4gICAgICAgIDogb2JzZXJ2YWJsZU9mKCk7XG4gICAgY29uc3QgcGlja2VyVG9nZ2xlZCA9IHRoaXMucGlja2VyXG4gICAgICA/IG1lcmdlKHRoaXMucGlja2VyLm9wZW5lZFN0cmVhbSwgdGhpcy5waWNrZXIuY2xvc2VkU3RyZWFtKVxuICAgICAgOiBvYnNlcnZhYmxlT2YoKTtcblxuICAgIHRoaXMuX3N0YXRlQ2hhbmdlcy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuX3N0YXRlQ2hhbmdlcyA9IG1lcmdlKFxuICAgICAgcGlja2VyRGlzYWJsZWQgYXMgT2JzZXJ2YWJsZTx2b2lkPixcbiAgICAgIGlucHV0RGlzYWJsZWQgYXMgT2JzZXJ2YWJsZTx2b2lkPixcbiAgICAgIHBpY2tlclRvZ2dsZWRcbiAgICApLnN1YnNjcmliZSgoKSA9PiB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKSk7XG4gIH1cblxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dDtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2Rpc2FibGVSaXBwbGU6IEJvb2xlYW5JbnB1dDtcbn1cbiIsIjxidXR0b24gI2J1dHRvblxuICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFthdHRyLmFyaWEtaGFzcG9wdXBdPVwicGlja2VyID8gJ2RpYWxvZycgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWxcIlxuICAgICAgICBbYXR0ci50YWJpbmRleF09XCJkaXNhYmxlZCA/IC0xIDogdGFiSW5kZXhcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbZGlzYWJsZVJpcHBsZV09XCJkaXNhYmxlUmlwcGxlXCI+XG5cbiAgPHN2ZyAqbmdJZj1cIiFfY3VzdG9tSWNvblwiXG4gICAgICAgY2xhc3M9XCJtdHgtY29sb3JwaWNrZXItdG9nZ2xlLWRlZmF1bHQtaWNvblwiXG4gICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICAgd2lkdGg9XCIyNHB4XCJcbiAgICAgICBoZWlnaHQ9XCIyNHB4XCJcbiAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICBmb2N1c2FibGU9XCJmYWxzZVwiPlxuICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0xNy41LDEyQTEuNSwxLjUgMCAwLDEgMTYsMTAuNUExLjUsMS41IDAgMCwxIDE3LjUsOUExLjUsMS41IDAgMCwxIDE5LDEwLjVBMS41LDEuNSAwIDAsMSAxNy41LDEyTTE0LjUsOEExLjUsMS41IDAgMCwxIDEzLDYuNUExLjUsMS41IDAgMCwxIDE0LjUsNUExLjUsMS41IDAgMCwxIDE2LDYuNUExLjUsMS41IDAgMCwxIDE0LjUsOE05LjUsOEExLjUsMS41IDAgMCwxIDgsNi41QTEuNSwxLjUgMCAwLDEgOS41LDVBMS41LDEuNSAwIDAsMSAxMSw2LjVBMS41LDEuNSAwIDAsMSA5LjUsOE02LjUsMTJBMS41LDEuNSAwIDAsMSA1LDEwLjVBMS41LDEuNSAwIDAsMSA2LjUsOUExLjUsMS41IDAgMCwxIDgsMTAuNUExLjUsMS41IDAgMCwxIDYuNSwxMk0xMiwzQTksOSAwIDAsMCAzLDEyQTksOSAwIDAsMCAxMiwyMUExLjUsMS41IDAgMCwwIDEzLjUsMTkuNUMxMy41LDE5LjExIDEzLjM1LDE4Ljc2IDEzLjExLDE4LjVDMTIuODgsMTguMjMgMTIuNzMsMTcuODggMTIuNzMsMTcuNUExLjUsMS41IDAgMCwxIDE0LjIzLDE2SDE2QTUsNSAwIDAsMCAyMSwxMUMyMSw2LjU4IDE2Ljk3LDMgMTIsM1pcIiAvPlxuICA8L3N2Zz5cblxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbbXR4Q29sb3JwaWNrZXJUb2dnbGVJY29uXVwiPjwvbmctY29udGVudD5cbjwvYnV0dG9uPlxuIl19
|
|
@@ -58,9 +58,9 @@ export class MtxColorpickerContent extends _MtxColorpickerContentBase {
|
|
|
58
58
|
}[this.picker.format];
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
|
-
/** @nocollapse */ MtxColorpickerContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
62
|
-
/** @nocollapse */ MtxColorpickerContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
61
|
+
/** @nocollapse */ MtxColorpickerContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpickerContent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
62
|
+
/** @nocollapse */ MtxColorpickerContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: MtxColorpickerContent, selector: "mtx-colorpicker-content", inputs: { color: "color" }, host: { listeners: { "@transformPanel.done": "_animationDone.next()" }, properties: { "@transformPanel": "_animationState" }, classAttribute: "mtx-colorpicker-content" }, exportAs: ["mtxColorpickerContent"], usesInheritance: true, ngImport: i0, template: "<ng-template [ngIf]=\"picker.content\" [ngIfElse]=\"default\"\n [ngTemplateOutlet]=\"picker.content\">\n</ng-template>\n<ng-template #default>\n <color-chrome [color]=\"picker.selected\"\n (onChangeComplete)=\"picker.select(getColorString($event))\">\n </color-chrome>\n</ng-template>\n", styles: [".mtx-colorpicker-content{display:block;border-radius:4px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ChromeComponent, selector: "color-chrome", inputs: ["disableAlpha"] }], animations: [mtxColorpickerAnimations.transformPanel], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpickerContent, decorators: [{
|
|
64
64
|
type: Component,
|
|
65
65
|
args: [{ selector: 'mtx-colorpicker-content', host: {
|
|
66
66
|
'class': 'mtx-colorpicker-content',
|
|
@@ -318,9 +318,9 @@ export class MtxColorpicker {
|
|
|
318
318
|
})));
|
|
319
319
|
}
|
|
320
320
|
}
|
|
321
|
-
/** @nocollapse */ MtxColorpicker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
322
|
-
/** @nocollapse */ MtxColorpicker.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
323
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
321
|
+
/** @nocollapse */ MtxColorpicker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpicker, deps: [{ token: i3.Overlay }, { token: i0.NgZone }, { token: i0.ViewContainerRef }, { token: MTX_COLORPICKER_SCROLL_STRATEGY }, { token: i4.Directionality, optional: true }, { token: DOCUMENT, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
322
|
+
/** @nocollapse */ MtxColorpicker.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: MtxColorpicker, selector: "mtx-colorpicker", inputs: { content: "content", disabled: "disabled", xPosition: "xPosition", yPosition: "yPosition", restoreFocus: "restoreFocus", opened: "opened", color: "color", format: "format" }, outputs: { openedStream: "opened", closedStream: "closed" }, exportAs: ["mtxColorpicker"], usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
323
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxColorpicker, decorators: [{
|
|
324
324
|
type: Component,
|
|
325
325
|
args: [{
|
|
326
326
|
selector: 'mtx-colorpicker',
|
|
@@ -27,12 +27,12 @@ export class CdkColumnResizeFlex extends ColumnResize {
|
|
|
27
27
|
this.table = table;
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
|
-
/** @nocollapse */ CdkColumnResizeFlex.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
31
|
-
/** @nocollapse */ CdkColumnResizeFlex.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
30
|
+
/** @nocollapse */ CdkColumnResizeFlex.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: CdkColumnResizeFlex, deps: [{ token: i1.ColumnResizeNotifier }, { token: i0.ElementRef }, { token: i2.HeaderRowEventDispatcher }, { token: i0.NgZone }, { token: i1.ColumnResizeNotifierSource }, { token: i3.CdkTable }], target: i0.ɵɵFactoryTarget.Directive });
|
|
31
|
+
/** @nocollapse */ CdkColumnResizeFlex.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.2", type: CdkColumnResizeFlex, selector: "cdk-table[columnResize]", providers: [
|
|
32
32
|
...FLEX_PROVIDERS,
|
|
33
33
|
{ provide: ColumnResize, useExisting: CdkColumnResizeFlex },
|
|
34
34
|
], usesInheritance: true, ngImport: i0 });
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: CdkColumnResizeFlex, decorators: [{
|
|
36
36
|
type: Directive,
|
|
37
37
|
args: [{
|
|
38
38
|
selector: 'cdk-table[columnResize]',
|
|
@@ -27,12 +27,12 @@ export class CdkColumnResize extends ColumnResize {
|
|
|
27
27
|
this.table = table;
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
|
-
/** @nocollapse */ CdkColumnResize.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
31
|
-
/** @nocollapse */ CdkColumnResize.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
30
|
+
/** @nocollapse */ CdkColumnResize.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: CdkColumnResize, deps: [{ token: i1.ColumnResizeNotifier }, { token: i0.ElementRef }, { token: i2.HeaderRowEventDispatcher }, { token: i0.NgZone }, { token: i1.ColumnResizeNotifierSource }, { token: i3.CdkTable }], target: i0.ɵɵFactoryTarget.Directive });
|
|
31
|
+
/** @nocollapse */ CdkColumnResize.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.2", type: CdkColumnResize, selector: "table[cdk-table][columnResize]", providers: [
|
|
32
32
|
...TABLE_PROVIDERS,
|
|
33
33
|
{ provide: ColumnResize, useExisting: CdkColumnResize },
|
|
34
34
|
], usesInheritance: true, ngImport: i0 });
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: CdkColumnResize, decorators: [{
|
|
36
36
|
type: Directive,
|
|
37
37
|
args: [{
|
|
38
38
|
selector: 'table[cdk-table][columnResize]',
|