@ardium-ui/ui 5.0.0-alpha.54 → 5.0.0-alpha.55

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.
@@ -2,18 +2,18 @@ import 'first-last';
2
2
  import { Overlay, ScrollStrategyOptions, OverlayConfig, OverlayModule } from '@angular/cdk/overlay';
3
3
  import { TemplatePortal, ComponentPortal } from '@angular/cdk/portal';
4
4
  import * as i0 from '@angular/core';
5
- import { signal, computed, InjectionToken, input, Directive, Input, HostBinding, output, ViewChildren, inject, Injector, runInInjectionContext, viewChild, contentChild, Component, ViewEncapsulation, ChangeDetectionStrategy, Inject, ViewContainerRef, TemplateRef, forwardRef, HostListener, NgModule, effect, viewChildren, Pipe, model, ElementRef, ChangeDetectorRef, ContentChildren, Renderer2, linkedSignal, untracked, contentChildren, Injectable } from '@angular/core';
6
- import { NgControl, Validators, NG_VALUE_ACCESSOR } from '@angular/forms';
5
+ import { signal, computed, InjectionToken, inject, Injector, input, Directive, Input, HostBinding, output, ViewChildren, viewChild, contentChild, Component, ViewEncapsulation, ChangeDetectionStrategy, Inject, ViewContainerRef, TemplateRef, forwardRef, HostListener, NgModule, effect, viewChildren, Pipe, model, ElementRef, ChangeDetectorRef, ContentChildren, Renderer2, linkedSignal, untracked, contentChildren, Injectable } from '@angular/core';
6
+ import { NgControl, ValueChangeEvent, TouchedChangeEvent, PristineChangeEvent, StatusChangeEvent, Validators, NG_VALUE_ACCESSOR } from '@angular/forms';
7
7
  import * as i4 from '@ardium-ui/devkit';
8
8
  import { arraySignal, coerceBooleanProperty, coerceNumberProperty, coerceArrayProperty, ArdiumClickOutsideModule, ArdiumEscapeHTMLModule, FileSystemService, FileSystemMethod, ArdiumFilePipesModule, coerceDateProperty, ArdiumHoldModule } from '@ardium-ui/devkit';
9
- import { isDefined, any, isPrimitive, isAnyString, isNull, isNumber, isString, isArray, isFunction, isRegExp, evaluate, isObject, isPromise, isDate } from 'simple-bool';
9
+ import { isDefined, any, isPrimitive, isFunction, isAnyString, isNull, isNumber, isString, isArray, isRegExp, evaluate, isObject, isPromise, isDate } from 'simple-bool';
10
10
  import { resolvePath } from 'resolve-object-path';
11
- import { toObservable } from '@angular/core/rxjs-interop';
12
- import { map, Subject, isObservable, firstValueFrom, merge, takeUntil, startWith, filter, BehaviorSubject } from 'rxjs';
13
11
  import { TakeChance } from 'take-chance';
12
+ import { isEqual } from 'lodash';
14
13
  import * as i1 from '@angular/common';
15
14
  import { CommonModule, DatePipe, UpperCasePipe, TitleCasePipe, DOCUMENT, DecimalPipe, AsyncPipe } from '@angular/common';
16
15
  import { AutofillMonitor, CdkAutofill } from '@angular/cdk/text-field';
16
+ import { Subject, isObservable, firstValueFrom, merge, takeUntil, startWith, filter, map, BehaviorSubject } from 'rxjs';
17
17
  import { roundToMultiple, roundFromZero, roundToPrecision } from 'more-rounding';
18
18
  import { keyToString } from 'key-display-names';
19
19
  import { BreakpointObserver } from '@angular/cdk/layout';
@@ -243,6 +243,164 @@ const FormElementVariant = {
243
243
  Pill: 'pill',
244
244
  };
245
245
 
