@porscheinformatik/material-addons 22.0.1 → 22.0.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.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Input, Component, NgModule, HostBinding, ElementRef, ViewChild, Optional, Directive, LOCALE_ID, Inject, Injectable, output, InjectionToken, inject, viewChild, input, computed, signal, ChangeDetectionStrategy, EventEmitter, Output, forwardRef, HostListener, TemplateRef, ViewChildren, ContentChild, SkipSelf, ContentChildren, ViewEncapsulation, QueryList } from '@angular/core';
2
+ import { Input, Component, NgModule, HostBinding, ElementRef, ViewChild, Optional, Directive, LOCALE_ID, Inject, Injectable, output, InjectionToken, inject, viewChild, input, computed, signal, ChangeDetectionStrategy, EventEmitter, Output, forwardRef, HostListener, model, TemplateRef, ViewChildren, ContentChild, SkipSelf, ContentChildren, ViewEncapsulation, QueryList } from '@angular/core';
3
3
  import * as i2$1 from '@angular/material/icon';
4
4
  import { MatIconModule } from '@angular/material/icon';
5
5
  import * as i2 from '@angular/material/tooltip';
@@ -19,7 +19,6 @@ import { MatInputModule } from '@angular/material/input';
19
19
  import * as i1$1 from '@angular/material/form-field';
20
20
  import { MatFormFieldModule } from '@angular/material/form-field';
21
21
  import { ObserversModule } from '@angular/cdk/observers';
22
- import { trigger, transition, style, animate, state } from '@angular/animations';
23
22
  import { Subject, Subscription, of } from 'rxjs';
24
23
  import { throttleTime, switchMap, map, tap, startWith, takeUntil, distinctUntilChanged } from 'rxjs/operators';
25
24
  import * as i1$3 from '@angular/material/card';
@@ -38,6 +37,7 @@ import * as i2$3 from '@angular/cdk/drag-drop';
38
37
  import { moveItemInArray, transferArrayItem, DragDropModule } from '@angular/cdk/drag-drop';
39
38
  import * as i2$4 from '@ngx-translate/core';
40
39
  import { TranslateModule } from '@ngx-translate/core';
40
+ import { trigger, state, style, transition, animate } from '@angular/animations';
41
41
  import { SelectionModel } from '@angular/cdk/collections';
42
42
  import { DateTime } from 'luxon';
43
43
  import { v4 } from 'uuid';
@@ -1254,122 +1254,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
1254
1254
 
