@bspk/ui-ngx 1.2.3 → 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.
@@ -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
@@ -62078,6 +62084,16 @@ class FloatingUtility {
62078
62084
  * @phase Dev
62079
62085
  */
62080
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
+ */
62081
62097
  value = model(undefined, ...(ngDevMode ? [{ debugName: "value", alias: 'ui-tooltip' }] : [{
62082
62098
  alias: 'ui-tooltip',
62083
62099
  }]));
@@ -62226,7 +62242,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
62226
62242
  },
62227
62243
  }]
62228
62244
  }], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "ui-tooltip", required: false }] }, { type: i0.Output, args: ["ui-tooltipChange"] }] } });
62229
- /** Single use component to display tooltip content. */
62245
+ /**
62246
+ * Single use component to display tooltip content.
62247
+ *
62248
+ * @ignore
62249
+ */
62230
62250
  class UITooltip {
62231
62251
  arrow = viewChild('arrow', ...(ngDevMode ? [{ debugName: "arrow" }] : []));
62232
62252
  id = signal(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
@@ -62264,6 +62284,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
62264
62284
  * Utility to manage tooltip properties and behavior.
62265
62285
  *
62266
62286
  * Should be used in components that require tooltip functionality.
62287
+ *
62288
+ * @ignore
62267
62289
  */
62268
62290
  class TooltipUtility {
62269
62291
  renderer;
@@ -62458,7 +62480,7 @@ class UIAvatar {
62458
62480
  <span aria-hidden="true" data-initials>
62459
62481
  {{ computedInitials }}
62460
62482
  </span>
62461
- }`, 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 });
62462
62484
  }
62463
62485
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIAvatar, decorators: [{
62464
62486
  type: Component,
@@ -62483,7 +62505,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
62483
62505
  '[attr.data-size]': 'size()',
62484
62506
  '(click)': 'handleOnClick($event)',
62485
62507
  '(keydown)': 'handleKeyDown($event)',
62486
- }, 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"] }]
62487
62509
  }], propDecorators: { onClick: [{
62488
62510
  type: Output
62489
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 }] }] } });
@@ -62548,6 +62570,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
62548
62570
  * @phase Dev
62549
62571
  */
62550
62572
  class UIListItem {
62573
+ /** Emits when the ListItem is activated by click or keyboard interaction. */
62551
62574
  onClick = new EventEmitter();
62552
62575
  active = input(...(ngDevMode ? [undefined, { debugName: "active" }] : []));
62553
62576
  owner = input(...(ngDevMode ? [undefined, { debugName: "owner" }] : []));
@@ -63232,7 +63255,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
63232
63255
  */
63233
63256
  class UIIcon {
63234
63257
  icon = input.required(...(ngDevMode ? [{ debugName: "icon" }] : []));
63235
- width = input(...(ngDevMode ? [undefined, { debugName: "width" }] : []));
63258
+ width = input('24', ...(ngDevMode ? [{ debugName: "width" }] : []));
63236
63259
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
63237
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()) {
63238
63261
  <ng-container [ngComponentOutlet]="icon()" [ngComponentOutletInputs]="{ width: width() }"></ng-container>
@@ -63373,7 +63396,7 @@ class UIButton {
63373
63396
  }
63374
63397
  </ng-content>
63375
63398
  <span [attr.aria-hidden]="true" [attr.data-touch-target]="true"></span>
63376
- </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 });
63377
63400
  }
63378
63401
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIButton, decorators: [{
63379
63402
  type: Component,
@@ -63413,7 +63436,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
63413
63436
  <span [attr.aria-hidden]="true" [attr.data-touch-target]="true"></span>
63414
63437
  </button>`, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, UIIcon, UITooltipDirective], encapsulation: ViewEncapsulation.None, host: {
63415
63438
  style: 'display: contents;',
63416
- }, 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"] }]
63417
63440
  }], propDecorators: { onClick: [{
63418
63441
  type: Output
63419
63442
  }], onFocus: [{
@@ -64155,16 +64178,17 @@ class UIBreadcrumb {
64155
64178
  items = input.required(...(ngDevMode ? [{ debugName: "items" }] : []));
64156
64179
  id = input(uniqueId('breadcrumb-'), ...(ngDevMode ? [{ debugName: "id" }] : []));
64157
64180
  scrollLimit = input(...(ngDevMode ? [undefined, { debugName: "scrollLimit" }] : []));
64181
+ variant = input('default', ...(ngDevMode ? [{ debugName: "variant" }] : []));
64158
64182
  shouldRender = computed(() => this.items().length >= 2, ...(ngDevMode ? [{ debugName: "shouldRender" }] : []));
64159
64183
  firstItem = computed(() => this.items()[0], ...(ngDevMode ? [{ debugName: "firstItem" }] : []));
64160
64184
  lastItem = computed(() => this.items()[this.items().length - 1], ...(ngDevMode ? [{ debugName: "lastItem" }] : []));
64161
64185
  middleItems = computed(() => this.items().length > 2 ? this.items().slice(1, this.items().length - 1) : [], ...(ngDevMode ? [{ debugName: "middleItems" }] : []));
64162
64186
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIBreadcrumb, deps: [], target: i0.ɵɵFactoryTarget.Component });
64163
- 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()) {
64164
64188
  <nav [attr.aria-label]="ariaLabel() || 'Breadcrumb'" [attr.data-bspk]="'breadcrumb'" [attr.id]="id()">
64165
64189
  <ol>
64166
64190
  <li>
64167
- <a ui-link [href]="firstItem().href">{{ firstItem().label }}</a>
64191
+ <a ui-link size="small" [variant]="variant()" [href]="firstItem().href">{{ firstItem().label }}</a>
64168
64192
  <icon-chevron-right aria-hidden="true" width="24" />
64169
64193
  </li>
64170
64194
  @if (items().length > 5) {
@@ -64174,12 +64198,12 @@ class UIBreadcrumb {
64174
64198
  } @else {
64175
64199
  @for (item of middleItems(); track item.href) {
64176
64200
  <li>
64177
- <a ui-link [href]="item.href">{{ item.label }}</a>
64201
+ <a ui-link size="small" [variant]="variant()" [href]="item.href">{{ item.label }}</a>
64178
64202
  <icon-chevron-right aria-hidden="true" width="24" />
64179
64203
  </li>
64180
64204
  }
64181
64205
  }
64182
- <li [attr.aria-current]="'page'" [ui-txt]="'body-base'">
64206
+ <li [attr.aria-current]="'page'" [ui-txt]="'labels-small'">
64183
64207
  {{ lastItem().label }}
64184
64208
  </li>
64185
64209
  </ol>
@@ -64192,7 +64216,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64192
64216
  <nav [attr.aria-label]="ariaLabel() || 'Breadcrumb'" [attr.data-bspk]="'breadcrumb'" [attr.id]="id()">
64193
64217
  <ol>
64194
64218
  <li>
64195
- <a ui-link [href]="firstItem().href">{{ firstItem().label }}</a>
64219
+ <a ui-link size="small" [variant]="variant()" [href]="firstItem().href">{{ firstItem().label }}</a>
64196
64220
  <icon-chevron-right aria-hidden="true" width="24" />
64197
64221
  </li>
64198
64222
  @if (items().length > 5) {
@@ -64202,18 +64226,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64202
64226
  } @else {
64203
64227
  @for (item of middleItems(); track item.href) {
64204
64228
  <li>
64205
- <a ui-link [href]="item.href">{{ item.label }}</a>
64229
+ <a ui-link size="small" [variant]="variant()" [href]="item.href">{{ item.label }}</a>
64206
64230
  <icon-chevron-right aria-hidden="true" width="24" />
64207
64231
  </li>
64208
64232
  }
64209
64233
  }
64210
- <li [attr.aria-current]="'page'" [ui-txt]="'body-base'">
64234
+ <li [attr.aria-current]="'page'" [ui-txt]="'labels-small'">
64211
64235
  {{ lastItem().label }}
64212
64236
  </li>
64213
64237
  </ol>
64214
64238
  </nav>
64215
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"] }]
64216
- }], 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 }] }] } });
64217
64241
 
64218
64242
  const COLUMNS_COUNT = 7;
