@haiilo/catalyst-angular 3.0.2 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,90 +1,43 @@
1
- import * as i1$1 from '@angular/cdk/dialog';
2
- import { DialogModule } from '@angular/cdk/dialog';
3
- import * as i0 from '@angular/core';
4
- import { Directive, HostListener, Component, ChangeDetectionStrategy, EventEmitter, ViewEncapsulation, Inject, Input, Output, ContentChild, InjectionToken, NgModule, Injectable } from '@angular/core';
5
1
  import * as i3 from '@haiilo/catalyst';
6
2
  import { catI18nRegistry, catIconRegistry, catNotificationService } from '@haiilo/catalyst';
7
3
  export { catI18nRegistry, catIconRegistry, catNotificationService } from '@haiilo/catalyst';
4
+ import * as i1$1 from '@angular/cdk/dialog';
5
+ import { DialogModule } from '@angular/cdk/dialog';
6
+ import * as i1 from '@angular/common';
7
+ import { CommonModule } from '@angular/common';
8
+ import * as i0 from '@angular/core';
9
+ import { Component, ChangeDetectionStrategy, ViewEncapsulation, Input, EventEmitter, Inject, Output, ContentChild, Directive, HostListener, Self, Optional, InjectionToken, NgModule, Injectable } from '@angular/core';
8
10
  import { defineCustomElements } from '@haiilo/catalyst/loader';
9
11
  import log from 'loglevel';
10
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
11
12
  import { __decorate } from 'tslib';
12
13
  import { fromEvent } from 'rxjs';
13
- import * as i1 from '@angular/common';
14
- import { CommonModule } from '@angular/common';
14
+ import * as i1$2 from '@angular/forms';
15
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
15
16
 