1255
1255
  class CardComponent {
1256
1256
  constructor() {
1257
- this.cancelDisabled = false;
1258
- this.cancelText = 'NOT SET';
1259
- this.readonly = true;
1260
- this.editText = 'NOT SET';
1261
- this.expandable = true;
1262
- this.expanded = true;
1263
- this.saveDisabled = false;
1264
- this.saveText = 'NOT SET';
1265
- this.editMode = false;
1266
- this.additionalActionText = '';
1267
- this.edit = new EventEmitter();
1268
- this.cancel = new EventEmitter();
1269
- this.save = new EventEmitter();
1270
- this.additionalAction = new EventEmitter();
1271
- }
1272
- onCancel() {
1273
- this.cancel.emit(undefined);
1257
+ this.cancelDisabled = input(false, ...(ngDevMode ? [{ debugName: "cancelDisabled" }] : []));
1258
+ this.cancelText = input('NOT SET', ...(ngDevMode ? [{ debugName: "cancelText" }] : []));
1259
+ this.readonly = input(true, ...(ngDevMode ? [{ debugName: "readonly" }] : []));
1260
+ this.editText = input('NOT SET', ...(ngDevMode ? [{ debugName: "editText" }] : []));
1261
+ this.expandable = input(true, ...(ngDevMode ? [{ debugName: "expandable" }] : []));
1262
+ this.expanded = model(true, ...(ngDevMode ? [{ debugName: "expanded" }] : []));
1263
+ this.saveDisabled = input(false, ...(ngDevMode ? [{ debugName: "saveDisabled" }] : []));
1264
+ this.saveText = input('NOT SET', ...(ngDevMode ? [{ debugName: "saveText" }] : []));
1265
+ this.title = input(undefined, ...(ngDevMode ? [{ debugName: "title" }] : []));
1266
+ this.editMode = input(false, ...(ngDevMode ? [{ debugName: "editMode" }] : []));
1267
+ this.additionalActionIcon = input(undefined, ...(ngDevMode ? [{ debugName: "additionalActionIcon" }] : []));
1268
+ this.additionalActionText = input('', ...(ngDevMode ? [{ debugName: "additionalActionText" }] : []));
1269
+ this.edit = output();
1270
+ this.cancel = output();
1271
+ this.save = output();
1272
+ this.additionalAction = output();
1273
+ this.showHeader = computed(() => Boolean(this.title()) || this.expandable(), ...(ngDevMode ? [{ debugName: "showHeader" }] : []));
1274
+ this.showCollapseButton = computed(() => this.expandable() && !this.editMode(), ...(ngDevMode ? [{ debugName: "showCollapseButton" }] : []));
1275
+ this.showAdditionalActionButton = computed(() => Boolean(this.additionalActionIcon()), ...(ngDevMode ? [{ debugName: "showAdditionalActionButton" }] : []));
1276
+ this.showEditButton = computed(() => !this.readonly() && !this.editMode(), ...(ngDevMode ? [{ debugName: "showEditButton" }] : []));
1277
+ this.showActions = computed(() => !this.readonly() && this.editMode(), ...(ngDevMode ? [{ debugName: "showActions" }] : []));
1278
+ this.collapseIconClasses = computed(() => ({
1279
+ 'collapse-icon': true,
1280
+ 'collapse-icon--collapsed': !this.expanded(),
1281
+ }), ...(ngDevMode ? [{ debugName: "collapseIconClasses" }] : []));
1274
1282
  }
1275
1283
  onEdit() {
1276
- this.edit.emit(undefined);
1277
- this.expanded = true;
1278
- }
1279
- onSave() {
1280
- this.save.emit(undefined);
1284
+ this.expanded.set(true);
1285
+ this.edit.emit();
1281
1286
  }
1282
1287
  toggleCollapse() {
1283
- this.expanded = !this.expanded;
1284
- }
1285
- additionalActionClicked() {
1286
- this.additionalAction.emit(undefined);
1288
+ this.expanded.update((expanded) => !expanded);
1287
1289
  }
1288
1290
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1289
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: CardComponent, isStandalone: true, selector: "mad-card", inputs: { cancelDisabled: "cancelDisabled", cancelText: "cancelText", readonly: "readonly", editText: "editText", expandable: "expandable", expanded: "expanded", saveDisabled: "saveDisabled", saveText: "saveText", title: "title", editMode: "editMode", additionalActionIcon: "additionalActionIcon", additionalActionText: "additionalActionText" }, outputs: { edit: "edit", cancel: "cancel", save: "save", additionalAction: "additionalAction" }, ngImport: i0, template: "<mat-card>\n @if (title || expandable) {\n <mat-card-header class=\"header\">\n <mat-card-title-group class=\"center\">\n <mat-card-title data-cy=\"card-title\" class=\"small-title-container\">{{ title }}</mat-card-title>\n <div data-cy=\"title-buttons-block\" class=\"top-right-icons\">\n @if (expandable && !editMode) {\n <mad-icon-button data-testid=\"collapse-btn\" (click)=\"toggleCollapse()\">\n <mat-icon [@rotateIcon]=\"!expanded\">keyboard_arrow_down</mat-icon>\n </mad-icon-button>\n }\n @if (additionalActionIcon) {\n <mad-icon-button data-testid=\"additional-btn\" (click)=\"additionalActionClicked()\" [title]=\"additionalActionText\" type=\"button\">\n <mat-icon>{{ additionalActionIcon }}</mat-icon>\n </mad-icon-button>\n }\n @if (!readonly && !editMode) {\n <mad-icon-button data-testid=\"edit-btn\" [title]=\"editText\" (click)=\"onEdit()\">\n <mat-icon>create</mat-icon>\n </mad-icon-button>\n }\n </div>\n </mat-card-title-group>\n </mat-card-header>\n }\n @if (expanded) {\n <mat-card-content [@collapseExpandAnimation]>\n <ng-content></ng-content>\n </mat-card-content>\n }\n @if (!readonly && editMode) {\n <mat-card-actions>\n <mad-primary-button data-testid=\"save-btn\" [title]=\"saveText\" [disabled]=\"saveDisabled\" (throttleClick)=\"onSave()\" madThrottleClick>\n {{ saveText }}\n </mad-primary-button>\n <mad-outline-button data-testid=\"cancel-btn\" [title]=\"cancelText\" [disabled]=\"cancelDisabled\" (click)=\"onCancel()\">\n {{ cancelText }}\n </mad-outline-button>\n </mat-card-actions>\n }\n</mat-card>\n", styles: [".top-right-icons{text-align:end;width:fit-content}.center{display:flex;align-items:center}.header{height:48px}\n"], dependencies: [{ kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i1$3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i1$3.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i1$3.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i1$3.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i1$3.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: i1$3.MatCardTitleGroup, selector: "mat-card-title-group" }, { kind: "component", type: IconButtonComponent, selector: "mad-icon-button", inputs: ["type", "disabled", "title"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: PrimaryButtonComponent, selector: "mad-primary-button", inputs: ["type", "disabled", "title"] }, { kind: "directive", type: ThrottleClickDirective, selector: "[madThrottleClick]", inputs: ["throttleTime"], outputs: ["throttleClick"] }, { kind: "component", type: OutlineButtonComponent, selector: "mad-outline-button", inputs: ["type", "disabled", "title", "color"] }], animations: [
1290
- trigger('collapseExpandAnimation', [
1291
- transition(':enter', [
1292
- style({ opacity: 0, height: 0, overflow: 'hidden' }),
1293
- animate('100ms', style({
1294
- opacity: 1,
1295
- height: '*',
1296
- })),
1297
- ]),
1298
- transition(':leave', [
1299
- style({ opacity: 1, height: '*', overflow: 'hidden' }),
1300
- animate('100ms', style({
1301
- opacity: 0,
1302
- height: 0,
1303
- })),
1304
- ]),
1305
- ]),
1306
- trigger('rotateIcon', [
1307
- state('true', style({ transform: 'rotate(0)' })),
1308
- state('false', style({ transform: 'rotate(180deg)' })),
1309
- transition('true => false', animate('100ms ease-out')),
1310
- transition('false => true', animate('100ms ease-in')),
1311
- ]),
1312
- ] }); }
1291
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: CardComponent, isStandalone: true, selector: "mad-card", inputs: { cancelDisabled: { classPropertyName: "cancelDisabled", publicName: "cancelDisabled", isSignal: true, isRequired: false, transformFunction: null }, cancelText: { classPropertyName: "cancelText", publicName: "cancelText", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, editText: { classPropertyName: "editText", publicName: "editText", isSignal: true, isRequired: false, transformFunction: null }, expandable: { classPropertyName: "expandable", publicName: "expandable", isSignal: true, isRequired: false, transformFunction: null }, expanded: { classPropertyName: "expanded", publicName: "expanded", isSignal: true, isRequired: false, transformFunction: null }, saveDisabled: { classPropertyName: "saveDisabled", publicName: "saveDisabled", isSignal: true, isRequired: false, transformFunction: null }, saveText: { classPropertyName: "saveText", publicName: "saveText", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, editMode: { classPropertyName: "editMode", publicName: "editMode", isSignal: true, isRequired: false, transformFunction: null }, additionalActionIcon: { classPropertyName: "additionalActionIcon", publicName: "additionalActionIcon", isSignal: true, isRequired: false, transformFunction: null }, additionalActionText: { classPropertyName: "additionalActionText", publicName: "additionalActionText", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { expanded: "expandedChange", edit: "edit", cancel: "cancel", save: "save", additionalAction: "additionalAction" }, ngImport: i0, template: "<mat-card>\n @if (showHeader()) {\n <mat-card-header class=\"card-header\">\n <mat-card-title-group class=\"card-title-group\">\n @if (title(); as cardTitle) {\n <mat-card-title data-cy=\"card-title\" class=\"card-title\">\n {{ cardTitle }}\n </mat-card-title>\n }\n <div data-cy=\"title-buttons-block\" class=\"header-actions\">\n @if (showCollapseButton()) {\n <mad-icon-button data-testid=\"collapse-btn\" (click)=\"toggleCollapse()\">\n <mat-icon [class]=\"collapseIconClasses()\"> keyboard_arrow_up </mat-icon>\n </mad-icon-button>\n }\n @if (showAdditionalActionButton()) {\n <mad-icon-button data-testid=\"additional-btn\" (click)=\"additionalAction.emit()\" [title]=\"additionalActionText()\" type=\"button\">\n <mat-icon>{{ additionalActionIcon() }}</mat-icon>\n </mad-icon-button>\n }\n @if (showEditButton()) {\n <mad-icon-button data-testid=\"edit-btn\" [title]=\"editText()\" (click)=\"onEdit()\" type=\"button\">\n <mat-icon>create</mat-icon>\n </mad-icon-button>\n }\n </div>\n </mat-card-title-group>\n </mat-card-header>\n }\n\n @if (expanded()) {\n <mat-card-content animate.enter=\"card-content-enter\" animate.leave=\"card-content-leave\">\n <ng-content />\n </mat-card-content>\n }\n\n @if (showActions()) {\n <mat-card-actions class=\"card-actions\">\n <mad-primary-button\n data-testid=\"save-btn\"\n [title]=\"saveText()\"\n [disabled]=\"saveDisabled()\"\n (throttleClick)=\"save.emit()\"\n madThrottleClick\n >\n {{ saveText() }}\n </mad-primary-button>\n <mad-outline-button data-testid=\"cancel-btn\" [title]=\"cancelText()\" [disabled]=\"cancelDisabled()\" (click)=\"cancel.emit()\">\n {{ cancelText() }}\n </mad-outline-button>\n </mat-card-actions>\n }\n</mat-card>\n", styles: [":host{display:block}.card-header{height:48px}.card-title-group{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%}.card-title{display:flex;align-items:center}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.25rem;flex-shrink:0}.collapse-icon{transition:transform .1s ease}.collapse-icon--collapsed{transform:rotate(180deg)}.card-actions{display:flex;gap:.75rem}.card-content-enter{animation:card-content-enter .18s cubic-bezier(.2,0,0,1)}.card-content-leave{animation:card-content-leave .22s cubic-bezier(.4,0,.2,1)}@keyframes card-content-enter{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@keyframes card-content-leave{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-2px)}}\n"], dependencies: [{ kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i1$3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i1$3.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i1$3.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i1$3.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i1$3.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: i1$3.MatCardTitleGroup, selector: "mat-card-title-group" }, { kind: "component", type: IconButtonComponent, selector: "mad-icon-button", inputs: ["type", "disabled", "title"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: PrimaryButtonComponent, selector: "mad-primary-button", inputs: ["type", "disabled", "title"] }, { kind: "directive", type: ThrottleClickDirective, selector: "[madThrottleClick]", inputs: ["throttleTime"], outputs: ["throttleClick"] }, { kind: "component", type: OutlineButtonComponent, selector: "mad-outline-button", inputs: ["type", "disabled", "title", "color"] }] }); }
1313
1292
  }
1314
1293
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: CardComponent, decorators: [{
1315
1294
  type: Component,
1316
- args: [{ selector: 'mad-card', animations: [
1317
- trigger('collapseExpandAnimation', [
1318
- transition(':enter', [
1319
- style({ opacity: 0, height: 0, overflow: 'hidden' }),
1320
- animate('100ms', style({
1321
- opacity: 1,
1322
- height: '*',
1323
- })),
1324
- ]),
1325
- transition(':leave', [
1326
- style({ opacity: 1, height: '*', overflow: 'hidden' }),
1327
- animate('100ms', style({
1328
- opacity: 0,
1329
- height: 0,
1330
- })),
1331
- ]),
1332
- ]),
1333
- trigger('rotateIcon', [
1334
- state('true', style({ transform: 'rotate(0)' })),
1335
- state('false', style({ transform: 'rotate(180deg)' })),
1336
- transition('true => false', animate('100ms ease-out')),
1337
- transition('false => true', animate('100ms ease-in')),
1338
- ]),
1339
- ], imports: [MatCardModule, IconButtonComponent, MatIconModule, PrimaryButtonComponent, ThrottleClickDirective, OutlineButtonComponent], template: "<mat-card>\n @if (title || expandable) {\n <mat-card-header class=\"header\">\n <mat-card-title-group class=\"center\">\n <mat-card-title data-cy=\"card-title\" class=\"small-title-container\">{{ title }}</mat-card-title>\n <div data-cy=\"title-buttons-block\" class=\"top-right-icons\">\n @if (expandable && !editMode) {\n <mad-icon-button data-testid=\"collapse-btn\" (click)=\"toggleCollapse()\">\n <mat-icon [@rotateIcon]=\"!expanded\">keyboard_arrow_down</mat-icon>\n </mad-icon-button>\n }\n @if (additionalActionIcon) {\n <mad-icon-button data-testid=\"additional-btn\" (click)=\"additionalActionClicked()\" [title]=\"additionalActionText\" type=\"button\">\n <mat-icon>{{ additionalActionIcon }}</mat-icon>\n </mad-icon-button>\n }\n @if (!readonly && !editMode) {\n <mad-icon-button data-testid=\"edit-btn\" [title]=\"editText\" (click)=\"onEdit()\">\n <mat-icon>create</mat-icon>\n </mad-icon-button>\n }\n </div>\n </mat-card-title-group>\n </mat-card-header>\n }\n @if (expanded) {\n <mat-card-content [@collapseExpandAnimation]>\n <ng-content></ng-content>\n </mat-card-content>\n }\n @if (!readonly && editMode) {\n <mat-card-actions>\n <mad-primary-button data-testid=\"save-btn\" [title]=\"saveText\" [disabled]=\"saveDisabled\" (throttleClick)=\"onSave()\" madThrottleClick>\n {{ saveText }}\n </mad-primary-button>\n <mad-outline-button data-testid=\"cancel-btn\" [title]=\"cancelText\" [disabled]=\"cancelDisabled\" (click)=\"onCancel()\">\n {{ cancelText }}\n </mad-outline-button>\n </mat-card-actions>\n }\n</mat-card>\n", styles: [".top-right-icons{text-align:end;width:fit-content}.center{display:flex;align-items:center}.header{height:48px}\n"] }]
1340
- }], propDecorators: { cancelDisabled: [{
1341
- type: Input
1342
- }], cancelText: [{
1343
- type: Input
1344
- }], readonly: [{
1345
- type: Input
1346
- }], editText: [{
1347
- type: Input
1348
- }], expandable: [{
1349
- type: Input
1350
- }], expanded: [{
1351
- type: Input
1352
- }], saveDisabled: [{
1353
- type: Input
1354
- }], saveText: [{
1355
- type: Input
1356
- }], title: [{
1357
- type: Input
1358
- }], editMode: [{
1359
- type: Input
1360
- }], additionalActionIcon: [{
1361
- type: Input
1362
- }], additionalActionText: [{
1363
- type: Input
1364
- }], edit: [{
1365
- type: Output
1366
- }], cancel: [{
1367
- type: Output
1368
- }], save: [{
1369
- type: Output
1370
- }], additionalAction: [{
1371
- type: Output
1372
- }] } });
1295
+ args: [{ selector: 'mad-card', imports: [MatCardModule, IconButtonComponent, MatIconModule, PrimaryButtonComponent, ThrottleClickDirective, OutlineButtonComponent], template: "<mat-card>\n @if (showHeader()) {\n <mat-card-header class=\"card-header\">\n <mat-card-title-group class=\"card-title-group\">\n @if (title(); as cardTitle) {\n <mat-card-title data-cy=\"card-title\" class=\"card-title\">\n {{ cardTitle }}\n </mat-card-title>\n }\n <div data-cy=\"title-buttons-block\" class=\"header-actions\">\n @if (showCollapseButton()) {\n <mad-icon-button data-testid=\"collapse-btn\" (click)=\"toggleCollapse()\">\n <mat-icon [class]=\"collapseIconClasses()\"> keyboard_arrow_up </mat-icon>\n </mad-icon-button>\n }\n @if (showAdditionalActionButton()) {\n <mad-icon-button data-testid=\"additional-btn\" (click)=\"additionalAction.emit()\" [title]=\"additionalActionText()\" type=\"button\">\n <mat-icon>{{ additionalActionIcon() }}</mat-icon>\n </mad-icon-button>\n }\n @if (showEditButton()) {\n <mad-icon-button data-testid=\"edit-btn\" [title]=\"editText()\" (click)=\"onEdit()\" type=\"button\">\n <mat-icon>create</mat-icon>\n </mad-icon-button>\n }\n </div>\n </mat-card-title-group>\n </mat-card-header>\n }\n\n @if (expanded()) {\n <mat-card-content animate.enter=\"card-content-enter\" animate.leave=\"card-content-leave\">\n <ng-content />\n </mat-card-content>\n }\n\n @if (showActions()) {\n <mat-card-actions class=\"card-actions\">\n <mad-primary-button\n data-testid=\"save-btn\"\n [title]=\"saveText()\"\n [disabled]=\"saveDisabled()\"\n (throttleClick)=\"save.emit()\"\n madThrottleClick\n >\n {{ saveText() }}\n </mad-primary-button>\n <mad-outline-button data-testid=\"cancel-btn\" [title]=\"cancelText()\" [disabled]=\"cancelDisabled()\" (click)=\"cancel.emit()\">\n {{ cancelText() }}\n </mad-outline-button>\n </mat-card-actions>\n }\n</mat-card>\n", styles: [":host{display:block}.card-header{height:48px}.card-title-group{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%}.card-title{display:flex;align-items:center}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.25rem;flex-shrink:0}.collapse-icon{transition:transform .1s ease}.collapse-icon--collapsed{transform:rotate(180deg)}.card-actions{display:flex;gap:.75rem}.card-content-enter{animation:card-content-enter .18s cubic-bezier(.2,0,0,1)}.card-content-leave{animation:card-content-leave .22s cubic-bezier(.4,0,.2,1)}@keyframes card-content-enter{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@keyframes card-content-leave{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-2px)}}\n"] }]
1296
+ }], propDecorators: { cancelDisabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "cancelDisabled", required: false }] }], cancelText: [{ type: i0.Input, args: [{ isSignal: true, alias: "cancelText", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], editText: [{ type: i0.Input, args: [{ isSignal: true, alias: "editText", required: false }] }], expandable: [{ type: i0.Input, args: [{ isSignal: true, alias: "expandable", required: false }] }], expanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "expanded", required: false }] }, { type: i0.Output, args: ["expandedChange"] }], saveDisabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "saveDisabled", required: false }] }], saveText: [{ type: i0.Input, args: [{ isSignal: true, alias: "saveText", required: false }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], editMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "editMode", required: false }] }], additionalActionIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "additionalActionIcon", required: false }] }], additionalActionText: [{ type: i0.Input, args: [{ isSignal: true, alias: "additionalActionText", required: false }] }], edit: [{ type: i0.Output, args: ["edit"] }], cancel: [{ type: i0.Output, args: ["cancel"] }], save: [{ type: i0.Output, args: ["save"] }], additionalAction: [{ type: i0.Output, args: ["additionalAction"] }] } });
1373
1297
 
1374
1298
  class ThrottleClickModule {
1375
1299
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: ThrottleClickModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
@@ -4284,7 +4208,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
4284
4208
  type: Output
4285
4209
  }] } });
4286
4210
 
4287
- const VERSION = '21.0.1';
4211
+ const VERSION = '22.0.2';
4288
4212
 
4289
4213
  const MAD_ALERT_DEFAULT_CONFIGURATION = new InjectionToken('mad-alert-configuration', {
4290
4214
  providedIn: 'root',