64219
64243
  function parseDate$1(next) {
@@ -64320,27 +64344,26 @@ function getCalendarKeydownHandler(activeDate, setActiveDate, rows, focusActiveD
64320
64344
  * Allows customers to select the date, month, and year.
64321
64345
  *
64322
64346
  * @example
64323
- * <ui-calendar (onChange)="handleChange($event)" />
64347
+ * <ui-calendar (valueChange)="handleChange($event)" />
64324
64348
  *
64325
64349
  * @name Calendar
64326
64350
  * @phase Dev
64327
64351
  */
64328
64352
  class UICalendar {
64329
- onChange = new EventEmitter();
64330
64353
  IconKeyboardDoubleArrowLeft = IconKeyboardDoubleArrowLeft;
64331
64354
  IconKeyboardDoubleArrowRight = IconKeyboardDoubleArrowRight;
64332
64355
  IconChevronLeft = IconChevronLeft;
64333
64356
  IconChevronRight = IconChevronRight;
64334
- value = input(undefined, ...(ngDevMode ? [{ debugName: "value" }] : []));
64357
+ value = model(undefined, ...(ngDevMode ? [{ debugName: "value" }] : []));
64335
64358
  focusTrap = input(false, ...(ngDevMode ? [{ debugName: "focusTrap" }] : []));
64336
64359
  id = input(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
64337
- activeDate = startOfToday();
64360
+ activeDate = signal(startOfToday(), ...(ngDevMode ? [{ debugName: "activeDate" }] : []));
64338
64361
  format = format;
64339
64362
  isSameDay = isSameDay;
64340
64363
  addYears = addYears;
64341
64364
  addMonths = addMonths;
64342
64365
  firstButton = viewChild('firstButton', ...(ngDevMode ? [{ debugName: "firstButton" }] : []));
64343
- lastButton = viewChild('lastButton', ...(ngDevMode ? [{ debugName: "lastButton" }] : []));
64366
+ // private readonly lastButton = viewChild<ElementRef<HTMLButtonElement>>('lastButton');
64344
64367
  grid = viewChild('grid', ...(ngDevMode ? [{ debugName: "grid" }] : []));
64345
64368
  constructor() {
64346
64369
  effect(() => {
@@ -64349,8 +64372,8 @@ class UICalendar {
64349
64372
  });
64350
64373
  }
64351
64374
  get rows() {
64352
- const start = startOfWeek(startOfMonth(this.activeDate), { weekStartsOn: 0 });
64353
- 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 });
64354
64377
  const days = eachDayOfInterval({ start, end });
64355
64378
  const weeks = [];
64356
64379
  for (let i = 0; i < days.length; i += COLUMNS_COUNT) {
@@ -64362,11 +64385,11 @@ class UICalendar {
64362
64385
  return `${this.id() || 'calendar'}-grid`;
64363
64386
  }
64364
64387
  ngOnInit() {
64365
- this.activeDate = this.value() && isValid(this.value()) ? this.value() : startOfToday();
64388
+ this.activeDate.set(this.value() && isValid(this.value()) ? this.value() : startOfToday());
64366
64389
  }
64367
64390
  setFocus() {
64368
64391
  setTimeout(() => {
64369
- const selectedDateId = this.generateOptionId(this.activeDate);
64392
+ const selectedDateId = this.generateOptionId(this.activeDate());
64370
64393
  const selectedDateElement = this.grid()?.nativeElement?.querySelector(`#${selectedDateId}`);
64371
64394
  selectedDateElement?.focus();
64372
64395
  }, 0);
@@ -64375,9 +64398,6 @@ class UICalendar {
64375
64398
  if (this.focusTrap())
64376
64399
  this.setFocus();
64377
64400
  }
64378
- setActiveDate(date) {
64379
- this.activeDate = date;
64380
- }
64381
64401
  generateOptionId(date) {
64382
64402
  return optionIdGenerator(this.id() || 'calendar')(date);
64383
64403
  }
@@ -64390,11 +64410,11 @@ class UICalendar {
64390
64410
  }
64391
64411
  onGridKeydown(event) {
64392
64412
  // Use the shared calendar keydown handler from utils
64393
- getCalendarKeydownHandler(this.activeDate, (date) => {
64394
- this.setActiveDate(date);
64413
+ getCalendarKeydownHandler(this.activeDate(), (date) => {
64414
+ this.activeDate.set(date);
64395
64415
  }, this.rows, () => {
64396
64416
  setTimeout(() => {
64397
- const selectedDateId = this.generateOptionId(this.activeDate);
64417
+ const selectedDateId = this.generateOptionId(this.activeDate());
64398
64418
  const selectedDateElement = this.grid()?.nativeElement?.querySelector(`#${selectedDateId}`);
64399
64419
  selectedDateElement?.focus();
64400
64420
  }, 0);
@@ -64407,14 +64427,14 @@ class UICalendar {
64407
64427
  }
64408
64428
  }
64409
64429
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UICalendar, deps: [], target: i0.ɵɵFactoryTarget.Component });
64410
- 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: `
64411
64431
  <div data-bspk="calendar" [id]="id()">
64412
64432
  <div data-header>
64413
64433
  <ui-button
64414
64434
  label="Previous Year"
64415
64435
  variant="tertiary"
64416
64436
  size="large"
64417
- (click)="setActiveDate(addYears(activeDate, -1))"
64437
+ (click)="this.activeDate.set(addYears(activeDate(), -1))"
64418
64438
  (keydown)="onFirstButtonKeydown($event)"
64419
64439
  #firstButton
64420
64440
  [icon]="IconKeyboardDoubleArrowLeft"
@@ -64424,16 +64444,16 @@ class UICalendar {
64424
64444
  label="Previous Month"
64425
64445
  variant="tertiary"
64426
64446
  size="large"
64427
- (click)="setActiveDate(addMonths(activeDate, -1))"
64447
+ (click)="this.activeDate.set(addMonths(activeDate(), -1))"
64428
64448
  [iconOnly]="true"
64429
64449
  [icon]="IconChevronLeft">
64430
64450
  </ui-button>
64431
- <span data-title>{{ format(activeDate, 'MMMM yyyy') }}</span>
64451
+ <span data-title>{{ format(activeDate(), 'MMMM yyyy') }}</span>
64432
64452
  <ui-button
64433
64453
  label="Next Month"
64434
64454
  variant="tertiary"
64435
64455
  size="large"
64436
- (click)="setActiveDate(addMonths(activeDate, 1))"
64456
+ (click)="this.activeDate.set(addMonths(activeDate(), 1))"
64437
64457
  [iconOnly]="true"
64438
64458
  [icon]="IconChevronRight">
64439
64459
  </ui-button>
@@ -64441,7 +64461,7 @@ class UICalendar {
64441
64461
  label="Next Year"
64442
64462
  variant="tertiary"
64443
64463
  size="large"
64444
- (click)="setActiveDate(addYears(activeDate, 1))"
64464
+ (click)="this.activeDate.set(addYears(activeDate(), 1))"
64445
64465
  #lastButton
64446
64466
  [iconOnly]="true"
64447
64467
  [icon]="IconKeyboardDoubleArrowRight">
@@ -64466,11 +64486,11 @@ class UICalendar {
64466
64486
  @for (date of week; track date?.getTime() ?? -1) {
64467
64487
  <td
64468
64488
  [attr.aria-label]="format(date, 'do MMMM yyyy')"
64469
- [attr.data-selected]="isSameDay(date, activeDate) ? true : null"
64489
+ [attr.data-selected]="isSameDay(date, activeDate()) ? true : null"
64470
64490
  [id]="generateOptionId(date)"
64471
- (click)="onChange.emit(date)"
64472
- [attr.role]="isSameDay(date, activeDate) ? 'gridcell' : null"
64473
- [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">
64474
64494
  {{ format(date, 'd') }}
64475
64495
  </td>
64476
64496
  }
@@ -64490,7 +64510,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64490
64510
  label="Previous Year"
64491
64511
  variant="tertiary"
64492
64512
  size="large"
64493
- (click)="setActiveDate(addYears(activeDate, -1))"
64513
+ (click)="this.activeDate.set(addYears(activeDate(), -1))"
64494
64514
  (keydown)="onFirstButtonKeydown($event)"
64495
64515
  #firstButton
64496
64516
  [icon]="IconKeyboardDoubleArrowLeft"
@@ -64500,16 +64520,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64500
64520
  label="Previous Month"
64501
64521
  variant="tertiary"
64502
64522
  size="large"
64503
- (click)="setActiveDate(addMonths(activeDate, -1))"
64523
+ (click)="this.activeDate.set(addMonths(activeDate(), -1))"
64504
64524
  [iconOnly]="true"
64505
64525
  [icon]="IconChevronLeft">
64506
64526
  </ui-button>
64507
- <span data-title>{{ format(activeDate, 'MMMM yyyy') }}</span>
64527
+ <span data-title>{{ format(activeDate(), 'MMMM yyyy') }}</span>
64508
64528
  <ui-button
64509
64529
  label="Next Month"
64510
64530
  variant="tertiary"
64511
64531
  size="large"
64512
- (click)="setActiveDate(addMonths(activeDate, 1))"
64532
+ (click)="this.activeDate.set(addMonths(activeDate(), 1))"
64513
64533
  [iconOnly]="true"
64514
64534
  [icon]="IconChevronRight">
64515
64535
  </ui-button>
@@ -64517,7 +64537,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64517
64537
  label="Next Year"
64518
64538
  variant="tertiary"
64519
64539
  size="large"
64520
- (click)="setActiveDate(addYears(activeDate, 1))"
64540
+ (click)="this.activeDate.set(addYears(activeDate(), 1))"
64521
64541
  #lastButton
64522
64542
  [iconOnly]="true"
64523
64543
  [icon]="IconKeyboardDoubleArrowRight">
@@ -64542,11 +64562,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64542
64562
  @for (date of week; track date?.getTime() ?? -1) {
64543
64563
  <td
64544
64564
  [attr.aria-label]="format(date, 'do MMMM yyyy')"
64545
- [attr.data-selected]="isSameDay(date, activeDate) ? true : null"
64565
+ [attr.data-selected]="isSameDay(date, activeDate()) ? true : null"
64546
64566
  [id]="generateOptionId(date)"
64547
- (click)="onChange.emit(date)"
64548
- [attr.role]="isSameDay(date, activeDate) ? 'gridcell' : null"
64549
- [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">
64550
64570
  {{ format(date, 'd') }}
64551
64571
  </td>
64552
64572
  }
@@ -64558,9 +64578,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64558
64578
  `, imports: [UIButton], encapsulation: ViewEncapsulation.None, host: {
64559
64579
  style: 'display: contents;',
64560
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"] }]
64561
- }], ctorParameters: () => [], propDecorators: { onChange: [{
64562
- type: Output
64563
- }], 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 }] }] } });
64564
64582
 
64565
64583
  /**
64566
64584
  * Cards are often rectangular and contain various content, such as text, images, icons, multimedia, and interactive
@@ -64616,13 +64634,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64616
64634
  * @phase Dev
64617
64635
  */
64618
64636
  class UICheckbox {
64619
- /** Emits the new checked state (true or false) */
64620
- checkedChange = output();
64621
64637
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
64622
- value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
64638
+ value = model.required(...(ngDevMode ? [{ debugName: "value" }] : []));
64623
64639
  ariaLabel = input(undefined, ...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
64624
64640
  id = input(uniqueId('checkbox'), ...(ngDevMode ? [{ debugName: "id" }] : []));
64625
- checked = input(false, ...(ngDevMode ? [{ debugName: "checked" }] : []));
64641
+ checked = model(false, ...(ngDevMode ? [{ debugName: "checked" }] : []));
64626
64642
  indeterminate = input(false, ...(ngDevMode ? [{ debugName: "indeterminate" }] : []));
64627
64643
  disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
64628
64644
  invalid = input(false, ...(ngDevMode ? [{ debugName: "invalid" }] : []));
@@ -64640,10 +64656,10 @@ class UICheckbox {
64640
64656
  });
64641
64657
  }
64642
64658
  onInputChange() {
64643
- this.checkedChange.emit(this.inputEl().nativeElement.checked);
64659
+ this.checked.set(this.inputEl().nativeElement.checked);
64644
64660
  }
64645
64661
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UICheckbox, deps: [], target: i0.ɵɵFactoryTarget.Component });
64646
- 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: `
64647
64663
  <input
64648
64664
  [attr.aria-describedby]="ariaDescribedBy() || undefined"
64649
64665
  [attr.aria-errormessage]="ariaErrorMessage() || undefined"
@@ -64714,7 +64730,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64714
64730
  `, encapsulation: ViewEncapsulation.None, host: {
64715
64731
  'data-bspk': 'checkbox',
64716
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"] }]
64717
- }], 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 }] }] } });
64718
64734
 
