@haiilo/catalyst-angular 13.5.1-beta.1 → 14.0.1

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.
Files changed (50) hide show
  1. package/fesm2022/haiilo-catalyst-angular.mjs +1942 -0
  2. package/fesm2022/haiilo-catalyst-angular.mjs.map +1 -0
  3. package/package.json +9 -17
  4. package/types/haiilo-catalyst-angular.d.ts +802 -0
  5. package/esm2020/haiilo-catalyst-angular.mjs +0 -5
  6. package/esm2020/lib/catalyst.module.mjs +0 -118
  7. package/esm2020/lib/datetime/datetime.component.mjs +0 -137
  8. package/esm2020/lib/dialog/dialog-actions.component.mjs +0 -27
  9. package/esm2020/lib/dialog/dialog-header.component.mjs +0 -43
  10. package/esm2020/lib/dialog/dialog.component.mjs +0 -60
  11. package/esm2020/lib/dialog/dialog.service.mjs +0 -68
  12. package/esm2020/lib/directives/angular-component-lib/utils.mjs +0 -59
  13. package/esm2020/lib/directives/boolean-value-accessor.mjs +0 -38
  14. package/esm2020/lib/directives/date-value-accessor.mjs +0 -90
  15. package/esm2020/lib/directives/proxies.mjs +0 -786
  16. package/esm2020/lib/directives/radio-value-accessor.mjs +0 -35
  17. package/esm2020/lib/directives/select-value-accessor-decorator.mjs +0 -24
  18. package/esm2020/lib/directives/select-value-accessor.mjs +0 -35
  19. package/esm2020/lib/directives/text-value-accessor.mjs +0 -35
  20. package/esm2020/lib/directives/time-value-accessor.mjs +0 -73
  21. package/esm2020/lib/directives/value-accessor-decorator.mjs +0 -55
  22. package/esm2020/lib/directives/value-accessor.mjs +0 -40
  23. package/esm2020/lib/injection-token.mjs +0 -21
  24. package/esm2020/lib/tooltip/tooltip.directive.mjs +0 -34
  25. package/esm2020/public-api.mjs +0 -19
  26. package/fesm2015/haiilo-catalyst-angular.mjs +0 -1700
  27. package/fesm2015/haiilo-catalyst-angular.mjs.map +0 -1
  28. package/fesm2020/haiilo-catalyst-angular.mjs +0 -1679
  29. package/fesm2020/haiilo-catalyst-angular.mjs.map +0 -1
  30. package/index.d.ts +0 -5
  31. package/lib/catalyst.module.d.ts +0 -24
  32. package/lib/datetime/datetime.component.d.ts +0 -29
  33. package/lib/dialog/dialog-actions.component.d.ts +0 -12
  34. package/lib/dialog/dialog-header.component.d.ts +0 -29
  35. package/lib/dialog/dialog.component.d.ts +0 -35
  36. package/lib/dialog/dialog.service.d.ts +0 -49
  37. package/lib/directives/angular-component-lib/utils.d.ts +0 -9
  38. package/lib/directives/boolean-value-accessor.d.ts +0 -9
  39. package/lib/directives/date-value-accessor.d.ts +0 -17
  40. package/lib/directives/proxies.d.ts +0 -477
  41. package/lib/directives/radio-value-accessor.d.ts +0 -8
  42. package/lib/directives/select-value-accessor-decorator.d.ts +0 -14
  43. package/lib/directives/select-value-accessor.d.ts +0 -8
  44. package/lib/directives/text-value-accessor.d.ts +0 -8
  45. package/lib/directives/time-value-accessor.d.ts +0 -15
  46. package/lib/directives/value-accessor-decorator.d.ts +0 -18
  47. package/lib/directives/value-accessor.d.ts +0 -18
  48. package/lib/injection-token.d.ts +0 -7
  49. package/lib/tooltip/tooltip.directive.d.ts +0 -16
  50. package/public-api.d.ts +0 -18
