@bspk/ui-ngx 1.2.2 → 1.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  import * as i1 from '@angular/common';
2
2
  import { CommonModule, DOCUMENT, NgTemplateOutlet, NgComponentOutlet } from '@angular/common';
3
3
  import * as i0 from '@angular/core';
4
- import { Input, ViewEncapsulation, Component, output, input, model, contentChildren, createComponent, computed, inject, ElementRef, Renderer2, EnvironmentInjector, signal, effect, Directive, viewChild, EventEmitter, Output, ChangeDetectionStrategy, ViewContainerRef, DestroyRef, TemplateRef, Injectable, DOCUMENT as DOCUMENT$1 } from '@angular/core';
4
+ import { Input, ViewEncapsulation, Component, output, input, model, contentChildren, computed, inject, ElementRef, Renderer2, EnvironmentInjector, signal, effect, createComponent, Directive, viewChild, EventEmitter, DOCUMENT as DOCUMENT$1, Output, ChangeDetectionStrategy, ViewContainerRef, DestroyRef, Injectable } from '@angular/core';
5
5
  import { computePosition, arrow, offset, flip, size, autoUpdate } from '@floating-ui/dom';
6
6
  import { parse, isValid, format, addDays, addMonths, isSameDay, startOfToday, addYears, startOfWeek, startOfMonth, endOfWeek, endOfMonth, eachDayOfInterval } from 'date-fns';
7
7
  import { getCountryCallingCode, AsYouType } from 'libphonenumber-js';
@@ -61865,19 +61865,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
61865
61865
  /**
61866
61866
  * A utility component representing a single section within an accordion.
61867
61867
  *
61868
- * @ignore
61868
+ * @name AccordionSection
61869
+ * @phase Utility
61869
61870
  */