16
- class ValueAccessor {
17
- constructor(el) {
18
- this.el = el;
19
- this.onChange = () => { };
20
- this.onTouched = () => { };
21
- }
22
- writeValue(value) {
23
- this.el.nativeElement.value = this.lastValue = value == null ? '' : value;
24
- }
25
- handleChangeEvent(value) {
26
- if (value !== this.lastValue) {
27
- this.lastValue = value;
28
- this.onChange(value);
29
- }
30
- }
31
- _handleBlurEvent() {
32
- this.onTouched();
33
- }
34
- registerOnChange(fn) {
35
- this.onChange = fn;
36
- }
37
- registerOnTouched(fn) {
38
- this.onTouched = fn;
39
- }
40
- setDisabledState(isDisabled) {
41
- this.el.nativeElement.disabled = isDisabled;
17
+ /**
18
+ * The bottom actions of a dialog.
19
+ */
20
+ class CatDialogActionsComponent {
21
+ constructor() {
22
+ /**
23
+ * Horizontal alignment of action buttons.
24
+ */
25
+ this.align = 'end';
42
26
  }
43
27
  }
44
- ValueAccessor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
45
- ValueAccessordir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: ValueAccessor, host: { listeners: { "focusout": "_handleBlurEvent()" } }, ngImport: i0 });
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ValueAccessor, decorators: [{
47
- type: Directive,
48
- args: [{}]
49
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { _handleBlurEvent: [{
50
- type: HostListener,
51
- args: ['focusout']
28
+ CatDialogActionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatDialogActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
+ CatDialogActionsComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatDialogActionsComponent, selector: "cat-dialog-actions", inputs: { align: "align" }, host: { properties: { "class.cat-dialog-actions-center": "align === \"center\"", "class.cat-dialog-actions-end": "align === \"end\"" }, classAttribute: "cat-dialog-actions" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".cat-dialog-actions-center{justify-content:center}.cat-dialog-actions-end{flex-direction:row-reverse}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatDialogActionsComponent, decorators: [{
31
+ type: Component,
32
+ args: [{ selector: 'cat-dialog-actions', template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
33
+ class: 'cat-dialog-actions',
34
+ '[class.cat-dialog-actions-center]': 'align === "center"',
35
+ '[class.cat-dialog-actions-end]': 'align === "end"'
36
+ }, styles: [".cat-dialog-actions-center{justify-content:center}.cat-dialog-actions-end{flex-direction:row-reverse}\n"] }]
37
+ }], propDecorators: { align: [{
38
+ type: Input
52
39
  }] } });
53
40
 
54
- class BooleanValueAccessor extends ValueAccessor {
55
- constructor(el) {
56
- super(el);
57
- }
58
- writeValue(value) {
59
- this.el.nativeElement.checked = this.lastValue = value == null ? false : value;
60
- }
61
- }
62
- BooleanValueAccessor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BooleanValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
63
- BooleanValueAccessor.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: BooleanValueAccessor, selector: "cat-checkbox, cat-toggle", host: { listeners: { "catChange": "handleChangeEvent($event.target.value)" } }, providers: [
64
- {
65
- provide: NG_VALUE_ACCESSOR,
66
- useExisting: BooleanValueAccessor,
67
- multi: true
68
- }
69
- ], usesInheritance: true, ngImport: i0 });
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BooleanValueAccessor, decorators: [{
71
- type: Directive,
72
- args: [{
73
- /* tslint:disable-next-line:directive-selector */
74
- selector: 'cat-checkbox, cat-toggle',
75
- host: {
76
- '(catChange)': 'handleChangeEvent($event.target.value)'
77
- },
78
- providers: [
79
- {
80
- provide: NG_VALUE_ACCESSOR,
81
- useExisting: BooleanValueAccessor,
82
- multi: true
83
- }
84
- ]
85
- }]
86
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
87
-
88
41
  /* eslint-disable */
89
42
  const proxyInputs = (Cmp, inputs) => {
90
43
  const Prototype = Cmp.prototype;
@@ -217,11 +170,11 @@ let CatButton = class CatButton {
217
170
  }
218
171
  };
219
172
  CatButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
220
- CatButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatButton, selector: "cat-button", inputs: { a11yCurrent: "a11yCurrent", a11yLabel: "a11yLabel", active: "active", buttonId: "buttonId", color: "color", disabled: "disabled", icon: "icon", iconOnly: "iconOnly", iconRight: "iconRight", iconSrc: "iconSrc", loading: "loading", name: "name", noEllipsis: "noEllipsis", round: "round", size: "size", submit: "submit", url: "url", urlTarget: "urlTarget", value: "value", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
173
+ CatButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatButton, selector: "cat-button", inputs: { a11yCurrent: "a11yCurrent", a11yLabel: "a11yLabel", active: "active", buttonId: "buttonId", color: "color", disabled: "disabled", icon: "icon", iconOnly: "iconOnly", iconRight: "iconRight", iconSrc: "iconSrc", loading: "loading", name: "name", nativeAttributes: "nativeAttributes", noEllipsis: "noEllipsis", round: "round", size: "size", submit: "submit", url: "url", urlTarget: "urlTarget", value: "value", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
221
174
  CatButton = __decorate([
222
175
  ProxyCmp({
223
176
  defineCustomElementFn: undefined,
224
- inputs: ['a11yCurrent', 'a11yLabel', 'active', 'buttonId', 'color', 'disabled', 'icon', 'iconOnly', 'iconRight', 'iconSrc', 'loading', 'name', 'noEllipsis', 'round', 'size', 'submit', 'url', 'urlTarget', 'value', 'variant'],
177
+ inputs: ['a11yCurrent', 'a11yLabel', 'active', 'buttonId', 'color', 'disabled', 'icon', 'iconOnly', 'iconRight', 'iconSrc', 'loading', 'name', 'nativeAttributes', 'noEllipsis', 'round', 'size', 'submit', 'url', 'urlTarget', 'value', 'variant'],
225
178
  methods: ['doFocus', 'doBlur', 'doClick']
226
179
  })
227
180
  ], CatButton);
@@ -231,7 +184,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
231
184
  selector: 'cat-button',
232
185
  changeDetection: ChangeDetectionStrategy.OnPush,
233
186
  template: '<ng-content></ng-content>',
234
- inputs: ['a11yCurrent', 'a11yLabel', 'active', 'buttonId', 'color', 'disabled', 'icon', 'iconOnly', 'iconRight', 'iconSrc', 'loading', 'name', 'noEllipsis', 'round', 'size', 'submit', 'url', 'urlTarget', 'value', 'variant']
187
+ inputs: ['a11yCurrent', 'a11yLabel', 'active', 'buttonId', 'color', 'disabled', 'icon', 'iconOnly', 'iconRight', 'iconSrc', 'loading', 'name', 'nativeAttributes', 'noEllipsis', 'round', 'size', 'submit', 'url', 'urlTarget', 'value', 'variant']
235
188
  }]
236
189
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
237
190
  let CatCard = class CatCard {
@@ -265,11 +218,11 @@ let CatCheckbox = class CatCheckbox {
265
218
  }
266
219
  };
267
220
  CatCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatCheckbox, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
268
- CatCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatCheckbox, selector: "cat-checkbox", inputs: { checked: "checked", disabled: "disabled", hint: "hint", identifier: "identifier", indeterminate: "indeterminate", label: "label", labelHidden: "labelHidden", labelLeft: "labelLeft", name: "name", required: "required", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
221
+ CatCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatCheckbox, selector: "cat-checkbox", inputs: { checked: "checked", disabled: "disabled", hint: "hint", identifier: "identifier", indeterminate: "indeterminate", label: "label", labelHidden: "labelHidden", labelLeft: "labelLeft", name: "name", nativeAttributes: "nativeAttributes", required: "required", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
269
222
  CatCheckbox = __decorate([
270
223
  ProxyCmp({
271
224
  defineCustomElementFn: undefined,
272
- inputs: ['checked', 'disabled', 'hint', 'identifier', 'indeterminate', 'label', 'labelHidden', 'labelLeft', 'name', 'required', 'value'],
225
+ inputs: ['checked', 'disabled', 'hint', 'identifier', 'indeterminate', 'label', 'labelHidden', 'labelLeft', 'name', 'nativeAttributes', 'required', 'value'],
273
226
  methods: ['doFocus', 'doBlur', 'doClick']
274
227
  })
275
228
  ], CatCheckbox);
@@ -279,7 +232,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
279
232
  selector: 'cat-checkbox',
280
233
  changeDetection: ChangeDetectionStrategy.OnPush,
281
234
  template: '<ng-content></ng-content>',
282
- inputs: ['checked', 'disabled', 'hint', 'identifier', 'indeterminate', 'label', 'labelHidden', 'labelLeft', 'name', 'required', 'value']
235
+ inputs: ['checked', 'disabled', 'hint', 'identifier', 'indeterminate', 'label', 'labelHidden', 'labelLeft', 'name', 'nativeAttributes', 'required', 'value']
283
236
  }]
284
237
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
285
238
  let CatDropdown = class CatDropdown {
@@ -365,11 +318,11 @@ let CatInput = class CatInput {
365
318
  }
366
319
  };
367
320
  CatInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
368
- CatInput.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatInput, selector: "cat-input", inputs: { autoComplete: "autoComplete", clearable: "clearable", disabled: "disabled", hint: "hint", icon: "icon", iconRight: "iconRight", identifier: "identifier", label: "label", labelHidden: "labelHidden", max: "max", maxLength: "maxLength", min: "min", minLength: "minLength", name: "name", placeholder: "placeholder", readonly: "readonly", required: "required", requiredMarker: "requiredMarker", round: "round", textPrefix: "textPrefix", textSuffix: "textSuffix", type: "type", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
321
+ CatInput.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatInput, selector: "cat-input", inputs: { autoComplete: "autoComplete", clearable: "clearable", disabled: "disabled", errorUpdate: "errorUpdate", errors: "errors", hint: "hint", icon: "icon", iconRight: "iconRight", identifier: "identifier", label: "label", labelHidden: "labelHidden", max: "max", maxLength: "maxLength", min: "min", minLength: "minLength", name: "name", nativeAttributes: "nativeAttributes", placeholder: "placeholder", readonly: "readonly", required: "required", requiredMarker: "requiredMarker", round: "round", textPrefix: "textPrefix", textSuffix: "textSuffix", type: "type", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
369
322
  CatInput = __decorate([
370
323
  ProxyCmp({
371
324
  defineCustomElementFn: undefined,
372
- inputs: ['autoComplete', 'clearable', 'disabled', 'hint', 'icon', 'iconRight', 'identifier', 'label', 'labelHidden', 'max', 'maxLength', 'min', 'minLength', 'name', 'placeholder', 'readonly', 'required', 'requiredMarker', 'round', 'textPrefix', 'textSuffix', 'type', 'value'],
325
+ inputs: ['autoComplete', 'clearable', 'disabled', 'errorUpdate', 'errors', 'hint', 'icon', 'iconRight', 'identifier', 'label', 'labelHidden', 'max', 'maxLength', 'min', 'minLength', 'name', 'nativeAttributes', 'placeholder', 'readonly', 'required', 'requiredMarker', 'round', 'textPrefix', 'textSuffix', 'type', 'value'],
373
326
  methods: ['doFocus', 'doBlur', 'doClick', 'clear']
374
327
  })
375
328
  ], CatInput);
@@ -379,7 +332,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
379
332
  selector: 'cat-input',
380
333
  changeDetection: ChangeDetectionStrategy.OnPush,
381
334
  template: '<ng-content></ng-content>',
382
- inputs: ['autoComplete', 'clearable', 'disabled', 'hint', 'icon', 'iconRight', 'identifier', 'label', 'labelHidden', 'max', 'maxLength', 'min', 'minLength', 'name', 'placeholder', 'readonly', 'required', 'requiredMarker', 'round', 'textPrefix', 'textSuffix', 'type', 'value']
335
+ inputs: ['autoComplete', 'clearable', 'disabled', 'errorUpdate', 'errors', 'hint', 'icon', 'iconRight', 'identifier', 'label', 'labelHidden', 'max', 'maxLength', 'min', 'minLength', 'name', 'nativeAttributes', 'placeholder', 'readonly', 'required', 'requiredMarker', 'round', 'textPrefix', 'textSuffix', 'type', 'value']
383
336
  }]
384
337
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
385
338
  let CatLabel = class CatLabel {
@@ -439,11 +392,11 @@ let CatRadio = class CatRadio {
439
392
  }
440
393
  };
441
394
  CatRadio.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatRadio, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
442
- CatRadio.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatRadio, selector: "cat-radio", inputs: { checked: "checked", disabled: "disabled", hint: "hint", identifier: "identifier", label: "label", labelHidden: "labelHidden", labelLeft: "labelLeft", name: "name", required: "required", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
395
+ CatRadio.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatRadio, selector: "cat-radio", inputs: { checked: "checked", disabled: "disabled", hint: "hint", identifier: "identifier", label: "label", labelHidden: "labelHidden", labelLeft: "labelLeft", name: "name", nativeAttributes: "nativeAttributes", required: "required", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
443
396
  CatRadio = __decorate([
444
397
  ProxyCmp({
445
398
  defineCustomElementFn: undefined,
446
- inputs: ['checked', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'labelLeft', 'name', 'required', 'value'],
399
+ inputs: ['checked', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'labelLeft', 'name', 'nativeAttributes', 'required', 'value'],
447
400
  methods: ['doFocus', 'doBlur', 'doClick']
448
401
  })
449
402
  ], CatRadio);
@@ -453,7 +406,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
453
406
  selector: 'cat-radio',
454
407
  changeDetection: ChangeDetectionStrategy.OnPush,
455
408
  template: '<ng-content></ng-content>',
456
- inputs: ['checked', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'labelLeft', 'name', 'required', 'value']
409
+ inputs: ['checked', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'labelLeft', 'name', 'nativeAttributes', 'required', 'value']
457
410
  }]
458
411
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
459
412
  let CatRadioGroup = class CatRadioGroup {
@@ -515,11 +468,11 @@ let CatSelect = class CatSelect {
515
468
  }
516
469
  };
517
470
  CatSelect.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatSelect, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
518
- CatSelect.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatSelect, selector: "cat-select", inputs: { clearable: "clearable", debounce: "debounce", disabled: "disabled", hint: "hint", identifier: "identifier", label: "label", labelHidden: "labelHidden", multiple: "multiple", name: "name", noItems: "noItems", placeholder: "placeholder", placement: "placement", required: "required", requiredMarker: "requiredMarker", tagHint: "tagHint", tags: "tags", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
471
+ CatSelect.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatSelect, selector: "cat-select", inputs: { clearable: "clearable", debounce: "debounce", disabled: "disabled", errorUpdate: "errorUpdate", errors: "errors", hint: "hint", identifier: "identifier", label: "label", labelHidden: "labelHidden", multiple: "multiple", name: "name", nativeAttributes: "nativeAttributes", noItems: "noItems", placeholder: "placeholder", placement: "placement", required: "required", requiredMarker: "requiredMarker", tagHint: "tagHint", tags: "tags", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
519
472
  CatSelect = __decorate([
520
473
  ProxyCmp({
521
474
  defineCustomElementFn: undefined,
522
- inputs: ['clearable', 'debounce', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'multiple', 'name', 'noItems', 'placeholder', 'placement', 'required', 'requiredMarker', 'tagHint', 'tags', 'value'],
475
+ inputs: ['clearable', 'debounce', 'disabled', 'errorUpdate', 'errors', 'hint', 'identifier', 'label', 'labelHidden', 'multiple', 'name', 'nativeAttributes', 'noItems', 'placeholder', 'placement', 'required', 'requiredMarker', 'tagHint', 'tags', 'value'],
523
476
  methods: ['connect']
524
477
  })
525
478
  ], CatSelect);
@@ -529,7 +482,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
529
482
  selector: 'cat-select',
530
483
  changeDetection: ChangeDetectionStrategy.OnPush,
531
484
  template: '<ng-content></ng-content>',
532
- inputs: ['clearable', 'debounce', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'multiple', 'name', 'noItems', 'placeholder', 'placement', 'required', 'requiredMarker', 'tagHint', 'tags', 'value']
485
+ inputs: ['clearable', 'debounce', 'disabled', 'errorUpdate', 'errors', 'hint', 'identifier', 'label', 'labelHidden', 'multiple', 'name', 'nativeAttributes', 'noItems', 'placeholder', 'placement', 'required', 'requiredMarker', 'tagHint', 'tags', 'value']
533
486
  }]
534
487
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
535
488
  let CatSelectDemo = class CatSelectDemo {
@@ -660,11 +613,11 @@ let CatTextarea = class CatTextarea {
660
613
  }
661
614
  };
662
615
  CatTextarea.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatTextarea, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
663
- CatTextarea.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatTextarea, selector: "cat-textarea", inputs: { disabled: "disabled", hint: "hint", identifier: "identifier", label: "label", labelHidden: "labelHidden", maxLength: "maxLength", minLength: "minLength", name: "name", placeholder: "placeholder", readonly: "readonly", required: "required", requiredMarker: "requiredMarker", rows: "rows", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
616
+ CatTextarea.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatTextarea, selector: "cat-textarea", inputs: { disabled: "disabled", errorUpdate: "errorUpdate", errors: "errors", hint: "hint", identifier: "identifier", label: "label", labelHidden: "labelHidden", maxLength: "maxLength", minLength: "minLength", name: "name", nativeAttributes: "nativeAttributes", placeholder: "placeholder", readonly: "readonly", required: "required", requiredMarker: "requiredMarker", rows: "rows", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
664
617
  CatTextarea = __decorate([
665
618
  ProxyCmp({
666
619
  defineCustomElementFn: undefined,
667
- inputs: ['disabled', 'hint', 'identifier', 'label', 'labelHidden', 'maxLength', 'minLength', 'name', 'placeholder', 'readonly', 'required', 'requiredMarker', 'rows', 'value'],
620
+ inputs: ['disabled', 'errorUpdate', 'errors', 'hint', 'identifier', 'label', 'labelHidden', 'maxLength', 'minLength', 'name', 'nativeAttributes', 'placeholder', 'readonly', 'required', 'requiredMarker', 'rows', 'value'],
668
621
  methods: ['doFocus', 'doBlur', 'doClick']
669
622
  })
670
623
  ], CatTextarea);
@@ -674,7 +627,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
674
627
  selector: 'cat-textarea',
675
628
  changeDetection: ChangeDetectionStrategy.OnPush,
676
629
  template: '<ng-content></ng-content>',
677
- inputs: ['disabled', 'hint', 'identifier', 'label', 'labelHidden', 'maxLength', 'minLength', 'name', 'placeholder', 'readonly', 'required', 'requiredMarker', 'rows', 'value']
630
+ inputs: ['disabled', 'errorUpdate', 'errors', 'hint', 'identifier', 'label', 'labelHidden', 'maxLength', 'minLength', 'name', 'nativeAttributes', 'placeholder', 'readonly', 'required', 'requiredMarker', 'rows', 'value']
678
631
  }]
679
632
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
680
633
  let CatToggle = class CatToggle {
@@ -686,11 +639,11 @@ let CatToggle = class CatToggle {
686
639
  }
687
640
  };
688
641
  CatToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
689
- CatToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatToggle, selector: "cat-toggle", inputs: { checked: "checked", disabled: "disabled", hint: "hint", identifier: "identifier", label: "label", labelHidden: "labelHidden", labelLeft: "labelLeft", name: "name", required: "required", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
642
+ CatToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatToggle, selector: "cat-toggle", inputs: { checked: "checked", disabled: "disabled", hint: "hint", identifier: "identifier", label: "label", labelHidden: "labelHidden", labelLeft: "labelLeft", name: "name", nativeAttributes: "nativeAttributes", required: "required", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
690
643
  CatToggle = __decorate([
691
644
  ProxyCmp({
692
645
  defineCustomElementFn: undefined,
693
- inputs: ['checked', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'labelLeft', 'name', 'required', 'value'],
646
+ inputs: ['checked', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'labelLeft', 'name', 'nativeAttributes', 'required', 'value'],
694
647
  methods: ['doFocus', 'doBlur', 'doClick']
695
648
  })
696
649
  ], CatToggle);
@@ -700,7 +653,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
700
653
  selector: 'cat-toggle',
701
654
  changeDetection: ChangeDetectionStrategy.OnPush,
702
655
  template: '<ng-content></ng-content>',
703
- inputs: ['checked', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'labelLeft', 'name', 'required', 'value']
656
+ inputs: ['checked', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'labelLeft', 'name', 'nativeAttributes', 'required', 'value']
704
657
  }]
705
658
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
706
659
  let CatTooltip = class CatTooltip {
@@ -728,6 +681,142 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
728
681
  }]
729
682
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
730
683
 
684
+ /**
685
+ * The header of a dialog.
686
+ */
687
+ class CatDialogHeaderComponent {
688
+ constructor(i18n) {
689
+ this.i18n = i18n;
690
+ this.closeTxt = this.i18n.t('dialog.close');
691
+ this.closeSvg = '<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M7.53 6.47a.75.75 0 0 0-1.06 1.06L10.94 12l-4.47 4.47a.75.75 0 1 0 1.06 1.06L12 13.06l4.47 4.47a.75.75 0 1 0 1.06-1.06L13.06 12l4.47-4.47a.75.75 0 0 0-1.06-1.06L12 10.94 7.53 6.47Z"/></svg>';
692
+ /**
693
+ * Whether the dialog can be closed via a close button.
694
+ */
695
+ this.closable = true;
696
+ /**
697
+ * Emits when the close button is clicked.
698
+ */
699
+ this.close = new EventEmitter();
700
+ }
701
+ }
702
+ CatDialogHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatDialogHeaderComponent, deps: [{ token: CAT_I18N_REGISTRY_TOKEN }], target: i0.ɵɵFactoryTarget.Component });
703
+ CatDialogHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatDialogHeaderComponent, selector: "cat-dialog-header", inputs: { headline: "headline", subline: "subline", closable: "closable" }, outputs: { close: "close" }, host: { classAttribute: "cat-dialog-header" }, ngImport: i0, template: "<div class=\"cat-dialog-header-content\" *ngIf=\"headline || subline\">\n <h3 class=\"cat-h5 cat-m-0\" *ngIf=\"headline\">{{ headline }}</h3>\n <h4 class=\"cat-h6 cat-m-0\" *ngIf=\"subline\">{{ subline }}</h4>\n</div>\n<ng-content></ng-content>\n<cat-button\n *ngIf=\"closable\"\n class=\"cat-dialog-close cat-button-pull\"\n variant=\"text\"\n size=\"s\"\n [iconSrc]=\"closeSvg\"\n [iconOnly]=\"true\"\n [a11yLabel]=\"closeTxt\"\n (click)=\"close.emit()\"\n></cat-button>\n", styles: [".cat-dialog-close{margin-left:auto;align-self:start}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CatButton, selector: "cat-button", inputs: ["a11yCurrent", "a11yLabel", "active", "buttonId", "color", "disabled", "icon", "iconOnly", "iconRight", "iconSrc", "loading", "name", "nativeAttributes", "noEllipsis", "round", "size", "submit", "url", "urlTarget", "value", "variant"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
704
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatDialogHeaderComponent, decorators: [{
705
+ type: Component,
706
+ args: [{ selector: 'cat-dialog-header', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
707
+ class: 'cat-dialog-header'
708
+ }, template: "<div class=\"cat-dialog-header-content\" *ngIf=\"headline || subline\">\n <h3 class=\"cat-h5 cat-m-0\" *ngIf=\"headline\">{{ headline }}</h3>\n <h4 class=\"cat-h6 cat-m-0\" *ngIf=\"subline\">{{ subline }}</h4>\n</div>\n<ng-content></ng-content>\n<cat-button\n *ngIf=\"closable\"\n class=\"cat-dialog-close cat-button-pull\"\n variant=\"text\"\n size=\"s\"\n [iconSrc]=\"closeSvg\"\n [iconOnly]=\"true\"\n [a11yLabel]=\"closeTxt\"\n (click)=\"close.emit()\"\n></cat-button>\n", styles: [".cat-dialog-close{margin-left:auto;align-self:start}\n"] }]
709
+ }], ctorParameters: function () {
710
+ return [{ type: i3.CatI18nRegistry, decorators: [{
711
+ type: Inject,
712
+ args: [CAT_I18N_REGISTRY_TOKEN]
713
+ }] }];
714
+ }, propDecorators: { headline: [{
715
+ type: Input
716
+ }], subline: [{
717
+ type: Input
718
+ }], closable: [{
719
+ type: Input
720
+ }], close: [{
721
+ type: Output
722
+ }] } });
723
+
724
+ /**
725
+ * A modal dialog.
726
+ */
727
+ class CatDialogComponent {
728
+ constructor(dialogRef) {
729
+ this.dialogRef = dialogRef;
730
+ }
731
+ ngAfterContentInit() {
732
+ var _a;
733
+ (_a = this.header) === null || _a === void 0 ? void 0 : _a.close.subscribe(() => this.dialogRef.close());
734
+ }
735
+ }
736
+ CatDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatDialogComponent, deps: [{ token: i1$1.DialogRef }], target: i0.ɵɵFactoryTarget.Component });
737
+ CatDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatDialogComponent, selector: "cat-dialog", host: { classAttribute: "cat-dialog-inner" }, queries: [{ propertyName: "header", first: true, predicate: CatDialogHeaderComponent, descendants: true }], ngImport: i0, template: "<ng-content select=\"cat-dialog-header\"></ng-content>\n <cat-scrollable>\n <div class=\"cat-dialog-content\">\n <ng-content></ng-content>\n </div>\n </cat-scrollable>\n<ng-content select=\"cat-dialog-actions\"></ng-content>\n", styles: [".cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-pane{transition:transform .25s ease,opacity .25s ease;transform:translateY(24px);opacity:0}.cdk-overlay-backdrop-showing+.cdk-global-overlay-wrapper .cdk-overlay-pane{transform:translateY(0);opacity:1}.cat-backdrop.cdk-overlay-backdrop{transition-duration:.5s}.cdk-dialog-container>*:only-child{display:block;width:100%;height:100%;min-height:inherit;max-height:inherit}.cat-dialog-inner{display:flex;flex-direction:column;width:100%;height:100%;min-height:inherit;max-height:inherit}\n"], dependencies: [{ kind: "component", type: CatScrollable, selector: "cat-scrollable", inputs: ["noOverflowX", "noOverflowY", "noOverscroll", "noScrolledInit", "noShadowX", "noShadowY", "scrolledBuffer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
738
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatDialogComponent, decorators: [{
739
+ type: Component,
740
+ args: [{ selector: 'cat-dialog', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
741
+ class: 'cat-dialog-inner',
742
+ }, template: "<ng-content select=\"cat-dialog-header\"></ng-content>\n <cat-scrollable>\n <div class=\"cat-dialog-content\">\n <ng-content></ng-content>\n </div>\n </cat-scrollable>\n<ng-content select=\"cat-dialog-actions\"></ng-content>\n", styles: [".cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-pane{transition:transform .25s ease,opacity .25s ease;transform:translateY(24px);opacity:0}.cdk-overlay-backdrop-showing+.cdk-global-overlay-wrapper .cdk-overlay-pane{transform:translateY(0);opacity:1}.cat-backdrop.cdk-overlay-backdrop{transition-duration:.5s}.cdk-dialog-container>*:only-child{display:block;width:100%;height:100%;min-height:inherit;max-height:inherit}.cat-dialog-inner{display:flex;flex-direction:column;width:100%;height:100%;min-height:inherit;max-height:inherit}\n"] }]
743
+ }], ctorParameters: function () { return [{ type: i1$1.DialogRef }]; }, propDecorators: { header: [{
744
+ type: ContentChild,
745
+ args: [CatDialogHeaderComponent]
746
+ }] } });
747
+
748
+ class ValueAccessor {
749
+ constructor(el) {
750
+ this.el = el;
751
+ this.onChange = () => { };
752
+ this.onTouched = () => { };
753
+ }
754
+ writeValue(value) {
755
+ this.el.nativeElement.value = this.lastValue = value == null ? '' : value;
756
+ }
757
+ handleChangeEvent(value) {
758
+ if (value !== this.lastValue) {
759
+ this.lastValue = value;
760
+ this.onChange(value);
761
+ }
762
+ }
763
+ _handleBlurEvent() {
764
+ this.onTouched();
765
+ }
766
+ registerOnChange(fn) {
767
+ this.onChange = fn;
768
+ }
769
+ registerOnTouched(fn) {
770
+ this.onTouched = fn;
771
+ }
772
+ setDisabledState(isDisabled) {
773
+ this.el.nativeElement.disabled = isDisabled;
774
+ }
775
+ }
776
+ ValueAccessor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
777
+ ValueAccessor.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: ValueAccessor, host: { listeners: { "focusout": "_handleBlurEvent()" } }, ngImport: i0 });
778
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ValueAccessor, decorators: [{
779
+ type: Directive,
780
+ args: [{}]
781
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { _handleBlurEvent: [{
782
+ type: HostListener,
783
+ args: ['focusout']
784
+ }] } });
785
+
786
+ class BooleanValueAccessor extends ValueAccessor {
787
+ constructor(el) {
788
+ super(el);
789
+ }
790
+ writeValue(value) {
791
+ this.el.nativeElement.checked = this.lastValue = value == null ? false : value;
792
+ }
793
+ }
794
+ BooleanValueAccessor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BooleanValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
795
+ BooleanValueAccessor.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: BooleanValueAccessor, selector: "cat-checkbox, cat-toggle", host: { listeners: { "catChange": "handleChangeEvent($event.target.value)" } }, providers: [
796
+ {
797
+ provide: NG_VALUE_ACCESSOR,
798
+ useExisting: BooleanValueAccessor,
799
+ multi: true
800
+ }
801
+ ], usesInheritance: true, ngImport: i0 });
802
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BooleanValueAccessor, decorators: [{
803
+ type: Directive,
804
+ args: [{
805
+ /* tslint:disable-next-line:directive-selector */
806
+ selector: 'cat-checkbox, cat-toggle',
807
+ host: {
808
+ '(catChange)': 'handleChangeEvent($event.target.value)'
809
+ },
810
+ providers: [
811
+ {
812
+ provide: NG_VALUE_ACCESSOR,
813
+ useExisting: BooleanValueAccessor,
814
+ multi: true
815
+ }
816
+ ]
817
+ }]
818
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
819
+
731
820
  class RadioValueAccessor extends ValueAccessor {
732
821
  constructor(el) {
733
822
  super(el);
@@ -821,93 +910,36 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
821
910
  }]
822
911
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
823
912
 
824
- /**
825
- * The header of a dialog.
826
- */
827
- class CatDialogHeaderComponent {
828
- constructor(i18n) {
829
- this.i18n = i18n;
830
- this.closeTxt = this.i18n.t('dialog.close');
831
- this.closeSvg = '<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M7.53 6.47a.75.75 0 0 0-1.06 1.06L10.94 12l-4.47 4.47a.75.75 0 1 0 1.06 1.06L12 13.06l4.47 4.47a.75.75 0 1 0 1.06-1.06L13.06 12l4.47-4.47a.75.75 0 0 0-1.06-1.06L12 10.94 7.53 6.47Z"/></svg>';
832
- /**
833
- * Whether the dialog can be closed via a close button.
834
- */
835
- this.closable = true;
836
- /**
837
- * Emits when the close button is clicked.
838
- */
839
- this.close = new EventEmitter();
840
- }
841
- }
842
- CatDialogHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatDialogHeaderComponent, deps: [{ token: CAT_I18N_REGISTRY_TOKEN }], target: i0.ɵɵFactoryTarget.Component });
843
- CatDialogHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatDialogHeaderComponent, selector: "cat-dialog-header", inputs: { headline: "headline", subline: "subline", closable: "closable" }, outputs: { close: "close" }, host: { classAttribute: "cat-dialog-header" }, ngImport: i0, template: "<div class=\"cat-dialog-header-content\" *ngIf=\"headline || subline\">\n <h3 class=\"cat-h5 cat-m-0\" *ngIf=\"headline\">{{ headline }}</h3>\n <h4 class=\"cat-h6 cat-m-0\" *ngIf=\"subline\">{{ subline }}</h4>\n</div>\n<ng-content></ng-content>\n<cat-button\n *ngIf=\"closable\"\n class=\"cat-dialog-close cat-button-pull\"\n variant=\"text\"\n size=\"s\"\n [iconSrc]=\"closeSvg\"\n [iconOnly]=\"true\"\n [a11yLabel]=\"closeTxt\"\n (click)=\"close.emit()\"\n></cat-button>\n", styles: [".cat-dialog-close{margin-left:auto;align-self:start}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CatButton, selector: "cat-button", inputs: ["a11yCurrent", "a11yLabel", "active", "buttonId", "color", "disabled", "icon", "iconOnly", "iconRight", "iconSrc", "loading", "name", "noEllipsis", "round", "size", "submit", "url", "urlTarget", "value", "variant"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
844
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatDialogHeaderComponent, decorators: [{
845
- type: Component,
846
- args: [{ selector: 'cat-dialog-header', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
847
- class: 'cat-dialog-header'
848
- }, template: "<div class=\"cat-dialog-header-content\" *ngIf=\"headline || subline\">\n <h3 class=\"cat-h5 cat-m-0\" *ngIf=\"headline\">{{ headline }}</h3>\n <h4 class=\"cat-h6 cat-m-0\" *ngIf=\"subline\">{{ subline }}</h4>\n</div>\n<ng-content></ng-content>\n<cat-button\n *ngIf=\"closable\"\n class=\"cat-dialog-close cat-button-pull\"\n variant=\"text\"\n size=\"s\"\n [iconSrc]=\"closeSvg\"\n [iconOnly]=\"true\"\n [a11yLabel]=\"closeTxt\"\n (click)=\"close.emit()\"\n></cat-button>\n", styles: [".cat-dialog-close{margin-left:auto;align-self:start}\n"] }]
849
- }], ctorParameters: function () {
850
- return [{ type: i3.CatI18nRegistry, decorators: [{
851
- type: Inject,
852
- args: [CAT_I18N_REGISTRY_TOKEN]
853
- }] }];
854
- }, propDecorators: { headline: [{
855
- type: Input
856
- }], subline: [{
857
- type: Input
858
- }], closable: [{
859
- type: Input
860
- }], close: [{
861
- type: Output
862
- }] } });
863
-
864
- /**
865
- * A modal dialog.
866
- */
867
- class CatDialogComponent {
868
- constructor(dialogRef) {
869
- this.dialogRef = dialogRef;
913
+ class ValueAccessorDecorator {
914
+ constructor(el, controlDirective) {
915
+ this.el = el;
916
+ this.controlDirective = controlDirective;
870
917
  }
871
- ngAfterContentInit() {
872
- var _a;
873
- (_a = this.header) === null || _a === void 0 ? void 0 : _a.close.subscribe(() => this.dialogRef.close());
918
+ ngAfterViewInit() {
919
+ var _a, _b;
920
+ this.updateErrors();
921
+ (_b = (_a = this.controlDirective) === null || _a === void 0 ? void 0 : _a.statusChanges) === null || _b === void 0 ? void 0 : _b.subscribe(() => this.updateErrors());
874
922
  }
875
- }
876
- CatDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatDialogComponent, deps: [{ token: i1$1.DialogRef }], target: i0.ɵɵFactoryTarget.Component });
877
- CatDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatDialogComponent, selector: "cat-dialog", host: { classAttribute: "cat-dialog-inner" }, queries: [{ propertyName: "header", first: true, predicate: CatDialogHeaderComponent, descendants: true }], ngImport: i0, template: "<ng-content select=\"cat-dialog-header\"></ng-content>\n <cat-scrollable>\n <div class=\"cat-dialog-content\">\n <ng-content></ng-content>\n </div>\n </cat-scrollable>\n<ng-content select=\"cat-dialog-actions\"></ng-content>\n", styles: [".cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-pane{transition:transform .25s ease,opacity .25s ease;transform:translateY(24px);opacity:0}.cdk-overlay-backdrop-showing+.cdk-global-overlay-wrapper .cdk-overlay-pane{transform:translateY(0);opacity:1}.cat-backdrop.cdk-overlay-backdrop{transition-duration:.5s}.cdk-dialog-container>*:only-child{display:block;width:100%;height:100%;min-height:inherit;max-height:inherit}.cat-dialog-inner{display:flex;flex-direction:column;width:100%;height:100%;min-height:inherit;max-height:inherit}\n"], dependencies: [{ kind: "component", type: CatScrollable, selector: "cat-scrollable", inputs: ["noOverflowX", "noOverflowY", "noOverscroll", "noScrolledInit", "noShadowX", "noShadowY", "scrolledBuffer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
878
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatDialogComponent, decorators: [{
879
- type: Component,
880
- args: [{ selector: 'cat-dialog', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
881
- class: 'cat-dialog-inner',
882
- }, template: "<ng-content select=\"cat-dialog-header\"></ng-content>\n <cat-scrollable>\n <div class=\"cat-dialog-content\">\n <ng-content></ng-content>\n </div>\n </cat-scrollable>\n<ng-content select=\"cat-dialog-actions\"></ng-content>\n", styles: [".cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-pane{transition:transform .25s ease,opacity .25s ease;transform:translateY(24px);opacity:0}.cdk-overlay-backdrop-showing+.cdk-global-overlay-wrapper .cdk-overlay-pane{transform:translateY(0);opacity:1}.cat-backdrop.cdk-overlay-backdrop{transition-duration:.5s}.cdk-dialog-container>*:only-child{display:block;width:100%;height:100%;min-height:inherit;max-height:inherit}.cat-dialog-inner{display:flex;flex-direction:column;width:100%;height:100%;min-height:inherit;max-height:inherit}\n"] }]
883
- }], ctorParameters: function () { return [{ type: i1$1.DialogRef }]; }, propDecorators: { header: [{
884
- type: ContentChild,
885
- args: [CatDialogHeaderComponent]
886
- }] } });
887
-
888
- /**
889
- * The bottom actions of a dialog.
890
- */
891
- class CatDialogActionsComponent {
892
- constructor() {
893
- /**
894
- * Horizontal alignment of action buttons.
895
- */
896
- this.align = 'end';
923
+ updateErrors() {
924
+ var _a, _b;
925
+ this.el.nativeElement.errors = ((_a = this.controlDirective) === null || _a === void 0 ? void 0 : _a.errors) || !!((_b = this.controlDirective) === null || _b === void 0 ? void 0 : _b.invalid);
897
926
  }
898
927
  }
899
- CatDialogActionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatDialogActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
900
- CatDialogActionsComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CatDialogActionsComponent, selector: "cat-dialog-actions", inputs: { align: "align" }, host: { properties: { "class.cat-dialog-actions-center": "align === \"center\"", "class.cat-dialog-actions-end": "align === \"end\"" }, classAttribute: "cat-dialog-actions" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".cat-dialog-actions-center{justify-content:center}.cat-dialog-actions-end{flex-direction:row-reverse}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
901
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatDialogActionsComponent, decorators: [{
902
- type: Component,
903
- args: [{ selector: 'cat-dialog-actions', template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
904
- class: 'cat-dialog-actions',
905
- '[class.cat-dialog-actions-center]': 'align === "center"',
906
- '[class.cat-dialog-actions-end]': 'align === "end"'
907
- }, styles: [".cat-dialog-actions-center{justify-content:center}.cat-dialog-actions-end{flex-direction:row-reverse}\n"] }]
908
- }], propDecorators: { align: [{
909
- type: Input
910
- }] } });
928
+ ValueAccessorDecorator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ValueAccessorDecorator, deps: [{ token: i0.ElementRef }, { token: i1$2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive });
929
+ ValueAccessorDecoratordir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: ValueAccessorDecorator, selector: "cat-input, cat-textarea, cat-select", ngImport: i0 });
930
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ValueAccessorDecorator, decorators: [{
931
+ type: Directive,
932
+ args: [{
933
+ /* tslint:disable-next-line:directive-selector */
934
+ selector: 'cat-input, cat-textarea, cat-select'
935
+ }]
936
+ }], ctorParameters: function () {
937
+ return [{ type: i0.ElementRef }, { type: i1$2.NgControl, decorators: [{
938
+ type: Self
939
+ }, {
940
+ type: Optional
941
+ }] }];
942
+ } });
911
943
 