64719
64735
  /**
64720
64736
  * A control that allows users to choose one or more items from a list or turn a feature on or off.
@@ -64749,11 +64765,11 @@ class UICheckboxOption extends UICheckbox {
64749
64765
  [required]="required()"
64750
64766
  [invalid]="invalid()"
64751
64767
  [ariaLabel]="ariaLabel() || computedAriaLabel()"
64752
- (checkedChange)="checkedChange.emit($event)"
64768
+ (checkedChange)="checked.set($event)"
64753
64769
  #input>
64754
64770
  </ui-checkbox>
64755
64771
  </span>
64756
- </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"] }] });
64757
64773
  }
64758
64774
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UICheckboxOption, decorators: [{
64759
64775
  type: Component,
@@ -64779,7 +64795,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64779
64795
  [required]="required()"
64780
64796
  [invalid]="invalid()"
64781
64797
  [ariaLabel]="ariaLabel() || computedAriaLabel()"
64782
- (checkedChange)="checkedChange.emit($event)"
64798
+ (checkedChange)="checked.set($event)"
64783
64799
  #input>
64784
64800
  </ui-checkbox>
64785
64801
  </span>
@@ -64799,10 +64815,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64799
64815
  * @phase Stable
64800
64816
  */
64801
64817
  class UICheckboxGroup {
64802
- valueChange = output();
64803
64818
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
64804
64819
  options = input([], ...(ngDevMode ? [{ debugName: "options" }] : []));
64805
- value = input([], ...(ngDevMode ? [{ debugName: "value" }] : []));
64820
+ value = model([], ...(ngDevMode ? [{ debugName: "value" }] : []));
64806
64821
  selectAll = input(false, ...(ngDevMode ? [{ debugName: "selectAll" }] : []));
64807
64822
  selectAllProps = input(undefined, ...(ngDevMode ? [{ debugName: "selectAllProps" }] : []));
64808
64823
  id = input(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
@@ -64834,20 +64849,20 @@ class UICheckboxGroup {
64834
64849
  }
64835
64850
  onSelectAllChange(checked) {
64836
64851
  const opts = this.availableOptions();
64837
- this.valueChange.emit(checked ? opts.map((o) => o.value) : []);
64852
+ this.value.set(checked ? opts.map((o) => o.value) : []);
64838
64853
  }
64839
64854
  onOptionChange(optionValue, checked) {
64840
64855
  const value = this.value();
64841
64856
  const current = Array.isArray(value) ? value : [];
64842
64857
  if (checked) {
64843
- this.valueChange.emit([...current, optionValue]);
64858
+ this.value.set([...current, optionValue]);
64844
64859
  }
64845
64860
  else {
64846
- this.valueChange.emit(current.filter((v) => v !== optionValue));
64861
+ this.value.set(current.filter((v) => v !== optionValue));
64847
64862
  }
64848
64863
  }
64849
64864
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UICheckboxGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
64850
- 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: `
64851
64866
  <div role="group">
64852
64867
  @if (selectAll()) {
64853
64868
  <ui-checkbox-option
@@ -64936,7 +64951,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
64936
64951
  </div>
64937
64952
  `,
64938
64953
  }]
64939
- }], 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 }] }] } });
64940
64955
 
64941
64956
  /**
64942
64957
  * A two-tone warning icon used to indicate a warning state specifically in inline alerts.
@@ -65149,7 +65164,7 @@ class UICheckboxGroupField extends UICheckboxGroup {
65149
65164
  [ariaLabelledBy]="labelledById()"
65150
65165
  [ariaDescribedBy]="describedById()"
65151
65166
  [ariaErrorMessage]="errorMessageId()"
65152
- (valueChange)="valueChange.emit($event)"
65167
+ (valueChange)="value.set($event)"
65153
65168
  [ariaLabel]="ariaLabel()"
65154
65169
  [disabled]="disabled()"
65155
65170
  [id]="controlId()"
@@ -65176,7 +65191,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65176
65191
  [ariaLabelledBy]="labelledById()"
65177
65192
  [ariaDescribedBy]="describedById()"
65178
65193
  [ariaErrorMessage]="errorMessageId()"
65179
- (valueChange)="valueChange.emit($event)"
65194
+ (valueChange)="value.set($event)"
65180
65195
  [ariaLabel]="ariaLabel()"
65181
65196
  [disabled]="disabled()"
65182
65197
  [id]="controlId()"
@@ -65302,9 +65317,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65302
65317
  */