61870
61871
  class UIAccordionSection {
61872
+ /**
61873
+ * Emits the id of the accordion section when its header is clicked to toggle open/closed state. The parent
61874
+ * accordion component listens for this event to manage which sections are open.
61875
+ */
61871
61876
  toggleOpen = output();
61872
61877
  title = input('', ...(ngDevMode ? [{ debugName: "title" }] : []));
61873
61878
  subtitle = input(undefined, ...(ngDevMode ? [{ debugName: "subtitle" }] : []));
61874
- isOpen = model(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
61875
61879
  disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
61876
61880
  id = input(uniqueId('accordion-section'), ...(ngDevMode ? [{ debugName: "id" }] : []));
61877
61881
  leading = input(undefined, ...(ngDevMode ? [{ debugName: "leading" }] : []));
61878
61882
  trailing = input(undefined, ...(ngDevMode ? [{ debugName: "trailing" }] : []));
61883
+ /** Whether the accordion section is open or closed. This is managed internally by the component, but can be set */
61884
+ isOpen = model(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
61879
61885
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIAccordionSection, deps: [], target: i0.ɵɵFactoryTarget.Component });
61880
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIAccordionSection, isStandalone: true, selector: "ui-accordion-section", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, subtitle: { classPropertyName: "subtitle", publicName: "subtitle", isSignal: true, isRequired: false, transformFunction: null }, isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, leading: { classPropertyName: "leading", publicName: "leading", isSignal: true, isRequired: false, transformFunction: null }, trailing: { classPropertyName: "trailing", publicName: "trailing", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { toggleOpen: "toggleOpen", isOpen: "isOpenChange" }, host: { attributes: { "data-bspk": "accordion-item" }, properties: { "attr.data-disabled": "disabled() ? true : null", "id": "id()" } }, ngImport: i0, template: `
61886
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIAccordionSection, isStandalone: true, selector: "ui-accordion-section", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, subtitle: { classPropertyName: "subtitle", publicName: "subtitle", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, leading: { classPropertyName: "leading", publicName: "leading", isSignal: true, isRequired: false, transformFunction: null }, trailing: { classPropertyName: "trailing", publicName: "trailing", isSignal: true, isRequired: false, transformFunction: null }, isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { toggleOpen: "toggleOpen", isOpen: "isOpenChange" }, host: { attributes: { "data-bspk": "accordion-item" }, properties: { "attr.data-disabled": "disabled() ? true : null", "id": "id()" } }, ngImport: i0, template: `
61881
61887
  <button
61882
61888
  type="button"
61883
61889
  [attr.aria-controls]="id() + '-content'"
@@ -61974,7 +61980,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
61974
61980
  <span data-divider></span>
61975
61981
  `,
61976
61982
  }]
61977
- }], propDecorators: { toggleOpen: [{ type: i0.Output, args: ["toggleOpen"] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], subtitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "subtitle", required: false }] }], isOpen: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOpen", required: false }] }, { type: i0.Output, args: ["isOpenChange"] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], leading: [{ type: i0.Input, args: [{ isSignal: true, alias: "leading", required: false }] }], trailing: [{ type: i0.Input, args: [{ isSignal: true, alias: "trailing", required: false }] }] } });
61983
+ }], propDecorators: { toggleOpen: [{ type: i0.Output, args: ["toggleOpen"] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], subtitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "subtitle", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], leading: [{ type: i0.Input, args: [{ isSignal: true, alias: "leading", required: false }] }], trailing: [{ type: i0.Input, args: [{ isSignal: true, alias: "trailing", required: false }] }], isOpen: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOpen", required: false }] }, { type: i0.Output, args: ["isOpenChange"] }] } });
61978
61984
 
61979
61985
  /**
61980
61986
  * A vertical stack of collapsible panels or that allows customers to expand or collapse each panel individually to
@@ -62013,17 +62019,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
62013
62019
  }, styles: ["[data-bspk=accordion]{display:block;width:100%;padding:var(--spacing-sizing-02)}[data-bspk=accordion]:empty{display:none}[data-bspk=accordion]>[data-bspk=accordion-item]{--border-bottom-color: var(--stroke-neutral-base);display:flex;flex-direction:column;justify-content:center;color:var(--foreground-neutral-on-surface)}[data-bspk=accordion]>[data-bspk=accordion-item][data-disabled]{--border-bottom-color: var(--stroke-neutral-disabled-light);background:linear-gradient(var(--interactions-disabled-opacity),var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base));color:var(--foreground-neutral-disabled-on-surface)}[data-bspk=accordion]>[data-bspk=accordion-item] button[data-header]{display:flex;flex-direction:row;align-items:center;background:none;color:inherit;border:none;padding:0 var(--spacing-sizing-02);gap:var(--spacing-sizing-02);font:inherit;cursor:pointer;outline:none;min-height:var(--spacing-sizing-12)}[data-bspk=accordion]>[data-bspk=accordion-item] button[data-header] [data-title-subtitle]{display:flex;flex-direction:column;align-items:flex-start;flex:1}[data-bspk=accordion]>[data-bspk=accordion-item] button[data-header] [data-title-subtitle] [data-title]{font:var(--labels-base)}[data-bspk=accordion]>[data-bspk=accordion-item] button[data-header] [data-title-subtitle] [data-subtitle]{font:var(--body-x-small);color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=accordion]>[data-bspk=accordion-item] button[data-header] [data-arrow]{display:flex;align-items:center;justify-content:center;margin-left:var(--spacing-sizing-02)}[data-bspk=accordion]>[data-bspk=accordion-item] button[data-header] [data-arrow] svg{width:var(--spacing-sizing-06)}[data-bspk=accordion]>[data-bspk=accordion-item] button[data-header]:not(:disabled):hover{background-image:linear-gradient(var(--interactions-neutral-hover-opacity),var(--interactions-neutral-hover-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=accordion]>[data-bspk=accordion-item] button[data-header]:not(:disabled):active{background-image:linear-gradient(var(--interactions-neutral-press-opacity),var(--interactions-neutral-press-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=accordion]>[data-bspk=accordion-item] button[data-header]:disabled{cursor:not-allowed;color:var(--foreground-neutral-disabled-on-surface);border-color:var(--stroke-neutral-disabled-light)}[data-bspk=accordion]>[data-bspk=accordion-item]:has(:focus-visible){outline:2px solid var(--stroke-neutral-focus);border-color:var(--stroke-neutral-focus);margin-bottom:1px}[data-bspk=accordion]>[data-bspk=accordion-item] [data-content]{padding:var(--spacing-sizing-01) var(--spacing-sizing-02) var(--spacing-sizing-04)}[data-bspk=accordion] [data-divider]{display:block;height:1px;width:calc(100% - var(--spacing-sizing-04));margin:-1px var(--spacing-sizing-02) 0;background-color:var(--border-bottom-color)}\n"] }]
62014
62020
  }], propDecorators: { singleOpen: [{ type: i0.Input, args: [{ isSignal: true, alias: "singleOpen", required: false }] }], items: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => UIAccordionSection), { ...{ descendants: true }, isSignal: true }] }] } });
62015
62021
 
62016
- function addComponent(env, component, tagName, hostElement) {
62017
- if (typeof document === 'undefined')
62018
- return null;
62019
- const componentElement = document.createElement(tagName);
62020
- (hostElement || document.body).appendChild(componentElement);
62021
- return createComponent(component, {
62022
- environmentInjector: env,
62023
- hostElement: componentElement,
62024
- });
62025
- }
62026
-
62027
62022
  /**
62028
62023
  * A utility to position an element relative to a reference element using floating UI logic.
62029
62024
  *
@@ -62089,6 +62084,16 @@ class FloatingUtility {
62089
62084
  * @phase Dev
62090
62085
  */
62091
62086
  class UITooltipDirective {
62087
+ /**
62088
+ * The value of the tooltip directive. Can be a string for simple usage or an object for more control.
62089
+ *
62090
+ * When using the truncated option, the tooltip will only show when the content is truncated and will use the text
62091
+ * content of the reference element as the label. This is useful for cases like table cells where you want to show a
62092
+ * tooltip only when the content is too long to fit.
62093
+ *
62094
+ * Note: When using the truncated option, the directive will add a data-truncated attribute to the host element.
62095
+ * This can be used for styling purposes.
62096
+ */
62092
62097
  value = model(undefined, ...(ngDevMode ? [{ debugName: "value", alias: 'ui-tooltip' }] : [{
62093
62098
  alias: 'ui-tooltip',
62094
62099
  }]));
@@ -62198,7 +62203,12 @@ class UITooltipDirective {
62198
62203
  !props.label) {
62199
62204
  return false;
62200
62205
  }
62201
- this.tooltipComponent = addComponent(this.env, UITooltip, 'ui-tooltip');
62206
+ const componentElement = this.document.createElement('ui-tooltip');
62207
+ this.document.body.appendChild(componentElement);
62208
+ this.tooltipComponent = createComponent(UITooltip, {
62209
+ environmentInjector: this.env,
62210
+ hostElement: componentElement,
62211
+ });
62202
62212
  if (this.tooltipEl)
62203
62213
  this.renderer.setStyle(this.tooltipEl, 'display', 'none');
62204
62214
  this.tooltipComponent.instance.id.set(this.tooltipId);
@@ -62232,7 +62242,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
62232
62242
  },
62233
62243
  }]
62234
62244
  }], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "ui-tooltip", required: false }] }, { type: i0.Output, args: ["ui-tooltipChange"] }] } });
62235
- /** Single use component to display tooltip content. */
62245
+ /**
62246
+ * Single use component to display tooltip content.
62247
+ *
62248
+ * @ignore
62249
+ */
62236
62250
  class UITooltip {
62237
62251
  arrow = viewChild('arrow', ...(ngDevMode ? [{ debugName: "arrow" }] : []));
62238
62252
  id = signal(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
@@ -62270,18 +62284,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
62270
62284
  * Utility to manage tooltip properties and behavior.
62271
62285
  *
62272
62286
  * Should be used in components that require tooltip functionality.
62287
+ *
62288
+ * @ignore
62273
62289
  */
62274
62290
  class TooltipUtility {
62275
62291
  renderer;
62276
62292
  env;
62293
+ document;
62277
62294
  props = signal({}, ...(ngDevMode ? [{ debugName: "props" }] : []));
62278
62295
  tooltipId = uniqueId('tooltip');
62279
62296
  floating;
62280
62297
  computedPlacement = signal(null, ...(ngDevMode ? [{ debugName: "computedPlacement" }] : []));
62281
62298
  tooltipComponent;
62282
- constructor(renderer, env, props) {
62299
+ constructor(renderer, env, props, document) {
62283
62300
  this.renderer = renderer;
62284
62301
  this.env = env;
62302
+ this.document = document;
62285
62303
  this.updateProps(props);
62286
62304
  const host = props.reference;
62287
62305
  this.floating = new FloatingUtility(this.renderer);
@@ -62336,7 +62354,12 @@ class TooltipUtility {
62336
62354
  !props.label) {
62337
62355
  return false;
62338
62356
  }
62339
- this.tooltipComponent = addComponent(this.env, UITooltip, 'ui-tooltip');
62357
+ const componentElement = this.document.createElement('ui-tooltip');
62358
+ this.document.body.appendChild(componentElement);
62359
+ this.tooltipComponent = createComponent(UITooltip, {
62360
+ environmentInjector: this.env,
62361
+ hostElement: componentElement,
62362
+ });
62340
62363
  if (this.tooltipEl)
62341
62364
  this.renderer.setStyle(this.tooltipEl, 'display', 'none');
62342
62365
  this.tooltipComponent.instance.id.set(this.tooltipId);
@@ -62400,13 +62423,14 @@ class UIAvatar {
62400
62423
  size = input('small', ...(ngDevMode ? [{ debugName: "size" }] : []));
62401
62424
  color = input('grey', ...(ngDevMode ? [{ debugName: "color" }] : []));
62402
62425
  initials = input(...(ngDevMode ? [undefined, { debugName: "initials" }] : []));
62403
- showIcon = input(false, ...(ngDevMode ? [{ debugName: "showIcon" }] : []));
62426
+ showIcon = input(true, ...(ngDevMode ? [{ debugName: "showIcon" }] : []));
62404
62427
  image = input(...(ngDevMode ? [undefined, { debugName: "image" }] : []));
62405
62428
  hideTooltip = input(false, ...(ngDevMode ? [{ debugName: "hideTooltip" }] : []));
62406
62429
  disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
62407
62430
  renderer = inject(Renderer2);
62408
62431
  env = inject(EnvironmentInjector);
62409
62432
  host = inject((ElementRef));
62433
+ document = inject(DOCUMENT$1);
62410
62434
  tooltipUtility;
62411
62435
  get computedInitials() {
62412
62436
  const initials = this.initials();
@@ -62429,7 +62453,7 @@ class UIAvatar {
62429
62453
  label: this.name(),
62430
62454
  reference: this.host.nativeElement,
62431
62455
  placement: 'top',
62432
- });
62456
+ }, this.document);
62433
62457
  }
62434
62458
  }
62435
62459
  onDestroy() {
@@ -62456,7 +62480,7 @@ class UIAvatar {
62456
62480
  <span aria-hidden="true" data-initials>
62457
62481
  {{ computedInitials }}
62458
62482
  </span>
62459
- }`, isInline: true, styles: ["[data-bspk=avatar]{--height: var(--spacing-sizing-10);--font: var(--labels-base);--svg-size: var(--spacing-sizing-10);border:var(--avatar-border);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0;height:var(--height);width:var(--height);aspect-ratio:1/1;border-radius:var(--radius-full);background-color:var(--background);color:var(--foreground);font:var(--font);flex-shrink:0;flex-grow:0;position:relative;--state-background: transparent}[data-bspk=avatar]:not([data-color]){--foreground: var(--foreground-neutral-on-surface);--background: var(--surface-neutral-t3-low)}[data-bspk=avatar]:has(img){overflow:hidden;align-items:start;justify-content:start}[data-bspk=avatar] img{vertical-align:top;max-width:100%;height:auto}[data-bspk=avatar] svg{width:var(--svg-size);height:var(--svg-size)}[data-bspk=avatar] [data-icon]{display:flex;align-items:center;justify-content:center}[data-bspk=avatar][data-size=x-small]{--height: var(--spacing-sizing-06);--font: var(--labels-x-small);--svg-size: var(--spacing-sizing-04)}[data-bspk=avatar][data-size=small]{--height: var(--spacing-sizing-08);--font: var(--labels-small);--svg-size: var(--spacing-sizing-05)}[data-bspk=avatar][data-size=medium]{--height: var(--spacing-sizing-10);--font: var(--labels-base);--svg-size: var(--spacing-sizing-05)}[data-bspk=avatar][data-size=large]{--height: var(--spacing-sizing-12);--font: var(--labels-large);--svg-size: var(--spacing-sizing-06)}[data-bspk=avatar][data-size=x-large]{--height: var(--spacing-sizing-14);--font: var(--subheader-x-large);--svg-size: var(--spacing-sizing-08)}[data-bspk=avatar][data-size=xx-large]{--height: var(--spacing-sizing-17);--font: var(--subheader-xx-large);--svg-size: var(--spacing-sizing-12)}[data-bspk=avatar][data-size=xxx-large]{--height: var(--spacing-sizing-19);--font: var(--display-regular-small);--svg-size: var(--spacing-sizing-15)}[data-bspk=avatar][data-size=xxxx-large]{--height: var(--spacing-sizing-21);--font: var(--display-regular-medium);--svg-size: var(--spacing-sizing-17)}[data-bspk=avatar][data-size=xxxxx-large]{--height: var(--spacing-sizing-23);--font: var(--display-regular-large);--svg-size: var(--spacing-sizing-18)}[data-bspk=avatar]:after{content:\"\";position:absolute;display:block;inset:0;border-radius:var(--radius-full);background:var(--state-background)}[data-bspk=avatar]:not([aria-disabled]):hover{--state-background: var(--interactions-neutral-hover-opacity)}[data-bspk=avatar]:not([aria-disabled]):active{--state-background: var(--interactions-neutral-press-opacity)}[data-bspk=avatar][aria-disabled]{opacity:.5;cursor:not-allowed}[data-bspk=avatar]:focus:not(:active){outline:2px solid var(--stroke-neutral-focus);outline-offset:-2px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IconPerson, selector: "icon-person", inputs: ["width"] }], encapsulation: i0.ViewEncapsulation.None });
62483
+ }`, isInline: true, styles: ["[data-bspk=avatar]{--height: var(--spacing-sizing-10);--font: var(--labels-base);--svg-size: var(--spacing-sizing-10);border:var(--avatar-border);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0;height:var(--height);width:var(--height);aspect-ratio:1/1;border-radius:var(--radius-full);background-color:var(--background);color:var(--foreground);font:var(--font);flex-shrink:0;flex-grow:0;position:relative;--state-background: transparent}[data-bspk=avatar]:not([data-color]){--foreground: var(--foreground-neutral-on-surface);--background: var(--surface-neutral-t3-low)}[data-bspk=avatar]:has(img){overflow:hidden;align-items:start;justify-content:start}[data-bspk=avatar] img{vertical-align:top;max-width:100%;height:auto}[data-bspk=avatar] svg{width:var(--svg-size);height:var(--svg-size)}[data-bspk=avatar] [data-icon]{display:flex;align-items:center;justify-content:center}[data-bspk=avatar][data-size=x-small]{--height: var(--spacing-sizing-06);--font: var(--labels-x-small);--svg-size: var(--spacing-sizing-04)}[data-bspk=avatar][data-size=small]{--height: var(--spacing-sizing-08);--font: var(--labels-small);--svg-size: var(--spacing-sizing-05)}[data-bspk=avatar][data-size=medium]{--height: var(--spacing-sizing-10);--font: var(--labels-base);--svg-size: var(--spacing-sizing-05)}[data-bspk=avatar][data-size=large]{--height: var(--spacing-sizing-12);--font: var(--labels-large);--svg-size: var(--spacing-sizing-06)}[data-bspk=avatar][data-size=x-large]{--height: var(--spacing-sizing-14);--font: var(--subheader-x-large);--svg-size: var(--spacing-sizing-08)}[data-bspk=avatar][data-size=xx-large]{--height: var(--spacing-sizing-17);--font: var(--subheader-xx-large);--svg-size: var(--spacing-sizing-12)}[data-bspk=avatar][data-size=xxx-large]{--height: var(--spacing-sizing-19);--font: var(--display-regular-small);--svg-size: var(--spacing-sizing-15)}[data-bspk=avatar][data-size=xxxx-large]{--height: var(--spacing-sizing-21);--font: var(--display-regular-medium);--svg-size: var(--spacing-sizing-17)}[data-bspk=avatar][data-size=xxxxx-large]{--height: var(--spacing-sizing-23);--font: var(--display-regular-large);--svg-size: var(--spacing-sizing-18)}[data-bspk=avatar]:after{content:\"\";position:absolute;display:block;inset:0;border-radius:var(--radius-full);background:var(--state-background)}[data-bspk=avatar]:not([aria-disabled])[role=button]:hover{--state-background: var(--interactions-neutral-hover-opacity)}[data-bspk=avatar]:not([aria-disabled])[role=button]:active{--state-background: var(--interactions-neutral-press-opacity)}[data-bspk=avatar][aria-disabled]{opacity:.5;cursor:not-allowed}[data-bspk=avatar]:focus:not(:active,[aria-disabled]){outline:2px solid var(--stroke-neutral-focus);outline-offset:-2px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IconPerson, selector: "icon-person", inputs: ["width"] }], encapsulation: i0.ViewEncapsulation.None });
62460
62484
  }
62461
62485
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIAvatar, decorators: [{
62462
62486
  type: Component,
@@ -62481,7 +62505,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
62481
62505
  '[attr.data-size]': 'size()',
62482
62506
  '(click)': 'handleOnClick($event)',
62483
62507
  '(keydown)': 'handleKeyDown($event)',
62484
- }, styles: ["[data-bspk=avatar]{--height: var(--spacing-sizing-10);--font: var(--labels-base);--svg-size: var(--spacing-sizing-10);border:var(--avatar-border);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0;height:var(--height);width:var(--height);aspect-ratio:1/1;border-radius:var(--radius-full);background-color:var(--background);color:var(--foreground);font:var(--font);flex-shrink:0;flex-grow:0;position:relative;--state-background: transparent}[data-bspk=avatar]:not([data-color]){--foreground: var(--foreground-neutral-on-surface);--background: var(--surface-neutral-t3-low)}[data-bspk=avatar]:has(img){overflow:hidden;align-items:start;justify-content:start}[data-bspk=avatar] img{vertical-align:top;max-width:100%;height:auto}[data-bspk=avatar] svg{width:var(--svg-size);height:var(--svg-size)}[data-bspk=avatar] [data-icon]{display:flex;align-items:center;justify-content:center}[data-bspk=avatar][data-size=x-small]{--height: var(--spacing-sizing-06);--font: var(--labels-x-small);--svg-size: var(--spacing-sizing-04)}[data-bspk=avatar][data-size=small]{--height: var(--spacing-sizing-08);--font: var(--labels-small);--svg-size: var(--spacing-sizing-05)}[data-bspk=avatar][data-size=medium]{--height: var(--spacing-sizing-10);--font: var(--labels-base);--svg-size: var(--spacing-sizing-05)}[data-bspk=avatar][data-size=large]{--height: var(--spacing-sizing-12);--font: var(--labels-large);--svg-size: var(--spacing-sizing-06)}[data-bspk=avatar][data-size=x-large]{--height: var(--spacing-sizing-14);--font: var(--subheader-x-large);--svg-size: var(--spacing-sizing-08)}[data-bspk=avatar][data-size=xx-large]{--height: var(--spacing-sizing-17);--font: var(--subheader-xx-large);--svg-size: var(--spacing-sizing-12)}[data-bspk=avatar][data-size=xxx-large]{--height: var(--spacing-sizing-19);--font: var(--display-regular-small);--svg-size: var(--spacing-sizing-15)}[data-bspk=avatar][data-size=xxxx-large]{--height: var(--spacing-sizing-21);--font: var(--display-regular-medium);--svg-size: var(--spacing-sizing-17)}[data-bspk=avatar][data-size=xxxxx-large]{--height: var(--spacing-sizing-23);--font: var(--display-regular-large);--svg-size: var(--spacing-sizing-18)}[data-bspk=avatar]:after{content:\"\";position:absolute;display:block;inset:0;border-radius:var(--radius-full);background:var(--state-background)}[data-bspk=avatar]:not([aria-disabled]):hover{--state-background: var(--interactions-neutral-hover-opacity)}[data-bspk=avatar]:not([aria-disabled]):active{--state-background: var(--interactions-neutral-press-opacity)}[data-bspk=avatar][aria-disabled]{opacity:.5;cursor:not-allowed}[data-bspk=avatar]:focus:not(:active){outline:2px solid var(--stroke-neutral-focus);outline-offset:-2px}\n"] }]
62508
+ }, styles: ["[data-bspk=avatar]{--height: var(--spacing-sizing-10);--font: var(--labels-base);--svg-size: var(--spacing-sizing-10);border:var(--avatar-border);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0;height:var(--height);width:var(--height);aspect-ratio:1/1;border-radius:var(--radius-full);background-color:var(--background);color:var(--foreground);font:var(--font);flex-shrink:0;flex-grow:0;position:relative;--state-background: transparent}[data-bspk=avatar]:not([data-color]){--foreground: var(--foreground-neutral-on-surface);--background: var(--surface-neutral-t3-low)}[data-bspk=avatar]:has(img){overflow:hidden;align-items:start;justify-content:start}[data-bspk=avatar] img{vertical-align:top;max-width:100%;height:auto}[data-bspk=avatar] svg{width:var(--svg-size);height:var(--svg-size)}[data-bspk=avatar] [data-icon]{display:flex;align-items:center;justify-content:center}[data-bspk=avatar][data-size=x-small]{--height: var(--spacing-sizing-06);--font: var(--labels-x-small);--svg-size: var(--spacing-sizing-04)}[data-bspk=avatar][data-size=small]{--height: var(--spacing-sizing-08);--font: var(--labels-small);--svg-size: var(--spacing-sizing-05)}[data-bspk=avatar][data-size=medium]{--height: var(--spacing-sizing-10);--font: var(--labels-base);--svg-size: var(--spacing-sizing-05)}[data-bspk=avatar][data-size=large]{--height: var(--spacing-sizing-12);--font: var(--labels-large);--svg-size: var(--spacing-sizing-06)}[data-bspk=avatar][data-size=x-large]{--height: var(--spacing-sizing-14);--font: var(--subheader-x-large);--svg-size: var(--spacing-sizing-08)}[data-bspk=avatar][data-size=xx-large]{--height: var(--spacing-sizing-17);--font: var(--subheader-xx-large);--svg-size: var(--spacing-sizing-12)}[data-bspk=avatar][data-size=xxx-large]{--height: var(--spacing-sizing-19);--font: var(--display-regular-small);--svg-size: var(--spacing-sizing-15)}[data-bspk=avatar][data-size=xxxx-large]{--height: var(--spacing-sizing-21);--font: var(--display-regular-medium);--svg-size: var(--spacing-sizing-17)}[data-bspk=avatar][data-size=xxxxx-large]{--height: var(--spacing-sizing-23);--font: var(--display-regular-large);--svg-size: var(--spacing-sizing-18)}[data-bspk=avatar]:after{content:\"\";position:absolute;display:block;inset:0;border-radius:var(--radius-full);background:var(--state-background)}[data-bspk=avatar]:not([aria-disabled])[role=button]:hover{--state-background: var(--interactions-neutral-hover-opacity)}[data-bspk=avatar]:not([aria-disabled])[role=button]:active{--state-background: var(--interactions-neutral-press-opacity)}[data-bspk=avatar][aria-disabled]{opacity:.5;cursor:not-allowed}[data-bspk=avatar]:focus:not(:active,[aria-disabled]){outline:2px solid var(--stroke-neutral-focus);outline-offset:-2px}\n"] }]
62485
62509
  }], propDecorators: { onClick: [{
62486
62510
  type: Output
62487
62511
  }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], initials: [{ type: i0.Input, args: [{ isSignal: true, alias: "initials", required: false }] }], showIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "showIcon", required: false }] }], image: [{ type: i0.Input, args: [{ isSignal: true, alias: "image", required: false }] }], hideTooltip: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideTooltip", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }] } });
@@ -62546,6 +62570,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
62546
62570
  * @phase Dev
62547
62571
  */
62548
62572
  class UIListItem {
62573
+ /** Emits when the ListItem is activated by click or keyboard interaction. */
62549
62574
  onClick = new EventEmitter();
62550
62575
  active = input(...(ngDevMode ? [undefined, { debugName: "active" }] : []));
62551
62576
  owner = input(...(ngDevMode ? [undefined, { debugName: "owner" }] : []));
@@ -62838,9 +62863,10 @@ class UIAvatarGroupOverflow {
62838
62863
  activeElementId = model(...(ngDevMode ? [undefined, { debugName: "activeElementId" }] : []));
62839
62864
  menuReference = input.required(...(ngDevMode ? [{ debugName: "menuReference" }] : []));
62840
62865
  items = input.required(...(ngDevMode ? [{ debugName: "items" }] : []));
62866
+ document = inject(DOCUMENT$1);
62841
62867
  get offset() {
62842
62868
  // Reads the CSS variable value at runtime, offsetOptions requires a number
62843
- return parseInt(getComputedStyle(document.documentElement).getPropertyValue('--spacing-sizing-01'));
62869
+ return parseInt(getComputedStyle(this.document.documentElement).getPropertyValue('--spacing-sizing-01'));
62844
62870
  }
62845
62871
  get maxMenuHeight() {
62846
62872
  return this.items().length > 5 ? 'calc(var(--spacing-sizing-12) * 5)' : '';
@@ -63229,7 +63255,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
63229
63255
  */
63230
63256
  class UIIcon {
63231
63257
  icon = input.required(...(ngDevMode ? [{ debugName: "icon" }] : []));
63232
- width = input(...(ngDevMode ? [undefined, { debugName: "width" }] : []));
63258
+ width = input('24', ...(ngDevMode ? [{ debugName: "width" }] : []));
63233
63259
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
63234
63260
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIIcon, isStandalone: true, selector: "ui-icon", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: true, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `@if (icon()) {
63235
63261
  <ng-container [ngComponentOutlet]="icon()" [ngComponentOutletInputs]="{ width: width() }"></ng-container>
@@ -63268,7 +63294,6 @@ class UIButton {
63268
63294
  onMouseEnter = new EventEmitter();
63269
63295
  /** Event emitted when mouse leaves the button. */
63270
63296
  onMouseLeave = new EventEmitter();
63271
- buttonElement = viewChild.required('buttonElement');
63272
63297
  style = input(...(ngDevMode ? [undefined, { debugName: "style" }] : []));
63273
63298
  label = input.required(...(ngDevMode ? [{ debugName: "label" }] : []));
63274
63299
  ariaLabel = input(...(ngDevMode ? [undefined, { debugName: "ariaLabel" }] : []));
@@ -63286,8 +63311,9 @@ class UIButton {
63286
63311
  type = input('button', ...(ngDevMode ? [{ debugName: "type" }] : []));
63287
63312
  owner = input(...(ngDevMode ? [undefined, { debugName: "owner" }] : []));
63288
63313
  class = input(...(ngDevMode ? [undefined, { debugName: "class" }] : []));
63314
+ host = inject(ElementRef);
63289
63315
  get nativeElement() {
63290
- return this.buttonElement().nativeElement;
63316
+ return this.host.nativeElement.firstElementChild;
63291
63317
  }
63292
63318
  get shouldShowLabel() {
63293
63319
  return !this.iconOnly();
@@ -63302,6 +63328,14 @@ class UIButton {
63302
63328
  }
63303
63329
  return classes.join(' ');
63304
63330
  }
63331
+ ngOnInit() {
63332
+ // Pass through data- attributes from host to native button element
63333
+ this.host.nativeElement.getAttributeNames().forEach((attr) => {
63334
+ if (attr.startsWith('data-')) {
63335
+ this.nativeElement.setAttribute(attr, this.host.nativeElement.getAttribute(attr));
63336
+ }
63337
+ });
63338
+ }
63305
63339
  handleClick(event) {
63306
63340
  if (!this.disabled()) {
63307
63341
  this.onClick.emit(event);
@@ -63328,7 +63362,7 @@ class UIButton {
63328
63362
  }
63329
63363
  }
63330
63364
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIButton, deps: [], target: i0.ɵɵFactoryTarget.Component });
63331
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIButton, isStandalone: true, selector: "ui-button", inputs: { style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaHaspopup: { classPropertyName: "ariaHaspopup", publicName: "ariaHaspopup", isSignal: true, isRequired: false, transformFunction: null }, ariaExpanded: { classPropertyName: "ariaExpanded", publicName: "ariaExpanded", isSignal: true, isRequired: false, transformFunction: null }, ariaControls: { classPropertyName: "ariaControls", publicName: "ariaControls", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, iconOnly: { classPropertyName: "iconOnly", publicName: "iconOnly", isSignal: true, isRequired: false, transformFunction: null }, destructive: { classPropertyName: "destructive", publicName: "destructive", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, owner: { classPropertyName: "owner", publicName: "owner", isSignal: true, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClick: "onClick", onFocus: "onFocus", onBlur: "onBlur", onMouseEnter: "onMouseEnter", onMouseLeave: "onMouseLeave" }, host: { styleAttribute: "display: contents;" }, viewQueries: [{ propertyName: "buttonElement", first: true, predicate: ["buttonElement"], descendants: true, isSignal: true }], ngImport: i0, template: `<button
63365
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIButton, isStandalone: true, selector: "ui-button", inputs: { style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaHaspopup: { classPropertyName: "ariaHaspopup", publicName: "ariaHaspopup", isSignal: true, isRequired: false, transformFunction: null }, ariaExpanded: { classPropertyName: "ariaExpanded", publicName: "ariaExpanded", isSignal: true, isRequired: false, transformFunction: null }, ariaControls: { classPropertyName: "ariaControls", publicName: "ariaControls", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, iconOnly: { classPropertyName: "iconOnly", publicName: "iconOnly", isSignal: true, isRequired: false, transformFunction: null }, destructive: { classPropertyName: "destructive", publicName: "destructive", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, owner: { classPropertyName: "owner", publicName: "owner", isSignal: true, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClick: "onClick", onFocus: "onFocus", onBlur: "onBlur", onMouseEnter: "onMouseEnter", onMouseLeave: "onMouseLeave" }, host: { styleAttribute: "display: contents;" }, ngImport: i0, template: `<button
63332
63366
  [ui-tooltip]="tooltipLabel"
63333
63367
  #buttonElement
63334
63368
  [type]="type()"
@@ -63362,7 +63396,7 @@ class UIButton {
63362
63396
  }
63363
63397
  </ng-content>
63364
63398
  <span [attr.aria-hidden]="true" [attr.data-touch-target]="true"></span>
63365
- </button>`, isInline: true, styles: ["[data-bspk=button]{display:flex;flex-direction:row;gap:var(--spacing-sizing-02);border:none;cursor:pointer;background:transparent;text-decoration:none;width:fit-content;font-family:var(--typeface)}[data-bspk=button] [data-touch-target]{min-width:var(--spacing-sizing-12);min-height:var(--spacing-sizing-12)}[data-bspk=button][data-width=hug]{width:fit-content}[data-bspk=button][data-width=fill]{width:100%}[data-bspk=button][data-size=x-small]{font-size:var(--typography-size-xs);line-height:var(--typography-line-height-lh-1);height:var(--spacing-sizing-06);min-width:var(--spacing-sizing-06);gap:var(--spacing-sizing-02)}[data-bspk=button][data-size=x-small]:has([data-button-label]),[data-bspk=button][data-size=x-small][data-override]{padding:0 var(--spacing-sizing-02)}[data-bspk=button][data-size=x-small] [data-button-icon]{width:var(--spacing-sizing-04);height:var(--spacing-sizing-04)}[data-bspk=button][data-size=small]{font-size:var(--typography-size-sm);line-height:var(--typography-line-height-lh-2);height:var(--spacing-sizing-08);min-width:var(--spacing-sizing-08)}[data-bspk=button][data-size=small]:has([data-button-label]),[data-bspk=button][data-size=small][data-override]{padding:6px var(--spacing-sizing-04)}[data-bspk=button][data-size=small] [data-button-icon]{width:var(--spacing-sizing-05);height:var(--spacing-sizing-05)}[data-bspk=button][data-size=medium]{font-size:var(--typography-size-base);line-height:var(--typography-line-height-lh-2);height:var(--spacing-sizing-10);min-width:var(--spacing-sizing-10)}[data-bspk=button][data-size=medium]:has([data-button-label]),[data-bspk=button][data-size=medium][data-override]{padding:var(--spacing-sizing-02) var(--spacing-sizing-04)}[data-bspk=button][data-size=medium] [data-button-icon]{width:var(--spacing-sizing-05);height:var(--spacing-sizing-05)}[data-bspk=button][data-size=large]{font-size:var(--typography-size-bp-md);line-height:var(--typography-line-height-lh-4);height:var(--spacing-sizing-12);min-width:var(--spacing-sizing-12)}[data-bspk=button][data-size=large]:has([data-button-label]),[data-bspk=button][data-size=large][data-override]{padding:var(--spacing-sizing-03) var(--spacing-sizing-04)}[data-bspk=button][data-size=large] [data-button-icon]{width:var(--spacing-sizing-06);height:var(--spacing-sizing-06)}[data-bspk=button][disabled]{cursor:not-allowed}[data-bspk=button] [data-button-icon]{display:flex;flex-direction:column;align-items:center;justify-content:center}[data-bspk=button] [data-button-label]{display:flex;flex-direction:row;align-items:center}[data-bspk=button][data-variant=primary]{--primary-background: var(--surface-brand-primary);background-color:var(--primary-background);color:var(--foreground-brand-on-primary);border-radius:var(--button-border-radius)}[data-bspk=button][data-variant=primary][disabled]{color:var(--foreground-neutral-disabled-on-surface);background:var(--interactions-disabled-opacity)}[data-pseudo=hover]>[data-bspk=button][data-variant=primary]:not([disabled]),[data-bspk=button][data-variant=primary]:not([disabled]):hover{background:linear-gradient(var(--interactions-brand-hover-opacity),var(--interactions-brand-hover-opacity)),linear-gradient(var(--primary-background),var(--primary-background))}[data-pseudo=active]>[data-bspk=button][data-variant=primary]:not([disabled]),[data-bspk=button][data-variant=primary]:not([disabled]):active{background:linear-gradient(var(--interactions-brand-press-opacity),var(--interactions-brand-press-opacity)),linear-gradient(var(--primary-background),var(--primary-background))}[data-pseudo=focus]>[data-bspk=button][data-variant=primary]:not([disabled]),[data-bspk=button][data-variant=primary]:not([disabled]):focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=button][data-variant=primary][data-destructive]:not([disabled]){--primary-background: var(--status-error);color:var(--foreground-brand-on-primary)}[data-bspk=button][data-variant=secondary]{border:solid var(--button-border-width) var(--stroke-neutral-base);border-radius:var(--button-border-radius);color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=button][data-variant=secondary][disabled]{color:var(--foreground-neutral-disabled-on-surface);border:solid var(--button-border-width) var(--stroke-neutral-disabled-light)}[data-pseudo=hover]>[data-bspk=button][data-variant=secondary]:not([disabled]),[data-bspk=button][data-variant=secondary]:not([disabled]):hover{background-color:var(--interactions-neutral-hover-opacity)}[data-pseudo=active]>[data-bspk=button][data-variant=secondary]:not([disabled]),[data-bspk=button][data-variant=secondary]:not([disabled]):active{background-color:var(--interactions-neutral-press-opacity)}[data-pseudo=focus]>[data-bspk=button][data-variant=secondary]:not([disabled]),[data-bspk=button][data-variant=secondary]:not([disabled]):focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=button][data-variant=secondary][data-destructive]:not([disabled]){background:transparent;color:var(--status-error);border:solid var(--button-border-width) var(--status-error)}[data-bspk=button][data-variant=tertiary]{background:transparent;color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=button][data-variant=tertiary][disabled]{color:var(--foreground-neutral-disabled-on-surface)}[data-pseudo=hover]>[data-bspk=button][data-variant=tertiary]:not([disabled]),[data-bspk=button][data-variant=tertiary]:not([disabled]):hover{background:var(--interactions-neutral-hover-opacity)}[data-pseudo=active]>[data-bspk=button][data-variant=tertiary]:not([disabled]),[data-bspk=button][data-variant=tertiary]:not([disabled]):active{background:var(--interactions-neutral-press-opacity)}[data-pseudo=focus]>[data-bspk=button][data-variant=tertiary]:not([disabled]),[data-bspk=button][data-variant=tertiary]:not([disabled]):focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=button][data-variant=tertiary][data-destructive]:not([disabled]){color:var(--status-error)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: UIIcon, selector: "ui-icon", inputs: ["icon", "width"] }, { kind: "directive", type: UITooltipDirective, selector: "[ui-tooltip]", inputs: ["ui-tooltip"], outputs: ["ui-tooltipChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
63399
+ </button>`, isInline: true, styles: ["[data-bspk=button]{display:flex;flex-direction:row;gap:var(--spacing-sizing-02);border:none;cursor:pointer;background:transparent;text-decoration:none;width:fit-content;font-family:var(--typeface)}[data-bspk=button] [data-touch-target]{min-width:var(--spacing-sizing-12);min-height:var(--spacing-sizing-12)}[data-bspk=button][data-width=hug]{width:fit-content}[data-bspk=button][data-width=fill]{width:100%}[data-bspk=button][data-size=x-small]{font-size:var(--typography-size-xs);line-height:var(--typography-line-height-lh-1);height:var(--spacing-sizing-06);min-width:var(--spacing-sizing-06);gap:var(--spacing-sizing-02)}[data-bspk=button][data-size=x-small]:has([data-button-label]),[data-bspk=button][data-size=x-small][data-override]{padding:0 var(--spacing-sizing-02)}[data-bspk=button][data-size=x-small] [data-button-icon] svg{width:var(--spacing-sizing-04);height:var(--spacing-sizing-04)}[data-bspk=button][data-size=small]{font-size:var(--typography-size-sm);line-height:var(--typography-line-height-lh-2);height:var(--spacing-sizing-08);min-width:var(--spacing-sizing-08)}[data-bspk=button][data-size=small]:has([data-button-label]),[data-bspk=button][data-size=small][data-override]{padding:6px var(--spacing-sizing-04)}[data-bspk=button][data-size=small] [data-button-icon] svg{width:var(--spacing-sizing-05);height:var(--spacing-sizing-05)}[data-bspk=button][data-size=medium]{font-size:var(--typography-size-base);line-height:var(--typography-line-height-lh-2);height:var(--spacing-sizing-10);min-width:var(--spacing-sizing-10)}[data-bspk=button][data-size=medium]:has([data-button-label]),[data-bspk=button][data-size=medium][data-override]{padding:var(--spacing-sizing-02) var(--spacing-sizing-04)}[data-bspk=button][data-size=medium] [data-button-icon] svg{width:var(--spacing-sizing-05);height:var(--spacing-sizing-05)}[data-bspk=button][data-size=large]{font-size:var(--typography-size-bp-md);line-height:var(--typography-line-height-lh-4);height:var(--spacing-sizing-12);min-width:var(--spacing-sizing-12)}[data-bspk=button][data-size=large]:has([data-button-label]),[data-bspk=button][data-size=large][data-override]{padding:var(--spacing-sizing-03) var(--spacing-sizing-04)}[data-bspk=button][data-size=large] [data-button-icon] svg{width:var(--spacing-sizing-06);height:var(--spacing-sizing-06)}[data-bspk=button][disabled]{cursor:not-allowed}[data-bspk=button] [data-button-icon]{display:flex;flex-direction:column;align-items:center;justify-content:center}[data-bspk=button] [data-button-label]{display:flex;flex-direction:row;align-items:center}[data-bspk=button][data-variant=primary]{--primary-background: var(--surface-brand-primary);background-color:var(--primary-background);color:var(--foreground-brand-on-primary);border-radius:var(--button-border-radius)}[data-bspk=button][data-variant=primary][disabled]{color:var(--foreground-neutral-disabled-on-surface);background:var(--interactions-disabled-opacity)}[data-pseudo=hover]>[data-bspk=button][data-variant=primary]:not([disabled]),[data-bspk=button][data-variant=primary]:not([disabled]):hover{background:linear-gradient(var(--interactions-brand-hover-opacity),var(--interactions-brand-hover-opacity)),linear-gradient(var(--primary-background),var(--primary-background))}[data-pseudo=active]>[data-bspk=button][data-variant=primary]:not([disabled]),[data-bspk=button][data-variant=primary]:not([disabled]):active{background:linear-gradient(var(--interactions-brand-press-opacity),var(--interactions-brand-press-opacity)),linear-gradient(var(--primary-background),var(--primary-background))}[data-pseudo=focus]>[data-bspk=button][data-variant=primary]:not([disabled]),[data-bspk=button][data-variant=primary]:not([disabled]):focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=button][data-variant=primary][data-destructive]:not([disabled]){--primary-background: var(--status-error);color:var(--foreground-brand-on-primary)}[data-bspk=button][data-variant=secondary]{border:solid var(--button-border-width) var(--stroke-neutral-base);border-radius:var(--button-border-radius);color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=button][data-variant=secondary][disabled]{color:var(--foreground-neutral-disabled-on-surface);border:solid var(--button-border-width) var(--stroke-neutral-disabled-light)}[data-pseudo=hover]>[data-bspk=button][data-variant=secondary]:not([disabled]),[data-bspk=button][data-variant=secondary]:not([disabled]):hover{background-color:var(--interactions-neutral-hover-opacity)}[data-pseudo=active]>[data-bspk=button][data-variant=secondary]:not([disabled]),[data-bspk=button][data-variant=secondary]:not([disabled]):active{background-color:var(--interactions-neutral-press-opacity)}[data-pseudo=focus]>[data-bspk=button][data-variant=secondary]:not([disabled]),[data-bspk=button][data-variant=secondary]:not([disabled]):focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=button][data-variant=secondary][data-destructive]:not([disabled]){background:transparent;color:var(--status-error);border:solid var(--button-border-width) var(--status-error)}[data-bspk=button][data-variant=tertiary]{background:transparent;color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=button][data-variant=tertiary][disabled]{color:var(--foreground-neutral-disabled-on-surface)}[data-pseudo=hover]>[data-bspk=button][data-variant=tertiary]:not([disabled]),[data-bspk=button][data-variant=tertiary]:not([disabled]):hover{background:var(--interactions-neutral-hover-opacity)}[data-pseudo=active]>[data-bspk=button][data-variant=tertiary]:not([disabled]),[data-bspk=button][data-variant=tertiary]:not([disabled]):active{background:var(--interactions-neutral-press-opacity)}[data-pseudo=focus]>[data-bspk=button][data-variant=tertiary]:not([disabled]),[data-bspk=button][data-variant=tertiary]:not([disabled]):focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=button][data-variant=tertiary][data-destructive]:not([disabled]){color:var(--status-error)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: UIIcon, selector: "ui-icon", inputs: ["icon", "width"] }, { kind: "directive", type: UITooltipDirective, selector: "[ui-tooltip]", inputs: ["ui-tooltip"], outputs: ["ui-tooltipChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
63366
63400
  }
63367
63401
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIButton, decorators: [{
63368
63402
  type: Component,
@@ -63402,7 +63436,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
63402
63436
  <span [attr.aria-hidden]="true" [attr.data-touch-target]="true"></span>
63403
63437
  </button>`, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, UIIcon, UITooltipDirective], encapsulation: ViewEncapsulation.None, host: {
63404
63438
  style: 'display: contents;',
63405
- }, styles: ["[data-bspk=button]{display:flex;flex-direction:row;gap:var(--spacing-sizing-02);border:none;cursor:pointer;background:transparent;text-decoration:none;width:fit-content;font-family:var(--typeface)}[data-bspk=button] [data-touch-target]{min-width:var(--spacing-sizing-12);min-height:var(--spacing-sizing-12)}[data-bspk=button][data-width=hug]{width:fit-content}[data-bspk=button][data-width=fill]{width:100%}[data-bspk=button][data-size=x-small]{font-size:var(--typography-size-xs);line-height:var(--typography-line-height-lh-1);height:var(--spacing-sizing-06);min-width:var(--spacing-sizing-06);gap:var(--spacing-sizing-02)}[data-bspk=button][data-size=x-small]:has([data-button-label]),[data-bspk=button][data-size=x-small][data-override]{padding:0 var(--spacing-sizing-02)}[data-bspk=button][data-size=x-small] [data-button-icon]{width:var(--spacing-sizing-04);height:var(--spacing-sizing-04)}[data-bspk=button][data-size=small]{font-size:var(--typography-size-sm);line-height:var(--typography-line-height-lh-2);height:var(--spacing-sizing-08);min-width:var(--spacing-sizing-08)}[data-bspk=button][data-size=small]:has([data-button-label]),[data-bspk=button][data-size=small][data-override]{padding:6px var(--spacing-sizing-04)}[data-bspk=button][data-size=small] [data-button-icon]{width:var(--spacing-sizing-05);height:var(--spacing-sizing-05)}[data-bspk=button][data-size=medium]{font-size:var(--typography-size-base);line-height:var(--typography-line-height-lh-2);height:var(--spacing-sizing-10);min-width:var(--spacing-sizing-10)}[data-bspk=button][data-size=medium]:has([data-button-label]),[data-bspk=button][data-size=medium][data-override]{padding:var(--spacing-sizing-02) var(--spacing-sizing-04)}[data-bspk=button][data-size=medium] [data-button-icon]{width:var(--spacing-sizing-05);height:var(--spacing-sizing-05)}[data-bspk=button][data-size=large]{font-size:var(--typography-size-bp-md);line-height:var(--typography-line-height-lh-4);height:var(--spacing-sizing-12);min-width:var(--spacing-sizing-12)}[data-bspk=button][data-size=large]:has([data-button-label]),[data-bspk=button][data-size=large][data-override]{padding:var(--spacing-sizing-03) var(--spacing-sizing-04)}[data-bspk=button][data-size=large] [data-button-icon]{width:var(--spacing-sizing-06);height:var(--spacing-sizing-06)}[data-bspk=button][disabled]{cursor:not-allowed}[data-bspk=button] [data-button-icon]{display:flex;flex-direction:column;align-items:center;justify-content:center}[data-bspk=button] [data-button-label]{display:flex;flex-direction:row;align-items:center}[data-bspk=button][data-variant=primary]{--primary-background: var(--surface-brand-primary);background-color:var(--primary-background);color:var(--foreground-brand-on-primary);border-radius:var(--button-border-radius)}[data-bspk=button][data-variant=primary][disabled]{color:var(--foreground-neutral-disabled-on-surface);background:var(--interactions-disabled-opacity)}[data-pseudo=hover]>[data-bspk=button][data-variant=primary]:not([disabled]),[data-bspk=button][data-variant=primary]:not([disabled]):hover{background:linear-gradient(var(--interactions-brand-hover-opacity),var(--interactions-brand-hover-opacity)),linear-gradient(var(--primary-background),var(--primary-background))}[data-pseudo=active]>[data-bspk=button][data-variant=primary]:not([disabled]),[data-bspk=button][data-variant=primary]:not([disabled]):active{background:linear-gradient(var(--interactions-brand-press-opacity),var(--interactions-brand-press-opacity)),linear-gradient(var(--primary-background),var(--primary-background))}[data-pseudo=focus]>[data-bspk=button][data-variant=primary]:not([disabled]),[data-bspk=button][data-variant=primary]:not([disabled]):focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=button][data-variant=primary][data-destructive]:not([disabled]){--primary-background: var(--status-error);color:var(--foreground-brand-on-primary)}[data-bspk=button][data-variant=secondary]{border:solid var(--button-border-width) var(--stroke-neutral-base);border-radius:var(--button-border-radius);color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=button][data-variant=secondary][disabled]{color:var(--foreground-neutral-disabled-on-surface);border:solid var(--button-border-width) var(--stroke-neutral-disabled-light)}[data-pseudo=hover]>[data-bspk=button][data-variant=secondary]:not([disabled]),[data-bspk=button][data-variant=secondary]:not([disabled]):hover{background-color:var(--interactions-neutral-hover-opacity)}[data-pseudo=active]>[data-bspk=button][data-variant=secondary]:not([disabled]),[data-bspk=button][data-variant=secondary]:not([disabled]):active{background-color:var(--interactions-neutral-press-opacity)}[data-pseudo=focus]>[data-bspk=button][data-variant=secondary]:not([disabled]),[data-bspk=button][data-variant=secondary]:not([disabled]):focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=button][data-variant=secondary][data-destructive]:not([disabled]){background:transparent;color:var(--status-error);border:solid var(--button-border-width) var(--status-error)}[data-bspk=button][data-variant=tertiary]{background:transparent;color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=button][data-variant=tertiary][disabled]{color:var(--foreground-neutral-disabled-on-surface)}[data-pseudo=hover]>[data-bspk=button][data-variant=tertiary]:not([disabled]),[data-bspk=button][data-variant=tertiary]:not([disabled]):hover{background:var(--interactions-neutral-hover-opacity)}[data-pseudo=active]>[data-bspk=button][data-variant=tertiary]:not([disabled]),[data-bspk=button][data-variant=tertiary]:not([disabled]):active{background:var(--interactions-neutral-press-opacity)}[data-pseudo=focus]>[data-bspk=button][data-variant=tertiary]:not([disabled]),[data-bspk=button][data-variant=tertiary]:not([disabled]):focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=button][data-variant=tertiary][data-destructive]:not([disabled]){color:var(--status-error)}\n"] }]
63439
+ }, styles: ["[data-bspk=button]{display:flex;flex-direction:row;gap:var(--spacing-sizing-02);border:none;cursor:pointer;background:transparent;text-decoration:none;width:fit-content;font-family:var(--typeface)}[data-bspk=button] [data-touch-target]{min-width:var(--spacing-sizing-12);min-height:var(--spacing-sizing-12)}[data-bspk=button][data-width=hug]{width:fit-content}[data-bspk=button][data-width=fill]{width:100%}[data-bspk=button][data-size=x-small]{font-size:var(--typography-size-xs);line-height:var(--typography-line-height-lh-1);height:var(--spacing-sizing-06);min-width:var(--spacing-sizing-06);gap:var(--spacing-sizing-02)}[data-bspk=button][data-size=x-small]:has([data-button-label]),[data-bspk=button][data-size=x-small][data-override]{padding:0 var(--spacing-sizing-02)}[data-bspk=button][data-size=x-small] [data-button-icon] svg{width:var(--spacing-sizing-04);height:var(--spacing-sizing-04)}[data-bspk=button][data-size=small]{font-size:var(--typography-size-sm);line-height:var(--typography-line-height-lh-2);height:var(--spacing-sizing-08);min-width:var(--spacing-sizing-08)}[data-bspk=button][data-size=small]:has([data-button-label]),[data-bspk=button][data-size=small][data-override]{padding:6px var(--spacing-sizing-04)}[data-bspk=button][data-size=small] [data-button-icon] svg{width:var(--spacing-sizing-05);height:var(--spacing-sizing-05)}[data-bspk=button][data-size=medium]{font-size:var(--typography-size-base);line-height:var(--typography-line-height-lh-2);height:var(--spacing-sizing-10);min-width:var(--spacing-sizing-10)}[data-bspk=button][data-size=medium]:has([data-button-label]),[data-bspk=button][data-size=medium][data-override]{padding:var(--spacing-sizing-02) var(--spacing-sizing-04)}[data-bspk=button][data-size=medium] [data-button-icon] svg{width:var(--spacing-sizing-05);height:var(--spacing-sizing-05)}[data-bspk=button][data-size=large]{font-size:var(--typography-size-bp-md);line-height:var(--typography-line-height-lh-4);height:var(--spacing-sizing-12);min-width:var(--spacing-sizing-12)}[data-bspk=button][data-size=large]:has([data-button-label]),[data-bspk=button][data-size=large][data-override]{padding:var(--spacing-sizing-03) var(--spacing-sizing-04)}[data-bspk=button][data-size=large] [data-button-icon] svg{width:var(--spacing-sizing-06);height:var(--spacing-sizing-06)}[data-bspk=button][disabled]{cursor:not-allowed}[data-bspk=button] [data-button-icon]{display:flex;flex-direction:column;align-items:center;justify-content:center}[data-bspk=button] [data-button-label]{display:flex;flex-direction:row;align-items:center}[data-bspk=button][data-variant=primary]{--primary-background: var(--surface-brand-primary);background-color:var(--primary-background);color:var(--foreground-brand-on-primary);border-radius:var(--button-border-radius)}[data-bspk=button][data-variant=primary][disabled]{color:var(--foreground-neutral-disabled-on-surface);background:var(--interactions-disabled-opacity)}[data-pseudo=hover]>[data-bspk=button][data-variant=primary]:not([disabled]),[data-bspk=button][data-variant=primary]:not([disabled]):hover{background:linear-gradient(var(--interactions-brand-hover-opacity),var(--interactions-brand-hover-opacity)),linear-gradient(var(--primary-background),var(--primary-background))}[data-pseudo=active]>[data-bspk=button][data-variant=primary]:not([disabled]),[data-bspk=button][data-variant=primary]:not([disabled]):active{background:linear-gradient(var(--interactions-brand-press-opacity),var(--interactions-brand-press-opacity)),linear-gradient(var(--primary-background),var(--primary-background))}[data-pseudo=focus]>[data-bspk=button][data-variant=primary]:not([disabled]),[data-bspk=button][data-variant=primary]:not([disabled]):focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=button][data-variant=primary][data-destructive]:not([disabled]){--primary-background: var(--status-error);color:var(--foreground-brand-on-primary)}[data-bspk=button][data-variant=secondary]{border:solid var(--button-border-width) var(--stroke-neutral-base);border-radius:var(--button-border-radius);color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=button][data-variant=secondary][disabled]{color:var(--foreground-neutral-disabled-on-surface);border:solid var(--button-border-width) var(--stroke-neutral-disabled-light)}[data-pseudo=hover]>[data-bspk=button][data-variant=secondary]:not([disabled]),[data-bspk=button][data-variant=secondary]:not([disabled]):hover{background-color:var(--interactions-neutral-hover-opacity)}[data-pseudo=active]>[data-bspk=button][data-variant=secondary]:not([disabled]),[data-bspk=button][data-variant=secondary]:not([disabled]):active{background-color:var(--interactions-neutral-press-opacity)}[data-pseudo=focus]>[data-bspk=button][data-variant=secondary]:not([disabled]),[data-bspk=button][data-variant=secondary]:not([disabled]):focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=button][data-variant=secondary][data-destructive]:not([disabled]){background:transparent;color:var(--status-error);border:solid var(--button-border-width) var(--status-error)}[data-bspk=button][data-variant=tertiary]{background:transparent;color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=button][data-variant=tertiary][disabled]{color:var(--foreground-neutral-disabled-on-surface)}[data-pseudo=hover]>[data-bspk=button][data-variant=tertiary]:not([disabled]),[data-bspk=button][data-variant=tertiary]:not([disabled]):hover{background:var(--interactions-neutral-hover-opacity)}[data-pseudo=active]>[data-bspk=button][data-variant=tertiary]:not([disabled]),[data-bspk=button][data-variant=tertiary]:not([disabled]):active{background:var(--interactions-neutral-press-opacity)}[data-pseudo=focus]>[data-bspk=button][data-variant=tertiary]:not([disabled]),[data-bspk=button][data-variant=tertiary]:not([disabled]):focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=button][data-variant=tertiary][data-destructive]:not([disabled]){color:var(--status-error)}\n"] }]
63406
63440
  }], propDecorators: { onClick: [{
63407
63441
  type: Output
63408
63442
  }], onFocus: [{
@@ -63413,7 +63447,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
63413
63447
  type: Output
63414
63448
  }], onMouseLeave: [{
63415
63449
  type: Output
63416
- }], buttonElement: [{ type: i0.ViewChild, args: ['buttonElement', { isSignal: true }] }], style: [{ type: i0.Input, args: [{ isSignal: true, alias: "style", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaHaspopup: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaHaspopup", required: false }] }], ariaExpanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaExpanded", required: false }] }], ariaControls: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaControls", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], iconOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconOnly", required: false }] }], destructive: [{ type: i0.Input, args: [{ isSignal: true, alias: "destructive", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], width: [{ type: i0.Input, args: [{ isSignal: true, alias: "width", required: false }] }], tooltip: [{ type: i0.Input, args: [{ isSignal: true, alias: "tooltip", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], owner: [{ type: i0.Input, args: [{ isSignal: true, alias: "owner", required: false }] }], class: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
63450
+ }], style: [{ type: i0.Input, args: [{ isSignal: true, alias: "style", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaHaspopup: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaHaspopup", required: false }] }], ariaExpanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaExpanded", required: false }] }], ariaControls: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaControls", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], iconOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconOnly", required: false }] }], destructive: [{ type: i0.Input, args: [{ isSignal: true, alias: "destructive", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], width: [{ type: i0.Input, args: [{ isSignal: true, alias: "width", required: false }] }], tooltip: [{ type: i0.Input, args: [{ isSignal: true, alias: "tooltip", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], owner: [{ type: i0.Input, args: [{ isSignal: true, alias: "owner", required: false }] }], class: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
63417
63451
 
63418
63452
  /**
63419
63453
  * A visual and contextual message used to communicate an important message or notification to users relating to a
@@ -63752,6 +63786,7 @@ class KeyNavigationUtility {
63752
63786
  },
63753
63787
  ]));
63754
63788
  }, ...(ngDevMode ? [{ debugName: "arrowKeyCallbacks" }] : []));
63789
+ document = inject(DOCUMENT$1);
63755
63790
  constructor() {
63756
63791
  effect(() => {
63757
63792
  const { ids, activeElementId } = this.props();
@@ -63765,7 +63800,7 @@ class KeyNavigationUtility {
63765
63800
  return this.props().activeElementId;
63766
63801
  }
63767
63802
  get activeElement() {
63768
- return (this.activeElementId && document.querySelector(`[id="${this.activeElementId}"]`)) || null;
63803
+ return (this.activeElementId && this.document.querySelector(`[id="${this.activeElementId}"]`)) || null;
63769
63804
  }
63770
63805
  /**
63771
63806
  * Cleans up the utility by resetting its properties.
@@ -63783,7 +63818,7 @@ class KeyNavigationUtility {
63783
63818
  setActiveElementId(id) {
63784
63819
  this.updateProps({ activeElementId: id });
63785
63820
  if (id)
63786
- document.querySelector(`[id="${id}"]`)?.scrollIntoView({
63821
+ this.document.querySelector(`[id="${id}"]`)?.scrollIntoView({
63787
63822
  block: 'nearest',
63788
63823
  behavior: 'smooth',
63789
63824
  inline: 'nearest',
@@ -63866,6 +63901,7 @@ class OutsideClickUtility {
63866
63901
  disabled: false,
63867
63902
  handleTabs: false,
63868
63903
  }, ...(ngDevMode ? [{ debugName: "props" }] : []));
63904
+ document = inject(DOCUMENT$1);
63869
63905
  updateProps(next) {
63870
63906
  this.props.set({
63871
63907
  ...this.props(),
@@ -63877,15 +63913,15 @@ class OutsideClickUtility {
63877
63913
  return;
63878
63914
  this.updateProps(props);
63879
63915
  if (this.props().elements?.length) {
63880
- document.addEventListener('mousedown', this.handleClickOutside);
63881
- document.addEventListener('keydown', this.handleOutsideTab);
63916
+ this.document.addEventListener('mousedown', this.handleClickOutside);
63917
+ this.document.addEventListener('keydown', this.handleOutsideTab);
63882
63918
  }
63883
63919
  }
63884
63920
  destroy() {
63885
63921
  if (typeof document === 'undefined')
63886
63922
  return;
63887
- document.removeEventListener('mousedown', this.handleClickOutside);
63888
- document.removeEventListener('keydown', this.handleOutsideTab);
63923
+ this.document.removeEventListener('mousedown', this.handleClickOutside);
63924
+ this.document.removeEventListener('keydown', this.handleOutsideTab);
63889
63925
  }
63890
63926
  handleClickOutside = (event) => {
63891
63927
  const { elements, callback, disabled } = this.props();
@@ -63898,7 +63934,7 @@ class OutsideClickUtility {
63898
63934
  if (!handleTabs || event.key !== 'Tab' || disabled)
63899
63935
  return;
63900
63936
  setTimeout(() => {
63901
- if (elements?.some?.((element) => element?.contains?.(document.activeElement)))
63937
+ if (elements?.some?.((element) => element?.contains?.(this.document.activeElement)))
63902
63938
  return;
63903
63939
  callback?.(event);
63904
63940
  }, 0);
@@ -63970,9 +64006,10 @@ class UIBreadcrumbDropdown {
63970
64006
  minWidth: '150px',
63971
64007
  };
63972
64008
  }, ...(ngDevMode ? [{ debugName: "ngMenuStyle" }] : []));
64009
+ document = inject(DOCUMENT$1);
63973
64010
  get offset() {
63974
64011
  // Reads the CSS variable value at runtime, offsetOptions requires a number
63975
- return parseInt(getComputedStyle(document.documentElement).getPropertyValue('--spacing-sizing-01'));
64012
+ return parseInt(getComputedStyle(this.document.documentElement).getPropertyValue('--spacing-sizing-01'));
63976
64013
  }
63977
64014
  get referenceEl() {
63978
64015
  return this.reference().nativeElement;
@@ -64141,16 +64178,17 @@ class UIBreadcrumb {
64141
64178
  items = input.required(...(ngDevMode ? [{ debugName: "items" }] : []));
64142
64179
  id = input(uniqueId('breadcrumb-'), ...(ngDevMode ? [{ debugName: "id" }] : []));
64143
64180
  scrollLimit = input(...(ngDevMode ? [undefined, { debugName: "scrollLimit" }] : []));
64181
+ variant = input('default', ...(ngDevMode ? [{ debugName: "variant" }] : []));
64144
64182
  shouldRender = computed(() => this.items().length >= 2, ...(ngDevMode ? [{ debugName: "shouldRender" }] : []));
64145
64183
  firstItem = computed(() => this.items()[0], ...(ngDevMode ? [{ debugName: "firstItem" }] : []));
64146
64184
  lastItem = computed(() => this.items()[this.items().length - 1], ...(ngDevMode ? [{ debugName: "lastItem" }] : []));
64147
64185
  middleItems = computed(() => this.items().length > 2 ? this.items().slice(1, this.items().length - 1) : [], ...(ngDevMode ? [{ debugName: "middleItems" }] : []));
64148
64186
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIBreadcrumb, deps: [], target: i0.ɵɵFactoryTarget.Component });
64149
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIBreadcrumb, isStandalone: true, selector: "ui-breadcrumb", inputs: { ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, scrollLimit: { classPropertyName: "scrollLimit", publicName: "scrollLimit", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `@if (shouldRender()) {
64187
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIBreadcrumb, isStandalone: true, selector: "ui-breadcrumb", inputs: { ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, scrollLimit: { classPropertyName: "scrollLimit", publicName: "scrollLimit", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `@if (shouldRender()) {
64150
64188
  <nav [attr.aria-label]="ariaLabel() || 'Breadcrumb'" [attr.data-bspk]="'breadcrumb'" [attr.id]="id()">
64151
64189
  <ol>
64152
64190
  <li>
64153
- <a ui-link [href]="firstItem().href">{{ firstItem().label }}</a>
64191
+ <a ui-link size="small" [variant]="variant()" [href]="firstItem().href">{{ firstItem().label }}</a>
64154
64192
  <icon-chevron-right aria-hidden="true" width="24" />
64155
64193
  </li>
64156
64194
  @if (items().length > 5) {
@@ -64160,12 +64198,12 @@ class UIBreadcrumb {
64160
64198
  } @else {
64161
64199
  @for (item of middleItems(); track item.href) {
64162
64200
  <li>
64163
- <a ui-link [href]="item.href">{{ item.label }}</a>
64201
+ <a ui-link size="small" [variant]="variant()" [href]="item.href">{{ item.label }}</a>
64164
64202
  <icon-chevron-right aria-hidden="true" width="24" />
64165
64203
  </li>
64166
64204
  }
64167
64205
  }
64168
- <li [attr.aria-current]="'page'" [ui-txt]="'body-base'">
64206
+ <li [attr.aria-current]="'page'" [ui-txt]="'labels-small'">
64169
64207
  {{ lastItem().label }}
64170
64208
  </li>
64171
64209
  </ol>
@@ -64178,7 +64216,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64178
64216
  <nav [attr.aria-label]="ariaLabel() || 'Breadcrumb'" [attr.data-bspk]="'breadcrumb'" [attr.id]="id()">
64179
64217
  <ol>
64180
64218
  <li>
64181
- <a ui-link [href]="firstItem().href">{{ firstItem().label }}</a>
64219
+ <a ui-link size="small" [variant]="variant()" [href]="firstItem().href">{{ firstItem().label }}</a>
64182
64220
  <icon-chevron-right aria-hidden="true" width="24" />
64183
64221
  </li>
64184
64222
  @if (items().length > 5) {
@@ -64188,18 +64226,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64188
64226
  } @else {
64189
64227
  @for (item of middleItems(); track item.href) {
64190
64228
  <li>
64191
- <a ui-link [href]="item.href">{{ item.label }}</a>
64229
+ <a ui-link size="small" [variant]="variant()" [href]="item.href">{{ item.label }}</a>
64192
64230
  <icon-chevron-right aria-hidden="true" width="24" />
64193
64231
  </li>
64194
64232
  }
64195
64233
  }
64196
- <li [attr.aria-current]="'page'" [ui-txt]="'body-base'">
64234
+ <li [attr.aria-current]="'page'" [ui-txt]="'labels-small'">
64197
64235
  {{ lastItem().label }}
64198
64236
  </li>
64199
64237
  </ol>
64200
64238
  </nav>
64201
64239
  }`, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, UITxtDirective, UIBreadcrumbDropdown, IconChevronRight, UILinkDirective], encapsulation: ViewEncapsulation.None, styles: ["[data-bspk=breadcrumb]{width:100%}[data-bspk=breadcrumb] ol{display:flex;align-items:center;flex-flow:row wrap;list-style:none;gap:var(--spacing-sizing-02)}[data-bspk=breadcrumb] ol li{display:flex;gap:var(--spacing-sizing-02)}\n"] }]
64202
- }], propDecorators: { ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: true }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], scrollLimit: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollLimit", required: false }] }] } });
64240
+ }], propDecorators: { ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: true }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], scrollLimit: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollLimit", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }] } });
64203
64241
 
64204
64242
  const COLUMNS_COUNT = 7;
64205
64243
  function parseDate$1(next) {
@@ -64306,27 +64344,26 @@ function getCalendarKeydownHandler(activeDate, setActiveDate, rows, focusActiveD
64306
64344
  * Allows customers to select the date, month, and year.
64307
64345
  *
64308
64346
  * @example
64309
- * <ui-calendar (onChange)="handleChange($event)" />
64347
+ * <ui-calendar (valueChange)="handleChange($event)" />
64310
64348
  *
64311
64349
  * @name Calendar
64312
64350
  * @phase Dev
64313
64351
  */
64314
64352
  class UICalendar {
64315
- onChange = new EventEmitter();
64316
64353
  IconKeyboardDoubleArrowLeft = IconKeyboardDoubleArrowLeft;
64317
64354
  IconKeyboardDoubleArrowRight = IconKeyboardDoubleArrowRight;
64318
64355
  IconChevronLeft = IconChevronLeft;
64319
64356
  IconChevronRight = IconChevronRight;
64320
- value = input(undefined, ...(ngDevMode ? [{ debugName: "value" }] : []));
64357
+ value = model(undefined, ...(ngDevMode ? [{ debugName: "value" }] : []));
64321
64358
  focusTrap = input(false, ...(ngDevMode ? [{ debugName: "focusTrap" }] : []));
64322
64359
  id = input(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
64323
- activeDate = startOfToday();
64360
+ activeDate = signal(startOfToday(), ...(ngDevMode ? [{ debugName: "activeDate" }] : []));
64324
64361
  format = format;
64325
64362
  isSameDay = isSameDay;
64326
64363
  addYears = addYears;
64327
64364
  addMonths = addMonths;
64328
64365
  firstButton = viewChild('firstButton', ...(ngDevMode ? [{ debugName: "firstButton" }] : []));
64329
- lastButton = viewChild('lastButton', ...(ngDevMode ? [{ debugName: "lastButton" }] : []));
64366
+ // private readonly lastButton = viewChild<ElementRef<HTMLButtonElement>>('lastButton');
64330
64367
  grid = viewChild('grid', ...(ngDevMode ? [{ debugName: "grid" }] : []));
64331
64368
  constructor() {
64332
64369
  effect(() => {
@@ -64335,8 +64372,8 @@ class UICalendar {
64335
64372
  });
64336
64373
  }
64337
64374
  get rows() {
64338
- const start = startOfWeek(startOfMonth(this.activeDate), { weekStartsOn: 0 });
64339
- const end = endOfWeek(endOfMonth(this.activeDate), { weekStartsOn: 0 });
64375
+ const start = startOfWeek(startOfMonth(this.activeDate()), { weekStartsOn: 0 });
64376
+ const end = endOfWeek(endOfMonth(this.activeDate()), { weekStartsOn: 0 });
64340
64377
  const days = eachDayOfInterval({ start, end });
64341
64378
  const weeks = [];
64342
64379
  for (let i = 0; i < days.length; i += COLUMNS_COUNT) {
@@ -64348,11 +64385,11 @@ class UICalendar {
64348
64385
  return `${this.id() || 'calendar'}-grid`;
64349
64386
  }
64350
64387
  ngOnInit() {
64351
- this.activeDate = this.value() && isValid(this.value()) ? this.value() : startOfToday();
64388
+ this.activeDate.set(this.value() && isValid(this.value()) ? this.value() : startOfToday());
64352
64389
  }
64353
64390
  setFocus() {
64354
64391
  setTimeout(() => {
64355
- const selectedDateId = this.generateOptionId(this.activeDate);
64392
+ const selectedDateId = this.generateOptionId(this.activeDate());
64356
64393
  const selectedDateElement = this.grid()?.nativeElement?.querySelector(`#${selectedDateId}`);
64357
64394
  selectedDateElement?.focus();
64358
64395
  }, 0);
@@ -64361,9 +64398,6 @@ class UICalendar {
64361
64398
  if (this.focusTrap())
64362
64399
  this.setFocus();
64363
64400
  }
64364
- setActiveDate(date) {
64365
- this.activeDate = date;
64366
- }
64367
64401
  generateOptionId(date) {
64368
64402
  return optionIdGenerator(this.id() || 'calendar')(date);
64369
64403
  }
@@ -64376,11 +64410,11 @@ class UICalendar {
64376
64410
  }
64377
64411
  onGridKeydown(event) {
64378
64412
  // Use the shared calendar keydown handler from utils
64379
- getCalendarKeydownHandler(this.activeDate, (date) => {
64380
- this.setActiveDate(date);
64413
+ getCalendarKeydownHandler(this.activeDate(), (date) => {
64414
+ this.activeDate.set(date);
64381
64415
  }, this.rows, () => {
64382
64416
  setTimeout(() => {
64383
- const selectedDateId = this.generateOptionId(this.activeDate);
64417
+ const selectedDateId = this.generateOptionId(this.activeDate());
64384
64418
  const selectedDateElement = this.grid()?.nativeElement?.querySelector(`#${selectedDateId}`);
64385
64419
  selectedDateElement?.focus();
64386
64420
  }, 0);
@@ -64393,14 +64427,14 @@ class UICalendar {
64393
64427
  }
64394
64428
  }
64395
64429
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UICalendar, deps: [], target: i0.ɵɵFactoryTarget.Component });
64396
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UICalendar, isStandalone: true, selector: "ui-calendar", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, focusTrap: { classPropertyName: "focusTrap", publicName: "focusTrap", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onChange: "onChange" }, host: { styleAttribute: "display: contents;" }, viewQueries: [{ propertyName: "firstButton", first: true, predicate: ["firstButton"], descendants: true, isSignal: true }, { propertyName: "lastButton", first: true, predicate: ["lastButton"], descendants: true, isSignal: true }, { propertyName: "grid", first: true, predicate: ["grid"], descendants: true, isSignal: true }], ngImport: i0, template: `
64430
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UICalendar, isStandalone: true, selector: "ui-calendar", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, focusTrap: { classPropertyName: "focusTrap", publicName: "focusTrap", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { styleAttribute: "display: contents;" }, viewQueries: [{ propertyName: "firstButton", first: true, predicate: ["firstButton"], descendants: true, isSignal: true }, { propertyName: "grid", first: true, predicate: ["grid"], descendants: true, isSignal: true }], ngImport: i0, template: `
64397
64431
  <div data-bspk="calendar" [id]="id()">
64398
64432
  <div data-header>
64399
64433
  <ui-button
64400
64434
  label="Previous Year"
64401
64435
  variant="tertiary"
64402
64436
  size="large"
64403
- (click)="setActiveDate(addYears(activeDate, -1))"
64437
+ (click)="this.activeDate.set(addYears(activeDate(), -1))"
64404
64438
  (keydown)="onFirstButtonKeydown($event)"
64405
64439
  #firstButton
64406
64440
  [icon]="IconKeyboardDoubleArrowLeft"
@@ -64410,16 +64444,16 @@ class UICalendar {
64410
64444
  label="Previous Month"
64411
64445
  variant="tertiary"
64412
64446
  size="large"
64413
- (click)="setActiveDate(addMonths(activeDate, -1))"
64447
+ (click)="this.activeDate.set(addMonths(activeDate(), -1))"
64414
64448
  [iconOnly]="true"
64415
64449
  [icon]="IconChevronLeft">
64416
64450
  </ui-button>
64417
- <span data-title>{{ format(activeDate, 'MMMM yyyy') }}</span>
64451
+ <span data-title>{{ format(activeDate(), 'MMMM yyyy') }}</span>
64418
64452
  <ui-button
64419
64453
  label="Next Month"
64420
64454
  variant="tertiary"
64421
64455
  size="large"
64422
- (click)="setActiveDate(addMonths(activeDate, 1))"
64456
+ (click)="this.activeDate.set(addMonths(activeDate(), 1))"
64423
64457
  [iconOnly]="true"
64424
64458
  [icon]="IconChevronRight">
64425
64459
  </ui-button>
@@ -64427,7 +64461,7 @@ class UICalendar {
64427
64461
  label="Next Year"
64428
64462
  variant="tertiary"
64429
64463
  size="large"
64430
- (click)="setActiveDate(addYears(activeDate, 1))"
64464
+ (click)="this.activeDate.set(addYears(activeDate(), 1))"
64431
64465
  #lastButton
64432
64466
  [iconOnly]="true"
64433
64467
  [icon]="IconKeyboardDoubleArrowRight">
@@ -64452,11 +64486,11 @@ class UICalendar {
64452
64486
  @for (date of week; track date?.getTime() ?? -1) {
64453
64487
  <td
64454
64488
  [attr.aria-label]="format(date, 'do MMMM yyyy')"
64455
- [attr.data-selected]="isSameDay(date, activeDate) ? true : null"
64489
+ [attr.data-selected]="isSameDay(date, activeDate()) ? true : null"
64456
64490
  [id]="generateOptionId(date)"
64457
- (click)="onChange.emit(date)"
64458
- [attr.role]="isSameDay(date, activeDate) ? 'gridcell' : null"
64459
- [attr.tabindex]="isSameDay(date, activeDate) ? 0 : -1">
64491
+ (click)="value.set(date); activeDate.set(date)"
64492
+ [attr.role]="isSameDay(date, activeDate()) ? 'gridcell' : null"
64493
+ [attr.tabindex]="isSameDay(date, activeDate()) ? 0 : -1">
64460
64494
  {{ format(date, 'd') }}
64461
64495
  </td>
64462
64496
  }
@@ -64476,7 +64510,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64476
64510
  label="Previous Year"
64477
64511
  variant="tertiary"
64478
64512
  size="large"
64479
- (click)="setActiveDate(addYears(activeDate, -1))"
64513
+ (click)="this.activeDate.set(addYears(activeDate(), -1))"
64480
64514
  (keydown)="onFirstButtonKeydown($event)"
64481
64515
  #firstButton
64482
64516
  [icon]="IconKeyboardDoubleArrowLeft"
@@ -64486,16 +64520,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64486
64520
  label="Previous Month"
64487
64521
  variant="tertiary"
64488
64522
  size="large"
64489
- (click)="setActiveDate(addMonths(activeDate, -1))"
64523
+ (click)="this.activeDate.set(addMonths(activeDate(), -1))"
64490
64524
  [iconOnly]="true"
64491
64525
  [icon]="IconChevronLeft">
64492
64526
  </ui-button>
64493
- <span data-title>{{ format(activeDate, 'MMMM yyyy') }}</span>
64527
+ <span data-title>{{ format(activeDate(), 'MMMM yyyy') }}</span>
64494
64528
  <ui-button
64495
64529
  label="Next Month"
64496
64530
  variant="tertiary"
64497
64531
  size="large"
64498
- (click)="setActiveDate(addMonths(activeDate, 1))"
64532
+ (click)="this.activeDate.set(addMonths(activeDate(), 1))"
64499
64533
  [iconOnly]="true"
64500
64534
  [icon]="IconChevronRight">
64501
64535
  </ui-button>
@@ -64503,7 +64537,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64503
64537
  label="Next Year"
64504
64538
  variant="tertiary"
64505
64539
  size="large"
64506
- (click)="setActiveDate(addYears(activeDate, 1))"
64540
+ (click)="this.activeDate.set(addYears(activeDate(), 1))"
64507
64541
  #lastButton
64508
64542
  [iconOnly]="true"
64509
64543
  [icon]="IconKeyboardDoubleArrowRight">
@@ -64528,11 +64562,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64528
64562
  @for (date of week; track date?.getTime() ?? -1) {
64529
64563
  <td
64530
64564
  [attr.aria-label]="format(date, 'do MMMM yyyy')"
64531
- [attr.data-selected]="isSameDay(date, activeDate) ? true : null"
64565
+ [attr.data-selected]="isSameDay(date, activeDate()) ? true : null"
64532
64566
  [id]="generateOptionId(date)"
64533
- (click)="onChange.emit(date)"
64534
- [attr.role]="isSameDay(date, activeDate) ? 'gridcell' : null"
64535
- [attr.tabindex]="isSameDay(date, activeDate) ? 0 : -1">
64567
+ (click)="value.set(date); activeDate.set(date)"
64568
+ [attr.role]="isSameDay(date, activeDate()) ? 'gridcell' : null"
64569
+ [attr.tabindex]="isSameDay(date, activeDate()) ? 0 : -1">
64536
64570
  {{ format(date, 'd') }}
64537
64571
  </td>
64538
64572
  }
@@ -64544,9 +64578,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64544
64578
  `, imports: [UIButton], encapsulation: ViewEncapsulation.None, host: {
64545
64579
  style: 'display: contents;',
64546
64580
  }, styles: ["[data-bspk=calendar]{display:flex;flex-direction:column;justify-content:center;font:var(--labels-base);width:360px;color:var(--foreground-neutral-on-surface);gap:var(--spacing-sizing-01);background:var(--surface-neutral-t1-base);border-radius:var(--radius-lg);padding:var(--spacing-sizing-02)}[data-bspk=calendar] [data-header]{display:flex;justify-content:space-between;align-items:center;padding:0;border-bottom:1px solid var(--stroke-neutral-low)}[data-bspk=calendar] [data-header] [data-title]{flex-grow:1;display:flex;align-items:center;justify-content:center}[data-bspk=calendar] [data-header] [data-title] [data-bspk=button]{font:inherit}[data-bspk=calendar] [data-header] [data-title] [data-bspk=button][data-month],[data-bspk=calendar] [data-header] [data-title] [data-bspk=button][data-year]{padding:0;min-width:var(--spacing-sizing-12)}[data-bspk=calendar] [data-header] [data-bspk=button]{border-radius:var(--radius-sm)}[data-bspk=calendar] table{display:flex;flex-direction:column}[data-bspk=calendar] table tr{display:contents}[data-bspk=calendar] table td,[data-bspk=calendar] table th{height:var(--spacing-sizing-12);line-height:var(--spacing-sizing-12);text-align:center;border-radius:var(--radius-sm);font-weight:inherit}[data-bspk=calendar] table thead{display:grid;grid-template-columns:repeat(7,14.2857142857%);text-align:center}[data-bspk=calendar] table thead th{color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=calendar] table tbody{display:grid;grid-template-columns:repeat(7,14.2857142857%)}[data-bspk=calendar] table tbody [data-non-month-day]{color:var(--foreground-neutral-on-surface-variant-02)}[data-bspk=calendar] table tbody td:hover,[data-bspk=calendar] table tbody td:focus-visible{cursor:pointer;outline:2px solid var(--stroke-neutral-focus);outline-offset:-2px}[data-bspk=calendar] table tbody td[data-selected]{background:var(--surface-brand-primary);color:var(--foreground-brand-on-primary);outline-offset:2px}\n"] }]
64547
- }], ctorParameters: () => [], propDecorators: { onChange: [{
64548
- type: Output
64549
- }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], focusTrap: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusTrap", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], firstButton: [{ type: i0.ViewChild, args: ['firstButton', { isSignal: true }] }], lastButton: [{ type: i0.ViewChild, args: ['lastButton', { isSignal: true }] }], grid: [{ type: i0.ViewChild, args: ['grid', { isSignal: true }] }] } });
64581
+ }], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], focusTrap: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusTrap", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], firstButton: [{ type: i0.ViewChild, args: ['firstButton', { isSignal: true }] }], grid: [{ type: i0.ViewChild, args: ['grid', { isSignal: true }] }] } });
64550
64582
 
64551
64583
  /**
64552
64584
  * Cards are often rectangular and contain various content, such as text, images, icons, multimedia, and interactive
@@ -64602,13 +64634,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64602
64634
  * @phase Dev
64603
64635
  */
64604
64636
  class UICheckbox {
64605
- /** Emits the new checked state (true or false) */
64606
- checkedChange = output();
64607
64637
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
64608
- value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
64638
+ value = model.required(...(ngDevMode ? [{ debugName: "value" }] : []));
64609
64639
  ariaLabel = input(undefined, ...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
64610
64640
  id = input(uniqueId('checkbox'), ...(ngDevMode ? [{ debugName: "id" }] : []));
64611
- checked = input(false, ...(ngDevMode ? [{ debugName: "checked" }] : []));
64641
+ checked = model(false, ...(ngDevMode ? [{ debugName: "checked" }] : []));
64612
64642
  indeterminate = input(false, ...(ngDevMode ? [{ debugName: "indeterminate" }] : []));
64613
64643
  disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
64614
64644
  invalid = input(false, ...(ngDevMode ? [{ debugName: "invalid" }] : []));
@@ -64626,10 +64656,10 @@ class UICheckbox {
64626
64656
  });
64627
64657
  }
64628
64658
  onInputChange() {
64629
- this.checkedChange.emit(this.inputEl().nativeElement.checked);
64659
+ this.checked.set(this.inputEl().nativeElement.checked);
64630
64660
  }
64631
64661
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UICheckbox, deps: [], target: i0.ɵɵFactoryTarget.Component });
64632
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UICheckbox, isStandalone: true, selector: "ui-checkbox", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, indeterminate: { classPropertyName: "indeterminate", publicName: "indeterminate", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checkedChange: "checkedChange" }, host: { attributes: { "data-bspk": "checkbox" } }, viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["input"], descendants: true, isSignal: true }], ngImport: i0, template: `
64662
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UICheckbox, isStandalone: true, selector: "ui-checkbox", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, indeterminate: { classPropertyName: "indeterminate", publicName: "indeterminate", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", checked: "checkedChange" }, host: { attributes: { "data-bspk": "checkbox" } }, viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["input"], descendants: true, isSignal: true }], ngImport: i0, template: `
64633
64663
  <input
64634
64664
  [attr.aria-describedby]="ariaDescribedBy() || undefined"
64635
64665
  [attr.aria-errormessage]="ariaErrorMessage() || undefined"
@@ -64700,7 +64730,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64700
64730
  `, encapsulation: ViewEncapsulation.None, host: {
64701
64731
  'data-bspk': 'checkbox',
64702
64732
  }, styles: ["[data-bspk=checkbox]{display:block;position:relative;width:var(--spacing-sizing-06);aspect-ratio:1/1;padding:2px}[data-bspk=checkbox] input[type=checkbox]{position:absolute;opacity:0;z-index:2;width:100%;height:100%;top:0;left:0;cursor:pointer}[data-bspk=checkbox] span{--stroke: var(--stroke-neutral-base);--inner: none;--background: none;--color: var(--foreground-brand-on-primary);display:flex;width:20px;aspect-ratio:1/1;cursor:pointer;border-radius:2px;border:2px solid var(--stroke);align-items:center;flex-direction:column;justify-content:center;position:relative;background:var(--background);color:var(--color)}[data-bspk=checkbox] span svg[data-checked]{width:14px}[data-bspk=checkbox] span svg[data-indeterminate]{width:12px}[data-bspk=checkbox] input[type=checkbox]:not(:checked,:indeterminate,[disabled],[readOnly]):hover+span{background-color:var(--interactions-neutral-hover-opacity)}[data-bspk=checkbox] input[type=checkbox]:not(:checked,:indeterminate,[disabled],[readOnly]):active+span{background-color:var(--interactions-neutral-press-opacity)}[data-bspk=checkbox] input[type=checkbox]:checked+span,[data-bspk=checkbox] input[type=checkbox]:indeterminate+span{--stroke: var(--stroke-brand-primary);--background: var(--surface-brand-primary)}[data-bspk=checkbox] input[type=checkbox][disabled],[data-bspk=checkbox] input[type=checkbox][readOnly]{cursor:not-allowed}[data-bspk=checkbox] input[type=checkbox][disabled]+span,[data-bspk=checkbox] input[type=checkbox][readOnly]+span{--stroke: var(--stroke-neutral-interactions-disabled-light)}[data-bspk=checkbox] input[type=checkbox][disabled]:is(:checked,:indeterminate)+span,[data-bspk=checkbox] input[type=checkbox][readOnly]:is(:checked,:indeterminate)+span{--stroke: transparent;--background: var(--interactions-disabled-opacity);--color: var(--foreground-neutral-disabled-on-surface)}[data-bspk=checkbox] input[type=checkbox][aria-invalid]:not([disabled],[readOnly]):checked+span,[data-bspk=checkbox] input[type=checkbox][aria-invalid]:not([disabled],[readOnly]):indeterminate+span{--background: var(--status-error)}[data-bspk=checkbox] input[type=checkbox][aria-invalid]:not([disabled],[readOnly])+span{--stroke: var(--status-error)}\n"] }]
64703
- }], ctorParameters: () => [], propDecorators: { checkedChange: [{ type: i0.Output, args: ["checkedChange"] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], checked: [{ type: i0.Input, args: [{ isSignal: true, alias: "checked", required: false }] }], indeterminate: [{ type: i0.Input, args: [{ isSignal: true, alias: "indeterminate", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }], inputEl: [{ type: i0.ViewChild, args: ['input', { isSignal: true }] }] } });
64733
+ }], ctorParameters: () => [], propDecorators: { name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }, { type: i0.Output, args: ["valueChange"] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], checked: [{ type: i0.Input, args: [{ isSignal: true, alias: "checked", required: false }] }, { type: i0.Output, args: ["checkedChange"] }], indeterminate: [{ type: i0.Input, args: [{ isSignal: true, alias: "indeterminate", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }], inputEl: [{ type: i0.ViewChild, args: ['input', { isSignal: true }] }] } });
64704
64734
 
64705
64735
  /**
64706
64736
  * A control that allows users to choose one or more items from a list or turn a feature on or off.
@@ -64735,11 +64765,11 @@ class UICheckboxOption extends UICheckbox {
64735
64765
  [required]="required()"
64736
64766
  [invalid]="invalid()"
64737
64767
  [ariaLabel]="ariaLabel() || computedAriaLabel()"
64738
- (checkedChange)="checkedChange.emit($event)"
64768
+ (checkedChange)="checked.set($event)"
64739
64769
  #input>
64740
64770
  </ui-checkbox>
64741
64771
  </span>
64742
- </ui-list-item>`, isInline: true, dependencies: [{ kind: "component", type: UICheckbox, selector: "ui-checkbox", inputs: ["name", "value", "ariaLabel", "id", "checked", "indeterminate", "disabled", "invalid", "required", "readOnly", "ariaDescribedBy", "ariaErrorMessage"], outputs: ["checkedChange"] }, { kind: "component", type: UIListItem, selector: "ui-list-item", inputs: ["active", "owner", "ariaLabel", "ariaRole", "ariaSelected", "ariaDisabled", "ariaReadonly", "htmlFor", "disabled", "readOnly", "as", "href", "label", "subText", "width", "tabIndex", "id"], outputs: ["onClick"] }] });
64772
+ </ui-list-item>`, isInline: true, dependencies: [{ kind: "component", type: UICheckbox, selector: "ui-checkbox", inputs: ["name", "value", "ariaLabel", "id", "checked", "indeterminate", "disabled", "invalid", "required", "readOnly", "ariaDescribedBy", "ariaErrorMessage"], outputs: ["valueChange", "checkedChange"] }, { kind: "component", type: UIListItem, selector: "ui-list-item", inputs: ["active", "owner", "ariaLabel", "ariaRole", "ariaSelected", "ariaDisabled", "ariaReadonly", "htmlFor", "disabled", "readOnly", "as", "href", "label", "subText", "width", "tabIndex", "id"], outputs: ["onClick"] }] });
64743
64773
  }
64744
64774
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UICheckboxOption, decorators: [{
64745
64775
  type: Component,
@@ -64765,7 +64795,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64765
64795
  [required]="required()"
64766
64796
  [invalid]="invalid()"
64767
64797
  [ariaLabel]="ariaLabel() || computedAriaLabel()"
64768
- (checkedChange)="checkedChange.emit($event)"
64798
+ (checkedChange)="checked.set($event)"
64769
64799
  #input>
64770
64800
  </ui-checkbox>
64771
64801
  </span>
@@ -64785,10 +64815,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64785
64815
  * @phase Stable
64786
64816
  */
64787
64817
  class UICheckboxGroup {
64788
- valueChange = output();
64789
64818
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
64790
64819
  options = input([], ...(ngDevMode ? [{ debugName: "options" }] : []));
64791
- value = input([], ...(ngDevMode ? [{ debugName: "value" }] : []));
64820
+ value = model([], ...(ngDevMode ? [{ debugName: "value" }] : []));
64792
64821
  selectAll = input(false, ...(ngDevMode ? [{ debugName: "selectAll" }] : []));
64793
64822
  selectAllProps = input(undefined, ...(ngDevMode ? [{ debugName: "selectAllProps" }] : []));
64794
64823
  id = input(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
@@ -64820,20 +64849,20 @@ class UICheckboxGroup {
64820
64849
  }
64821
64850
  onSelectAllChange(checked) {
64822
64851
  const opts = this.availableOptions();
64823
- this.valueChange.emit(checked ? opts.map((o) => o.value) : []);
64852
+ this.value.set(checked ? opts.map((o) => o.value) : []);
64824
64853
  }
64825
64854
  onOptionChange(optionValue, checked) {
64826
64855
  const value = this.value();
64827
64856
  const current = Array.isArray(value) ? value : [];
64828
64857
  if (checked) {
64829
- this.valueChange.emit([...current, optionValue]);
64858
+ this.value.set([...current, optionValue]);
64830
64859
  }
64831
64860
  else {
64832
- this.valueChange.emit(current.filter((v) => v !== optionValue));
64861
+ this.value.set(current.filter((v) => v !== optionValue));
64833
64862
  }
64834
64863
  }
64835
64864
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UICheckboxGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
64836
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UICheckboxGroup, isStandalone: true, selector: "ui-checkbox-group", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, selectAll: { classPropertyName: "selectAll", publicName: "selectAll", isSignal: true, isRequired: false, transformFunction: null }, selectAllProps: { classPropertyName: "selectAllProps", publicName: "selectAllProps", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: `
64865
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UICheckboxGroup, isStandalone: true, selector: "ui-checkbox-group", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, selectAll: { classPropertyName: "selectAll", publicName: "selectAll", isSignal: true, isRequired: false, transformFunction: null }, selectAllProps: { classPropertyName: "selectAllProps", publicName: "selectAllProps", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, ngImport: i0, template: `
64837
64866
  <div role="group">
64838
64867
  @if (selectAll()) {
64839
64868
  <ui-checkbox-option
@@ -64922,7 +64951,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64922
64951
  </div>
64923
64952
  `,
64924
64953
  }]
64925
- }], propDecorators: { valueChange: [{ type: i0.Output, args: ["valueChange"] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], selectAll: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAll", required: false }] }], selectAllProps: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAllProps", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }] } });
64954
+ }], propDecorators: { name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], selectAll: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAll", required: false }] }], selectAllProps: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAllProps", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }] } });
64926
64955
 
64927
64956
  /**
64928
64957
  * A two-tone warning icon used to indicate a warning state specifically in inline alerts.
@@ -65135,7 +65164,7 @@ class UICheckboxGroupField extends UICheckboxGroup {
65135
65164
  [ariaLabelledBy]="labelledById()"
65136
65165
  [ariaDescribedBy]="describedById()"
65137
65166
  [ariaErrorMessage]="errorMessageId()"
65138
- (valueChange)="valueChange.emit($event)"
65167
+ (valueChange)="value.set($event)"
65139
65168
  [ariaLabel]="ariaLabel()"
65140
65169
  [disabled]="disabled()"
65141
65170
  [id]="controlId()"
@@ -65162,7 +65191,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65162
65191
  [ariaLabelledBy]="labelledById()"
65163
65192
  [ariaDescribedBy]="describedById()"
65164
65193
  [ariaErrorMessage]="errorMessageId()"
65165
- (valueChange)="valueChange.emit($event)"
65194
+ (valueChange)="value.set($event)"
65166
65195
  [ariaLabel]="ariaLabel()"
65167
65196
  [disabled]="disabled()"
65168
65197
  [id]="controlId()"
@@ -65288,9 +65317,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65288
65317
  */
65289
65318
  class UIChipGroup {
65290
65319
  overflow = input('wrap', ...(ngDevMode ? [{ debugName: "overflow" }] : []));
65291
- items = input(...(ngDevMode ? [undefined, { debugName: "items" }] : []));
65320
+ items = input.required(...(ngDevMode ? [{ debugName: "items" }] : []));
65292
65321
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIChipGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
65293
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIChipGroup, isStandalone: true, selector: "ui-chip-group", inputs: { overflow: { classPropertyName: "overflow", publicName: "overflow", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-bspk": "chip-group" }, properties: { "attr.data-scroll": "overflow() === 'scroll' ? true : null" } }, ngImport: i0, template: `
65322
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIChipGroup, isStandalone: true, selector: "ui-chip-group", inputs: { overflow: { classPropertyName: "overflow", publicName: "overflow", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null } }, host: { attributes: { "data-bspk": "chip-group" }, properties: { "attr.data-scroll": "overflow() === 'scroll' ? true : null" } }, ngImport: i0, template: `
65294
65323
  @for (item of items(); track item) {
65295
65324
  <ui-chip
65296
65325
  [label]="item.label"
@@ -65322,7 +65351,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65322
65351
  'data-bspk': 'chip-group',
65323
65352
  '[attr.data-scroll]': "overflow() === 'scroll' ? true : null",
65324
65353
  }, styles: ["[data-bspk=chip-group]{display:flex;gap:var(--spacing-sizing-02);width:100%;flex-flow:row wrap;padding-bottom:var(--spacing-sizing-01)}[data-bspk=chip-group]:empty{display:none}[data-bspk=chip-group][data-scroll]{overflow:auto;flex-wrap:nowrap}\n"] }]
65325
- }], propDecorators: { overflow: [{ type: i0.Input, args: [{ isSignal: true, alias: "overflow", required: false }] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: false }] }] } });
65354
+ }], propDecorators: { overflow: [{ type: i0.Input, args: [{ isSignal: true, alias: "overflow", required: false }] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: true }] }] } });
65326
65355
 
65327
65356
  /**
65328
65357
  * An input that allows users to enter text, numbers or symbols in a singular line. This is a utility element and is not
@@ -65340,7 +65369,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65340
65369
  * @phase UXReview
65341
65370
  */
65342
65371
  class UIInput {
65343
- valueChange = output();
65344
65372
  IconCancel = IconCancel;
65345
65373
  hasFocus = signal(false, ...(ngDevMode ? [{ debugName: "hasFocus" }] : []));
65346
65374
  inputEl = viewChild.required('inputEl');
@@ -65352,7 +65380,7 @@ class UIInput {
65352
65380
  const sizeValue = this.size();
65353
65381
  return validSizes.includes(sizeValue) ? sizeValue : 'medium';
65354
65382
  }, ...(ngDevMode ? [{ debugName: "buttonSize" }] : []));
65355
- value = model(...(ngDevMode ? [undefined, { debugName: "value" }] : []));
65383
+ value = model('', ...(ngDevMode ? [{ debugName: "value" }] : []));
65356
65384
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
65357
65385
  inputMode = input(...(ngDevMode ? [undefined, { debugName: "inputMode" }] : []));
65358
65386
  showClearButton = input(true, ...(ngDevMode ? [{ debugName: "showClearButton" }] : []));
@@ -65372,10 +65400,6 @@ class UIInput {
65372
65400
  ariaLabelledBy = input(...(ngDevMode ? [undefined, { debugName: "ariaLabelledBy" }] : []));
65373
65401
  ariaDescribedBy = input(...(ngDevMode ? [undefined, { debugName: "ariaDescribedBy" }] : []));
65374
65402
  ariaErrorMessage = input(...(ngDevMode ? [undefined, { debugName: "ariaErrorMessage" }] : []));
65375
- get trailingValue() {
65376
- const value = this.trailing();
65377
- return value instanceof TemplateRef ? value : undefined;
65378
- }
65379
65403
  onClearMouseDown(event) {
65380
65404
  event.preventDefault();
65381
65405
  }
@@ -65386,11 +65410,8 @@ class UIInput {
65386
65410
  handleInput(event) {
65387
65411
  this.value.set(event.target.value);
65388
65412
  }
65389
- isTemplateRef(value) {
65390
- return value instanceof TemplateRef;
65391
- }
65392
65413
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIInput, deps: [], target: i0.ɵɵFactoryTarget.Component });
65393
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIInput, isStandalone: true, selector: "ui-input", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, inputMode: { classPropertyName: "inputMode", publicName: "inputMode", isSignal: true, isRequired: false, transformFunction: null }, showClearButton: { classPropertyName: "showClearButton", publicName: "showClearButton", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, leading: { classPropertyName: "leading", publicName: "leading", isSignal: true, isRequired: false, transformFunction: null }, trailing: { classPropertyName: "trailing", publicName: "trailing", isSignal: true, isRequired: false, transformFunction: null }, autoComplete: { classPropertyName: "autoComplete", publicName: "autoComplete", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, owner: { classPropertyName: "owner", publicName: "owner", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange", value: "valueChange" }, host: { attributes: { "data-bspk": "input" }, properties: { "attr.data-size": "size()", "attr.data-invalid": "invalid() || null", "attr.data-show-clear-button": "( displayClearButton()) || null", "attr.data-readonly": "readOnly() || null" } }, providers: [], viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["inputEl"], descendants: true, isSignal: true }], ngImport: i0, template: `<ng-content select="[data-leading]">
65414
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIInput, isStandalone: true, selector: "ui-input", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, inputMode: { classPropertyName: "inputMode", publicName: "inputMode", isSignal: true, isRequired: false, transformFunction: null }, showClearButton: { classPropertyName: "showClearButton", publicName: "showClearButton", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, leading: { classPropertyName: "leading", publicName: "leading", isSignal: true, isRequired: false, transformFunction: null }, trailing: { classPropertyName: "trailing", publicName: "trailing", isSignal: true, isRequired: false, transformFunction: null }, autoComplete: { classPropertyName: "autoComplete", publicName: "autoComplete", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, owner: { classPropertyName: "owner", publicName: "owner", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { attributes: { "data-bspk": "input" }, properties: { "attr.data-size": "size()", "attr.data-invalid": "invalid() || null", "attr.data-show-clear-button": "( displayClearButton()) || null", "attr.data-readonly": "readOnly() || null" } }, providers: [], viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["inputEl"], descendants: true, isSignal: true }], ngImport: i0, template: `<ng-content select="[data-leading]">
65394
65415
  @if (leading()) {
65395
65416
  <span data-leading>{{ leading() }}</span>
65396
65417
  }
@@ -65412,20 +65433,17 @@ class UIInput {
65412
65433
  [readOnly]="readOnly() || null"
65413
65434
  [required]="required() || null"
65414
65435
  [type]="type()"
65415
- [value]="value() || ''"
65436
+ [value]="value()"
65416
65437
  (input)="handleInput($event)"
65417
65438
  (focus)="hasFocus.set(true)"
65418
65439
  (blur)="hasFocus.set(false)"
65419
- (change)="valueChange.emit($event.target.value)"
65440
+ (change)="value.set($event.target.value)"
65420
65441
  #inputEl />
65421
- <ng-content select="[data-trailing]"></ng-content>
65422
- @if (trailing()) {
65423
- @if (trailingValue) {
65424
- <ng-container [ngTemplateOutlet]="trailingValue"></ng-container>
65425
- } @else {
65442
+ <ng-content select="[data-trailing]">
65443
+ @if (trailing()) {
65426
65444
  <span data-trailing>{{ trailing() }}</span>
65427
65445
  }
65428
- }
65446
+ </ng-content>
65429
65447
  @if (displayClearButton()) {
65430
65448
  <ui-button
65431
65449
  data-clear-button
@@ -65436,7 +65454,7 @@ class UIInput {
65436
65454
  (click)="clearInput()"
65437
65455
  [icon]="IconCancel"
65438
65456
  [iconOnly]="true" />
65439
- }`, isInline: true, styles: ["[data-bspk=input]{--border-color: var(--stroke-neutral-base);display:flex;flex-flow:row nowrap;justify-content:center;align-items:center;background-color:var(--surface-neutral-t1-base);border:solid 1px var(--border-color);height:var(--field-height);border-radius:var(--radius-sm);padding:0 var(--field-padding);gap:var(--spacing-sizing-01);width:100%}[data-bspk=input][data-show-clear-button]:focus-within{padding-right:0}[data-bspk=input]>*{display:flex;justify-content:center;align-items:center;height:var(--field-height);font:var(--field-font);color:var(--foreground-neutral-on-surface);min-width:0}[data-bspk=input]:hover:not(:focus-within){background:linear-gradient(var(--interactions-hover-opacity),var(--interactions-hover-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input]:active:not(:focus-within){background:linear-gradient(var(--interactions-press-opacity),var(--interactions-press-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input][data-readonly]{--border-color: var(--stroke-neutral-disabled-light);background:linear-gradient(var(--interactions-disabled-opacity),var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input][data-disabled],[data-bspk=input]:has([data-main-input][disabled]){--border-color: var(--stroke-neutral-disabled-light);background:linear-gradient(var(--interactions-disabled-opacity),var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input][data-disabled]>*,[data-bspk=input]:has([data-main-input][disabled])>*{color:var(--foreground-neutral-disabled-on-surface)}[data-bspk=input][data-invalid]{--border-color: var(--status-error)}[data-bspk=input]:not(:focus-within) [data-clear-button]{display:none}[data-bspk=input]:focus-within{--border-color: var(--stroke-neutral-focus);outline:1px solid var(--stroke-neutral-focus)}[data-bspk=input][data-size=small]{--field-padding: var(--spacing-sizing-02);--field-height: var(--spacing-sizing-08);--field-font: var(--body-small);--field-icon-width: var(--spacing-sizing-04);--field-clear-width: var(--spacing-sizing-05)}[data-bspk=input][data-size=medium]{--field-padding: var(--spacing-sizing-03);--field-height: var(--spacing-sizing-10);--field-font: var(--body-base);--field-icon-width: var(--spacing-sizing-05);--field-clear-width: var(--spacing-sizing-05)}[data-bspk=input][data-size=large]{--field-padding: var(--spacing-sizing-03);--field-height: var(--spacing-sizing-12);--field-font: var(--body-large);--field-icon-width: var(--spacing-sizing-06);--field-clear-width: var(--spacing-sizing-06)}[data-bspk=input] [data-leading],[data-bspk=input] [data-trailing]{position:relative}[data-bspk=input] [data-leading] svg,[data-bspk=input] [data-trailing] svg{width:var(--field-icon-width)}[data-bspk=input] label{font:var(--labels-small);color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=input] [data-main-input]{flex:1;background-color:transparent!important;border:none;outline:none;padding:0;pointer-events:all;text-overflow:ellipsis}[data-bspk=input] [data-main-input][type=number]::-webkit-inner-spin-button,[data-bspk=input] [data-main-input][type=number]::-webkit-outer-spin-button{display:none}\n"], dependencies: [{ kind: "component", type: UIButton, selector: "ui-button", inputs: ["style", "label", "ariaLabel", "ariaHaspopup", "ariaExpanded", "ariaControls", "icon", "iconOnly", "destructive", "size", "variant", "width", "tooltip", "disabled", "type", "owner", "class"], outputs: ["onClick", "onFocus", "onBlur", "onMouseEnter", "onMouseLeave"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
65457
+ }`, isInline: true, styles: ["[data-bspk=input]{--border-color: var(--stroke-neutral-base);display:flex;flex-flow:row nowrap;justify-content:center;align-items:center;background-color:var(--surface-neutral-t1-base);border:solid 1px var(--border-color);height:var(--field-height);border-radius:var(--radius-sm);padding:0 var(--field-padding);gap:var(--spacing-sizing-01);width:100%}[data-bspk=input][data-show-clear-button]:focus-within{padding-right:0}[data-bspk=input]>*{display:flex;justify-content:center;align-items:center;height:var(--field-height);font:var(--field-font);color:var(--foreground-neutral-on-surface);min-width:0}[data-bspk=input]:hover:not(:focus-within){background:linear-gradient(var(--interactions-hover-opacity),var(--interactions-hover-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input]:active:not(:focus-within){background:linear-gradient(var(--interactions-press-opacity),var(--interactions-press-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input][data-readonly]{--border-color: var(--stroke-neutral-disabled-light);background:linear-gradient(var(--interactions-disabled-opacity),var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input][data-disabled],[data-bspk=input]:has([data-main-input][disabled]){--border-color: var(--stroke-neutral-disabled-light);background:linear-gradient(var(--interactions-disabled-opacity),var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input][data-disabled]>*,[data-bspk=input]:has([data-main-input][disabled])>*{color:var(--foreground-neutral-disabled-on-surface)}[data-bspk=input][data-invalid]{--border-color: var(--status-error)}[data-bspk=input]:not(:focus-within) [data-clear-button]{display:none}[data-bspk=input]:focus-within{--border-color: var(--stroke-neutral-focus);outline:1px solid var(--stroke-neutral-focus)}[data-bspk=input][data-size=small]{--field-padding: var(--spacing-sizing-02);--field-height: var(--spacing-sizing-08);--field-font: var(--body-small);--field-icon-width: var(--spacing-sizing-04);--field-clear-width: var(--spacing-sizing-05)}[data-bspk=input][data-size=medium]{--field-padding: var(--spacing-sizing-03);--field-height: var(--spacing-sizing-10);--field-font: var(--body-base);--field-icon-width: var(--spacing-sizing-05);--field-clear-width: var(--spacing-sizing-05)}[data-bspk=input][data-size=large]{--field-padding: var(--spacing-sizing-03);--field-height: var(--spacing-sizing-12);--field-font: var(--body-large);--field-icon-width: var(--spacing-sizing-06);--field-clear-width: var(--spacing-sizing-06)}[data-bspk=input] [data-leading],[data-bspk=input] [data-trailing]{position:relative}[data-bspk=input] [data-leading] svg,[data-bspk=input] [data-trailing] svg{width:var(--field-icon-width)}[data-bspk=input] label{font:var(--labels-small);color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=input] [data-main-input]{flex:1;background-color:transparent!important;border:none;outline:none;padding:0;pointer-events:all;text-overflow:ellipsis}[data-bspk=input] [data-main-input][type=number]::-webkit-inner-spin-button,[data-bspk=input] [data-main-input][type=number]::-webkit-outer-spin-button{display:none}\n"], dependencies: [{ kind: "component", type: UIButton, selector: "ui-button", inputs: ["style", "label", "ariaLabel", "ariaHaspopup", "ariaExpanded", "ariaControls", "icon", "iconOnly", "destructive", "size", "variant", "width", "tooltip", "disabled", "type", "owner", "class"], outputs: ["onClick", "onFocus", "onBlur", "onMouseEnter", "onMouseLeave"] }, { kind: "ngmodule", type: CommonModule }], encapsulation: i0.ViewEncapsulation.None });
65440
65458
  }
65441
65459
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIInput, decorators: [{
65442
65460
  type: Component,
@@ -65462,20 +65480,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65462
65480
  [readOnly]="readOnly() || null"
65463
65481
  [required]="required() || null"
65464
65482
  [type]="type()"
65465
- [value]="value() || ''"
65483
+ [value]="value()"
65466
65484
  (input)="handleInput($event)"
65467
65485
  (focus)="hasFocus.set(true)"
65468
65486
  (blur)="hasFocus.set(false)"
65469
- (change)="valueChange.emit($event.target.value)"
65487
+ (change)="value.set($event.target.value)"
65470
65488
  #inputEl />
65471
- <ng-content select="[data-trailing]"></ng-content>
65472
- @if (trailing()) {
65473
- @if (trailingValue) {
65474
- <ng-container [ngTemplateOutlet]="trailingValue"></ng-container>
65475
- } @else {
65489
+ <ng-content select="[data-trailing]">
65490
+ @if (trailing()) {
65476
65491
  <span data-trailing>{{ trailing() }}</span>
65477
65492
  }
65478
- }
65493
+ </ng-content>
65479
65494
  @if (displayClearButton()) {
65480
65495
  <ui-button
65481
65496
  data-clear-button
@@ -65493,7 +65508,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65493
65508
  '[attr.data-show-clear-button]': '( displayClearButton()) || null',
65494
65509
  '[attr.data-readonly]': 'readOnly() || null',
65495
65510
  }, encapsulation: ViewEncapsulation.None, styles: ["[data-bspk=input]{--border-color: var(--stroke-neutral-base);display:flex;flex-flow:row nowrap;justify-content:center;align-items:center;background-color:var(--surface-neutral-t1-base);border:solid 1px var(--border-color);height:var(--field-height);border-radius:var(--radius-sm);padding:0 var(--field-padding);gap:var(--spacing-sizing-01);width:100%}[data-bspk=input][data-show-clear-button]:focus-within{padding-right:0}[data-bspk=input]>*{display:flex;justify-content:center;align-items:center;height:var(--field-height);font:var(--field-font);color:var(--foreground-neutral-on-surface);min-width:0}[data-bspk=input]:hover:not(:focus-within){background:linear-gradient(var(--interactions-hover-opacity),var(--interactions-hover-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input]:active:not(:focus-within){background:linear-gradient(var(--interactions-press-opacity),var(--interactions-press-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input][data-readonly]{--border-color: var(--stroke-neutral-disabled-light);background:linear-gradient(var(--interactions-disabled-opacity),var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input][data-disabled],[data-bspk=input]:has([data-main-input][disabled]){--border-color: var(--stroke-neutral-disabled-light);background:linear-gradient(var(--interactions-disabled-opacity),var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input][data-disabled]>*,[data-bspk=input]:has([data-main-input][disabled])>*{color:var(--foreground-neutral-disabled-on-surface)}[data-bspk=input][data-invalid]{--border-color: var(--status-error)}[data-bspk=input]:not(:focus-within) [data-clear-button]{display:none}[data-bspk=input]:focus-within{--border-color: var(--stroke-neutral-focus);outline:1px solid var(--stroke-neutral-focus)}[data-bspk=input][data-size=small]{--field-padding: var(--spacing-sizing-02);--field-height: var(--spacing-sizing-08);--field-font: var(--body-small);--field-icon-width: var(--spacing-sizing-04);--field-clear-width: var(--spacing-sizing-05)}[data-bspk=input][data-size=medium]{--field-padding: var(--spacing-sizing-03);--field-height: var(--spacing-sizing-10);--field-font: var(--body-base);--field-icon-width: var(--spacing-sizing-05);--field-clear-width: var(--spacing-sizing-05)}[data-bspk=input][data-size=large]{--field-padding: var(--spacing-sizing-03);--field-height: var(--spacing-sizing-12);--field-font: var(--body-large);--field-icon-width: var(--spacing-sizing-06);--field-clear-width: var(--spacing-sizing-06)}[data-bspk=input] [data-leading],[data-bspk=input] [data-trailing]{position:relative}[data-bspk=input] [data-leading] svg,[data-bspk=input] [data-trailing] svg{width:var(--field-icon-width)}[data-bspk=input] label{font:var(--labels-small);color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk=input] [data-main-input]{flex:1;background-color:transparent!important;border:none;outline:none;padding:0;pointer-events:all;text-overflow:ellipsis}[data-bspk=input] [data-main-input][type=number]::-webkit-inner-spin-button,[data-bspk=input] [data-main-input][type=number]::-webkit-outer-spin-button{display:none}\n"] }]
65496
- }], propDecorators: { valueChange: [{ type: i0.Output, args: ["valueChange"] }], inputEl: [{ type: i0.ViewChild, args: ['inputEl', { isSignal: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], inputMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputMode", required: false }] }], showClearButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "showClearButton", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], leading: [{ type: i0.Input, args: [{ isSignal: true, alias: "leading", required: false }] }], trailing: [{ type: i0.Input, args: [{ isSignal: true, alias: "trailing", required: false }] }], autoComplete: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoComplete", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], owner: [{ type: i0.Input, args: [{ isSignal: true, alias: "owner", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }] } });
65511
+ }], propDecorators: { inputEl: [{ type: i0.ViewChild, args: ['inputEl', { isSignal: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], inputMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputMode", required: false }] }], showClearButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "showClearButton", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], leading: [{ type: i0.Input, args: [{ isSignal: true, alias: "leading", required: false }] }], trailing: [{ type: i0.Input, args: [{ isSignal: true, alias: "trailing", required: false }] }], autoComplete: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoComplete", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], owner: [{ type: i0.Input, args: [{ isSignal: true, alias: "owner", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }] } });
65497
65512
 
65498
65513
  function parseDate(value) {
65499
65514
  if (!value)
@@ -65508,16 +65523,15 @@ function parseDate(value) {
65508
65523
  * @example
65509
65524
  * <ui-date-picker
65510
65525
  * [value]="selectedDate"
65511
- * (onChange)="handleDateChange($event)"
65526
+ * (valueChange)="handleDateChange($event)"
65512
65527
  * ></ui-date-picker>
65513
65528
  *
65514
65529
  * @name DatePicker
65515
65530
  * @phase Dev
65516
65531
  */
65517
65532
  class UIDatePicker {
65518
- valueChange = new EventEmitter();
65519
65533
  // Inputs
65520
- value = input(undefined, ...(ngDevMode ? [{ debugName: "value" }] : []));
65534
+ value = model(undefined, ...(ngDevMode ? [{ debugName: "value" }] : []));
65521
65535
  disabled = input(...(ngDevMode ? [undefined, { debugName: "disabled" }] : []));
65522
65536
  readOnly = input(...(ngDevMode ? [undefined, { debugName: "readOnly" }] : []));
65523
65537
  closeCalendarOnChange = input(true, ...(ngDevMode ? [{ debugName: "closeCalendarOnChange" }] : []));
@@ -65538,6 +65552,7 @@ class UIDatePicker {
65538
65552
  reference = viewChild('reference', ...(ngDevMode ? [{ debugName: "reference", read: ElementRef }] : [{ read: ElementRef }]));
65539
65553
  internalValue = signal(this.value(), ...(ngDevMode ? [{ debugName: "internalValue" }] : []));
65540
65554
  IconEvent = IconEvent;
65555
+ document = inject(DOCUMENT$1);
65541
65556
  get calendarId() {
65542
65557
  return `${this.id() || 'date-picker'}-calendar`;
65543
65558
  }
@@ -65546,7 +65561,7 @@ class UIDatePicker {
65546
65561
  }
65547
65562
  get offset() {
65548
65563
  // Reads the CSS variable value at runtime, offsetOptions requires a number
65549
- return parseInt(getComputedStyle(document.documentElement).getPropertyValue('--spacing-sizing-01'));
65564
+ return parseInt(getComputedStyle(this.document.documentElement).getPropertyValue('--spacing-sizing-01'));
65550
65565
  }
65551
65566
  get internalValueAsString() {
65552
65567
  const value = this.internalValue();
@@ -65578,7 +65593,7 @@ class UIDatePicker {
65578
65593
  this.calendarVisible.set(false);
65579
65594
  };
65580
65595
  onInputChange(value) {
65581
- this.valueChange.emit(value ?? '');
65596
+ this.value.set(value ?? '');
65582
65597
  this.internalValue.set(value);
65583
65598
  const parsed = value ? parseDate(value) : undefined;
65584
65599
  if (parsed) {
@@ -65586,16 +65601,20 @@ class UIDatePicker {
65586
65601
  }
65587
65602
  }
65588
65603
  onCalendarChange(date) {
65604
+ if (!date) {
65605
+ this.value.set(undefined);
65606
+ return;
65607
+ }
65589
65608
  const formatted = format(date, 'MM/dd/yyyy');
65590
65609
  this.internalValue.set(formatted);
65591
65610
  this.activeDate.set(date);
65592
65611
  if (this.closeCalendarOnChange()) {
65593
65612
  this.calendarVisible.set(false);
65594
65613
  }
65595
- this.valueChange.emit(formatted);
65614
+ this.value.set(formatted);
65596
65615
  }
65597
65616
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIDatePicker, deps: [], target: i0.ɵɵFactoryTarget.Component });
65598
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIDatePicker, isStandalone: true, selector: "ui-date-picker", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, closeCalendarOnChange: { classPropertyName: "closeCalendarOnChange", publicName: "closeCalendarOnChange", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "reference", first: true, predicate: ["reference"], descendants: true, read: ElementRef, isSignal: true }], usesOnChanges: true, ngImport: i0, template: `
65617
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIDatePicker, isStandalone: true, selector: "ui-date-picker", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, closeCalendarOnChange: { classPropertyName: "closeCalendarOnChange", publicName: "closeCalendarOnChange", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, viewQueries: [{ propertyName: "reference", first: true, predicate: ["reference"], descendants: true, read: ElementRef, isSignal: true }], usesOnChanges: true, ngImport: i0, template: `
65599
65618
  <div data-bspk="date-picker" #root>
65600
65619
  <ui-input
65601
65620
  #reference
@@ -65613,10 +65632,19 @@ class UIDatePicker {
65613
65632
  [showClearButton]="false"
65614
65633
  [size]="size() || 'medium'"
65615
65634
  [value]="internalValueAsString"
65616
- (valueChange)="onInputChange($event)"
65617
- [trailing]="calendarButton"></ui-input>
65635
+ (valueChange)="onInputChange($event)">
65636
+ @if (!disabled() && !readOnly()) {
65637
+ <ui-button
65638
+ data-trailing
65639
+ [icon]="IconEvent"
65640
+ [iconOnly]="true"
65641
+ label="Toggle calendar"
65642
+ variant="tertiary"
65643
+ (onClick)="toggleCalendar()"></ui-button>
65644
+ }
65645
+ </ui-input>
65618
65646
 
65619
- <ng-template #calendarButton>
65647
+ <!-- <ng-template #calendarButton>
65620
65648
  @if (!disabled() && !readOnly()) {
65621
65649
  <ui-button
65622
65650
  [icon]="IconEvent"
@@ -65625,7 +65653,7 @@ class UIDatePicker {
65625
65653
  variant="tertiary"
65626
65654
  (onClick)="toggleCalendar()"></ui-button>
65627
65655
  }
65628
- </ng-template>
65656
+ </ng-template> -->
65629
65657
  @if (calendarVisible()) {
65630
65658
  <div
65631
65659
  aria-label="Choose Date"
@@ -65641,11 +65669,11 @@ class UIDatePicker {
65641
65669
  [focusTrap]="true"
65642
65670
  [id]="calendarId"
65643
65671
  [value]="activeDate()"
65644
- (onChange)="onCalendarChange($event)"></ui-calendar>
65672
+ (valueChange)="onCalendarChange($event)"></ui-calendar>
65645
65673
  </div>
65646
65674
  }
65647
65675
  </div>
65648
- `, isInline: true, styles: ["[data-bspk=date-picker]{display:flex;flex-direction:column;justify-content:center;width:100%}[data-bspk=date-picker] [data-bspk=input]{padding-right:0}[data-bspk=date-picker] [data-bspk=calendar-popup]{border-radius:var(--radius-lg);box-shadow:var(--drop-shadow-float);z-index:var(--z-index-dropdown);width:fit-content}[data-bspk=date-picker] [data-bspk=inline-alert]{margin-top:var(--spacing-sizing-01)}\n"], dependencies: [{ kind: "component", type: UIButton, selector: "ui-button", inputs: ["style", "label", "ariaLabel", "ariaHaspopup", "ariaExpanded", "ariaControls", "icon", "iconOnly", "destructive", "size", "variant", "width", "tooltip", "disabled", "type", "owner", "class"], outputs: ["onClick", "onFocus", "onBlur", "onMouseEnter", "onMouseLeave"] }, { kind: "component", type: UICalendar, selector: "ui-calendar", inputs: ["value", "focusTrap", "id"], outputs: ["onChange"] }, { kind: "component", type: UIInput, selector: "ui-input", inputs: ["value", "name", "inputMode", "showClearButton", "disabled", "invalid", "placeholder", "readOnly", "required", "type", "size", "leading", "trailing", "autoComplete", "id", "owner", "ariaLabel", "ariaLabelledBy", "ariaDescribedBy", "ariaErrorMessage"], outputs: ["valueChange"] }, { kind: "directive", type: UIFloatingDirective, selector: "[ui-floating]", inputs: ["ui-floating"] }, { kind: "directive", type: UIOutsideClickDirective, selector: "[ui-outside-click]", inputs: ["ui-outside-click"] }], encapsulation: i0.ViewEncapsulation.None });
65676
+ `, isInline: true, styles: ["[data-bspk=date-picker]{display:flex;flex-direction:column;justify-content:center;width:100%}[data-bspk=date-picker] [data-bspk=input]{padding-right:0}[data-bspk=date-picker] [data-bspk=calendar-popup]{border-radius:var(--radius-lg);box-shadow:var(--drop-shadow-float);z-index:var(--z-index-dropdown);width:fit-content}[data-bspk=date-picker] [data-bspk=inline-alert]{margin-top:var(--spacing-sizing-01)}\n"], dependencies: [{ kind: "component", type: UIButton, selector: "ui-button", inputs: ["style", "label", "ariaLabel", "ariaHaspopup", "ariaExpanded", "ariaControls", "icon", "iconOnly", "destructive", "size", "variant", "width", "tooltip", "disabled", "type", "owner", "class"], outputs: ["onClick", "onFocus", "onBlur", "onMouseEnter", "onMouseLeave"] }, { kind: "component", type: UICalendar, selector: "ui-calendar", inputs: ["value", "focusTrap", "id"], outputs: ["valueChange"] }, { kind: "component", type: UIInput, selector: "ui-input", inputs: ["value", "name", "inputMode", "showClearButton", "disabled", "invalid", "placeholder", "readOnly", "required", "type", "size", "leading", "trailing", "autoComplete", "id", "owner", "ariaLabel", "ariaLabelledBy", "ariaDescribedBy", "ariaErrorMessage"], outputs: ["valueChange"] }, { kind: "directive", type: UIFloatingDirective, selector: "[ui-floating]", inputs: ["ui-floating"] }, { kind: "directive", type: UIOutsideClickDirective, selector: "[ui-outside-click]", inputs: ["ui-outside-click"] }], encapsulation: i0.ViewEncapsulation.None });
65649
65677
  }
65650
65678
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIDatePicker, decorators: [{
65651
65679
  type: Component,
@@ -65667,10 +65695,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65667
65695
  [showClearButton]="false"
65668
65696
  [size]="size() || 'medium'"
65669
65697
  [value]="internalValueAsString"
65670
- (valueChange)="onInputChange($event)"
65671
- [trailing]="calendarButton"></ui-input>
65698
+ (valueChange)="onInputChange($event)">
65699
+ @if (!disabled() && !readOnly()) {
65700
+ <ui-button
65701
+ data-trailing
65702
+ [icon]="IconEvent"
65703
+ [iconOnly]="true"
65704
+ label="Toggle calendar"
65705
+ variant="tertiary"
65706
+ (onClick)="toggleCalendar()"></ui-button>
65707
+ }
65708
+ </ui-input>
65672
65709
 
65673
- <ng-template #calendarButton>
65710
+ <!-- <ng-template #calendarButton>
65674
65711
  @if (!disabled() && !readOnly()) {
65675
65712
  <ui-button
65676
65713
  [icon]="IconEvent"
@@ -65679,7 +65716,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65679
65716
  variant="tertiary"
65680
65717
  (onClick)="toggleCalendar()"></ui-button>
65681
65718
  }
65682
- </ng-template>
65719
+ </ng-template> -->
65683
65720
  @if (calendarVisible()) {
65684
65721
  <div
65685
65722
  aria-label="Choose Date"
@@ -65695,14 +65732,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65695
65732
  [focusTrap]="true"
65696
65733
  [id]="calendarId"
65697
65734
  [value]="activeDate()"
65698
- (onChange)="onCalendarChange($event)"></ui-calendar>
65735
+ (valueChange)="onCalendarChange($event)"></ui-calendar>
65699
65736
  </div>
65700
65737
  }
65701
65738
  </div>
65702
65739
  `, encapsulation: ViewEncapsulation.None, styles: ["[data-bspk=date-picker]{display:flex;flex-direction:column;justify-content:center;width:100%}[data-bspk=date-picker] [data-bspk=input]{padding-right:0}[data-bspk=date-picker] [data-bspk=calendar-popup]{border-radius:var(--radius-lg);box-shadow:var(--drop-shadow-float);z-index:var(--z-index-dropdown);width:fit-content}[data-bspk=date-picker] [data-bspk=inline-alert]{margin-top:var(--spacing-sizing-01)}\n"] }]
65703
- }], propDecorators: { valueChange: [{
65704
- type: Output
65705
- }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], closeCalendarOnChange: [{ type: i0.Input, args: [{ isSignal: true, alias: "closeCalendarOnChange", required: false }] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], reference: [{ type: i0.ViewChild, args: ['reference', { ...{ read: ElementRef }, isSignal: true }] }] } });
65740
+ }], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], closeCalendarOnChange: [{ type: i0.Input, args: [{ isSignal: true, alias: "closeCalendarOnChange", required: false }] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], reference: [{ type: i0.ViewChild, args: ['reference', { ...{ read: ElementRef }, isSignal: true }] }] } });
65706
65741
 
