@porscheinformatik/material-addons 14.1.6 → 15.0.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/button/button.module.mjs +4 -4
- package/esm2020/lib/button/danger-button/danger-button.component.mjs +3 -3
- package/esm2020/lib/button/flat-button/link-button.component.mjs +3 -3
- package/esm2020/lib/button/icon-button/icon-button.component.mjs +3 -3
- package/esm2020/lib/button/mad-basic-button.mjs +3 -3
- package/esm2020/lib/button/outline-button/outline-button.component.mjs +3 -3
- package/esm2020/lib/button/primary-button/primary-button.component.mjs +4 -4
- package/esm2020/lib/card/card.component.mjs +5 -5
- package/esm2020/lib/card/card.module.mjs +4 -4
- package/esm2020/lib/content-panel/content-header/content-header.component.mjs +3 -3
- package/esm2020/lib/content-panel/content-panel-container/content-panel-container.component.mjs +3 -3
- package/esm2020/lib/content-panel/content-panel-container-content/content-panel-container-content.component.mjs +3 -3
- package/esm2020/lib/content-panel/content-panel-container-footer/content-panel-container-footer.component.mjs +3 -3
- package/esm2020/lib/content-panel/content-panel.module.mjs +4 -4
- package/esm2020/lib/content-panel/main-container/main-container.component.mjs +3 -3
- package/esm2020/lib/data-table/data-table-columns-modal/data-table-columns-modal.component.mjs +3 -3
- package/esm2020/lib/data-table/data-table.component.mjs +52 -52
- package/esm2020/lib/data-table/data-table.module.mjs +4 -4
- package/esm2020/lib/flowbar/flowbar.component.mjs +3 -3
- package/esm2020/lib/flowbar/flowbar.module.mjs +4 -4
- package/esm2020/lib/material-action-button/material-action-button.component.mjs +3 -3
- package/esm2020/lib/material-action-button/material-action-button.module.mjs +4 -4
- package/esm2020/lib/material-addons.module.mjs +4 -4
- package/esm2020/lib/numeric-field/number-format.service.mjs +4 -4
- package/esm2020/lib/numeric-field/numeric-field.directive.mjs +13 -13
- package/esm2020/lib/numeric-field/numeric-field.module.mjs +4 -4
- package/esm2020/lib/quick-list/base-quick-list.component.mjs +3 -3
- package/esm2020/lib/quick-list/quick-list-compact/quick-list-compact.component.mjs +3 -3
- package/esm2020/lib/quick-list/quick-list.component.mjs +3 -3
- package/esm2020/lib/quick-list/quick-list.module.mjs +4 -4
- package/esm2020/lib/readonly/readonly-form-field/readonly-form-field.component.mjs +5 -5
- package/esm2020/lib/readonly/readonly-form-field-wrapper/readonly-form-field-wrapper.component.mjs +3 -3
- package/esm2020/lib/readonly/readonly-form-field.module.mjs +4 -4
- package/esm2020/lib/stepper/step-header/step-header.component.mjs +3 -3
- package/esm2020/lib/stepper/stepper.component.mjs +6 -6
- package/esm2020/lib/stepper/stepper.module.mjs +4 -4
- package/esm2020/lib/table/table.component.mjs +5 -5
- package/esm2020/lib/table/table.module.mjs +4 -4
- package/esm2020/lib/throttle-click/throttle-click.directive.mjs +3 -3
- package/esm2020/lib/throttle-click/throttle-click.module.mjs +4 -4
- package/esm2020/lib/toolbar/toolbar.component.mjs +3 -3
- package/esm2020/lib/toolbar/toolbar.module.mjs +4 -4
- package/esm2020/lib/toolbar/toolbar.service.mjs +3 -3
- package/fesm2015/porscheinformatik-material-addons.mjs +207 -207
- package/fesm2015/porscheinformatik-material-addons.mjs.map +1 -1
- package/fesm2020/porscheinformatik-material-addons.mjs +207 -207
- package/fesm2020/porscheinformatik-material-addons.mjs.map +1 -1
- package/lib/button/danger-button/danger-button.component.d.ts +1 -1
- package/lib/button/flat-button/link-button.component.d.ts +1 -1
- package/lib/button/icon-button/icon-button.component.d.ts +1 -1
- package/lib/button/mad-basic-button.d.ts +1 -1
- package/lib/button/outline-button/outline-button.component.d.ts +1 -1
- package/lib/button/primary-button/primary-button.component.d.ts +1 -1
- package/lib/card/card.component.d.ts +1 -1
- package/lib/content-panel/content-header/content-header.component.d.ts +1 -1
- package/lib/content-panel/content-panel-container/content-panel-container.component.d.ts +1 -1
- package/lib/content-panel/content-panel-container-content/content-panel-container-content.component.d.ts +1 -1
- package/lib/content-panel/content-panel-container-footer/content-panel-container-footer.component.d.ts +1 -1
- package/lib/content-panel/main-container/main-container.component.d.ts +1 -1
- package/lib/data-table/data-table-columns-modal/data-table-columns-modal.component.d.ts +1 -1
- package/lib/data-table/data-table.component.d.ts +1 -1
- package/lib/flowbar/flowbar.component.d.ts +1 -1
- package/lib/material-action-button/material-action-button.component.d.ts +1 -1
- package/lib/numeric-field/numeric-field.directive.d.ts +1 -1
- package/lib/quick-list/base-quick-list.component.d.ts +1 -1
- package/lib/quick-list/quick-list-compact/quick-list-compact.component.d.ts +1 -1
- package/lib/quick-list/quick-list.component.d.ts +1 -1
- package/lib/readonly/readonly-form-field/readonly-form-field.component.d.ts +1 -1
- package/lib/readonly/readonly-form-field-wrapper/readonly-form-field-wrapper.component.d.ts +1 -1
- package/lib/stepper/step-header/step-header.component.d.ts +1 -1
- package/lib/stepper/stepper.component.d.ts +2 -2
- package/lib/table/table.component.d.ts +1 -1
- package/lib/throttle-click/throttle-click.directive.d.ts +1 -1
- package/lib/toolbar/toolbar.component.d.ts +1 -1
- package/package.json +1 -1
- package/themes/common/styles.scss +24 -47
|
@@ -10,10 +10,10 @@ import { MatTooltipModule } from '@angular/material/tooltip';
|
|
|
10
10
|
import * as i0 from "@angular/core";
|
|
11
11
|
export class ReadOnlyFormFieldModule {
|
|
12
12
|
}
|
|
13
|
-
ReadOnlyFormFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
14
|
-
ReadOnlyFormFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
15
|
-
ReadOnlyFormFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
13
|
+
ReadOnlyFormFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ReadOnlyFormFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
+
ReadOnlyFormFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: ReadOnlyFormFieldModule, declarations: [ReadOnlyFormFieldComponent, ReadOnlyFormFieldWrapperComponent], imports: [CommonModule, RouterModule, MatFormFieldModule, MatInputModule, FormsModule, MatTooltipModule], exports: [ReadOnlyFormFieldComponent, ReadOnlyFormFieldWrapperComponent] });
|
|
15
|
+
ReadOnlyFormFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ReadOnlyFormFieldModule, imports: [CommonModule, RouterModule, MatFormFieldModule, MatInputModule, FormsModule, MatTooltipModule] });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ReadOnlyFormFieldModule, decorators: [{
|
|
17
17
|
type: NgModule,
|
|
18
18
|
args: [{
|
|
19
19
|
declarations: [ReadOnlyFormFieldComponent, ReadOnlyFormFieldWrapperComponent],
|
|
@@ -46,9 +46,9 @@ export class StepHeaderComponent extends CdkStepHeader {
|
|
|
46
46
|
return '';
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
|
-
StepHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
50
|
-
StepHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
51
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
49
|
+
StepHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: StepHeaderComponent, deps: [{ token: i1.FocusMonitor }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
50
|
+
StepHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: StepHeaderComponent, selector: "mad-step-header", inputs: { color: "color", index: "index", label: "label", state: "state", errorMessage: "errorMessage", selected: "selected", active: "active", optional: "optional", hasError: "hasError", completed: "completed", closed: "closed" }, host: { attributes: { "role": "tab" }, classAttribute: "mad-step-header" }, usesInheritance: true, ngImport: i0, template: "<div\n class=\"header\"\n fxLayout=\"row\"\n fxLayoutGap=\"1em\"\n [style.background]=\"this.selected && !this.closed ? '#d8e2e9' : '#ffffff'\"\n [ngClass]=\"this.hasError ? 'error-border' : 'check-border'\"\n>\n <div [ngClass]=\"this.getCssForState()\"></div>\n <div class=\"header-label\">\n <mat-icon class=\"material-icons-outlined\">\n {{ this.selected && !this.closed ? 'keyboard_arrow_down' : 'keyboard_arrow_right' }}\n </mat-icon>\n </div>\n <div *ngIf=\"this.completed || this.hasError\" class=\"header-label\">\n <mat-icon [ngClass]=\"this.completed ? 'green-check' : 'red-error'\">\n {{ getIcon() }}\n </mat-icon>\n </div>\n <span *ngIf=\"!this.hasError && !this.completed\" class=\"header-label\">{{ this.index + 1 + '.' }}</span>\n <div class=\"header-label\">{{ this.label }}</div>\n</div>\n", styles: [".header{overflow:hidden;outline:var(--warn-color);cursor:pointer;box-sizing:content-box;-webkit-tap-highlight-color:transparent;border:1px solid lightgrey;width:100%;height:62px}.header-label{align-items:center;display:flex}.step-state-complete{width:5px;background:green}.step-state-error{width:5px;background:var(--warn-color)}.step-state-neutral{width:5px;background:lightgrey}.green-check{color:green}.red-error{color:var(--warn-color)}.check-border{border-color:#d3d3d3}.error-border{border-color:var(--warn-color)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: StepHeaderComponent, decorators: [{
|
|
52
52
|
type: Component,
|
|
53
53
|
args: [{ selector: 'mad-step-header', inputs: ['color'], host: {
|
|
54
54
|
class: 'mad-step-header',
|
|
@@ -77,9 +77,9 @@ export class StepComponent extends CdkStep {
|
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
|
-
StepComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
81
|
-
StepComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
82
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
80
|
+
StepComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: StepComponent, deps: [{ token: forwardRef(() => StepperComponent) }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
81
|
+
StepComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: StepComponent, selector: "mad-step", outputs: { onNext: "onNext", onDone: "onDone", onHeaderClick: "onHeaderClick" }, providers: [{ provide: CdkStep, useExisting: StepComponent }], usesInheritance: true, ngImport: i0, template: "<ng-template let-last=\"last\" let-nextBtnLbl=\"nextBtnLbl\" let-doneBtnLbl=\"doneBtnLbl\">\n <div class=\"step-container\" fxLayout=\"column\">\n <div class=\"step-content\">\n <ng-content></ng-content>\n </div>\n <div class=\"step-buttons\">\n <div *ngIf=\"!last\">\n <mad-primary-button (click)=\"next()\">{{nextBtnLbl}}</mad-primary-button>\n </div>\n <div *ngIf=\"last\">\n <mad-primary-button (click)=\"completeLast()\">{{doneBtnLbl}}</mad-primary-button>\n </div>\n </div>\n </div>\n</ng-template>\n", styles: [".stepper-vertical{display:block}.mat-vertical-stepper-header{display:flex;align-items:center;border:none!important;height:10px}.mat-vertical-stepper-header .mat-step-icon{margin-right:12px}.vertical-content-container{border:none}[dir=rtl] .vertical-content-container{margin-left:0;margin-right:36px}.vertical-stepper-content{overflow:hidden;outline:0}.vertical-content{padding:0 24px}.step-container{border-left:1px solid lightgrey;border-right:1px solid lightgrey;border-bottom:1px solid lightgrey}.step-content,.step-buttons{padding:2em}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "component", type: i3.PrimaryButtonComponent, selector: "mad-primary-button", inputs: ["type", "disabled", "title"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
82
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: StepComponent, decorators: [{
|
|
83
83
|
type: Component,
|
|
84
84
|
args: [{ selector: 'mad-step', providers: [{ provide: CdkStep, useExisting: StepComponent }], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template let-last=\"last\" let-nextBtnLbl=\"nextBtnLbl\" let-doneBtnLbl=\"doneBtnLbl\">\n <div class=\"step-container\" fxLayout=\"column\">\n <div class=\"step-content\">\n <ng-content></ng-content>\n </div>\n <div class=\"step-buttons\">\n <div *ngIf=\"!last\">\n <mad-primary-button (click)=\"next()\">{{nextBtnLbl}}</mad-primary-button>\n </div>\n <div *ngIf=\"last\">\n <mad-primary-button (click)=\"completeLast()\">{{doneBtnLbl}}</mad-primary-button>\n </div>\n </div>\n </div>\n</ng-template>\n", styles: [".stepper-vertical{display:block}.mat-vertical-stepper-header{display:flex;align-items:center;border:none!important;height:10px}.mat-vertical-stepper-header .mat-step-icon{margin-right:12px}.vertical-content-container{border:none}[dir=rtl] .vertical-content-container{margin-left:0;margin-right:36px}.vertical-stepper-content{overflow:hidden;outline:0}.vertical-content{padding:0 24px}.step-container{border-left:1px solid lightgrey;border-right:1px solid lightgrey;border-bottom:1px solid lightgrey}.step-content,.step-buttons{padding:2em}\n"] }]
|
|
85
85
|
}], ctorParameters: function () { return [{ type: StepperComponent, decorators: [{
|
|
@@ -133,9 +133,9 @@ export class StepperComponent extends CdkStepper {
|
|
|
133
133
|
return step.completed || this.selectedIndex === index || !this.linear;
|
|
134
134
|
}
|
|
135
135
|
}
|
|
136
|
-
StepperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
137
|
-
StepperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
138
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
136
|
+
StepperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: StepperComponent, deps: [{ token: i4.Directionality, optional: true }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
137
|
+
StepperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: StepperComponent, selector: "mad-stepper", inputs: { nextButtonLabel: "nextButtonLabel", doneButtonLabel: "doneButtonLabel" }, outputs: { animationDone: "animationDone" }, host: { attributes: { "role": "tablist" }, properties: { "class.stepper-vertical": "true", "attr.aria-orientation": "\"vertical\"" } }, providers: [{ provide: CdkStepper, useExisting: StepperComponent }], queries: [{ propertyName: "_steps", predicate: StepComponent, descendants: true }], viewQueries: [{ propertyName: "_stepHeader", predicate: StepHeaderComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<!-- Vertical stepper -->\n<ng-container>\n <div *ngFor=\"let step of steps; let i = index; let isLast = last; let isFirst = first\">\n <ng-container\n [ngTemplateOutlet]=\"stepTemplate\"\n [ngTemplateOutletContext]=\"{step: step, i: i}\"></ng-container>\n <div class=\"vertical-content-container\" [class.mat-stepper-vertical-line]=\"!isLast\">\n <div class=\"vertical-stepper-content\" role=\"tabpanel\"\n [@stepTransition]=\"_getAnimationDirection(i)\"\n (@stepTransition.done)=\"_animationDone.next($event)\"\n [id]=\"_getStepContentId(i)\"\n [attr.aria-labelledby]=\"_getStepLabelId(i)\"\n [attr.aria-expanded]=\"selectedIndex === i\">\n <div class=\"vertical-content\">\n <ng-container [ngTemplateOutlet]=\"step.content\"\n [ngTemplateOutletContext]=\"{step: step, i: i, last: isLast, first: isFirst, nextBtnLbl: this.nextButtonLabel, doneBtnLbl: this.doneButtonLabel}\"></ng-container>\n </div>\n </div>\n </div>\n </div>\n</ng-container>\n\n<ng-template let-step=\"step\" let-i=\"i\" #stepTemplate>\n <mad-step-header\n class=\"mat-vertical-stepper-header\"\n (click)=\"step.selectAndMarkAsTouched(i)\"\n (keydown)=\"_onKeydown($event)\"\n [tabIndex]=\"_getFocusIndex() === i ? 0 : -1\"\n [id]=\"_getStepLabelId(i)\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-setsize]=\"steps.length\"\n [attr.aria-controls]=\"_getStepContentId(i)\"\n [attr.aria-selected]=\"selectedIndex == i\"\n [attr.aria-label]=\"step.ariaLabel || null\"\n [attr.aria-labelledby]=\"(!step.ariaLabel && step.ariaLabelledby) ? step.ariaLabelledby : null\"\n [attr.aria-disabled]=\"_stepIsNavigable(i, step) ? null : true\"\n [index]=\"i\"\n [completed]=\"step.completed\"\n [hasError]=\"step.hasError\"\n [state]=\"_getIndicatorType(i, step.state)\"\n [label]=\"step.stepLabel || step.label\"\n [selected]=\"selectedIndex === i\"\n [active]=\"_stepIsNavigable(i, step)\"\n [optional]=\"step.optional\"\n [closed]=\"step.stepClosed\"\n [errorMessage]=\"step.errorMessage\"></mad-step-header>\n</ng-template>\n", styles: [".stepper-vertical{display:block}.mat-vertical-stepper-header{display:flex;align-items:center;border:none!important;height:10px}.mat-vertical-stepper-header .mat-step-icon{margin-right:12px}.vertical-content-container{border:none}[dir=rtl] .vertical-content-container{margin-left:0;margin-right:36px}.vertical-stepper-content{overflow:hidden;outline:0}.vertical-content{padding:0 24px}.step-container{border-left:1px solid lightgrey;border-right:1px solid lightgrey;border-bottom:1px solid lightgrey}.step-content,.step-buttons{padding:2em}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i5.StepHeaderComponent, selector: "mad-step-header", inputs: ["color", "index", "label", "state", "errorMessage", "selected", "active", "optional", "hasError", "completed", "closed"] }], animations: [madStepperAnimations.verticalStepTransition], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
138
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: StepperComponent, decorators: [{
|
|
139
139
|
type: Component,
|
|
140
140
|
args: [{ selector: 'mad-stepper', host: {
|
|
141
141
|
'[class.stepper-vertical]': 'true',
|
|
@@ -10,10 +10,10 @@ import { ButtonModule } from "../button/button.module";
|
|
|
10
10
|
import * as i0 from "@angular/core";
|
|
11
11
|
export class StepperModule {
|
|
12
12
|
}
|
|
13
|
-
StepperModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
14
|
-
StepperModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
15
|
-
StepperModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
13
|
+
StepperModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: StepperModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
+
StepperModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: StepperModule, declarations: [StepperComponent, StepHeaderComponent, StepComponent], imports: [CommonModule, MatButtonModule, MatIconModule, CdkStepperModule, FlexModule, ButtonModule], exports: [StepperComponent, StepHeaderComponent, StepComponent] });
|
|
15
|
+
StepperModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: StepperModule, imports: [CommonModule, MatButtonModule, MatIconModule, CdkStepperModule, FlexModule, ButtonModule] });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: StepperModule, decorators: [{
|
|
17
17
|
type: NgModule,
|
|
18
18
|
args: [{
|
|
19
19
|
declarations: [StepperComponent, StepHeaderComponent, StepComponent],
|
|
@@ -42,7 +42,7 @@ export class TableComponent {
|
|
|
42
42
|
// eslint-disable-next-line
|
|
43
43
|
const pageSize = this.isPaginationEnabled ? this.defaultPageSize : Number.MAX_VALUE;
|
|
44
44
|
if (this.dataSource.paginator) {
|
|
45
|
-
this.dataSource.paginator.
|
|
45
|
+
this.dataSource.paginator.pageSize = pageSize;
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
48
|
set filterEnabled(isFilterEnabled) {
|
|
@@ -87,9 +87,9 @@ export class TableComponent {
|
|
|
87
87
|
return event?.target?.classList.contains('mat-icon');
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
|
-
TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
91
|
-
TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
92
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
90
|
+
TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
91
|
+
TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: TableComponent, selector: "mad-table", inputs: { columns: "columns", filterLabel: "filterLabel", filterPlaceholder: "filterPlaceholder", noDataText: "noDataText", pageSizeOptions: "pageSizeOptions", defaultPageSize: "defaultPageSize", rowActions: "rowActions", tableActions: "tableActions", displayedData: "displayedData", paginationEnabled: "paginationEnabled", filterEnabled: "filterEnabled" }, outputs: { tableAction: "tableAction", rowAction: "rowAction", sortEvent: "sortEvent" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true, static: true }], ngImport: i0, template: "<!-- Table actions -->\n<div *ngIf=\"tableActions?.length\">\n <mad-primary-button class=\"table-action\" *ngFor=\"let tableAction of tableActions\" (click)=\"onTableAction(tableAction)\">\n {{ tableAction.label }}\n </mad-primary-button>\n</div>\n\n<!-- Row action buttons -->\n<mat-menu #menu=\"matMenu\">\n <ng-template matMenuContent let-element=\"element\">\n <button *ngFor=\"let rowAction of rowActions\" mat-menu-item class=\"row-action\" (click)=\"onRowEvent($event, element, rowAction)\">\n {{ rowAction.label }}\n </button>\n </ng-template>\n</mat-menu>\n\n<!-- Table filter -->\n<mat-form-field *ngIf=\"isFilterEnabled\">\n <mat-label>{{ filterLabel }}</mat-label>\n <input matInput (keyup)=\"onFilter($event?.target?.value)\" placeholder=\"{{ filterPlaceholder }}\" />\n</mat-form-field>\n\n<!-- Table -->\n<div *ngIf=\"dataSource?.data?.length > 0; else noData\" class=\"mad-table\">\n <table mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"onSortingEvent($event)\">\n <!-- Row actions column -->\n <ng-container [matColumnDef]=\"ACTION_COLUMN_NAME\" *ngIf=\"rowActions?.length\" sticky>\n <th mat-header-cell *matHeaderCellDef class=\"row-action-button\"></th>\n <td mat-cell *matCellDef=\"let element\" class=\"row-action-button\">\n <mad-icon-button [matMenuTriggerData]=\"{ element: element }\" [matMenuTriggerFor]=\"menu\">\n <mat-icon>more_vert</mat-icon>\n </mad-icon-button>\n </td>\n </ng-container>\n <!-- Columns with data -->\n <ng-container *ngFor=\"let column of columns\" [matColumnDef]=\"column.label\" [sticky]=\"column.isSticky\">\n <ng-container *ngIf=\"column.isSortable; else noSort\">\n <th\n mat-header-cell\n *matHeaderCellDef\n mat-sort-header=\"{{ column.label }}\"\n [arrowPosition]=\"column.isRightAligned ? 'before' : 'after'\"\n [class.text-right]=\"column.isRightAligned\"\n >\n {{ column.label }}\n </th>\n </ng-container>\n <ng-template #noSort>\n <th mat-header-cell *matHeaderCellDef [class.text-right]=\"column.isRightAligned\">\n {{ column.label }}\n </th>\n </ng-template>\n <td mat-cell *matCellDef=\"let element\" [class.text-right]=\"column.isRightAligned\">\n {{ element[column.dataPropertyName] }}\n </td>\n </ng-container>\n <tr mat-header-row *matHeaderRowDef=\"columnNames\"></tr>\n <tr\n mat-row\n [class.clickable-table-row]=\"isRowClickable\"\n (click)=\"onRowEvent($event, row)\"\n *matRowDef=\"let row; columns: columnNames\"\n ></tr>\n </table>\n</div>\n<!-- Pagination -->\n<mat-paginator\n [style.display]=\"isPaginationEnabled ? 'block' : 'none'\"\n [pageSize]=\"defaultPageSize\"\n [pageSizeOptions]=\"pageSizeOptions\"\n showFirstLastButtons\n>\n</mat-paginator>\n\n<!-- No data alert -->\n<ng-template #noData>\n <div class=\"noDataText\">\n {{ noDataText }}\n </div>\n</ng-template>\n", styles: [".text-right{text-align:right!important}.table-action{margin-right:.5em;margin-bottom:.5em}.row-action-button{width:10px}.noDataText{width:100%;text-align:center}.mad-table{width:100%;overflow-x:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i5.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5.MatMenuContent, selector: "ng-template[matMenuContent]" }, { kind: "directive", type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i6.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "directive", type: i7.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i7.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "component", type: i8.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i8.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i8.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i8.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i8.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i8.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i8.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i8.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i8.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i8.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i9.PrimaryButtonComponent, selector: "mad-primary-button", inputs: ["type", "disabled", "title"] }, { kind: "component", type: i10.IconButtonComponent, selector: "mad-icon-button", inputs: ["type", "disabled", "title"] }] });
|
|
92
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TableComponent, decorators: [{
|
|
93
93
|
type: Component,
|
|
94
94
|
args: [{ selector: 'mad-table', template: "<!-- Table actions -->\n<div *ngIf=\"tableActions?.length\">\n <mad-primary-button class=\"table-action\" *ngFor=\"let tableAction of tableActions\" (click)=\"onTableAction(tableAction)\">\n {{ tableAction.label }}\n </mad-primary-button>\n</div>\n\n<!-- Row action buttons -->\n<mat-menu #menu=\"matMenu\">\n <ng-template matMenuContent let-element=\"element\">\n <button *ngFor=\"let rowAction of rowActions\" mat-menu-item class=\"row-action\" (click)=\"onRowEvent($event, element, rowAction)\">\n {{ rowAction.label }}\n </button>\n </ng-template>\n</mat-menu>\n\n<!-- Table filter -->\n<mat-form-field *ngIf=\"isFilterEnabled\">\n <mat-label>{{ filterLabel }}</mat-label>\n <input matInput (keyup)=\"onFilter($event?.target?.value)\" placeholder=\"{{ filterPlaceholder }}\" />\n</mat-form-field>\n\n<!-- Table -->\n<div *ngIf=\"dataSource?.data?.length > 0; else noData\" class=\"mad-table\">\n <table mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"onSortingEvent($event)\">\n <!-- Row actions column -->\n <ng-container [matColumnDef]=\"ACTION_COLUMN_NAME\" *ngIf=\"rowActions?.length\" sticky>\n <th mat-header-cell *matHeaderCellDef class=\"row-action-button\"></th>\n <td mat-cell *matCellDef=\"let element\" class=\"row-action-button\">\n <mad-icon-button [matMenuTriggerData]=\"{ element: element }\" [matMenuTriggerFor]=\"menu\">\n <mat-icon>more_vert</mat-icon>\n </mad-icon-button>\n </td>\n </ng-container>\n <!-- Columns with data -->\n <ng-container *ngFor=\"let column of columns\" [matColumnDef]=\"column.label\" [sticky]=\"column.isSticky\">\n <ng-container *ngIf=\"column.isSortable; else noSort\">\n <th\n mat-header-cell\n *matHeaderCellDef\n mat-sort-header=\"{{ column.label }}\"\n [arrowPosition]=\"column.isRightAligned ? 'before' : 'after'\"\n [class.text-right]=\"column.isRightAligned\"\n >\n {{ column.label }}\n </th>\n </ng-container>\n <ng-template #noSort>\n <th mat-header-cell *matHeaderCellDef [class.text-right]=\"column.isRightAligned\">\n {{ column.label }}\n </th>\n </ng-template>\n <td mat-cell *matCellDef=\"let element\" [class.text-right]=\"column.isRightAligned\">\n {{ element[column.dataPropertyName] }}\n </td>\n </ng-container>\n <tr mat-header-row *matHeaderRowDef=\"columnNames\"></tr>\n <tr\n mat-row\n [class.clickable-table-row]=\"isRowClickable\"\n (click)=\"onRowEvent($event, row)\"\n *matRowDef=\"let row; columns: columnNames\"\n ></tr>\n </table>\n</div>\n<!-- Pagination -->\n<mat-paginator\n [style.display]=\"isPaginationEnabled ? 'block' : 'none'\"\n [pageSize]=\"defaultPageSize\"\n [pageSizeOptions]=\"pageSizeOptions\"\n showFirstLastButtons\n>\n</mat-paginator>\n\n<!-- No data alert -->\n<ng-template #noData>\n <div class=\"noDataText\">\n {{ noDataText }}\n </div>\n</ng-template>\n", styles: [".text-right{text-align:right!important}.table-action{margin-right:.5em;margin-bottom:.5em}.row-action-button{width:10px}.noDataText{width:100%;text-align:center}.mad-table{width:100%;overflow-x:auto}\n"] }]
|
|
95
95
|
}], propDecorators: { columns: [{
|
|
@@ -127,4 +127,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImpor
|
|
|
127
127
|
}], filterEnabled: [{
|
|
128
128
|
type: Input
|
|
129
129
|
}] } });
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0ZXJpYWwtYWRkb25zL3NyYy9saWIvdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0ZXJpYWwtYWRkb25zL3NyYy9saWIvdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFRLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7Ozs7OztBQVN2RCxNQUFNLE9BQU8sY0FBYztJQUwzQjtRQU1XLFlBQU8sR0FBbUIsRUFBRSxDQUFDO1FBQzdCLGdCQUFXLEdBQUcsU0FBUyxDQUFDO1FBQ3hCLHNCQUFpQixHQUFHLFNBQVMsQ0FBQztRQUU5QixvQkFBZSxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM5QixvQkFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEQsZUFBVSxHQUFrQixFQUFFLENBQUM7UUFDL0IsaUJBQVksR0FBa0IsRUFBRSxDQUFDO1FBRWhDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWUsQ0FBQztRQUM5QyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQWUsQ0FBQztRQUM1QyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUt0Qyx1QkFBa0IsR0FBRyxZQUFZLENBQUM7UUFLM0Msb0JB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SztnQkFVRixhQUFhO3NCQURoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRUYWJsZURhdGFTb3VyY2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xuaW1wb3J0IHsgTWF0U29ydCwgU29ydCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xuaW1wb3J0IHsgQ29sdW1uSGVhZGVyIH0gZnJvbSAnLi9jb2x1bW4taGVhZGVyJztcbmltcG9ydCB7IFRhYmxlQWN0aW9uIH0gZnJvbSAnLi90YWJsZS1hY3Rpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYWQtdGFibGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWJsZS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIGNvbHVtbnM6IENvbHVtbkhlYWRlcltdID0gW107XG4gIEBJbnB1dCgpIGZpbHRlckxhYmVsID0gJ05PVCBTRVQnO1xuICBASW5wdXQoKSBmaWx0ZXJQbGFjZWhvbGRlciA9ICdOT1QgU0VUJztcbiAgQElucHV0KCkgbm9EYXRhVGV4dDogc3RyaW5nO1xuICBASW5wdXQoKSBwYWdlU2l6ZU9wdGlvbnMgPSBbNSwgMTAsIDE1XTtcbiAgQElucHV0KCkgZGVmYXVsdFBhZ2VTaXplID0gdGhpcy5wYWdlU2l6ZU9wdGlvbnM/LlswXSB8fCAxMDtcbiAgQElucHV0KCkgcm93QWN0aW9uczogVGFibGVBY3Rpb25bXSA9IFtdO1xuICBASW5wdXQoKSB0YWJsZUFjdGlvbnM6IFRhYmxlQWN0aW9uW10gPSBbXTtcblxuICBAT3V0cHV0KCkgdGFibGVBY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFRhYmxlQWN0aW9uPigpO1xuICBAT3V0cHV0KCkgcm93QWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxUYWJsZUFjdGlvbj4oKTtcbiAgQE91dHB1dCgpIHNvcnRFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8U29ydD4oKTtcblxuICBAVmlld0NoaWxkKE1hdFBhZ2luYXRvciwgeyBzdGF0aWM6IGZhbHNlIH0pIHBhZ2luYXRvcjogTWF0UGFnaW5hdG9yO1xuICBAVmlld0NoaWxkKE1hdFNvcnQsIHsgc3RhdGljOiB0cnVlIH0pIHNvcnQ6IE1hdFNvcnQ7XG5cbiAgcmVhZG9ubHkgQUNUSU9OX0NPTFVNTl9OQU1FID0gJ19fYWN0aW9uX18nO1xuICBkYXRhU291cmNlOiBNYXRUYWJsZURhdGFTb3VyY2U8YW55W10+O1xuICBjb2x1bW5OYW1lczogc3RyaW5nW107XG4gIGlzUm93Q2xpY2thYmxlOiBib29sZWFuO1xuICBkZWZhdWx0QWN0aW9uOiBUYWJsZUFjdGlvbjtcbiAgaXNGaWx0ZXJFbmFibGVkID0gZmFsc2U7XG4gIGlzUGFnaW5hdGlvbkVuYWJsZWQgPSBmYWxzZTtcblxuICBASW5wdXQoKSBzZXQgZGlzcGxheWVkRGF0YShkYXRhOiBhbnlbXSkge1xuICAgIGlmICghdGhpcy5kYXRhU291cmNlKSB7XG4gICAgICB0aGlzLmRhdGFTb3VyY2UgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlPGFueT4oZGF0YSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gZGF0YTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKSBzZXQgcGFnaW5hdGlvbkVuYWJsZWQoaXNQYWdpbmF0aW9uRW5hYmxlZDogYm9vbGVhbikge1xuICAgIHRoaXMuaXNQYWdpbmF0aW9uRW5hYmxlZCA9IGlzUGFnaW5hdGlvbkVuYWJsZWQ7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgY29uc3QgcGFnZVNpemUgPSB0aGlzLmlzUGFnaW5hdGlvbkVuYWJsZWQgPyB0aGlzLmRlZmF1bHRQYWdlU2l6ZSA6IE51bWJlci5NQVhfVkFMVUU7XG4gICAgaWYgKHRoaXMuZGF0YVNvdXJjZS5wYWdpbmF0b3IpIHtcbiAgICAgIHRoaXMuZGF0YVNvdXJjZS5wYWdpbmF0b3IuX2NoYW5nZVBhZ2VTaXplKHBhZ2VTaXplKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgZmlsdGVyRW5hYmxlZChpc0ZpbHRlckVuYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmlzRmlsdGVyRW5hYmxlZCA9IGlzRmlsdGVyRW5hYmxlZDtcbiAgICB0aGlzLnNldEZpbHRlclZhbHVlKHVuZGVmaW5lZCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbHVtbk5hbWVzID0gdGhpcy5jb2x1bW5zLm1hcChjb2x1bW4gPT4gY29sdW1uLmxhYmVsKTtcbiAgICB0aGlzLmlzUm93Q2xpY2thYmxlID0gdGhpcy5yb3dBY3Rpb25zLmxlbmd0aCA+IDA7XG4gICAgaWYgKHRoaXMuaXNSb3dDbGlja2FibGUpIHtcbiAgICAgIHRoaXMuY29sdW1uTmFtZXMudW5zaGlmdCh0aGlzLkFDVElPTl9DT0xVTU5fTkFNRSk7XG4gICAgICB0aGlzLmRlZmF1bHRBY3Rpb24gPSB0aGlzLnJvd0FjdGlvbnNbMF07XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGF0YVNvdXJjZS5wYWdpbmF0b3IgPSB0aGlzLnBhZ2luYXRvcjtcbiAgICB0aGlzLmRhdGFTb3VyY2Uuc29ydCA9IHRoaXMuc29ydDtcbiAgICAvLyBzZXQgY3VzdG9tIGZpbHRlciBwcmVkaWNhdGUgdG8gZW5hYmxlIHNlYXJjaCBmb3IgbXVsdGlwbGUgc2VhcmNoIHN0cmluZ3M6XG4gICAgLy8gZS5nLiBcIm9uZSB0d28gdGhyZWVcIlxuICAgIHRoaXMuZGF0YVNvdXJjZS5maWx0ZXJQcmVkaWNhdGUgPSAoZGF0YTogYW55LCBmaWx0ZXI6IHN0cmluZyk6IGFueSA9PlxuICAgICAgIWZpbHRlciB8fCBmaWx0ZXIuc3BsaXQoL1xccysvKS5ldmVyeSh0ZXJtID0+ICEhT2JqZWN0LmtleXMoZGF0YSkuZmluZChrZXkgPT4gZGF0YVtrZXldLmluY2x1ZGVzKHRlcm0pKSk7XG4gIH1cblxuICBvbkZpbHRlcih2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5zZXRGaWx0ZXJWYWx1ZSh2YWx1ZSk7XG4gIH1cblxuICBvblJvd0V2ZW50KGV2ZW50OiBNb3VzZUV2ZW50LCByb3c6IGFueSwgYWN0aW9uID0gdGhpcy5kZWZhdWx0QWN0aW9uKTogdm9pZCB7XG4gICAgaWYgKCEhYWN0aW9uICYmICF0aGlzLmlzQ2xpY2tPblJvd01lbnVJY29uKGV2ZW50KSkge1xuICAgICAgdGhpcy5yb3dBY3Rpb24uZW1pdCh7IC4uLmFjdGlvbiwgb3V0cHV0Um93OiByb3cgfSk7XG4gICAgfVxuICB9XG5cbiAgb25Tb3J0aW5nRXZlbnQoc29ydGluZ1BhcmFtczogU29ydCk6IHZvaWQge1xuICAgIHRoaXMuc29ydEV2ZW50LmVtaXQoc29ydGluZ1BhcmFtcyk7XG4gIH1cblxuICBvblRhYmxlQWN0aW9uKHRhYmxlQWN0aW9uOiBUYWJsZUFjdGlvbik6IHZvaWQge1xuICAgIGlmICghIXRhYmxlQWN0aW9uKSB7XG4gICAgICB0aGlzLnRhYmxlQWN0aW9uLmVtaXQodGFibGVBY3Rpb24pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0RmlsdGVyVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuZGF0YVNvdXJjZS5maWx0ZXIgPSB2YWx1ZT8udHJpbSgpLnRvTG93ZXJDYXNlKCk7XG4gIH1cblxuICBwcml2YXRlIGlzQ2xpY2tPblJvd01lbnVJY29uKGV2ZW50OiBNb3VzZUV2ZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChldmVudD8udGFyZ2V0IGFzIEhUTUxFbGVtZW50KT8uY2xhc3NMaXN0LmNvbnRhaW5zKCdtYXQtaWNvbicpO1xuICB9XG59XG4iLCI8IS0tIFRhYmxlIGFjdGlvbnMgLS0+XG48ZGl2ICpuZ0lmPVwidGFibGVBY3Rpb25zPy5sZW5ndGhcIj5cbiAgPG1hZC1wcmltYXJ5LWJ1dHRvbiBjbGFzcz1cInRhYmxlLWFjdGlvblwiICpuZ0Zvcj1cImxldCB0YWJsZUFjdGlvbiBvZiB0YWJsZUFjdGlvbnNcIiAoY2xpY2spPVwib25UYWJsZUFjdGlvbih0YWJsZUFjdGlvbilcIj5cbiAgICB7eyB0YWJsZUFjdGlvbi5sYWJlbCB9fVxuICA8L21hZC1wcmltYXJ5LWJ1dHRvbj5cbjwvZGl2PlxuXG48IS0tIFJvdyBhY3Rpb24gYnV0dG9ucyAtLT5cbjxtYXQtbWVudSAjbWVudT1cIm1hdE1lbnVcIj5cbiAgPG5nLXRlbXBsYXRlIG1hdE1lbnVDb250ZW50IGxldC1lbGVtZW50PVwiZWxlbWVudFwiPlxuICAgIDxidXR0b24gKm5nRm9yPVwibGV0IHJvd0FjdGlvbiBvZiByb3dBY3Rpb25zXCIgbWF0LW1lbnUtaXRlbSBjbGFzcz1cInJvdy1hY3Rpb25cIiAoY2xpY2spPVwib25Sb3dFdmVudCgkZXZlbnQsIGVsZW1lbnQsIHJvd0FjdGlvbilcIj5cbiAgICAgIHt7IHJvd0FjdGlvbi5sYWJlbCB9fVxuICAgIDwvYnV0dG9uPlxuICA8L25nLXRlbXBsYXRlPlxuPC9tYXQtbWVudT5cblxuPCEtLSBUYWJsZSBmaWx0ZXIgLS0+XG48bWF0LWZvcm0tZmllbGQgKm5nSWY9XCJpc0ZpbHRlckVuYWJsZWRcIj5cbiAgPG1hdC1sYWJlbD57eyBmaWx0ZXJMYWJlbCB9fTwvbWF0LWxhYmVsPlxuICA8aW5wdXQgbWF0SW5wdXQgKGtleXVwKT1cIm9uRmlsdGVyKCRldmVudD8udGFyZ2V0Py52YWx1ZSlcIiBwbGFjZWhvbGRlcj1cInt7IGZpbHRlclBsYWNlaG9sZGVyIH19XCIgLz5cbjwvbWF0LWZvcm0tZmllbGQ+XG5cbjwhLS0gVGFibGUgLS0+XG48ZGl2ICpuZ0lmPVwiZGF0YVNvdXJjZT8uZGF0YT8ubGVuZ3RoID4gMDsgZWxzZSBub0RhdGFcIiBjbGFzcz1cIm1hZC10YWJsZVwiPlxuICA8dGFibGUgbWF0LXRhYmxlIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIiBtYXRTb3J0IChtYXRTb3J0Q2hhbmdlKT1cIm9uU29ydGluZ0V2ZW50KCRldmVudClcIj5cbiAgICA8IS0tIFJvdyBhY3Rpb25zIGNvbHVtbiAtLT5cbiAgICA8bmctY29udGFpbmVyIFttYXRDb2x1bW5EZWZdPVwiQUNUSU9OX0NPTFVNTl9OQU1FXCIgKm5nSWY9XCJyb3dBY3Rpb25zPy5sZW5ndGhcIiBzdGlja3k+XG4gICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIGNsYXNzPVwicm93LWFjdGlvbi1idXR0b25cIj48L3RoPlxuICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIiBjbGFzcz1cInJvdy1hY3Rpb24tYnV0dG9uXCI+XG4gICAgICAgIDxtYWQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRGF0YV09XCJ7IGVsZW1lbnQ6IGVsZW1lbnQgfVwiIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCI+XG4gICAgICAgICAgPG1hdC1pY29uPm1vcmVfdmVydDwvbWF0LWljb24+XG4gICAgICAgIDwvbWFkLWljb24tYnV0dG9uPlxuICAgICAgPC90ZD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8IS0tIENvbHVtbnMgd2l0aCBkYXRhIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb2x1bW5zXCIgW21hdENvbHVtbkRlZl09XCJjb2x1bW4ubGFiZWxcIiBbc3RpY2t5XT1cImNvbHVtbi5pc1N0aWNreVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbi5pc1NvcnRhYmxlOyBlbHNlIG5vU29ydFwiPlxuICAgICAgICA8dGhcbiAgICAgICAgICBtYXQtaGVhZGVyLWNlbGxcbiAgICAgICAgICAqbWF0SGVhZGVyQ2VsbERlZlxuICAgICAgICAgIG1hdC1zb3J0LWhlYWRlcj1cInt7IGNvbHVtbi5sYWJlbCB9fVwiXG4gICAgICAgICAgW2Fycm93UG9zaXRpb25dPVwiY29sdW1uLmlzUmlnaHRBbGlnbmVkID8gJ2JlZm9yZScgOiAnYWZ0ZXInXCJcbiAgICAgICAgICBbY2xhc3MudGV4dC1yaWdodF09XCJjb2x1bW4uaXNSaWdodEFsaWduZWRcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgY29sdW1uLmxhYmVsIH19XG4gICAgICAgIDwvdGg+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjbm9Tb3J0PlxuICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIFtjbGFzcy50ZXh0LXJpZ2h0XT1cImNvbHVtbi5pc1JpZ2h0QWxpZ25lZFwiPlxuICAgICAgICAgIHt7IGNvbHVtbi5sYWJlbCB9fVxuICAgICAgICA8L3RoPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCIgW2NsYXNzLnRleHQtcmlnaHRdPVwiY29sdW1uLmlzUmlnaHRBbGlnbmVkXCI+XG4gICAgICAgIHt7IGVsZW1lbnRbY29sdW1uLmRhdGFQcm9wZXJ0eU5hbWVdIH19XG4gICAgICA8L3RkPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDx0ciBtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiY29sdW1uTmFtZXNcIj48L3RyPlxuICAgIDx0clxuICAgICAgbWF0LXJvd1xuICAgICAgW2NsYXNzLmNsaWNrYWJsZS10YWJsZS1yb3ddPVwiaXNSb3dDbGlja2FibGVcIlxuICAgICAgKGNsaWNrKT1cIm9uUm93RXZlbnQoJGV2ZW50LCByb3cpXCJcbiAgICAgICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBjb2x1bW5OYW1lc1wiXG4gICAgPjwvdHI+XG4gIDwvdGFibGU+XG48L2Rpdj5cbjwhLS0gUGFnaW5hdGlvbiAtLT5cbjxtYXQtcGFnaW5hdG9yXG4gIFtzdHlsZS5kaXNwbGF5XT1cImlzUGFnaW5hdGlvbkVuYWJsZWQgPyAnYmxvY2snIDogJ25vbmUnXCJcbiAgW3BhZ2VTaXplXT1cImRlZmF1bHRQYWdlU2l6ZVwiXG4gIFtwYWdlU2l6ZU9wdGlvbnNdPVwicGFnZVNpemVPcHRpb25zXCJcbiAgc2hvd0ZpcnN0TGFzdEJ1dHRvbnNcbj5cbjwvbWF0LXBhZ2luYXRvcj5cblxuPCEtLSBObyBkYXRhIGFsZXJ0IC0tPlxuPG5nLXRlbXBsYXRlICNub0RhdGE+XG4gIDxkaXYgY2xhc3M9XCJub0RhdGFUZXh0XCI+XG4gICAge3sgbm9EYXRhVGV4dCB9fVxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0ZXJpYWwtYWRkb25zL3NyYy9saWIvdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0ZXJpYWwtYWRkb25zL3NyYy9saWIvdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFRLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7Ozs7OztBQVN2RCxNQUFNLE9BQU8sY0FBYztJQUwzQjtRQU1XLFlBQU8sR0FBbUIsRUFBRSxDQUFDO1FBQzdCLGdCQUFXLEdBQUcsU0FBUyxDQUFDO1FBQ3hCLHNCQUFpQixHQUFHLFNBQVMsQ0FBQztRQUU5QixvQkFBZSxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM5QixvQkFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEQsZUFBVSxHQUFrQixFQUFFLENBQUM7UUFDL0IsaUJBQVksR0FBa0IsRUFBRSxDQUFDO1FBRWhDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWUsQ0FBQztRQUM5QyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQWUsQ0FBQztRQUM1QyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUt0Qyx1QkFBa0IsR0FBRyxZQUFZLENBQUM7UUFLM0Msb0JB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VUYsYUFBYTtzQkFEaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0VGFibGVEYXRhU291cmNlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgTWF0UGFnaW5hdG9yIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7IE1hdFNvcnQsIFNvcnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcbmltcG9ydCB7IENvbHVtbkhlYWRlciB9IGZyb20gJy4vY29sdW1uLWhlYWRlcic7XG5pbXBvcnQgeyBUYWJsZUFjdGlvbiB9IGZyb20gJy4vdGFibGUtYWN0aW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWFkLXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBASW5wdXQoKSBjb2x1bW5zOiBDb2x1bW5IZWFkZXJbXSA9IFtdO1xuICBASW5wdXQoKSBmaWx0ZXJMYWJlbCA9ICdOT1QgU0VUJztcbiAgQElucHV0KCkgZmlsdGVyUGxhY2Vob2xkZXIgPSAnTk9UIFNFVCc7XG4gIEBJbnB1dCgpIG5vRGF0YVRleHQ6IHN0cmluZztcbiAgQElucHV0KCkgcGFnZVNpemVPcHRpb25zID0gWzUsIDEwLCAxNV07XG4gIEBJbnB1dCgpIGRlZmF1bHRQYWdlU2l6ZSA9IHRoaXMucGFnZVNpemVPcHRpb25zPy5bMF0gfHwgMTA7XG4gIEBJbnB1dCgpIHJvd0FjdGlvbnM6IFRhYmxlQWN0aW9uW10gPSBbXTtcbiAgQElucHV0KCkgdGFibGVBY3Rpb25zOiBUYWJsZUFjdGlvbltdID0gW107XG5cbiAgQE91dHB1dCgpIHRhYmxlQWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxUYWJsZUFjdGlvbj4oKTtcbiAgQE91dHB1dCgpIHJvd0FjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8VGFibGVBY3Rpb24+KCk7XG4gIEBPdXRwdXQoKSBzb3J0RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPFNvcnQ+KCk7XG5cbiAgQFZpZXdDaGlsZChNYXRQYWdpbmF0b3IsIHsgc3RhdGljOiBmYWxzZSB9KSBwYWdpbmF0b3I6IE1hdFBhZ2luYXRvcjtcbiAgQFZpZXdDaGlsZChNYXRTb3J0LCB7IHN0YXRpYzogdHJ1ZSB9KSBzb3J0OiBNYXRTb3J0O1xuXG4gIHJlYWRvbmx5IEFDVElPTl9DT0xVTU5fTkFNRSA9ICdfX2FjdGlvbl9fJztcbiAgZGF0YVNvdXJjZTogTWF0VGFibGVEYXRhU291cmNlPGFueVtdPjtcbiAgY29sdW1uTmFtZXM6IHN0cmluZ1tdO1xuICBpc1Jvd0NsaWNrYWJsZTogYm9vbGVhbjtcbiAgZGVmYXVsdEFjdGlvbjogVGFibGVBY3Rpb247XG4gIGlzRmlsdGVyRW5hYmxlZCA9IGZhbHNlO1xuICBpc1BhZ2luYXRpb25FbmFibGVkID0gZmFsc2U7XG5cbiAgQElucHV0KCkgc2V0IGRpc3BsYXllZERhdGEoZGF0YTogYW55W10pIHtcbiAgICBpZiAoIXRoaXMuZGF0YVNvdXJjZSkge1xuICAgICAgdGhpcy5kYXRhU291cmNlID0gbmV3IE1hdFRhYmxlRGF0YVNvdXJjZTxhbnk+KGRhdGEpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YSA9IGRhdGE7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KCkgc2V0IHBhZ2luYXRpb25FbmFibGVkKGlzUGFnaW5hdGlvbkVuYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmlzUGFnaW5hdGlvbkVuYWJsZWQgPSBpc1BhZ2luYXRpb25FbmFibGVkO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIGNvbnN0IHBhZ2VTaXplID0gdGhpcy5pc1BhZ2luYXRpb25FbmFibGVkID8gdGhpcy5kZWZhdWx0UGFnZVNpemUgOiBOdW1iZXIuTUFYX1ZBTFVFO1xuICAgIGlmICh0aGlzLmRhdGFTb3VyY2UucGFnaW5hdG9yKSB7XG4gICAgICB0aGlzLmRhdGFTb3VyY2UucGFnaW5hdG9yLnBhZ2VTaXplID0gcGFnZVNpemU7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IGZpbHRlckVuYWJsZWQoaXNGaWx0ZXJFbmFibGVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5pc0ZpbHRlckVuYWJsZWQgPSBpc0ZpbHRlckVuYWJsZWQ7XG4gICAgdGhpcy5zZXRGaWx0ZXJWYWx1ZSh1bmRlZmluZWQpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb2x1bW5OYW1lcyA9IHRoaXMuY29sdW1ucy5tYXAoY29sdW1uID0+IGNvbHVtbi5sYWJlbCk7XG4gICAgdGhpcy5pc1Jvd0NsaWNrYWJsZSA9IHRoaXMucm93QWN0aW9ucy5sZW5ndGggPiAwO1xuICAgIGlmICh0aGlzLmlzUm93Q2xpY2thYmxlKSB7XG4gICAgICB0aGlzLmNvbHVtbk5hbWVzLnVuc2hpZnQodGhpcy5BQ1RJT05fQ09MVU1OX05BTUUpO1xuICAgICAgdGhpcy5kZWZhdWx0QWN0aW9uID0gdGhpcy5yb3dBY3Rpb25zWzBdO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFTb3VyY2UucGFnaW5hdG9yID0gdGhpcy5wYWdpbmF0b3I7XG4gICAgdGhpcy5kYXRhU291cmNlLnNvcnQgPSB0aGlzLnNvcnQ7XG4gICAgLy8gc2V0IGN1c3RvbSBmaWx0ZXIgcHJlZGljYXRlIHRvIGVuYWJsZSBzZWFyY2ggZm9yIG11bHRpcGxlIHNlYXJjaCBzdHJpbmdzOlxuICAgIC8vIGUuZy4gXCJvbmUgdHdvIHRocmVlXCJcbiAgICB0aGlzLmRhdGFTb3VyY2UuZmlsdGVyUHJlZGljYXRlID0gKGRhdGE6IGFueSwgZmlsdGVyOiBzdHJpbmcpOiBhbnkgPT5cbiAgICAgICFmaWx0ZXIgfHwgZmlsdGVyLnNwbGl0KC9cXHMrLykuZXZlcnkodGVybSA9PiAhIU9iamVjdC5rZXlzKGRhdGEpLmZpbmQoa2V5ID0+IGRhdGFba2V5XS5pbmNsdWRlcyh0ZXJtKSkpO1xuICB9XG5cbiAgb25GaWx0ZXIodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc2V0RmlsdGVyVmFsdWUodmFsdWUpO1xuICB9XG5cbiAgb25Sb3dFdmVudChldmVudDogTW91c2VFdmVudCwgcm93OiBhbnksIGFjdGlvbiA9IHRoaXMuZGVmYXVsdEFjdGlvbik6IHZvaWQge1xuICAgIGlmICghIWFjdGlvbiAmJiAhdGhpcy5pc0NsaWNrT25Sb3dNZW51SWNvbihldmVudCkpIHtcbiAgICAgIHRoaXMucm93QWN0aW9uLmVtaXQoeyAuLi5hY3Rpb24sIG91dHB1dFJvdzogcm93IH0pO1xuICAgIH1cbiAgfVxuXG4gIG9uU29ydGluZ0V2ZW50KHNvcnRpbmdQYXJhbXM6IFNvcnQpOiB2b2lkIHtcbiAgICB0aGlzLnNvcnRFdmVudC5lbWl0KHNvcnRpbmdQYXJhbXMpO1xuICB9XG5cbiAgb25UYWJsZUFjdGlvbih0YWJsZUFjdGlvbjogVGFibGVBY3Rpb24pOiB2b2lkIHtcbiAgICBpZiAoISF0YWJsZUFjdGlvbikge1xuICAgICAgdGhpcy50YWJsZUFjdGlvbi5lbWl0KHRhYmxlQWN0aW9uKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldEZpbHRlclZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFTb3VyY2UuZmlsdGVyID0gdmFsdWU/LnRyaW0oKS50b0xvd2VyQ2FzZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0NsaWNrT25Sb3dNZW51SWNvbihldmVudDogTW91c2VFdmVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoZXZlbnQ/LnRhcmdldCBhcyBIVE1MRWxlbWVudCk/LmNsYXNzTGlzdC5jb250YWlucygnbWF0LWljb24nKTtcbiAgfVxufVxuIiwiPCEtLSBUYWJsZSBhY3Rpb25zIC0tPlxuPGRpdiAqbmdJZj1cInRhYmxlQWN0aW9ucz8ubGVuZ3RoXCI+XG4gIDxtYWQtcHJpbWFyeS1idXR0b24gY2xhc3M9XCJ0YWJsZS1hY3Rpb25cIiAqbmdGb3I9XCJsZXQgdGFibGVBY3Rpb24gb2YgdGFibGVBY3Rpb25zXCIgKGNsaWNrKT1cIm9uVGFibGVBY3Rpb24odGFibGVBY3Rpb24pXCI+XG4gICAge3sgdGFibGVBY3Rpb24ubGFiZWwgfX1cbiAgPC9tYWQtcHJpbWFyeS1idXR0b24+XG48L2Rpdj5cblxuPCEtLSBSb3cgYWN0aW9uIGJ1dHRvbnMgLS0+XG48bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCI+XG4gIDxuZy10ZW1wbGF0ZSBtYXRNZW51Q29udGVudCBsZXQtZWxlbWVudD1cImVsZW1lbnRcIj5cbiAgICA8YnV0dG9uICpuZ0Zvcj1cImxldCByb3dBY3Rpb24gb2Ygcm93QWN0aW9uc1wiIG1hdC1tZW51LWl0ZW0gY2xhc3M9XCJyb3ctYWN0aW9uXCIgKGNsaWNrKT1cIm9uUm93RXZlbnQoJGV2ZW50LCBlbGVtZW50LCByb3dBY3Rpb24pXCI+XG4gICAgICB7eyByb3dBY3Rpb24ubGFiZWwgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbWF0LW1lbnU+XG5cbjwhLS0gVGFibGUgZmlsdGVyIC0tPlxuPG1hdC1mb3JtLWZpZWxkICpuZ0lmPVwiaXNGaWx0ZXJFbmFibGVkXCI+XG4gIDxtYXQtbGFiZWw+e3sgZmlsdGVyTGFiZWwgfX08L21hdC1sYWJlbD5cbiAgPGlucHV0IG1hdElucHV0IChrZXl1cCk9XCJvbkZpbHRlcigkZXZlbnQ/LnRhcmdldD8udmFsdWUpXCIgcGxhY2Vob2xkZXI9XCJ7eyBmaWx0ZXJQbGFjZWhvbGRlciB9fVwiIC8+XG48L21hdC1mb3JtLWZpZWxkPlxuXG48IS0tIFRhYmxlIC0tPlxuPGRpdiAqbmdJZj1cImRhdGFTb3VyY2U/LmRhdGE/Lmxlbmd0aCA+IDA7IGVsc2Ugbm9EYXRhXCIgY2xhc3M9XCJtYWQtdGFibGVcIj5cbiAgPHRhYmxlIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlXCIgbWF0U29ydCAobWF0U29ydENoYW5nZSk9XCJvblNvcnRpbmdFdmVudCgkZXZlbnQpXCI+XG4gICAgPCEtLSBSb3cgYWN0aW9ucyBjb2x1bW4gLS0+XG4gICAgPG5nLWNvbnRhaW5lciBbbWF0Q29sdW1uRGVmXT1cIkFDVElPTl9DT0xVTU5fTkFNRVwiICpuZ0lmPVwicm93QWN0aW9ucz8ubGVuZ3RoXCIgc3RpY2t5PlxuICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBjbGFzcz1cInJvdy1hY3Rpb24tYnV0dG9uXCI+PC90aD5cbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCIgY2xhc3M9XCJyb3ctYWN0aW9uLWJ1dHRvblwiPlxuICAgICAgICA8bWFkLWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckRhdGFdPVwieyBlbGVtZW50OiBlbGVtZW50IH1cIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiPlxuICAgICAgICAgIDxtYXQtaWNvbj5tb3JlX3ZlcnQ8L21hdC1pY29uPlxuICAgICAgICA8L21hZC1pY29uLWJ1dHRvbj5cbiAgICAgIDwvdGQ+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPCEtLSBDb2x1bW5zIHdpdGggZGF0YSAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uc1wiIFttYXRDb2x1bW5EZWZdPVwiY29sdW1uLmxhYmVsXCIgW3N0aWNreV09XCJjb2x1bW4uaXNTdGlja3lcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW4uaXNTb3J0YWJsZTsgZWxzZSBub1NvcnRcIj5cbiAgICAgICAgPHRoXG4gICAgICAgICAgbWF0LWhlYWRlci1jZWxsXG4gICAgICAgICAgKm1hdEhlYWRlckNlbGxEZWZcbiAgICAgICAgICBtYXQtc29ydC1oZWFkZXI9XCJ7eyBjb2x1bW4ubGFiZWwgfX1cIlxuICAgICAgICAgIFthcnJvd1Bvc2l0aW9uXT1cImNvbHVtbi5pc1JpZ2h0QWxpZ25lZCA/ICdiZWZvcmUnIDogJ2FmdGVyJ1wiXG4gICAgICAgICAgW2NsYXNzLnRleHQtcmlnaHRdPVwiY29sdW1uLmlzUmlnaHRBbGlnbmVkXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGNvbHVtbi5sYWJlbCB9fVxuICAgICAgICA8L3RoPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI25vU29ydD5cbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBbY2xhc3MudGV4dC1yaWdodF09XCJjb2x1bW4uaXNSaWdodEFsaWduZWRcIj5cbiAgICAgICAgICB7eyBjb2x1bW4ubGFiZWwgfX1cbiAgICAgICAgPC90aD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiIFtjbGFzcy50ZXh0LXJpZ2h0XT1cImNvbHVtbi5pc1JpZ2h0QWxpZ25lZFwiPlxuICAgICAgICB7eyBlbGVtZW50W2NvbHVtbi5kYXRhUHJvcGVydHlOYW1lXSB9fVxuICAgICAgPC90ZD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8dHIgbWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImNvbHVtbk5hbWVzXCI+PC90cj5cbiAgICA8dHJcbiAgICAgIG1hdC1yb3dcbiAgICAgIFtjbGFzcy5jbGlja2FibGUtdGFibGUtcm93XT1cImlzUm93Q2xpY2thYmxlXCJcbiAgICAgIChjbGljayk9XCJvblJvd0V2ZW50KCRldmVudCwgcm93KVwiXG4gICAgICAqbWF0Um93RGVmPVwibGV0IHJvdzsgY29sdW1uczogY29sdW1uTmFtZXNcIlxuICAgID48L3RyPlxuICA8L3RhYmxlPlxuPC9kaXY+XG48IS0tIFBhZ2luYXRpb24gLS0+XG48bWF0LXBhZ2luYXRvclxuICBbc3R5bGUuZGlzcGxheV09XCJpc1BhZ2luYXRpb25FbmFibGVkID8gJ2Jsb2NrJyA6ICdub25lJ1wiXG4gIFtwYWdlU2l6ZV09XCJkZWZhdWx0UGFnZVNpemVcIlxuICBbcGFnZVNpemVPcHRpb25zXT1cInBhZ2VTaXplT3B0aW9uc1wiXG4gIHNob3dGaXJzdExhc3RCdXR0b25zXG4+XG48L21hdC1wYWdpbmF0b3I+XG5cbjwhLS0gTm8gZGF0YSBhbGVydCAtLT5cbjxuZy10ZW1wbGF0ZSAjbm9EYXRhPlxuICA8ZGl2IGNsYXNzPVwibm9EYXRhVGV4dFwiPlxuICAgIHt7IG5vRGF0YVRleHQgfX1cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -13,8 +13,8 @@ import { ButtonModule } from '../button/button.module';
|
|
|
13
13
|
import * as i0 from "@angular/core";
|
|
14
14
|
export class TableModule {
|
|
15
15
|
}
|
|
16
|
-
TableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
17
|
-
TableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
16
|
+
TableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
17
|
+
TableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: TableModule, declarations: [TableComponent], imports: [CommonModule,
|
|
18
18
|
MatButtonModule,
|
|
19
19
|
MatIconModule,
|
|
20
20
|
MatFormFieldModule,
|
|
@@ -24,7 +24,7 @@ TableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "1
|
|
|
24
24
|
MatSortModule,
|
|
25
25
|
MatTableModule,
|
|
26
26
|
ButtonModule], exports: [TableComponent] });
|
|
27
|
-
TableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
27
|
+
TableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TableModule, imports: [CommonModule,
|
|
28
28
|
MatButtonModule,
|
|
29
29
|
MatIconModule,
|
|
30
30
|
MatFormFieldModule,
|
|
@@ -34,7 +34,7 @@ TableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "1
|
|
|
34
34
|
MatSortModule,
|
|
35
35
|
MatTableModule,
|
|
36
36
|
ButtonModule] });
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TableModule, decorators: [{
|
|
38
38
|
type: NgModule,
|
|
39
39
|
args: [{
|
|
40
40
|
declarations: [TableComponent],
|
|
@@ -20,9 +20,9 @@ export class ThrottleClickDirective {
|
|
|
20
20
|
this.subscription.unsubscribe();
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
ThrottleClickDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
24
|
-
ThrottleClickDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
23
|
+
ThrottleClickDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ThrottleClickDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
24
|
+
ThrottleClickDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: ThrottleClickDirective, selector: "[madThrottleClick]", inputs: { throttleTime: "throttleTime" }, outputs: { throttleClick: "throttleClick" }, host: { listeners: { "click": "clickEvent($event)" } }, ngImport: i0 });
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ThrottleClickDirective, decorators: [{
|
|
26
26
|
type: Directive,
|
|
27
27
|
args: [{
|
|
28
28
|
selector: '[madThrottleClick]',
|
|
@@ -4,10 +4,10 @@ import { ThrottleClickDirective } from './throttle-click.directive';
|
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export class ThrottleClickModule {
|
|
6
6
|
}
|
|
7
|
-
ThrottleClickModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
8
|
-
ThrottleClickModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
9
|
-
ThrottleClickModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
7
|
+
ThrottleClickModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ThrottleClickModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8
|
+
ThrottleClickModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: ThrottleClickModule, declarations: [ThrottleClickDirective], imports: [CommonModule], exports: [ThrottleClickDirective] });
|
|
9
|
+
ThrottleClickModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ThrottleClickModule, imports: [CommonModule] });
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ThrottleClickModule, decorators: [{
|
|
11
11
|
type: NgModule,
|
|
12
12
|
args: [{
|
|
13
13
|
declarations: [ThrottleClickDirective],
|
|
@@ -69,9 +69,9 @@ export class ToolbarComponent {
|
|
|
69
69
|
return this.getToolbarActions().filter(value => !!value.importantAction).length > 0;
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
|
-
ToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
73
|
-
ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
74
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
72
|
+
ToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ToolbarComponent, deps: [{ token: i1.BreakpointObserver }, { token: i2.Title }, { token: i3.ToolbarService }], target: i0.ɵɵFactoryTarget.Component });
|
|
73
|
+
ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ToolbarComponent, selector: "mad-toolbar", ngImport: i0, template: "<mat-toolbar class=\"content-toolbar\">\n <a [routerLink]=\"getBackAction().routerLink\" *ngIf=\"isRouterLink()\">\n <button [id]=\"'go-back'\" color=\"primary\" mat-icon-button class=\"go-back-button\">\n <mat-icon>{{ getBackAction().matIcon }}</mat-icon>\n </button>\n </a>\n <a [href]=\"getBackAction().href\" *ngIf=\"isAbsoluteLink()\">\n <button [id]=\"'go-back'\" class=\"go-back-button\" color=\"primary\" mat-icon-button>\n <mat-icon>{{ getBackAction().matIcon }}</mat-icon>\n </button>\n </a>\n <a (click)=\"getBackAction().action()\" *ngIf=\"isAction()\">\n <button [id]=\"'go-back'\" color=\"primary\" mat-icon-button class=\"go-back-button\">\n <mat-icon>{{ getBackAction().matIcon }}</mat-icon>\n </button>\n </a>\n\n <span class=\"toolbar-title\">{{ getTitle() }}</span>\n\n <ng-container *ngFor=\"let mainAction of getMainActions(); let i = index\">\n <ng-container *ngIf=\"hasPermission(mainAction) | async\">\n <div *ngIf=\"!(isHandset$ | async)\">\n <a [routerLink]=\"mainAction.routerLink\">\n <mad-primary-button [id]=\"mainAction.matIcon\" style=\"margin-left: 56px\">\n <mat-icon>{{ mainAction.matIcon }}</mat-icon>\n {{ mainAction.actionName }}\n </mad-primary-button>\n </a>\n </div>\n <div *ngIf=\"isHandset$ | async\">\n <mad-material-action-button\n [actionName]=\"mainAction.actionName\"\n [icon]=\"mainAction.matIcon\"\n [liftHigher]=\"mainAction.liftHigherOnMobile\"\n [liftHigher2]=\"i > 0\"\n [routerLink]=\"mainAction.routerLink\"\n [id]=\"mainAction.matIcon\"\n >\n </mad-material-action-button>\n </div>\n </ng-container>\n </ng-container>\n\n <div class=\"right-aligned no-print\">\n <ng-container *ngFor=\"let action of getToolbarActions(); let i = index\">\n <ng-container *ngIf=\"hasPermission(action) | async\">\n <mad-icon-button\n (click)=\"action.action()\"\n *ngIf=\"(!(isHandset$ | async) && !getToolbarActionsAlwaysAsMenu()) || i < (getToolbarActions().length > 2 ? (hasImportantToolbarActions() ? 0:1) : 2) || !!action.importantAction\"\n [id]=\"action.matIcon\"\n [matTooltip]=\"action.actionName\"\n type=\"button\">\n <mat-icon\n [matBadgeColor]=\"action.badge ? action.badge.color : 'primary'\"\n matBadgePosition=\"below after\"\n [matBadge]=\"action.badge ? action.badge.value : null\"\n >{{ action.matIcon }}</mat-icon>\n </mad-icon-button>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"(isHandset$ | async) || getToolbarActionsAlwaysAsMenu()\">\n <ng-container *ngIf=\"getToolbarActions().length > 2\">\n <mad-icon-button type=\"button\" [matMenuTriggerFor]=\"burgerMenu\" [matTooltip]=\"getToolbarActionsMenuTitle()\">\n <mat-icon\n matBadgeColor=\"warn\"\n [matBadge]=\"showBadgeForMenu() ? '⁠' : null\"\n matBadgeSize=\"small\"\n matBadgePosition=\"above after\"\n >more_vert\n </mat-icon>\n </mad-icon-button>\n <mat-menu #burgerMenu=\"matMenu\" class=\"no-print toolbar-menu\">\n <ng-container *ngFor=\"let action of getToolbarActions(); let i = index\">\n <ng-container *ngIf=\"!action.importantAction\">\n <ng-container *ngIf=\"hasPermission(action) | async\">\n <button\n *ngIf=\"i >= (hasImportantToolbarActions() ? 0:1)\" mat-menu-item (click)=\"action.action()\"\n [title]=\"action.actionName\">\n <mat-icon\n color=\"primary\"\n [matBadgeColor]=\"action.badge ? action.badge.color : 'primary'\"\n [matBadge]=\"action.badge ? action.badge.value : null\"\n matBadgePosition=\"below after\"\n >{{ action.matIcon }}</mat-icon\n >\n {{ action.actionName }}\n </button>\n </ng-container>\n </ng-container>\n </ng-container>\n </mat-menu>\n </ng-container>\n </ng-container>\n </div>\n</mat-toolbar>\n", styles: ["mat-toolbar{background:white}.content-toolbar{height:57px;border-bottom:1px solid #dcdcdc}.right-aligned{overflow:hidden;margin-left:auto;margin-right:0}.go-back-button{padding-left:0;padding-right:0}.toolbar-title{margin-right:72px}::ng-deep .mat-badge-content{bottom:-7px!important;right:-7px!important}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i6.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i6.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i6.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i7.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i8.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10.MaterialActionButtonComponent, selector: "mad-material-action-button", inputs: ["actionName", "id", "icon", "routerLink", "liftHigher", "liftHigher2"] }, { kind: "directive", type: i11.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i12.PrimaryButtonComponent, selector: "mad-primary-button", inputs: ["type", "disabled", "title"] }, { kind: "component", type: i13.IconButtonComponent, selector: "mad-icon-button", inputs: ["type", "disabled", "title"] }, { kind: "directive", type: i14.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] });
|
|
74
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ToolbarComponent, decorators: [{
|
|
75
75
|
type: Component,
|
|
76
76
|
args: [{ selector: 'mad-toolbar', template: "<mat-toolbar class=\"content-toolbar\">\n <a [routerLink]=\"getBackAction().routerLink\" *ngIf=\"isRouterLink()\">\n <button [id]=\"'go-back'\" color=\"primary\" mat-icon-button class=\"go-back-button\">\n <mat-icon>{{ getBackAction().matIcon }}</mat-icon>\n </button>\n </a>\n <a [href]=\"getBackAction().href\" *ngIf=\"isAbsoluteLink()\">\n <button [id]=\"'go-back'\" class=\"go-back-button\" color=\"primary\" mat-icon-button>\n <mat-icon>{{ getBackAction().matIcon }}</mat-icon>\n </button>\n </a>\n <a (click)=\"getBackAction().action()\" *ngIf=\"isAction()\">\n <button [id]=\"'go-back'\" color=\"primary\" mat-icon-button class=\"go-back-button\">\n <mat-icon>{{ getBackAction().matIcon }}</mat-icon>\n </button>\n </a>\n\n <span class=\"toolbar-title\">{{ getTitle() }}</span>\n\n <ng-container *ngFor=\"let mainAction of getMainActions(); let i = index\">\n <ng-container *ngIf=\"hasPermission(mainAction) | async\">\n <div *ngIf=\"!(isHandset$ | async)\">\n <a [routerLink]=\"mainAction.routerLink\">\n <mad-primary-button [id]=\"mainAction.matIcon\" style=\"margin-left: 56px\">\n <mat-icon>{{ mainAction.matIcon }}</mat-icon>\n {{ mainAction.actionName }}\n </mad-primary-button>\n </a>\n </div>\n <div *ngIf=\"isHandset$ | async\">\n <mad-material-action-button\n [actionName]=\"mainAction.actionName\"\n [icon]=\"mainAction.matIcon\"\n [liftHigher]=\"mainAction.liftHigherOnMobile\"\n [liftHigher2]=\"i > 0\"\n [routerLink]=\"mainAction.routerLink\"\n [id]=\"mainAction.matIcon\"\n >\n </mad-material-action-button>\n </div>\n </ng-container>\n </ng-container>\n\n <div class=\"right-aligned no-print\">\n <ng-container *ngFor=\"let action of getToolbarActions(); let i = index\">\n <ng-container *ngIf=\"hasPermission(action) | async\">\n <mad-icon-button\n (click)=\"action.action()\"\n *ngIf=\"(!(isHandset$ | async) && !getToolbarActionsAlwaysAsMenu()) || i < (getToolbarActions().length > 2 ? (hasImportantToolbarActions() ? 0:1) : 2) || !!action.importantAction\"\n [id]=\"action.matIcon\"\n [matTooltip]=\"action.actionName\"\n type=\"button\">\n <mat-icon\n [matBadgeColor]=\"action.badge ? action.badge.color : 'primary'\"\n matBadgePosition=\"below after\"\n [matBadge]=\"action.badge ? action.badge.value : null\"\n >{{ action.matIcon }}</mat-icon>\n </mad-icon-button>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"(isHandset$ | async) || getToolbarActionsAlwaysAsMenu()\">\n <ng-container *ngIf=\"getToolbarActions().length > 2\">\n <mad-icon-button type=\"button\" [matMenuTriggerFor]=\"burgerMenu\" [matTooltip]=\"getToolbarActionsMenuTitle()\">\n <mat-icon\n matBadgeColor=\"warn\"\n [matBadge]=\"showBadgeForMenu() ? '⁠' : null\"\n matBadgeSize=\"small\"\n matBadgePosition=\"above after\"\n >more_vert\n </mat-icon>\n </mad-icon-button>\n <mat-menu #burgerMenu=\"matMenu\" class=\"no-print toolbar-menu\">\n <ng-container *ngFor=\"let action of getToolbarActions(); let i = index\">\n <ng-container *ngIf=\"!action.importantAction\">\n <ng-container *ngIf=\"hasPermission(action) | async\">\n <button\n *ngIf=\"i >= (hasImportantToolbarActions() ? 0:1)\" mat-menu-item (click)=\"action.action()\"\n [title]=\"action.actionName\">\n <mat-icon\n color=\"primary\"\n [matBadgeColor]=\"action.badge ? action.badge.color : 'primary'\"\n [matBadge]=\"action.badge ? action.badge.value : null\"\n matBadgePosition=\"below after\"\n >{{ action.matIcon }}</mat-icon\n >\n {{ action.actionName }}\n </button>\n </ng-container>\n </ng-container>\n </ng-container>\n </mat-menu>\n </ng-container>\n </ng-container>\n </div>\n</mat-toolbar>\n", styles: ["mat-toolbar{background:white}.content-toolbar{height:57px;border-bottom:1px solid #dcdcdc}.right-aligned{overflow:hidden;margin-left:auto;margin-right:0}.go-back-button{padding-left:0;padding-right:0}.toolbar-title{margin-right:72px}::ng-deep .mat-badge-content{bottom:-7px!important;right:-7px!important}\n"] }]
|
|
77
77
|
}], ctorParameters: function () { return [{ type: i1.BreakpointObserver }, { type: i2.Title }, { type: i3.ToolbarService }]; } });
|
|
@@ -13,8 +13,8 @@ import { MatBadgeModule } from '@angular/material/badge';
|
|
|
13
13
|
import * as i0 from "@angular/core";
|
|
14
14
|
export class ToolbarModule {
|
|
15
15
|
}
|
|
16
|
-
ToolbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
17
|
-
ToolbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
16
|
+
ToolbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ToolbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
17
|
+
ToolbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: ToolbarModule, declarations: [ToolbarComponent], imports: [CommonModule,
|
|
18
18
|
RouterModule,
|
|
19
19
|
MatMenuModule,
|
|
20
20
|
MatButtonModule,
|
|
@@ -24,7 +24,7 @@ ToolbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
|
|
|
24
24
|
MatTooltipModule,
|
|
25
25
|
ButtonModule,
|
|
26
26
|
MatBadgeModule], exports: [ToolbarComponent] });
|
|
27
|
-
ToolbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
27
|
+
ToolbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ToolbarModule, imports: [CommonModule,
|
|
28
28
|
RouterModule,
|
|
29
29
|
MatMenuModule,
|
|
30
30
|
MatButtonModule,
|
|
@@ -34,7 +34,7 @@ ToolbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
|
|
|
34
34
|
MatTooltipModule,
|
|
35
35
|
ButtonModule,
|
|
36
36
|
MatBadgeModule] });
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ToolbarModule, decorators: [{
|
|
38
38
|
type: NgModule,
|
|
39
39
|
args: [{
|
|
40
40
|
declarations: [ToolbarComponent],
|
|
@@ -113,9 +113,9 @@ export class ToolbarService {
|
|
|
113
113
|
this.mainActions = [];
|
|
114
114
|
}
|
|
115
115
|
}
|
|
116
|
-
ToolbarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
117
|
-
ToolbarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
118
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
116
|
+
ToolbarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ToolbarService, deps: [{ token: i1.Router }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
117
|
+
ToolbarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ToolbarService, providedIn: 'root' });
|
|
118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ToolbarService, decorators: [{
|
|
119
119
|
type: Injectable,
|
|
120
120
|
args: [{
|
|
121
121
|
providedIn: 'root',
|