@@ -0,0 +1,1942 @@
1
+ import * as i0 from '@angular/core';
2
+ import { InjectionToken, HostListener, Directive, Optional, SkipSelf, Input, ContentChild, ViewEncapsulation, Component, ChangeDetectionStrategy, EventEmitter, Output, inject, Self, Host, TemplateRef, ViewContainerRef, NgModule, Injectable } from '@angular/core';
3
+ import { catI18nRegistry, catIconRegistry, catNotificationService } from '@haiilo/catalyst';
4
+ import log from 'loglevel';
5
+ import { DialogRef, DialogModule, Dialog } from '@angular/cdk/dialog';
6
+ import * as i1$1 from '@angular/common';
7
+ import { CommonModule } from '@angular/common';
8
+ import { defineCustomElements } from '@haiilo/catalyst/loader';
9
+ import * as i1 from '@angular/forms';
10
+ import { Validators, NG_VALUE_ACCESSOR } from '@angular/forms';
11
+ import { __decorate } from 'tslib';
12
+ import { fromEvent } from 'rxjs';
13
+
14
+ // It is important to declare the InjectionTokens first
15
+ const CAT_LOG_TOKEN = new InjectionToken('CAT_LOG', {
16
+ providedIn: 'root',
17
+ factory: () => log
18
+ });
19
+ const CAT_I18N_REGISTRY_TOKEN = new InjectionToken('CAT_I18N_REGISTRY', {
20
+ providedIn: 'root',
21
+ factory: () => catI18nRegistry
22
+ });
23
+ const CAT_ICON_REGISTRY_TOKEN = new InjectionToken('CAT_ICON_REGISTRY', {
24
+ providedIn: 'root',
25
+ factory: () => catIconRegistry
26
+ });
27
+ const CAT_NOTIFICATION_SERVICE_TOKEN = new InjectionToken('CAT_NOTIFICATION_SERVICE', {
28
+ providedIn: 'root',
29
+ factory: () => catNotificationService
30
+ });
31
+
32
+ class ValueAccessor {
33
+ el;
34
+ onChange = () => { };
35
+ onTouched = () => { };
36
+ lastValue;
37
+ constructor(el) {
38
+ this.el = el;
39
+ }
40
+ writeValue(value) {
41
+ this.el.nativeElement.value = this.lastValue = value == null ? '' : value;
42
+ }
43
+ handleChangeEvent(value) {
44
+ if (value !== this.lastValue) {
45
+ this.lastValue = value;
46
+ this.onChange(value);
47
+ }
48
+ }
49
+ _handleBlurEvent() {
50
+ this.onTouched();
51
+ }
52
+ registerOnChange(fn) {
53
+ this.onChange = fn;
54
+ }
55
+ registerOnTouched(fn) {
56
+ this.onTouched = fn;
57
+ }
58
+ setDisabledState(isDisabled) {
59
+ this.el.nativeElement.disabled = isDisabled;
60
+ }
61
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: ValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
62
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: ValueAccessor, isStandalone: true, host: { listeners: { "focusout": "_handleBlurEvent()" } }, ngImport: i0 });
63
+ }
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: ValueAccessor, decorators: [{
65
+ type: Directive,
66
+ args: [{}]
67
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { _handleBlurEvent: [{
68
+ type: HostListener,
69
+ args: ['focusout']
70
+ }] } });
71
+
72
+ class DateValueAccessor extends ValueAccessor {
73
+ ngControl;
74
+ constructor(el, ngControl) {
75
+ super(el);
76
+ this.ngControl = ngControl;
77
+ }
78
+ get nativeElement() {
79
+ return this.el.nativeElement;
80
+ }
81
+ ngAfterViewInit() {
82
+ if (this.ngControl?.control?.hasValidator(Validators.required)) {
83
+ this.el.nativeElement.required = true;
84
+ }
85
+ }
86
+ writeValue(value) {
87
+ if (!this.el.nativeElement.range) {
88
+ return super.writeValue(this.toISO(value));
89
+ }
90
+ else if (value instanceof Array) {
91
+ const data = [this.toISO(value[0]), this.toISO(value[1])];
92
+ return super.writeValue(JSON.stringify(data));
93
+ }
94
+ return super.writeValue(undefined);
95
+ }
96
+ handleChangeEvent(value) {
97
+ if (!this.el.nativeElement.range) {
98
+ return super.handleChangeEvent(this.toDate(value));
99
+ }
100
+ else if (typeof value === 'string') {
101
+ const data = JSON.parse(value).map(this.toDate);
102
+ data[1]?.setHours(23, 59, 59, 999);
103
+ return super.handleChangeEvent(data);
104
+ }
105
+ super.handleChangeEvent(null);
106
+ }
107
+ updateErrors() {
108
+ setTimeout(() => {
109
+ this.el.nativeElement.errors =
110
+ this.ngControl?.control?.errors?.required && !this.el.nativeElement.value ? { required: true } : null;
111
+ });
112
+ }
113
+ toISO(value) {
114
+ if (value instanceof Date) {
115
+ const year = value.getFullYear();
116
+ const month = (value.getMonth() + 1).toString().padStart(2, '0');
117
+ const day = value.getDate().toString().padStart(2, '0');
118
+ return `${year}-${month}-${day}`;
119
+ }
120
+ return undefined;
121
+ }
122
+ toDate(value) {
123
+ const [match, year, month, day] = value?.match(/^(\d{4})-(\d{2})-(\d{2})/) ?? [];
124
+ return match ? new Date(Number(year), Number(month) - 1, Number(day)) : null;
125
+ }
126
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: DateValueAccessor, deps: [{ token: i0.ElementRef }, { token: i1.NgControl, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Directive });
127
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: DateValueAccessor, isStandalone: false, selector: "cat-date, cat-date-inline", host: { listeners: { "catChange": "handleChangeEvent($event.target.value); updateErrors()", "catBlur": "updateErrors()" } }, providers: [
128
+ {
129
+ provide: NG_VALUE_ACCESSOR,
130
+ useExisting: DateValueAccessor,
131
+ multi: true
132
+ }
133
+ ], usesInheritance: true, ngImport: i0 });
134
+ }
135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: DateValueAccessor, decorators: [{
136
+ type: Directive,
137
+ args: [{
138
+ /* tslint:disable-next-line:directive-selector */
139
+ selector: 'cat-date, cat-date-inline',
140
+ host: {
141
+ '(catChange)': 'handleChangeEvent($event.target.value); updateErrors()',
142
+ '(catBlur)': 'updateErrors()'
143
+ },
144
+ providers: [
145
+ {
146
+ provide: NG_VALUE_ACCESSOR,
147
+ useExisting: DateValueAccessor,
148
+ multi: true
149
+ }
150
+ ],
151
+ standalone: false
152
+ }]
153
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.NgControl, decorators: [{
154
+ type: Optional
155
+ }, {
156
+ type: SkipSelf
157
+ }] }] });
158
+
159
+ class TimeValueAccessor extends ValueAccessor {
160
+ ngControl;
161
+ constructor(el, ngControl) {
162
+ super(el);
163
+ this.ngControl = ngControl;
164
+ }
165
+ get nativeElement() {
166
+ return this.el.nativeElement;
167
+ }
168
+ ngAfterViewInit() {
169
+ if (this.ngControl?.control?.hasValidator(Validators.required)) {
170
+ this.el.nativeElement.required = true;
171
+ }
172
+ }
173
+ writeValue(value) {
174
+ if (value && value instanceof Date) {
175
+ const hours = value.getHours().toString().padStart(2, '0');
176
+ const mins = value.getMinutes().toString().padStart(2, '0');
177
+ return super.writeValue(`${hours}:${mins}`);
178
+ }
179
+ return super.writeValue(undefined);
180
+ }
181
+ handleChangeEvent(value) {
182
+ const [match, hours, mins] = value?.match(/^(\d{2}):(\d{2})/) ?? [];
183
+ if (match) {
184
+ const date = new Date();
185
+ date.setHours(Number(hours), Number(mins), 0, 0);
186
+ return super.handleChangeEvent(date);
187
+ }
188
+ return super.handleChangeEvent(null);
189
+ }
190
+ updateErrors() {
191
+ setTimeout(() => {
192
+ this.el.nativeElement.errors =
193
+ this.ngControl?.control?.errors?.required && !this.el.nativeElement.value ? { required: true } : null;
194
+ });
195
+ }
196
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: TimeValueAccessor, deps: [{ token: i0.ElementRef }, { token: i1.NgControl, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Directive });
197
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: TimeValueAccessor, isStandalone: false, selector: "cat-time", host: { listeners: { "catChange": "handleChangeEvent($event.target.value); updateErrors()", "catBlur": "updateErrors()" } }, providers: [
198
+ {
199
+ provide: NG_VALUE_ACCESSOR,
200
+ useExisting: TimeValueAccessor,
201
+ multi: true
202
+ }
203
+ ], usesInheritance: true, ngImport: i0 });
204
+ }
205
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: TimeValueAccessor, decorators: [{
206
+ type: Directive,
207
+ args: [{
208
+ /* tslint:disable-next-line:directive-selector */
209
+ selector: 'cat-time',
210
+ host: {
211
+ '(catChange)': 'handleChangeEvent($event.target.value); updateErrors()',
212
+ '(catBlur)': 'updateErrors()'
213
+ },
214
+ providers: [
215
+ {
216
+ provide: NG_VALUE_ACCESSOR,
217
+ useExisting: TimeValueAccessor,
218
+ multi: true
219
+ }
220
+ ],
221
+ standalone: false
222
+ }]
223
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.NgControl, decorators: [{
224
+ type: Optional
225
+ }, {
226
+ type: SkipSelf
227
+ }] }] });
228
+
229
+ class DatetimeComponent {
230
+ lastValue;
231
+ lastDateValue;
232
+ lastTimeValue;
233
+ dateInput;
234
+ timeInput;
235
+ _min;
236
+ get min() {
237
+ return this._min ?? null;
238
+ }
239
+ set min(value) {
240
+ this._min = value;
241
+ setTimeout(() => {
242
+ const min = value ? this.toLocalISODate(value) : undefined;
243
+ this.dateInput?.nativeElement.setAttribute('min', min);
244
+ this.limitTime('min');
245
+ });
246
+ }
247
+ _max;
248
+ get max() {
249
+ return this._max ?? null;
250
+ }
251
+ set max(value) {
252
+ this._max = value;
253
+ setTimeout(() => {
254
+ const max = value ? this.toLocalISODate(value) : undefined;
255
+ this.dateInput?.nativeElement.setAttribute('max', max);
256
+ this.limitTime('max');
257
+ });
258
+ }
259
+ ngAfterContentInit() {
260
+ if (!this.dateInput) {
261
+ throw new Error('Missing child element <cat-date></cat-date>');
262
+ }
263
+ if (!this.timeInput) {
264
+ throw new Error('Missing child element <cat-time></cat-time>');
265
+ }
266
+ }
267
+ writeValue(value) {
268
+ this.lastValue = this.lastDateValue = this.lastTimeValue = value;
269
+ setTimeout(() => {
270
+ this.dateInput?.writeValue(value);
271
+ const timeAfterChangeDate = this.value?.getTime();
272
+ this.limitTime('min');
273
+ this.limitTime('max');
274
+ const isTimeChangedAfterLimit = this.value?.getTime() !== timeAfterChangeDate;
275
+ this.timeInput?.writeValue(value);
276
+ if (isTimeChangedAfterLimit) {
277
+ this.timeInput?.handleChangeEvent(this.timeInput?.nativeElement.value);
278
+ }
279
+ });
280
+ }
281
+ registerOnChange(fn) {
282
+ setTimeout(() => {
283
+ this.dateInput?.registerOnChange((value) => {
284
+ this.lastDateValue = value;
285
+ this.limitTime('min');
286
+ this.limitTime('max');
287
+ fn(this.value);
288
+ });
289
+ this.timeInput?.registerOnChange((value) => {
290
+ this.lastTimeValue = value;
291
+ fn(this.value);
292
+ });
293
+ });
294
+ }
295
+ registerOnTouched(fn) {
296
+ setTimeout(() => {
297
+ this.dateInput?.registerOnTouched(fn);
298
+ this.timeInput?.registerOnTouched(fn);
299
+ });
300
+ }
301
+ setDisabledState(isDisabled) {
302
+ setTimeout(() => {
303
+ this.dateInput?.setDisabledState(isDisabled);
304
+ this.timeInput?.setDisabledState(isDisabled);
305
+ });
306
+ }
307
+ get value() {
308
+ if (this.lastDateValue && this.lastTimeValue) {
309
+ const result = new Date(this.lastDateValue);
310
+ result.setHours(this.lastTimeValue.getHours(), this.lastTimeValue.getMinutes(), this.lastTimeValue.getSeconds(), this.lastTimeValue.getMilliseconds());
311
+ return result;
312
+ }
313
+ return null;
314
+ }
315
+ limitTime(mode) {
316
+ const limit = mode === 'min' ? this.min : this.max;
317
+ const limitIso = limit ? this.toLocalISODate(limit) : undefined;
318
+ const dateIso = this.lastDateValue ? this.toLocalISODate(this.lastDateValue) : undefined;
319
+ const attr = limit && limitIso === dateIso ? this.toLocalISOTime(limit) : undefined;
320
+ if (attr) {
321
+ this.timeInput?.nativeElement.setAttribute(mode, attr);
322
+ }
323
+ else {
324
+ this.timeInput?.nativeElement.removeAttribute(mode);
325
+ }
326
+ }
327
+ toLocalISODate(value) {
328
+ const year = value.getFullYear();
329
+ const month = (value.getMonth() + 1).toString().padStart(2, '0');
330
+ const day = value.getDate().toString().padStart(2, '0');
331
+ return `${year}-${month}-${day}`;
332
+ }
333
+ toLocalISOTime(value) {
334
+ const hours = value.getHours().toString().padStart(2, '0');
335
+ const mins = value.getMinutes().toString().padStart(2, '0');
336
+ return `${hours}:${mins}`;
337
+ }
338
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: DatetimeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
339
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: DatetimeComponent, isStandalone: false, selector: "cat-datetime", inputs: { min: "min", max: "max" }, providers: [
340
+ {
341
+ provide: NG_VALUE_ACCESSOR,
342
+ useExisting: DatetimeComponent,
343
+ multi: true
344
+ }
345
+ ], queries: [{ propertyName: "dateInput", first: true, predicate: DateValueAccessor, descendants: true }, { propertyName: "timeInput", first: true, predicate: TimeValueAccessor, descendants: true }], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: ["cat-datetime{display:contents}\n"], encapsulation: i0.ViewEncapsulation.None });
346
+ }
347
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: DatetimeComponent, decorators: [{
348
+ type: Component,
349
+ args: [{ selector: 'cat-datetime', template: '<ng-content></ng-content>', encapsulation: ViewEncapsulation.None, providers: [
350
+ {
351
+ provide: NG_VALUE_ACCESSOR,
352
+ useExisting: DatetimeComponent,
353
+ multi: true
354
+ }
355
+ ], standalone: false, styles: ["cat-datetime{display:contents}\n"] }]
356
+ }], propDecorators: { dateInput: [{
357
+ type: ContentChild,
358
+ args: [DateValueAccessor]
359
+ }], timeInput: [{
360
+ type: ContentChild,
361
+ args: [TimeValueAccessor]
362
+ }], min: [{
363
+ type: Input
364
+ }], max: [{
365
+ type: Input
366
+ }] } });
367
+
368
+ /**
369
+ * The bottom actions of a dialog.
370
+ */
371
+ class CatDialogActionsComponent {
372
+ /**
373
+ * Horizontal alignment of action buttons.
374
+ */
375
+ align = 'end';
376
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDialogActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
377
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatDialogActionsComponent, isStandalone: false, selector: "cat-dialog-actions", inputs: { align: "align" }, host: { properties: { "class.cat-dialog-actions-center": "align === \"center\"", "class.cat-dialog-actions-end": "align === \"end\"", "class.cat-dialog-actions-space-between": "align === \"space-between\"" }, 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{justify-content:end}.cat-dialog-actions-space-between{justify-content:space-between}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
378
+ }
379
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDialogActionsComponent, decorators: [{
380
+ type: Component,
381
+ args: [{ selector: 'cat-dialog-actions', template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
382
+ class: 'cat-dialog-actions',
383
+ '[class.cat-dialog-actions-center]': 'align === "center"',
384
+ '[class.cat-dialog-actions-end]': 'align === "end"',
385
+ '[class.cat-dialog-actions-space-between]': 'align === "space-between"'
386
+ }, standalone: false, styles: [".cat-dialog-actions-center{justify-content:center}.cat-dialog-actions-end{justify-content:end}.cat-dialog-actions-space-between{justify-content:space-between}\n"] }]
387
+ }], propDecorators: { align: [{
388
+ type: Input
389
+ }] } });
390
+
391
+ /* eslint-disable */
392
+ /* tslint:disable */
393
+ const proxyInputs = (Cmp, inputs) => {
394
+ const Prototype = Cmp.prototype;
395
+ inputs.forEach((item) => {
396
+ Object.defineProperty(Prototype, item, {
397
+ get() {
398
+ return this.el[item];
399
+ },
400
+ set(val) {
401
+ this.z.runOutsideAngular(() => (this.el[item] = val));
402
+ },
403
+ /**
404
+ * In the event that proxyInputs is called
405
+ * multiple times re-defining these inputs
406
+ * will cause an error to be thrown. As a result
407
+ * we set configurable: true to indicate these
408
+ * properties can be changed.
409
+ */
410
+ configurable: true,
411
+ });
412
+ });
413
+ };
414
+ const proxyMethods = (Cmp, methods) => {
415
+ const Prototype = Cmp.prototype;
416
+ methods.forEach((methodName) => {
417
+ Prototype[methodName] = function () {
418
+ const args = arguments;
419
+ return this.z.runOutsideAngular(() => this.el[methodName].apply(this.el, args));
420
+ };
421
+ });
422
+ };
423
+ const proxyOutputs = (instance, el, events) => {
424
+ events.forEach((eventName) => (instance[eventName] = fromEvent(el, eventName)));
425
+ };
426
+ const defineCustomElement = (tagName, customElement) => {
427
+ if (customElement !== undefined && typeof customElements !== 'undefined' && !customElements.get(tagName)) {
428
+ customElements.define(tagName, customElement);
429
+ }
430
+ };
431
+ // tslint:disable-next-line: only-arrow-functions
432
+ function ProxyCmp(opts) {
433
+ const decorator = function (cls) {
434
+ const { defineCustomElementFn, inputs, methods } = opts;
435
+ if (defineCustomElementFn !== undefined) {
436
+ defineCustomElementFn();
437
+ }
438
+ if (inputs) {
439
+ proxyInputs(cls, inputs);
440
+ }
441
+ if (methods) {
442
+ proxyMethods(cls, methods);
443
+ }
444
+ return cls;
445
+ };
446
+ return decorator;
447
+ }
448
+
449
+ let CatAlert = class CatAlert {
450
+ z;
451
+ el;
452
+ constructor(c, r, z) {
453
+ this.z = z;
454
+ c.detach();
455
+ this.el = r.nativeElement;
456
+ }
457
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatAlert, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
458
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatAlert, isStandalone: false, selector: "cat-alert", inputs: { color: "color", icon: "icon", noIcon: "noIcon" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
459
+ };
460
+ CatAlert = __decorate([
461
+ ProxyCmp({
462
+ inputs: ['color', 'icon', 'noIcon']
463
+ })
464
+ ], CatAlert);
465
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatAlert, decorators: [{
466
+ type: Component,
467
+ args: [{
468
+ selector: 'cat-alert',
469
+ changeDetection: ChangeDetectionStrategy.OnPush,
470
+ template: '<ng-content></ng-content>',
471
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
472
+ inputs: ['color', 'icon', 'noIcon'],
473
+ standalone: false
474
+ }]
475
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
476
+ let CatAvatar = class CatAvatar {
477
+ z;
478
+ el;
479
+ constructor(c, r, z) {
480
+ this.z = z;
481
+ c.detach();
482
+ this.el = r.nativeElement;
483
+ }
484
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatAvatar, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
485
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatAvatar, isStandalone: false, selector: "cat-avatar", inputs: { icon: "icon", initials: "initials", label: "label", round: "round", size: "size", src: "src", url: "url", urlTarget: "urlTarget" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
486
+ };
487
+ CatAvatar = __decorate([
488
+ ProxyCmp({
489
+ inputs: ['icon', 'initials', 'label', 'round', 'size', 'src', 'url', 'urlTarget']
490
+ })
491
+ ], CatAvatar);
492
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatAvatar, decorators: [{
493
+ type: Component,
494
+ args: [{
495
+ selector: 'cat-avatar',
496
+ changeDetection: ChangeDetectionStrategy.OnPush,
497
+ template: '<ng-content></ng-content>',
498
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
499
+ inputs: ['icon', 'initials', 'label', 'round', 'size', 'src', 'url', 'urlTarget'],
500
+ standalone: false
501
+ }]
502
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
503
+ let CatBadge = class CatBadge {
504
+ z;
505
+ el;
506
+ constructor(c, r, z) {
507
+ this.z = z;
508
+ c.detach();
509
+ this.el = r.nativeElement;
510
+ }
511
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatBadge, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
512
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatBadge, isStandalone: false, selector: "cat-badge", inputs: { color: "color", icon: "icon", iconOnly: "iconOnly", iconRight: "iconRight", pulse: "pulse", round: "round", size: "size", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
513
+ };
514
+ CatBadge = __decorate([
515
+ ProxyCmp({
516
+ inputs: ['color', 'icon', 'iconOnly', 'iconRight', 'pulse', 'round', 'size', 'variant']
517
+ })
518
+ ], CatBadge);
519
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatBadge, decorators: [{
520
+ type: Component,
521
+ args: [{
522
+ selector: 'cat-badge',
523
+ changeDetection: ChangeDetectionStrategy.OnPush,
524
+ template: '<ng-content></ng-content>',
525
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
526
+ inputs: ['color', 'icon', 'iconOnly', 'iconRight', 'pulse', 'round', 'size', 'variant'],
527
+ standalone: false
528
+ }]
529
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
530
+ let CatButton = class CatButton {
531
+ z;
532
+ el;
533
+ catClick = new EventEmitter();
534
+ catFocus = new EventEmitter();
535
+ catBlur = new EventEmitter();
536
+ constructor(c, r, z) {
537
+ this.z = z;
538
+ c.detach();
539
+ this.el = r.nativeElement;
540
+ }
541
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
542
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatButton, isStandalone: false, selector: "cat-button", inputs: { a11yCurrent: "a11yCurrent", a11yLabel: "a11yLabel", active: "active", buttonGroupPosition: "buttonGroupPosition", buttonId: "buttonId", color: "color", disabled: "disabled", icon: "icon", iconOnly: "iconOnly", iconRight: "iconRight", loading: "loading", name: "name", nativeAttributes: "nativeAttributes", nativeContentAttributes: "nativeContentAttributes", noEllipsis: "noEllipsis", round: "round", size: "size", submit: "submit", testId: "testId", url: "url", urlTarget: "urlTarget", value: "value", variant: "variant" }, outputs: { catClick: "catClick", catFocus: "catFocus", catBlur: "catBlur" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
543
+ };
544
+ CatButton = __decorate([
545
+ ProxyCmp({
546
+ inputs: ['a11yCurrent', 'a11yLabel', 'active', 'buttonGroupPosition', 'buttonId', 'color', 'disabled', 'icon', 'iconOnly', 'iconRight', 'loading', 'name', 'nativeAttributes', 'nativeContentAttributes', 'noEllipsis', 'round', 'size', 'submit', 'testId', 'url', 'urlTarget', 'value', 'variant'],
547
+ methods: ['doFocus', 'doBlur', 'doClick']
548
+ })
549
+ ], CatButton);
550
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatButton, decorators: [{
551
+ type: Component,
552
+ args: [{
553
+ selector: 'cat-button',
554
+ changeDetection: ChangeDetectionStrategy.OnPush,
555
+ template: '<ng-content></ng-content>',
556
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
557
+ inputs: ['a11yCurrent', 'a11yLabel', 'active', 'buttonGroupPosition', 'buttonId', 'color', 'disabled', 'icon', 'iconOnly', 'iconRight', 'loading', 'name', 'nativeAttributes', 'nativeContentAttributes', 'noEllipsis', 'round', 'size', 'submit', 'testId', 'url', 'urlTarget', 'value', 'variant'],
558
+ outputs: ['catClick', 'catFocus', 'catBlur'],
559
+ standalone: false
560
+ }]
561
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catClick: [{
562
+ type: Output
563
+ }], catFocus: [{
564
+ type: Output
565
+ }], catBlur: [{
566
+ type: Output
567
+ }] } });
568
+ let CatButtonGroup = class CatButtonGroup {
569
+ z;
570
+ el;
571
+ constructor(c, r, z) {
572
+ this.z = z;
573
+ c.detach();
574
+ this.el = r.nativeElement;
575
+ }
576
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatButtonGroup, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
577
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatButtonGroup, isStandalone: false, selector: "cat-button-group", inputs: { a11yLabel: "a11yLabel" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
578
+ };
579
+ CatButtonGroup = __decorate([
580
+ ProxyCmp({
581
+ inputs: ['a11yLabel']
582
+ })
583
+ ], CatButtonGroup);
584
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatButtonGroup, decorators: [{
585
+ type: Component,
586
+ args: [{
587
+ selector: 'cat-button-group',
588
+ changeDetection: ChangeDetectionStrategy.OnPush,
589
+ template: '<ng-content></ng-content>',
590
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
591
+ inputs: ['a11yLabel'],
592
+ standalone: false
593
+ }]
594
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
595
+ let CatCard = class CatCard {
596
+ z;
597
+ el;
598
+ catLoad = new EventEmitter();
599
+ constructor(c, r, z) {
600
+ this.z = z;
601
+ c.detach();
602
+ this.el = r.nativeElement;
603
+ }
604
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatCard, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
605
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatCard, isStandalone: false, selector: "cat-card", outputs: { catLoad: "catLoad" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
606
+ };
607
+ CatCard = __decorate([
608
+ ProxyCmp({})
609
+ ], CatCard);
610
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatCard, decorators: [{
611
+ type: Component,
612
+ args: [{
613
+ selector: 'cat-card',
614
+ changeDetection: ChangeDetectionStrategy.OnPush,
615
+ template: '<ng-content></ng-content>',
616
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
617
+ inputs: [],
618
+ outputs: ['catLoad'],
619
+ standalone: false
620
+ }]
621
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catLoad: [{
622
+ type: Output
623
+ }] } });
624
+ let CatCheckbox = class CatCheckbox {
625
+ z;
626
+ el;
627
+ catChange = new EventEmitter();
628
+ catFocus = new EventEmitter();
629
+ catBlur = new EventEmitter();
630
+ constructor(c, r, z) {
631
+ this.z = z;
632
+ c.detach();
633
+ this.el = r.nativeElement;
634
+ }
635
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatCheckbox, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
636
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatCheckbox, isStandalone: false, selector: "cat-checkbox", inputs: { alignment: "alignment", checked: "checked", disabled: "disabled", hint: "hint", identifier: "identifier", indeterminate: "indeterminate", label: "label", labelHidden: "labelHidden", labelLeft: "labelLeft", name: "name", nativeAttributes: "nativeAttributes", noValue: "noValue", required: "required", requiredMarker: "requiredMarker", resolvedValue: "resolvedValue", testId: "testId", value: "value" }, outputs: { catChange: "catChange", catFocus: "catFocus", catBlur: "catBlur" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
637
+ };
638
+ CatCheckbox = __decorate([
639
+ ProxyCmp({
640
+ inputs: ['alignment', 'checked', 'disabled', 'hint', 'identifier', 'indeterminate', 'label', 'labelHidden', 'labelLeft', 'name', 'nativeAttributes', 'noValue', 'required', 'requiredMarker', 'resolvedValue', 'testId', 'value'],
641
+ methods: ['doFocus', 'doBlur']
642
+ })
643
+ ], CatCheckbox);
644
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatCheckbox, decorators: [{
645
+ type: Component,
646
+ args: [{
647
+ selector: 'cat-checkbox',
648
+ changeDetection: ChangeDetectionStrategy.OnPush,
649
+ template: '<ng-content></ng-content>',
650
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
651
+ inputs: ['alignment', 'checked', 'disabled', 'hint', 'identifier', 'indeterminate', 'label', 'labelHidden', 'labelLeft', 'name', 'nativeAttributes', 'noValue', 'required', 'requiredMarker', 'resolvedValue', 'testId', 'value'],
652
+ outputs: ['catChange', 'catFocus', 'catBlur'],
653
+ standalone: false
654
+ }]
655
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
656
+ type: Output
657
+ }], catFocus: [{
658
+ type: Output
659
+ }], catBlur: [{
660
+ type: Output
661
+ }] } });
662
+ let CatDate = class CatDate {
663
+ z;
664
+ el;
665
+ catChange = new EventEmitter();
666
+ catFocus = new EventEmitter();
667
+ catBlur = new EventEmitter();
668
+ constructor(c, r, z) {
669
+ this.z = z;
670
+ c.detach();
671
+ this.el = r.nativeElement;
672
+ }
673
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDate, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
674
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatDate, isStandalone: false, selector: "cat-date", inputs: { autoComplete: "autoComplete", clearable: "clearable", disabled: "disabled", errorUpdate: "errorUpdate", errors: "errors", hint: "hint", horizontal: "horizontal", icon: "icon", iconRight: "iconRight", identifier: "identifier", label: "label", labelHidden: "labelHidden", max: "max", min: "min", name: "name", nativeAttributes: "nativeAttributes", placeholder: "placeholder", placement: "placement", readonly: "readonly", required: "required", requiredMarker: "requiredMarker", testId: "testId", textPrefix: "textPrefix", textSuffix: "textSuffix", value: "value" }, outputs: { catChange: "catChange", catFocus: "catFocus", catBlur: "catBlur" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
675
+ };
676
+ CatDate = __decorate([
677
+ ProxyCmp({
678
+ inputs: ['autoComplete', 'clearable', 'disabled', 'errorUpdate', 'errors', 'hint', 'horizontal', 'icon', 'iconRight', 'identifier', 'label', 'labelHidden', 'max', 'min', 'name', 'nativeAttributes', 'placeholder', 'placement', 'readonly', 'required', 'requiredMarker', 'testId', 'textPrefix', 'textSuffix', 'value'],
679
+ methods: ['doFocus', 'doBlur', 'clear']
680
+ })
681
+ ], CatDate);
682
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDate, decorators: [{
683
+ type: Component,
684
+ args: [{
685
+ selector: 'cat-date',
686
+ changeDetection: ChangeDetectionStrategy.OnPush,
687
+ template: '<ng-content></ng-content>',
688
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
689
+ inputs: ['autoComplete', 'clearable', 'disabled', 'errorUpdate', 'errors', 'hint', 'horizontal', 'icon', 'iconRight', 'identifier', 'label', 'labelHidden', 'max', 'min', 'name', 'nativeAttributes', 'placeholder', 'placement', 'readonly', 'required', 'requiredMarker', 'testId', 'textPrefix', 'textSuffix', 'value'],
690
+ outputs: ['catChange', 'catFocus', 'catBlur'],
691
+ standalone: false
692
+ }]
693
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
694
+ type: Output
695
+ }], catFocus: [{
696
+ type: Output
697
+ }], catBlur: [{
698
+ type: Output
699
+ }] } });
700
+ let CatDateInline = class CatDateInline {
701
+ z;
702
+ el;
703
+ catChange = new EventEmitter();
704
+ constructor(c, r, z) {
705
+ this.z = z;
706
+ c.detach();
707
+ this.el = r.nativeElement;
708
+ }
709
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDateInline, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
710
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatDateInline, isStandalone: false, selector: "cat-date-inline", inputs: { a11yLabel: "a11yLabel", hint: "hint", identifier: "identifier", label: "label", labelHidden: "labelHidden", max: "max", min: "min", noClear: "noClear", noToday: "noToday", range: "range", required: "required", requiredMarker: "requiredMarker", value: "value", weeks: "weeks" }, outputs: { catChange: "catChange" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
711
+ };
712
+ CatDateInline = __decorate([
713
+ ProxyCmp({
714
+ inputs: ['a11yLabel', 'hint', 'identifier', 'label', 'labelHidden', 'max', 'min', 'noClear', 'noToday', 'range', 'required', 'requiredMarker', 'value', 'weeks'],
715
+ methods: ['select', 'clear', 'resetView', 'doFocus']
716
+ })
717
+ ], CatDateInline);
718
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDateInline, decorators: [{
719
+ type: Component,
720
+ args: [{
721
+ selector: 'cat-date-inline',
722
+ changeDetection: ChangeDetectionStrategy.OnPush,
723
+ template: '<ng-content></ng-content>',
724
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
725
+ inputs: ['a11yLabel', 'hint', 'identifier', 'label', 'labelHidden', 'max', 'min', 'noClear', 'noToday', 'range', 'required', 'requiredMarker', 'value', 'weeks'],
726
+ outputs: ['catChange'],
727
+ standalone: false
728
+ }]
729
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
730
+ type: Output
731
+ }] } });
732
+ let CatDatepicker = class CatDatepicker {
733
+ z;
734
+ el;
735
+ catChange = new EventEmitter();
736
+ catFocus = new EventEmitter();
737
+ catBlur = new EventEmitter();
738
+ constructor(c, r, z) {
739
+ this.z = z;
740
+ c.detach();
741
+ this.el = r.nativeElement;
742
+ }
743
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDatepicker, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
744
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatDatepicker, isStandalone: false, selector: "cat-datepicker", inputs: { attachToElement: "attachToElement", autoComplete: "autoComplete", clearable: "clearable", disabled: "disabled", errorUpdate: "errorUpdate", errors: "errors", hint: "hint", horizontal: "horizontal", icon: "icon", iconRight: "iconRight", identifier: "identifier", label: "label", labelHidden: "labelHidden", max: "max", min: "min", mode: "mode", name: "name", nativeAttributes: "nativeAttributes", nativePickerAttributes: "nativePickerAttributes", placeholder: "placeholder", position: "position", readonly: "readonly", required: "required", requiredMarker: "requiredMarker", step: "step", textPrefix: "textPrefix", textSuffix: "textSuffix", value: "value" }, outputs: { catChange: "catChange", catFocus: "catFocus", catBlur: "catBlur" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
745
+ };
746
+ CatDatepicker = __decorate([
747
+ ProxyCmp({
748
+ inputs: ['attachToElement', 'autoComplete', 'clearable', 'disabled', 'errorUpdate', 'errors', 'hint', 'horizontal', 'icon', 'iconRight', 'identifier', 'label', 'labelHidden', 'max', 'min', 'mode', 'name', 'nativeAttributes', 'nativePickerAttributes', 'placeholder', 'position', 'readonly', 'required', 'requiredMarker', 'step', 'textPrefix', 'textSuffix', 'value'],
749
+ methods: ['doFocus', 'doBlur']
750
+ })
751
+ ], CatDatepicker);
752
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDatepicker, decorators: [{
753
+ type: Component,
754
+ args: [{
755
+ selector: 'cat-datepicker',
756
+ changeDetection: ChangeDetectionStrategy.OnPush,
757
+ template: '<ng-content></ng-content>',
758
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
759
+ inputs: ['attachToElement', 'autoComplete', 'clearable', 'disabled', 'errorUpdate', 'errors', 'hint', 'horizontal', 'icon', 'iconRight', 'identifier', 'label', 'labelHidden', 'max', 'min', 'mode', 'name', 'nativeAttributes', 'nativePickerAttributes', 'placeholder', 'position', 'readonly', 'required', 'requiredMarker', 'step', 'textPrefix', 'textSuffix', 'value'],
760
+ outputs: ['catChange', 'catFocus', 'catBlur'],
761
+ standalone: false
762
+ }]
763
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
764
+ type: Output
765
+ }], catFocus: [{
766
+ type: Output
767
+ }], catBlur: [{
768
+ type: Output
769
+ }] } });
770
+ let CatDatepickerInline = class CatDatepickerInline {
771
+ z;
772
+ el;
773
+ catChange = new EventEmitter();
774
+ constructor(c, r, z) {
775
+ this.z = z;
776
+ c.detach();
777
+ this.el = r.nativeElement;
778
+ }
779
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDatepickerInline, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
780
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatDatepickerInline, isStandalone: false, selector: "cat-datepicker-inline", inputs: { disabled: "disabled", max: "max", min: "min", mode: "mode", nativePickerAttributes: "nativePickerAttributes", readonly: "readonly", step: "step", value: "value" }, outputs: { catChange: "catChange" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
781
+ };
782
+ CatDatepickerInline = __decorate([
783
+ ProxyCmp({
784
+ inputs: ['disabled', 'max', 'min', 'mode', 'nativePickerAttributes', 'readonly', 'step', 'value']
785
+ })
786
+ ], CatDatepickerInline);
787
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDatepickerInline, decorators: [{
788
+ type: Component,
789
+ args: [{
790
+ selector: 'cat-datepicker-inline',
791
+ changeDetection: ChangeDetectionStrategy.OnPush,
792
+ template: '<ng-content></ng-content>',
793
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
794
+ inputs: ['disabled', 'max', 'min', 'mode', 'nativePickerAttributes', 'readonly', 'step', 'value'],
795
+ outputs: ['catChange'],
796
+ standalone: false
797
+ }]
798
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
799
+ type: Output
800
+ }] } });
801
+ let CatDropdown = class CatDropdown {
802
+ z;
803
+ el;
804
+ catOpen = new EventEmitter();
805
+ catClose = new EventEmitter();
806
+ constructor(c, r, z) {
807
+ this.z = z;
808
+ c.detach();
809
+ this.el = r.nativeElement;
810
+ }
811
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDropdown, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
812
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatDropdown, isStandalone: false, selector: "cat-dropdown", inputs: { arrowNavigation: "arrowNavigation", delayedTriggerInit: "delayedTriggerInit", isOpen: "isOpen", justify: "justify", noAutoClose: "noAutoClose", noInitialFocus: "noInitialFocus", noResize: "noResize", noReturnFocus: "noReturnFocus", overflow: "overflow", placement: "placement" }, outputs: { catOpen: "catOpen", catClose: "catClose" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
813
+ };
814
+ CatDropdown = __decorate([
815
+ ProxyCmp({
816
+ inputs: ['arrowNavigation', 'delayedTriggerInit', 'isOpen', 'justify', 'noAutoClose', 'noInitialFocus', 'noResize', 'noReturnFocus', 'overflow', 'placement'],
817
+ methods: ['toggle', 'open', 'close']
818
+ })
819
+ ], CatDropdown);
820
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDropdown, decorators: [{
821
+ type: Component,
822
+ args: [{
823
+ selector: 'cat-dropdown',
824
+ changeDetection: ChangeDetectionStrategy.OnPush,
825
+ template: '<ng-content></ng-content>',
826
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
827
+ inputs: ['arrowNavigation', 'delayedTriggerInit', 'isOpen', 'justify', 'noAutoClose', 'noInitialFocus', 'noResize', 'noReturnFocus', 'overflow', 'placement'],
828
+ outputs: ['catOpen', 'catClose'],
829
+ standalone: false
830
+ }]
831
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catOpen: [{
832
+ type: Output
833
+ }], catClose: [{
834
+ type: Output
835
+ }] } });
836
+ let CatFormGroup = class CatFormGroup {
837
+ z;
838
+ el;
839
+ constructor(c, r, z) {
840
+ this.z = z;
841
+ c.detach();
842
+ this.el = r.nativeElement;
843
+ }
844
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatFormGroup, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
845
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatFormGroup, isStandalone: false, selector: "cat-form-group", inputs: { horizontal: "horizontal", labelSize: "labelSize", requiredMarker: "requiredMarker" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
846
+ };
847
+ CatFormGroup = __decorate([
848
+ ProxyCmp({
849
+ inputs: ['horizontal', 'labelSize', 'requiredMarker']
850
+ })
851
+ ], CatFormGroup);
852
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatFormGroup, decorators: [{
853
+ type: Component,
854
+ args: [{
855
+ selector: 'cat-form-group',
856
+ changeDetection: ChangeDetectionStrategy.OnPush,
857
+ template: '<ng-content></ng-content>',
858
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
859
+ inputs: ['horizontal', 'labelSize', 'requiredMarker'],
860
+ standalone: false
861
+ }]
862
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
863
+ let CatIcon = class CatIcon {
864
+ z;
865
+ el;
866
+ constructor(c, r, z) {
867
+ this.z = z;
868
+ c.detach();
869
+ this.el = r.nativeElement;
870
+ }
871
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatIcon, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
872
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatIcon, isStandalone: false, selector: "cat-icon", inputs: { a11yLabel: "a11yLabel", icon: "icon", iconSrc: "iconSrc", size: "size" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
873
+ };
874
+ CatIcon = __decorate([
875
+ ProxyCmp({
876
+ inputs: ['a11yLabel', 'icon', 'iconSrc', 'size']
877
+ })
878
+ ], CatIcon);
879
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatIcon, decorators: [{
880
+ type: Component,
881
+ args: [{
882
+ selector: 'cat-icon',
883
+ changeDetection: ChangeDetectionStrategy.OnPush,
884
+ template: '<ng-content></ng-content>',
885
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
886
+ inputs: ['a11yLabel', 'icon', 'iconSrc', 'size'],
887
+ standalone: false
888
+ }]
889
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
890
+ let CatInput = class CatInput {
891
+ z;
892
+ el;
893
+ catChange = new EventEmitter();
894
+ catFocus = new EventEmitter();
895
+ catBlur = new EventEmitter();
896
+ catChangeFiles = new EventEmitter();
897
+ constructor(c, r, z) {
898
+ this.z = z;
899
+ c.detach();
900
+ this.el = r.nativeElement;
901
+ }
902
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
903
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatInput, isStandalone: false, selector: "cat-input", inputs: { accept: "accept", autoComplete: "autoComplete", clearable: "clearable", dateMaskOptions: "dateMaskOptions", disabled: "disabled", errorUpdate: "errorUpdate", errors: "errors", hint: "hint", horizontal: "horizontal", icon: "icon", iconRight: "iconRight", identifier: "identifier", label: "label", labelHidden: "labelHidden", loading: "loading", max: "max", maxLength: "maxLength", min: "min", minLength: "minLength", multiple: "multiple", name: "name", nativeAttributes: "nativeAttributes", placeholder: "placeholder", readonly: "readonly", required: "required", requiredMarker: "requiredMarker", round: "round", testId: "testId", textPrefix: "textPrefix", textSuffix: "textSuffix", timeMaskOptions: "timeMaskOptions", togglePassword: "togglePassword", type: "type", value: "value" }, outputs: { catChange: "catChange", catFocus: "catFocus", catBlur: "catBlur", catChangeFiles: "catChangeFiles" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
904
+ };
905
+ CatInput = __decorate([
906
+ ProxyCmp({
907
+ inputs: ['accept', 'autoComplete', 'clearable', 'dateMaskOptions', 'disabled', 'errorUpdate', 'errors', 'hint', 'horizontal', 'icon', 'iconRight', 'identifier', 'label', 'labelHidden', 'loading', 'max', 'maxLength', 'min', 'minLength', 'multiple', 'name', 'nativeAttributes', 'placeholder', 'readonly', 'required', 'requiredMarker', 'round', 'testId', 'textPrefix', 'textSuffix', 'timeMaskOptions', 'togglePassword', 'type', 'value'],
908
+ methods: ['doFocus', 'doBlur', 'clear']
909
+ })
910
+ ], CatInput);
911
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatInput, decorators: [{
912
+ type: Component,
913
+ args: [{
914
+ selector: 'cat-input',
915
+ changeDetection: ChangeDetectionStrategy.OnPush,
916
+ template: '<ng-content></ng-content>',
917
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
918
+ inputs: ['accept', 'autoComplete', 'clearable', 'dateMaskOptions', 'disabled', 'errorUpdate', 'errors', 'hint', 'horizontal', 'icon', 'iconRight', 'identifier', 'label', 'labelHidden', 'loading', 'max', 'maxLength', 'min', 'minLength', 'multiple', 'name', 'nativeAttributes', 'placeholder', 'readonly', 'required', 'requiredMarker', 'round', 'testId', 'textPrefix', 'textSuffix', 'timeMaskOptions', 'togglePassword', 'type', 'value'],
919
+ outputs: ['catChange', 'catFocus', 'catBlur', 'catChangeFiles'],
920
+ standalone: false
921
+ }]
922
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
923
+ type: Output
924
+ }], catFocus: [{
925
+ type: Output
926
+ }], catBlur: [{
927
+ type: Output
928
+ }], catChangeFiles: [{
929
+ type: Output
930
+ }] } });
931
+ let CatPagination = class CatPagination {
932
+ z;
933
+ el;
934
+ catChange = new EventEmitter();
935
+ constructor(c, r, z) {
936
+ this.z = z;
937
+ c.detach();
938
+ this.el = r.nativeElement;
939
+ }
940
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatPagination, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
941
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatPagination, isStandalone: false, selector: "cat-pagination", inputs: { activePadding: "activePadding", compact: "compact", iconNext: "iconNext", iconPrev: "iconPrev", page: "page", pageCount: "pageCount", round: "round", sidePadding: "sidePadding", size: "size", variant: "variant" }, outputs: { catChange: "catChange" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
942
+ };
943
+ CatPagination = __decorate([
944
+ ProxyCmp({
945
+ inputs: ['activePadding', 'compact', 'iconNext', 'iconPrev', 'page', 'pageCount', 'round', 'sidePadding', 'size', 'variant']
946
+ })
947
+ ], CatPagination);
948
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatPagination, decorators: [{
949
+ type: Component,
950
+ args: [{
951
+ selector: 'cat-pagination',
952
+ changeDetection: ChangeDetectionStrategy.OnPush,
953
+ template: '<ng-content></ng-content>',
954
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
955
+ inputs: ['activePadding', 'compact', 'iconNext', 'iconPrev', 'page', 'pageCount', 'round', 'sidePadding', 'size', 'variant'],
956
+ outputs: ['catChange'],
957
+ standalone: false
958
+ }]
959
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
960
+ type: Output
961
+ }] } });
962
+ let CatRadio = class CatRadio {
963
+ z;
964
+ el;
965
+ catChange = new EventEmitter();
966
+ catFocus = new EventEmitter();
967
+ catBlur = new EventEmitter();
968
+ constructor(c, r, z) {
969
+ this.z = z;
970
+ c.detach();
971
+ this.el = r.nativeElement;
972
+ }
973
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatRadio, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
974
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatRadio, isStandalone: false, selector: "cat-radio", inputs: { alignment: "alignment", checked: "checked", disabled: "disabled", hint: "hint", identifier: "identifier", label: "label", labelHidden: "labelHidden", labelLeft: "labelLeft", name: "name", nativeAttributes: "nativeAttributes", required: "required", testId: "testId", value: "value" }, outputs: { catChange: "catChange", catFocus: "catFocus", catBlur: "catBlur" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
975
+ };
976
+ CatRadio = __decorate([
977
+ ProxyCmp({
978
+ inputs: ['alignment', 'checked', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'labelLeft', 'name', 'nativeAttributes', 'required', 'testId', 'value'],
979
+ methods: ['doFocus', 'doBlur']
980
+ })
981
+ ], CatRadio);
982
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatRadio, decorators: [{
983
+ type: Component,
984
+ args: [{
985
+ selector: 'cat-radio',
986
+ changeDetection: ChangeDetectionStrategy.OnPush,
987
+ template: '<ng-content></ng-content>',
988
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
989
+ inputs: ['alignment', 'checked', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'labelLeft', 'name', 'nativeAttributes', 'required', 'testId', 'value'],
990
+ outputs: ['catChange', 'catFocus', 'catBlur'],
991
+ standalone: false
992
+ }]
993
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
994
+ type: Output
995
+ }], catFocus: [{
996
+ type: Output
997
+ }], catBlur: [{
998
+ type: Output
999
+ }] } });
1000
+ let CatRadioGroup = class CatRadioGroup {
1001
+ z;
1002
+ el;
1003
+ catChange = new EventEmitter();
1004
+ catFocus = new EventEmitter();
1005
+ catBlur = new EventEmitter();
1006
+ constructor(c, r, z) {
1007
+ this.z = z;
1008
+ c.detach();
1009
+ this.el = r.nativeElement;
1010
+ }
1011
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatRadioGroup, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1012
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatRadioGroup, isStandalone: false, selector: "cat-radio-group", inputs: { a11yLabel: "a11yLabel", disabled: "disabled", labelLeft: "labelLeft", name: "name", value: "value" }, outputs: { catChange: "catChange", catFocus: "catFocus", catBlur: "catBlur" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1013
+ };
1014
+ CatRadioGroup = __decorate([
1015
+ ProxyCmp({
1016
+ inputs: ['a11yLabel', 'disabled', 'labelLeft', 'name', 'value']
1017
+ })
1018
+ ], CatRadioGroup);
1019
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatRadioGroup, decorators: [{
1020
+ type: Component,
1021
+ args: [{
1022
+ selector: 'cat-radio-group',
1023
+ changeDetection: ChangeDetectionStrategy.OnPush,
1024
+ template: '<ng-content></ng-content>',
1025
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1026
+ inputs: ['a11yLabel', 'disabled', 'labelLeft', 'name', 'value'],
1027
+ outputs: ['catChange', 'catFocus', 'catBlur'],
1028
+ standalone: false
1029
+ }]
1030
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
1031
+ type: Output
1032
+ }], catFocus: [{
1033
+ type: Output
1034
+ }], catBlur: [{
1035
+ type: Output
1036
+ }] } });
1037
+ let CatScrollable = class CatScrollable {
1038
+ z;
1039
+ el;
1040
+ scrolledTop = new EventEmitter();
1041
+ scrolledLeft = new EventEmitter();
1042
+ scrolledRight = new EventEmitter();
1043
+ scrolledBottom = new EventEmitter();
1044
+ constructor(c, r, z) {
1045
+ this.z = z;
1046
+ c.detach();
1047
+ this.el = r.nativeElement;
1048
+ }
1049
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatScrollable, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1050
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatScrollable, isStandalone: false, selector: "cat-scrollable", inputs: { noOverflowX: "noOverflowX", noOverflowY: "noOverflowY", noOverscroll: "noOverscroll", noScrolledInit: "noScrolledInit", noShadowX: "noShadowX", noShadowY: "noShadowY", scrolledBuffer: "scrolledBuffer" }, outputs: { scrolledTop: "scrolledTop", scrolledLeft: "scrolledLeft", scrolledRight: "scrolledRight", scrolledBottom: "scrolledBottom" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1051
+ };
1052
+ CatScrollable = __decorate([
1053
+ ProxyCmp({
1054
+ inputs: ['noOverflowX', 'noOverflowY', 'noOverscroll', 'noScrolledInit', 'noShadowX', 'noShadowY', 'scrolledBuffer']
1055
+ })
1056
+ ], CatScrollable);
1057
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatScrollable, decorators: [{
1058
+ type: Component,
1059
+ args: [{
1060
+ selector: 'cat-scrollable',
1061
+ changeDetection: ChangeDetectionStrategy.OnPush,
1062
+ template: '<ng-content></ng-content>',
1063
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1064
+ inputs: ['noOverflowX', 'noOverflowY', 'noOverscroll', 'noScrolledInit', 'noShadowX', 'noShadowY', 'scrolledBuffer'],
1065
+ outputs: ['scrolledTop', 'scrolledLeft', 'scrolledRight', 'scrolledBottom'],
1066
+ standalone: false
1067
+ }]
1068
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { scrolledTop: [{
1069
+ type: Output
1070
+ }], scrolledLeft: [{
1071
+ type: Output
1072
+ }], scrolledRight: [{
1073
+ type: Output
1074
+ }], scrolledBottom: [{
1075
+ type: Output
1076
+ }] } });
1077
+ let CatSelect = class CatSelect {
1078
+ z;
1079
+ el;
1080
+ catOpen = new EventEmitter();
1081
+ catClose = new EventEmitter();
1082
+ catChange = new EventEmitter();
1083
+ catBlur = new EventEmitter();
1084
+ constructor(c, r, z) {
1085
+ this.z = z;
1086
+ c.detach();
1087
+ this.el = r.nativeElement;
1088
+ }
1089
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatSelect, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1090
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatSelect, isStandalone: false, selector: "cat-select", inputs: { clearable: "clearable", debounce: "debounce", disabled: "disabled", errorUpdate: "errorUpdate", errors: "errors", hint: "hint", horizontal: "horizontal", 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", testId: "testId", value: "value" }, outputs: { catOpen: "catOpen", catClose: "catClose", catChange: "catChange", catBlur: "catBlur" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1091
+ };
1092
+ CatSelect = __decorate([
1093
+ ProxyCmp({
1094
+ inputs: ['clearable', 'debounce', 'disabled', 'errorUpdate', 'errors', 'hint', 'horizontal', 'identifier', 'label', 'labelHidden', 'multiple', 'name', 'nativeAttributes', 'noItems', 'placeholder', 'placement', 'required', 'requiredMarker', 'tagHint', 'tags', 'testId', 'value'],
1095
+ methods: ['doFocus', 'doBlur', 'clear', 'connect']
1096
+ })
1097
+ ], CatSelect);
1098
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatSelect, decorators: [{
1099
+ type: Component,
1100
+ args: [{
1101
+ selector: 'cat-select',
1102
+ changeDetection: ChangeDetectionStrategy.OnPush,
1103
+ template: '<ng-content></ng-content>',
1104
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1105
+ inputs: ['clearable', 'debounce', 'disabled', 'errorUpdate', 'errors', 'hint', 'horizontal', 'identifier', 'label', 'labelHidden', 'multiple', 'name', 'nativeAttributes', 'noItems', 'placeholder', 'placement', 'required', 'requiredMarker', 'tagHint', 'tags', 'testId', 'value'],
1106
+ outputs: ['catOpen', 'catClose', 'catChange', 'catBlur'],
1107
+ standalone: false
1108
+ }]
1109
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catOpen: [{
1110
+ type: Output
1111
+ }], catClose: [{
1112
+ type: Output
1113
+ }], catChange: [{
1114
+ type: Output
1115
+ }], catBlur: [{
1116
+ type: Output
1117
+ }] } });
1118
+ let CatSelectDemo = class CatSelectDemo {
1119
+ z;
1120
+ el;
1121
+ constructor(c, r, z) {
1122
+ this.z = z;
1123
+ c.detach();
1124
+ this.el = r.nativeElement;
1125
+ }
1126
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatSelectDemo, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1127
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatSelectDemo, isStandalone: false, selector: "cat-select-demo", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1128
+ };
1129
+ CatSelectDemo = __decorate([
1130
+ ProxyCmp({})
1131
+ ], CatSelectDemo);
1132
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatSelectDemo, decorators: [{
1133
+ type: Component,
1134
+ args: [{
1135
+ selector: 'cat-select-demo',
1136
+ changeDetection: ChangeDetectionStrategy.OnPush,
1137
+ template: '<ng-content></ng-content>',
1138
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1139
+ inputs: [],
1140
+ standalone: false
1141
+ }]
1142
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
1143
+ let CatSkeleton = class CatSkeleton {
1144
+ z;
1145
+ el;
1146
+ constructor(c, r, z) {
1147
+ this.z = z;
1148
+ c.detach();
1149
+ this.el = r.nativeElement;
1150
+ }
1151
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatSkeleton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1152
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatSkeleton, isStandalone: false, selector: "cat-skeleton", inputs: { effect: "effect", lines: "lines", size: "size", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1153
+ };
1154
+ CatSkeleton = __decorate([
1155
+ ProxyCmp({
1156
+ inputs: ['effect', 'lines', 'size', 'variant']
1157
+ })
1158
+ ], CatSkeleton);
1159
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatSkeleton, decorators: [{
1160
+ type: Component,
1161
+ args: [{
1162
+ selector: 'cat-skeleton',
1163
+ changeDetection: ChangeDetectionStrategy.OnPush,
1164
+ template: '<ng-content></ng-content>',
1165
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1166
+ inputs: ['effect', 'lines', 'size', 'variant'],
1167
+ standalone: false
1168
+ }]
1169
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
1170
+ let CatSpinner = class CatSpinner {
1171
+ z;
1172
+ el;
1173
+ constructor(c, r, z) {
1174
+ this.z = z;
1175
+ c.detach();
1176
+ this.el = r.nativeElement;
1177
+ }
1178
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatSpinner, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1179
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatSpinner, isStandalone: false, selector: "cat-spinner", inputs: { a11yLabel: "a11yLabel", size: "size", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1180
+ };
1181
+ CatSpinner = __decorate([
1182
+ ProxyCmp({
1183
+ inputs: ['a11yLabel', 'size', 'value']
1184
+ })
1185
+ ], CatSpinner);
1186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatSpinner, decorators: [{
1187
+ type: Component,
1188
+ args: [{
1189
+ selector: 'cat-spinner',
1190
+ changeDetection: ChangeDetectionStrategy.OnPush,
1191
+ template: '<ng-content></ng-content>',
1192
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1193
+ inputs: ['a11yLabel', 'size', 'value'],
1194
+ standalone: false
1195
+ }]
1196
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
1197
+ let CatTab = class CatTab {
1198
+ z;
1199
+ el;
1200
+ catClick = new EventEmitter();
1201
+ constructor(c, r, z) {
1202
+ this.z = z;
1203
+ c.detach();
1204
+ this.el = r.nativeElement;
1205
+ }
1206
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTab, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1207
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatTab, isStandalone: false, selector: "cat-tab", inputs: { deactivated: "deactivated", error: "error", icon: "icon", iconOnly: "iconOnly", iconRight: "iconRight", label: "label", nativeAttributes: "nativeAttributes", noActive: "noActive", sticky: "sticky", testId: "testId", url: "url", urlTarget: "urlTarget" }, outputs: { catClick: "catClick" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1208
+ };
1209
+ CatTab = __decorate([
1210
+ ProxyCmp({
1211
+ inputs: ['deactivated', 'error', 'icon', 'iconOnly', 'iconRight', 'label', 'nativeAttributes', 'noActive', 'sticky', 'testId', 'url', 'urlTarget']
1212
+ })
1213
+ ], CatTab);
1214
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTab, decorators: [{
1215
+ type: Component,
1216
+ args: [{
1217
+ selector: 'cat-tab',
1218
+ changeDetection: ChangeDetectionStrategy.OnPush,
1219
+ template: '<ng-content></ng-content>',
1220
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1221
+ inputs: ['deactivated', 'error', 'icon', 'iconOnly', 'iconRight', 'label', 'nativeAttributes', 'noActive', 'sticky', 'testId', 'url', 'urlTarget'],
1222
+ outputs: ['catClick'],
1223
+ standalone: false
1224
+ }]
1225
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catClick: [{
1226
+ type: Output
1227
+ }] } });
1228
+ let CatTabs = class CatTabs {
1229
+ z;
1230
+ el;
1231
+ catChange = new EventEmitter();
1232
+ constructor(c, r, z) {
1233
+ this.z = z;
1234
+ c.detach();
1235
+ this.el = r.nativeElement;
1236
+ }
1237
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTabs, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1238
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatTabs, isStandalone: false, selector: "cat-tabs", inputs: { activeTab: "activeTab", activeTabAlwaysVisible: "activeTabAlwaysVisible", adaptive: "adaptive", tabsAlign: "tabsAlign" }, outputs: { catChange: "catChange" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1239
+ };
1240
+ CatTabs = __decorate([
1241
+ ProxyCmp({
1242
+ inputs: ['activeTab', 'activeTabAlwaysVisible', 'adaptive', 'tabsAlign'],
1243
+ methods: ['setActive', 'setActiveIndex', 'updateAdaptiveTabs']
1244
+ })
1245
+ ], CatTabs);
1246
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTabs, decorators: [{
1247
+ type: Component,
1248
+ args: [{
1249
+ selector: 'cat-tabs',
1250
+ changeDetection: ChangeDetectionStrategy.OnPush,
1251
+ template: '<ng-content></ng-content>',
1252
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1253
+ inputs: ['activeTab', 'activeTabAlwaysVisible', 'adaptive', 'tabsAlign'],
1254
+ outputs: ['catChange'],
1255
+ standalone: false
1256
+ }]
1257
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
1258
+ type: Output
1259
+ }] } });
1260
+ let CatTag = class CatTag {
1261
+ z;
1262
+ el;
1263
+ catChange = new EventEmitter();
1264
+ catFocus = new EventEmitter();
1265
+ catBlur = new EventEmitter();
1266
+ constructor(c, r, z) {
1267
+ this.z = z;
1268
+ c.detach();
1269
+ this.el = r.nativeElement;
1270
+ }
1271
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTag, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1272
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatTag, isStandalone: false, selector: "cat-tag", inputs: { addOnBlur: "addOnBlur", clearable: "clearable", disabled: "disabled", errorUpdate: "errorUpdate", errors: "errors", hint: "hint", identifier: "identifier", label: "label", labelHidden: "labelHidden", name: "name", nativeAttributes: "nativeAttributes", placeholder: "placeholder", required: "required", requiredMarker: "requiredMarker", tagCreationChars: "tagCreationChars", testId: "testId", value: "value" }, outputs: { catChange: "catChange", catFocus: "catFocus", catBlur: "catBlur" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1273
+ };
1274
+ CatTag = __decorate([
1275
+ ProxyCmp({
1276
+ inputs: ['addOnBlur', 'clearable', 'disabled', 'errorUpdate', 'errors', 'hint', 'identifier', 'label', 'labelHidden', 'name', 'nativeAttributes', 'placeholder', 'required', 'requiredMarker', 'tagCreationChars', 'testId', 'value']
1277
+ })
1278
+ ], CatTag);
1279
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTag, decorators: [{
1280
+ type: Component,
1281
+ args: [{
1282
+ selector: 'cat-tag',
1283
+ changeDetection: ChangeDetectionStrategy.OnPush,
1284
+ template: '<ng-content></ng-content>',
1285
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1286
+ inputs: ['addOnBlur', 'clearable', 'disabled', 'errorUpdate', 'errors', 'hint', 'identifier', 'label', 'labelHidden', 'name', 'nativeAttributes', 'placeholder', 'required', 'requiredMarker', 'tagCreationChars', 'testId', 'value'],
1287
+ outputs: ['catChange', 'catFocus', 'catBlur'],
1288
+ standalone: false
1289
+ }]
1290
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
1291
+ type: Output
1292
+ }], catFocus: [{
1293
+ type: Output
1294
+ }], catBlur: [{
1295
+ type: Output
1296
+ }] } });
1297
+ let CatTextarea = class CatTextarea {
1298
+ z;
1299
+ el;
1300
+ catChange = new EventEmitter();
1301
+ catFocus = new EventEmitter();
1302
+ catBlur = new EventEmitter();
1303
+ constructor(c, r, z) {
1304
+ this.z = z;
1305
+ c.detach();
1306
+ this.el = r.nativeElement;
1307
+ }
1308
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTextarea, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1309
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatTextarea, isStandalone: false, selector: "cat-textarea", inputs: { autoComplete: "autoComplete", disabled: "disabled", errorUpdate: "errorUpdate", errors: "errors", hint: "hint", horizontal: "horizontal", identifier: "identifier", label: "label", labelHidden: "labelHidden", maxLength: "maxLength", minLength: "minLength", name: "name", nativeAttributes: "nativeAttributes", placeholder: "placeholder", readonly: "readonly", required: "required", requiredMarker: "requiredMarker", rows: "rows", testId: "testId", value: "value" }, outputs: { catChange: "catChange", catFocus: "catFocus", catBlur: "catBlur" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1310
+ };
1311
+ CatTextarea = __decorate([
1312
+ ProxyCmp({
1313
+ inputs: ['autoComplete', 'disabled', 'errorUpdate', 'errors', 'hint', 'horizontal', 'identifier', 'label', 'labelHidden', 'maxLength', 'minLength', 'name', 'nativeAttributes', 'placeholder', 'readonly', 'required', 'requiredMarker', 'rows', 'testId', 'value'],
1314
+ methods: ['doFocus', 'doBlur', 'clear']
1315
+ })
1316
+ ], CatTextarea);
1317
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTextarea, decorators: [{
1318
+ type: Component,
1319
+ args: [{
1320
+ selector: 'cat-textarea',
1321
+ changeDetection: ChangeDetectionStrategy.OnPush,
1322
+ template: '<ng-content></ng-content>',
1323
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1324
+ inputs: ['autoComplete', 'disabled', 'errorUpdate', 'errors', 'hint', 'horizontal', 'identifier', 'label', 'labelHidden', 'maxLength', 'minLength', 'name', 'nativeAttributes', 'placeholder', 'readonly', 'required', 'requiredMarker', 'rows', 'testId', 'value'],
1325
+ outputs: ['catChange', 'catFocus', 'catBlur'],
1326
+ standalone: false
1327
+ }]
1328
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
1329
+ type: Output
1330
+ }], catFocus: [{
1331
+ type: Output
1332
+ }], catBlur: [{
1333
+ type: Output
1334
+ }] } });
1335
+ let CatTime = class CatTime {
1336
+ z;
1337
+ el;
1338
+ catChange = new EventEmitter();
1339
+ catFocus = new EventEmitter();
1340
+ catBlur = new EventEmitter();
1341
+ constructor(c, r, z) {
1342
+ this.z = z;
1343
+ c.detach();
1344
+ this.el = r.nativeElement;
1345
+ }
1346
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTime, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1347
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatTime, isStandalone: false, selector: "cat-time", inputs: { autoComplete: "autoComplete", clearable: "clearable", disabled: "disabled", errorUpdate: "errorUpdate", errors: "errors", hint: "hint", horizontal: "horizontal", icon: "icon", iconRight: "iconRight", identifier: "identifier", label: "label", labelHidden: "labelHidden", max: "max", min: "min", name: "name", nativeAttributes: "nativeAttributes", placeholder: "placeholder", placement: "placement", readonly: "readonly", required: "required", requiredMarker: "requiredMarker", step: "step", testId: "testId", textPrefix: "textPrefix", textSuffix: "textSuffix", value: "value" }, outputs: { catChange: "catChange", catFocus: "catFocus", catBlur: "catBlur" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1348
+ };
1349
+ CatTime = __decorate([
1350
+ ProxyCmp({
1351
+ inputs: ['autoComplete', 'clearable', 'disabled', 'errorUpdate', 'errors', 'hint', 'horizontal', 'icon', 'iconRight', 'identifier', 'label', 'labelHidden', 'max', 'min', 'name', 'nativeAttributes', 'placeholder', 'placement', 'readonly', 'required', 'requiredMarker', 'step', 'testId', 'textPrefix', 'textSuffix', 'value'],
1352
+ methods: ['select', 'doFocus', 'doBlur', 'clear']
1353
+ })
1354
+ ], CatTime);
1355
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTime, decorators: [{
1356
+ type: Component,
1357
+ args: [{
1358
+ selector: 'cat-time',
1359
+ changeDetection: ChangeDetectionStrategy.OnPush,
1360
+ template: '<ng-content></ng-content>',
1361
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1362
+ inputs: ['autoComplete', 'clearable', 'disabled', 'errorUpdate', 'errors', 'hint', 'horizontal', 'icon', 'iconRight', 'identifier', 'label', 'labelHidden', 'max', 'min', 'name', 'nativeAttributes', 'placeholder', 'placement', 'readonly', 'required', 'requiredMarker', 'step', 'testId', 'textPrefix', 'textSuffix', 'value'],
1363
+ outputs: ['catChange', 'catFocus', 'catBlur'],
1364
+ standalone: false
1365
+ }]
1366
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
1367
+ type: Output
1368
+ }], catFocus: [{
1369
+ type: Output
1370
+ }], catBlur: [{
1371
+ type: Output
1372
+ }] } });
1373
+ let CatToggle = class CatToggle {
1374
+ z;
1375
+ el;
1376
+ catChange = new EventEmitter();
1377
+ catFocus = new EventEmitter();
1378
+ catBlur = new EventEmitter();
1379
+ constructor(c, r, z) {
1380
+ this.z = z;
1381
+ c.detach();
1382
+ this.el = r.nativeElement;
1383
+ }
1384
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1385
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatToggle, isStandalone: false, selector: "cat-toggle", inputs: { alignment: "alignment", checked: "checked", disabled: "disabled", hint: "hint", identifier: "identifier", label: "label", labelHidden: "labelHidden", labelLeft: "labelLeft", name: "name", nativeAttributes: "nativeAttributes", noValue: "noValue", required: "required", resolvedValue: "resolvedValue", testId: "testId", value: "value" }, outputs: { catChange: "catChange", catFocus: "catFocus", catBlur: "catBlur" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1386
+ };
1387
+ CatToggle = __decorate([
1388
+ ProxyCmp({
1389
+ inputs: ['alignment', 'checked', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'labelLeft', 'name', 'nativeAttributes', 'noValue', 'required', 'resolvedValue', 'testId', 'value'],
1390
+ methods: ['doFocus', 'doBlur']
1391
+ })
1392
+ ], CatToggle);
1393
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatToggle, decorators: [{
1394
+ type: Component,
1395
+ args: [{
1396
+ selector: 'cat-toggle',
1397
+ changeDetection: ChangeDetectionStrategy.OnPush,
1398
+ template: '<ng-content></ng-content>',
1399
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1400
+ inputs: ['alignment', 'checked', 'disabled', 'hint', 'identifier', 'label', 'labelHidden', 'labelLeft', 'name', 'nativeAttributes', 'noValue', 'required', 'resolvedValue', 'testId', 'value'],
1401
+ outputs: ['catChange', 'catFocus', 'catBlur'],
1402
+ standalone: false
1403
+ }]
1404
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { catChange: [{
1405
+ type: Output
1406
+ }], catFocus: [{
1407
+ type: Output
1408
+ }], catBlur: [{
1409
+ type: Output
1410
+ }] } });
1411
+ let CatTooltip = class CatTooltip {
1412
+ z;
1413
+ el;
1414
+ constructor(c, r, z) {
1415
+ this.z = z;
1416
+ c.detach();
1417
+ this.el = r.nativeElement;
1418
+ }
1419
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTooltip, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1420
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: CatTooltip, isStandalone: false, selector: "cat-tooltip", inputs: { content: "content", disabled: "disabled", hideDelay: "hideDelay", longTouchDuration: "longTouchDuration", placement: "placement", round: "round", showDelay: "showDelay", size: "size" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1421
+ };
1422
+ CatTooltip = __decorate([
1423
+ ProxyCmp({
1424
+ inputs: ['content', 'disabled', 'hideDelay', 'longTouchDuration', 'placement', 'round', 'showDelay', 'size']
1425
+ })
1426
+ ], CatTooltip);
1427
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTooltip, decorators: [{
1428
+ type: Component,
1429
+ args: [{
1430
+ selector: 'cat-tooltip',
1431
+ changeDetection: ChangeDetectionStrategy.OnPush,
1432
+ template: '<ng-content></ng-content>',
1433
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1434
+ inputs: ['content', 'disabled', 'hideDelay', 'longTouchDuration', 'placement', 'round', 'showDelay', 'size'],
1435
+ standalone: false
1436
+ }]
1437
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
1438
+
1439
+ /**
1440
+ * The header of a dialog.
1441
+ */
1442
+ class CatDialogHeaderComponent {
1443
+ closeTxt;
1444
+ i18n = inject(CAT_I18N_REGISTRY_TOKEN);
1445
+ constructor() {
1446
+ this.closeTxt = this.i18n.t('dialog.close');
1447
+ }
1448
+ /**
1449
+ * The title of the dialog.
1450
+ */
1451
+ headline;
1452
+ /**
1453
+ * The subtitle of the dialog.
1454
+ */
1455
+ subline;
1456
+ /**
1457
+ * Whether the dialog can be closed via a close button.
1458
+ */
1459
+ closable = true;
1460
+ /**
1461
+ * Emits when the close button is clicked.
1462
+ */
1463
+ close = new EventEmitter();
1464
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDialogHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1465
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.3", type: CatDialogHeaderComponent, isStandalone: false, selector: "cat-dialog-header", inputs: { headline: "headline", subline: "subline", closable: "closable" }, outputs: { close: "close" }, host: { classAttribute: "cat-dialog-header" }, ngImport: i0, template: "@if (headline || subline) {\n <div class=\"cat-dialog-header-content\">\n @if (headline) {\n <h3 class=\"cat-h5 cat-m-0\">{{ headline }}</h3>\n }\n @if (subline) {\n <h4 class=\"cat-text-m cat-m-0\">{{ subline }}</h4>\n }\n </div>\n}\n<ng-content></ng-content>\n@if (closable) {\n <cat-button\n class=\"cat-dialog-close cat-button-pull\"\n variant=\"text\"\n size=\"s\"\n icon=\"$cat:dialog-close\"\n [iconOnly]=\"true\"\n [a11yLabel]=\"closeTxt\"\n (click)=\"close.emit()\"\n ></cat-button>\n}\n", styles: [".cat-dialog-close{margin-left:auto;align-self:start}\n"], dependencies: [{ kind: "component", type: CatButton, selector: "cat-button", inputs: ["a11yCurrent", "a11yLabel", "active", "buttonGroupPosition", "buttonId", "color", "disabled", "icon", "iconOnly", "iconRight", "loading", "name", "nativeAttributes", "nativeContentAttributes", "noEllipsis", "round", "size", "submit", "testId", "url", "urlTarget", "value", "variant"], outputs: ["catClick", "catFocus", "catBlur"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1466
+ }
1467
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDialogHeaderComponent, decorators: [{
1468
+ type: Component,
1469
+ args: [{ selector: 'cat-dialog-header', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
1470
+ class: 'cat-dialog-header'
1471
+ }, standalone: false, template: "@if (headline || subline) {\n <div class=\"cat-dialog-header-content\">\n @if (headline) {\n <h3 class=\"cat-h5 cat-m-0\">{{ headline }}</h3>\n }\n @if (subline) {\n <h4 class=\"cat-text-m cat-m-0\">{{ subline }}</h4>\n }\n </div>\n}\n<ng-content></ng-content>\n@if (closable) {\n <cat-button\n class=\"cat-dialog-close cat-button-pull\"\n variant=\"text\"\n size=\"s\"\n icon=\"$cat:dialog-close\"\n [iconOnly]=\"true\"\n [a11yLabel]=\"closeTxt\"\n (click)=\"close.emit()\"\n ></cat-button>\n}\n", styles: [".cat-dialog-close{margin-left:auto;align-self:start}\n"] }]
1472
+ }], ctorParameters: () => [], propDecorators: { headline: [{
1473
+ type: Input
1474
+ }], subline: [{
1475
+ type: Input
1476
+ }], closable: [{
1477
+ type: Input
1478
+ }], close: [{
1479
+ type: Output
1480
+ }] } });
1481
+
1482
+ /**
1483
+ * A modal dialog.
1484
+ */
1485
+ class CatDialogComponent {
1486
+ /**
1487
+ * Flag to disable scrolling behavior of dialog content. Default is false. If set to true the
1488
+ * using component is responsible for not overflowing the viewport.
1489
+ */
1490
+ noScroll = false;
1491
+ /**
1492
+ * Flag to disable/enable overscroll behavior.
1493
+ */
1494
+ noOverscroll = false;
1495
+ /**
1496
+ * Flag to not fire an initial scroll event after content initialization.
1497
+ */
1498
+ noScrolledInit = false;
1499
+ /**
1500
+ * Buffer to be used to calculate the content scroll distance.
1501
+ */
1502
+ scrolledBuffer = 0;
1503
+ /**
1504
+ * Emitted when the dialog content is fully scrolled to the bottom.
1505
+ */
1506
+ scrolledBottom = new EventEmitter();
1507
+ header;
1508
+ dialogRef = inject(DialogRef);
1509
+ ngAfterContentInit() {
1510
+ this.header?.close.subscribe(() => this.dialogRef.close());
1511
+ }
1512
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1513
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.3", type: CatDialogComponent, isStandalone: false, selector: "cat-dialog", inputs: { noScroll: "noScroll", noOverscroll: "noOverscroll", noScrolledInit: "noScrolledInit", scrolledBuffer: "scrolledBuffer" }, outputs: { scrolledBottom: "scrolledBottom" }, host: { classAttribute: "cat-dialog" }, queries: [{ propertyName: "header", first: true, predicate: CatDialogHeaderComponent, descendants: true }], ngImport: i0, template: "<ng-content select=\"cat-dialog-header\"></ng-content>\n@if (!noScroll) {\n <cat-scrollable\n [noOverscroll]=\"noOverscroll\"\n [noScrolledInit]=\"noScrolledInit\"\n [scrolledBuffer]=\"scrolledBuffer\"\n (scrolledBottom)=\"scrolledBottom.emit()\"\n >\n <div class=\"cat-dialog-content\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n </cat-scrollable>\n} @else {\n <div class=\"cat-dialog-content no-scroll\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>\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;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:absolute;inset:0;pointer-events:auto;-webkit-tap-highlight-color:transparent;opacity:0;touch-action:manipulation;z-index:1000;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors:active){.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px;z-index:1000}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:0 auto auto 0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto}.cat-backdrop{transition-duration:.5s}.cat-dialog-pane{transform:translateZ(0)}.cat-dialog-pane .cdk-dialog-container>*:only-child{display:block;width:100%;height:100%;min-height:inherit;max-height:inherit}.cat-dialog{width:100%;height:100%;min-height:inherit;max-height:inherit;animation:cat-dialog-enter .25s ease}.cat-dialog cat-scrollable{flex-grow:1}@keyframes cat-dialog-enter{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.cat-dialog-content.no-scroll{height:100%;overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: CatScrollable, selector: "cat-scrollable", inputs: ["noOverflowX", "noOverflowY", "noOverscroll", "noScrolledInit", "noShadowX", "noShadowY", "scrolledBuffer"], outputs: ["scrolledTop", "scrolledLeft", "scrolledRight", "scrolledBottom"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1514
+ }
1515
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDialogComponent, decorators: [{
1516
+ type: Component,
1517
+ args: [{ selector: 'cat-dialog', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
1518
+ class: 'cat-dialog'
1519
+ }, standalone: false, template: "<ng-content select=\"cat-dialog-header\"></ng-content>\n@if (!noScroll) {\n <cat-scrollable\n [noOverscroll]=\"noOverscroll\"\n [noScrolledInit]=\"noScrolledInit\"\n [scrolledBuffer]=\"scrolledBuffer\"\n (scrolledBottom)=\"scrolledBottom.emit()\"\n >\n <div class=\"cat-dialog-content\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n </cat-scrollable>\n} @else {\n <div class=\"cat-dialog-content no-scroll\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>\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;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:absolute;inset:0;pointer-events:auto;-webkit-tap-highlight-color:transparent;opacity:0;touch-action:manipulation;z-index:1000;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors:active){.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px;z-index:1000}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:0 auto auto 0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto}.cat-backdrop{transition-duration:.5s}.cat-dialog-pane{transform:translateZ(0)}.cat-dialog-pane .cdk-dialog-container>*:only-child{display:block;width:100%;height:100%;min-height:inherit;max-height:inherit}.cat-dialog{width:100%;height:100%;min-height:inherit;max-height:inherit;animation:cat-dialog-enter .25s ease}.cat-dialog cat-scrollable{flex-grow:1}@keyframes cat-dialog-enter{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.cat-dialog-content.no-scroll{height:100%;overflow:hidden}\n"] }]
1520
+ }], propDecorators: { noScroll: [{
1521
+ type: Input
1522
+ }], noOverscroll: [{
1523
+ type: Input
1524
+ }], noScrolledInit: [{
1525
+ type: Input
1526
+ }], scrolledBuffer: [{
1527
+ type: Input
1528
+ }], scrolledBottom: [{
1529
+ type: Output
1530
+ }], header: [{
1531
+ type: ContentChild,
1532
+ args: [CatDialogHeaderComponent]
1533
+ }] } });
1534
+
1535
+ class BooleanValueAccessor extends ValueAccessor {
1536
+ constructor(el) {
1537
+ super(el);
1538
+ }
1539
+ writeValue(value) {
1540
+ this.el.nativeElement.checked = this.lastValue = this.el.nativeElement.value == null ? value : this.el.nativeElement.value === value;
1541
+ }
1542
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: BooleanValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1543
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: BooleanValueAccessor, isStandalone: false, selector: "cat-checkbox, cat-toggle", host: { listeners: { "catChange": "handleChangeEvent($event.target?.[\"resolvedValue\"])" } }, providers: [
1544
+ {
1545
+ provide: NG_VALUE_ACCESSOR,
1546
+ useExisting: BooleanValueAccessor,
1547
+ multi: true
1548
+ }
1549
+ ], usesInheritance: true, ngImport: i0 });
1550
+ }
1551
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: BooleanValueAccessor, decorators: [{
1552
+ type: Directive,
1553
+ args: [{
1554
+ /* tslint:disable-next-line:directive-selector */
1555
+ selector: 'cat-checkbox, cat-toggle',
1556
+ host: {
1557
+ '(catChange)': 'handleChangeEvent($event.target?.["resolvedValue"])'
1558
+ },
1559
+ providers: [
1560
+ {
1561
+ provide: NG_VALUE_ACCESSOR,
1562
+ useExisting: BooleanValueAccessor,
1563
+ multi: true
1564
+ }
1565
+ ],
1566
+ standalone: false
1567
+ }]
1568
+ }], ctorParameters: () => [{ type: i0.ElementRef }] });
1569
+
1570
+ class RadioValueAccessor extends ValueAccessor {
1571
+ constructor(el) {
1572
+ super(el);
1573
+ }
1574
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: RadioValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1575
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: RadioValueAccessor, isStandalone: false, selector: "cat-radio, cat-radio-group", host: { listeners: { "catChange": "handleChangeEvent($event.target?.[\"value\"])" } }, providers: [
1576
+ {
1577
+ provide: NG_VALUE_ACCESSOR,
1578
+ useExisting: RadioValueAccessor,
1579
+ multi: true
1580
+ }
1581
+ ], usesInheritance: true, ngImport: i0 });
1582
+ }
1583
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: RadioValueAccessor, decorators: [{
1584
+ type: Directive,
1585
+ args: [{
1586
+ /* tslint:disable-next-line:directive-selector */
1587
+ selector: 'cat-radio, cat-radio-group',
1588
+ host: {
1589
+ '(catChange)': 'handleChangeEvent($event.target?.["value"])'
1590
+ },
1591
+ providers: [
1592
+ {
1593
+ provide: NG_VALUE_ACCESSOR,
1594
+ useExisting: RadioValueAccessor,
1595
+ multi: true
1596
+ }
1597
+ ],
1598
+ standalone: false
1599
+ }]
1600
+ }], ctorParameters: () => [{ type: i0.ElementRef }] });
1601
+
1602
+ class SelectValueAccessor extends ValueAccessor {
1603
+ constructor(el) {
1604
+ super(el);
1605
+ }
1606
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: SelectValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1607
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: SelectValueAccessor, isStandalone: false, selector: "cat-select, cat-tag", host: { listeners: { "catChange": "handleChangeEvent($event.target?.[\"value\"])" } }, providers: [
1608
+ {
1609
+ provide: NG_VALUE_ACCESSOR,
1610
+ useExisting: SelectValueAccessor,
1611
+ multi: true
1612
+ }
1613
+ ], usesInheritance: true, ngImport: i0 });
1614
+ }
1615
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: SelectValueAccessor, decorators: [{
1616
+ type: Directive,
1617
+ args: [{
1618
+ /* tslint:disable-next-line:directive-selector */
1619
+ selector: 'cat-select, cat-tag',
1620
+ host: {
1621
+ '(catChange)': 'handleChangeEvent($event.target?.["value"])'
1622
+ },
1623
+ providers: [
1624
+ {
1625
+ provide: NG_VALUE_ACCESSOR,
1626
+ useExisting: SelectValueAccessor,
1627
+ multi: true
1628
+ }
1629
+ ],
1630
+ standalone: false
1631
+ }]
1632
+ }], ctorParameters: () => [{ type: i0.ElementRef }] });
1633
+
1634
+ class SelectValueAccessorDecorator {
1635
+ el;
1636
+ /**
1637
+ * The connector to use for the select.
1638
+ */
1639
+ connector;
1640
+ constructor(el) {
1641
+ this.el = el;
1642
+ }
1643
+ ngOnChanges({ connector }) {
1644
+ if (connector?.currentValue) {
1645
+ this.el.nativeElement.connect(connector.currentValue);
1646
+ }
1647
+ }
1648
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: SelectValueAccessorDecorator, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1649
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: SelectValueAccessorDecorator, isStandalone: false, selector: "cat-select", inputs: { connector: "connector" }, usesOnChanges: true, ngImport: i0 });
1650
+ }
1651
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: SelectValueAccessorDecorator, decorators: [{
1652
+ type: Directive,
1653
+ args: [{
1654
+ /* tslint:disable-next-line:directive-selector */
1655
+ selector: 'cat-select',
1656
+ standalone: false
1657
+ }]
1658
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { connector: [{
1659
+ type: Input
1660
+ }] } });
1661
+
1662
+ class TextValueAccessor extends ValueAccessor {
1663
+ constructor(el) {
1664
+ super(el);
1665
+ }
1666
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: TextValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1667
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: TextValueAccessor, isStandalone: false, selector: "cat-input, cat-textarea, cat-datepicker, cat-datepicker-inline", host: { listeners: { "catChange": "handleChangeEvent($event.target?.[\"value\"])" } }, providers: [
1668
+ {
1669
+ provide: NG_VALUE_ACCESSOR,
1670
+ useExisting: TextValueAccessor,
1671
+ multi: true
1672
+ }
1673
+ ], usesInheritance: true, ngImport: i0 });
1674
+ }
1675
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: TextValueAccessor, decorators: [{
1676
+ type: Directive,
1677
+ args: [{
1678
+ /* tslint:disable-next-line:directive-selector */
1679
+ selector: 'cat-input, cat-textarea, cat-datepicker, cat-datepicker-inline',
1680
+ host: {
1681
+ '(catChange)': 'handleChangeEvent($event.target?.["value"])'
1682
+ },
1683
+ providers: [
1684
+ {
1685
+ provide: NG_VALUE_ACCESSOR,
1686
+ useExisting: TextValueAccessor,
1687
+ multi: true
1688
+ }
1689
+ ],
1690
+ standalone: false
1691
+ }]
1692
+ }], ctorParameters: () => [{ type: i0.ElementRef }] });
1693
+
1694
+ class ValueAccessorDecorator {
1695
+ el;
1696
+ controlDirective;
1697
+ controlContainer;
1698
+ /**
1699
+ * Whether to show errors directly after initialization
1700
+ * (i.e. before the user has interacted with the input).
1701
+ */
1702
+ errorInit = false;
1703
+ constructor(el, controlDirective, controlContainer) {
1704
+ this.el = el;
1705
+ this.controlDirective = controlDirective;
1706
+ this.controlContainer = controlContainer;
1707
+ }
1708
+ ngAfterViewInit() {
1709
+ this.controlDirective?.statusChanges?.subscribe(() => this.updateErrors());
1710
+ const controlName = this.controlDirective?.name?.toString() ?? '';
1711
+ const control = this.controlContainer?.control?.get(controlName);
1712
+ if (control?.hasValidator(Validators.required)) {
1713
+ this.el.nativeElement.required = true;
1714
+ }
1715
+ if (this.errorInit) {
1716
+ this.updateErrors();
1717
+ }
1718
+ }
1719
+ updateErrors() {
1720
+ this.el.nativeElement.errors = this.controlDirective?.errors || !!this.controlDirective?.invalid;
1721
+ }
1722
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: ValueAccessorDecorator, deps: [{ token: i0.ElementRef }, { token: i1.NgControl, optional: true, self: true }, { token: i1.ControlContainer, host: true, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Directive });
1723
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: ValueAccessorDecorator, isStandalone: false, selector: "cat-input, cat-textarea, cat-datepicker, cat-select, cat-date, cat-time, cat-tag", inputs: { errorInit: "errorInit" }, host: { listeners: { "catBlur": "updateErrors()" } }, ngImport: i0 });
1724
+ }
1725
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: ValueAccessorDecorator, decorators: [{
1726
+ type: Directive,
1727
+ args: [{
1728
+ /* tslint:disable-next-line:directive-selector */
1729
+ selector: 'cat-input, cat-textarea, cat-datepicker, cat-select, cat-date, cat-time, cat-tag',
1730
+ host: {
1731
+ '(catBlur)': 'updateErrors()'
1732
+ },
1733
+ standalone: false
1734
+ }]
1735
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.NgControl, decorators: [{
1736
+ type: Self
1737
+ }, {
1738
+ type: Optional
1739
+ }] }, { type: i1.ControlContainer, decorators: [{
1740
+ type: Optional
1741
+ }, {
1742
+ type: Host
1743
+ }, {
1744
+ type: SkipSelf
1745
+ }] }], propDecorators: { errorInit: [{
1746
+ type: Input
1747
+ }] } });
1748
+
1749
+ /**
1750
+ * A directive that can be used to add a Catalyst tooltip to an element.
1751
+ */
1752
+ class CatTooltipDirective {
1753
+ catTooltip;
1754
+ component;
1755
+ templateRef = inject(TemplateRef);
1756
+ viewContainer = inject(ViewContainerRef);
1757
+ ngOnInit() {
1758
+ this.component = this.viewContainer.createComponent(CatTooltip, {
1759
+ projectableNodes: [this.viewContainer.createEmbeddedView(this.templateRef).rootNodes]
1760
+ });
1761
+ this.component.instance.content = this.catTooltip;
1762
+ }
1763
+ ngOnChanges() {
1764
+ if (this.component) {
1765
+ this.component.instance.content = this.catTooltip;
1766
+ }
1767
+ }
1768
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTooltipDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1769
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: CatTooltipDirective, isStandalone: false, selector: "[catTooltip]", inputs: { catTooltip: "catTooltip" }, usesOnChanges: true, ngImport: i0 });
1770
+ }
1771
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatTooltipDirective, decorators: [{
1772
+ type: Directive,
1773
+ args: [{
1774
+ selector: '[catTooltip]',
1775
+ standalone: false
1776
+ }]
1777
+ }], propDecorators: { catTooltip: [{
1778
+ type: Input
1779
+ }] } });
1780
+
1781
+ const CatComponents = [
1782
+ CatAlert,
1783
+ CatAvatar,
1784
+ CatBadge,
1785
+ CatButton,
1786
+ CatButtonGroup,
1787
+ CatCard,
1788
+ CatCheckbox,
1789
+ CatDate,
1790
+ CatDateInline,
1791
+ CatDatepicker,
1792
+ CatDropdown,
1793
+ CatFormGroup,
1794
+ CatIcon,
1795
+ CatInput,
1796
+ CatPagination,
1797
+ CatRadio,
1798
+ CatRadioGroup,
1799
+ CatScrollable,
1800
+ CatSelect,
1801
+ CatSkeleton,
1802
+ CatSpinner,
1803
+ CatTab,
1804
+ CatTabs,
1805
+ CatTextarea,
1806
+ CatTime,
1807
+ CatToggle,
1808
+ CatTooltip,
1809
+ CatTag
1810
+ ];
1811
+ const CatDirectives = [
1812
+ BooleanValueAccessor,
1813
+ DateValueAccessor,
1814
+ RadioValueAccessor,
1815
+ SelectValueAccessor,
1816
+ SelectValueAccessorDecorator,
1817
+ TextValueAccessor,
1818
+ TimeValueAccessor,
1819
+ ValueAccessorDecorator,
1820
+ DatetimeComponent
1821
+ ];
1822
+ class CatalystModule {
1823
+ static forRoot() {
1824
+ defineCustomElements();
1825
+ return {
1826
+ ngModule: CatalystModule
1827
+ };
1828
+ }
1829
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatalystModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1830
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.3", ngImport: i0, type: CatalystModule, declarations: [CatAlert, CatAvatar, CatBadge, CatButton, CatButtonGroup, CatCard, CatCheckbox, CatDate, CatDateInline, CatDatepicker, CatDropdown, CatFormGroup, CatIcon, CatInput, CatPagination, CatRadio, CatRadioGroup, CatScrollable, CatSelect, CatSkeleton, CatSpinner, CatTab, CatTabs, CatTextarea, CatTime, CatToggle, CatTooltip, CatTag, BooleanValueAccessor,
1831
+ DateValueAccessor,
1832
+ RadioValueAccessor,
1833
+ SelectValueAccessor,
1834
+ SelectValueAccessorDecorator,
1835
+ TextValueAccessor,
1836
+ TimeValueAccessor,
1837
+ ValueAccessorDecorator,
1838
+ DatetimeComponent, CatDialogComponent,
1839
+ CatDialogHeaderComponent,
1840
+ CatDialogActionsComponent,
1841
+ CatTooltipDirective], imports: [CommonModule, DialogModule], exports: [CatAlert, CatAvatar, CatBadge, CatButton, CatButtonGroup, CatCard, CatCheckbox, CatDate, CatDateInline, CatDatepicker, CatDropdown, CatFormGroup, CatIcon, CatInput, CatPagination, CatRadio, CatRadioGroup, CatScrollable, CatSelect, CatSkeleton, CatSpinner, CatTab, CatTabs, CatTextarea, CatTime, CatToggle, CatTooltip, CatTag, BooleanValueAccessor,
1842
+ DateValueAccessor,
1843
+ RadioValueAccessor,
1844
+ SelectValueAccessor,
1845
+ SelectValueAccessorDecorator,
1846
+ TextValueAccessor,
1847
+ TimeValueAccessor,
1848
+ ValueAccessorDecorator,
1849
+ DatetimeComponent, CatDialogComponent,
1850
+ CatDialogHeaderComponent,
1851
+ CatDialogActionsComponent,
1852
+ CatTooltipDirective] });
1853
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatalystModule, imports: [CommonModule, DialogModule] });
1854
+ }
1855
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatalystModule, decorators: [{
1856
+ type: NgModule,
1857
+ args: [{
1858
+ imports: [CommonModule, DialogModule],
1859
+ declarations: [
1860
+ ...CatComponents,
1861
+ ...CatDirectives,
1862
+ CatDialogComponent,
1863
+ CatDialogHeaderComponent,
1864
+ CatDialogActionsComponent,
1865
+ CatTooltipDirective
1866
+ ],
1867
+ exports: [
1868
+ ...CatComponents,
1869
+ ...CatDirectives,
1870
+ CatDialogComponent,
1871
+ CatDialogHeaderComponent,
1872
+ CatDialogActionsComponent,
1873
+ CatTooltipDirective
1874
+ ],
1875
+ providers: []
1876
+ }]
1877
+ }] });
1878
+
1879
+ /**
1880
+ * Injection token for custom dialog sizes. The map should contain a key-value
1881
+ * pair of size names and their corresponding CSS width values. The key `default`
1882
+ * is used as the default size when no size is specified.
1883
+ */
1884
+ const CAT_DIALOG_SIZE_TOKEN = new InjectionToken('CatDialogSize');
1885
+ /**
1886
+ * A service for managing modal dialogs.
1887
+ */
1888
+ class CatDialogService {
1889
+ dialog = inject(Dialog);
1890
+ size = inject(CAT_DIALOG_SIZE_TOKEN, { optional: true });
1891
+ /**
1892
+ * Opens a modal dialog containing the given component.
1893
+ *
1894
+ * @param component The component to render as dialog content.
1895
+ * @param config The dialog configuration.
1896
+ * @returns The return value of the dialog.
1897
+ */
1898
+ open(component, config) {
1899
+ return this.openWithRef(component, config).closed;
1900
+ }
1901
+ /**
1902
+ * Opens a modal dialog containing the given component and returns a reference to the dialog.
1903
+ *
1904
+ * @param component - The component to render as dialog content.
1905
+ * @param config - The dialog configuration.
1906
+ * @returns A reference to the just opened dialog.
1907
+ */
1908
+ openWithRef(component, config) {
1909
+ const panelClass = config?.panelClass ?? [];
1910
+ return this.dialog.open(component, {
1911
+ backdropClass: 'cat-backdrop',
1912
+ minWidth: 'clamp(240px, 100vw - 16px, 320px)',
1913
+ minHeight: 'clamp(144px, 100vh - 16px, 160px)',
1914
+ maxHeight: 'calc(100vh - 64px)',
1915
+ maxWidth: 'calc(100vw - 64px)',
1916
+ ...config,
1917
+ width: config?.width ? (this.size?.[config.width] ?? config.width) : (this.size?.['default'] ?? '600px'),
1918
+ panelClass: ['cat-dialog-pane', ...(Array.isArray(panelClass) ? panelClass : [panelClass])]
1919
+ });
1920
+ }
1921
+ /**
1922
+ * Closes all open dialogs.
1923
+ */
1924
+ closeAll() {
1925
+ this.dialog.closeAll();
1926
+ }
1927
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDialogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1928
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDialogService, providedIn: 'root' });
1929
+ }
1930
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: CatDialogService, decorators: [{
1931
+ type: Injectable,
1932
+ args: [{
1933
+ providedIn: 'root'
1934
+ }]
1935
+ }] });
1936
+
1937
+ /**
1938
+ * Generated bundle index. Do not edit.
1939
+ */
1940
+
1941
+ export { BooleanValueAccessor, CAT_DIALOG_SIZE_TOKEN, CAT_I18N_REGISTRY_TOKEN, CAT_ICON_REGISTRY_TOKEN, CAT_LOG_TOKEN, CAT_NOTIFICATION_SERVICE_TOKEN, CatAlert, CatAvatar, CatBadge, CatButton, CatButtonGroup, CatCard, CatCheckbox, CatDate, CatDateInline, CatDatepicker, CatDatepickerInline, CatDialogActionsComponent, CatDialogComponent, CatDialogHeaderComponent, CatDialogService, CatDropdown, CatFormGroup, CatIcon, CatInput, CatPagination, CatRadio, CatRadioGroup, CatScrollable, CatSelect, CatSelectDemo, CatSkeleton, CatSpinner, CatTab, CatTabs, CatTag, CatTextarea, CatTime, CatToggle, CatTooltip, CatTooltipDirective, CatalystModule, DateValueAccessor, DatetimeComponent, RadioValueAccessor, SelectValueAccessor, SelectValueAccessorDecorator, TextValueAccessor, TimeValueAccessor, ValueAccessor, ValueAccessorDecorator };
1942
+ //# sourceMappingURL=haiilo-catalyst-angular.mjs.map