912
944
  const CatComponents = [
913
945
  CatAlert,
@@ -937,23 +969,24 @@ const CatDirectives = [
937
969
  TextValueAccessor,
938
970
  SelectValueAccessor,
939
971
  RadioValueAccessor,
940
- BooleanValueAccessor
972
+ BooleanValueAccessor,
973
+ ValueAccessorDecorator
941
974
  ];
942
975
  const CAT_LOG_TOKEN = new InjectionToken('CAT_LOG', {
943
976
  providedIn: 'root',
944
- factory: () => log,
977
+ factory: () => log
945
978
  });
946
979
  const CAT_I18N_REGISTRY_TOKEN = new InjectionToken('CAT_I18N_REGISTRY', {
947
980
  providedIn: 'root',
948
- factory: () => catI18nRegistry,
981
+ factory: () => catI18nRegistry
949
982
  });
950
983
  const CAT_ICON_REGISTRY_TOKEN = new InjectionToken('CAT_ICON_REGISTRY', {
951
984
  providedIn: 'root',
952
- factory: () => catIconRegistry,
985
+ factory: () => catIconRegistry
953
986
  });
954
987
  const CAT_NOTIFICATION_SERVICE_TOKEN = new InjectionToken('CAT_NOTIFICATION_SERVICE', {
955
988
  providedIn: 'root',
956
- factory: () => catNotificationService,
989
+ factory: () => catNotificationService
957
990
  });
958
991
  class CatalystModule {
959
992
  static forRoot() {
@@ -967,17 +1000,35 @@ CatalystModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version:
967
1000
  CatalystModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: CatalystModule, declarations: [CatAlert, CatAvatar, CatBadge, CatButton, CatCard, CatCheckbox, CatDropdown, CatFormGroup, CatIcon, CatInput, CatLabel, CatRadio, CatRadioGroup, CatScrollable, CatSelect, CatSkeleton, CatSpinner, CatTab, CatTabs, CatTextarea, CatToggle, CatTooltip, TextValueAccessor,
968
1001
  SelectValueAccessor,
969
1002
  RadioValueAccessor,
970
- BooleanValueAccessor, CatDialogComponent, CatDialogActionsComponent, CatDialogHeaderComponent], imports: [CommonModule, DialogModule], exports: [CatAlert, CatAvatar, CatBadge, CatButton, CatCard, CatCheckbox, CatDropdown, CatFormGroup, CatIcon, CatInput, CatLabel, CatRadio, CatRadioGroup, CatScrollable, CatSelect, CatSkeleton, CatSpinner, CatTab, CatTabs, CatTextarea, CatToggle, CatTooltip, TextValueAccessor,
1003
+ BooleanValueAccessor,
1004
+ ValueAccessorDecorator, CatDialogComponent,
1005
+ CatDialogActionsComponent,
1006
+ CatDialogHeaderComponent], imports: [CommonModule, DialogModule], exports: [CatAlert, CatAvatar, CatBadge, CatButton, CatCard, CatCheckbox, CatDropdown, CatFormGroup, CatIcon, CatInput, CatLabel, CatRadio, CatRadioGroup, CatScrollable, CatSelect, CatSkeleton, CatSpinner, CatTab, CatTabs, CatTextarea, CatToggle, CatTooltip, TextValueAccessor,
971
1007
  SelectValueAccessor,
972
1008
  RadioValueAccessor,
973
- BooleanValueAccessor, CatDialogComponent, CatDialogActionsComponent, CatDialogHeaderComponent] });
1009
+ BooleanValueAccessor,
1010
+ ValueAccessorDecorator, CatDialogComponent,
1011
+ CatDialogActionsComponent,
1012
+ CatDialogHeaderComponent] });
974
1013
  CatalystModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatalystModule, imports: [CommonModule, DialogModule] });