246
+ class FormControlTracker {
247
+ constructor(thisObj, options = {}) {
248
+ this.thisObj = thisObj;
249
+ this.options = options;
250
+ this._injector = inject(Injector);
251
+ this._value = signal(undefined);
252
+ this.value = this._value.asReadonly();
253
+ this._errors = signal(null, { equal: (a, b) => isEqual(a, b) });
254
+ this.errors = this._errors.asReadonly();
255
+ this._touched = signal(false);
256
+ this.touched = this._touched.asReadonly();
257
+ this.untouched = computed(() => !this.touched());
258
+ this._pristine = signal(false);
259
+ this.pristine = this._pristine.asReadonly();
260
+ this.dirty = computed(() => !this.pristine());
261
+ this._status = signal('VALID');
262
+ this.status = this._status.asReadonly();
263
+ this.valid = computed(() => this.status() === 'VALID');
264
+ this.invalid = computed(() => this.status() === 'INVALID');
265
+ this.pending = computed(() => this.status() === 'PENDING');
266
+ this.disabled = computed(() => this.status() === 'DISABLED');
267
+ this.enabled = computed(() => !this.disabled());
268
+ this._validators = signal(null);
269
+ this.validators = this._validators.asReadonly();
270
+ this._asyncValidators = signal(null);
271
+ this.asyncValidators = this._asyncValidators.asReadonly();
272
+ }
273
+ init() {
274
+ const ngControl = this._injector.get(NgControl, null);
275
+ if (ngControl) {
276
+ // if the valueAccessor was not yet set by Angular, we have to do it manually here
277
+ if (this.options.attachValueAccessor ?? true) {
278
+ if (!ngControl.valueAccessor || (this.thisObj && this.thisObj instanceof ngControl.valueAccessor.constructor)) {
279
+ ngControl.valueAccessor = this.thisObj;
280
+ }
281
+ }
282
+ // grab the AbstractControl instance
283
+ const instance = ngControl.control;
284
+ if (!instance)
285
+ return;
286
+ this.instance = instance;
287
+ // listen to all data available in the events emitter
288
+ this._eventsSub = instance.events.subscribe(event => {
289
+ if (event instanceof ValueChangeEvent) {
290
+ this._value.set(event.value);
291
+ return;
292
+ }
293
+ if (event instanceof TouchedChangeEvent) {
294
+ this._touched.set(event.touched);
295
+ return;
296
+ }
297
+ if (event instanceof PristineChangeEvent) {
298
+ this._pristine.set(event.pristine);
299
+ return;
300
+ }
301
+ if (event instanceof StatusChangeEvent) {
302
+ this._status.set(event.status);
303
+ this._errors.set(event.source.errors);
304
+ return;
305
+ }
306
+ });
307
+ this._value.set(instance.value);
308
+ this._touched.set(instance.touched);
309
+ this._pristine.set(instance.pristine);
310
+ this._status.set(instance.status);
311
+ this._errors.set(instance.errors);
312
+ // do not read the next lines of code if you are easily frightened
313
+ // I'm not proud of this part, but it had to be done. God please forgive me
314
+ // I didn't find any other feasible way to detect when the control changes its validators
315
+ // so it had to be hacked like this
316
+ // override the "setValidators" function to capture the validators
317
+ const oldSetValidators = instance.setValidators.bind(instance);
318
+ instance.setValidators = (...args) => {
319
+ oldSetValidators(...args);
320
+ const validators = instance._rawValidators;
321
+ this._validators.set(isFunction(validators) ? [validators] : validators);
322
+ };
323
+ // override the "validator" setter to capture the validators
324
+ wrapSetter(instance, 'validator', () => {
325
+ const raw = instance._rawValidators;
326
+ this._validators.set(isFunction(raw) ? [raw] : raw);
327
+ });
328
+ // override the "setAsyncValidators" function to capture the async validators
329
+ const oldSetAsyncValidators = instance.setAsyncValidators.bind(instance);
330
+ instance.setAsyncValidators = (...args) => {
331
+ oldSetAsyncValidators(...args);
332
+ const validators = instance._rawAsyncValidators;
333
+ this._asyncValidators.set(isFunction(validators) ? [validators] : validators);
334
+ };
335
+ // override the "asyncValidator" setter to capture the async validators
336
+ wrapSetter(instance, 'asyncValidator', () => {
337
+ const raw = instance._rawAsyncValidators;
338
+ this._asyncValidators.set(isFunction(raw) ? [raw] : raw);
339
+ });
340
+ // assign the validators at init time
341
+ const validators = instance._rawValidators;
342
+ this._validators.set(isFunction(validators) ? [validators] : validators);
343
+ const asyncValidators = instance._rawAsyncValidators;
344
+ this._asyncValidators.set(isFunction(asyncValidators) ? [asyncValidators] : asyncValidators);
345
+ }
346
+ }
347
+ destroy() {
348
+ this._eventsSub?.unsubscribe();
349
+ }
350
+ }
351
+ /**
352
+ * Gives reactive access to the properties of the Form Control assigned to the component instance.
353
+ *
354
+ * Call the `init()` method inside `ngOnInit()` to start listening to the Form Control, call `destroy()` to dispose of the listener.
355
+ *
356
+ * @param thisObj the component instance.
357
+ * @returns an object containing all standard form control getters as signals.
358
+ * @example
359
+ * ```
360
+ * export class MyComponent implements ControlValueAccessor, OnInit, OnDestroy {
361
+ * readonly control = trackFormControl(this);
362
+ *
363
+ * ngOnInit(): void {
364
+ * this.control.init();
365
+ * }
366
+ * ngOnDestroy(): void {
367
+ * this.control.destroy();
368
+ * }
369
+ * // control value accessor implementation ...
370
+ * }
371
+ * ```
372
+ */
373
+ function trackFormControl(thisObj, options = {}) {
374
+ return new FormControlTracker(thisObj, options);
375
+ }
376
+ // --- helper: wraps an accessor setter on a single instance ---
377
+ function wrapSetter(obj, propName, after) {
378
+ // find the accessor descriptor up the prototype chain
379
+ let proto = obj;
380
+ let desc;
381
+ while (proto && !(desc = Object.getOwnPropertyDescriptor(proto, propName))) {
382
+ proto = Object.getPrototypeOf(proto);
383
+ }
384
+ if (!desc || typeof desc.set !== 'function') {
385
+ throw new Error(`No setter found for ${String(propName)}`);
386
+ }
387
+ const originalSet = desc.set;
388
+ const originalGet = desc.get; // may exist
389
+ Object.defineProperty(obj, propName, {
390
+ configurable: true,
391
+ enumerable: desc.enumerable ?? true,
392
+ get: originalGet
393
+ ? function () {
394
+ return originalGet.call(this);
395
+ }
396
+ : undefined,
397
+ set: function (value) {
398
+ originalSet.call(this, value);
399
+ after();
400
+ },
401
+ });
402
+ }
403
+
246
404
  const _disablableComponentDefaults = {
247
405
  readonly: false,
248
406
  disabled: false,
@@ -383,19 +541,15 @@ const _ngModelComponentDefaults = {
383
541
  class _NgModelComponentBase extends _FocusableComponentBase {
384
542
  constructor() {
385
543
  super(...arguments);
386
- //! event handlers
387
- this.wasTouched = signal(false);
388
544
  this._shouldEmitTouched = false;
389
545
  //! form field related
390
- this._injector = inject(Injector);
391
- this._ngControl = null;
546
+ this.control = trackFormControl(this);
392
547
  this.htmlId = input(TakeChance.id());
393
548
  this._hasError = input(undefined, {
394
549
  transform: v => coerceBooleanProperty(v),
395
550
  alias: 'hasError',
396
551
  });
397
- this._hasErrorInControl = signal(false);
398
- this.hasError = computed(() => this._hasError() ?? (this.wasTouched() && this._hasErrorInControl()));
552
+ this.hasError = computed(() => this._hasError() ?? (this.control.touched() && this.control.invalid()));
399
553
  }
400
554
  /**
401
555
  * Registers a function to handle touched state. Required by ControlValueAccessor.
@@ -418,6 +572,7 @@ class _NgModelComponentBase extends _FocusableComponentBase {
418
572
  setDisabledState(isDisabled) {
419
573
  this.disabled.set(isDisabled);
420
574
  }
575
+ //! event handlers
421
576
  onFocus(event) {
422
577
  super.onFocus(event);
423
578
  this._shouldEmitTouched = false;
@@ -434,32 +589,13 @@ class _NgModelComponentBase extends _FocusableComponentBase {
434
589
  }, 0);
435
590
  }
436
591
  _emitTouched() {
437
- this.wasTouched.set(true);
438
592
  this._onTouchedRegistered?.();
439
593
  }
440
594
  ngOnInit() {
441
- this._ngControl = this._injector.get(NgControl, null);
442
- if (this._ngControl) {
443
- if (!this._ngControl.valueAccessor || (this && this instanceof this._ngControl.valueAccessor.constructor)) {
444
- this._ngControl.valueAccessor = this;
445
- }
446
- this._hasErrorInControl.set(this._ngControl.status === 'INVALID');
447
- this._statusChangesSub = this._ngControl.statusChanges
448
- ?.pipe(map(v => v === 'INVALID'))
449
- .subscribe(v => this._hasErrorInControl.set(v));
450
- if (!this._ngControl.control)
451
- return;
452
- runInInjectionContext(this._injector, () => {
453
- // do not read the next line of code if you are easily frightened
454
- // I'm not proud of this part, but it had to be done. God please forgive me
455
- // I didn't find any other feasible way to detect when the control changes its touched state
456
- // so it had to be hacked like this
457
- toObservable(this._ngControl?.control?.touchedReactive)?.subscribe(v => this.wasTouched.set(v));
458
- });
459
- }
595
+ this.control.init();
460
596
  }
461
597
  ngOnDestroy() {
462
- this._statusChangesSub?.unsubscribe();
598
+ this.control.destroy();
463
599
  }
464
600
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: _NgModelComponentBase, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
465
601
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: _NgModelComponentBase, isStandalone: true, inputs: { htmlId: { classPropertyName: "htmlId", publicName: "htmlId", isSignal: true, isRequired: false, transformFunction: null }, _hasError: { classPropertyName: "_hasError", publicName: "hasError", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
@@ -484,11 +620,10 @@ class _FormFieldComponentBase extends _NgModelComponentBase {
484
620
  transform: v => coerceBooleanProperty(v),
485
621
  alias: 'required',
486
622
  });
623
+ this.required = computed(() => this._required() ??
624
+ !!(this.control.validators()?.includes(Validators.required) || this.control.validators()?.includes(Validators.requiredTrue)));
487
625
  this.isSuccess = input(false, { transform: v => coerceBooleanProperty(v) });
488
626
  }
489
- get required() {
490
- return this._required() ?? !!this._ngControl?.control?.hasValidator(Validators.required);
491
- }
492
627
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: _FormFieldComponentBase, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
493
628
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: _FormFieldComponentBase, isStandalone: true, inputs: { _required: { classPropertyName: "_required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, isSuccess: { classPropertyName: "isSuccess", publicName: "isSuccess", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
494
629
  }
@@ -13337,6 +13472,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
13337
13472
  }]
13338
13473
  }] });
13339
13474
 
13475
+ const _formFieldDefaults = {
13476
+ defaultHintAlign: SimpleOneAxisAlignment.Left,
13477
+ reserveHintLine: false,
13478
+ labelRequiredText: '*',
13479
+ labelOptionalText: '(optional)',
13480
+ autoErrorOnlyFirstError: true,
13481
+ };
13482
+ const ARD_FORM_FIELD_DEFAULTS = new InjectionToken('ard-form-field-defaults', {
13483
+ factory: () => ({
13484
+ ..._formFieldDefaults,
13485
+ }),
13486
+ });
13487
+ function provideFormFieldDefaults(config) {
13488
+ return { provide: ARD_FORM_FIELD_DEFAULTS, useValue: { ..._formFieldDefaults, ...config } };
13489
+ }
13490
+
13491
+ const ARD_ERROR_MAP = new InjectionToken('ard-error-map', {
13492
+ factory: () => ({ $fallback: 'Provide error messages using provideErrorMap' }),
13493
+ });
13494
+ function provideErrorMap(errorMap) {
13495
+ return { provide: ARD_ERROR_MAP, useValue: errorMap };
13496
+ }
13497
+
13340
13498
  class ArdiumErrorDirective {
13341
13499
  constructor() {
13342
13500
  this.left = input(false, { transform: v => coerceBooleanProperty(v) });
@@ -13364,29 +13522,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
13364
13522
  }]
13365
13523
  }], ctorParameters: () => [] });
13366
13524
 
13367
- const _formFieldDefaults = {
13368
- defaultHintAlign: SimpleOneAxisAlignment.Left,
13369
- reserveHintLine: false,
13370
- labelRequiredText: '*',
13371
- labelOptionalText: '(optional)',
13372
- autoErrorOnlyFirstError: true,
13373
- };
13374
- const ARD_FORM_FIELD_DEFAULTS = new InjectionToken('ard-form-field-defaults', {
13375
- factory: () => ({
13376
- ..._formFieldDefaults,
13377
- }),
13378
- });
13379
- function provideFormFieldDefaults(config) {
13380
- return { provide: ARD_FORM_FIELD_DEFAULTS, useValue: { ..._formFieldDefaults, ...config } };
13381
- }
13382
-
13383
- const ARD_ERROR_MAP = new InjectionToken('ard-error-map', {
13384
- factory: () => ({ $fallback: 'Provide error messages using provideErrorMap' }),
13385
- });
13386
- function provideErrorMap(errorMap) {
13387
- return { provide: ARD_ERROR_MAP, useValue: errorMap };
13388
- }
13389
-
13390
13525
  class ArdiumErrorComponent {
13391
13526
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ArdiumErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13392
13527
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: ArdiumErrorComponent, isStandalone: false, selector: "ard-error", hostDirectives: [{ directive: ArdiumErrorDirective }], ngImport: i0, template: '<ng-content />', isInline: true }); }
@@ -13416,15 +13551,15 @@ class ArdiumAutoErrorComponent {
13416
13551
  effect(() => {
13417
13552
  const control = this.control();
13418
13553
  this._eventsSub = control.events
13419
- .pipe(filter(event => 'touched' in event || ('status' in event && (event.status === 'INVALID' || event.status === 'VALID'))), map(() => {
13554
+ .pipe(filter(event => 'touched' in event || 'status' in event), map(() => {
13420
13555
  const errors = control.errors;
13421
13556
  if (!errors || !control.touched) {
13422
13557
  return [];
13423
13558
  }
13424
- const onlyFirstError = this.onlyFirstError();
13425
13559
  if (typeof errors === 'object' && Object.keys(errors).length === 0) {
13426
13560
  return [];
13427
13561
  }
13562
+ const onlyFirstError = this.onlyFirstError();
13428
13563
  const errorMessages = [];
13429
13564
  for (const errorType in this._errorMap) {
13430
13565
  if (errorType in errors) {
@@ -13452,6 +13587,9 @@ class ArdiumAutoErrorComponent {
13452
13587
  .subscribe(errorMessages => {
13453
13588
  this.errorMessages.set(errorMessages);
13454
13589
  });
13590
+ () => {
13591
+ this._eventsSub.unsubscribe();
13592
+ };
13455
13593
  });
13456
13594
  effect(() => {
13457
13595
  if (this.left() && this.right()) {
@@ -13463,16 +13601,17 @@ class ArdiumAutoErrorComponent {
13463
13601
  this._eventsSub?.unsubscribe();
13464
13602
  }
13465
13603
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ArdiumAutoErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13466
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: ArdiumAutoErrorComponent, isStandalone: false, selector: "ard-auto-error", inputs: { control: { classPropertyName: "control", publicName: "control", isSignal: true, isRequired: true, transformFunction: null }, onlyFirstError: { classPropertyName: "onlyFirstError", publicName: "onlyFirstError", isSignal: true, isRequired: false, transformFunction: null }, left: { classPropertyName: "left", publicName: "left", isSignal: true, isRequired: false, transformFunction: null }, right: { classPropertyName: "right", publicName: "right", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.ard-error": "true", "class.ard-auto-error": "true", "class.ard-auto-error-default": "!left() && !right()", "class.ard-auto-error-left": "left() && !right()", "class.ard-auto-error-right": "!left() && right()" } }, hostDirectives: [{ directive: ArdiumErrorDirective }], ngImport: i0, template: "@for (message of errorMessages(); track message) {\r\n <ard-error>{{ message }}</ard-error>\r\n}", dependencies: [{ kind: "component", type: ArdiumErrorComponent, selector: "ard-error" }] }); }
13604
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: ArdiumAutoErrorComponent, isStandalone: false, selector: "ard-auto-error", inputs: { control: { classPropertyName: "control", publicName: "control", isSignal: true, isRequired: true, transformFunction: null }, onlyFirstError: { classPropertyName: "onlyFirstError", publicName: "onlyFirstError", isSignal: true, isRequired: false, transformFunction: null }, left: { classPropertyName: "left", publicName: "left", isSignal: true, isRequired: false, transformFunction: null }, right: { classPropertyName: "right", publicName: "right", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.ard-auto-error": "true", "class.ard-auto-error-default": "!left() && !right()", "class.ard-auto-error-left": "left() && !right()", "class.ard-auto-error-right": "!left() && right()", "class.ard-auto-error__no-errors": "errorMessages().length === 0", "class.ard-auto-error__has-errors": "errorMessages().length > 0" } }, ngImport: i0, template: "@for (message of errorMessages(); track message) {\r\n <ard-error>{{ message }}</ard-error>\r\n}", dependencies: [{ kind: "component", type: ArdiumErrorComponent, selector: "ard-error" }] }); }
13467
13605
  }
13468
13606
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ArdiumAutoErrorComponent, decorators: [{
13469
13607
  type: Component,
13470
- args: [{ standalone: false, selector: 'ard-auto-error', hostDirectives: [{ directive: ArdiumErrorDirective }], host: {
13471
- '[class.ard-error]': 'true',
13608
+ args: [{ standalone: false, selector: 'ard-auto-error', host: {
13472
13609
  '[class.ard-auto-error]': 'true',
13473
13610
  '[class.ard-auto-error-default]': '!left() && !right()',
13474
13611
  '[class.ard-auto-error-left]': 'left() && !right()',
13475
13612
  '[class.ard-auto-error-right]': '!left() && right()',
13613
+ '[class.ard-auto-error__no-errors]': 'errorMessages().length === 0',
13614
+ '[class.ard-auto-error__has-errors]': 'errorMessages().length > 0',
13476
13615
  }, template: "@for (message of errorMessages(); track message) {\r\n <ard-error>{{ message }}</ard-error>\r\n}" }]
13477
13616
  }], ctorParameters: () => [] });
13478
13617
 
@@ -13482,46 +13621,24 @@ class ArdiumFormFieldNativeInputAdapterDirective {
13482
13621
  transform: v => coerceBooleanProperty(v),
13483
13622
  alias: 'required',
13484
13623
  });
13624
+ this.required = computed(() => this._required() ??
13625
+ !!(this.control.validators()?.includes(Validators.required) || this.control.validators()?.includes(Validators.requiredTrue)));
13485
13626
  this.isSuccess = input(false, { transform: v => coerceBooleanProperty(v) });
13486
13627
  this.disabled = input(false, { transform: v => coerceBooleanProperty(v) });
13487
13628
  //! form field related
13488
- this._injector = inject(Injector);
13489
- this.wasTouched = signal(false);
13490
- this._ngControl = null;
13629
+ this.control = trackFormControl(this, { attachValueAccessor: false });
13491
13630
  this.htmlId = input(TakeChance.id());
13492
13631
  this._hasError = input(undefined, {
13493
13632
  transform: v => coerceBooleanProperty(v),
13494
13633
  alias: 'hasError',
13495
13634
  });
13496
- this._hasErrorInControl = signal(false);
13497
- this.hasError = computed(() => this._hasError() ?? (this.wasTouched() && this._hasErrorInControl()));
13498
- }
13499
- get required() {
13500
- return this._required() ?? !!this._ngControl?.control?.hasValidator(Validators.required);
13635
+ this.hasError = computed(() => this._hasError() ?? (this.control.touched() && this.control.invalid()));
13501
13636
  }
13502
13637
  ngOnInit() {
13503
- this._ngControl = this._injector.get(NgControl, null);
13504
- if (this._ngControl) {
13505
- // if (!this._ngControl.valueAccessor || (this && this instanceof (this._ngControl.valueAccessor as any).constructor)) {
13506
- // this._ngControl.valueAccessor = this;
13507
- // }
13508
- this._hasErrorInControl.set(this._ngControl.status === 'INVALID');
13509
- this._statusChangesSub = this._ngControl.statusChanges
13510
- ?.pipe(map(v => v === 'INVALID'))
13511
- .subscribe(v => this._hasErrorInControl.set(v));
13512
- if (!this._ngControl.control)
13513
- return;
13514
- runInInjectionContext(this._injector, () => {
13515
- // do not read the next line of code if you are easily frightened
13516
- // I'm not proud of this part, but it had to be done. God please forgive me
13517
- // I didn't find any other feasible way to detect when the control changes its touched state
13518
- // so it had to be hacked like this
13519
- toObservable(this._ngControl?.control?.touchedReactive)?.subscribe(v => this.wasTouched.set(v));
13520
- });
13521
- }
13638
+ this.control.init();
13522
13639
  }
13523
13640
  ngOnDestroy() {
13524
- this._statusChangesSub?.unsubscribe();
13641
+ this.control.destroy();
13525
13642
  }
13526
13643
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ArdiumFormFieldNativeInputAdapterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
13527
13644
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: ArdiumFormFieldNativeInputAdapterDirective, isStandalone: false, selector: "ard-form-field > input, ard-form-field > textarea, ard-form-field > select, ard-horizontal-form-field > input, ard-horizontal-form-field > textarea, ard-horizontal-form-field > select", inputs: { _required: { classPropertyName: "_required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, isSuccess: { classPropertyName: "isSuccess", publicName: "isSuccess", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, htmlId: { classPropertyName: "htmlId", publicName: "htmlId", isSignal: true, isRequired: false, transformFunction: null }, _hasError: { classPropertyName: "_hasError", publicName: "hasError", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.ard-has-error": "hasError()", "class.ard-is-success": "isSuccess()" } }, providers: [
@@ -13682,11 +13799,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
13682
13799
 
13683
13800
  class ArdiumFormFieldComponent extends _FormFieldBase {
13684
13801
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ArdiumFormFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
13685
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: ArdiumFormFieldComponent, isStandalone: false, selector: "ard-form-field", usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"ard-form-field\"\r\n [class.ard-form-field__with-error]=\"controlHasError\"\r\n [class.ard-form-field__is-success]=\"controlIsSuccess\"\r\n [class.ard-form-field__control-disabled]=\"controlDisabled\"\r\n>\r\n <label\r\n class=\"ard-form-field__label\"\r\n [attr.for]=\"controlHtmlId\"\r\n >\r\n <ng-content select=\"ard-label, [ard-label]\" />\r\n </label>\r\n <div class=\"ard-form-field__input\">\r\n <ng-content />\r\n </div>\r\n <div\r\n class=\"ard-form-field__hints\"\r\n [class.ard-form-field__errors]=\"hasAnyError()\"\r\n [class.ard-form-field__reserve-hint-line]=\"reserveHintLine() || hasAnyHint()\"\r\n [class.ard-form-field__hints-default-left]=\"alignHintToLeftByDefault()\"\r\n >\r\n @if (hasAnyError()) {\r\n <div class=\"ard-form-field__errors-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[left], [ard-error][left], ard-auto-error[left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__errors-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[right], [ard-error][right], ard-auto-error[right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n } @else {\r\n <div class=\"ard-form-field__hints-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[left], [ard-hint][left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__hints-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[right], [ard-hint][right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultHints>\r\n <ng-content select=\"ard-hint:not([left]):not([right]), [ard-hint]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultErrors>\r\n <ng-content select=\"ard-error:not([left]):not([right]), [ard-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultAutoErrors>\r\n <ng-content select=\"ard-auto-error:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultHintErrors>\r\n <ng-content select=\"ard-hint-error:not([left]):not([right]), [ard-hint-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n<ng-template #leftHintErrors>\r\n <ng-content select=\"ard-hint-error[left], [ard-hint-error][left]\" />\r\n</ng-template>\r\n<ng-template #rightHintErrors>\r\n <ng-content select=\"ard-hint-error[right], [ard-hint-error][right]\" />\r\n</ng-template>\r\n", styles: [":host{display:block}.ard-horizontal-form-field{display:flex}.ard-form-field__hints,.ard-form-field__errors{display:flex;justify-content:space-between}.ard-form-field__hints>*,.ard-form-field__errors>*{display:flex;flex-direction:column}.ard-form-field__hints .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors .ard-form-field__errors-left .ard-form-field__default-error{display:none}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error{display:flex;flex-direction:column}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
13802
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: ArdiumFormFieldComponent, isStandalone: false, selector: "ard-form-field", usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"ard-form-field\"\r\n [class.ard-form-field__with-error]=\"controlHasError\"\r\n [class.ard-form-field__is-success]=\"controlIsSuccess\"\r\n [class.ard-form-field__control-disabled]=\"controlDisabled\"\r\n>\r\n <label\r\n class=\"ard-form-field__label\"\r\n [attr.for]=\"controlHtmlId\"\r\n >\r\n <ng-content select=\"ard-label, [ard-label]\" />\r\n </label>\r\n <div class=\"ard-form-field__input\">\r\n <ng-content />\r\n </div>\r\n <div\r\n class=\"ard-form-field__hints\"\r\n [class.ard-form-field__errors]=\"hasAnyError()\"\r\n [class.ard-form-field__reserve-hint-line]=\"reserveHintLine() || hasAnyHint()\"\r\n [class.ard-form-field__hints-default-left]=\"alignHintToLeftByDefault()\"\r\n >\r\n @if (hasAnyError()) {\r\n <div class=\"ard-form-field__errors-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[left], [ard-error][left], ard-auto-error[left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__errors-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[right], [ard-error][right], ard-auto-error[right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n } @else {\r\n <div class=\"ard-form-field__hints-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[left], [ard-hint][left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__hints-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[right], [ard-hint][right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultHints>\r\n <ng-content select=\"ard-hint:not([left]):not([right]), [ard-hint]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultErrors>\r\n <ng-content select=\"ard-error:not([left]):not([right]), [ard-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultAutoErrors>\r\n <ng-content select=\"ard-auto-error:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultHintErrors>\r\n <ng-content select=\"ard-hint-error:not([left]):not([right]), [ard-hint-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n<ng-template #leftHintErrors>\r\n <ng-content select=\"ard-hint-error[left], [ard-hint-error][left]\" />\r\n</ng-template>\r\n<ng-template #rightHintErrors>\r\n <ng-content select=\"ard-hint-error[right], [ard-hint-error][right]\" />\r\n</ng-template>\r\n", styles: ["ard-form-field,ard-horizontal-form-field{display:block}.ard-horizontal-form-field{display:flex}.ard-form-field__hints,.ard-form-field__errors{display:flex;justify-content:space-between}.ard-form-field__hints>*,.ard-form-field__errors>*{display:flex;flex-direction:column}.ard-form-field__hints .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors .ard-form-field__errors-left .ard-form-field__default-error{display:none}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error{display:flex;flex-direction:column}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error,.ard-auto-error__no-errors{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
13686
13803
  }
13687
13804
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ArdiumFormFieldComponent, decorators: [{
13688
13805
  type: Component,
13689
- args: [{ standalone: false, selector: 'ard-form-field', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"ard-form-field\"\r\n [class.ard-form-field__with-error]=\"controlHasError\"\r\n [class.ard-form-field__is-success]=\"controlIsSuccess\"\r\n [class.ard-form-field__control-disabled]=\"controlDisabled\"\r\n>\r\n <label\r\n class=\"ard-form-field__label\"\r\n [attr.for]=\"controlHtmlId\"\r\n >\r\n <ng-content select=\"ard-label, [ard-label]\" />\r\n </label>\r\n <div class=\"ard-form-field__input\">\r\n <ng-content />\r\n </div>\r\n <div\r\n class=\"ard-form-field__hints\"\r\n [class.ard-form-field__errors]=\"hasAnyError()\"\r\n [class.ard-form-field__reserve-hint-line]=\"reserveHintLine() || hasAnyHint()\"\r\n [class.ard-form-field__hints-default-left]=\"alignHintToLeftByDefault()\"\r\n >\r\n @if (hasAnyError()) {\r\n <div class=\"ard-form-field__errors-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[left], [ard-error][left], ard-auto-error[left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__errors-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[right], [ard-error][right], ard-auto-error[right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n } @else {\r\n <div class=\"ard-form-field__hints-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[left], [ard-hint][left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__hints-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[right], [ard-hint][right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultHints>\r\n <ng-content select=\"ard-hint:not([left]):not([right]), [ard-hint]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultErrors>\r\n <ng-content select=\"ard-error:not([left]):not([right]), [ard-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultAutoErrors>\r\n <ng-content select=\"ard-auto-error:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultHintErrors>\r\n <ng-content select=\"ard-hint-error:not([left]):not([right]), [ard-hint-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n<ng-template #leftHintErrors>\r\n <ng-content select=\"ard-hint-error[left], [ard-hint-error][left]\" />\r\n</ng-template>\r\n<ng-template #rightHintErrors>\r\n <ng-content select=\"ard-hint-error[right], [ard-hint-error][right]\" />\r\n</ng-template>\r\n", styles: [":host{display:block}.ard-horizontal-form-field{display:flex}.ard-form-field__hints,.ard-form-field__errors{display:flex;justify-content:space-between}.ard-form-field__hints>*,.ard-form-field__errors>*{display:flex;flex-direction:column}.ard-form-field__hints .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors .ard-form-field__errors-left .ard-form-field__default-error{display:none}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error{display:flex;flex-direction:column}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error{display:none}\n"] }]
13806
+ args: [{ standalone: false, selector: 'ard-form-field', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"ard-form-field\"\r\n [class.ard-form-field__with-error]=\"controlHasError\"\r\n [class.ard-form-field__is-success]=\"controlIsSuccess\"\r\n [class.ard-form-field__control-disabled]=\"controlDisabled\"\r\n>\r\n <label\r\n class=\"ard-form-field__label\"\r\n [attr.for]=\"controlHtmlId\"\r\n >\r\n <ng-content select=\"ard-label, [ard-label]\" />\r\n </label>\r\n <div class=\"ard-form-field__input\">\r\n <ng-content />\r\n </div>\r\n <div\r\n class=\"ard-form-field__hints\"\r\n [class.ard-form-field__errors]=\"hasAnyError()\"\r\n [class.ard-form-field__reserve-hint-line]=\"reserveHintLine() || hasAnyHint()\"\r\n [class.ard-form-field__hints-default-left]=\"alignHintToLeftByDefault()\"\r\n >\r\n @if (hasAnyError()) {\r\n <div class=\"ard-form-field__errors-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[left], [ard-error][left], ard-auto-error[left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__errors-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[right], [ard-error][right], ard-auto-error[right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n } @else {\r\n <div class=\"ard-form-field__hints-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[left], [ard-hint][left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__hints-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[right], [ard-hint][right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultHints>\r\n <ng-content select=\"ard-hint:not([left]):not([right]), [ard-hint]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultErrors>\r\n <ng-content select=\"ard-error:not([left]):not([right]), [ard-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultAutoErrors>\r\n <ng-content select=\"ard-auto-error:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultHintErrors>\r\n <ng-content select=\"ard-hint-error:not([left]):not([right]), [ard-hint-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n<ng-template #leftHintErrors>\r\n <ng-content select=\"ard-hint-error[left], [ard-hint-error][left]\" />\r\n</ng-template>\r\n<ng-template #rightHintErrors>\r\n <ng-content select=\"ard-hint-error[right], [ard-hint-error][right]\" />\r\n</ng-template>\r\n", styles: ["ard-form-field,ard-horizontal-form-field{display:block}.ard-horizontal-form-field{display:flex}.ard-form-field__hints,.ard-form-field__errors{display:flex;justify-content:space-between}.ard-form-field__hints>*,.ard-form-field__errors>*{display:flex;flex-direction:column}.ard-form-field__hints .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors .ard-form-field__errors-left .ard-form-field__default-error{display:none}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error{display:flex;flex-direction:column}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error,.ard-auto-error__no-errors{display:none}\n"] }]
13690
13807
  }] });
13691
13808
 
13692
13809
  class ArdiumHintErrorComponent {
@@ -13719,11 +13836,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
13719
13836
 
13720
13837
  class ArdiumHorizontalFormFieldComponent extends _FormFieldBase {
13721
13838
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ArdiumHorizontalFormFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
13722
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: ArdiumHorizontalFormFieldComponent, isStandalone: false, selector: "ard-horizontal-form-field", usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"ard-horizontal-form-field\"\r\n [class.ard-form-field__with-error]=\"controlHasError\"\r\n [class.ard-form-field__is-success]=\"controlIsSuccess\"\r\n [class.ard-form-field__control-disabled]=\"controlDisabled\"\r\n>\r\n <div class=\"ard-form-field__label-container\">\r\n <label\r\n class=\"ard-form-field__label\"\r\n [attr.for]=\"controlHtmlId\"\r\n >\r\n <ng-content select=\"ard-label, [ard-label]\" />\r\n </label>\r\n </div>\r\n <div class=\"ard-form-field__non-label\">\r\n <div class=\"ard-form-field__input\">\r\n <ng-content />\r\n </div>\r\n <div\r\n class=\"ard-form-field__hints\"\r\n [class.ard-form-field__errors]=\"hasAnyError()\"\r\n [class.ard-form-field__reserve-hint-line]=\"reserveHintLine() || hasAnyHint()\"\r\n [class.ard-form-field__hints-default-left]=\"alignHintToLeftByDefault()\"\r\n >\r\n @if (hasAnyError()) {\r\n <div class=\"ard-form-field__errors-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[left], [ard-error][left], ard-auto-error[left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__errors-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[right], [ard-error][right], ard-auto-error[right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n } @else {\r\n <div class=\"ard-form-field__hints-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[left], [ard-hint][left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__hints-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[right], [ard-hint][right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultHints>\r\n <ng-content select=\"ard-hint:not([left]):not([right]), [ard-hint]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultAutoErrors>\r\n <ng-content select=\"ard-auto-error:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultErrors>\r\n <ng-content select=\"ard-error:not([left]):not([right]), [ard-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultHintErrors>\r\n <ng-content select=\"ard-hint-error:not([left]):not([right]), [ard-hint-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n<ng-template #leftHintErrors>\r\n <ng-content select=\"ard-hint-error[left], [ard-hint-error][left]\" />\r\n</ng-template>\r\n<ng-template #rightHintErrors>\r\n <ng-content select=\"ard-hint-error[right], [ard-hint-error][right]\" />\r\n</ng-template>\r\n", styles: [":host{display:block}.ard-horizontal-form-field{display:flex}.ard-form-field__hints,.ard-form-field__errors{display:flex;justify-content:space-between}.ard-form-field__hints>*,.ard-form-field__errors>*{display:flex;flex-direction:column}.ard-form-field__hints .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors .ard-form-field__errors-left .ard-form-field__default-error{display:none}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error{display:flex;flex-direction:column}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
13839
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: ArdiumHorizontalFormFieldComponent, isStandalone: false, selector: "ard-horizontal-form-field", usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"ard-horizontal-form-field\"\r\n [class.ard-form-field__with-error]=\"controlHasError\"\r\n [class.ard-form-field__is-success]=\"controlIsSuccess\"\r\n [class.ard-form-field__control-disabled]=\"controlDisabled\"\r\n>\r\n <div class=\"ard-form-field__label-container\">\r\n <label\r\n class=\"ard-form-field__label\"\r\n [attr.for]=\"controlHtmlId\"\r\n >\r\n <ng-content select=\"ard-label, [ard-label]\" />\r\n </label>\r\n </div>\r\n <div class=\"ard-form-field__non-label\">\r\n <div class=\"ard-form-field__input\">\r\n <ng-content />\r\n </div>\r\n <div\r\n class=\"ard-form-field__hints\"\r\n [class.ard-form-field__errors]=\"hasAnyError()\"\r\n [class.ard-form-field__reserve-hint-line]=\"reserveHintLine() || hasAnyHint()\"\r\n [class.ard-form-field__hints-default-left]=\"alignHintToLeftByDefault()\"\r\n >\r\n @if (hasAnyError()) {\r\n <div class=\"ard-form-field__errors-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[left], [ard-error][left], ard-auto-error[left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__errors-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[right], [ard-error][right], ard-auto-error[right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n } @else {\r\n <div class=\"ard-form-field__hints-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[left], [ard-hint][left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__hints-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[right], [ard-hint][right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultHints>\r\n <ng-content select=\"ard-hint:not([left]):not([right]), [ard-hint]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultAutoErrors>\r\n <ng-content select=\"ard-auto-error:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultErrors>\r\n <ng-content select=\"ard-error:not([left]):not([right]), [ard-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultHintErrors>\r\n <ng-content select=\"ard-hint-error:not([left]):not([right]), [ard-hint-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n<ng-template #leftHintErrors>\r\n <ng-content select=\"ard-hint-error[left], [ard-hint-error][left]\" />\r\n</ng-template>\r\n<ng-template #rightHintErrors>\r\n <ng-content select=\"ard-hint-error[right], [ard-hint-error][right]\" />\r\n</ng-template>\r\n", styles: ["ard-form-field,ard-horizontal-form-field{display:block}.ard-horizontal-form-field{display:flex}.ard-form-field__hints,.ard-form-field__errors{display:flex;justify-content:space-between}.ard-form-field__hints>*,.ard-form-field__errors>*{display:flex;flex-direction:column}.ard-form-field__hints .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors .ard-form-field__errors-left .ard-form-field__default-error{display:none}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error{display:flex;flex-direction:column}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error,.ard-auto-error__no-errors{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
13723
13840
  }
13724
13841
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ArdiumHorizontalFormFieldComponent, decorators: [{
13725
13842
  type: Component,
13726
- args: [{ standalone: false, selector: 'ard-horizontal-form-field', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"ard-horizontal-form-field\"\r\n [class.ard-form-field__with-error]=\"controlHasError\"\r\n [class.ard-form-field__is-success]=\"controlIsSuccess\"\r\n [class.ard-form-field__control-disabled]=\"controlDisabled\"\r\n>\r\n <div class=\"ard-form-field__label-container\">\r\n <label\r\n class=\"ard-form-field__label\"\r\n [attr.for]=\"controlHtmlId\"\r\n >\r\n <ng-content select=\"ard-label, [ard-label]\" />\r\n </label>\r\n </div>\r\n <div class=\"ard-form-field__non-label\">\r\n <div class=\"ard-form-field__input\">\r\n <ng-content />\r\n </div>\r\n <div\r\n class=\"ard-form-field__hints\"\r\n [class.ard-form-field__errors]=\"hasAnyError()\"\r\n [class.ard-form-field__reserve-hint-line]=\"reserveHintLine() || hasAnyHint()\"\r\n [class.ard-form-field__hints-default-left]=\"alignHintToLeftByDefault()\"\r\n >\r\n @if (hasAnyError()) {\r\n <div class=\"ard-form-field__errors-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[left], [ard-error][left], ard-auto-error[left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__errors-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[right], [ard-error][right], ard-auto-error[right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n } @else {\r\n <div class=\"ard-form-field__hints-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[left], [ard-hint][left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__hints-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[right], [ard-hint][right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultHints>\r\n <ng-content select=\"ard-hint:not([left]):not([right]), [ard-hint]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultAutoErrors>\r\n <ng-content select=\"ard-auto-error:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultErrors>\r\n <ng-content select=\"ard-error:not([left]):not([right]), [ard-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultHintErrors>\r\n <ng-content select=\"ard-hint-error:not([left]):not([right]), [ard-hint-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n<ng-template #leftHintErrors>\r\n <ng-content select=\"ard-hint-error[left], [ard-hint-error][left]\" />\r\n</ng-template>\r\n<ng-template #rightHintErrors>\r\n <ng-content select=\"ard-hint-error[right], [ard-hint-error][right]\" />\r\n</ng-template>\r\n", styles: [":host{display:block}.ard-horizontal-form-field{display:flex}.ard-form-field__hints,.ard-form-field__errors{display:flex;justify-content:space-between}.ard-form-field__hints>*,.ard-form-field__errors>*{display:flex;flex-direction:column}.ard-form-field__hints .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors .ard-form-field__errors-left .ard-form-field__default-error{display:none}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error{display:flex;flex-direction:column}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error{display:none}\n"] }]
13843
+ args: [{ standalone: false, selector: 'ard-horizontal-form-field', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"ard-horizontal-form-field\"\r\n [class.ard-form-field__with-error]=\"controlHasError\"\r\n [class.ard-form-field__is-success]=\"controlIsSuccess\"\r\n [class.ard-form-field__control-disabled]=\"controlDisabled\"\r\n>\r\n <div class=\"ard-form-field__label-container\">\r\n <label\r\n class=\"ard-form-field__label\"\r\n [attr.for]=\"controlHtmlId\"\r\n >\r\n <ng-content select=\"ard-label, [ard-label]\" />\r\n </label>\r\n </div>\r\n <div class=\"ard-form-field__non-label\">\r\n <div class=\"ard-form-field__input\">\r\n <ng-content />\r\n </div>\r\n <div\r\n class=\"ard-form-field__hints\"\r\n [class.ard-form-field__errors]=\"hasAnyError()\"\r\n [class.ard-form-field__reserve-hint-line]=\"reserveHintLine() || hasAnyHint()\"\r\n [class.ard-form-field__hints-default-left]=\"alignHintToLeftByDefault()\"\r\n >\r\n @if (hasAnyError()) {\r\n <div class=\"ard-form-field__errors-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[left], [ard-error][left], ard-auto-error[left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__errors-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-error\">\r\n <ng-template [ngTemplateOutlet]=\"defaultAutoErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultErrors\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-error[right], [ard-error][right], ard-auto-error[right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n } @else {\r\n <div class=\"ard-form-field__hints-left\">\r\n @if (alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[left], [ard-hint][left]\" />\r\n <ng-template [ngTemplateOutlet]=\"leftHintErrors\" />\r\n </div>\r\n <div class=\"ard-form-field__hints-right\">\r\n @if (!alignHintToLeftByDefault()) {\r\n <div class=\"ard-form-field__default-hint\">\r\n <ng-template [ngTemplateOutlet]=\"defaultHints\" />\r\n <ng-template [ngTemplateOutlet]=\"defaultHintErrors\" />\r\n </div>\r\n }\r\n <ng-content select=\"ard-hint[right], [ard-hint][right]\" />\r\n <ng-template [ngTemplateOutlet]=\"rightHintErrors\" />\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultHints>\r\n <ng-content select=\"ard-hint:not([left]):not([right]), [ard-hint]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultAutoErrors>\r\n <ng-content select=\"ard-auto-error:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultErrors>\r\n <ng-content select=\"ard-error:not([left]):not([right]), [ard-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n\r\n<ng-template #defaultHintErrors>\r\n <ng-content select=\"ard-hint-error:not([left]):not([right]), [ard-hint-error]:not([left]):not([right])\" />\r\n</ng-template>\r\n<ng-template #leftHintErrors>\r\n <ng-content select=\"ard-hint-error[left], [ard-hint-error][left]\" />\r\n</ng-template>\r\n<ng-template #rightHintErrors>\r\n <ng-content select=\"ard-hint-error[right], [ard-hint-error][right]\" />\r\n</ng-template>\r\n", styles: ["ard-form-field,ard-horizontal-form-field{display:block}.ard-horizontal-form-field{display:flex}.ard-form-field__hints,.ard-form-field__errors{display:flex;justify-content:space-between}.ard-form-field__hints>*,.ard-form-field__errors>*{display:flex;flex-direction:column}.ard-form-field__hints .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors .ard-form-field__errors-left .ard-form-field__default-error{display:none}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-left .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-left .ard-form-field__default-error{display:flex;flex-direction:column}.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__hints.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__hints-right .ard-form-field__default-hint,.ard-form-field__errors.ard-form-field__hints-default-left .ard-form-field__errors-right .ard-form-field__default-error,.ard-auto-error__no-errors{display:none}\n"] }]
13727
13844
  }] });
13728
13845
 
13729
13846
  class ArdiumFormFieldModule {
@@ -17157,5 +17274,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
17157
17274
  * Generated bundle index. Do not edit.
17158
17275
  */
17159
17276
 
17160
- export { ARD_BADGE_DEFAULTS, ARD_BREAKPOINTS, ARD_BUTTON_DEFAULTS, ARD_CALENDAR_DEFAULTS, ARD_CARD_DEFAULTS, ARD_CHECKBOX_DEFAULTS, ARD_CHECKBOX_LIST_DEFAULTS, ARD_CHIP_DEFAULTS, ARD_DATE_INPUT_DEFAULTS, ARD_DELETABLE_CHIP_DEFAULTS, ARD_DIALOG_DEFAULTS, ARD_DIGIT_INPUT_DEFAULTS, ARD_DIVIDER_DEFAULTS, ARD_DROPDOWN_PANEL_DEFAULTS, ARD_ERROR_MAP, ARD_FAB_DEFAULTS, ARD_FILE_DROP_AREA_DEFAULTS, ARD_FILE_INPUT_DEFAULTS, ARD_FORM_FIELD_CONTROL, ARD_FORM_FIELD_DEFAULTS, ARD_FORM_FIELD_FRAME_DEFAULTS, ARD_GRID_DEFAULTS, ARD_HEX_INPUT_DEFAULTS, ARD_ICON_BUTTON_DEFAULTS, ARD_ICON_DEFAULTS, ARD_KBD_DEFAULTS, ARD_KBD_SHORTCUT_DEFAULTS, ARD_MODAL_DEFAULTS, ARD_NUMBER_INPUT_DEFAULTS, ARD_PASSWORD_INPUT_DEFAULTS, ARD_PROGRESS_BAR_DEFAULTS, ARD_PROGRESS_CIRCLE_DEFAULTS, ARD_RADIO_DEFAULTS, ARD_RATING_DISPLAY_DEFAULTS, ARD_RATING_INPUT_DEFAULTS, ARD_SEGMENT_DEFAULTS, ARD_SELECTABLE_CHIP_DEFAULTS, ARD_SELECT_DEFAULTS, ARD_SIMPLE_INPUT_DEFAULTS, ARD_SLIDER_DEFAULTS, ARD_SLIDE_TOGGLE_DEFAULTS, ARD_SNACKBAR_ANIMATION_LENGTH, ARD_SNACKBAR_DATA, ARD_SNACKBAR_DEFAULTS, ARD_SPINNER_DEFAULTS, ARD_STAR_BUTTON_DEFAULTS, ARD_STAR_DEFAULTS, ARD_STATEBOX_DEFAULTS, ARD_TABBER_DEFAULTS, ARD_TABLE_DEFAULTS, ARD_TABLE_FROM_CSV_DEFAULTS, ARD_TABLE_PAGINATION_DEFAULTS, ArdAddCustomTemplateDirective, ArdAutocompleteInputLoadingTemplateDirective, ArdAutocompleteInputPlaceholderTemplateDirective, ArdAutocompleteInputPrefixTemplateDirective, ArdAutocompleteInputSuffixTemplateDirective, ArdAutocompleteInputSuggestionTemplateDirective, ArdCalendarDayTemplateDirective, ArdCalendarDaysViewHeaderTemplateDirective, ArdCalendarFloatingMonthTemplateDirective, ArdCalendarMonthTemplateDirective, ArdCalendarMonthsViewHeaderTemplateDirective, ArdCalendarView, ArdCalendarWeekdayTemplateDirective, ArdCalendarYearTemplateDirective, ArdCalendarYearsViewHeaderTemplateDirective, ArdCheckboxListCheckboxTemplateDirective, ArdCheckboxListLabelTemplateDirective, ArdCheckboxTemplateDirective, ArdDateInputAcceptButtonsTemplateDirective, ArdDateInputCalendarIconTemplateDirective, ArdDateInputDayTemplateDirective, ArdDateInputDaysViewHeaderTemplateDirective, ArdDateInputFloatingMonthTemplateDirective, ArdDateInputMinMaxStrategy, ArdDateInputMonthTemplateDirective, ArdDateInputMonthsViewHeaderTemplateDirective, ArdDateInputPrefixTemplateDirective, ArdDateInputSuffixTemplateDirective, ArdDateInputValueTemplateDirective, ArdDateInputWeekdayTemplateDirective, ArdDateInputYearTemplateDirective, ArdDateInputYearsViewHeaderTemplateDirective, ArdDateRangeInputAcceptButtonsTemplateDirective, ArdDateRangeInputCalendarIconTemplateDirective, ArdDateRangeInputDayTemplateDirective, ArdDateRangeInputDaysViewHeaderTemplateDirective, ArdDateRangeInputFloatingMonthTemplateDirective, ArdDateRangeInputMonthTemplateDirective, ArdDateRangeInputMonthsViewHeaderTemplateDirective, ArdDateRangeInputPrefixTemplateDirective, ArdDateRangeInputSuffixTemplateDirective, ArdDateRangeInputValueTemplateDirective, ArdDateRangeInputWeekdayTemplateDirective, ArdDateRangeInputYearTemplateDirective, ArdDateRangeInputYearsViewHeaderTemplateDirective, ArdDialogActionType, ArdDialogButtonsTemplateDirective, ArdDialogCloseIconTemplateDirective, ArdDialogResult, ArdDropdownFooterTemplateDirective, ArdDropdownHeaderTemplateDirective, ArdFileInputPlaceholderTemplateDirective, ArdFileInputPrefixTemplateDirective, ArdFileInputSuffixTemplateDirective, ArdFormFieldPrefixTemplateDirective, ArdFormFieldSuffixTemplateDirective, ArdGridAlign, ArdGridDirection, ArdGridJustify, ArdGridSize, ArdGridWrap, ArdHexInputPlaceholderTemplateDirective, ArdHexInputPrefixTemplateDirective, ArdHexInputSuffixTemplateDirective, ArdInputPlaceholderTemplateDirective, ArdInputPrefixTemplateDirective, ArdInputSuffixTemplateDirective, ArdItemDisplayLimitTemplateDirective, ArdItemLimitReachedTemplateDirective, ArdLoadingPlaceholderTemplateDirective, ArdLoadingSpinnerTemplateDirective, ArdModalCloseIconTemplateDirective, ArdMultiCalendarLocation, ArdMultipageDateRangeInputAcceptButtonsTemplateDirective, ArdMultipageDateRangeInputCalendarIconTemplateDirective, ArdMultipageDateRangeInputDayTemplateDirective, ArdMultipageDateRangeInputDaysViewHeaderTemplateDirective, ArdMultipageDateRangeInputFloatingMonthTemplateDirective, ArdMultipageDateRangeInputMonthTemplateDirective, ArdMultipageDateRangeInputMonthsViewHeaderTemplateDirective, ArdMultipageDateRangeInputPrefixTemplateDirective, ArdMultipageDateRangeInputSuffixTemplateDirective, ArdMultipageDateRangeInputValueTemplateDirective, ArdMultipageDateRangeInputWeekdayTemplateDirective, ArdMultipageDateRangeInputYearTemplateDirective, ArdMultipageDateRangeInputYearsViewHeaderTemplateDirective, ArdNoItemsFoundTemplateDirective, ArdNumberInputPlaceholderTemplateDirective, ArdNumberInputPrefixTemplateDirective, ArdNumberInputSuffixTemplateDirective, ArdOptgroupTemplateDirective, ArdOptionTemplateDirective, ArdPanelPosition, ArdPasswordInputPlaceholderTemplateDirective, ArdPasswordInputPrefixTemplateDirective, ArdPasswordInputRevealButtonTemplateDirective, ArdPasswordInputSuffixTemplateDirective, ArdProgressBarValueTemplateDirective, ArdProgressCircleValueTemplateDirective, ArdRangeCalendarDayTemplateDirective, ArdRangeCalendarDaysViewHeaderTemplateDirective, ArdRangeCalendarFloatingMonthTemplateDirective, ArdRangeCalendarMonthTemplateDirective, ArdRangeCalendarMonthsViewHeaderTemplateDirective, ArdRangeCalendarWeekdayTemplateDirective, ArdRangeCalendarYearTemplateDirective, ArdRangeCalendarYearsViewHeaderTemplateDirective, ArdRangeSelectionBehavior, ArdRatingDisplayStarTemplateDirective, ArdRatingInputStarButtonTemplateDirective, searchFunctions as ArdSearchFunction, ArdSegmentOptionTemplateDirective, ArdSelectDropdownArrowTemplateDirective, ArdSelectPlaceholderTemplateDirective, ArdSelectPrefixTemplateDirective, ArdSelectSuffixTemplateDirective, ArdSlideToggleAppearance, ArdSliderTooltipDirective, ArdSnackbarAlignment, ArdSnackbarOriginRelation, ArdSnackbarQueueHandling, ArdSnackbarRef, ArdSnackbarType, ArdStarButtonStarTemplateDirective, ArdStarIconTemplateDirective, ArdTabberLabelTemplateDirective, ArdValueChipTemplateDirective, ArdValueTemplateDirective, ArdiumAutoErrorComponent, ArdiumAutocompleteInputComponent, ArdiumAutocompleteInputModule, ArdiumBadgeDirective, ArdiumBadgeModule, ArdiumBreakpointService, ArdiumButtonComponent, ArdiumButtonDirective, ArdiumButtonModule, ArdiumCalendarComponent, ArdiumCalendarModule, ArdiumCardActionButtonsDirective, ArdiumCardAvatarDirective, ArdiumCardComponent, ArdiumCardContentDirective, ArdiumCardDirective, ArdiumCardFooterDirective, ArdiumCardHeaderComponent, ArdiumCardImageDirective, ArdiumCardModule, ArdiumCardSubtitleDirective, ArdiumCardTitleDirective, ArdiumCheckboxComponent, ArdiumCheckboxListComponent, ArdiumCheckboxListModule, ArdiumCheckboxModule, ArdiumChipComponent, ArdiumChipModule, ArdiumDateInputComponent, ArdiumDateInputModule, ArdiumDateRangeInputComponent, ArdiumDateRangeInputModule, ArdiumDeletableChipComponent, ArdiumDialogComponent, ArdiumDialogModule, ArdiumDigitInputComponent, ArdiumDigitInputModule, ArdiumDividerComponent, ArdiumDividerModule, ArdiumDropdownPanelComponent, ArdiumDropdownPanelModule, ArdiumErrorComponent, ArdiumErrorDirective, ArdiumFabComponent, ArdiumFabModule, ArdiumFileDropAreaComponent, ArdiumFileDropAreaDragoverContentTemplateDirective, ArdiumFileDropAreaIdleContentTemplateDirective, ArdiumFileDropAreaModule, ArdiumFileDropAreaUploadedContentTemplateDirective, ArdiumFileInputComponent, ArdiumFileInputDragoverContentTemplateDirective, ArdiumFileInputFolderIconTemplateDirective, ArdiumFileInputIdleContentTemplateDirective, ArdiumFileInputModule, ArdiumFileInputUploadedContentTemplateDirective, ArdiumFormFieldComponent, ArdiumFormFieldFrameComponent, ArdiumFormFieldFrameModule, ArdiumFormFieldModule, ArdiumFormFieldNativeInputAdapterDirective, ArdiumGridComponent, ArdiumGridModule, ArdiumHexInputComponent, ArdiumHexInputModule, ArdiumHintComponent, ArdiumHintDirective, ArdiumHintErrorComponent, ArdiumHintErrorDirective, ArdiumHorizontalFormFieldComponent, ArdiumIconButtonComponent, ArdiumIconButtonModule, ArdiumIconComponent, ArdiumIconModule, ArdiumIconPipe, ArdiumInputComponent, ArdiumInputModule, ArdiumKbdComponent, ArdiumKbdDirective, ArdiumKbdModule, ArdiumKbdPipe, ArdiumKbdShortcutComponent, ArdiumKbdShortcutModule, ArdiumLabelComponent, ArdiumModalComponent, ArdiumModalModule, ArdiumMultipageDateRangeInputComponent, ArdiumMultipageDateRangeInputModule, ArdiumNumberInputComponent, ArdiumNumberInputModule, ArdiumOptionComponent, ArdiumOptionModule, ArdiumPasswordInputComponent, ArdiumPasswordInputModule, ArdiumProgressBarComponent, ArdiumProgressBarModule, ArdiumProgressCircleComponent, ArdiumProgressCircleModule, ArdiumRadioComponent, ArdiumRadioGroupComponent, ArdiumRadioModule, ArdiumRangeCalendarComponent, ArdiumRangeCalendarModule, ArdiumRangeSliderComponent, ArdiumRangeSliderModule, ArdiumRatingDisplayComponent, ArdiumRatingDisplayModule, ArdiumRatingInputComponent, ArdiumRatingInputModule, ArdiumSegmentComponent, ArdiumSegmentModule, ArdiumSelectComponent, ArdiumSelectModule, ArdiumSelectableChipComponent, ArdiumSlideToggleComponent, ArdiumSlideToggleModule, ArdiumSliderComponent, ArdiumSliderModule, ArdiumSnackbarService, ArdiumSpinnerComponent, ArdiumSpinnerModule, ArdiumStarButtonComponent, ArdiumStarButtonModule, ArdiumStarComponent, ArdiumStarModule, ArdiumStateboxComponent, ArdiumStateboxModule, ArdiumTabComponent, ArdiumTabberComponent, ArdiumTabberModule, ArdiumTableCaptionTemplateDirective, ArdiumTableCheckboxTemplateDirective, ArdiumTableComponent, ArdiumTableFromCsvComponent, ArdiumTableFromCsvModule, ArdiumTableHeaderCheckboxTemplateDirective, ArdiumTableModule, ArdiumTablePaginationComponent, ArdiumTablePaginationModule, ArdiumTablePaginationTemplateDirective, ArdiumTableTemplateDirective, ArdiumTextListComponent, ArdiumTextListModule, ArdiumTextListPipe, BadgePosition, BadgeSize, ButtonAppearance, ButtonVariant, CardAppearance, CardVariant, CheckboxListAlignType, CheckboxState, ClickStrategy, ComponentColor, DateRange, DecorationElementAppearance, DigitInputPrimitiveOption, DigitInputShape, DropdownPanelAppearance, DropdownPanelVariant, FabSize, FormElementAppearance, FormElementVariant, OneAxisAlignment, OutlinedAppearance, PaginationAlign, PanelAppearance, PanelVariant, ProgressBarAppearance, ProgressBarMode, ProgressBarSize, ProgressBarVariant, ProgressCircleAppearance, ProgressCircleVariant, SegmentAppearance, SegmentVariant, SimpleComponentColor, SimpleOneAxisAlignment, SliderDecorationPosition, SliderTooltipBehavior, SortType, StarColor, StarFillMode, TableAlignType, TableAppearance, TablePaginationStrategy, TableVariant, TransformType, _chipDefaults, _modalDefaults, isArdGridAlign, isArdGridDirection, isArdGridJustify, isArdGridSize, isArdGridWrap, provideBadgeDefaults, provideBreakpoints, provideButtonDefaults, provideCalendarDefaults, provideCardDefaults, provideCheckboxDefaults, provideCheckboxListDefaults, provideChipDefaults, provideDateInputDefaults, provideDeletableChipDefaults, provideDialogDefaults, provideDigitInputDefaults, provideDividerDefaults, provideDropdownPanelDefaults, provideErrorMap, provideFabDefaults, provideFileDropAreaDefaults, provideFileInputDefaults, provideFormFieldDefaults, provideFormFieldFrameDefaults, provideGridDefaults, provideHexInputDefaults, provideIconButtonDefaults, provideIconDefaults, provideInputDefaults, provideKbdDefaults, provideKbdShortcutDefaults, provideModalDefaults, provideNumberInputDefaults, providePasswordInputDefaults, provideProgressBarDefaults, provideProgressCircleDefaults, provideRadioDefaults, provideRatingDisplayDefaults, provideRatingInputDefaults, provideSegmentDefaults, provideSelectDefaults, provideSelectableChipDefaults, provideSlideToggleDefaults, provideSliderDefaults, provideSnackbarDefaults, provideSpinnerDefaults, provideStarButtonDefaults, provideStarDefaults, provideStateboxDefaults, provideTabberDefaults, provideTableDefaults, provideTableFromCsvDefaults, provideTablePaginationDefaults, searchInString };
17277
+ export { ARD_BADGE_DEFAULTS, ARD_BREAKPOINTS, ARD_BUTTON_DEFAULTS, ARD_CALENDAR_DEFAULTS, ARD_CARD_DEFAULTS, ARD_CHECKBOX_DEFAULTS, ARD_CHECKBOX_LIST_DEFAULTS, ARD_CHIP_DEFAULTS, ARD_DATE_INPUT_DEFAULTS, ARD_DELETABLE_CHIP_DEFAULTS, ARD_DIALOG_DEFAULTS, ARD_DIGIT_INPUT_DEFAULTS, ARD_DIVIDER_DEFAULTS, ARD_DROPDOWN_PANEL_DEFAULTS, ARD_ERROR_MAP, ARD_FAB_DEFAULTS, ARD_FILE_DROP_AREA_DEFAULTS, ARD_FILE_INPUT_DEFAULTS, ARD_FORM_FIELD_CONTROL, ARD_FORM_FIELD_DEFAULTS, ARD_FORM_FIELD_FRAME_DEFAULTS, ARD_GRID_DEFAULTS, ARD_HEX_INPUT_DEFAULTS, ARD_ICON_BUTTON_DEFAULTS, ARD_ICON_DEFAULTS, ARD_KBD_DEFAULTS, ARD_KBD_SHORTCUT_DEFAULTS, ARD_MODAL_DEFAULTS, ARD_NUMBER_INPUT_DEFAULTS, ARD_PASSWORD_INPUT_DEFAULTS, ARD_PROGRESS_BAR_DEFAULTS, ARD_PROGRESS_CIRCLE_DEFAULTS, ARD_RADIO_DEFAULTS, ARD_RATING_DISPLAY_DEFAULTS, ARD_RATING_INPUT_DEFAULTS, ARD_SEGMENT_DEFAULTS, ARD_SELECTABLE_CHIP_DEFAULTS, ARD_SELECT_DEFAULTS, ARD_SIMPLE_INPUT_DEFAULTS, ARD_SLIDER_DEFAULTS, ARD_SLIDE_TOGGLE_DEFAULTS, ARD_SNACKBAR_ANIMATION_LENGTH, ARD_SNACKBAR_DATA, ARD_SNACKBAR_DEFAULTS, ARD_SPINNER_DEFAULTS, ARD_STAR_BUTTON_DEFAULTS, ARD_STAR_DEFAULTS, ARD_STATEBOX_DEFAULTS, ARD_TABBER_DEFAULTS, ARD_TABLE_DEFAULTS, ARD_TABLE_FROM_CSV_DEFAULTS, ARD_TABLE_PAGINATION_DEFAULTS, ArdAddCustomTemplateDirective, ArdAutocompleteInputLoadingTemplateDirective, ArdAutocompleteInputPlaceholderTemplateDirective, ArdAutocompleteInputPrefixTemplateDirective, ArdAutocompleteInputSuffixTemplateDirective, ArdAutocompleteInputSuggestionTemplateDirective, ArdCalendarDayTemplateDirective, ArdCalendarDaysViewHeaderTemplateDirective, ArdCalendarFloatingMonthTemplateDirective, ArdCalendarMonthTemplateDirective, ArdCalendarMonthsViewHeaderTemplateDirective, ArdCalendarView, ArdCalendarWeekdayTemplateDirective, ArdCalendarYearTemplateDirective, ArdCalendarYearsViewHeaderTemplateDirective, ArdCheckboxListCheckboxTemplateDirective, ArdCheckboxListLabelTemplateDirective, ArdCheckboxTemplateDirective, ArdDateInputAcceptButtonsTemplateDirective, ArdDateInputCalendarIconTemplateDirective, ArdDateInputDayTemplateDirective, ArdDateInputDaysViewHeaderTemplateDirective, ArdDateInputFloatingMonthTemplateDirective, ArdDateInputMinMaxStrategy, ArdDateInputMonthTemplateDirective, ArdDateInputMonthsViewHeaderTemplateDirective, ArdDateInputPrefixTemplateDirective, ArdDateInputSuffixTemplateDirective, ArdDateInputValueTemplateDirective, ArdDateInputWeekdayTemplateDirective, ArdDateInputYearTemplateDirective, ArdDateInputYearsViewHeaderTemplateDirective, ArdDateRangeInputAcceptButtonsTemplateDirective, ArdDateRangeInputCalendarIconTemplateDirective, ArdDateRangeInputDayTemplateDirective, ArdDateRangeInputDaysViewHeaderTemplateDirective, ArdDateRangeInputFloatingMonthTemplateDirective, ArdDateRangeInputMonthTemplateDirective, ArdDateRangeInputMonthsViewHeaderTemplateDirective, ArdDateRangeInputPrefixTemplateDirective, ArdDateRangeInputSuffixTemplateDirective, ArdDateRangeInputValueTemplateDirective, ArdDateRangeInputWeekdayTemplateDirective, ArdDateRangeInputYearTemplateDirective, ArdDateRangeInputYearsViewHeaderTemplateDirective, ArdDialogActionType, ArdDialogButtonsTemplateDirective, ArdDialogCloseIconTemplateDirective, ArdDialogResult, ArdDropdownFooterTemplateDirective, ArdDropdownHeaderTemplateDirective, ArdFileInputPlaceholderTemplateDirective, ArdFileInputPrefixTemplateDirective, ArdFileInputSuffixTemplateDirective, ArdFormFieldPrefixTemplateDirective, ArdFormFieldSuffixTemplateDirective, ArdGridAlign, ArdGridDirection, ArdGridJustify, ArdGridSize, ArdGridWrap, ArdHexInputPlaceholderTemplateDirective, ArdHexInputPrefixTemplateDirective, ArdHexInputSuffixTemplateDirective, ArdInputPlaceholderTemplateDirective, ArdInputPrefixTemplateDirective, ArdInputSuffixTemplateDirective, ArdItemDisplayLimitTemplateDirective, ArdItemLimitReachedTemplateDirective, ArdLoadingPlaceholderTemplateDirective, ArdLoadingSpinnerTemplateDirective, ArdModalCloseIconTemplateDirective, ArdMultiCalendarLocation, ArdMultipageDateRangeInputAcceptButtonsTemplateDirective, ArdMultipageDateRangeInputCalendarIconTemplateDirective, ArdMultipageDateRangeInputDayTemplateDirective, ArdMultipageDateRangeInputDaysViewHeaderTemplateDirective, ArdMultipageDateRangeInputFloatingMonthTemplateDirective, ArdMultipageDateRangeInputMonthTemplateDirective, ArdMultipageDateRangeInputMonthsViewHeaderTemplateDirective, ArdMultipageDateRangeInputPrefixTemplateDirective, ArdMultipageDateRangeInputSuffixTemplateDirective, ArdMultipageDateRangeInputValueTemplateDirective, ArdMultipageDateRangeInputWeekdayTemplateDirective, ArdMultipageDateRangeInputYearTemplateDirective, ArdMultipageDateRangeInputYearsViewHeaderTemplateDirective, ArdNoItemsFoundTemplateDirective, ArdNumberInputPlaceholderTemplateDirective, ArdNumberInputPrefixTemplateDirective, ArdNumberInputSuffixTemplateDirective, ArdOptgroupTemplateDirective, ArdOptionTemplateDirective, ArdPanelPosition, ArdPasswordInputPlaceholderTemplateDirective, ArdPasswordInputPrefixTemplateDirective, ArdPasswordInputRevealButtonTemplateDirective, ArdPasswordInputSuffixTemplateDirective, ArdProgressBarValueTemplateDirective, ArdProgressCircleValueTemplateDirective, ArdRangeCalendarDayTemplateDirective, ArdRangeCalendarDaysViewHeaderTemplateDirective, ArdRangeCalendarFloatingMonthTemplateDirective, ArdRangeCalendarMonthTemplateDirective, ArdRangeCalendarMonthsViewHeaderTemplateDirective, ArdRangeCalendarWeekdayTemplateDirective, ArdRangeCalendarYearTemplateDirective, ArdRangeCalendarYearsViewHeaderTemplateDirective, ArdRangeSelectionBehavior, ArdRatingDisplayStarTemplateDirective, ArdRatingInputStarButtonTemplateDirective, searchFunctions as ArdSearchFunction, ArdSegmentOptionTemplateDirective, ArdSelectDropdownArrowTemplateDirective, ArdSelectPlaceholderTemplateDirective, ArdSelectPrefixTemplateDirective, ArdSelectSuffixTemplateDirective, ArdSlideToggleAppearance, ArdSliderTooltipDirective, ArdSnackbarAlignment, ArdSnackbarOriginRelation, ArdSnackbarQueueHandling, ArdSnackbarRef, ArdSnackbarType, ArdStarButtonStarTemplateDirective, ArdStarIconTemplateDirective, ArdTabberLabelTemplateDirective, ArdValueChipTemplateDirective, ArdValueTemplateDirective, ArdiumAutoErrorComponent, ArdiumAutocompleteInputComponent, ArdiumAutocompleteInputModule, ArdiumBadgeDirective, ArdiumBadgeModule, ArdiumBreakpointService, ArdiumButtonComponent, ArdiumButtonDirective, ArdiumButtonModule, ArdiumCalendarComponent, ArdiumCalendarModule, ArdiumCardActionButtonsDirective, ArdiumCardAvatarDirective, ArdiumCardComponent, ArdiumCardContentDirective, ArdiumCardDirective, ArdiumCardFooterDirective, ArdiumCardHeaderComponent, ArdiumCardImageDirective, ArdiumCardModule, ArdiumCardSubtitleDirective, ArdiumCardTitleDirective, ArdiumCheckboxComponent, ArdiumCheckboxListComponent, ArdiumCheckboxListModule, ArdiumCheckboxModule, ArdiumChipComponent, ArdiumChipModule, ArdiumDateInputComponent, ArdiumDateInputModule, ArdiumDateRangeInputComponent, ArdiumDateRangeInputModule, ArdiumDeletableChipComponent, ArdiumDialogComponent, ArdiumDialogModule, ArdiumDigitInputComponent, ArdiumDigitInputModule, ArdiumDividerComponent, ArdiumDividerModule, ArdiumDropdownPanelComponent, ArdiumDropdownPanelModule, ArdiumErrorComponent, ArdiumErrorDirective, ArdiumFabComponent, ArdiumFabModule, ArdiumFileDropAreaComponent, ArdiumFileDropAreaDragoverContentTemplateDirective, ArdiumFileDropAreaIdleContentTemplateDirective, ArdiumFileDropAreaModule, ArdiumFileDropAreaUploadedContentTemplateDirective, ArdiumFileInputComponent, ArdiumFileInputDragoverContentTemplateDirective, ArdiumFileInputFolderIconTemplateDirective, ArdiumFileInputIdleContentTemplateDirective, ArdiumFileInputModule, ArdiumFileInputUploadedContentTemplateDirective, ArdiumFormFieldComponent, ArdiumFormFieldFrameComponent, ArdiumFormFieldFrameModule, ArdiumFormFieldModule, ArdiumFormFieldNativeInputAdapterDirective, ArdiumGridComponent, ArdiumGridModule, ArdiumHexInputComponent, ArdiumHexInputModule, ArdiumHintComponent, ArdiumHintDirective, ArdiumHintErrorComponent, ArdiumHintErrorDirective, ArdiumHorizontalFormFieldComponent, ArdiumIconButtonComponent, ArdiumIconButtonModule, ArdiumIconComponent, ArdiumIconModule, ArdiumIconPipe, ArdiumInputComponent, ArdiumInputModule, ArdiumKbdComponent, ArdiumKbdDirective, ArdiumKbdModule, ArdiumKbdPipe, ArdiumKbdShortcutComponent, ArdiumKbdShortcutModule, ArdiumLabelComponent, ArdiumModalComponent, ArdiumModalModule, ArdiumMultipageDateRangeInputComponent, ArdiumMultipageDateRangeInputModule, ArdiumNumberInputComponent, ArdiumNumberInputModule, ArdiumOptionComponent, ArdiumOptionModule, ArdiumPasswordInputComponent, ArdiumPasswordInputModule, ArdiumProgressBarComponent, ArdiumProgressBarModule, ArdiumProgressCircleComponent, ArdiumProgressCircleModule, ArdiumRadioComponent, ArdiumRadioGroupComponent, ArdiumRadioModule, ArdiumRangeCalendarComponent, ArdiumRangeCalendarModule, ArdiumRangeSliderComponent, ArdiumRangeSliderModule, ArdiumRatingDisplayComponent, ArdiumRatingDisplayModule, ArdiumRatingInputComponent, ArdiumRatingInputModule, ArdiumSegmentComponent, ArdiumSegmentModule, ArdiumSelectComponent, ArdiumSelectModule, ArdiumSelectableChipComponent, ArdiumSlideToggleComponent, ArdiumSlideToggleModule, ArdiumSliderComponent, ArdiumSliderModule, ArdiumSnackbarService, ArdiumSpinnerComponent, ArdiumSpinnerModule, ArdiumStarButtonComponent, ArdiumStarButtonModule, ArdiumStarComponent, ArdiumStarModule, ArdiumStateboxComponent, ArdiumStateboxModule, ArdiumTabComponent, ArdiumTabberComponent, ArdiumTabberModule, ArdiumTableCaptionTemplateDirective, ArdiumTableCheckboxTemplateDirective, ArdiumTableComponent, ArdiumTableFromCsvComponent, ArdiumTableFromCsvModule, ArdiumTableHeaderCheckboxTemplateDirective, ArdiumTableModule, ArdiumTablePaginationComponent, ArdiumTablePaginationModule, ArdiumTablePaginationTemplateDirective, ArdiumTableTemplateDirective, ArdiumTextListComponent, ArdiumTextListModule, ArdiumTextListPipe, BadgePosition, BadgeSize, ButtonAppearance, ButtonVariant, CardAppearance, CardVariant, CheckboxListAlignType, CheckboxState, ClickStrategy, ComponentColor, DateRange, DecorationElementAppearance, DigitInputPrimitiveOption, DigitInputShape, DropdownPanelAppearance, DropdownPanelVariant, FabSize, FormElementAppearance, FormElementVariant, OneAxisAlignment, OutlinedAppearance, PaginationAlign, PanelAppearance, PanelVariant, ProgressBarAppearance, ProgressBarMode, ProgressBarSize, ProgressBarVariant, ProgressCircleAppearance, ProgressCircleVariant, SegmentAppearance, SegmentVariant, SimpleComponentColor, SimpleOneAxisAlignment, SliderDecorationPosition, SliderTooltipBehavior, SortType, StarColor, StarFillMode, TableAlignType, TableAppearance, TablePaginationStrategy, TableVariant, TransformType, _chipDefaults, _modalDefaults, isArdGridAlign, isArdGridDirection, isArdGridJustify, isArdGridSize, isArdGridWrap, provideBadgeDefaults, provideBreakpoints, provideButtonDefaults, provideCalendarDefaults, provideCardDefaults, provideCheckboxDefaults, provideCheckboxListDefaults, provideChipDefaults, provideDateInputDefaults, provideDeletableChipDefaults, provideDialogDefaults, provideDigitInputDefaults, provideDividerDefaults, provideDropdownPanelDefaults, provideErrorMap, provideFabDefaults, provideFileDropAreaDefaults, provideFileInputDefaults, provideFormFieldDefaults, provideFormFieldFrameDefaults, provideGridDefaults, provideHexInputDefaults, provideIconButtonDefaults, provideIconDefaults, provideInputDefaults, provideKbdDefaults, provideKbdShortcutDefaults, provideModalDefaults, provideNumberInputDefaults, providePasswordInputDefaults, provideProgressBarDefaults, provideProgressCircleDefaults, provideRadioDefaults, provideRatingDisplayDefaults, provideRatingInputDefaults, provideSegmentDefaults, provideSelectDefaults, provideSelectableChipDefaults, provideSlideToggleDefaults, provideSliderDefaults, provideSnackbarDefaults, provideSpinnerDefaults, provideStarButtonDefaults, provideStarDefaults, provideStateboxDefaults, provideTabberDefaults, provideTableDefaults, provideTableFromCsvDefaults, provideTablePaginationDefaults, searchInString, trackFormControl };
17161
17278
  //# sourceMappingURL=ardium-ui-ui.mjs.map