65303
65318
  class UIChipGroup {
65304
65319
  overflow = input('wrap', ...(ngDevMode ? [{ debugName: "overflow" }] : []));
65305
- items = input(...(ngDevMode ? [undefined, { debugName: "items" }] : []));
65320
+ items = input.required(...(ngDevMode ? [{ debugName: "items" }] : []));
65306
65321
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIChipGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
65307
- 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: `
65308
65323
  @for (item of items(); track item) {
65309
65324
  <ui-chip
65310
65325
  [label]="item.label"
@@ -65336,7 +65351,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65336
65351
  'data-bspk': 'chip-group',
65337
65352
  '[attr.data-scroll]': "overflow() === 'scroll' ? true : null",
65338
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"] }]
65339
- }], 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 }] }] } });
65340
65355
 
65341
65356
  /**
65342
65357
  * An input that allows users to enter text, numbers or symbols in a singular line. This is a utility element and is not
@@ -65354,7 +65369,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65354
65369
  * @phase UXReview
65355
65370
  */
65356
65371
  class UIInput {
65357
- valueChange = output();
65358
65372
  IconCancel = IconCancel;
65359
65373
  hasFocus = signal(false, ...(ngDevMode ? [{ debugName: "hasFocus" }] : []));
65360
65374
  inputEl = viewChild.required('inputEl');
@@ -65366,7 +65380,7 @@ class UIInput {
65366
65380
  const sizeValue = this.size();
65367
65381
  return validSizes.includes(sizeValue) ? sizeValue : 'medium';
65368
65382
  }, ...(ngDevMode ? [{ debugName: "buttonSize" }] : []));
65369
- value = model(...(ngDevMode ? [undefined, { debugName: "value" }] : []));
65383
+ value = model('', ...(ngDevMode ? [{ debugName: "value" }] : []));
65370
65384
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
65371
65385
  inputMode = input(...(ngDevMode ? [undefined, { debugName: "inputMode" }] : []));
65372
65386
  showClearButton = input(true, ...(ngDevMode ? [{ debugName: "showClearButton" }] : []));
@@ -65397,7 +65411,7 @@ class UIInput {
65397
65411
  this.value.set(event.target.value);
65398
65412
  }
65399
65413
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIInput, deps: [], target: i0.ɵɵFactoryTarget.Component });
65400
- 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]">
65401
65415
  @if (leading()) {
65402
65416
  <span data-leading>{{ leading() }}</span>
65403
65417
  }
@@ -65419,11 +65433,11 @@ class UIInput {
65419
65433
  [readOnly]="readOnly() || null"
65420
65434
  [required]="required() || null"
65421
65435
  [type]="type()"
65422
- [value]="value() || ''"
65436
+ [value]="value()"
65423
65437
  (input)="handleInput($event)"
65424
65438
  (focus)="hasFocus.set(true)"
65425
65439
  (blur)="hasFocus.set(false)"
65426
- (change)="valueChange.emit($event.target.value)"
65440
+ (change)="value.set($event.target.value)"
65427
65441
  #inputEl />
65428
65442
  <ng-content select="[data-trailing]">
65429
65443
  @if (trailing()) {
@@ -65466,11 +65480,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65466
65480
  [readOnly]="readOnly() || null"
65467
65481
  [required]="required() || null"
65468
65482
  [type]="type()"
65469
- [value]="value() || ''"
65483
+ [value]="value()"
65470
65484
  (input)="handleInput($event)"
65471
65485
  (focus)="hasFocus.set(true)"
65472
65486
  (blur)="hasFocus.set(false)"
65473
- (change)="valueChange.emit($event.target.value)"
65487
+ (change)="value.set($event.target.value)"
65474
65488
  #inputEl />
65475
65489
  <ng-content select="[data-trailing]">
65476
65490
  @if (trailing()) {
@@ -65494,7 +65508,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65494
65508
  '[attr.data-show-clear-button]': '( displayClearButton()) || null',
65495
65509
  '[attr.data-readonly]': 'readOnly() || null',
65496
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"] }]
65497
- }], 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 }] }] } });
65498
65512
 
65499
65513
  function parseDate(value) {
65500
65514
  if (!value)
@@ -65509,16 +65523,15 @@ function parseDate(value) {
65509
65523
  * @example
65510
65524
  * <ui-date-picker
65511
65525
  * [value]="selectedDate"
65512
- * (onChange)="handleDateChange($event)"
65526
+ * (valueChange)="handleDateChange($event)"
65513
65527
  * ></ui-date-picker>
65514
65528
  *
65515
65529
  * @name DatePicker
65516
65530
  * @phase Dev
65517
65531
  */
65518
65532
  class UIDatePicker {
65519
- valueChange = new EventEmitter();
65520
65533
  // Inputs
65521
- value = input(undefined, ...(ngDevMode ? [{ debugName: "value" }] : []));
65534
+ value = model(undefined, ...(ngDevMode ? [{ debugName: "value" }] : []));
65522
65535
  disabled = input(...(ngDevMode ? [undefined, { debugName: "disabled" }] : []));
65523
65536
  readOnly = input(...(ngDevMode ? [undefined, { debugName: "readOnly" }] : []));
65524
65537
  closeCalendarOnChange = input(true, ...(ngDevMode ? [{ debugName: "closeCalendarOnChange" }] : []));
@@ -65580,7 +65593,7 @@ class UIDatePicker {
65580
65593
  this.calendarVisible.set(false);
65581
65594
  };
65582
65595
  onInputChange(value) {
65583
- this.valueChange.emit(value ?? '');
65596
+ this.value.set(value ?? '');
65584
65597
  this.internalValue.set(value);
65585
65598
  const parsed = value ? parseDate(value) : undefined;
65586
65599
  if (parsed) {
@@ -65588,16 +65601,20 @@ class UIDatePicker {
65588
65601
  }
65589
65602
  }
65590
65603
  onCalendarChange(date) {
65604
+ if (!date) {
65605
+ this.value.set(undefined);
65606
+ return;
65607
+ }
65591
65608
  const formatted = format(date, 'MM/dd/yyyy');
65592
65609
  this.internalValue.set(formatted);
65593
65610
  this.activeDate.set(date);
65594
65611
  if (this.closeCalendarOnChange()) {
65595
65612
  this.calendarVisible.set(false);
65596
65613
  }
65597
- this.valueChange.emit(formatted);
65614
+ this.value.set(formatted);
65598
65615
  }
65599
65616
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIDatePicker, deps: [], target: i0.ɵɵFactoryTarget.Component });
65600
- 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: `
65601
65618
  <div data-bspk="date-picker" #root>
65602
65619
  <ui-input
65603
65620
  #reference
@@ -65652,11 +65669,11 @@ class UIDatePicker {
65652
65669
  [focusTrap]="true"
65653
65670
  [id]="calendarId"
65654
65671
  [value]="activeDate()"
65655
- (onChange)="onCalendarChange($event)"></ui-calendar>
65672
+ (valueChange)="onCalendarChange($event)"></ui-calendar>
65656
65673
  </div>
65657
65674
  }
65658
65675
  </div>
65659
- `, 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 });
65660
65677
  }
65661
65678
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIDatePicker, decorators: [{
65662
65679
  type: Component,
@@ -65715,14 +65732,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65715
65732
  [focusTrap]="true"
65716
65733
  [id]="calendarId"
65717
65734
  [value]="activeDate()"
65718
- (onChange)="onCalendarChange($event)"></ui-calendar>
65735
+ (valueChange)="onCalendarChange($event)"></ui-calendar>
65719
65736
  </div>
65720
65737
  }
65721
65738
  </div>
65722
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"] }]
65723
- }], propDecorators: { valueChange: [{
65724
- type: Output
65725
- }], 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 }] }] } });
65726
65741
 
65727
65742
  /**
65728
65743
  * A field wrapper for the UIDatePicker component.
@@ -65758,7 +65773,7 @@ class UIDatePickerField extends UIDatePicker {
65758
65773
  [ariaLabelledBy]="labelledById()"
65759
65774
  [ariaDescribedBy]="describedById()"
65760
65775
  [ariaErrorMessage]="errorMessageId()"
65761
- (valueChange)="valueChange.emit($event)"
65776
+ (valueChange)="value.set($event)"
65762
65777
  [ariaLabel]="ariaLabel()"
65763
65778
  [disabled]="disabled()"
65764
65779
  [id]="controlId()"
@@ -65786,7 +65801,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
65786
65801
  [ariaLabelledBy]="labelledById()"
65787
65802
  [ariaDescribedBy]="describedById()"
65788
65803
  [ariaErrorMessage]="errorMessageId()"
65789
- (valueChange)="valueChange.emit($event)"
65804
+ (valueChange)="value.set($event)"
65790
65805
  [ariaLabel]="ariaLabel()"
65791
65806
  [disabled]="disabled()"
65792
65807
  [id]="controlId()"
@@ -66034,6 +66049,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
66034
66049
  * @phase Dev
66035
66050
  */
66036
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
+ */
66037
66056
  onClose = new EventEmitter();
66038
66057
  box = viewChild('box', ...(ngDevMode ? [{ debugName: "box", read: ElementRef }] : [{ read: ElementRef }]));
66039
66058
  open = input(false, ...(ngDevMode ? [{ debugName: "open" }] : []));
@@ -66205,6 +66224,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
66205
66224
  * @phase Dev
66206
66225
  */
66207
66226
  class UIFab {
66227
+ /** Event emitted when the button is clicked. */
66208
66228
  onClick = new EventEmitter();
66209
66229
  /** Event emitted when the button receives focus. */
66210
66230
  onFocus = new EventEmitter();
@@ -66218,7 +66238,7 @@ class UIFab {
66218
66238
  label = input('', ...(ngDevMode ? [{ debugName: "label" }] : []));
66219
66239
  icon = input(...(ngDevMode ? [undefined, { debugName: "icon" }] : []));
66220
66240
  tooltip = input(...(ngDevMode ? [undefined, { debugName: "tooltip" }] : []));
66221
- size = input('small', ...(ngDevMode ? [{ debugName: "size" }] : []));
66241
+ size = input('medium', ...(ngDevMode ? [{ debugName: "size" }] : []));
66222
66242
  variant = input('primary', ...(ngDevMode ? [{ debugName: "variant" }] : []));
66223
66243
  placement = input('bottom-right', ...(ngDevMode ? [{ debugName: "placement" }] : []));
66224
66244
  container = input('local', ...(ngDevMode ? [{ debugName: "container" }] : []));
@@ -66279,7 +66299,7 @@ class UIFab {
66279
66299
  }
66280
66300
  <span [attr.data-touch-target]="true"></span>
66281
66301
  </button>
66282
- `, 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 });
66283
66303
  }