65707
65742
  /**
65708
65743
  * A field wrapper for the UIDatePicker component.
@@ -65738,7 +65773,7 @@ class UIDatePickerField extends UIDatePicker {
65738
65773
  [ariaLabelledBy]="labelledById()"
65739
65774
  [ariaDescribedBy]="describedById()"
65740
65775
  [ariaErrorMessage]="errorMessageId()"
65741
- (valueChange)="valueChange.emit($event)"
65776
+ (valueChange)="value.set($event)"
65742
65777
  [ariaLabel]="ariaLabel()"
65743
65778
  [disabled]="disabled()"
65744
65779
  [id]="controlId()"
@@ -65766,7 +65801,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65766
65801
  [ariaLabelledBy]="labelledById()"
65767
65802
  [ariaDescribedBy]="describedById()"
65768
65803
  [ariaErrorMessage]="errorMessageId()"
65769
- (valueChange)="valueChange.emit($event)"
65804
+ (valueChange)="value.set($event)"
65770
65805
  [ariaLabel]="ariaLabel()"
65771
65806
  [disabled]="disabled()"
65772
65807
  [id]="controlId()"
@@ -65929,40 +65964,45 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65929
65964
  * @phase Utility
65930
65965
  */
65931
65966
  class UIPortalDirective {
65932
- elRef;
65933
- /** The target element to render the portal into. Defaults to `document.body` in the browser. */
65967
+ /** The target element to render the portal into. Defaults to `this.document.body` in the browser. */
65934
65968
  container = input(undefined, ...(ngDevMode ? [{ debugName: "container", alias: 'ui-portal' }] : [{ alias: 'ui-portal' }]));
65935
- constructor(elRef) {
65936
- this.elRef = elRef;
65937
- }
65938
- ngOnChanges(changes) {
65939
- if (changes['container']) {
65940
- if (typeof document === 'undefined' || !this.elRef?.nativeElement || !this.elRef.nativeElement.parentNode)
65969
+ host = inject(ElementRef);
65970
+ renderer = inject(Renderer2);
65971
+ document = inject(DOCUMENT$1);
65972
+ constructor() {
65973
+ effect(() => {
65974
+ if (typeof document === 'undefined' ||
65975
+ !this.host?.nativeElement ||
65976
+ !this.host.nativeElement.parentNode ||
65977
+ !this.container())
65941
65978
  return;
65942
- this.elRef.nativeElement.parentNode.removeChild(this.elRef.nativeElement);
65979
+ this.renderer.removeChild(this.host.nativeElement.parentNode, this.host.nativeElement);
65943
65980
  // Move the element to the new target
65944
65981
  let targetElement;
65945
- const target = changes['container'].currentValue;
65982
+ const target = this.container();
65946
65983
  if (typeof target === 'function') {
65947
65984
  targetElement = target();
65948
65985
  }
65949
65986
  else {
65950
- targetElement = target || document.body;
65987
+ targetElement = target || this.document.body;
65951
65988
  }
65952
- targetElement?.appendChild(this.elRef.nativeElement);
65953
- }
65989
+ this.renderer.appendChild(targetElement, this.host.nativeElement);
65990
+ });
65954
65991
  }
65955
65992
  ngOnDestroy() {
65956
- if (this.elRef.nativeElement.parentNode)
65957
- this.elRef.nativeElement.parentNode.removeChild(this.elRef.nativeElement);
65993
+ if (this.host.nativeElement.parentNode && this.host.nativeElement)
65994
+ this.host.nativeElement.parentNode.removeChild(this.host.nativeElement);
65958
65995
  }
65959
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIPortalDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
65960
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.15", type: UIPortalDirective, isStandalone: true, selector: "[ui-portal]", inputs: { container: { classPropertyName: "container", publicName: "ui-portal", isSignal: true, isRequired: false, transformFunction: null } }, usesOnChanges: true, ngImport: i0 });
65996
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIPortalDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
65997
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.15", type: UIPortalDirective, isStandalone: true, selector: "[ui-portal]", inputs: { container: { classPropertyName: "container", publicName: "ui-portal", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
65961
65998
  }
65962
65999
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIPortalDirective, decorators: [{
65963
66000
  type: Directive,
65964
- args: [{ selector: '[ui-portal]' }]
65965
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { container: [{ type: i0.Input, args: [{ isSignal: true, alias: "ui-portal", required: false }] }] } });
66001
+ args: [{
66002
+ selector: '[ui-portal]',
66003
+ standalone: true,
66004
+ }]
66005
+ }], ctorParameters: () => [], propDecorators: { container: [{ type: i0.Input, args: [{ isSignal: true, alias: "ui-portal", required: false }] }] } });
65966
66006
 