975
1014
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CatalystModule, decorators: [{
976
1015
  type: NgModule,
977
1016
  args: [{
978
1017
  imports: [CommonModule, DialogModule],
979
- declarations: [...CatComponents, ...CatDirectives, CatDialogComponent, CatDialogActionsComponent, CatDialogHeaderComponent],
980
- exports: [...CatComponents, ...CatDirectives, CatDialogComponent, CatDialogActionsComponent, CatDialogHeaderComponent],
1018
+ declarations: [
1019
+ ...CatComponents,
1020
+ ...CatDirectives,
1021
+ CatDialogComponent,
1022
+ CatDialogActionsComponent,
1023
+ CatDialogHeaderComponent
1024
+ ],
1025
+ exports: [
1026
+ ...CatComponents,
1027
+ ...CatDirectives,
1028
+ CatDialogComponent,
1029
+ CatDialogActionsComponent,
1030
+ CatDialogHeaderComponent
1031
+ ],
981
1032
  providers: []
982
1033
  }]
983
1034
  }] });
@@ -1019,5 +1070,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
1019
1070
  * Generated bundle index. Do not edit.
1020
1071
  */
1021
1072
 
1022
- export { BooleanValueAccessor, CAT_I18N_REGISTRY_TOKEN, CAT_ICON_REGISTRY_TOKEN, CAT_LOG_TOKEN, CAT_NOTIFICATION_SERVICE_TOKEN, CatAlert, CatAvatar, CatBadge, CatButton, CatCard, CatCheckbox, CatDialogActionsComponent, CatDialogComponent, CatDialogHeaderComponent, CatDialogService, CatDropdown, CatFormGroup, CatIcon, CatInput, CatLabel, CatPagination, CatRadio, CatRadioGroup, CatScrollable, CatSelect, CatSelectDemo, CatSkeleton, CatSpinner, CatTab, CatTabs, CatTextarea, CatToggle, CatTooltip, CatalystModule, RadioValueAccessor, SelectValueAccessor, TextValueAccessor, ValueAccessor };
1073
+ export { BooleanValueAccessor, CAT_I18N_REGISTRY_TOKEN, CAT_ICON_REGISTRY_TOKEN, CAT_LOG_TOKEN, CAT_NOTIFICATION_SERVICE_TOKEN, CatAlert, CatAvatar, CatBadge, CatButton, CatCard, CatCheckbox, CatDialogActionsComponent, CatDialogComponent, CatDialogHeaderComponent, CatDialogService, CatDropdown, CatFormGroup, CatIcon, CatInput, CatLabel, CatPagination, CatRadio, CatRadioGroup, CatScrollable, CatSelect, CatSelectDemo, CatSkeleton, CatSpinner, CatTab, CatTabs, CatTextarea, CatToggle, CatTooltip, CatalystModule, RadioValueAccessor, SelectValueAccessor, TextValueAccessor, ValueAccessor, ValueAccessorDecorator };
1023
1074
  //# sourceMappingURL=haiilo-catalyst-angular.mjs.map