66284
66304
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIFab, decorators: [{
66285
66305
  type: Component,
@@ -66316,7 +66336,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
66316
66336
  </button>
66317
66337
  `, encapsulation: ViewEncapsulation.None, standalone: true, imports: [CommonModule, UIIcon, UITooltipDirective], host: {
66318
66338
  style: 'display: contents;',
66319
- }, 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"] }]
66320
66340
  }], propDecorators: { onClick: [{
66321
66341
  type: Output
66322
66342
  }], onFocus: [{
@@ -66426,7 +66446,7 @@ class UIInputField extends UIInput {
66426
66446
  [ariaLabelledBy]="labelledById()"
66427
66447
  [ariaDescribedBy]="describedById()"
66428
66448
  [ariaErrorMessage]="errorMessageId()"
66429
- (valueChange)="valueChange.emit($event)"
66449
+ (valueChange)="value.set($event)"
66430
66450
  [ariaLabel]="ariaLabel()"
66431
66451
  [disabled]="disabled()"
66432
66452
  [id]="controlId()"
@@ -66454,7 +66474,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
66454
66474
  [ariaLabelledBy]="labelledById()"
66455
66475
  [ariaDescribedBy]="describedById()"
66456
66476
  [ariaErrorMessage]="errorMessageId()"
66457
- (valueChange)="valueChange.emit($event)"
66477
+ (valueChange)="value.set($event)"
66458
66478
  [ariaLabel]="ariaLabel()"
66459
66479
  [disabled]="disabled()"
66460
66480
  [id]="controlId()"
@@ -66481,7 +66501,7 @@ function isNumber(value, fallbackValue) {
66481
66501
  }
66482
66502
  /**
66483
66503
  * A input element that allows users to either input a numerical value or singularly increase or decrease the values by
66484
- * pressing the (+) or (-).
66504
+ * pressing the (+) or (-) buttons.
66485
66505
  *
66486
66506
  * The value of the input is a number. The value is clamped to the min and max values if they are provided.
66487
66507
  *
@@ -66499,7 +66519,6 @@ function isNumber(value, fallbackValue) {
66499
66519
  * @phase UXReview
66500
66520
  */
66501
66521
  class UIInputNumber {
66502
- valueChange = output();
66503
66522
  inputEl = viewChild.required('inputEl');
66504
66523
  value = model('', ...(ngDevMode ? [{ debugName: "value" }] : []));
66505
66524
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
@@ -66565,7 +66584,7 @@ class UIInputNumber {
66565
66584
  this.value.set(next !== undefined ? next.toString() : '');
66566
66585
  }
66567
66586
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIInputNumber, deps: [], target: i0.ɵɵFactoryTarget.Component });
66568
- 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: `
66569
66588
  <input
66570
66589
  data-main-input
66571
66590
  [attr.aria-labelledby]="ariaLabelledBy() || null"
@@ -66656,7 +66675,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
66656
66675
  '[attr.data-readonly]': 'readOnly() || null',
66657
66676
  '[attr.data-stepper-input]': 'true',
66658
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"] }]
66659
- }], 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 }] }] } });
66660
66679
 
66661
66680
  /**
66662
66681
  * A field wrapper for the UIInputNumber component.
@@ -66692,7 +66711,7 @@ class UIInputNumberField extends UIInputNumber {
66692
66711
  [ariaLabelledBy]="labelledById()"
66693
66712
  [ariaDescribedBy]="describedById()"
66694
66713
  [ariaErrorMessage]="errorMessageId()"
66695
- (valueChange)="valueChange.emit($event)"
66714
+ (valueChange)="value.set($event)"
66696
66715
  [ariaLabel]="ariaLabel()"
66697
66716
  [disabled]="disabled()"
66698
66717
  [id]="controlId()"
@@ -66720,7 +66739,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
66720
66739
  [ariaLabelledBy]="labelledById()"
66721
66740
  [ariaDescribedBy]="describedById()"
66722
66741
  [ariaErrorMessage]="errorMessageId()"
66723
- (valueChange)="valueChange.emit($event)"
66742
+ (valueChange)="value.set($event)"
66724
66743
  [ariaLabel]="ariaLabel()"
66725
66744
  [disabled]="disabled()"
66726
66745
  [id]="controlId()"
@@ -67028,7 +67047,6 @@ const SELECT_OPTIONS = countryCodes.map((code) => {
67028
67047
  * @phase Dev
67029
67048
  */