65967
66007
  /**
65968
66008
  * A temporary effect or overlay that can be applied to a user interface to make content less prominent or to draw
@@ -66009,6 +66049,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
66009
66049
  * @phase Dev
66010
66050
  */
66011
66051
  class UIDialog {
66052
+ /**
66053
+ * Emits when the dialog should be closed, such as when the scrim is clicked or the escape key is pressed. The
66054
+ * parent component should handle this event and set `open` to false to close the dialog.
66055
+ */
66012
66056
  onClose = new EventEmitter();
66013
66057
  box = viewChild('box', ...(ngDevMode ? [{ debugName: "box", read: ElementRef }] : [{ read: ElementRef }]));
66014
66058
  open = input(false, ...(ngDevMode ? [{ debugName: "open" }] : []));
@@ -66021,11 +66065,12 @@ class UIDialog {
66021
66065
  disableFocusTrap = input(false, ...(ngDevMode ? [{ debugName: "disableFocusTrap" }] : []));
66022
66066
  ariaLabel = input(undefined, ...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
66023
66067
  ariaDescription = input(undefined, ...(ngDevMode ? [{ debugName: "ariaDescription" }] : []));
66068
+ document = inject(DOCUMENT$1);
66024
66069
  keydownBound = signal(false, ...(ngDevMode ? [{ debugName: "keydownBound" }] : []));
66025
66070
  ngOnChanges() {
66026
66071
  const isOpen = this.open();
66027
66072
  // Lock page scroll when open (like React)
66028
- document.documentElement.style.overflow = isOpen ? 'hidden' : '';
66073
+ this.document.documentElement.style.overflow = isOpen ? 'hidden' : '';
66029
66074
  if (isOpen && !this.keydownBound()) {
66030
66075
  window.addEventListener('keydown', this._onKeydown);
66031
66076
  this.keydownBound.set(true);
@@ -66036,7 +66081,7 @@ class UIDialog {
66036
66081
  }
66037
66082
  }
66038
66083
  ngOnDestroy() {
66039
- document.documentElement.style.overflow = '';
66084
+ this.document.documentElement.style.overflow = '';
66040
66085
  if (this.keydownBound()) {
66041
66086
  window.removeEventListener('keydown', this._onKeydown);
66042
66087
  this.keydownBound.set(false);
@@ -66179,6 +66224,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
66179
66224
  * @phase Dev
66180
66225
  */
66181
66226
  class UIFab {
66227
+ /** Event emitted when the button is clicked. */
66182
66228
  onClick = new EventEmitter();
66183
66229
  /** Event emitted when the button receives focus. */
66184
66230
  onFocus = new EventEmitter();
@@ -66192,7 +66238,7 @@ class UIFab {
66192
66238
  label = input('', ...(ngDevMode ? [{ debugName: "label" }] : []));
66193
66239
  icon = input(...(ngDevMode ? [undefined, { debugName: "icon" }] : []));
66194
66240
  tooltip = input(...(ngDevMode ? [undefined, { debugName: "tooltip" }] : []));
66195
- size = input('small', ...(ngDevMode ? [{ debugName: "size" }] : []));
66241
+ size = input('medium', ...(ngDevMode ? [{ debugName: "size" }] : []));
66196
66242
  variant = input('primary', ...(ngDevMode ? [{ debugName: "variant" }] : []));
66197
66243
  placement = input('bottom-right', ...(ngDevMode ? [{ debugName: "placement" }] : []));
66198
66244
  container = input('local', ...(ngDevMode ? [{ debugName: "container" }] : []));
@@ -66253,7 +66299,7 @@ class UIFab {
66253
66299
  }
66254
66300
  <span [attr.data-touch-target]="true"></span>
66255
66301
  </button>
66256
- `, isInline: true, styles: ["[data-bspk=fab]{--placement-offset: var(--spacing-sizing-04);display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--spacing-sizing-02);border:none;cursor:pointer;text-decoration:none;z-index:var(--z-index-fab);box-shadow:var(--drop-shadow-float);border-radius:var(--radius-sm);background:var(--variant-background);color:var(--variant-foreground);--variant-gradient: linear-gradient(var(--variant-background), var(--variant-background))}[data-bspk=fab][data-container=page]{position:fixed}[data-bspk=fab][data-container=local]{position:absolute}[data-bspk=fab][data-placement=top-right]{top:var(--placement-offset);right:var(--placement-offset)}[data-bspk=fab][data-placement=bottom-right]{bottom:var(--placement-offset);right:var(--placement-offset)}[data-bspk=fab][data-placement=top-left]{top:var(--placement-offset);left:var(--placement-offset)}[data-bspk=fab][data-placement=bottom-left]{bottom:var(--placement-offset);left:var(--placement-offset)}[data-bspk=fab]>[data-fab-icon]{display:flex;flex-direction:column;align-items:center}[data-bspk=fab]>[data-fab-label]{display:flex;flex-direction:row;align-items:center}[data-bspk=fab][data-size=small]{font:var(--labels-base);height:var(--spacing-sizing-10);padding:0 var(--spacing-sizing-04)}[data-bspk=fab][data-size=small]>[data-fab-icon]{width:var(--spacing-sizing-05)}[data-bspk=fab][data-size=medium]{font:var(--labels-large);height:var(--spacing-sizing-14);padding:0 var(--spacing-sizing-07)}[data-bspk=fab][data-size=medium]>[data-fab-icon]{width:var(--spacing-sizing-06)}[data-bspk=fab][data-variant=primary]{--variant-background: var(--surface-brand-primary);--variant-foreground: var(--foreground-brand-on-primary)}[data-bspk=fab][data-variant=secondary]{--variant-background: var(--surface-brand-secondary);--variant-foreground: var(--foreground-brand-on-secondary)}[data-bspk=fab][data-variant=neutral]{--variant-background: var(--surface-neutral-t1-base);--variant-foreground: var(--foreground-neutral-on-surface-variant-01)}[data-pseudo=hover]>[data-bspk=fab],[data-bspk=fab]:hover{background:linear-gradient(var(--interactions-brand-hover-opacity),var(--interactions-brand-hover-opacity)),var(--variant-gradient)}[data-pseudo=active]>[data-bspk=fab],[data-bspk=fab]:active{background:linear-gradient(var(--interactions-brand-press-opacity),var(--interactions-brand-press-opacity)),var(--variant-gradient)}[data-pseudo=focus]>[data-bspk=fab],[data-bspk=fab]:focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=fab][data-round]{border-radius:var(--radius-full);aspect-ratio:1/1;padding:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: UIIcon, selector: "ui-icon", inputs: ["icon", "width"] }, { kind: "directive", type: UITooltipDirective, selector: "[ui-tooltip]", inputs: ["ui-tooltip"], outputs: ["ui-tooltipChange"] }], encapsulation: i0.ViewEncapsulation.None });
66302
+ `, isInline: true, styles: ["[data-bspk=fab]{--placement-offset: var(--spacing-sizing-04);display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--spacing-sizing-02);border:none;cursor:pointer;text-decoration:none;z-index:var(--z-index-fab);box-shadow:var(--drop-shadow-float);border-radius:var(--radius-sm);background:var(--variant-background);color:var(--variant-foreground);--variant-gradient: linear-gradient(var(--variant-background), var(--variant-background))}[data-bspk=fab][data-container=page]{position:fixed}[data-bspk=fab][data-container=local]{position:absolute}[data-bspk=fab][data-placement=top-right]{top:var(--placement-offset);right:var(--placement-offset)}[data-bspk=fab][data-placement=bottom-right]{bottom:var(--placement-offset);right:var(--placement-offset)}[data-bspk=fab][data-placement=top-left]{top:var(--placement-offset);left:var(--placement-offset)}[data-bspk=fab][data-placement=bottom-left]{bottom:var(--placement-offset);left:var(--placement-offset)}[data-bspk=fab]>[data-fab-icon]{display:flex;flex-direction:column;align-items:center}[data-bspk=fab]>[data-fab-label]{display:flex;flex-direction:row;align-items:center}[data-bspk=fab][data-size=medium]{font:var(--labels-base);height:var(--spacing-sizing-10);padding:0 var(--spacing-sizing-04)}[data-bspk=fab][data-size=medium]>[data-fab-icon]{width:var(--spacing-sizing-05)}[data-bspk=fab][data-size=x-large]{font:var(--labels-large);height:var(--spacing-sizing-14);padding:0 var(--spacing-sizing-07)}[data-bspk=fab][data-size=x-large]>[data-fab-icon]{width:var(--spacing-sizing-06)}[data-bspk=fab][data-variant=primary]{--variant-background: var(--surface-brand-primary);--variant-foreground: var(--foreground-brand-on-primary)}[data-bspk=fab][data-variant=secondary]{--variant-background: var(--surface-brand-secondary);--variant-foreground: var(--foreground-brand-on-secondary)}[data-bspk=fab][data-variant=neutral]{--variant-background: var(--surface-neutral-t1-base);--variant-foreground: var(--foreground-neutral-on-surface-variant-01)}[data-pseudo=hover]>[data-bspk=fab],[data-bspk=fab]:hover{background:linear-gradient(var(--interactions-brand-hover-opacity),var(--interactions-brand-hover-opacity)),var(--variant-gradient)}[data-pseudo=active]>[data-bspk=fab],[data-bspk=fab]:active{background:linear-gradient(var(--interactions-brand-press-opacity),var(--interactions-brand-press-opacity)),var(--variant-gradient)}[data-pseudo=focus]>[data-bspk=fab],[data-bspk=fab]:focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=fab][data-round]{border-radius:var(--radius-full);aspect-ratio:1/1;padding:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: UIIcon, selector: "ui-icon", inputs: ["icon", "width"] }, { kind: "directive", type: UITooltipDirective, selector: "[ui-tooltip]", inputs: ["ui-tooltip"], outputs: ["ui-tooltipChange"] }], encapsulation: i0.ViewEncapsulation.None });
66257
66303
  }
66258
66304
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIFab, decorators: [{
66259
66305
  type: Component,
@@ -66290,7 +66336,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
66290
66336
  </button>
66291
66337
  `, encapsulation: ViewEncapsulation.None, standalone: true, imports: [CommonModule, UIIcon, UITooltipDirective], host: {
66292
66338
  style: 'display: contents;',
66293
- }, styles: ["[data-bspk=fab]{--placement-offset: var(--spacing-sizing-04);display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--spacing-sizing-02);border:none;cursor:pointer;text-decoration:none;z-index:var(--z-index-fab);box-shadow:var(--drop-shadow-float);border-radius:var(--radius-sm);background:var(--variant-background);color:var(--variant-foreground);--variant-gradient: linear-gradient(var(--variant-background), var(--variant-background))}[data-bspk=fab][data-container=page]{position:fixed}[data-bspk=fab][data-container=local]{position:absolute}[data-bspk=fab][data-placement=top-right]{top:var(--placement-offset);right:var(--placement-offset)}[data-bspk=fab][data-placement=bottom-right]{bottom:var(--placement-offset);right:var(--placement-offset)}[data-bspk=fab][data-placement=top-left]{top:var(--placement-offset);left:var(--placement-offset)}[data-bspk=fab][data-placement=bottom-left]{bottom:var(--placement-offset);left:var(--placement-offset)}[data-bspk=fab]>[data-fab-icon]{display:flex;flex-direction:column;align-items:center}[data-bspk=fab]>[data-fab-label]{display:flex;flex-direction:row;align-items:center}[data-bspk=fab][data-size=small]{font:var(--labels-base);height:var(--spacing-sizing-10);padding:0 var(--spacing-sizing-04)}[data-bspk=fab][data-size=small]>[data-fab-icon]{width:var(--spacing-sizing-05)}[data-bspk=fab][data-size=medium]{font:var(--labels-large);height:var(--spacing-sizing-14);padding:0 var(--spacing-sizing-07)}[data-bspk=fab][data-size=medium]>[data-fab-icon]{width:var(--spacing-sizing-06)}[data-bspk=fab][data-variant=primary]{--variant-background: var(--surface-brand-primary);--variant-foreground: var(--foreground-brand-on-primary)}[data-bspk=fab][data-variant=secondary]{--variant-background: var(--surface-brand-secondary);--variant-foreground: var(--foreground-brand-on-secondary)}[data-bspk=fab][data-variant=neutral]{--variant-background: var(--surface-neutral-t1-base);--variant-foreground: var(--foreground-neutral-on-surface-variant-01)}[data-pseudo=hover]>[data-bspk=fab],[data-bspk=fab]:hover{background:linear-gradient(var(--interactions-brand-hover-opacity),var(--interactions-brand-hover-opacity)),var(--variant-gradient)}[data-pseudo=active]>[data-bspk=fab],[data-bspk=fab]:active{background:linear-gradient(var(--interactions-brand-press-opacity),var(--interactions-brand-press-opacity)),var(--variant-gradient)}[data-pseudo=focus]>[data-bspk=fab],[data-bspk=fab]:focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=fab][data-round]{border-radius:var(--radius-full);aspect-ratio:1/1;padding:0}\n"] }]
66339
+ }, styles: ["[data-bspk=fab]{--placement-offset: var(--spacing-sizing-04);display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--spacing-sizing-02);border:none;cursor:pointer;text-decoration:none;z-index:var(--z-index-fab);box-shadow:var(--drop-shadow-float);border-radius:var(--radius-sm);background:var(--variant-background);color:var(--variant-foreground);--variant-gradient: linear-gradient(var(--variant-background), var(--variant-background))}[data-bspk=fab][data-container=page]{position:fixed}[data-bspk=fab][data-container=local]{position:absolute}[data-bspk=fab][data-placement=top-right]{top:var(--placement-offset);right:var(--placement-offset)}[data-bspk=fab][data-placement=bottom-right]{bottom:var(--placement-offset);right:var(--placement-offset)}[data-bspk=fab][data-placement=top-left]{top:var(--placement-offset);left:var(--placement-offset)}[data-bspk=fab][data-placement=bottom-left]{bottom:var(--placement-offset);left:var(--placement-offset)}[data-bspk=fab]>[data-fab-icon]{display:flex;flex-direction:column;align-items:center}[data-bspk=fab]>[data-fab-label]{display:flex;flex-direction:row;align-items:center}[data-bspk=fab][data-size=medium]{font:var(--labels-base);height:var(--spacing-sizing-10);padding:0 var(--spacing-sizing-04)}[data-bspk=fab][data-size=medium]>[data-fab-icon]{width:var(--spacing-sizing-05)}[data-bspk=fab][data-size=x-large]{font:var(--labels-large);height:var(--spacing-sizing-14);padding:0 var(--spacing-sizing-07)}[data-bspk=fab][data-size=x-large]>[data-fab-icon]{width:var(--spacing-sizing-06)}[data-bspk=fab][data-variant=primary]{--variant-background: var(--surface-brand-primary);--variant-foreground: var(--foreground-brand-on-primary)}[data-bspk=fab][data-variant=secondary]{--variant-background: var(--surface-brand-secondary);--variant-foreground: var(--foreground-brand-on-secondary)}[data-bspk=fab][data-variant=neutral]{--variant-background: var(--surface-neutral-t1-base);--variant-foreground: var(--foreground-neutral-on-surface-variant-01)}[data-pseudo=hover]>[data-bspk=fab],[data-bspk=fab]:hover{background:linear-gradient(var(--interactions-brand-hover-opacity),var(--interactions-brand-hover-opacity)),var(--variant-gradient)}[data-pseudo=active]>[data-bspk=fab],[data-bspk=fab]:active{background:linear-gradient(var(--interactions-brand-press-opacity),var(--interactions-brand-press-opacity)),var(--variant-gradient)}[data-pseudo=focus]>[data-bspk=fab],[data-bspk=fab]:focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=fab][data-round]{border-radius:var(--radius-full);aspect-ratio:1/1;padding:0}\n"] }]
66294
66340
  }], propDecorators: { onClick: [{
66295
66341
  type: Output
66296
66342
  }], onFocus: [{
@@ -66400,7 +66446,7 @@ class UIInputField extends UIInput {
66400
66446
  [ariaLabelledBy]="labelledById()"
66401
66447
  [ariaDescribedBy]="describedById()"
66402
66448
  [ariaErrorMessage]="errorMessageId()"
66403
- (valueChange)="valueChange.emit($event)"
66449
+ (valueChange)="value.set($event)"
66404
66450
  [ariaLabel]="ariaLabel()"
66405
66451
  [disabled]="disabled()"
66406
66452
  [id]="controlId()"
@@ -66428,7 +66474,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
66428
66474
  [ariaLabelledBy]="labelledById()"
66429
66475
  [ariaDescribedBy]="describedById()"
66430
66476
  [ariaErrorMessage]="errorMessageId()"
66431
- (valueChange)="valueChange.emit($event)"
66477
+ (valueChange)="value.set($event)"
66432
66478
  [ariaLabel]="ariaLabel()"
66433
66479
  [disabled]="disabled()"
66434
66480
  [id]="controlId()"
@@ -66455,7 +66501,7 @@ function isNumber(value, fallbackValue) {
66455
66501
  }
66456
66502
  /**
66457
66503
  * A input element that allows users to either input a numerical value or singularly increase or decrease the values by
66458
- * pressing the (+) or (-).
66504
+ * pressing the (+) or (-) buttons.
66459
66505
  *
66460
66506
  * The value of the input is a number. The value is clamped to the min and max values if they are provided.
66461
66507
  *
@@ -66473,7 +66519,6 @@ function isNumber(value, fallbackValue) {
66473
66519
  * @phase UXReview
66474
66520
  */
66475
66521
  class UIInputNumber {
66476
- valueChange = output();
66477
66522
  inputEl = viewChild.required('inputEl');
66478
66523
  value = model('', ...(ngDevMode ? [{ debugName: "value" }] : []));
66479
66524
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
@@ -66539,7 +66584,7 @@ class UIInputNumber {
66539
66584
  this.value.set(next !== undefined ? next.toString() : '');
66540
66585
  }
66541
66586
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIInputNumber, deps: [], target: i0.ɵɵFactoryTarget.Component });
66542
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.15", type: UIInputNumber, isStandalone: true, selector: "ui-input-number", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, owner: { classPropertyName: "owner", publicName: "owner", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange", value: "valueChange" }, host: { attributes: { "data-bspk": "input-number" }, properties: { "attr.data-size": "size()", "attr.data-invalid": "invalid() || null", "attr.data-centered": "centered || null", "attr.data-disabled": "disabled() || null", "attr.data-readonly": "readOnly() || null", "attr.data-stepper-input": "true" } }, providers: [], viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["inputEl"], descendants: true, isSignal: true }], ngImport: i0, template: `
66587
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.15", type: UIInputNumber, isStandalone: true, selector: "ui-input-number", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, owner: { classPropertyName: "owner", publicName: "owner", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { attributes: { "data-bspk": "input-number" }, properties: { "attr.data-size": "size()", "attr.data-invalid": "invalid() || null", "attr.data-centered": "centered || null", "attr.data-disabled": "disabled() || null", "attr.data-readonly": "readOnly() || null", "attr.data-stepper-input": "true" } }, providers: [], viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["inputEl"], descendants: true, isSignal: true }], ngImport: i0, template: `
66543
66588
  <input
66544
66589
  data-main-input
66545
66590
  [attr.aria-labelledby]="ariaLabelledBy() || null"
@@ -66630,7 +66675,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
66630
66675
  '[attr.data-readonly]': 'readOnly() || null',
66631
66676
  '[attr.data-stepper-input]': 'true',
66632
66677
  }, encapsulation: ViewEncapsulation.None, styles: ["[data-bspk=input-number]{--font: var(--body-base);--height: var(--spacing-sizing-10);--svg-width: var(--spacing-sizing-05);--color: var(--foreground-neutral-on-surface);width:100%;display:flex;flex-flow:row nowrap;font:var(--font);height:var(--height);border:1px solid var(--stroke-neutral-base);border-radius:var(--radius-sm);background:var(--surface-neutral-t1-base)}[data-bspk=input-number]:focus-within{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=input-number] [data-divider]{width:1px;background:var(--stroke-neutral-base);margin:3px 0;height:calc(var(--height) - 8px)}[data-bspk=input-number] button{width:var(--height);height:calc(var(--height) - 2px);background:none;border:none;cursor:pointer;font:var(--font);flex-shrink:0;display:flex;justify-content:center;align-items:center;color:var(--color)}[data-bspk=input-number] button svg{width:var(--svg-width)}[data-bspk=input-number] button:focus{outline:none}[data-bspk=input-number] button:disabled{cursor:not-allowed;color:var(--foreground-neutral-disabled-on-surface)}[data-bspk=input-number] input{color:var(--color);min-width:0;display:block;font:var(--font);text-align:center;padding:0 var(--spacing-sizing-03);background:transparent;border:none;flex-grow:1}[data-bspk=input-number] input:focus{outline:none}[data-bspk=input-number] input::-webkit-outer-spin-button,[data-bspk=input-number] input::-webkit-inner-spin-button{appearance:none;margin:0}[data-bspk=input-number] input[type=number]{appearance:textfield}[data-bspk=input-number]:not([data-disabled],[data-readonly]) input:hover,[data-bspk=input-number]:not([data-disabled],[data-readonly]) button:not(:disabled):hover{background-color:var(--interactions-hover-opacity)}[data-bspk=input-number]:not([data-disabled],[data-readonly]) input:active,[data-bspk=input-number]:not([data-disabled],[data-readonly]) button:not(:disabled):active{background-color:var(--interactions-press-opacity)}[data-bspk=input-number]:not([data-disabled],[data-readonly])[data-invalid]{border-color:var(--status-error);outline-color:var(--status-error)}[data-bspk=input-number][data-disabled],[data-bspk=input-number][data-readonly]{--color: var(--foreground-neutral-disabled-on-surface);border-color:var(--stroke-neutral-disabled-light);background:linear-gradient(var(--interactions-disabled-opacity),var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=input-number][data-disabled] [data-divider],[data-bspk=input-number][data-readonly] [data-divider]{border-color:var(--stroke-neutral-disabled-light)}[data-bspk=input-number][data-readonly] input{color:var(--foreground-neutral-on-surface)!important}[data-bspk=input-number][data-size=small]{--font: var(--body-small);--height: var(--spacing-sizing-08)}[data-bspk=input-number][data-size=large]{--font: var(--body-large);--height: var(--spacing-sizing-12);--svg-width: var(--spacing-sizing-06)}[data-bspk=input-number][data-centered] button:first-of-type{order:-1}[data-bspk=input-number][data-centered] [data-divider]{display:none}\n"] }]
66633
- }], propDecorators: { valueChange: [{ type: i0.Output, args: ["valueChange"] }], inputEl: [{ type: i0.ViewChild, args: ['inputEl', { isSignal: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], owner: [{ type: i0.Input, args: [{ isSignal: true, alias: "owner", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], step: [{ type: i0.Input, args: [{ isSignal: true, alias: "step", required: false }] }], min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], align: [{ type: i0.Input, args: [{ isSignal: true, alias: "align", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }] } });
66678
+ }], propDecorators: { inputEl: [{ type: i0.ViewChild, args: ['inputEl', { isSignal: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], owner: [{ type: i0.Input, args: [{ isSignal: true, alias: "owner", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], step: [{ type: i0.Input, args: [{ isSignal: true, alias: "step", required: false }] }], min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], align: [{ type: i0.Input, args: [{ isSignal: true, alias: "align", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }] } });
66634
66679
 
66635
66680
  /**
66636
66681
  * A field wrapper for the UIInputNumber component.
@@ -66666,7 +66711,7 @@ class UIInputNumberField extends UIInputNumber {
66666
66711
  [ariaLabelledBy]="labelledById()"
66667
66712
  [ariaDescribedBy]="describedById()"
66668
66713
  [ariaErrorMessage]="errorMessageId()"
66669
- (valueChange)="valueChange.emit($event)"
66714
+ (valueChange)="value.set($event)"
66670
66715
  [ariaLabel]="ariaLabel()"
66671
66716
  [disabled]="disabled()"
66672
66717
  [id]="controlId()"
@@ -66694,7 +66739,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
66694
66739
  [ariaLabelledBy]="labelledById()"
66695
66740
  [ariaDescribedBy]="describedById()"
66696
66741
  [ariaErrorMessage]="errorMessageId()"
66697
- (valueChange)="valueChange.emit($event)"
66742
+ (valueChange)="value.set($event)"
66698
66743
  [ariaLabel]="ariaLabel()"
66699
66744
  [disabled]="disabled()"
66700
66745
  [id]="controlId()"
@@ -67002,7 +67047,6 @@ const SELECT_OPTIONS = countryCodes.map((code) => {
67002
67047
  * @phase Dev
67003
67048
  */
67004
67049
  class UIInputPhone {
67005
- valueChange = output();
67006
67050
  keyNavigation = new KeyNavigationUtility();
67007
67051
  value = model('', ...(ngDevMode ? [{ debugName: "value" }] : []));
67008
67052
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
@@ -67128,7 +67172,6 @@ class UIInputPhone {
67128
67172
  const formatted = this.formatValueIfNeeded(newValue || '');
67129
67173
  this.previousValue.set(formatted);
67130
67174
  this.value.set(formatted);
67131
- this.valueChange.emit(formatted);
67132
67175
  }
67133
67176
  formatValueIfNeeded(newValue) {
67134
67177
  const prev = this.previousValue();
@@ -67153,7 +67196,7 @@ class UIInputPhone {
67153
67196
  }
67154
67197
  }
67155
67198
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIInputPhone, deps: [], target: i0.ɵɵFactoryTarget.Component });
67156
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIInputPhone, isStandalone: true, selector: "ui-input-phone", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, initialCountryCode: { classPropertyName: "initialCountryCode", publicName: "initialCountryCode", isSignal: true, isRequired: false, transformFunction: null }, disableFormatting: { classPropertyName: "disableFormatting", publicName: "disableFormatting", isSignal: true, isRequired: false, transformFunction: null }, scrollLimit: { classPropertyName: "scrollLimit", publicName: "scrollLimit", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange", value: "valueChange" }, host: { attributes: { "data-bspk": "input-phone", "tabindex": "-1" } }, viewQueries: [{ propertyName: "reference", first: true, predicate: ["inputEl"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "containerRef", first: true, predicate: ["inputEl"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
67199
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIInputPhone, isStandalone: true, selector: "ui-input-phone", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, initialCountryCode: { classPropertyName: "initialCountryCode", publicName: "initialCountryCode", isSignal: true, isRequired: false, transformFunction: null }, disableFormatting: { classPropertyName: "disableFormatting", publicName: "disableFormatting", isSignal: true, isRequired: false, transformFunction: null }, scrollLimit: { classPropertyName: "scrollLimit", publicName: "scrollLimit", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { attributes: { "data-bspk": "input-phone", "tabindex": "-1" } }, viewQueries: [{ propertyName: "reference", first: true, predicate: ["inputEl"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "containerRef", first: true, predicate: ["inputEl"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
67157
67200
  <ui-input
67158
67201
  [attr.data-bspk-owner]="'input-phone'"
67159
67202
  type="tel"
@@ -67325,7 +67368,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67325
67368
  </ui-menu>
67326
67369
  }
67327
67370
  `, styles: ["[data-bspk=input-phone]{position:relative;width:100%}[data-bspk-owner=input-phone][data-bspk=input]{padding-left:0}[data-bspk-owner=input-phone][data-bspk=input]:focus-within{outline:none}[data-bspk-owner=input-phone][data-bspk=input] input:focus-visible{outline:solid 2px var(--stroke-neutral-focus);isolation:isolate;border-radius:var(--radius-sm)}[data-bspk-owner=input-phone][data-bspk=input] [data-bspk=divider]{margin:0 var(--spacing-sizing-02) 0 0}[data-bspk-owner=input-phone][data-bspk=input] [data-leading]{position:relative}[data-bspk-owner=input-phone][data-bspk=input] [data-leading] [data-bspk=button]{gap:var(--spacing-sizing-02);padding:0 var(--spacing-sizing-03);min-height:100%;margin-right:var(--spacing-sizing-02);position:relative;z-index:2}[data-bspk-owner=input-phone][data-bspk=input] [data-leading] [data-bspk=button]:after{content:\"\";position:absolute;top:var(--spacing-sizing-01);bottom:var(--spacing-sizing-01);right:0;width:1px;background-color:var(--stroke-neutral-base);pointer-events:none}[data-bspk-owner=input-phone][data-bspk=input][data-size=small] [data-leading] [data-bspk=button]{padding-left:var(--spacing-sizing-02)}\n"] }]
67328
- }], ctorParameters: () => [], propDecorators: { valueChange: [{ type: i0.Output, args: ["valueChange"] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], initialCountryCode: [{ type: i0.Input, args: [{ isSignal: true, alias: "initialCountryCode", required: false }] }], disableFormatting: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableFormatting", required: false }] }], scrollLimit: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollLimit", required: false }] }], reference: [{ type: i0.ViewChild, args: ['inputEl', { ...{ read: ElementRef }, isSignal: true }] }], containerRef: [{ type: i0.ViewChild, args: ['inputEl', { ...{ read: ElementRef }, isSignal: true }] }] } });
67371
+ }], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], initialCountryCode: [{ type: i0.Input, args: [{ isSignal: true, alias: "initialCountryCode", required: false }] }], disableFormatting: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableFormatting", required: false }] }], scrollLimit: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollLimit", required: false }] }], reference: [{ type: i0.ViewChild, args: ['inputEl', { ...{ read: ElementRef }, isSignal: true }] }], containerRef: [{ type: i0.ViewChild, args: ['inputEl', { ...{ read: ElementRef }, isSignal: true }] }] } });
67329
67372
 
67330
67373
  /**
67331
67374
  * A field wrapper for the UIInputPhone component.
@@ -67361,7 +67404,7 @@ class UIInputPhoneField extends UIInputPhone {
67361
67404
  [ariaLabelledBy]="labelledById()"
67362
67405
  [ariaDescribedBy]="describedById()"
67363
67406
  [ariaErrorMessage]="errorMessageId()"
67364
- (valueChange)="valueChange.emit($event)"
67407
+ (valueChange)="value.set($event)"
67365
67408
  [ariaLabel]="ariaLabel()"
67366
67409
  [disabled]="disabled()"
67367
67410
  [id]="controlId()"
@@ -67389,7 +67432,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67389
67432
  [ariaLabelledBy]="labelledById()"
67390
67433
  [ariaDescribedBy]="describedById()"
67391
67434
  [ariaErrorMessage]="errorMessageId()"
67392
- (valueChange)="valueChange.emit($event)"
67435
+ (valueChange)="value.set($event)"
67393
67436
  [ariaLabel]="ariaLabel()"
67394
67437
  [disabled]="disabled()"
67395
67438
  [id]="controlId()"
@@ -67654,61 +67697,31 @@ const INPUT_TYPE_THRESHOLD = 7;
67654
67697
  * multiple micro pages.
67655
67698
  *
67656
67699
  * @example
67657
- * <ui-pagination [value]="currentPage" [numPages]="10" (onChange)="currentPage = $event"></ui-pagination>
67700
+ * <ui-pagination [value]="currentPage" [numPages]="10" (valueChange)="currentPage = $event"></ui-pagination>
67658
67701
  *
67659
67702
  * @name Pagination
67660
67703
  * @phase Dev
67661
67704
  */
67662
67705
  class UIPagination {
67663
- /** Called when the page changes. */
67664
- onChange = new EventEmitter();
67665
67706
  numPages = input(2, ...(ngDevMode ? [{ debugName: "numPages" }] : []));
67666
- value = input(1, ...(ngDevMode ? [{ debugName: "value" }] : []));
67667
- // Internal string representation for the input field when large page counts.
67668
- inputValue = '1';
67707
+ value = model(1, ...(ngDevMode ? [{ debugName: "value" }] : []));
67708
+ inputValue = signal(this.value().toString(), ...(ngDevMode ? [{ debugName: "inputValue" }] : []));
67669
67709
  INPUT_TYPE_THRESHOLD = INPUT_TYPE_THRESHOLD;
67670
67710
  ChevronRight = IconChevronRight;
67671
67711
  ChevronLeft = IconChevronLeft;
67672
- ngOnChanges(changes) {
67673
- if (changes['value']) {
67674
- this.inputValue = String(this.value());
67675
- }
67676
- }
67677
- emit(page) {
67678
- const next = this.clamp(page);
67679
- this.onChange.emit(next);
67680
- sendAriaLiveMessage(`Page ${page} of ${this.numPages()}`);
67681
- }
67682
- previousPage() {
67683
- if (this.value() > 1)
67684
- this.emit(this.value() - 1);
67685
- }
67686
- nextPage() {
67687
- if (this.value() < this.numPages())
67688
- this.emit(this.value() + 1);
67689
- }
67690
- submitManual(event) {
67712
+ pages = computed(() => Array.from({ length: this.numPages() }, (_, i) => i + 1), ...(ngDevMode ? [{ debugName: "pages" }] : []));
67713
+ label = computed(() => `Go to page ${this.value()}`, ...(ngDevMode ? [{ debugName: "label" }] : []));
67714
+ updateValue(value, event) {
67691
67715
  if (event)
67692
67716
  event.preventDefault();
67693
- const parsedValue = parseInt(this.inputValue || '', 10);
67694
- if (isNaN(parsedValue)) {
67695
- this.inputValue = String(this.value());
67696
- return;
67697
- }
67698
- const next = this.clamp(parsedValue);
67699
- this.emit(next);
67700
- if (next !== parsedValue)
67701
- this.inputValue = String(next);
67717
+ const next = this.clamp(Number(value));
67718
+ this.value.set(next);
67719
+ sendAriaLiveMessage(`Page ${next} of ${this.numPages()}`);
67720
+ this.inputValue.set(next.toString());
67702
67721
  }
67703
67722
  inBounds(n) {
67704
67723
  return n >= 1 && n <= this.numPages();
67705
67724
  }
67706
- pages() {
67707
- return Array.from({ length: this.numPages() }, (_, i) => i + 1);
67708
- }
67709
- label() {
67710
- return `Go to page ${this.value()}`;
67711
- }
67712
67725
  clamp(page) {
67713
67726
  if (page < 1)
67714
67727
  return 1;
@@ -67717,28 +67730,28 @@ class UIPagination {
67717
67730
  return page;
67718
67731
  }
67719
67732
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIPagination, deps: [], target: i0.ɵɵFactoryTarget.Component });
67720
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIPagination, isStandalone: true, selector: "ui-pagination", inputs: { numPages: { classPropertyName: "numPages", publicName: "numPages", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onChange: "onChange" }, host: { attributes: { "data-bspk": "pagination", "role": "group" } }, usesOnChanges: true, ngImport: i0, template: `@if (numPages() > 1) {
67733
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIPagination, isStandalone: true, selector: "ui-pagination", inputs: { numPages: { classPropertyName: "numPages", publicName: "numPages", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { attributes: { "data-bspk": "pagination", "role": "group" } }, ngImport: i0, template: `@if (numPages() > 1) {
67721
67734
  <ng-container>
67722
67735
  <ui-button
67723
67736
  [disabled]="!inBounds(value() - 1)"
67724
67737
  [icon]="ChevronLeft"
67725
67738
  [iconOnly]="true"
67726
67739
  [label]="value() === 1 ? 'First page' : 'Previous page (' + (value() - 1) + ')'"
67727
- (onClick)="previousPage()"
67740
+ (onClick)="updateValue(value() - 1)"
67728
67741
  size="small"
67729
67742
  variant="tertiary"
67730
67743
  owner="pagination"></ui-button>
67731
67744
 
67732
67745
  @if (numPages() > INPUT_TYPE_THRESHOLD) {
67733
67746
  <ng-container>
67734
- <form data-input-form (submit)="submitManual($event)">
67747
+ <form data-input-form (submit)="updateValue(inputValue(), $event)">
67735
67748
  <ui-input
67736
67749
  ariaLabel="Page number"
67737
67750
  [type]="'number'"
67738
67751
  [showClearButton]="false"
67739
- [value]="inputValue"
67740
- (valueChange)="inputValue = $event!"
67741
- (blur)="submitManual()"
67752
+ [value]="inputValue() || '1'"
67753
+ (valueChange)="this.inputValue.set($event!)"
67754
+ (blur)="updateValue(inputValue())"
67742
67755
  name="page-number" />
67743
67756
  <span>of {{ numPages() }}</span>
67744
67757
  </form>
@@ -67752,7 +67765,7 @@ class UIPagination {
67752
67765
  <ui-button
67753
67766
  [ariaLabel]="'Page ' + page"
67754
67767
  [label]="page.toString()"
67755
- (onClick)="emit(page)"
67768
+ (onClick)="updateValue(page)"
67756
67769
  size="small"
67757
67770
  [variant]="value() === page ? 'primary' : 'tertiary'"
67758
67771
  owner="pagination"></ui-button>
@@ -67764,7 +67777,7 @@ class UIPagination {
67764
67777
  [icon]="ChevronRight"
67765
67778
  [iconOnly]="true"
67766
67779
  [label]="value() === numPages() ? 'Last page' : 'Next page (' + (value() + 1) + ')'"
67767
- (onClick)="nextPage()"
67780
+ (onClick)="updateValue(value() + 1)"
67768
67781
  size="small"
67769
67782
  variant="tertiary"
67770
67783
  owner="pagination"></ui-button>
@@ -67780,21 +67793,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67780
67793
  [icon]="ChevronLeft"
67781
67794
  [iconOnly]="true"
67782
67795
  [label]="value() === 1 ? 'First page' : 'Previous page (' + (value() - 1) + ')'"
67783
- (onClick)="previousPage()"
67796
+ (onClick)="updateValue(value() - 1)"
67784
67797
  size="small"
67785
67798
  variant="tertiary"
67786
67799
  owner="pagination"></ui-button>
67787
67800
 
67788
67801
  @if (numPages() > INPUT_TYPE_THRESHOLD) {
67789
67802
  <ng-container>
67790
- <form data-input-form (submit)="submitManual($event)">
67803
+ <form data-input-form (submit)="updateValue(inputValue(), $event)">
67791
67804
  <ui-input
67792
67805
  ariaLabel="Page number"
67793
67806
  [type]="'number'"
67794
67807
  [showClearButton]="false"
67795
- [value]="inputValue"
67796
- (valueChange)="inputValue = $event!"
67797
- (blur)="submitManual()"
67808
+ [value]="inputValue() || '1'"
67809
+ (valueChange)="this.inputValue.set($event!)"
67810
+ (blur)="updateValue(inputValue())"
67798
67811
  name="page-number" />
67799
67812
  <span>of {{ numPages() }}</span>
67800
67813
  </form>
@@ -67808,7 +67821,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67808
67821
  <ui-button
67809
67822
  [ariaLabel]="'Page ' + page"
67810
67823
  [label]="page.toString()"
67811
- (onClick)="emit(page)"
67824
+ (onClick)="updateValue(page)"
67812
67825
  size="small"
67813
67826
  [variant]="value() === page ? 'primary' : 'tertiary'"
67814
67827
  owner="pagination"></ui-button>
@@ -67820,7 +67833,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67820
67833
  [icon]="ChevronRight"
67821
67834
  [iconOnly]="true"
67822
67835
  [label]="value() === numPages() ? 'Last page' : 'Next page (' + (value() + 1) + ')'"
67823
- (onClick)="nextPage()"
67836
+ (onClick)="updateValue(value() + 1)"
67824
67837
  size="small"
67825
67838
  variant="tertiary"
67826
67839
  owner="pagination"></ui-button>
@@ -67829,9 +67842,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67829
67842
  'data-bspk': 'pagination',
67830
67843
  role: 'group',
67831
67844
  }, styles: ["[data-bspk=pagination]{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--spacing-sizing-01);flex:1}[data-bspk=pagination] [data-input-form]{display:contents}[data-bspk=pagination] [data-input-form] [data-bspk=input]{max-width:var(--spacing-sizing-12);margin-right:var(--spacing-sizing-01)}[data-bspk=pagination] [data-input-form] [data-bspk=input] input{text-align:center}[data-bspk=pagination] [data-input-form] span{display:block;white-space:nowrap;font:var(--body-small)}[data-bspk=pagination] button[data-bspk-owner=pagination][data-bspk=button][data-size=small]{padding:6px 0}\n"] }]
67832
- }], propDecorators: { onChange: [{
67833
- type: Output
67834
- }], numPages: [{ type: i0.Input, args: [{ isSignal: true, alias: "numPages", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }] } });
67845
+ }], propDecorators: { numPages: [{ type: i0.Input, args: [{ isSignal: true, alias: "numPages", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }] } });
67835
67846
 
67836
67847
  /** Copyright 2026 Anywhere Real Estate - CC BY 4.0 */
67837
67848
 
@@ -67847,11 +67858,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67847
67858
  * @phase Utility
67848
67859
  */
67849
67860
  class UIRadio {
67850
- checkedChange = new EventEmitter();
67851
67861
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
67852
67862
  value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
67853
67863
  ariaLabel = input(undefined, ...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
67854
- checked = input(false, ...(ngDevMode ? [{ debugName: "checked" }] : []));
67864
+ checked = model(false, ...(ngDevMode ? [{ debugName: "checked" }] : []));
67855
67865
  disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
67856
67866
  id = input(uniqueId('radio'), ...(ngDevMode ? [{ debugName: "id" }] : []));
67857
67867
  invalid = input(false, ...(ngDevMode ? [{ debugName: "invalid" }] : []));
@@ -67859,10 +67869,10 @@ class UIRadio {
67859
67869
  readOnly = input(false, ...(ngDevMode ? [{ debugName: "readOnly" }] : []));
67860
67870
  onInputChange(event) {
67861
67871
  const inputElement = event.target;
67862
- this.checkedChange.emit(inputElement.checked);
67872
+ this.checked.set(inputElement.checked);
67863
67873
  }
67864
67874
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIRadio, deps: [], target: i0.ɵɵFactoryTarget.Component });
67865
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: UIRadio, isStandalone: true, selector: "ui-radio", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checkedChange: "checkedChange" }, host: { attributes: { "data-bspk": "radio" } }, ngImport: i0, template: `<input
67875
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: UIRadio, isStandalone: true, selector: "ui-radio", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checked: "checkedChange" }, host: { attributes: { "data-bspk": "radio" } }, ngImport: i0, template: `<input
67866
67876
  [attr.name]="name()"
67867
67877
  [attr.id]="id()"
67868
67878
  [attr.aria-label]="ariaLabel()"
@@ -67893,9 +67903,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67893
67903
  <span aria-hidden="true"></span>`, encapsulation: ViewEncapsulation.None, host: {
67894
67904
  'data-bspk': 'radio',
67895
67905
  }, styles: ["[data-bspk=radio]{display:block;position:relative;width:var(--spacing-sizing-06);aspect-ratio:1/1;padding:2px}[data-bspk=radio] input[type=radio]{position:absolute;opacity:0;z-index:2;width:100%;height:100%;top:0;left:0;cursor:pointer}[data-bspk=radio] span{--stroke: var(--stroke-neutral-base);--inner: var(--foreground-brand-primary);--background: none;position:relative;z-index:1;display:flex;width:var(--spacing-sizing-05);aspect-ratio:1/1;border-radius:50%;border:2px solid var(--stroke);align-items:center;flex-direction:column;justify-content:center;background:var(--background)}[data-bspk=radio] span:before{content:\"\";display:block;width:100%;scale:.7;aspect-ratio:1/1;background:var(--inner);border-radius:var(--radius-full);opacity:0}[data-bspk=radio] input[type=radio]:not(:disabled):hover+span{--background: var(--interactions-neutral-hover-opacity)}[data-bspk=radio] input[type=radio]:not(:disabled):active+span{--background: var(--interactions-neutral-press-opacity)}[data-bspk=radio] input[type=radio]:not(:disabled)[data-invalid]+span{--stroke: var(--status-error);--inner: var(--status-error)}[data-bspk=radio] input[type=radio]:checked+span{--stroke: var(--stroke-brand-primary)}[data-bspk=radio] input[type=radio]:checked+span:before{opacity:1}[data-bspk=radio] input[type=radio]:disabled{pointer-events:none}[data-bspk=radio] input[type=radio]:disabled+span{--stroke: var(--stroke-neutral-interactions-disabled-light);--inner: var(--foreground-neutral-disabled-on-surface)}\n"] }]
67896
- }], propDecorators: { checkedChange: [{
67897
- type: Output
67898
- }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], checked: [{ type: i0.Input, args: [{ isSignal: true, alias: "checked", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }] } });
67906
+ }], propDecorators: { name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], checked: [{ type: i0.Input, args: [{ isSignal: true, alias: "checked", required: false }] }, { type: i0.Output, args: ["checkedChange"] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }] } });
67899
67907
 
67900
67908
  /**
67901
67909
  * A control that allows users to choose one or more items from a list or turn an feature on or off.
@@ -67930,7 +67938,7 @@ class UIRadioOption extends UIRadio {
67930
67938
  [invalid]="invalid()"
67931
67939
  [readOnly]="readOnly()"
67932
67940
  [ariaLabel]="ariaLabel() || computedAriaLabel()"
67933
- (checkedChange)="checkedChange.emit($event)">
67941
+ (checkedChange)="checked.set($event)">
67934
67942
  </ui-radio>
67935
67943
  </span>
67936
67944
  </ui-list-item>`, isInline: true, dependencies: [{ kind: "component", type: UIRadio, selector: "ui-radio", inputs: ["name", "value", "ariaLabel", "checked", "disabled", "id", "invalid", "required", "readOnly"], outputs: ["checkedChange"] }, { kind: "component", type: UIListItem, selector: "ui-list-item", inputs: ["active", "owner", "ariaLabel", "ariaRole", "ariaSelected", "ariaDisabled", "ariaReadonly", "htmlFor", "disabled", "readOnly", "as", "href", "label", "subText", "width", "tabIndex", "id"], outputs: ["onClick"] }] });
@@ -67958,7 +67966,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67958
67966
  [invalid]="invalid()"
67959
67967
  [readOnly]="readOnly()"
67960
67968
  [ariaLabel]="ariaLabel() || computedAriaLabel()"
67961
- (checkedChange)="checkedChange.emit($event)">
67969
+ (checkedChange)="checked.set($event)">
67962
67970
  </ui-radio>
67963
67971
  </span>
67964
67972
  </ui-list-item>`,
@@ -67984,7 +67992,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67984
67992
  * @phase Dev
67985
67993
  */
67986
67994
  class UIRadioGroup {
67987
- valueChange = output();
67988
67995
  id = input(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
67989
67996
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
67990
67997
  value = model('', ...(ngDevMode ? [{ debugName: "value" }] : []));
@@ -67999,17 +68006,17 @@ class UIRadioGroup {
67999
68006
  readOnly = input(false, ...(ngDevMode ? [{ debugName: "readOnly" }] : []));
68000
68007
  constructor() {
68001
68008
  this.value.subscribe((val) => {
68002
- this.valueChange.emit(val || '');
68009
+ this.value.set(val || '');
68003
68010
  });
68004
68011
  }
68005
68012
  /** Handles changes to the radio button selection. */
68006
68013
  onRadioChange(value, checked) {
68007
68014
  if (checked) {
68008
- this.valueChange.emit(value);
68015
+ this.value.set(value);
68009
68016
  }
68010
68017
  }
68011
68018
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIRadioGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
68012
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIRadioGroup, isStandalone: true, selector: "ui-radio-group", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange", value: "valueChange" }, host: { attributes: { "data-bspk": "radio-group", "style.display": "flex", "style.flex-direction": "column", "style.gap": "0", "style.max-width": "100%", "style.--list-item-height": "auto" } }, ngImport: i0, template: `
68019
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UIRadioGroup, isStandalone: true, selector: "ui-radio-group", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { attributes: { "data-bspk": "radio-group", "style.display": "flex", "style.flex-direction": "column", "style.gap": "0", "style.max-width": "100%", "style.--list-item-height": "auto" } }, ngImport: i0, template: `
68013
68020
  <div
68014
68021
  [attr.aria-describedby]="ariaDescribedBy() || null"
68015
68022
  [attr.aria-errormessage]="ariaErrorMessage() || null"
@@ -68074,7 +68081,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68074
68081
  },
68075
68082
  encapsulation: ViewEncapsulation.None,
68076
68083
  }]
68077
- }], ctorParameters: () => [], propDecorators: { valueChange: [{ type: i0.Output, args: ["valueChange"] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }] } });
68084
+ }], ctorParameters: () => [], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }] } });
68078
68085
 
68079
68086
  /**
68080
68087
  * A field wrapper for the UIRadioGroup component.
@@ -68110,7 +68117,7 @@ class UIRadioGroupField extends UIRadioGroup {
68110
68117
  [ariaLabelledBy]="labelledById()"
68111
68118
  [ariaDescribedBy]="describedById()"
68112
68119
  [ariaErrorMessage]="errorMessageId()"
68113
- (valueChange)="valueChange.emit($event)"
68120
+ (valueChange)="value.set($event)"
68114
68121
  [ariaLabel]="ariaLabel()"
68115
68122
  [disabled]="disabled()"
68116
68123
  [id]="controlId()"
@@ -68137,7 +68144,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68137
68144
  [ariaLabelledBy]="labelledById()"
68138
68145
  [ariaDescribedBy]="describedById()"
68139
68146
  [ariaErrorMessage]="errorMessageId()"
68140
- (valueChange)="valueChange.emit($event)"
68147
+ (valueChange)="value.set($event)"
68141
68148
  [ariaLabel]="ariaLabel()"
68142
68149
  [disabled]="disabled()"
68143
68150
  [id]="controlId()"
@@ -68164,15 +68171,14 @@ const TAB_BADGE_SIZES = {
68164
68171
  *
68165
68172
  * See TabGroup or SegmentedControl for examples.
68166
68173
  *
68167
- * @ignore
68174
+ * @name TabList
68175
+ * @phase Utility
68168
68176
  */
68169
68177
  class UITabListUtility {
68170
- /** The function to call when the tab is clicked. */
68171
- valueChange = new EventEmitter();
68172
- options = input([], ...(ngDevMode ? [{ debugName: "options" }] : []));
68173
- value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
68178
+ value = model.required(...(ngDevMode ? [{ debugName: "value" }] : []));
68174
68179
  width = input('hug', ...(ngDevMode ? [{ debugName: "width" }] : []));
68175
68180
  label = input.required(...(ngDevMode ? [{ debugName: "label" }] : []));
68181
+ options = input([], ...(ngDevMode ? [{ debugName: "options" }] : []));
68176
68182
  id = input(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
68177
68183
  iconsOnly = input(false, ...(ngDevMode ? [{ debugName: "iconsOnly" }] : []));
68178
68184
  // eslint-disable-next-line @angular-eslint/no-input-rename
@@ -68235,7 +68241,7 @@ class UITabListUtility {
68235
68241
  return;
68236
68242
  this.activeId.set(item.id);
68237
68243
  if (!item.disabled)
68238
- this.valueChange.emit(item.value);
68244
+ this.value.set(item.value);
68239
68245
  }
68240
68246
  handleKeyDownEvent(event) {
68241
68247
  const opts = this.optionsWithIds().filter((o) => !o.disabled);
@@ -68253,28 +68259,26 @@ class UITabListUtility {
68253
68259
  Enter: () => {
68254
68260
  const active = this.optionsWithIds().find((o) => o.id === this.activeId());
68255
68261
  if (active && !active.disabled)
68256
- this.valueChange.emit(active.value);
68262
+ this.value.set(active.value);
68257
68263
  },
68258
68264
  Space: () => {
68259
68265
  const active = this.optionsWithIds().find((o) => o.id === this.activeId());
68260
68266
  if (active && !active.disabled)
68261
- this.valueChange.emit(active.value);
68267
+ this.value.set(active.value);
68262
68268
  },
68263
68269
  }, {
68264
68270
  preventDefault: true,
68265
68271
  })(event);
68266
68272
  }
68267
68273
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UITabListUtility, deps: [], target: i0.ɵɵFactoryTarget.Component });
68268
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: UITabListUtility, isStandalone: true, selector: "ng-component", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, iconsOnly: { classPropertyName: "iconsOnly", publicName: "iconsOnly", isSignal: true, isRequired: false, transformFunction: null }, sizeProp: { classPropertyName: "sizeProp", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: '', isInline: true });
68274
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: UITabListUtility, isStandalone: true, selector: "ng-component", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, iconsOnly: { classPropertyName: "iconsOnly", publicName: "iconsOnly", isSignal: true, isRequired: false, transformFunction: null }, sizeProp: { classPropertyName: "sizeProp", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, ngImport: i0, template: '', isInline: true });
68269
68275
  }
68270
68276
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UITabListUtility, decorators: [{
68271
68277
  type: Component,
68272
68278
  args: [{
68273
68279
  template: '',
68274
68280
  }]
68275
- }], ctorParameters: () => [], propDecorators: { valueChange: [{
68276
- type: Output
68277
- }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], width: [{ type: i0.Input, args: [{ isSignal: true, alias: "width", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], iconsOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconsOnly", required: false }] }], sizeProp: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }] } });
68281
+ }], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }, { type: i0.Output, args: ["valueChange"] }], width: [{ type: i0.Input, args: [{ isSignal: true, alias: "width", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], iconsOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconsOnly", required: false }] }], sizeProp: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }] } });
68278
68282
  /**
68279
68283
  * Navigation tool that organizes content across different screens and views.
68280
68284
  *
@@ -68399,7 +68403,7 @@ class UISegmentedControl extends UITabListUtility {
68399
68403
  data-bspk="segmented-control"
68400
68404
  [options]="options()"
68401
68405
  [value]="value()"
68402
- (valueChange)="valueChange.emit($event)"
68406
+ (valueChange)="value.set($event)"
68403
68407
  [label]="label()"
68404
68408
  [size]="size()"
68405
68409
  [width]="width()"
@@ -68413,7 +68417,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68413
68417
  data-bspk="segmented-control"
68414
68418
  [options]="options()"
68415
68419
  [value]="value()"
68416
- (valueChange)="valueChange.emit($event)"
68420
+ (valueChange)="value.set($event)"
68417
68421
  [label]="label()"
68418
68422
  [size]="size()"
68419
68423
  [width]="width()"
@@ -68446,7 +68450,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68446
68450
  */
68447
68451
  class UISelect {
68448
68452
  keyNavigation = new KeyNavigationUtility();
68449
- valueChange = output();
68450
68453
  value = model('', ...(ngDevMode ? [{ debugName: "value" }] : []));
68451
68454
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
68452
68455
  placeholder = input('Select one', ...(ngDevMode ? [{ debugName: "placeholder" }] : []));
@@ -68478,14 +68481,15 @@ class UISelect {
68478
68481
  width: this.menuWidth() || 'fit-content',
68479
68482
  };
68480
68483
  }, ...(ngDevMode ? [{ debugName: "ngMenuStyle" }] : []));
68484
+ document = inject(DOCUMENT$1);
68481
68485
  constructor() {
68482
68486
  this.value.subscribe((val) => {
68483
- this.valueChange.emit(val || '');
68487
+ this.value.set(val || '');
68484
68488
  });
68485
68489
  }
68486
68490
  get offset() {
68487
68491
  // Reads the CSS variable value at runtime, offsetOptions requires a number
68488
- return parseInt(getComputedStyle(document.documentElement).getPropertyValue('--spacing-sizing-01'));
68492
+ return parseInt(getComputedStyle(this.document.documentElement).getPropertyValue('--spacing-sizing-01'));
68489
68493
  }
68490
68494
  get selectedItem() {
68491
68495
  return this.menuItems().find((item) => item.value === this.value());
@@ -68545,7 +68549,7 @@ class UISelect {
68545
68549
  this.keyNavigation.destroy();
68546
68550
  }
68547
68551
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UISelect, deps: [], target: i0.ɵɵFactoryTarget.Component });
68548
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UISelect, isStandalone: true, selector: "ui-select", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, menuWidth: { classPropertyName: "menuWidth", publicName: "menuWidth", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, scrollLimit: { classPropertyName: "scrollLimit", publicName: "scrollLimit", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange", value: "valueChange" }, viewQueries: [{ propertyName: "reference", first: true, predicate: ["reference"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
68552
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UISelect, isStandalone: true, selector: "ui-select", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, menuWidth: { classPropertyName: "menuWidth", publicName: "menuWidth", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, scrollLimit: { classPropertyName: "scrollLimit", publicName: "scrollLimit", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, viewQueries: [{ propertyName: "reference", first: true, predicate: ["reference"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
68549
68553
  <input [attr.name]="name() || null" type="hidden" [value]="value() || ''" />
68550
68554
  <button
68551
68555
  type="button"
@@ -68676,7 +68680,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68676
68680
  </ui-menu>
68677
68681
  }
68678
68682
  `, styles: ["[data-bspk=select]{--select-background: var(--surface-neutral-t1-base);--select-border-color: var(--stroke-neutral-base);--select-text-color: var(--foreground-neutral-on-surface);--select-height: var(--spacing-sizing-10);--select-font: var(--body-base);--select-clear-height: var(--spacing-sizing-05);--select-padding: var(--spacing-sizing-03);--select-icon-width: var(--spacing-sizing-05);overflow:hidden;position:relative;width:100%;outline:unset;min-height:var(--select-height);max-height:var(--select-height);display:flex;flex-direction:row;align-items:center;gap:var(--spacing-sizing-02);flex-grow:0;flex-shrink:0;text-align:left;font:var(--select-font);border:1px solid var(--select-border-color);border-radius:var(--radius-sm);background:var(--select-background);padding:0 var(--select-padding);cursor:pointer}[data-bspk=select] [data-input]{position:absolute;opacity:0;inset:0;cursor:pointer}[data-bspk=select] [data-bspk=list-item]{background:transparent}[data-bspk=select] [data-bspk=list-item] [data-item-label] [data-text]{font:var(--select-font);color:var(--select-text-color)}[data-bspk=select][data-size=small]{--select-height: var(--spacing-sizing-08);--select-font: var(--body-small);--select-clear-height: var(--spacing-sizing-05);--select-padding: var(--spacing-sizing-02);--select-icon-width: var(--spacing-sizing-05)}[data-bspk=select][data-size=large]{--select-height: var(--spacing-sizing-12);--select-font: var(--body-large);--select-clear-height: var(--spacing-sizing-06);--select-icon-width: var(--spacing-sizing-06)}[data-bspk=select][aria-disabled],[data-bspk=select][aria-readonly]:not([data-empty]){--select-text-color: var(--foreground-neutral-disabled-on-surface);--select-border-color: var(--stroke-neutral-disabled-light);--select-background: linear-gradient(var(--interactions-disabled-opacity), var(--interactions-disabled-opacity)), linear-gradient(var(--surface-neutral-t1-base), var(--surface-neutral-t1-base));cursor:not-allowed}[data-bspk=select][aria-disabled][aria-readonly]:not([data-empty]),[data-bspk=select][aria-readonly]:not([data-empty])[aria-readonly]:not([data-empty]){--select-text-color: var(--foreground-neutral-on-surface)}[data-bspk=select]:not([aria-disabled],[aria-readonly]):focus-within{--select-border-color: var(--stroke-neutral-focus);border-width:1px;outline:1px solid var(--stroke-neutral-focus)}[data-bspk=select]:not([aria-disabled],[aria-readonly]):hover{--select-background: linear-gradient(var(--interactions-neutral-hover-opacity), var(--interactions-neutral-hover-opacity)), linear-gradient(var(--surface-neutral-t1-base), var(--surface-neutral-t1-base))}[data-bspk=select]:not([aria-disabled],[aria-readonly]):active{--select-background: linear-gradient(var(--interactions-neutral-press-opacity), var(--interactions-neutral-press-opacity)), linear-gradient(var(--surface-neutral-t1-base), var(--surface-neutral-t1-base))}[data-bspk=select][data-invalid]{--select-border-color: var(--status-error)}\n"] }]
68679
- }], ctorParameters: () => [], propDecorators: { valueChange: [{ type: i0.Output, args: ["valueChange"] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], menuWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "menuWidth", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: true }] }], reference: [{ type: i0.ViewChild, args: ['reference', { ...{ read: ElementRef }, isSignal: true }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], scrollLimit: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollLimit", required: false }] }] } });
68683
+ }], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], menuWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "menuWidth", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: true }] }], reference: [{ type: i0.ViewChild, args: ['reference', { ...{ read: ElementRef }, isSignal: true }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], scrollLimit: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollLimit", required: false }] }] } });
68680
68684
 
68681
68685
  /**
68682
68686
  * A field wrapper for the UISelect component.
@@ -68712,7 +68716,7 @@ class UISelectField extends UISelect {
68712
68716
  [ariaLabelledBy]="labelledById()"
68713
68717
  [ariaDescribedBy]="describedById()"
68714
68718
  [ariaErrorMessage]="errorMessageId()"
68715
- (valueChange)="valueChange.emit($event)"
68719
+ (valueChange)="value.set($event)"
68716
68720
  [ariaLabel]="ariaLabel()"
68717
68721
  [disabled]="disabled()"
68718
68722
  [id]="controlId()"
@@ -68741,7 +68745,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68741
68745
  [ariaLabelledBy]="labelledById()"
68742
68746
  [ariaDescribedBy]="describedById()"
68743
68747
  [ariaErrorMessage]="errorMessageId()"
68744
- (valueChange)="valueChange.emit($event)"
68748
+ (valueChange)="value.set($event)"
68745
68749
  [ariaLabel]="ariaLabel()"
68746
68750
  [disabled]="disabled()"
68747
68751
  [id]="controlId()"
@@ -68767,19 +68771,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68767
68771
  * @phase Dev
68768
68772
  */
68769
68773
  class UISwitch {
68770
- checkedChange = new EventEmitter();
68771
68774
  value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
68772
- checked = input(...(ngDevMode ? [undefined, { debugName: "checked" }] : []));
68775
+ checked = model(...(ngDevMode ? [undefined, { debugName: "checked" }] : []));
68773
68776
  ariaLabel = input(undefined, ...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
68774
68777
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
68775
68778
  id = input(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
68776
68779
  disabled = input(...(ngDevMode ? [undefined, { debugName: "disabled" }] : []));
68777
68780
  onInputChange(event) {
68778
68781
  const inputElement = event.target;
68779
- this.checkedChange.emit(inputElement.checked);
68782
+ this.checked.set(inputElement.checked);
68780
68783
  }
68781
68784
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UISwitch, deps: [], target: i0.ɵɵFactoryTarget.Component });
68782
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: UISwitch, isStandalone: true, selector: "ui-switch", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checkedChange: "checkedChange" }, host: { attributes: { "data-bspk": "switch" } }, ngImport: i0, template: `
68785
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: UISwitch, isStandalone: true, selector: "ui-switch", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checked: "checkedChange" }, host: { attributes: { "data-bspk": "switch" } }, ngImport: i0, template: `
68783
68786
  <input
68784
68787
  type="checkbox"
68785
68788
  [attr.aria-label]="ariaLabel()"
@@ -68808,9 +68811,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68808
68811
  `, encapsulation: ViewEncapsulation.None, host: {
68809
68812
  'data-bspk': 'switch',
68810
68813
  }, styles: ["[data-bspk=switch]{--track-width: var(--spacing-sizing-09);--toggle-width: var(--spacing-sizing-04);--track-bg: var(--surface-neutral-t4-high);--toggle-bg: var(--foreground-neutral-on-color);display:block;margin:2px;width:var(--track-width);height:var(--spacing-sizing-05);border-radius:var(--spacing-sizing-05);background-color:var(--track-bg);position:relative;z-index:1}[data-bspk=switch] input[type=checkbox]{position:absolute;opacity:0;width:100%;height:100%;top:0;left:0;z-index:2;cursor:pointer}[data-bspk=switch] span{display:block;width:var(--toggle-width);height:var(--toggle-width);border-radius:var(--radius-full);background-color:var(--toggle-bg);transition:left .2s;box-shadow:var(--drop-shadow-raise);left:2px;top:2px;position:absolute}[data-bspk=switch]:has(input[type=checkbox]:checked){--track-bg: var(--foreground-brand-primary)}[data-bspk=switch]:has(input[type=checkbox]:checked) span{left:calc(var(--track-width) - var(--toggle-width) - 2px)}[data-bspk=switch]:has(input[type=checkbox]:disabled){--track-bg: var(--interactions-disabled-opacity);--toggle-bg: var(--foreground-neutral-disabled-on-surface)}[data-bspk=switch]:has(input[type=checkbox]:disabled) input[type=checkbox]{pointer-events:none}[data-bspk=switch]:has(input[type=checkbox]:disabled):has(input[type=checkbox]:checked) span{--toggle-bg: var(--foreground-neutral-disabled-on-color-surface)}\n"] }]
68811
- }], propDecorators: { checkedChange: [{
68812
- type: Output
68813
- }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], checked: [{ type: i0.Input, args: [{ isSignal: true, alias: "checked", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }] } });
68814
+ }], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], checked: [{ type: i0.Input, args: [{ isSignal: true, alias: "checked", required: false }] }, { type: i0.Output, args: ["checkedChange"] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }] } });
68814
68815
 
68815
68816
  /**
68816
68817
  * A control that allows users to choose one or more items from a list or turn an feature on or off.
@@ -68840,7 +68841,7 @@ class UISwitchOption extends UISwitch {
68840
68841
  [checked]="checked()"
68841
68842
  [disabled]="disabled()"
68842
68843
  [ariaLabel]="ariaLabel() || computedAriaLabel()"
68843
- (checkedChange)="checkedChange.emit($event)">
68844
+ (checkedChange)="checked.set($event)">
68844
68845
  </ui-switch
68845
68846
  ></span>
68846
68847
  </ui-list-item>`, isInline: true, dependencies: [{ kind: "component", type: UISwitch, selector: "ui-switch", inputs: ["value", "checked", "ariaLabel", "name", "id", "disabled"], outputs: ["checkedChange"] }, { kind: "component", type: UIListItem, selector: "ui-list-item", inputs: ["active", "owner", "ariaLabel", "ariaRole", "ariaSelected", "ariaDisabled", "ariaReadonly", "htmlFor", "disabled", "readOnly", "as", "href", "label", "subText", "width", "tabIndex", "id"], outputs: ["onClick"] }] });
@@ -68865,7 +68866,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68865
68866
  [checked]="checked()"
68866
68867
  [disabled]="disabled()"
68867
68868
  [ariaLabel]="ariaLabel() || computedAriaLabel()"
68868
- (checkedChange)="checkedChange.emit($event)">
68869
+ (checkedChange)="checked.set($event)">
68869
68870
  </ui-switch
68870
68871
  ></span>
68871
68872
  </ui-list-item>`,
@@ -68908,7 +68909,7 @@ class UITabGroup extends UITabListUtility {
68908
68909
  data-bspk="tab-group"
68909
68910
  [options]="options()"
68910
68911
  [value]="value()"
68911
- (valueChange)="valueChange.emit($event)"
68912
+ (valueChange)="value.set($event)"
68912
68913
  [label]="label()"
68913
68914
  [size]="size()"
68914
68915
  [width]="width()"
@@ -68924,7 +68925,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68924
68925
  data-bspk="tab-group"
68925
68926
  [options]="options()"
68926
68927
  [value]="value()"
68927
- (valueChange)="valueChange.emit($event)"
68928
+ (valueChange)="value.set($event)"
68928
68929
  [label]="label()"
68929
68930
  [size]="size()"
68930
68931
  [width]="width()"
@@ -68987,7 +68988,7 @@ class UITable {
68987
68988
  return 0;
68988
68989
  });
68989
68990
  }
68990
- const start = this.pageIndex * this.pageSizeSafe;
68991
+ const start = this.pageIndex() * this.pageSizeSafe;
68991
68992
  const end = start + this.pageSizeSafe;
68992
68993
  return result.slice(start, end);
68993
68994
  }, ...(ngDevMode ? [{ debugName: "rows" }] : []));
@@ -68998,7 +68999,7 @@ class UITable {
68998
68999
  title = input(undefined, ...(ngDevMode ? [{ debugName: "title" }] : []));
68999
69000
  size = input('medium', ...(ngDevMode ? [{ debugName: "size" }] : []));
69000
69001
  pageSize = input(10, ...(ngDevMode ? [{ debugName: "pageSize" }] : []));
69001
- pageIndex = 0;
69002
+ pageIndex = signal(0, ...(ngDevMode ? [{ debugName: "pageIndex" }] : []));
69002
69003
  get sizeSafe() {
69003
69004
  return this.size() || 'medium';
69004
69005
  }
@@ -69036,15 +69037,12 @@ class UITable {
69036
69037
  trackRow(index, row) {
69037
69038
  return row.id;
69038
69039
  }
69039
- setPageIndex(idx) {
69040
- this.pageIndex = idx;
69041
- }
69042
69040
  startRow() {
69043
69041
  const total = this.data().length;
69044
- return total === 0 ? 0 : this.pageIndex * this.pageSizeSafe + 1;
69042
+ return total === 0 ? 0 : this.pageIndex() * this.pageSizeSafe + 1;
69045
69043
  }
69046
69044
  endRow() {
69047
- const end = this.pageIndex * this.pageSizeSafe + this.pageSizeSafe;
69045
+ const end = this.pageIndex() * this.pageSizeSafe + this.pageSizeSafe;
69048
69046
  return Math.min(end, this.data().length);
69049
69047
  }
69050
69048
  formatCell(value) {
@@ -69147,13 +69145,13 @@ class UITable {
69147
69145
  Showing {{ startRow() }}-{{ endRow() }} of {{ data().length }} results
69148
69146
  </div>
69149
69147
  <ui-pagination
69150
- [value]="pageIndex + 1"
69148
+ [value]="pageIndex() + 1"
69151
69149
  [numPages]="totalPages"
69152
- (onChange)="setPageIndex($event - 1)"></ui-pagination>
69150
+ (valueChange)="pageIndex.set($event - 1)"></ui-pagination>
69153
69151
  </div>
69154
69152
  }
69155
69153
  </div>
69156
- </div>`, isInline: true, styles: ["[data-bspk=table]{--white-background: var(--surface-neutral-t1-base);--grey-background: var(--surface-neutral-t2-lowest);--icon-size: var(--spacing-sizing-05);display:block;min-width:100%;overflow:auto hidden;border-collapse:separate;text-align:left;border-spacing:2rem .125rem;color:var(--foreground-neutral-on-surface);font:var(--labels-base);border-radius:var(--radius-md);border:1px solid var(--stroke-neutral-low);background:var(--white-background);--min-height: var(--spacing-sizing-10);--padding-y: var(--spacing-sizing-02)}[data-bspk=table][data-size=x-large]{--min-height: var(--spacing-sizing-14);--padding-y: var(--spacing-sizing-04)}[data-bspk=table][data-size=large]{--min-height: var(--spacing-sizing-12);--padding-y: var(--spacing-sizing-03)}[data-bspk=table][data-size=small]{--min-height: var(--spacing-sizing-08);--padding-y: var(--spacing-sizing-01)}[data-bspk=table] [data-scroll-container]{width:fit-content;min-width:100%;border-radius:var(--radius-md)}[data-bspk=table] table{display:grid;grid-template-columns:var(--template-columns);border-collapse:collapse;min-width:100%}[data-bspk=table] table tr,[data-bspk=table] table tbody,[data-bspk=table] table thead{display:contents}[data-bspk=table] table caption{grid-column:1/-1;background:var(--grey-background);border-bottom:1px solid var(--stroke-neutral-low);display:flex;flex-direction:row;justify-content:start;align-items:center;font:var(--labels-small);min-height:var(--min-height);padding:calc(var(--padding-y) + 2px) var(--spacing-sizing-04);overflow:hidden}[data-bspk=table] table th{display:flex;min-height:var(--min-height);overflow:hidden;flex-direction:row;background:var(--grey-background);font:var(--labels-small);border-bottom:1px solid var(--stroke-neutral-base);white-space:nowrap;z-index:1;position:relative}[data-bspk=table] table th:not([data-sortable]){padding:calc(var(--padding-y) + 2px) var(--spacing-sizing-04);pointer-events:none}[data-bspk=table] table th[data-sortable] button{display:flex;min-height:var(--min-height);border:none;overflow:hidden;flex-direction:row;padding:calc(var(--padding-y) + 2px) var(--spacing-sizing-04);background:var(--grey-background);align-items:center;justify-content:space-between;gap:var(--spacing-sizing-02);width:100%;cursor:pointer;font:inherit;outline:none;position:relative}[data-bspk=table] table th[data-sortable] button:hover{background:linear-gradient(var(--interactions-neutral-hover-opacity),var(--interactions-neutral-hover-opacity)),linear-gradient(var(--grey-background),var(--grey-background))}[data-bspk=table] table th[data-sortable] button:active{background:linear-gradient(var(--interactions-neutral-press-opacity),var(--interactions-neutral-press-opacity)),linear-gradient(var(--grey-background),var(--grey-background))}[data-bspk=table] table th[data-sortable] button [data-sort-icon]{display:flex;flex-direction:row;align-items:center}[data-bspk=table] table th[data-sortable] button [data-sort-icon] svg{width:var(--icon-size)}[data-bspk=table] table th[data-sortable] button:focus-visible{position:absolute;z-index:var(--z-index-focus);inset:0;outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=table] table th[data-align=right]{align-items:flex-end}[data-bspk=table] table th[data-align=right] button{justify-content:flex-end}[data-bspk=table] table th[data-align=center]{align-items:center}[data-bspk=table] table th[data-align=center] button{justify-content:center}[data-bspk=table] table th[data-align=left]{align-items:flex-start}[data-bspk=table] table th[data-align=left] button{justify-content:space-between}[data-bspk=table] table td{display:flex;min-height:var(--min-height);overflow:hidden;padding:calc(var(--padding-y) + 2px) var(--spacing-sizing-04);flex-direction:column;font:var(--body-small)}[data-bspk=table] table td[data-align=right]{align-items:flex-end}[data-bspk=table] table td[data-align=center]{align-items:center}[data-bspk=table] table td[data-align=left]{align-items:flex-start}[data-bspk=table] table td[data-valign=top]{justify-content:flex-start}[data-bspk=table] table td[data-valign=bottom]{justify-content:flex-end}[data-bspk=table] table td[data-valign=center]{justify-content:center}[data-bspk=table] table td p{margin:0;padding:0;font:var(--body-small)}[data-bspk=table] table td[data-action]:hover{background:linear-gradient(var(--interactions-neutral-hover-opacity),var(--interactions-neutral-hover-opacity)),linear-gradient(var(--white-background),var(--white-background))}[data-bspk=table] table tr:nth-child(2n) td{background:var(--grey-background)}[data-bspk=table] table tr:nth-child(2n) td[data-action]:hover{background:linear-gradient(var(--interactions-neutral-hover-opacity),var(--interactions-neutral-hover-opacity)),linear-gradient(var(--grey-background),var(--grey-background))}[data-bspk=table] [data-pagination]{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:var(--spacing-sizing-03) var(--spacing-sizing-04);width:100%}[data-bspk=table] [data-pagination] [data-pagination-label]{font:var(--body-small);min-width:fit-content}[data-bspk=table] [data-pagination] [data-bspk=pagination]{flex-grow:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "component", type: UIPagination, selector: "ui-pagination", inputs: ["numPages", "value"], outputs: ["onChange"] }, { kind: "component", type: IconArrowUpward, selector: "icon-arrow-upward", inputs: ["width"] }, { kind: "component", type: IconArrowDownward, selector: "icon-arrow-downward", inputs: ["width"] }], encapsulation: i0.ViewEncapsulation.None });
69154
+ </div>`, isInline: true, styles: ["[data-bspk=table]{--white-background: var(--surface-neutral-t1-base);--grey-background: var(--surface-neutral-t2-lowest);--icon-size: var(--spacing-sizing-05);display:block;min-width:100%;overflow:auto hidden;border-collapse:separate;text-align:left;border-spacing:2rem .125rem;color:var(--foreground-neutral-on-surface);font:var(--labels-base);border-radius:var(--radius-md);border:1px solid var(--stroke-neutral-low);background:var(--white-background);--min-height: var(--spacing-sizing-10);--padding-y: var(--spacing-sizing-02)}[data-bspk=table][data-size=x-large]{--min-height: var(--spacing-sizing-14);--padding-y: var(--spacing-sizing-04)}[data-bspk=table][data-size=large]{--min-height: var(--spacing-sizing-12);--padding-y: var(--spacing-sizing-03)}[data-bspk=table][data-size=small]{--min-height: var(--spacing-sizing-08);--padding-y: var(--spacing-sizing-01)}[data-bspk=table] [data-scroll-container]{width:fit-content;min-width:100%;border-radius:var(--radius-md)}[data-bspk=table] table{display:grid;grid-template-columns:var(--template-columns);border-collapse:collapse;min-width:100%}[data-bspk=table] table tr,[data-bspk=table] table tbody,[data-bspk=table] table thead{display:contents}[data-bspk=table] table caption{grid-column:1/-1;background:var(--grey-background);border-bottom:1px solid var(--stroke-neutral-low);display:flex;flex-direction:row;justify-content:start;align-items:center;font:var(--labels-small);min-height:var(--min-height);padding:calc(var(--padding-y) + 2px) var(--spacing-sizing-04);overflow:hidden}[data-bspk=table] table th{display:flex;min-height:var(--min-height);overflow:hidden;flex-direction:row;background:var(--grey-background);font:var(--labels-small);border-bottom:1px solid var(--stroke-neutral-base);white-space:nowrap;z-index:1;position:relative}[data-bspk=table] table th:not([data-sortable]){padding:calc(var(--padding-y) + 2px) var(--spacing-sizing-04);pointer-events:none}[data-bspk=table] table th[data-sortable] button{display:flex;min-height:var(--min-height);border:none;overflow:hidden;flex-direction:row;padding:calc(var(--padding-y) + 2px) var(--spacing-sizing-04);background:var(--grey-background);align-items:center;justify-content:space-between;gap:var(--spacing-sizing-02);width:100%;cursor:pointer;font:inherit;outline:none;position:relative}[data-bspk=table] table th[data-sortable] button:hover{background:linear-gradient(var(--interactions-neutral-hover-opacity),var(--interactions-neutral-hover-opacity)),linear-gradient(var(--grey-background),var(--grey-background))}[data-bspk=table] table th[data-sortable] button:active{background:linear-gradient(var(--interactions-neutral-press-opacity),var(--interactions-neutral-press-opacity)),linear-gradient(var(--grey-background),var(--grey-background))}[data-bspk=table] table th[data-sortable] button [data-sort-icon]{display:flex;flex-direction:row;align-items:center}[data-bspk=table] table th[data-sortable] button [data-sort-icon] svg{width:var(--icon-size)}[data-bspk=table] table th[data-sortable] button:focus-visible{position:absolute;z-index:var(--z-index-focus);inset:0;outline:solid 2px var(--stroke-neutral-focus);isolation:isolate}[data-bspk=table] table th[data-align=right]{align-items:flex-end}[data-bspk=table] table th[data-align=right] button{justify-content:flex-end}[data-bspk=table] table th[data-align=center]{align-items:center}[data-bspk=table] table th[data-align=center] button{justify-content:center}[data-bspk=table] table th[data-align=left]{align-items:flex-start}[data-bspk=table] table th[data-align=left] button{justify-content:space-between}[data-bspk=table] table td{display:flex;min-height:var(--min-height);overflow:hidden;padding:calc(var(--padding-y) + 2px) var(--spacing-sizing-04);flex-direction:column;font:var(--body-small)}[data-bspk=table] table td[data-align=right]{align-items:flex-end}[data-bspk=table] table td[data-align=center]{align-items:center}[data-bspk=table] table td[data-align=left]{align-items:flex-start}[data-bspk=table] table td[data-valign=top]{justify-content:flex-start}[data-bspk=table] table td[data-valign=bottom]{justify-content:flex-end}[data-bspk=table] table td[data-valign=center]{justify-content:center}[data-bspk=table] table td p{margin:0;padding:0;font:var(--body-small)}[data-bspk=table] table td[data-action]:hover{background:linear-gradient(var(--interactions-neutral-hover-opacity),var(--interactions-neutral-hover-opacity)),linear-gradient(var(--white-background),var(--white-background))}[data-bspk=table] table tr:nth-child(2n) td{background:var(--grey-background)}[data-bspk=table] table tr:nth-child(2n) td[data-action]:hover{background:linear-gradient(var(--interactions-neutral-hover-opacity),var(--interactions-neutral-hover-opacity)),linear-gradient(var(--grey-background),var(--grey-background))}[data-bspk=table] [data-pagination]{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:var(--spacing-sizing-03) var(--spacing-sizing-04);width:100%}[data-bspk=table] [data-pagination] [data-pagination-label]{font:var(--body-small);min-width:fit-content}[data-bspk=table] [data-pagination] [data-bspk=pagination]{flex-grow:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "component", type: UIPagination, selector: "ui-pagination", inputs: ["numPages", "value"], outputs: ["valueChange"] }, { kind: "component", type: IconArrowUpward, selector: "icon-arrow-upward", inputs: ["width"] }, { kind: "component", type: IconArrowDownward, selector: "icon-arrow-downward", inputs: ["width"] }], encapsulation: i0.ViewEncapsulation.None });
69157
69155
  }
69158
69156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UITable, decorators: [{
69159
69157
  type: Component,
@@ -69234,9 +69232,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
69234
69232
  Showing {{ startRow() }}-{{ endRow() }} of {{ data().length }} results
69235
69233
  </div>
69236
69234
  <ui-pagination
69237
- [value]="pageIndex + 1"
69235
+ [value]="pageIndex() + 1"
69238
69236
  [numPages]="totalPages"
69239
- (onChange)="setPageIndex($event - 1)"></ui-pagination>
69237
+ (valueChange)="pageIndex.set($event - 1)"></ui-pagination>
69240
69238
  </div>
69241
69239
  }
69242
69240
  </div>
@@ -69354,7 +69352,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
69354
69352
  * @phase UXReview
69355
69353
  */
69356
69354
  class UITextarea {
69357
- valueChange = output();
69358
69355
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
69359
69356
  value = model('', ...(ngDevMode ? [{ debugName: "value" }] : []));
69360
69357
  ariaLabel = input(undefined, ...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
@@ -69375,7 +69372,7 @@ class UITextarea {
69375
69372
  maxRowsValid = computed(() => Math.min(10, Math.max(3, this.maxRows() || 10)), ...(ngDevMode ? [{ debugName: "maxRowsValid" }] : []));
69376
69373
  constructor() {
69377
69374
  this.value.subscribe((val) => {
69378
- this.valueChange.emit(val || '');
69375
+ this.value.set(val || '');
69379
69376
  });
69380
69377
  }
69381
69378
  handleBlur(event) {
@@ -69386,7 +69383,7 @@ class UITextarea {
69386
69383
  this.value.set(event.target.value);
69387
69384
  }
69388
69385
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UITextarea, deps: [], target: i0.ɵɵFactoryTarget.Component });
69389
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: UITextarea, isStandalone: true, selector: "ui-textarea", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, maxLength: { classPropertyName: "maxLength", publicName: "maxLength", isSignal: true, isRequired: false, transformFunction: null }, maxRows: { classPropertyName: "maxRows", publicName: "maxRows", isSignal: true, isRequired: false, transformFunction: null }, minRows: { classPropertyName: "minRows", publicName: "minRows", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange", value: "valueChange" }, host: { attributes: { "data-bspk": "textarea" }, properties: { "attr.data-disabled": "disabled() || null", "attr.data-invalid": "invalid() || null", "attr.data-readonly": "readOnly() || null", "attr.data-size": "size() || \"medium\"", "style.--min-rows": "minRowsValid()", "style.--max-rows": "maxRowsValid()" } }, ngImport: i0, template: `
69386
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: UITextarea, isStandalone: true, selector: "ui-textarea", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, maxLength: { classPropertyName: "maxLength", publicName: "maxLength", isSignal: true, isRequired: false, transformFunction: null }, maxRows: { classPropertyName: "maxRows", publicName: "maxRows", isSignal: true, isRequired: false, transformFunction: null }, minRows: { classPropertyName: "minRows", publicName: "minRows", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedBy: { classPropertyName: "ariaDescribedBy", publicName: "ariaDescribedBy", isSignal: true, isRequired: false, transformFunction: null }, ariaErrorMessage: { classPropertyName: "ariaErrorMessage", publicName: "ariaErrorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { attributes: { "data-bspk": "textarea" }, properties: { "attr.data-disabled": "disabled() || null", "attr.data-invalid": "invalid() || null", "attr.data-readonly": "readOnly() || null", "attr.data-size": "size() || \"medium\"", "style.--min-rows": "minRowsValid()", "style.--max-rows": "maxRowsValid()" } }, ngImport: i0, template: `
69390
69387
  <textarea
69391
69388
  #el
69392
69389
  data-main-input
@@ -69445,7 +69442,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
69445
69442
  '[style.--min-rows]': 'minRowsValid()',
69446
69443
  '[style.--max-rows]': 'maxRowsValid()',
69447
69444
  }, encapsulation: ViewEncapsulation.None, styles: ["[data-bspk=textarea]{display:grid;width:100%;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden;color:var(--foreground-neutral-on-surface);background-color:var(--surface-neutral-t1-base);--border-color: var(--stroke-neutral-base);--font: var(--body-base);--line-height: 20px;--padding: var(--spacing-sizing-03)}[data-bspk=textarea][data-size=small]{--font: var(--body-small);--line-height: 20px;--padding: var(--spacing-sizing-02)}[data-bspk=textarea][data-size=large]{--font: var(--body-large);--line-height: 24px;--padding: var(--spacing-sizing-03)}[data-bspk=textarea]:has(textarea:focus-within){--border-color: var(--stroke-neutral-focus)}[data-bspk=textarea]:has(textarea[aria-invalid]){--border-color: var(--status-error)}[data-bspk=textarea] [data-replicated-value]{white-space:pre-wrap;visibility:hidden;overflow-y:hidden}[data-bspk=textarea] textarea,[data-bspk=textarea] [data-replicated-value]{width:100%;font:var(--font);padding:var(--padding);border:none;background:transparent;grid-area:1/1/2/2;min-height:calc(var(--line-height) * var(--min-rows) + var(--padding) * 2);max-height:calc(var(--line-height) * var(--max-rows) + var(--padding) * 2);max-width:100%}[data-bspk=textarea] textarea{text-wrap:break-word;resize:none;color:inherit;background-color:inherit;outline:none}[data-bspk=textarea] textarea::placeholder{color:var(--foreground-neutral-on-surface-variant-03)}[data-bspk=textarea]:hover:not(:focus-within){background:linear-gradient(var(--interactions-hover-opacity),var(--interactions-hover-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=textarea]:active:not(:focus-within){background:linear-gradient(var(--interactions-press-opacity),var(--interactions-press-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=textarea][data-readonly]{--border-color: var(--stroke-neutral-disabled-light);background:linear-gradient(var(--interactions-disabled-opacity),var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=textarea][data-disabled],[data-bspk=textarea]:has([data-main-input][disabled]){--border-color: var(--stroke-neutral-disabled-light);background:linear-gradient(var(--interactions-disabled-opacity),var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base),var(--surface-neutral-t1-base))}[data-bspk=textarea][data-disabled]>*,[data-bspk=textarea]:has([data-main-input][disabled])>*{color:var(--foreground-neutral-disabled-on-surface)}[data-bspk=textarea][data-invalid]{--border-color: var(--status-error)}[data-bspk=textarea]:focus-within{--border-color: var(--stroke-neutral-focus);outline:1px solid var(--stroke-neutral-focus)}\n"] }]
69448
- }], ctorParameters: () => [], propDecorators: { valueChange: [{ type: i0.Output, args: ["valueChange"] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], maxLength: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxLength", required: false }] }], maxRows: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxRows", required: false }] }], minRows: [{ type: i0.Input, args: [{ isSignal: true, alias: "minRows", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }] } });
69445
+ }], ctorParameters: () => [], propDecorators: { name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], maxLength: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxLength", required: false }] }], maxRows: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxRows", required: false }] }], minRows: [{ type: i0.Input, args: [{ isSignal: true, alias: "minRows", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], readOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readOnly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaDescribedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaDescribedBy", required: false }] }], ariaErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaErrorMessage", required: false }] }] } });
69449
69446
 
69450
69447
  /**
69451
69448
  * A field wrapper for the UITextarea component.
@@ -69481,7 +69478,7 @@ class UITextareaField extends UITextarea {
69481
69478
  [ariaLabelledBy]="labelledById()"
69482
69479
  [ariaDescribedBy]="describedById()"
69483
69480
  [ariaErrorMessage]="errorMessageId()"
69484
- (valueChange)="valueChange.emit($event)"
69481
+ (valueChange)="value.set($event)"
69485
69482
  [ariaLabel]="ariaLabel()"
69486
69483
  [disabled]="disabled()"
69487
69484
  [id]="controlId()"
@@ -69509,7 +69506,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
69509
69506
  [ariaLabelledBy]="labelledById()"
69510
69507
  [ariaDescribedBy]="describedById()"
69511
69508
  [ariaErrorMessage]="errorMessageId()"
69512
- (valueChange)="valueChange.emit($event)"
69509
+ (valueChange)="value.set($event)"
69513
69510
  [ariaLabel]="ariaLabel()"
69514
69511
  [disabled]="disabled()"
69515
69512
  [id]="controlId()"
@@ -69526,11 +69523,78 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
69526
69523
  }, encapsulation: ViewEncapsulation.None, styles: ["[data-bspk-utility=field]{width:100%;display:flex;flex-direction:column;gap:var(--spacing-sizing-01);border:none;max-width:100%;min-inline-size:unset}[data-bspk-utility=field] [data-field-label]{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-sizing-01)}[data-bspk-utility=field] [data-field-label] span{font:var(--labels-small);color:var(--foreground-neutral-on-surface)}[data-bspk-utility=field] [data-field-label] span[data-required]{font:var(--body-small);color:var(--foreground-neutral-on-surface-variant-01)}[data-bspk-utility=field] [data-field-label] span[data-trailing]{font:var(--body-small);color:var(--foreground-neutral-on-surface-variant-02);margin-left:auto}[data-bspk-utility=field] [data-field-description]{font:var(--body-small);color:var(--foreground-neutral-on-surface-variant-01);margin:0;padding:0}[data-bspk-utility=field] fieldset,[data-bspk-utility=field] legend{display:contents}\n"] }]
69527
69524
  }], propDecorators: { errorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "errorMessage", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], helperText: [{ type: i0.Input, args: [{ isSignal: true, alias: "helperText", required: false }] }], labelTrailing: [{ type: i0.Input, args: [{ isSignal: true, alias: "labelTrailing", required: false }] }], style: [{ type: i0.Input, args: [{ isSignal: true, alias: "style", required: false }] }] } });
69528
69525
 
69526
+ // create an angular service to manage brand setting and getting
69527
+ const BRAND_KEY = 'brand-preference';
69528
+ const EXTRA_BRANDS = [
69529
+ {
69530
+ title: 'Example',
69531
+ slug: 'example',
69532
+ },
69533
+ ];
69534
+ class BrandService {
69535
+ document = inject(DOCUMENT$1);
69536
+ value = signal(localStorage.getItem(BRAND_KEY) || 'anywhere', ...(ngDevMode ? [{ debugName: "value" }] : []));
69537
+ constructor() {
69538
+ effect(() => {
69539
+ const brand = this.value();
69540
+ this.document.documentElement.setAttribute('data-brand', brand);
69541
+ localStorage.setItem(BRAND_KEY, brand);
69542
+ updateBrandStylesheet(brand);
69543
+ });
69544
+ }
69545
+ toggle() {
69546
+ const newBrand = this.value();
69547
+ this.value.set(newBrand);
69548
+ }
69549
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: BrandService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
69550
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: BrandService, providedIn: 'root' });
69551
+ }
69552
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: BrandService, decorators: [{
69553
+ type: Injectable,
69554
+ args: [{
69555
+ providedIn: 'root',
69556
+ }]
69557
+ }], ctorParameters: () => [] });
69558
+ /**
69559
+ * Loads the brand stylesheet corresponding to the given brand value.
69560
+ *
69561
+ * 1. Appends the new brand stylesheet link element to the document head
69562
+ * 2. Once the stylesheet is loaded, it adds a 'loaded' class to the body to help mitigate F.O.U.C. (Flash of Unstyled
69563
+ * Content)
69564
+ * 3. If a previous brand stylesheet exists (id of 'brand-stylesheet'), it removes it to ensure only the current brand's
69565
+ * styles are applied.
69566
+ * 4. Adds an id of 'brand-stylesheet' to the link element for easy identification and management of the brand stylesheet.
69567
+ *
69568
+ * Once the stylesheet is loaded, it adds a 'loaded' class to the body to help mitigate F.O.U.C. (Flash of Unstyled
69569
+ * Content) when switching brands.
69570
+ *
69571
+ * Then it removes any previously loaded brand stylesheet to ensure that only the current brand's styles are applied.
69572
+ *
69573
+ * Then it
69574
+ *
69575
+ * @param value The brand value for which to load the stylesheet.
69576
+ */
69577
+ function updateBrandStylesheet(value) {
69578
+ const linkElement = document.createElement('link');
69579
+ linkElement.onload = () => {
69580
+ // eslint-disable-next-line no-console
69581
+ console.info(`Brand ${value} stylesheet loaded`);
69582
+ document.body.classList.add('loaded');
69583
+ // remove any previous brand stylesheets
69584
+ const existingLinks = document.querySelector('link#brand-stylesheet');
69585
+ existingLinks?.remove();
69586
+ linkElement.id = 'brand-stylesheet';
69587
+ };
69588
+ linkElement.rel = 'stylesheet';
69589
+ linkElement.href = value === 'example' ? `/example.css` : `/brands/${value}.css`;
69590
+ document.head.appendChild(linkElement);
69591
+ }
69592
+
69529
69593
  // create an angular service to manage theme setting and getting
69530
69594
  const THEME_KEY = 'theme-preference';
69531
69595
  class ThemeService {
69532
- document = inject(DOCUMENT$1);
69533
69596
  value = signal(localStorage.getItem(THEME_KEY) || 'light', ...(ngDevMode ? [{ debugName: "value" }] : []));
69597
+ document = inject(DOCUMENT$1);
69534
69598
  constructor() {
69535
69599
  effect(() => {
69536
69600
  const theme = this.value();
@@ -69562,5 +69626,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
69562
69626
  * Generated bundle index. Do not edit.
69563
69627
  */
69564
69628
 
69565
- export { BUILT_IN_COLUMN_SORTERS, Icon360, IconAZAscend, IconAZDescend, IconAccessibilityNew, IconAccessible, IconAccountCircle, IconAccountCircleFill, IconAccountTree, IconAccountTreeFill, IconAdd, IconAddAPhoto, IconAddAPhotoFill, IconAddAlert, IconAddAlertFill, IconAddBusiness, IconAddBusinessFill, IconAddChart, IconAddChartFill, IconAddCircle, IconAddCircleFill, IconAddComment, IconAddCommentFill, IconAddReaction, IconAddReactionFill, IconAddShoppingCart, IconAirplanemodeInactive, IconAirportShuttle, IconAirportShuttleFill, IconAlignCenter, IconAlignEnd, IconAlignFlexCenter, IconAlignFlexEnd, IconAlignFlexStart, IconAlignHorizontalCenter, IconAlignHorizontalLeft, IconAlignHorizontalRight, IconAlignItemsStretch, IconAlignJustifyCenter, IconAlignJustifyFlexEnd, IconAlignJustifyFlexStart, IconAlignJustifySpaceAround, IconAlignJustifySpaceBetween, IconAlignJustifySpaceEven, IconAlignJustifyStretch, IconAlignSpaceAround, IconAlignSpaceBetween, IconAlignSpaceEven, IconAlignStart, IconAlignStretch, IconAlignVerticalBottom, IconAlignVerticalCenter, IconAlignVerticalTop, IconAlternateEmail, IconAmex, IconAnalytics, IconAnalyticsFill, IconApartment, IconAppStore, IconAppleBlack, IconAppleWhite, IconApplepay, IconApps, IconArOnYou, IconArOnYouFill, IconArStickers, IconArStickersFill, IconArchive, IconArchiveFill, IconAreaChart, IconAreaChartFill, IconArrowBack, IconArrowDownward, IconArrowDropDown, IconArrowDropUp, IconArrowForward, IconArrowInsert, IconArrowLeft, IconArrowOutward, IconArrowRight, IconArrowUpward, IconAssignment, IconAssignmentAdd, IconAssignmentAddFill, IconAssignmentFill, IconAttachFile, IconAttachFileAdd, IconAttachFileFill, IconAttachMoney, IconAutomation, IconAutomationFill, IconBadge, IconBadgeFill, IconBakeryDining, IconBakeryDiningFill, IconBarChart, IconBarcode, IconBarcodeScanner, IconBarn, IconBarnFill, IconBasement, IconBasementFill, IconBathroom, IconBathroomFill, IconBed, IconBedFill, IconBlock, IconBluetooth, IconBolt, IconBoltFill, IconBookmark, IconBookmarkAdd, IconBookmarkAddFill, IconBookmarkAdded, IconBookmarkAddedFill, IconBookmarkFill, IconBookmarkRemove, IconBookmarkRemoveFill, IconBookmarks, IconBookmarksFill, IconBorderColor, IconBorderColorFill, IconBorderStyle, IconBox, IconBoxAdd, IconBoxAddFill, IconBoxFill, IconBrail, IconBubbleChart, IconBubbleChartFill, IconBuilding, IconBuildingFill, IconBusinessCenter, IconBusinessCenterFill, IconCalendarViewDay, IconCalendarViewDayFill, IconCalendarViewWeek, IconCalendarViewWeekFill, IconCall, IconCallEnd, IconCallEndFill, IconCallFill, IconCampaign, IconCampaignFill, IconCancel, IconCancelFill, IconCasino, IconCasinoFill, IconCat, IconCatFill, IconCategory, IconCategoryFill, IconChartData, IconChartDataFill, IconChat, IconChatBubble, IconChatBubbleFill, IconChatFill, IconCheck, IconCheckCircle, IconCheckCircleFill, IconCheckFill, IconChecklist, IconChevronLeft, IconChevronRight, IconCircle, IconCircleFill, IconCleaningServices, IconCleaningServicesFill, IconClose, IconCloseFill, IconClosedCaption, IconClosedCaptionDisabled, IconClosedCaptionDisabledFill, IconClosedCaptionFill, IconCloud, IconCloudDone, IconCloudDoneFill, IconCloudDownload, IconCloudDownloadFill, IconCloudFill, IconCloudOff, IconCloudOffFill, IconCloudUpload, IconCloudUploadFill, IconCode, IconCognition, IconCognitionFill, IconColorBlind, IconColors, IconCommute, IconCommuteFill, IconComputer, IconComputerFill, IconConstruction, IconContactMail, IconContactMailFill, IconContactPage, IconContactPageFill, IconContactPhone, IconContactPhoneFill, IconContactSupport, IconContactSupportFill, IconContacts, IconContactsFill, IconContentCopy, IconContentCopyFill, IconContentPasteOff, IconContentPasteSearch, IconContrast, IconContrastCircle, IconContrastFill, IconContrastSquare, IconCopyright, IconCopyrightFill, IconCrawlspace, IconCrawlspaceFill, IconCreditCard, IconCreditCardFill, IconDangerous, IconDangerousFill, IconDarkMode, IconDarkModeFill, IconDashboard, IconDashboard2, IconDashboard2Fill, IconDashboardCustomize, IconDashboardCustomizeFill, IconDashboardFill, IconDatabase, IconDatabaseFill, IconDelete, IconDeleteFill, IconDeleteForever, IconDeleteForeverFill, IconDeployedCode, IconDeployedCodeAccount, IconDeployedCodeAccountFill, IconDeployedCodeAlert, IconDeployedCodeAlertFill, IconDeployedCodeFill, IconDeployedCodeHistory, IconDeployedCodeHistoryFill, IconDeployedCodeUpdate, IconDeployedCodeUpdateFill, IconDescription, IconDescriptionFill, IconDesktopWindows, IconDesktopWindowsFill, IconDeviceThermostat, IconDevices, IconDevicesFill, IconDialpad, IconDiamond, IconDiamondFill, IconDirections, IconDirectionsBike, IconDirectionsBoat, IconDirectionsBoatFill, IconDirectionsBus, IconDirectionsBusFill, IconDirectionsCar, IconDirectionsCarFill, IconDirectionsFill, IconDirectionsSubway, IconDirectionsSubwayFill, IconDirectionsWalk, IconDiscover, IconDiversity1, IconDiversity1Fill, IconDoNotDisturbOn, IconDoNotDisturbOnFill, IconDocumentScanner, IconDocumentScannerFill, IconDog, IconDogFill, IconDonutLarge, IconDonutSmall, IconDonutSmallFill, IconDoorOpen, IconDoorOpenFill, IconDraft, IconDraftFill, IconDrafts, IconDraftsFill, IconDragHandle, IconDragIndicator, IconDraw, IconDrawFill, IconEdit, IconEditFill, IconEditNote, IconEditNoteFill, IconEditRoad, IconEditRoadFill, IconEditSquare, IconEditSquareFill, IconEgg, IconEggFill, IconEmojiLanguage, IconEmojiLanguageFill, IconEmoticon, IconEncrypted, IconEncryptedFill, IconError, IconErrorFill, IconEvent, IconEventFill, IconEventNote, IconEventNoteFill, IconExercise, IconExerciseFill, IconExperiment, IconExperimentFill, IconExplore, IconExploreFill, IconExtension, IconExtensionFill, IconExtensionOff, IconExtensionOffFill, IconFaceId, IconFaceRetouchingOff, IconFaceRetouchingOffFill, IconFacebook, IconFacebookWhite, IconFamilyHome, IconFamilyHomeFill, IconFastfood, IconFastfoodFill, IconFavorite, IconFavoriteFill, IconFileDownload, IconFileUpload, IconFilterList, IconFinance, IconFingerprint, IconFingerprintOff, IconFireplace, IconFireplaceFill, IconFitScreen, IconFitScreenFill, IconFitnessCenter, IconFlag, IconFlagAfghanistan, IconFlagAlandIsland, IconFlagAlbania, IconFlagAlgeria, IconFlagAmericanSamoa, IconFlagAndorra, IconFlagAngola, IconFlagAnguilla, IconFlagAntiguaAndBarbuda, IconFlagArgentina, IconFlagArmenia, IconFlagAruba, IconFlagAustralia, IconFlagAustria, IconFlagAzerbaijan, IconFlagBahamas, IconFlagBahrain, IconFlagBangladesh, IconFlagBarbados, IconFlagBelarus, IconFlagBelgium, IconFlagBelize, IconFlagBenin, IconFlagBermuda, IconFlagBhutan, IconFlagBolivia, IconFlagBonaire, IconFlagBosniaAndHerzegovina, IconFlagBotswana, IconFlagBrazil, IconFlagBrunei, IconFlagBulgaria, IconFlagBurkinaFaso, IconFlagBurundi, IconFlagCambodia, IconFlagCameroon, IconFlagCanada, IconFlagCaymanIslands, IconFlagCentralAfricanRepublic, IconFlagChad, IconFlagChile, IconFlagChina, IconFlagChristmasIsland, IconFlagCocosIslands, IconFlagColombia, IconFlagComoros, IconFlagCookIsland, IconFlagCostaRica, IconFlagCroatia, IconFlagCuba, IconFlagCuracao, IconFlagCyprus, IconFlagCzechRepublic, IconFlagDemocraticRepublicOfTheCongo, IconFlagDenmark, IconFlagDjibouti, IconFlagDominica, IconFlagDominicanRepublic, IconFlagEcuador, IconFlagEgypt, IconFlagElSalvador, IconFlagEquatorialGuinea, IconFlagEritrea, IconFlagEstonia, IconFlagEswatini, IconFlagEthiopia, IconFlagFalklandIslands, IconFlagFaroeIslands, IconFlagFederatedStatesOfMicronesia, IconFlagFiji, IconFlagFill, IconFlagFinland, IconFlagFrance, IconFlagFrenchGuiana, IconFlagFrenchPolynesia, IconFlagGabon, IconFlagGambia, IconFlagGeorgia, IconFlagGermany, IconFlagGhana, IconFlagGibraltar, IconFlagGreece, IconFlagGreeland, IconFlagGrenada, IconFlagGrenadines, IconFlagGuam, IconFlagGuatemala, IconFlagGuernsey, IconFlagGuinea, IconFlagGuineaBissau, IconFlagGuyana, IconFlagHaiti, IconFlagHonduras, IconFlagHongKong, IconFlagHungary, IconFlagIceland, IconFlagIndia, IconFlagIndianOceanTerritory, IconFlagIndonesia, IconFlagIran, IconFlagIraq, IconFlagIreland, IconFlagIsleOfMan, IconFlagIsrael, IconFlagItaly, IconFlagJamaica, IconFlagJapan, IconFlagJersey, IconFlagJordan, IconFlagKazakhstan, IconFlagKenya, IconFlagKiribati, IconFlagKuwait, IconFlagKyrgyzstan, IconFlagLaos, IconFlagLatvia, IconFlagLebanon, IconFlagLesotho, IconFlagLiberia, IconFlagLibya, IconFlagLiechtenstein, IconFlagLithuania, IconFlagLuxembourg, IconFlagMacau, IconFlagMadagascar, IconFlagMalasia, IconFlagMalawi, IconFlagMaldives, IconFlagMali, IconFlagMalta, IconFlagMarshallIslands, IconFlagMartinique, IconFlagMauritania, IconFlagMauritius, IconFlagMexico, IconFlagMoldova, IconFlagMonaco, IconFlagMongolia, IconFlagMontenegro, IconFlagMontserrat, IconFlagMorroco, IconFlagMozambique, IconFlagMyanmar, IconFlagNamibia, IconFlagNauru, IconFlagNepal, IconFlagNetherlands, IconFlagNewZealand, IconFlagNicaragua, IconFlagNiger, IconFlagNigeria, IconFlagNiue, IconFlagNorfolkIsland, IconFlagNorthKorea, IconFlagNorthMacedonia, IconFlagNorthernMarianaIslands, IconFlagNorway, IconFlagOman, IconFlagPakistan, IconFlagPalau, IconFlagPalestine, IconFlagPanama, IconFlagPapuaNewGuinea, IconFlagParaguay, IconFlagPeru, IconFlagPhilippines, IconFlagPitcairnIslands, IconFlagPoland, IconFlagPortugal, IconFlagPuertoRico, IconFlagQatar, IconFlagRepublicOfTheCongo, IconFlagRomania, IconFlagRussia, IconFlagRwanda, IconFlagSaintBarthelemy, IconFlagSamoa, IconFlagSanMarino, IconFlagSaoTomeAndPrincipe, IconFlagSaudiArabia, IconFlagSenegal, IconFlagSerbia, IconFlagSeychelles, IconFlagSierraLeone, IconFlagSingapore, IconFlagSintMaarten, IconFlagSlovakia, IconFlagSlovenia, IconFlagSolomonIslands, IconFlagSomalia, IconFlagSouthAfrica, IconFlagSouthKorea, IconFlagSouthSudan, IconFlagSpain, IconFlagSriLanka, IconFlagStKittsNevis, IconFlagStLucia, IconFlagSudan, IconFlagSuriname, IconFlagSweden, IconFlagSwitzerland, IconFlagSyria, IconFlagTaiwan, IconFlagTajikistan, IconFlagTanzania, IconFlagThailand, IconFlagTimorLeste, IconFlagTogo, IconFlagTokelau, IconFlagTonga, IconFlagTrinidadAndTobago, IconFlagTunisia, IconFlagTurkey, IconFlagTurkmenistan, IconFlagTurksAndCaicos, IconFlagTuvalu, IconFlagUganda, IconFlagUkraine, IconFlagUnitedArabEmirates, IconFlagUnitedKingdom, IconFlagUnitedKingdomOfGreatBritainAndNorthernIreland, IconFlagUnitedStates, IconFlagUruguay, IconFlagUzbekistan, IconFlagVanuatu, IconFlagVenezuela, IconFlagVietnam, IconFlagVirginIslands, IconFlagVirginIslandsBritish, IconFlagWestSahara, IconFlagYemen, IconFlagZambia, IconFlagZimbabwe, IconFlashAuto, IconFlashAutoFill, IconFlight, IconFlowchart, IconFlowchartFill, IconFolder, IconFolderFill, IconFolderOpen, IconFolderOpenFill, IconFolderShared, IconFolderSharedFill, IconFontDownload, IconFontDownloadFill, IconForSaleSign, IconForYou, IconForYouFill, IconForest, IconForestFill, IconForkRight, IconFormatAlignCenter, IconFormatAlignJustify, IconFormatAlignLeft, IconFormatAlignRight, IconFormatColorFill, IconFormatLetterSpacingWide, IconFormatLetterSpacingWider, IconFormatLineSpacing, IconFormatListBulleted, IconFormatListNumbered, IconFormatShapes, IconFormatShapesFill, IconFormatSize, IconForum, IconForumFill, IconForward, IconForwardToInbox, IconForwardToInboxFill, IconFullStackedBarChart, IconFullscreen, IconFullscreenExit, IconFullscreenFill, IconGTranslate, IconGalleryThumbnail, IconGalleryThumbnailFill, IconGarage, IconGarageFill, IconGlobe, IconGoogle, IconGooglePlay, IconGooglepay, IconGridView, IconGridViewFill, IconGroup, IconGroupFill, IconGroupedBarChart, IconHail, IconHandDraw, IconHandDrawFill, IconHandshake, IconHandshakeFill, IconHandyman, IconHandymanFill, IconHeadMountedDevice, IconHeadMountedDeviceFill, IconHeadsetMic, IconHeadsetMicFill, IconHearing, IconHeat, IconHeatPump, IconHeatPumpFill, IconHelp, IconHelpFill, IconHexagon, IconHexagonFill, IconHistory, IconHome, IconHomeAdd, IconHomeAddFill, IconHomeCheck, IconHomeCheckFill, IconHomeFill, IconHomeLock, IconHomeLockFill, IconHomeMonitize, IconHomeMonitizeFill, IconHomeMove, IconHomeMoveFill, IconHomeRemove, IconHomeRemoveFill, IconHomeStorage, IconHomeStorageFill, IconHomeTimer, IconHomeTimerFill, IconHomeWork, IconHomeWorkFill, IconHorizontalDistribute, IconHub, IconHubFill, IconHvac, IconHvacFill, IconIcecream, IconIcecreamFill, IconIdCard, IconIdCardFill, IconImage, IconImageFill, IconInProgress, IconInbox, IconInboxFill, IconIncompleteCircle, IconInfo, IconInfoFill, IconInkEraser, IconInkEraserFill, IconInput, IconInstagramBlack, IconInstagramWhite, IconInventory, IconInventory2, IconInventory2Fill, IconInventoryFill, IconIosShare, IconKebabDining, IconKebabDiningFill, IconKey, IconKeyFill, IconKeyOff, IconKeyOffFill, IconKeyVertical, IconKeyVerticalFill, IconKeyboard, IconKeyboardArrowDown, IconKeyboardArrowUp, IconKeyboardDoubleArrowLeft, IconKeyboardDoubleArrowRight, IconKeyboardFill, IconLabel, IconLabelFill, IconLabelImportant, IconLabelImportantFill, IconLan, IconLanFill, IconLandscape, IconLandscapeFill, IconLanguage, IconLaundry, IconLaundryFill, IconLayers, IconLayersFill, IconLeaderboard, IconLeaderboardFill, IconLeftPanelClose, IconLeftPanelCloseFill, IconLeftPanelOpen, IconLeftPanelOpenFill, IconLicense, IconLicenseFill, IconLight, IconLightFill, IconLightMode, IconLightModeFill, IconLightbulb, IconLightbulbFill, IconLink, IconLinkFill, IconLinkOff, IconLinkedin, IconLinkedinWhite, IconList, IconListChange, IconListFill, IconLocalCafe, IconLocalCafeFill, IconLocalParking, IconLocalShipping, IconLocalShippingFill, IconLocalTaxi, IconLocalTaxiFill, IconLocationDisabled, IconLocationOff, IconLocationOffFill, IconLocationOn, IconLocationOnFill, IconLocationSearching, IconLock, IconLockFill, IconLockOpen, IconLockOpenFill, IconLogin, IconLogout, IconLowVisibility, IconMail, IconMailFill, IconMailLock, IconMailLockFill, IconMan, IconManFill, IconManageAccounts, IconManageAccountsFill, IconMap, IconMapFill, IconMarkAsUnread, IconMarkAsUnreadFill, IconMarkEmailRead, IconMarkEmailReadFill, IconMarkEmailUnread, IconMarkEmailUnreadFill, IconMastercard, IconMenu, IconMenuBook, IconMenuBookFill, IconMenuFill, IconMerge, IconMic, IconMicFill, IconMicOff, IconMicOffFill, IconModeCool, IconModeCoolOff, IconModeFan, IconModeFanFill, IconModeFanOff, IconModeFanOffFill, IconModeHeat, IconModeHeatFill, IconMoneyOff, IconMonitor, IconMonitorFill, IconMood, IconMoodBad, IconMoodBadFill, IconMoodFill, IconMoreHoriz, IconMoreVert, IconMoveLocation, IconMoveLocationFill, IconMoveToInbox, IconMoveToInboxFill, IconMultilineChart, IconMusicNote, IconMyLocation, IconMyLocationFill, IconNavigation, IconNavigationFill, IconNearMe, IconNearMeFill, IconNoSound, IconNoSoundFill, IconNorth, IconNorthWest, IconNoteAdd, IconNoteAddFill, IconNotifications, IconNotificationsFill, IconNotificationsOff, IconNotificationsOffFill, IconNutrition, IconNutritionFill, IconOktaBlack, IconOktaWhite, IconOmniChatbox, IconOmniChatboxFill, IconOpenInFull, IconOpenInNew, IconOpportunities, IconOrders, IconOrdersFill, IconOtherHouses, IconOtherHousesFill, IconOutbox, IconOutboxFill, IconOutgoingMail, IconOutgoingMailFill, IconOutlook, IconOvenGen, IconOvenGenFill, IconPackage, IconPackage2, IconPackage2Fill, IconPackageFill, IconPaid, IconPaidFill, IconPalette, IconPaletteFill, IconPanZoom, IconPartnerExchange, IconPartnerExchangeFill, IconPause, IconPauseCircle, IconPauseCircleFill, IconPauseFill, IconPayments, IconPaymentsFill, IconPaypal, IconPendingActions, IconPentagon, IconPentagonFill, IconPercent, IconPerson, IconPersonAdd, IconPersonAddDisabled, IconPersonAddDisabledFill, IconPersonAddFill, IconPersonBook, IconPersonBookFill, IconPersonCancel, IconPersonCancelFill, IconPersonCheck, IconPersonCheckFill, IconPersonFill, IconPersonRemove, IconPersonRemoveFill, IconPersonSearch, IconPersonSearchFill, IconPets, IconPhotoCamera, IconPhotoCameraFill, IconPieChart, IconPieChartFill, IconPin, IconPinFill, IconPinterest, IconPinterestBlack, IconPlayArrow, IconPlayArrowFill, IconPlayCircle, IconPlayCircleFill, IconPlayPause, IconPlaylistAdd, IconPlaylistAddCheck, IconPlaylistAddFill, IconPlaylistRemove, IconPolicy, IconPolicyFill, IconPreview, IconPreviewFill, IconPrint, IconPrintFill, IconPublic, IconQrCode, IconQrCodeScanner, IconQuestionMark, IconRampLeft, IconRampRight, IconRealEstateAgent, IconRealEstateAgentFill, IconReceipt, IconReceiptFill, IconReceiptLong, IconReceiptLongFill, IconRecordVoiceOver, IconRecordVoiceOverFill, IconRecycling, IconRefresh, IconRemove, IconRemoveShoppingCart, IconRentSign, IconReplay, IconReply, IconReplyAll, IconReplyFill, IconReport, IconReportFill, IconResize, IconResizeHandle, IconRestaurant, IconRightPanelClose, IconRightPanelCloseFill, IconRightPanelOpen, IconRightPanelOpenFill, IconRoofing, IconRoofingFill, IconRoomPreferences, IconRoomPreferencesFill, IconRoundaboutLeft, IconRoundaboutRight, IconRoute, IconRouteFill, IconSave, IconSaveFill, IconSaveSearch, IconSaveSearchFill, IconScatterPlot, IconScatterPlotFill, IconSchedule, IconScheduleFill, IconScheduleSend, IconScheduleSendFill, IconSchema, IconSchemaFill, IconSchool, IconSchoolFill, IconScience, IconScienceFill, IconScore, IconScoreFill, IconSearch, IconSegment, IconSell, IconSellFill, IconSeller, IconSellerFill, IconSend, IconSendFill, IconSentimentDissatisfied, IconSentimentDissatisfiedFill, IconSentimentExtremelyDissatisfied, IconSentimentExtremelyDissatisfiedFill, IconSentimentNeutral, IconSentimentNeutralFill, IconSentimentSatisfied, IconSentimentSatisfiedFill, IconSentimentVeryDissatisfied, IconSentimentVeryDissatisfiedFill, IconSentimentVerySatisfied, IconSentimentVerySatisfiedFill, IconSettings, IconSettingsAccessibility, IconSettingsFill, IconShare, IconShareFill, IconShippingContainer, IconShippingContainerFill, IconShoppingBag, IconShoppingBagFill, IconShoppingCart, IconShoppingCartCheckout, IconShoppingCartFill, IconShoppingCartOff, IconShoppingCartOffFill, IconSick, IconSickFill, IconSignLanguage, IconSignLanguageFill, IconSignalCellularAlt, IconSkipNext, IconSkipNextFill, IconSkipPrevious, IconSkipPreviousFill, IconSlabSerif, IconSlabSerifFill, IconSmartphone, IconSmartphoneFill, IconSms, IconSmsFill, IconSort, IconSortByAlpha, IconSortByReverseAlpha, IconSortFill, IconSouth, IconSouthEast, IconSouthFill, IconSouthWest, IconSquare, IconSquareFill, IconSquareFoot, IconStackedBarChart, IconStackedEmail, IconStackedEmailFill, IconStacks, IconStacksFill, IconStar, IconStarFill, IconStop, IconStopCircle, IconStopCircleFill, IconStopFill, IconStorefront, IconStorefrontFill, IconStraight, IconStraightFill, IconStraighten, IconStraightenFill, IconStressManagement, IconStressManagementFill, IconSubject, IconSubway, IconSubwayFill, IconSwapVert, IconSwapVerticalCircle, IconSwapVerticalCircleFill, IconSymbolAfghanistan, IconSymbolAlandIsland, IconSymbolAlbania, IconSymbolAlgeria, IconSymbolAmericanSamoa, IconSymbolAndorra, IconSymbolAngola, IconSymbolAnguilla, IconSymbolAntiguaAndBarbuda, IconSymbolArgentina, IconSymbolArmenia, IconSymbolAruba, IconSymbolAustralia, IconSymbolAustria, IconSymbolAzerbaijan, IconSymbolBahamas, IconSymbolBahrain, IconSymbolBangladesh, IconSymbolBarbados, IconSymbolBelarus, IconSymbolBelgium, IconSymbolBelize, IconSymbolBenin, IconSymbolBermuda, IconSymbolBhutan, IconSymbolBolivia, IconSymbolBonaire, IconSymbolBosniaAndHerzegovina, IconSymbolBotswana, IconSymbolBrazil, IconSymbolBrunei, IconSymbolBulgaria, IconSymbolBurkinaFaso, IconSymbolBurundi, IconSymbolCambodia, IconSymbolCameroon, IconSymbolCanada, IconSymbolCaymanIslands, IconSymbolCentralAfricanRepublic, IconSymbolChad, IconSymbolChile, IconSymbolChina, IconSymbolChristmasIsland, IconSymbolCocosIslands, IconSymbolColombia, IconSymbolComoros, IconSymbolCookIsland, IconSymbolCostaRica, IconSymbolCroatia, IconSymbolCuba, IconSymbolCuracao, IconSymbolCyprus, IconSymbolCzechRepublic, IconSymbolDemocraticRepublicOfTheCongo, IconSymbolDenmark, IconSymbolDjibouti, IconSymbolDominica, IconSymbolDominicanRepublic, IconSymbolEcuador, IconSymbolEgypt, IconSymbolElSalvador, IconSymbolEquatorialGuinea, IconSymbolEritrea, IconSymbolEstonia, IconSymbolEswatini, IconSymbolEthiopia, IconSymbolFalklandIslands, IconSymbolFaroeIslands, IconSymbolFederatedStatesOfMicronesia, IconSymbolFiji, IconSymbolFinland, IconSymbolFrance, IconSymbolFrenchGuiana, IconSymbolFrenchPolynesia, IconSymbolGabon, IconSymbolGambia, IconSymbolGeorgia, IconSymbolGermany, IconSymbolGhana, IconSymbolGibraltar, IconSymbolGreece, IconSymbolGreeland, IconSymbolGrenada, IconSymbolGrenadines, IconSymbolGuam, IconSymbolGuatemala, IconSymbolGuernsey, IconSymbolGuinea, IconSymbolGuineaBissau, IconSymbolGuyana, IconSymbolHaiti, IconSymbolHonduras, IconSymbolHongKong, IconSymbolHungary, IconSymbolIceland, IconSymbolIndia, IconSymbolIndianOceanTerritory, IconSymbolIndonesia, IconSymbolIran, IconSymbolIraq, IconSymbolIreland, IconSymbolIsleOfMan, IconSymbolIsrael, IconSymbolItaly, IconSymbolJamaica, IconSymbolJapan, IconSymbolJersey, IconSymbolJordan, IconSymbolKazakhstan, IconSymbolKenya, IconSymbolKiribati, IconSymbolKuwait, IconSymbolKyrgyzstan, IconSymbolLaos, IconSymbolLatvia, IconSymbolLebanon, IconSymbolLesotho, IconSymbolLiberia, IconSymbolLibya, IconSymbolLiechtenstein, IconSymbolLithuania, IconSymbolLuxembourg, IconSymbolMacau, IconSymbolMadagascar, IconSymbolMalasia, IconSymbolMalawi, IconSymbolMaldives, IconSymbolMali, IconSymbolMalta, IconSymbolMarshallIslands, IconSymbolMartinique, IconSymbolMauritania, IconSymbolMauritius, IconSymbolMexico, IconSymbolMoldova, IconSymbolMonaco, IconSymbolMongolia, IconSymbolMontenegro, IconSymbolMontserrat, IconSymbolMorroco, IconSymbolMozambique, IconSymbolMyanmar, IconSymbolNamibia, IconSymbolNauru, IconSymbolNepal, IconSymbolNetherlands, IconSymbolNewZealand, IconSymbolNicaragua, IconSymbolNiger, IconSymbolNigeria, IconSymbolNiue, IconSymbolNorfolkIsland, IconSymbolNorthKorea, IconSymbolNorthMacedonia, IconSymbolNorthernMarianaIslands, IconSymbolNorway, IconSymbolOman, IconSymbolPakistan, IconSymbolPalau, IconSymbolPalestine, IconSymbolPanama, IconSymbolPapuaNewGuinea, IconSymbolParaguay, IconSymbolPeru, IconSymbolPhilippines, IconSymbolPitcairnIslands, IconSymbolPoland, IconSymbolPortugal, IconSymbolPuertoRico, IconSymbolQatar, IconSymbolRepublicOfTheCongo, IconSymbolRomania, IconSymbolRussia, IconSymbolRwanda, IconSymbolSaintBarthelemy, IconSymbolSamoa, IconSymbolSanMarino, IconSymbolSaoTomeAndPrincipe, IconSymbolSaudiArabia, IconSymbolSenegal, IconSymbolSerbia, IconSymbolSeychelles, IconSymbolSierraLeone, IconSymbolSingapore, IconSymbolSintMaarten, IconSymbolSlovakia, IconSymbolSlovenia, IconSymbolSolomonIslands, IconSymbolSomalia, IconSymbolSouthAfrica, IconSymbolSouthKorea, IconSymbolSouthSudan, IconSymbolSpain, IconSymbolSriLanka, IconSymbolStKittsNevis, IconSymbolStLucia, IconSymbolSudan, IconSymbolSuriname, IconSymbolSweden, IconSymbolSwitzerland, IconSymbolSyria, IconSymbolTaiwan, IconSymbolTajikistan, IconSymbolTanzania, IconSymbolThailand, IconSymbolTimorLeste, IconSymbolTogo, IconSymbolTokelau, IconSymbolTonga, IconSymbolTrinidadAndTobago, IconSymbolTunisia, IconSymbolTurkey, IconSymbolTurkmenistan, IconSymbolTurksAndCaicos, IconSymbolTuvalu, IconSymbolUganda, IconSymbolUkraine, IconSymbolUnitedArabEmirates, IconSymbolUnitedKingdom, IconSymbolUnitedKingdomOfGreatBritainAndNorthernIreland, IconSymbolUnitedStates, IconSymbolUruguay, IconSymbolUzbekistan, IconSymbolVanuatu, IconSymbolVenezuela, IconSymbolVietnam, IconSymbolVirginIslands, IconSymbolVirginIslandsBritish, IconSymbolWestSahara, IconSymbolYemen, IconSymbolZambia, IconSymbolZimbabwe, IconSync, IconTableChart, IconTableChartFill, IconTableChartView, IconTableChartViewFill, IconTablet, IconTabletFill, IconTag, IconTaxiAlert, IconTaxiAlertFill, IconThermometer, IconThermometerAdd, IconThermometerFill, IconThermometerGain, IconThermometerGainFill, IconThermometerLoss, IconThermometerLossFill, IconThermostat, IconThermostatAuto, IconThermostatFill, IconThumbDown, IconThumbDownFill, IconThumbUp, IconThumbUpFill, IconTimeline, IconTimer, IconTimerFill, IconTitle, IconToken, IconTokenFill, IconTrain, IconTrainFill, IconTranslate, IconTravel, IconTravelExplore, IconTravelFill, IconTrendingDown, IconTrendingFlat, IconTrendingUp, IconTriangle, IconTriangleFill, IconTrip, IconTripFill, IconTrophy, IconTrophyFill, IconTune, IconTurnLeft, IconTurnRight, IconTurnSharpLeft, IconTurnSlightLeft, IconTurnSlightRight, IconTv, IconTvFill, IconUTurnLeft, IconUTurnRight, IconUnarchive, IconUnarchiveFill, IconUndo, IconUnsubscribe, IconUnsubscribeFill, IconUpcoming, IconUpcomingFill, IconVerifiedUser, IconVerifiedUserFill, IconVerticalAlignBottom, IconVerticalAlignCenter, IconVerticalAlignTop, IconVerticalDistribute, IconVideoLibrary, IconVideoLibraryFill, IconVideocam, IconVideocamFill, IconViewCarousel, IconViewCarouselFill, IconViewColumn, IconViewColumn2, IconViewColumn2Fill, IconViewColumnFill, IconViewDay, IconViewDayFill, IconViewInAr, IconViewInArFill, IconViewList, IconViewListFill, IconViewModule, IconViewModuleFill, IconVilla, IconVillaFill, IconVisa, IconVisibility, IconVisibilityFill, IconVisibilityOff, IconVisibilityOffFill, IconVoicemail, IconVolumeDown, IconVolumeDownFill, IconVolumeMute, IconVolumeMuteFill, IconVolumeOff, IconVolumeOffFill, IconVolumeUp, IconVolumeUpFill, IconVolunteerActivism, IconVolunteerActivismFill, IconWallet, IconWarehouse, IconWarehouseFill, IconWarning, IconWarningFill, IconWc, IconWest, IconWifi, IconWifiCalling, IconWifiCallingFill, IconWifiFill, IconWifiHome, IconWifiHomeFill, IconWineBar, IconWineBarFill, IconWoman, IconWork, IconWorkFill, IconX, IconXWhite, IconYoutube, IconYoutubeBlack, IconYoutubeWhite, IconZoomIn, IconZoomInMap, IconZoomOut, IconZoomOutMap, KeyNavigationUtility, ThemeService, UIAccordion, UIAccordionSection, UIAvatar, UIAvatarGroup, UIBadge, UIBannerAlert, UIBreadcrumb, UIButton, UICalendar, UICard, UICheckbox, UICheckboxGroup, UICheckboxGroupField, UICheckboxOption, UIChip, UIChipGroup, UIDatePicker, UIDatePickerField, UIDialog, UIDivider, UIFab, UIField, UIFlexDirective, UIFloatingDirective, UIFocusTrapDirective, UIIcon, UIInlineAlert, UIInput, UIInputField, UIInputNumber, UIInputNumberField, UIInputPhone, UIInputPhoneField, UIKeyNavigationDirective, UILinkDirective, UIListItem, UIMatchParentHeightDirective, UIMenu, UIModal, UIOutsideClickDirective, UIPagination, UIPortalDirective, UIRadio, UIRadioGroup, UIRadioGroupField, UIRadioOption, UIScrim, UISegmentedControl, UISelect, UISelectField, UISwitch, UISwitchOption, UITabGroup, UITabList, UITabListUtility, UITable, UITableCell, UITag, UITextarea, UITextareaField, UITooltip, UITooltipDirective, UITxtDirective, describedById, errorMessageId, formatCell, labelledById };
69629
+ export { BUILT_IN_COLUMN_SORTERS, BrandService, EXTRA_BRANDS, Icon360, IconAZAscend, IconAZDescend, IconAccessibilityNew, IconAccessible, IconAccountCircle, IconAccountCircleFill, IconAccountTree, IconAccountTreeFill, IconAdd, IconAddAPhoto, IconAddAPhotoFill, IconAddAlert, IconAddAlertFill, IconAddBusiness, IconAddBusinessFill, IconAddChart, IconAddChartFill, IconAddCircle, IconAddCircleFill, IconAddComment, IconAddCommentFill, IconAddReaction, IconAddReactionFill, IconAddShoppingCart, IconAirplanemodeInactive, IconAirportShuttle, IconAirportShuttleFill, IconAlignCenter, IconAlignEnd, IconAlignFlexCenter, IconAlignFlexEnd, IconAlignFlexStart, IconAlignHorizontalCenter, IconAlignHorizontalLeft, IconAlignHorizontalRight, IconAlignItemsStretch, IconAlignJustifyCenter, IconAlignJustifyFlexEnd, IconAlignJustifyFlexStart, IconAlignJustifySpaceAround, IconAlignJustifySpaceBetween, IconAlignJustifySpaceEven, IconAlignJustifyStretch, IconAlignSpaceAround, IconAlignSpaceBetween, IconAlignSpaceEven, IconAlignStart, IconAlignStretch, IconAlignVerticalBottom, IconAlignVerticalCenter, IconAlignVerticalTop, IconAlternateEmail, IconAmex, IconAnalytics, IconAnalyticsFill, IconApartment, IconAppStore, IconAppleBlack, IconAppleWhite, IconApplepay, IconApps, IconArOnYou, IconArOnYouFill, IconArStickers, IconArStickersFill, IconArchive, IconArchiveFill, IconAreaChart, IconAreaChartFill, IconArrowBack, IconArrowDownward, IconArrowDropDown, IconArrowDropUp, IconArrowForward, IconArrowInsert, IconArrowLeft, IconArrowOutward, IconArrowRight, IconArrowUpward, IconAssignment, IconAssignmentAdd, IconAssignmentAddFill, IconAssignmentFill, IconAttachFile, IconAttachFileAdd, IconAttachFileFill, IconAttachMoney, IconAutomation, IconAutomationFill, IconBadge, IconBadgeFill, IconBakeryDining, IconBakeryDiningFill, IconBarChart, IconBarcode, IconBarcodeScanner, IconBarn, IconBarnFill, IconBasement, IconBasementFill, IconBathroom, IconBathroomFill, IconBed, IconBedFill, IconBlock, IconBluetooth, IconBolt, IconBoltFill, IconBookmark, IconBookmarkAdd, IconBookmarkAddFill, IconBookmarkAdded, IconBookmarkAddedFill, IconBookmarkFill, IconBookmarkRemove, IconBookmarkRemoveFill, IconBookmarks, IconBookmarksFill, IconBorderColor, IconBorderColorFill, IconBorderStyle, IconBox, IconBoxAdd, IconBoxAddFill, IconBoxFill, IconBrail, IconBubbleChart, IconBubbleChartFill, IconBuilding, IconBuildingFill, IconBusinessCenter, IconBusinessCenterFill, IconCalendarViewDay, IconCalendarViewDayFill, IconCalendarViewWeek, IconCalendarViewWeekFill, IconCall, IconCallEnd, IconCallEndFill, IconCallFill, IconCampaign, IconCampaignFill, IconCancel, IconCancelFill, IconCasino, IconCasinoFill, IconCat, IconCatFill, IconCategory, IconCategoryFill, IconChartData, IconChartDataFill, IconChat, IconChatBubble, IconChatBubbleFill, IconChatFill, IconCheck, IconCheckCircle, IconCheckCircleFill, IconCheckFill, IconChecklist, IconChevronLeft, IconChevronRight, IconCircle, IconCircleFill, IconCleaningServices, IconCleaningServicesFill, IconClose, IconCloseFill, IconClosedCaption, IconClosedCaptionDisabled, IconClosedCaptionDisabledFill, IconClosedCaptionFill, IconCloud, IconCloudDone, IconCloudDoneFill, IconCloudDownload, IconCloudDownloadFill, IconCloudFill, IconCloudOff, IconCloudOffFill, IconCloudUpload, IconCloudUploadFill, IconCode, IconCognition, IconCognitionFill, IconColorBlind, IconColors, IconCommute, IconCommuteFill, IconComputer, IconComputerFill, IconConstruction, IconContactMail, IconContactMailFill, IconContactPage, IconContactPageFill, IconContactPhone, IconContactPhoneFill, IconContactSupport, IconContactSupportFill, IconContacts, IconContactsFill, IconContentCopy, IconContentCopyFill, IconContentPasteOff, IconContentPasteSearch, IconContrast, IconContrastCircle, IconContrastFill, IconContrastSquare, IconCopyright, IconCopyrightFill, IconCrawlspace, IconCrawlspaceFill, IconCreditCard, IconCreditCardFill, IconDangerous, IconDangerousFill, IconDarkMode, IconDarkModeFill, IconDashboard, IconDashboard2, IconDashboard2Fill, IconDashboardCustomize, IconDashboardCustomizeFill, IconDashboardFill, IconDatabase, IconDatabaseFill, IconDelete, IconDeleteFill, IconDeleteForever, IconDeleteForeverFill, IconDeployedCode, IconDeployedCodeAccount, IconDeployedCodeAccountFill, IconDeployedCodeAlert, IconDeployedCodeAlertFill, IconDeployedCodeFill, IconDeployedCodeHistory, IconDeployedCodeHistoryFill, IconDeployedCodeUpdate, IconDeployedCodeUpdateFill, IconDescription, IconDescriptionFill, IconDesktopWindows, IconDesktopWindowsFill, IconDeviceThermostat, IconDevices, IconDevicesFill, IconDialpad, IconDiamond, IconDiamondFill, IconDirections, IconDirectionsBike, IconDirectionsBoat, IconDirectionsBoatFill, IconDirectionsBus, IconDirectionsBusFill, IconDirectionsCar, IconDirectionsCarFill, IconDirectionsFill, IconDirectionsSubway, IconDirectionsSubwayFill, IconDirectionsWalk, IconDiscover, IconDiversity1, IconDiversity1Fill, IconDoNotDisturbOn, IconDoNotDisturbOnFill, IconDocumentScanner, IconDocumentScannerFill, IconDog, IconDogFill, IconDonutLarge, IconDonutSmall, IconDonutSmallFill, IconDoorOpen, IconDoorOpenFill, IconDraft, IconDraftFill, IconDrafts, IconDraftsFill, IconDragHandle, IconDragIndicator, IconDraw, IconDrawFill, IconEdit, IconEditFill, IconEditNote, IconEditNoteFill, IconEditRoad, IconEditRoadFill, IconEditSquare, IconEditSquareFill, IconEgg, IconEggFill, IconEmojiLanguage, IconEmojiLanguageFill, IconEmoticon, IconEncrypted, IconEncryptedFill, IconError, IconErrorFill, IconEvent, IconEventFill, IconEventNote, IconEventNoteFill, IconExercise, IconExerciseFill, IconExperiment, IconExperimentFill, IconExplore, IconExploreFill, IconExtension, IconExtensionFill, IconExtensionOff, IconExtensionOffFill, IconFaceId, IconFaceRetouchingOff, IconFaceRetouchingOffFill, IconFacebook, IconFacebookWhite, IconFamilyHome, IconFamilyHomeFill, IconFastfood, IconFastfoodFill, IconFavorite, IconFavoriteFill, IconFileDownload, IconFileUpload, IconFilterList, IconFinance, IconFingerprint, IconFingerprintOff, IconFireplace, IconFireplaceFill, IconFitScreen, IconFitScreenFill, IconFitnessCenter, IconFlag, IconFlagAfghanistan, IconFlagAlandIsland, IconFlagAlbania, IconFlagAlgeria, IconFlagAmericanSamoa, IconFlagAndorra, IconFlagAngola, IconFlagAnguilla, IconFlagAntiguaAndBarbuda, IconFlagArgentina, IconFlagArmenia, IconFlagAruba, IconFlagAustralia, IconFlagAustria, IconFlagAzerbaijan, IconFlagBahamas, IconFlagBahrain, IconFlagBangladesh, IconFlagBarbados, IconFlagBelarus, IconFlagBelgium, IconFlagBelize, IconFlagBenin, IconFlagBermuda, IconFlagBhutan, IconFlagBolivia, IconFlagBonaire, IconFlagBosniaAndHerzegovina, IconFlagBotswana, IconFlagBrazil, IconFlagBrunei, IconFlagBulgaria, IconFlagBurkinaFaso, IconFlagBurundi, IconFlagCambodia, IconFlagCameroon, IconFlagCanada, IconFlagCaymanIslands, IconFlagCentralAfricanRepublic, IconFlagChad, IconFlagChile, IconFlagChina, IconFlagChristmasIsland, IconFlagCocosIslands, IconFlagColombia, IconFlagComoros, IconFlagCookIsland, IconFlagCostaRica, IconFlagCroatia, IconFlagCuba, IconFlagCuracao, IconFlagCyprus, IconFlagCzechRepublic, IconFlagDemocraticRepublicOfTheCongo, IconFlagDenmark, IconFlagDjibouti, IconFlagDominica, IconFlagDominicanRepublic, IconFlagEcuador, IconFlagEgypt, IconFlagElSalvador, IconFlagEquatorialGuinea, IconFlagEritrea, IconFlagEstonia, IconFlagEswatini, IconFlagEthiopia, IconFlagFalklandIslands, IconFlagFaroeIslands, IconFlagFederatedStatesOfMicronesia, IconFlagFiji, IconFlagFill, IconFlagFinland, IconFlagFrance, IconFlagFrenchGuiana, IconFlagFrenchPolynesia, IconFlagGabon, IconFlagGambia, IconFlagGeorgia, IconFlagGermany, IconFlagGhana, IconFlagGibraltar, IconFlagGreece, IconFlagGreeland, IconFlagGrenada, IconFlagGrenadines, IconFlagGuam, IconFlagGuatemala, IconFlagGuernsey, IconFlagGuinea, IconFlagGuineaBissau, IconFlagGuyana, IconFlagHaiti, IconFlagHonduras, IconFlagHongKong, IconFlagHungary, IconFlagIceland, IconFlagIndia, IconFlagIndianOceanTerritory, IconFlagIndonesia, IconFlagIran, IconFlagIraq, IconFlagIreland, IconFlagIsleOfMan, IconFlagIsrael, IconFlagItaly, IconFlagJamaica, IconFlagJapan, IconFlagJersey, IconFlagJordan, IconFlagKazakhstan, IconFlagKenya, IconFlagKiribati, IconFlagKuwait, IconFlagKyrgyzstan, IconFlagLaos, IconFlagLatvia, IconFlagLebanon, IconFlagLesotho, IconFlagLiberia, IconFlagLibya, IconFlagLiechtenstein, IconFlagLithuania, IconFlagLuxembourg, IconFlagMacau, IconFlagMadagascar, IconFlagMalasia, IconFlagMalawi, IconFlagMaldives, IconFlagMali, IconFlagMalta, IconFlagMarshallIslands, IconFlagMartinique, IconFlagMauritania, IconFlagMauritius, IconFlagMexico, IconFlagMoldova, IconFlagMonaco, IconFlagMongolia, IconFlagMontenegro, IconFlagMontserrat, IconFlagMorroco, IconFlagMozambique, IconFlagMyanmar, IconFlagNamibia, IconFlagNauru, IconFlagNepal, IconFlagNetherlands, IconFlagNewZealand, IconFlagNicaragua, IconFlagNiger, IconFlagNigeria, IconFlagNiue, IconFlagNorfolkIsland, IconFlagNorthKorea, IconFlagNorthMacedonia, IconFlagNorthernMarianaIslands, IconFlagNorway, IconFlagOman, IconFlagPakistan, IconFlagPalau, IconFlagPalestine, IconFlagPanama, IconFlagPapuaNewGuinea, IconFlagParaguay, IconFlagPeru, IconFlagPhilippines, IconFlagPitcairnIslands, IconFlagPoland, IconFlagPortugal, IconFlagPuertoRico, IconFlagQatar, IconFlagRepublicOfTheCongo, IconFlagRomania, IconFlagRussia, IconFlagRwanda, IconFlagSaintBarthelemy, IconFlagSamoa, IconFlagSanMarino, IconFlagSaoTomeAndPrincipe, IconFlagSaudiArabia, IconFlagSenegal, IconFlagSerbia, IconFlagSeychelles, IconFlagSierraLeone, IconFlagSingapore, IconFlagSintMaarten, IconFlagSlovakia, IconFlagSlovenia, IconFlagSolomonIslands, IconFlagSomalia, IconFlagSouthAfrica, IconFlagSouthKorea, IconFlagSouthSudan, IconFlagSpain, IconFlagSriLanka, IconFlagStKittsNevis, IconFlagStLucia, IconFlagSudan, IconFlagSuriname, IconFlagSweden, IconFlagSwitzerland, IconFlagSyria, IconFlagTaiwan, IconFlagTajikistan, IconFlagTanzania, IconFlagThailand, IconFlagTimorLeste, IconFlagTogo, IconFlagTokelau, IconFlagTonga, IconFlagTrinidadAndTobago, IconFlagTunisia, IconFlagTurkey, IconFlagTurkmenistan, IconFlagTurksAndCaicos, IconFlagTuvalu, IconFlagUganda, IconFlagUkraine, IconFlagUnitedArabEmirates, IconFlagUnitedKingdom, IconFlagUnitedKingdomOfGreatBritainAndNorthernIreland, IconFlagUnitedStates, IconFlagUruguay, IconFlagUzbekistan, IconFlagVanuatu, IconFlagVenezuela, IconFlagVietnam, IconFlagVirginIslands, IconFlagVirginIslandsBritish, IconFlagWestSahara, IconFlagYemen, IconFlagZambia, IconFlagZimbabwe, IconFlashAuto, IconFlashAutoFill, IconFlight, IconFlowchart, IconFlowchartFill, IconFolder, IconFolderFill, IconFolderOpen, IconFolderOpenFill, IconFolderShared, IconFolderSharedFill, IconFontDownload, IconFontDownloadFill, IconForSaleSign, IconForYou, IconForYouFill, IconForest, IconForestFill, IconForkRight, IconFormatAlignCenter, IconFormatAlignJustify, IconFormatAlignLeft, IconFormatAlignRight, IconFormatColorFill, IconFormatLetterSpacingWide, IconFormatLetterSpacingWider, IconFormatLineSpacing, IconFormatListBulleted, IconFormatListNumbered, IconFormatShapes, IconFormatShapesFill, IconFormatSize, IconForum, IconForumFill, IconForward, IconForwardToInbox, IconForwardToInboxFill, IconFullStackedBarChart, IconFullscreen, IconFullscreenExit, IconFullscreenFill, IconGTranslate, IconGalleryThumbnail, IconGalleryThumbnailFill, IconGarage, IconGarageFill, IconGlobe, IconGoogle, IconGooglePlay, IconGooglepay, IconGridView, IconGridViewFill, IconGroup, IconGroupFill, IconGroupedBarChart, IconHail, IconHandDraw, IconHandDrawFill, IconHandshake, IconHandshakeFill, IconHandyman, IconHandymanFill, IconHeadMountedDevice, IconHeadMountedDeviceFill, IconHeadsetMic, IconHeadsetMicFill, IconHearing, IconHeat, IconHeatPump, IconHeatPumpFill, IconHelp, IconHelpFill, IconHexagon, IconHexagonFill, IconHistory, IconHome, IconHomeAdd, IconHomeAddFill, IconHomeCheck, IconHomeCheckFill, IconHomeFill, IconHomeLock, IconHomeLockFill, IconHomeMonitize, IconHomeMonitizeFill, IconHomeMove, IconHomeMoveFill, IconHomeRemove, IconHomeRemoveFill, IconHomeStorage, IconHomeStorageFill, IconHomeTimer, IconHomeTimerFill, IconHomeWork, IconHomeWorkFill, IconHorizontalDistribute, IconHub, IconHubFill, IconHvac, IconHvacFill, IconIcecream, IconIcecreamFill, IconIdCard, IconIdCardFill, IconImage, IconImageFill, IconInProgress, IconInbox, IconInboxFill, IconIncompleteCircle, IconInfo, IconInfoFill, IconInkEraser, IconInkEraserFill, IconInput, IconInstagramBlack, IconInstagramWhite, IconInventory, IconInventory2, IconInventory2Fill, IconInventoryFill, IconIosShare, IconKebabDining, IconKebabDiningFill, IconKey, IconKeyFill, IconKeyOff, IconKeyOffFill, IconKeyVertical, IconKeyVerticalFill, IconKeyboard, IconKeyboardArrowDown, IconKeyboardArrowUp, IconKeyboardDoubleArrowLeft, IconKeyboardDoubleArrowRight, IconKeyboardFill, IconLabel, IconLabelFill, IconLabelImportant, IconLabelImportantFill, IconLan, IconLanFill, IconLandscape, IconLandscapeFill, IconLanguage, IconLaundry, IconLaundryFill, IconLayers, IconLayersFill, IconLeaderboard, IconLeaderboardFill, IconLeftPanelClose, IconLeftPanelCloseFill, IconLeftPanelOpen, IconLeftPanelOpenFill, IconLicense, IconLicenseFill, IconLight, IconLightFill, IconLightMode, IconLightModeFill, IconLightbulb, IconLightbulbFill, IconLink, IconLinkFill, IconLinkOff, IconLinkedin, IconLinkedinWhite, IconList, IconListChange, IconListFill, IconLocalCafe, IconLocalCafeFill, IconLocalParking, IconLocalShipping, IconLocalShippingFill, IconLocalTaxi, IconLocalTaxiFill, IconLocationDisabled, IconLocationOff, IconLocationOffFill, IconLocationOn, IconLocationOnFill, IconLocationSearching, IconLock, IconLockFill, IconLockOpen, IconLockOpenFill, IconLogin, IconLogout, IconLowVisibility, IconMail, IconMailFill, IconMailLock, IconMailLockFill, IconMan, IconManFill, IconManageAccounts, IconManageAccountsFill, IconMap, IconMapFill, IconMarkAsUnread, IconMarkAsUnreadFill, IconMarkEmailRead, IconMarkEmailReadFill, IconMarkEmailUnread, IconMarkEmailUnreadFill, IconMastercard, IconMenu, IconMenuBook, IconMenuBookFill, IconMenuFill, IconMerge, IconMic, IconMicFill, IconMicOff, IconMicOffFill, IconModeCool, IconModeCoolOff, IconModeFan, IconModeFanFill, IconModeFanOff, IconModeFanOffFill, IconModeHeat, IconModeHeatFill, IconMoneyOff, IconMonitor, IconMonitorFill, IconMood, IconMoodBad, IconMoodBadFill, IconMoodFill, IconMoreHoriz, IconMoreVert, IconMoveLocation, IconMoveLocationFill, IconMoveToInbox, IconMoveToInboxFill, IconMultilineChart, IconMusicNote, IconMyLocation, IconMyLocationFill, IconNavigation, IconNavigationFill, IconNearMe, IconNearMeFill, IconNoSound, IconNoSoundFill, IconNorth, IconNorthWest, IconNoteAdd, IconNoteAddFill, IconNotifications, IconNotificationsFill, IconNotificationsOff, IconNotificationsOffFill, IconNutrition, IconNutritionFill, IconOktaBlack, IconOktaWhite, IconOmniChatbox, IconOmniChatboxFill, IconOpenInFull, IconOpenInNew, IconOpportunities, IconOrders, IconOrdersFill, IconOtherHouses, IconOtherHousesFill, IconOutbox, IconOutboxFill, IconOutgoingMail, IconOutgoingMailFill, IconOutlook, IconOvenGen, IconOvenGenFill, IconPackage, IconPackage2, IconPackage2Fill, IconPackageFill, IconPaid, IconPaidFill, IconPalette, IconPaletteFill, IconPanZoom, IconPartnerExchange, IconPartnerExchangeFill, IconPause, IconPauseCircle, IconPauseCircleFill, IconPauseFill, IconPayments, IconPaymentsFill, IconPaypal, IconPendingActions, IconPentagon, IconPentagonFill, IconPercent, IconPerson, IconPersonAdd, IconPersonAddDisabled, IconPersonAddDisabledFill, IconPersonAddFill, IconPersonBook, IconPersonBookFill, IconPersonCancel, IconPersonCancelFill, IconPersonCheck, IconPersonCheckFill, IconPersonFill, IconPersonRemove, IconPersonRemoveFill, IconPersonSearch, IconPersonSearchFill, IconPets, IconPhotoCamera, IconPhotoCameraFill, IconPieChart, IconPieChartFill, IconPin, IconPinFill, IconPinterest, IconPinterestBlack, IconPlayArrow, IconPlayArrowFill, IconPlayCircle, IconPlayCircleFill, IconPlayPause, IconPlaylistAdd, IconPlaylistAddCheck, IconPlaylistAddFill, IconPlaylistRemove, IconPolicy, IconPolicyFill, IconPreview, IconPreviewFill, IconPrint, IconPrintFill, IconPublic, IconQrCode, IconQrCodeScanner, IconQuestionMark, IconRampLeft, IconRampRight, IconRealEstateAgent, IconRealEstateAgentFill, IconReceipt, IconReceiptFill, IconReceiptLong, IconReceiptLongFill, IconRecordVoiceOver, IconRecordVoiceOverFill, IconRecycling, IconRefresh, IconRemove, IconRemoveShoppingCart, IconRentSign, IconReplay, IconReply, IconReplyAll, IconReplyFill, IconReport, IconReportFill, IconResize, IconResizeHandle, IconRestaurant, IconRightPanelClose, IconRightPanelCloseFill, IconRightPanelOpen, IconRightPanelOpenFill, IconRoofing, IconRoofingFill, IconRoomPreferences, IconRoomPreferencesFill, IconRoundaboutLeft, IconRoundaboutRight, IconRoute, IconRouteFill, IconSave, IconSaveFill, IconSaveSearch, IconSaveSearchFill, IconScatterPlot, IconScatterPlotFill, IconSchedule, IconScheduleFill, IconScheduleSend, IconScheduleSendFill, IconSchema, IconSchemaFill, IconSchool, IconSchoolFill, IconScience, IconScienceFill, IconScore, IconScoreFill, IconSearch, IconSegment, IconSell, IconSellFill, IconSeller, IconSellerFill, IconSend, IconSendFill, IconSentimentDissatisfied, IconSentimentDissatisfiedFill, IconSentimentExtremelyDissatisfied, IconSentimentExtremelyDissatisfiedFill, IconSentimentNeutral, IconSentimentNeutralFill, IconSentimentSatisfied, IconSentimentSatisfiedFill, IconSentimentVeryDissatisfied, IconSentimentVeryDissatisfiedFill, IconSentimentVerySatisfied, IconSentimentVerySatisfiedFill, IconSettings, IconSettingsAccessibility, IconSettingsFill, IconShare, IconShareFill, IconShippingContainer, IconShippingContainerFill, IconShoppingBag, IconShoppingBagFill, IconShoppingCart, IconShoppingCartCheckout, IconShoppingCartFill, IconShoppingCartOff, IconShoppingCartOffFill, IconSick, IconSickFill, IconSignLanguage, IconSignLanguageFill, IconSignalCellularAlt, IconSkipNext, IconSkipNextFill, IconSkipPrevious, IconSkipPreviousFill, IconSlabSerif, IconSlabSerifFill, IconSmartphone, IconSmartphoneFill, IconSms, IconSmsFill, IconSort, IconSortByAlpha, IconSortByReverseAlpha, IconSortFill, IconSouth, IconSouthEast, IconSouthFill, IconSouthWest, IconSquare, IconSquareFill, IconSquareFoot, IconStackedBarChart, IconStackedEmail, IconStackedEmailFill, IconStacks, IconStacksFill, IconStar, IconStarFill, IconStop, IconStopCircle, IconStopCircleFill, IconStopFill, IconStorefront, IconStorefrontFill, IconStraight, IconStraightFill, IconStraighten, IconStraightenFill, IconStressManagement, IconStressManagementFill, IconSubject, IconSubway, IconSubwayFill, IconSwapVert, IconSwapVerticalCircle, IconSwapVerticalCircleFill, IconSymbolAfghanistan, IconSymbolAlandIsland, IconSymbolAlbania, IconSymbolAlgeria, IconSymbolAmericanSamoa, IconSymbolAndorra, IconSymbolAngola, IconSymbolAnguilla, IconSymbolAntiguaAndBarbuda, IconSymbolArgentina, IconSymbolArmenia, IconSymbolAruba, IconSymbolAustralia, IconSymbolAustria, IconSymbolAzerbaijan, IconSymbolBahamas, IconSymbolBahrain, IconSymbolBangladesh, IconSymbolBarbados, IconSymbolBelarus, IconSymbolBelgium, IconSymbolBelize, IconSymbolBenin, IconSymbolBermuda, IconSymbolBhutan, IconSymbolBolivia, IconSymbolBonaire, IconSymbolBosniaAndHerzegovina, IconSymbolBotswana, IconSymbolBrazil, IconSymbolBrunei, IconSymbolBulgaria, IconSymbolBurkinaFaso, IconSymbolBurundi, IconSymbolCambodia, IconSymbolCameroon, IconSymbolCanada, IconSymbolCaymanIslands, IconSymbolCentralAfricanRepublic, IconSymbolChad, IconSymbolChile, IconSymbolChina, IconSymbolChristmasIsland, IconSymbolCocosIslands, IconSymbolColombia, IconSymbolComoros, IconSymbolCookIsland, IconSymbolCostaRica, IconSymbolCroatia, IconSymbolCuba, IconSymbolCuracao, IconSymbolCyprus, IconSymbolCzechRepublic, IconSymbolDemocraticRepublicOfTheCongo, IconSymbolDenmark, IconSymbolDjibouti, IconSymbolDominica, IconSymbolDominicanRepublic, IconSymbolEcuador, IconSymbolEgypt, IconSymbolElSalvador, IconSymbolEquatorialGuinea, IconSymbolEritrea, IconSymbolEstonia, IconSymbolEswatini, IconSymbolEthiopia, IconSymbolFalklandIslands, IconSymbolFaroeIslands, IconSymbolFederatedStatesOfMicronesia, IconSymbolFiji, IconSymbolFinland, IconSymbolFrance, IconSymbolFrenchGuiana, IconSymbolFrenchPolynesia, IconSymbolGabon, IconSymbolGambia, IconSymbolGeorgia, IconSymbolGermany, IconSymbolGhana, IconSymbolGibraltar, IconSymbolGreece, IconSymbolGreeland, IconSymbolGrenada, IconSymbolGrenadines, IconSymbolGuam, IconSymbolGuatemala, IconSymbolGuernsey, IconSymbolGuinea, IconSymbolGuineaBissau, IconSymbolGuyana, IconSymbolHaiti, IconSymbolHonduras, IconSymbolHongKong, IconSymbolHungary, IconSymbolIceland, IconSymbolIndia, IconSymbolIndianOceanTerritory, IconSymbolIndonesia, IconSymbolIran, IconSymbolIraq, IconSymbolIreland, IconSymbolIsleOfMan, IconSymbolIsrael, IconSymbolItaly, IconSymbolJamaica, IconSymbolJapan, IconSymbolJersey, IconSymbolJordan, IconSymbolKazakhstan, IconSymbolKenya, IconSymbolKiribati, IconSymbolKuwait, IconSymbolKyrgyzstan, IconSymbolLaos, IconSymbolLatvia, IconSymbolLebanon, IconSymbolLesotho, IconSymbolLiberia, IconSymbolLibya, IconSymbolLiechtenstein, IconSymbolLithuania, IconSymbolLuxembourg, IconSymbolMacau, IconSymbolMadagascar, IconSymbolMalasia, IconSymbolMalawi, IconSymbolMaldives, IconSymbolMali, IconSymbolMalta, IconSymbolMarshallIslands, IconSymbolMartinique, IconSymbolMauritania, IconSymbolMauritius, IconSymbolMexico, IconSymbolMoldova, IconSymbolMonaco, IconSymbolMongolia, IconSymbolMontenegro, IconSymbolMontserrat, IconSymbolMorroco, IconSymbolMozambique, IconSymbolMyanmar, IconSymbolNamibia, IconSymbolNauru, IconSymbolNepal, IconSymbolNetherlands, IconSymbolNewZealand, IconSymbolNicaragua, IconSymbolNiger, IconSymbolNigeria, IconSymbolNiue, IconSymbolNorfolkIsland, IconSymbolNorthKorea, IconSymbolNorthMacedonia, IconSymbolNorthernMarianaIslands, IconSymbolNorway, IconSymbolOman, IconSymbolPakistan, IconSymbolPalau, IconSymbolPalestine, IconSymbolPanama, IconSymbolPapuaNewGuinea, IconSymbolParaguay, IconSymbolPeru, IconSymbolPhilippines, IconSymbolPitcairnIslands, IconSymbolPoland, IconSymbolPortugal, IconSymbolPuertoRico, IconSymbolQatar, IconSymbolRepublicOfTheCongo, IconSymbolRomania, IconSymbolRussia, IconSymbolRwanda, IconSymbolSaintBarthelemy, IconSymbolSamoa, IconSymbolSanMarino, IconSymbolSaoTomeAndPrincipe, IconSymbolSaudiArabia, IconSymbolSenegal, IconSymbolSerbia, IconSymbolSeychelles, IconSymbolSierraLeone, IconSymbolSingapore, IconSymbolSintMaarten, IconSymbolSlovakia, IconSymbolSlovenia, IconSymbolSolomonIslands, IconSymbolSomalia, IconSymbolSouthAfrica, IconSymbolSouthKorea, IconSymbolSouthSudan, IconSymbolSpain, IconSymbolSriLanka, IconSymbolStKittsNevis, IconSymbolStLucia, IconSymbolSudan, IconSymbolSuriname, IconSymbolSweden, IconSymbolSwitzerland, IconSymbolSyria, IconSymbolTaiwan, IconSymbolTajikistan, IconSymbolTanzania, IconSymbolThailand, IconSymbolTimorLeste, IconSymbolTogo, IconSymbolTokelau, IconSymbolTonga, IconSymbolTrinidadAndTobago, IconSymbolTunisia, IconSymbolTurkey, IconSymbolTurkmenistan, IconSymbolTurksAndCaicos, IconSymbolTuvalu, IconSymbolUganda, IconSymbolUkraine, IconSymbolUnitedArabEmirates, IconSymbolUnitedKingdom, IconSymbolUnitedKingdomOfGreatBritainAndNorthernIreland, IconSymbolUnitedStates, IconSymbolUruguay, IconSymbolUzbekistan, IconSymbolVanuatu, IconSymbolVenezuela, IconSymbolVietnam, IconSymbolVirginIslands, IconSymbolVirginIslandsBritish, IconSymbolWestSahara, IconSymbolYemen, IconSymbolZambia, IconSymbolZimbabwe, IconSync, IconTableChart, IconTableChartFill, IconTableChartView, IconTableChartViewFill, IconTablet, IconTabletFill, IconTag, IconTaxiAlert, IconTaxiAlertFill, IconThermometer, IconThermometerAdd, IconThermometerFill, IconThermometerGain, IconThermometerGainFill, IconThermometerLoss, IconThermometerLossFill, IconThermostat, IconThermostatAuto, IconThermostatFill, IconThumbDown, IconThumbDownFill, IconThumbUp, IconThumbUpFill, IconTimeline, IconTimer, IconTimerFill, IconTitle, IconToken, IconTokenFill, IconTrain, IconTrainFill, IconTranslate, IconTravel, IconTravelExplore, IconTravelFill, IconTrendingDown, IconTrendingFlat, IconTrendingUp, IconTriangle, IconTriangleFill, IconTrip, IconTripFill, IconTrophy, IconTrophyFill, IconTune, IconTurnLeft, IconTurnRight, IconTurnSharpLeft, IconTurnSlightLeft, IconTurnSlightRight, IconTv, IconTvFill, IconUTurnLeft, IconUTurnRight, IconUnarchive, IconUnarchiveFill, IconUndo, IconUnsubscribe, IconUnsubscribeFill, IconUpcoming, IconUpcomingFill, IconVerifiedUser, IconVerifiedUserFill, IconVerticalAlignBottom, IconVerticalAlignCenter, IconVerticalAlignTop, IconVerticalDistribute, IconVideoLibrary, IconVideoLibraryFill, IconVideocam, IconVideocamFill, IconViewCarousel, IconViewCarouselFill, IconViewColumn, IconViewColumn2, IconViewColumn2Fill, IconViewColumnFill, IconViewDay, IconViewDayFill, IconViewInAr, IconViewInArFill, IconViewList, IconViewListFill, IconViewModule, IconViewModuleFill, IconVilla, IconVillaFill, IconVisa, IconVisibility, IconVisibilityFill, IconVisibilityOff, IconVisibilityOffFill, IconVoicemail, IconVolumeDown, IconVolumeDownFill, IconVolumeMute, IconVolumeMuteFill, IconVolumeOff, IconVolumeOffFill, IconVolumeUp, IconVolumeUpFill, IconVolunteerActivism, IconVolunteerActivismFill, IconWallet, IconWarehouse, IconWarehouseFill, IconWarning, IconWarningFill, IconWc, IconWest, IconWifi, IconWifiCalling, IconWifiCallingFill, IconWifiFill, IconWifiHome, IconWifiHomeFill, IconWineBar, IconWineBarFill, IconWoman, IconWork, IconWorkFill, IconX, IconXWhite, IconYoutube, IconYoutubeBlack, IconYoutubeWhite, IconZoomIn, IconZoomInMap, IconZoomOut, IconZoomOutMap, KeyNavigationUtility, ThemeService, UIAccordion, UIAccordionSection, UIAvatar, UIAvatarGroup, UIBadge, UIBannerAlert, UIBreadcrumb, UIButton, UICalendar, UICard, UICheckbox, UICheckboxGroup, UICheckboxGroupField, UICheckboxOption, UIChip, UIChipGroup, UIDatePicker, UIDatePickerField, UIDialog, UIDivider, UIFab, UIField, UIFlexDirective, UIFloatingDirective, UIFocusTrapDirective, UIIcon, UIInlineAlert, UIInput, UIInputField, UIInputNumber, UIInputNumberField, UIInputPhone, UIInputPhoneField, UIKeyNavigationDirective, UILinkDirective, UIListItem, UIMatchParentHeightDirective, UIMenu, UIModal, UIOutsideClickDirective, UIPagination, UIPortalDirective, UIRadio, UIRadioGroup, UIRadioGroupField, UIRadioOption, UIScrim, UISegmentedControl, UISelect, UISelectField, UISwitch, UISwitchOption, UITabGroup, UITabList, UITabListUtility, UITable, UITableCell, UITag, UITextarea, UITextareaField, UITooltip, UITooltipDirective, UITxtDirective, describedById, errorMessageId, formatCell, labelledById, updateBrandStylesheet };
69566
69630
  //# sourceMappingURL=bspk-ui-ngx.mjs.map