67030
67049
  class UIInputPhone {
67031
- valueChange = output();
67032
67050
  keyNavigation = new KeyNavigationUtility();
67033
67051
  value = model('', ...(ngDevMode ? [{ debugName: "value" }] : []));
67034
67052
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
@@ -67154,7 +67172,6 @@ class UIInputPhone {
67154
67172
  const formatted = this.formatValueIfNeeded(newValue || '');
67155
67173
  this.previousValue.set(formatted);
67156
67174
  this.value.set(formatted);
67157
- this.valueChange.emit(formatted);
67158
67175
  }
67159
67176
  formatValueIfNeeded(newValue) {
67160
67177
  const prev = this.previousValue();
@@ -67179,7 +67196,7 @@ class UIInputPhone {
67179
67196
  }
67180
67197
  }
67181
67198
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIInputPhone, deps: [], target: i0.ɵɵFactoryTarget.Component });
67182
- 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: `
67183
67200
  <ui-input
67184
67201
  [attr.data-bspk-owner]="'input-phone'"
67185
67202
  type="tel"
@@ -67351,7 +67368,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67351
67368
  </ui-menu>
67352
67369
  }
67353
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"] }]
67354
- }], 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 }] }] } });
67355
67372
 
67356
67373
  /**
67357
67374
  * A field wrapper for the UIInputPhone component.
@@ -67387,7 +67404,7 @@ class UIInputPhoneField extends UIInputPhone {
67387
67404
  [ariaLabelledBy]="labelledById()"
67388
67405
  [ariaDescribedBy]="describedById()"
67389
67406
  [ariaErrorMessage]="errorMessageId()"
67390
- (valueChange)="valueChange.emit($event)"
67407
+ (valueChange)="value.set($event)"
67391
67408
  [ariaLabel]="ariaLabel()"
67392
67409
  [disabled]="disabled()"
67393
67410
  [id]="controlId()"
@@ -67415,7 +67432,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67415
67432
  [ariaLabelledBy]="labelledById()"
67416
67433
  [ariaDescribedBy]="describedById()"
67417
67434
  [ariaErrorMessage]="errorMessageId()"
67418
- (valueChange)="valueChange.emit($event)"
67435
+ (valueChange)="value.set($event)"
67419
67436
  [ariaLabel]="ariaLabel()"
67420
67437
  [disabled]="disabled()"
67421
67438
  [id]="controlId()"
@@ -67680,61 +67697,31 @@ const INPUT_TYPE_THRESHOLD = 7;
67680
67697
  * multiple micro pages.
67681
67698
  *
67682
67699
  * @example
67683
- * <ui-pagination [value]="currentPage" [numPages]="10" (onChange)="currentPage = $event"></ui-pagination>
67700
+ * <ui-pagination [value]="currentPage" [numPages]="10" (valueChange)="currentPage = $event"></ui-pagination>
67684
67701
  *
67685
67702
  * @name Pagination
67686
67703
  * @phase Dev
67687
67704
  */
67688
67705
  class UIPagination {
67689
- /** Called when the page changes. */
67690
- onChange = new EventEmitter();
67691
67706
  numPages = input(2, ...(ngDevMode ? [{ debugName: "numPages" }] : []));
67692
- value = input(1, ...(ngDevMode ? [{ debugName: "value" }] : []));
67693
- // Internal string representation for the input field when large page counts.
67694
- inputValue = '1';
67707
+ value = model(1, ...(ngDevMode ? [{ debugName: "value" }] : []));
67708
+ inputValue = signal(this.value().toString(), ...(ngDevMode ? [{ debugName: "inputValue" }] : []));
67695
67709
  INPUT_TYPE_THRESHOLD = INPUT_TYPE_THRESHOLD;
67696
67710
  ChevronRight = IconChevronRight;
67697
67711
  ChevronLeft = IconChevronLeft;
67698
- ngOnChanges(changes) {
67699
- if (changes['value']) {
67700
- this.inputValue = String(this.value());
67701
- }
67702
- }
67703
- emit(page) {
67704
- const next = this.clamp(page);
67705
- this.onChange.emit(next);
67706
- sendAriaLiveMessage(`Page ${page} of ${this.numPages()}`);
67707
- }
67708
- previousPage() {
67709
- if (this.value() > 1)
67710
- this.emit(this.value() - 1);
67711
- }
67712
- nextPage() {
67713
- if (this.value() < this.numPages())
67714
- this.emit(this.value() + 1);
67715
- }
67716
- 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) {
67717
67715
  if (event)
67718
67716
  event.preventDefault();
67719
- const parsedValue = parseInt(this.inputValue || '', 10);
67720
- if (isNaN(parsedValue)) {
67721
- this.inputValue = String(this.value());
67722
- return;
67723
- }
67724
- const next = this.clamp(parsedValue);
67725
- this.emit(next);
67726
- if (next !== parsedValue)
67727
- 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());
67728
67721
  }
67729
67722
  inBounds(n) {
67730
67723
  return n >= 1 && n <= this.numPages();
67731
67724
  }
67732
- pages() {
67733
- return Array.from({ length: this.numPages() }, (_, i) => i + 1);
67734
- }
67735
- label() {
67736
- return `Go to page ${this.value()}`;
67737
- }
67738
67725
  clamp(page) {
67739
67726
  if (page < 1)
67740
67727
  return 1;
@@ -67743,28 +67730,28 @@ class UIPagination {
67743
67730
  return page;
67744
67731
  }
67745
67732
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIPagination, deps: [], target: i0.ɵɵFactoryTarget.Component });
67746
- 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) {
67747
67734
  <ng-container>
67748
67735
  <ui-button
67749
67736
  [disabled]="!inBounds(value() - 1)"
67750
67737
  [icon]="ChevronLeft"
67751
67738
  [iconOnly]="true"
67752
67739
  [label]="value() === 1 ? 'First page' : 'Previous page (' + (value() - 1) + ')'"
67753
- (onClick)="previousPage()"
67740
+ (onClick)="updateValue(value() - 1)"
67754
67741
  size="small"
67755
67742
  variant="tertiary"
67756
67743
  owner="pagination"></ui-button>
67757
67744
 
67758
67745
  @if (numPages() > INPUT_TYPE_THRESHOLD) {
67759
67746
  <ng-container>
67760
- <form data-input-form (submit)="submitManual($event)">
67747
+ <form data-input-form (submit)="updateValue(inputValue(), $event)">
67761
67748
  <ui-input
67762
67749
  ariaLabel="Page number"
67763
67750
  [type]="'number'"
67764
67751
  [showClearButton]="false"
67765
- [value]="inputValue"
67766
- (valueChange)="inputValue = $event!"
67767
- (blur)="submitManual()"
67752
+ [value]="inputValue() || '1'"
67753
+ (valueChange)="this.inputValue.set($event!)"
67754
+ (blur)="updateValue(inputValue())"
67768
67755
  name="page-number" />
67769
67756
  <span>of {{ numPages() }}</span>
67770
67757
  </form>
@@ -67778,7 +67765,7 @@ class UIPagination {
67778
67765
  <ui-button
67779
67766
  [ariaLabel]="'Page ' + page"
67780
67767
  [label]="page.toString()"
67781
- (onClick)="emit(page)"
67768
+ (onClick)="updateValue(page)"
67782
67769
  size="small"
67783
67770
  [variant]="value() === page ? 'primary' : 'tertiary'"
67784
67771
  owner="pagination"></ui-button>
@@ -67790,7 +67777,7 @@ class UIPagination {
67790
67777
  [icon]="ChevronRight"
67791
67778
  [iconOnly]="true"
67792
67779
  [label]="value() === numPages() ? 'Last page' : 'Next page (' + (value() + 1) + ')'"
67793
- (onClick)="nextPage()"
67780
+ (onClick)="updateValue(value() + 1)"
67794
67781
  size="small"
67795
67782
  variant="tertiary"
67796
67783
  owner="pagination"></ui-button>
@@ -67806,21 +67793,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67806
67793
  [icon]="ChevronLeft"
67807
67794
  [iconOnly]="true"
67808
67795
  [label]="value() === 1 ? 'First page' : 'Previous page (' + (value() - 1) + ')'"
67809
- (onClick)="previousPage()"
67796
+ (onClick)="updateValue(value() - 1)"
67810
67797
  size="small"
67811
67798
  variant="tertiary"
67812
67799
  owner="pagination"></ui-button>
67813
67800
 
67814
67801
  @if (numPages() > INPUT_TYPE_THRESHOLD) {
67815
67802
  <ng-container>
67816
- <form data-input-form (submit)="submitManual($event)">
67803
+ <form data-input-form (submit)="updateValue(inputValue(), $event)">
67817
67804
  <ui-input
67818
67805
  ariaLabel="Page number"
67819
67806
  [type]="'number'"
67820
67807
  [showClearButton]="false"
67821
- [value]="inputValue"
67822
- (valueChange)="inputValue = $event!"
67823
- (blur)="submitManual()"
67808
+ [value]="inputValue() || '1'"
67809
+ (valueChange)="this.inputValue.set($event!)"
67810
+ (blur)="updateValue(inputValue())"
67824
67811
  name="page-number" />
67825
67812
  <span>of {{ numPages() }}</span>
67826
67813
  </form>
@@ -67834,7 +67821,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67834
67821
  <ui-button
67835
67822
  [ariaLabel]="'Page ' + page"
67836
67823
  [label]="page.toString()"
67837
- (onClick)="emit(page)"
67824
+ (onClick)="updateValue(page)"
67838
67825
  size="small"
67839
67826
  [variant]="value() === page ? 'primary' : 'tertiary'"
67840
67827
  owner="pagination"></ui-button>
@@ -67846,7 +67833,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67846
67833
  [icon]="ChevronRight"
67847
67834
  [iconOnly]="true"
67848
67835
  [label]="value() === numPages() ? 'Last page' : 'Next page (' + (value() + 1) + ')'"
67849
- (onClick)="nextPage()"
67836
+ (onClick)="updateValue(value() + 1)"
67850
67837
  size="small"
67851
67838
  variant="tertiary"
67852
67839
  owner="pagination"></ui-button>
@@ -67855,9 +67842,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67855
67842
  'data-bspk': 'pagination',
67856
67843
  role: 'group',
67857
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"] }]
67858
- }], propDecorators: { onChange: [{
67859
- type: Output
67860
- }], 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"] }] } });
67861
67846
 
67862
67847
  /** Copyright 2026 Anywhere Real Estate - CC BY 4.0 */
67863
67848
 
@@ -67873,11 +67858,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67873
67858
  * @phase Utility
67874
67859
  */
67875
67860
  class UIRadio {
67876
- checkedChange = new EventEmitter();
67877
67861
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
67878
67862
  value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
67879
67863
  ariaLabel = input(undefined, ...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
67880
- checked = input(false, ...(ngDevMode ? [{ debugName: "checked" }] : []));
67864
+ checked = model(false, ...(ngDevMode ? [{ debugName: "checked" }] : []));
67881
67865
  disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
67882
67866
  id = input(uniqueId('radio'), ...(ngDevMode ? [{ debugName: "id" }] : []));
67883
67867
  invalid = input(false, ...(ngDevMode ? [{ debugName: "invalid" }] : []));
@@ -67885,10 +67869,10 @@ class UIRadio {
67885
67869
  readOnly = input(false, ...(ngDevMode ? [{ debugName: "readOnly" }] : []));
67886
67870
  onInputChange(event) {
67887
67871
  const inputElement = event.target;
67888
- this.checkedChange.emit(inputElement.checked);
67872
+ this.checked.set(inputElement.checked);
67889
67873
  }
67890
67874
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIRadio, deps: [], target: i0.ɵɵFactoryTarget.Component });
67891
- 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
67892
67876
  [attr.name]="name()"
67893
67877
  [attr.id]="id()"
67894
67878
  [attr.aria-label]="ariaLabel()"
@@ -67919,9 +67903,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67919
67903
  <span aria-hidden="true"></span>`, encapsulation: ViewEncapsulation.None, host: {
67920
67904
  'data-bspk': 'radio',
67921
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"] }]
67922
- }], propDecorators: { checkedChange: [{
67923
- type: Output
67924
- }], 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 }] }] } });
67925
67907
 
67926
67908
  /**
67927
67909
  * A control that allows users to choose one or more items from a list or turn an feature on or off.
@@ -67956,7 +67938,7 @@ class UIRadioOption extends UIRadio {
67956
67938
  [invalid]="invalid()"
67957
67939
  [readOnly]="readOnly()"
67958
67940
  [ariaLabel]="ariaLabel() || computedAriaLabel()"
67959
- (checkedChange)="checkedChange.emit($event)">
67941
+ (checkedChange)="checked.set($event)">
67960
67942
  </ui-radio>
67961
67943
  </span>
67962
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"] }] });
@@ -67984,7 +67966,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
67984
67966
  [invalid]="invalid()"
67985
67967
  [readOnly]="readOnly()"
67986
67968
  [ariaLabel]="ariaLabel() || computedAriaLabel()"
67987
- (checkedChange)="checkedChange.emit($event)">
67969
+ (checkedChange)="checked.set($event)">
67988
67970
  </ui-radio>
67989
67971
  </span>
67990
67972
  </ui-list-item>`,
@@ -68010,7 +67992,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68010
67992
  * @phase Dev
68011
67993
  */
68012
67994
  class UIRadioGroup {
68013
- valueChange = output();
68014
67995
  id = input(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
68015
67996
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
68016
67997
  value = model('', ...(ngDevMode ? [{ debugName: "value" }] : []));
@@ -68025,17 +68006,17 @@ class UIRadioGroup {
68025
68006
  readOnly = input(false, ...(ngDevMode ? [{ debugName: "readOnly" }] : []));
68026
68007
  constructor() {
68027
68008
  this.value.subscribe((val) => {
68028
- this.valueChange.emit(val || '');
68009
+ this.value.set(val || '');
68029
68010
  });
68030
68011
  }
68031
68012
  /** Handles changes to the radio button selection. */
68032
68013
  onRadioChange(value, checked) {
68033
68014
  if (checked) {
68034
- this.valueChange.emit(value);
68015
+ this.value.set(value);
68035
68016
  }
68036
68017
  }
68037
68018
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UIRadioGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
68038
- 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: `
68039
68020
  <div
68040
68021
  [attr.aria-describedby]="ariaDescribedBy() || null"
68041
68022
  [attr.aria-errormessage]="ariaErrorMessage() || null"
@@ -68100,7 +68081,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68100
68081
  },
68101
68082
  encapsulation: ViewEncapsulation.None,
68102
68083
  }]
68103
- }], 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 }] }] } });
68104
68085
 
68105
68086
  /**
68106
68087
  * A field wrapper for the UIRadioGroup component.
@@ -68136,7 +68117,7 @@ class UIRadioGroupField extends UIRadioGroup {
68136
68117
  [ariaLabelledBy]="labelledById()"
68137
68118
  [ariaDescribedBy]="describedById()"
68138
68119
  [ariaErrorMessage]="errorMessageId()"
68139
- (valueChange)="valueChange.emit($event)"
68120
+ (valueChange)="value.set($event)"
68140
68121
  [ariaLabel]="ariaLabel()"
68141
68122
  [disabled]="disabled()"
68142
68123
  [id]="controlId()"
@@ -68163,7 +68144,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68163
68144
  [ariaLabelledBy]="labelledById()"
68164
68145
  [ariaDescribedBy]="describedById()"
68165
68146
  [ariaErrorMessage]="errorMessageId()"
68166
- (valueChange)="valueChange.emit($event)"
68147
+ (valueChange)="value.set($event)"
68167
68148
  [ariaLabel]="ariaLabel()"
68168
68149
  [disabled]="disabled()"
68169
68150
  [id]="controlId()"
@@ -68190,15 +68171,14 @@ const TAB_BADGE_SIZES = {
68190
68171
  *
68191
68172
  * See TabGroup or SegmentedControl for examples.
68192
68173
  *
68193
- * @ignore
68174
+ * @name TabList
68175
+ * @phase Utility
68194
68176
  */
68195
68177
  class UITabListUtility {
68196
- /** The function to call when the tab is clicked. */
68197
- valueChange = new EventEmitter();
68198
- options = input([], ...(ngDevMode ? [{ debugName: "options" }] : []));
68199
- value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
68178
+ value = model.required(...(ngDevMode ? [{ debugName: "value" }] : []));
68200
68179
  width = input('hug', ...(ngDevMode ? [{ debugName: "width" }] : []));
68201
68180
  label = input.required(...(ngDevMode ? [{ debugName: "label" }] : []));
68181
+ options = input([], ...(ngDevMode ? [{ debugName: "options" }] : []));
68202
68182
  id = input(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
68203
68183
  iconsOnly = input(false, ...(ngDevMode ? [{ debugName: "iconsOnly" }] : []));
68204
68184
  // eslint-disable-next-line @angular-eslint/no-input-rename
@@ -68261,7 +68241,7 @@ class UITabListUtility {
68261
68241
  return;
68262
68242
  this.activeId.set(item.id);
68263
68243
  if (!item.disabled)
68264
- this.valueChange.emit(item.value);
68244
+ this.value.set(item.value);
68265
68245
  }
68266
68246
  handleKeyDownEvent(event) {
68267
68247
  const opts = this.optionsWithIds().filter((o) => !o.disabled);
@@ -68279,28 +68259,26 @@ class UITabListUtility {
68279
68259
  Enter: () => {
68280
68260
  const active = this.optionsWithIds().find((o) => o.id === this.activeId());
68281
68261
  if (active && !active.disabled)
68282
- this.valueChange.emit(active.value);
68262
+ this.value.set(active.value);
68283
68263
  },
68284
68264
  Space: () => {
68285
68265
  const active = this.optionsWithIds().find((o) => o.id === this.activeId());
68286
68266
  if (active && !active.disabled)
68287
- this.valueChange.emit(active.value);
68267
+ this.value.set(active.value);
68288
68268
  },
68289
68269
  }, {
68290
68270
  preventDefault: true,
68291
68271
  })(event);
68292
68272
  }
68293
68273
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UITabListUtility, deps: [], target: i0.ɵɵFactoryTarget.Component });
68294
- 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 });
68295
68275
  }
68296
68276
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UITabListUtility, decorators: [{
68297
68277
  type: Component,
68298
68278
  args: [{
68299
68279
  template: '',
68300
68280
  }]
68301
- }], ctorParameters: () => [], propDecorators: { valueChange: [{
68302
- type: Output
68303
- }], 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 }] }] } });
68304
68282
  /**
68305
68283
  * Navigation tool that organizes content across different screens and views.
68306
68284
  *
@@ -68425,7 +68403,7 @@ class UISegmentedControl extends UITabListUtility {
68425
68403
  data-bspk="segmented-control"
68426
68404
  [options]="options()"
68427
68405
  [value]="value()"
68428
- (valueChange)="valueChange.emit($event)"
68406
+ (valueChange)="value.set($event)"
68429
68407
  [label]="label()"
68430
68408
  [size]="size()"
68431
68409
  [width]="width()"
@@ -68439,7 +68417,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68439
68417
  data-bspk="segmented-control"
68440
68418
  [options]="options()"
68441
68419
  [value]="value()"
68442
- (valueChange)="valueChange.emit($event)"
68420
+ (valueChange)="value.set($event)"
68443
68421
  [label]="label()"
68444
68422
  [size]="size()"
68445
68423
  [width]="width()"
@@ -68472,7 +68450,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68472
68450
  */
68473
68451
  class UISelect {
68474
68452
  keyNavigation = new KeyNavigationUtility();
68475
- valueChange = output();
68476
68453
  value = model('', ...(ngDevMode ? [{ debugName: "value" }] : []));
68477
68454
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
68478
68455
  placeholder = input('Select one', ...(ngDevMode ? [{ debugName: "placeholder" }] : []));
@@ -68507,7 +68484,7 @@ class UISelect {
68507
68484
  document = inject(DOCUMENT$1);
68508
68485
  constructor() {
68509
68486
  this.value.subscribe((val) => {
68510
- this.valueChange.emit(val || '');
68487
+ this.value.set(val || '');
68511
68488
  });
68512
68489
  }
68513
68490
  get offset() {
@@ -68572,7 +68549,7 @@ class UISelect {
68572
68549
  this.keyNavigation.destroy();
68573
68550
  }
68574
68551
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UISelect, deps: [], target: i0.ɵɵFactoryTarget.Component });
68575
- 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: `
68576
68553
  <input [attr.name]="name() || null" type="hidden" [value]="value() || ''" />
68577
68554
  <button
68578
68555
  type="button"
@@ -68703,7 +68680,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68703
68680
  </ui-menu>
68704
68681
  }
68705
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"] }]
68706
- }], 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 }] }] } });
68707
68684
 
68708
68685
  /**
68709
68686
  * A field wrapper for the UISelect component.
@@ -68739,7 +68716,7 @@ class UISelectField extends UISelect {
68739
68716
  [ariaLabelledBy]="labelledById()"
68740
68717
  [ariaDescribedBy]="describedById()"
68741
68718
  [ariaErrorMessage]="errorMessageId()"
68742
- (valueChange)="valueChange.emit($event)"
68719
+ (valueChange)="value.set($event)"
68743
68720
  [ariaLabel]="ariaLabel()"
68744
68721
  [disabled]="disabled()"
68745
68722
  [id]="controlId()"
@@ -68768,7 +68745,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68768
68745
  [ariaLabelledBy]="labelledById()"
68769
68746
  [ariaDescribedBy]="describedById()"
68770
68747
  [ariaErrorMessage]="errorMessageId()"
68771
- (valueChange)="valueChange.emit($event)"
68748
+ (valueChange)="value.set($event)"
68772
68749
  [ariaLabel]="ariaLabel()"
68773
68750
  [disabled]="disabled()"
68774
68751
  [id]="controlId()"
@@ -68794,19 +68771,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68794
68771
  * @phase Dev
68795
68772
  */
68796
68773
  class UISwitch {
68797
- checkedChange = new EventEmitter();
68798
68774
  value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
68799
- checked = input(...(ngDevMode ? [undefined, { debugName: "checked" }] : []));
68775
+ checked = model(...(ngDevMode ? [undefined, { debugName: "checked" }] : []));
68800
68776
  ariaLabel = input(undefined, ...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
68801
68777
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
68802
68778
  id = input(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
68803
68779
  disabled = input(...(ngDevMode ? [undefined, { debugName: "disabled" }] : []));
68804
68780
  onInputChange(event) {
68805
68781
  const inputElement = event.target;
68806
- this.checkedChange.emit(inputElement.checked);
68782
+ this.checked.set(inputElement.checked);
68807
68783
  }
68808
68784
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UISwitch, deps: [], target: i0.ɵɵFactoryTarget.Component });
68809
- 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: `
68810
68786
  <input
68811
68787
  type="checkbox"
68812
68788
  [attr.aria-label]="ariaLabel()"
@@ -68835,9 +68811,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68835
68811
  `, encapsulation: ViewEncapsulation.None, host: {
68836
68812
  'data-bspk': 'switch',
68837
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"] }]
68838
- }], propDecorators: { checkedChange: [{
68839
- type: Output
68840
- }], 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 }] }] } });
68841
68815
 
68842
68816
  /**
68843
68817
  * A control that allows users to choose one or more items from a list or turn an feature on or off.
@@ -68867,7 +68841,7 @@ class UISwitchOption extends UISwitch {
68867
68841
  [checked]="checked()"
68868
68842
  [disabled]="disabled()"
68869
68843
  [ariaLabel]="ariaLabel() || computedAriaLabel()"
68870
- (checkedChange)="checkedChange.emit($event)">
68844
+ (checkedChange)="checked.set($event)">
68871
68845
  </ui-switch
68872
68846
  ></span>
68873
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"] }] });
@@ -68892,7 +68866,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68892
68866
  [checked]="checked()"
68893
68867
  [disabled]="disabled()"
68894
68868
  [ariaLabel]="ariaLabel() || computedAriaLabel()"
68895
- (checkedChange)="checkedChange.emit($event)">
68869
+ (checkedChange)="checked.set($event)">
68896
68870
  </ui-switch
68897
68871
  ></span>
68898
68872
  </ui-list-item>`,
@@ -68935,7 +68909,7 @@ class UITabGroup extends UITabListUtility {
68935
68909
  data-bspk="tab-group"
68936
68910
  [options]="options()"
68937
68911
  [value]="value()"
68938
- (valueChange)="valueChange.emit($event)"
68912
+ (valueChange)="value.set($event)"
68939
68913
  [label]="label()"
68940
68914
  [size]="size()"
68941
68915
  [width]="width()"
@@ -68951,7 +68925,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
68951
68925
  data-bspk="tab-group"
68952
68926
  [options]="options()"
68953
68927
  [value]="value()"
68954
- (valueChange)="valueChange.emit($event)"
68928
+ (valueChange)="value.set($event)"
68955
68929
  [label]="label()"
68956
68930
  [size]="size()"
68957
68931
  [width]="width()"
@@ -69014,7 +68988,7 @@ class UITable {
69014
68988
  return 0;
69015
68989
  });
69016
68990
  }
69017
- const start = this.pageIndex * this.pageSizeSafe;
68991
+ const start = this.pageIndex() * this.pageSizeSafe;
69018
68992
  const end = start + this.pageSizeSafe;
69019
68993
  return result.slice(start, end);
69020
68994
  }, ...(ngDevMode ? [{ debugName: "rows" }] : []));
@@ -69025,7 +68999,7 @@ class UITable {
69025
68999
  title = input(undefined, ...(ngDevMode ? [{ debugName: "title" }] : []));
69026
69000
  size = input('medium', ...(ngDevMode ? [{ debugName: "size" }] : []));
69027
69001
  pageSize = input(10, ...(ngDevMode ? [{ debugName: "pageSize" }] : []));
69028
- pageIndex = 0;
69002
+ pageIndex = signal(0, ...(ngDevMode ? [{ debugName: "pageIndex" }] : []));
69029
69003
  get sizeSafe() {
69030
69004
  return this.size() || 'medium';
69031
69005
  }
@@ -69063,15 +69037,12 @@ class UITable {
69063
69037
  trackRow(index, row) {
69064
69038
  return row.id;
69065
69039
  }
69066
- setPageIndex(idx) {
69067
- this.pageIndex = idx;
69068
- }
69069
69040
  startRow() {
69070
69041
  const total = this.data().length;
69071
- return total === 0 ? 0 : this.pageIndex * this.pageSizeSafe + 1;
69042
+ return total === 0 ? 0 : this.pageIndex() * this.pageSizeSafe + 1;
69072
69043
  }
69073
69044
  endRow() {
69074
- const end = this.pageIndex * this.pageSizeSafe + this.pageSizeSafe;
69045
+ const end = this.pageIndex() * this.pageSizeSafe + this.pageSizeSafe;
69075
69046
  return Math.min(end, this.data().length);
69076
69047
  }
69077
69048
  formatCell(value) {
@@ -69174,13 +69145,13 @@ class UITable {
69174
69145
  Showing {{ startRow() }}-{{ endRow() }} of {{ data().length }} results
69175
69146
  </div>
69176
69147
  <ui-pagination
69177
- [value]="pageIndex + 1"
69148
+ [value]="pageIndex() + 1"
69178
69149
  [numPages]="totalPages"
69179
- (onChange)="setPageIndex($event - 1)"></ui-pagination>
69150
+ (valueChange)="pageIndex.set($event - 1)"></ui-pagination>
69180
69151
  </div>
69181
69152
  }
69182
69153
  </div>
69183
- </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 });
69184
69155
  }
69185
69156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UITable, decorators: [{
69186
69157
  type: Component,
@@ -69261,9 +69232,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
69261
69232
  Showing {{ startRow() }}-{{ endRow() }} of {{ data().length }} results
69262
69233
  </div>
69263
69234
  <ui-pagination
69264
- [value]="pageIndex + 1"
69235
+ [value]="pageIndex() + 1"
69265
69236
  [numPages]="totalPages"
69266
- (onChange)="setPageIndex($event - 1)"></ui-pagination>
69237
+ (valueChange)="pageIndex.set($event - 1)"></ui-pagination>
69267
69238
  </div>
69268
69239
  }
69269
69240
  </div>
@@ -69381,7 +69352,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
69381
69352
  * @phase UXReview
69382
69353
  */
69383
69354
  class UITextarea {
69384
- valueChange = output();
69385
69355
  name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
69386
69356
  value = model('', ...(ngDevMode ? [{ debugName: "value" }] : []));
69387
69357
  ariaLabel = input(undefined, ...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
@@ -69402,7 +69372,7 @@ class UITextarea {
69402
69372
  maxRowsValid = computed(() => Math.min(10, Math.max(3, this.maxRows() || 10)), ...(ngDevMode ? [{ debugName: "maxRowsValid" }] : []));
69403
69373
  constructor() {
69404
69374
  this.value.subscribe((val) => {
69405
- this.valueChange.emit(val || '');
69375
+ this.value.set(val || '');
69406
69376
  });
69407
69377
  }
69408
69378
  handleBlur(event) {
@@ -69413,7 +69383,7 @@ class UITextarea {
69413
69383
  this.value.set(event.target.value);
69414
69384
  }
69415
69385
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UITextarea, deps: [], target: i0.ɵɵFactoryTarget.Component });
69416
- 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: `
69417
69387
  <textarea
69418
69388
  #el
69419
69389
  data-main-input
@@ -69472,7 +69442,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
69472
69442
  '[style.--min-rows]': 'minRowsValid()',
69473
69443
  '[style.--max-rows]': 'maxRowsValid()',
69474
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"] }]
69475
- }], 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 }] }] } });
69476
69446
 
69477
69447
  /**
69478
69448
  * A field wrapper for the UITextarea component.
@@ -69508,7 +69478,7 @@ class UITextareaField extends UITextarea {
69508
69478
  [ariaLabelledBy]="labelledById()"
69509
69479
  [ariaDescribedBy]="describedById()"
69510
69480
  [ariaErrorMessage]="errorMessageId()"
69511
- (valueChange)="valueChange.emit($event)"
69481
+ (valueChange)="value.set($event)"
69512
69482
  [ariaLabel]="ariaLabel()"
69513
69483
  [disabled]="disabled()"
69514
69484
  [id]="controlId()"
@@ -69536,7 +69506,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
69536
69506
  [ariaLabelledBy]="labelledById()"
69537
69507
  [ariaDescribedBy]="describedById()"
69538
69508
  [ariaErrorMessage]="errorMessageId()"
69539
- (valueChange)="valueChange.emit($event)"
69509
+ (valueChange)="value.set($event)"
69540
69510
  [ariaLabel]="ariaLabel()"
69541
69511
  [disabled]="disabled()"
69542
69512
  [id]="controlId()"