@abgov/angular-components 5.0.0 → 5.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abgov-angular-components.mjs","sources":["../../../../libs/angular-components/src/lib/value-directive.ts","../../../../libs/angular-components/src/lib/checked-directive.ts","../../../../libs/angular-components/src/lib/angular-components.module.ts","../../../../libs/angular-components/src/lib/components/base.component.ts","../../../../libs/angular-components/src/lib/components/accordion/accordion.ts","../../../../libs/angular-components/src/lib/components/badge/badge.ts","../../../../libs/angular-components/src/lib/components/block/block.ts","../../../../libs/angular-components/src/lib/components/button/button.ts","../../../../libs/angular-components/src/lib/components/button-group/button-group.ts","../../../../libs/angular-components/src/lib/components/calendar/calendar.ts","../../../../libs/angular-components/src/lib/components/callout/callout.ts","../../../../libs/angular-components/src/lib/components/card/card.ts","../../../../libs/angular-components/src/lib/components/card-content/card-content.ts","../../../../libs/angular-components/src/lib/components/card-actions/card-actions.ts","../../../../libs/angular-components/src/lib/components/card-image/card-image.ts","../../../../libs/angular-components/src/lib/components/checkbox/checkbox.ts","../../../../libs/angular-components/src/lib/components/checkbox-list/checkbox-list.ts","../../../../libs/angular-components/src/lib/components/chip/chip.ts","../../../../libs/angular-components/src/lib/components/circular-progress/circular-progress.ts","../../../../libs/angular-components/src/lib/components/column-layout/column-layout.ts","../../../../libs/angular-components/src/lib/components/container/container.ts","../../../../libs/angular-components/src/lib/components/data-grid/data-grid.ts","../../../../libs/angular-components/src/lib/components/date-picker/date-picker.ts","../../../../libs/angular-components/src/lib/components/details/details.ts","../../../../libs/angular-components/src/lib/components/divider/divider.ts","../../../../libs/angular-components/src/lib/components/drawer/drawer.ts","../../../../libs/angular-components/src/lib/components/dropdown/dropdown.ts","../../../../libs/angular-components/src/lib/components/dropdown-item/dropdown-item.ts","../../../../libs/angular-components/src/lib/components/file-upload-card/file-upload-card.ts","../../../../libs/angular-components/src/lib/components/file-upload-input/file-upload-input.ts","../../../../libs/angular-components/src/lib/components/filter-chip/filter-chip.ts","../../../../libs/angular-components/src/lib/components/footer/footer.ts","../../../../libs/angular-components/src/lib/components/footer-meta-section/footer-meta-section.ts","../../../../libs/angular-components/src/lib/components/footer-nav-section/footer-nav-section.ts","../../../../libs/angular-components/src/lib/components/form/public-form.ts","../../../../libs/angular-components/src/lib/components/form/public-form-page.ts","../../../../libs/angular-components/src/lib/components/form/public-form-summary.ts","../../../../libs/angular-components/src/lib/components/form/public-subform.ts","../../../../libs/angular-components/src/lib/components/form/public-subform-index.ts","../../../../libs/angular-components/src/lib/components/form/task.ts","../../../../libs/angular-components/src/lib/components/form/task-list.ts","../../../../libs/angular-components/src/lib/components/form/fieldset.ts","../../../../libs/angular-components/src/lib/components/form-item/form-item.ts","../../../../libs/angular-components/src/lib/components/form-item/form-item-slot.ts","../../../../libs/angular-components/src/lib/components/form-step/form-step.ts","../../../../libs/angular-components/src/lib/components/form-stepper/form-stepper.ts","../../../../libs/angular-components/src/lib/components/grid/grid.ts","../../../../libs/angular-components/src/lib/components/header/header.ts","../../../../libs/angular-components/src/lib/components/header-menu/header-menu.ts","../../../../libs/angular-components/src/lib/components/hero-banner/hero-banner.ts","../../../../libs/angular-components/src/lib/components/icon/icon.ts","../../../../libs/angular-components/src/lib/components/icon-button/icon-button.ts","../../../../libs/angular-components/src/lib/components/input/input.ts","../../../../libs/angular-components/src/lib/components/input-number/input-number.ts","../../../../libs/angular-components/src/lib/components/linear-progress/linear-progress.ts","../../../../libs/angular-components/src/lib/components/link/link.ts","../../../../libs/angular-components/src/lib/components/microsite-header/microsite-header.ts","../../../../libs/angular-components/src/lib/components/modal/modal.ts","../../../../libs/angular-components/src/lib/components/menu-button/menu-button.ts","../../../../libs/angular-components/src/lib/components/menu-button/menu-action.ts","../../../../libs/angular-components/src/lib/components/notification/notification.ts","../../../../libs/angular-components/src/lib/components/page-block/page-block.ts","../../../../libs/angular-components/src/lib/components/pages/pages.ts","../../../../libs/angular-components/src/lib/components/pagination/pagination.ts","../../../../libs/angular-components/src/lib/components/popover/popover.ts","../../../../libs/angular-components/src/lib/components/push-drawer/push-drawer.ts","../../../../libs/angular-components/src/lib/components/radio-group/radio-group.ts","../../../../libs/angular-components/src/lib/components/radio-item/radio-item.ts","../../../../libs/angular-components/src/lib/components/side-menu/side-menu.ts","../../../../libs/angular-components/src/lib/components/side-menu-group/side-menu-group.ts","../../../../libs/angular-components/src/lib/components/side-menu-heading/side-menu-heading.ts","../../../../libs/angular-components/src/lib/components/skeleton/skeleton.ts","../../../../libs/angular-components/src/lib/components/spacer/spacer.ts","../../../../libs/angular-components/src/lib/components/tab/tab.ts","../../../../libs/angular-components/src/lib/components/table/table.ts","../../../../libs/angular-components/src/lib/components/table-sort-header/table-sort-header.ts","../../../../libs/angular-components/src/lib/components/tabs/tabs.ts","../../../../libs/angular-components/src/lib/components/temporary-notification-ctrl/temporary-notification-ctrl.ts","../../../../libs/angular-components/src/lib/components/text/text.ts","../../../../libs/angular-components/src/lib/components/textarea/textarea.ts","../../../../libs/angular-components/src/lib/components/tooltip/tooltip.ts","../../../../libs/angular-components/src/lib/components/work-side-menu/work-side-menu.ts","../../../../libs/angular-components/src/lib/components/work-side-menu-group/work-side-menu-group.ts","../../../../libs/angular-components/src/lib/components/work-side-menu-item/work-side-menu-item.ts","../../../../libs/angular-components/src/lib/components/work-side-notification-item/work-side-notification-item.ts","../../../../libs/angular-components/src/lib/components/work-side-notification-panel/work-side-notification-panel.ts","../../../../libs/angular-components/src/abgov-angular-components.ts"],"sourcesContent":["import { forwardRef, Directive, ElementRef, HostListener } from \"@angular/core\";\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\n// @deprecated: Use the new <goab-input .. /> component\n@Directive({\n standalone: true,\n selector: \"[goaValue]\",\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ValueDirective),\n multi: true,\n },\n ],\n})\nexport class ValueDirective implements ControlValueAccessor {\n private _value = \"\";\n private _disabled = false;\n\n /* eslint-disable @typescript-eslint/no-explicit-any */\n onChange: any = () => {\n /* default implementation */\n };\n onTouched: any = () => {\n /* default implementation */\n };\n\n get value(): string {\n return this._value;\n }\n\n set value(val: string) {\n this._value = val;\n this.onChange(this._value);\n this.onTouched();\n this.elementRef.nativeElement.value = val;\n }\n\n writeValue(value: string) {\n this.value = value;\n }\n\n registerOnChange(fn: () => void) {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void) {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._disabled = isDisabled;\n this.elementRef.nativeElement.disabled = isDisabled;\n }\n\n constructor(protected elementRef: ElementRef) {}\n\n @HostListener(\"_change\", [\"$event\"])\n listenForValueChange(event: Event) {\n const value = (event as CustomEvent<{ value: string }>).detail.value;\n this.value = value;\n }\n @HostListener(\"disabledChange\", [\"$event\"])\n listenForDisabledChange(event: Event) {\n const isDisabled = (event as CustomEvent<{ disabled: boolean }>).detail.disabled;\n this.setDisabledState(isDisabled);\n }\n}\n\n@Directive({\n standalone: true,\n selector: \"[goaValueList]\",\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ValueListDirective),\n multi: true,\n },\n ],\n})\nexport class ValueListDirective implements ControlValueAccessor {\n private _value?: string[] = [];\n\n onChange: any = () => {};\n onTouched: any = () => {};\n\n get value(): string[] | undefined {\n return this._value;\n }\n\n set value(val: string[] | undefined) {\n if (val && val !== this._value) {\n this._setValue(val);\n this.elementRef.nativeElement.value = JSON.stringify(val);\n }\n }\n\n writeValue(value?: string[]) {\n if (value) {\n this.value = value;\n }\n }\n\n registerOnChange(fn: () => void) {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void) {\n this.onTouched = fn;\n }\n\n constructor(protected elementRef: ElementRef) {}\n\n @HostListener(\"_change\", [\"$event\"])\n listenForValueChange(event: Event) {\n const value = (event as CustomEvent<{ value: string }>).detail.value;\n if (!value) {\n this._setValue(undefined);\n return;\n }\n\n try {\n this.value = JSON.parse(value);\n } catch (e) {\n // we still need to trigger the events to prevent any previous valid value to remain set.\n const v = value.match(/^[\\w\\s,]*$/) ? value.split(\",\") : undefined;\n this._setValue(v);\n }\n }\n\n _setValue(value?: string[]) {\n this._value = value;\n this.onChange(value);\n this.onTouched();\n }\n}\n","import {\n forwardRef,\n Directive,\n ElementRef,\n HostListener,\n Renderer2,\n} from \"@angular/core\";\nimport { CheckboxControlValueAccessor, NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\n// @deprecated: Use the new <goab-checkbox .. /> component\n@Directive({\n standalone: true,\n selector: \"[goaChecked]\",\n providers: [\n {\n useExisting: forwardRef(() => CheckedDirective),\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n },\n ],\n})\nexport class CheckedDirective extends CheckboxControlValueAccessor {\n private _checked = false;\n\n /* eslint-disable @typescript-eslint/no-explicit-any */\n override onChange: any = () => {\n /** No implementation **/\n };\n override onTouched: any = () => {\n /** No implementation **/\n };\n\n constructor(\n protected renderer: Renderer2,\n protected elementRef: ElementRef,\n ) {\n super(renderer, elementRef);\n }\n\n get value(): string {\n return this._checked ? \"checked\" : \"\";\n }\n\n set value(checked: any) {\n this._checked = !!checked;\n this.onChange(this._checked);\n this.onTouched();\n this.elementRef.nativeElement.checked = checked;\n }\n\n override writeValue(checked: any) {\n this.value = checked;\n }\n\n override registerOnChange(fn: (_: any) => void) {\n this.onChange = fn;\n }\n\n override registerOnTouched(fn: () => void) {\n this.onTouched = fn;\n }\n\n @HostListener(\"_change\", [\"$event\"])\n listenForValueChange(event: Event) {\n const checked = (event as CustomEvent<{ checked: boolean }>).detail.checked;\n this.value = checked;\n }\n}\n","import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from \"@angular/core\";\n\nimport { ValueDirective, ValueListDirective } from \"./value-directive\";\nimport { CheckedDirective } from \"./checked-directive\";\n\n@NgModule({\n imports: [ValueDirective, ValueListDirective, CheckedDirective],\n exports: [ValueDirective, ValueListDirective, CheckedDirective],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class AngularComponentsModule {}\n\nexport { ValueDirective, ValueListDirective, CheckedDirective };\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Spacing } from \"@abgov/ui-components-common\";\nimport {\n booleanAttribute,\n Component,\n Input,\n ElementRef,\n ViewChild,\n Renderer2,\n} from \"@angular/core\";\nimport { ControlValueAccessor } from \"@angular/forms\";\n\n@Component({\n standalone: true,\n template: ``, //** IMPLEMENT IN SUBCLASS\n})\nexport abstract class GoabBaseComponent {\n @Input() mt?: Spacing;\n @Input() mb?: Spacing;\n @Input() ml?: Spacing;\n @Input() mr?: Spacing;\n @Input() testId?: string;\n}\n\n@Component({\n standalone: true,\n template: ``, //** IMPLEMENT IN SUBCLASS\n})\n/**\n * An abstract base class that extends `GoabBaseComponent` and implements the `ControlValueAccessor` interface.\n * This class provides a foundation for creating custom form controls in Angular, enabling them to integrate\n * seamlessly with Angular forms. It includes support for handling value changes, touch events, and disabled states.\n *\n * ## Features\n * - Supports `disabled=\"true\"` and `error=\"true` attribute bindings for convenience.\n * - Handles form control value changes and touch events via `ControlValueAccessor` methods.\n * - Allows for flexible value types (`unknown`), making it suitable for various data types like integers, dates, or booleans.\n * - Uses ViewChild to capture a reference to the native GOA web component element via `#goaComponentRef`.\n * - Uses Renderer2 for safe DOM manipulation (compatible with SSR and security best practices).\n *\n * ## Usage\n * Extend this class to create custom form controls. Child components must:\n * 1. Add `#goaComponentRef` template reference to their `goa-*` element in the template\n * 2. Inject `Renderer2` in their constructor and pass it to `super(renderer)`\n *\n * ### Example:\n * ```typescript\n * @Component({\n * template: `<goa-input #goaComponentRef [value]=\"value\" ...></goa-input>`\n * })\n * export class GoabInput extends GoabControlValueAccessor {\n * constructor(private cdr: ChangeDetectorRef, renderer: Renderer2) {\n * super(renderer); // Required: pass Renderer2 to base class\n * }\n * }\n * ```\n *\n * ## Properties\n * - `id?`: An optional identifier for the component.\n * - `disabled?`: A boolean indicating whether the component is disabled.\n * - `error?`: A boolean indicating whether the component is in an error state.\n * - `value?`: The current value of the component, which can be of any type.\n *\n * ## Methods\n * - `markAsTouched()`: Marks the component as touched and triggers the `fcTouched` callback if defined.\n * - `writeValue(value: unknown)`: Writes a new value to the form control (can be overridden for special behavior like checkbox).\n * - `registerOnChange(fn: any)`: Registers a function to handle changes in the form control value.\n * - `registerOnTouched(fn: any)`: Registers a function to handle touch events on the form control.\n * - `setDisabledState?(isDisabled: boolean)`: Sets the disabled state of the component.\n * - `convertValueToString(value: unknown)`: Converts a value to a string for DOM attribute assignment (can be overridden).\n *\n * ## Callbacks\n * - `fcChange?`: A function to handle changes in the form control value.\n * - `fcTouched?`: A function to handle touch events on the form control.\n */\nexport abstract class GoabControlValueAccessor\n extends GoabBaseComponent\n implements ControlValueAccessor\n{\n @Input() id?: string;\n // supports disabled=\"true\" instead of [disabled]=\"true\"\n @Input({ transform: booleanAttribute }) public disabled?: boolean;\n // supports error=\"true\" instead of [error]=\"true\"\n @Input({ transform: booleanAttribute }) public error?: boolean;\n // this should be unknown (not string) as it might be an integer or a date or a boolean\n @Input() value?: unknown | null | undefined;\n\n // implement ControlValueAccessor\n\n /**\n * Function to handle changes in the form control value.\n * @param {unknown} value - The new value.\n */\n public fcChange?: (value: unknown) => void;\n\n /**\n * Function to handle touch events on the form control.\n */\n public fcTouched?: () => unknown;\n\n private touched = false;\n\n /**\n * Marks the component as touched. If the component is not already marked as touched,\n * it triggers the `fcTouched` callback (if defined) and sets the `touched` property to `true`.\n */\n public markAsTouched() {\n if (!this.touched) {\n this.fcTouched?.();\n this.touched = true;\n }\n }\n\n /**\n * Reference to the native GOA web component element.\n * Child templates should declare `#goaComponentRef` on the `goa-*` element.\n * The base class captures it here so children don't need their own ViewChild.\n */\n @ViewChild(\"goaComponentRef\", { static: false, read: ElementRef })\n protected goaComponentRef?: ElementRef;\n\n constructor(protected renderer: Renderer2) {\n super();\n }\n\n /**\n * Convert an arbitrary value into a string for DOM attribute assignment.\n * Child classes can override when they need special formatting.\n * @param value The value to convert\n * @returns string representation or empty string for nullish/empty\n */\n protected convertValueToString(value: unknown): string {\n if (value === null || value === undefined || value === \"\") {\n return \"\";\n }\n return String(value);\n }\n\n /**\n * Writes a new value to the form control.\n * @param {unknown} value - The value to write.\n */\n public writeValue(value: unknown): void {\n this.value = value;\n const el = this.goaComponentRef?.nativeElement as HTMLElement | undefined;\n if (el) {\n const stringValue = this.convertValueToString(value);\n this.renderer.setAttribute(el, \"value\", stringValue);\n }\n }\n\n /**\n * Registers a function to call when the form control value changes.\n * @param {function} fn - The function to call.\n */\n public registerOnChange(fn: any): void {\n this.fcChange = fn;\n }\n\n /**\n * Registers a function to call when the form control is touched.\n * @param {function} fn - The function to call.\n */\n public registerOnTouched(fn: any): void {\n this.fcTouched = fn;\n }\n\n /**\n * Sets the disabled state of the component.\n *\n * @param isDisabled - A boolean indicating whether the component should be disabled.\n */\n public setDisabledState?(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n}\n","import {\n GoabAccordionHeadingSize,\n GoabAccordionIconPosition,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n Output,\n EventEmitter,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-accordion\",\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-accordion\n [attr.heading]=\"heading\"\n [attr.secondarytext]=\"secondaryText\"\n [attr.open]=\"open\"\n [attr.headingsize]=\"headingSize\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.testid]=\"testId\"\n [attr.iconposition]=\"iconPosition\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n >\n <div slot=\"headingcontent\">\n <ng-container [ngTemplateOutlet]=\"headingContent\"></ng-container>\n </div>\n <ng-content></ng-content>\n </goa-accordion>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabAccordion extends GoabBaseComponent implements OnInit {\n @Input() heading?: string;\n @Input() secondaryText?: string;\n @Input({ transform: booleanAttribute }) open?: boolean;\n @Input() headingSize?: GoabAccordionHeadingSize;\n @Input() headingContent!: TemplateRef<any>;\n @Input() maxWidth?: string;\n @Input() iconPosition?: GoabAccordionIconPosition;\n\n @Output() onChange = new EventEmitter<boolean>();\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onChange(e: Event) {\n const detail = (e as CustomEvent).detail;\n this.onChange.emit(detail.open as boolean);\n }\n}\n","import {\n GoabBadgeType,\n GoabIconType,\n GoabBadgeSize,\n GoabBadgeEmphasis,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-badge\",\n template: `\n @if (isReady) {\n <goa-badge\n [attr.version]=\"version\"\n [attr.size]=\"size\"\n [attr.emphasis]=\"emphasis\"\n [attr.type]=\"type\"\n [attr.icon]=\"icon ? 'true' : 'false'\"\n [attr.icontype]=\"iconType\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.content]=\"content\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n </goa-badge>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n\n styles: [\n `\n :host {\n display: contents;\n }\n `,\n ],\n})\nexport class GoabBadge extends GoabBaseComponent implements OnInit {\n @Input() type?: GoabBadgeType;\n @Input() content?: string;\n // Ensure boolean input; attribute only set when true so default behaviour is false\n @Input({ transform: booleanAttribute }) icon?: boolean;\n @Input() iconType?: GoabIconType;\n @Input() size?: GoabBadgeSize = \"medium\";\n @Input() emphasis?: GoabBadgeEmphasis = \"strong\";\n @Input() ariaLabel?: string;\n\n isReady = false;\n version = \"2\";\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabBlockAlignment,\n GoabBlockDirection,\n Spacing,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-block\",\n\n template: `\n @if (isReady) {\n <goa-block\n [attr.gap]=\"gap\"\n [attr.direction]=\"direction\"\n [attr.alignment]=\"alignment\"\n [attr.width]=\"width\"\n [attr.min-width]=\"minWidth\"\n [attr.max-width]=\"maxWidth\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-block>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabBlock extends GoabBaseComponent implements OnInit {\n @Input() gap?: Spacing;\n @Input() direction?: GoabBlockDirection;\n @Input() alignment?: GoabBlockAlignment;\n @Input() width?: string;\n @Input() minWidth?: string;\n @Input() maxWidth?: string;\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabButtonSize,\n GoabButtonType,\n GoabButtonVariant,\n GoabIconType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-button\",\n\n template: `\n @if (isReady) {\n <goa-button\n [attr.version]=\"version\"\n [attr.type]=\"type\"\n [attr.size]=\"size\"\n [attr.variant]=\"variant\"\n [disabled]=\"disabled\"\n [attr.leadingicon]=\"leadingIcon\"\n [attr.trailingicon]=\"trailingIcon\"\n [attr.width]=\"width\"\n [attr.testid]=\"testId\"\n [attr.action]=\"action\"\n [attr.action-arg]=\"actionArg\"\n [attr.action-args]=\"JSON.stringify(actionArgs)\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_click)=\"_onClick()\"\n >\n <ng-content />\n </goa-button>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabButton extends GoabBaseComponent implements OnInit {\n @Input() type?: GoabButtonType = \"primary\";\n @Input() size?: GoabButtonSize;\n @Input() variant?: GoabButtonVariant;\n @Input({ transform: booleanAttribute }) disabled?: boolean;\n @Input() leadingIcon?: GoabIconType;\n @Input() trailingIcon?: GoabIconType;\n @Input() width?: string;\n @Input() action?: string;\n @Input() actionArg?: string;\n @Input() actionArgs?: Record<string, unknown>;\n\n @Output() onClick = new EventEmitter();\n\n isReady = false;\n version = \"2\";\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onClick() {\n this.onClick.emit();\n }\n\n protected readonly JSON = JSON;\n}\n","import {\n GoabButtonGroupAlignment,\n GoabButtonGroupGap,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-button-group\",\n\n template: `\n @if (isReady) {\n <goa-button-group\n [attr.alignment]=\"alignment\"\n [attr.gap]=\"gap\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-button-group>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabButtonGroup extends GoabBaseComponent implements OnInit {\n @Input() alignment?: GoabButtonGroupAlignment;\n @Input() gap?: GoabButtonGroupGap;\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CalendarDate,\n GoabCalendarOnChangeDetail,\n Once,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-calendar\",\n\n template: `\n @if (isReady) {\n <goa-calendar\n [attr.name]=\"name\"\n [attr.value]=\"valueString()\"\n [attr.min]=\"minString()\"\n [attr.max]=\"maxString()\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n [attr.version]=\"version\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n </goa-calendar>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabCalendar extends GoabBaseComponent implements OnInit {\n version = \"2\";\n\n @Input() name?: string;\n @Input() value?: Date | string;\n @Input() min?: Date | string | undefined;\n @Input() max?: Date | string | undefined;\n\n @Output() onChange = new EventEmitter<GoabCalendarOnChangeDetail>();\n\n isReady = false;\n\n private once: Once = new Once();\n\n private formatValue(param: string, val: Date | string | null | undefined): string {\n if (!val) return \"\";\n\n this.once.when(val instanceof Date).do(param, () => {\n console.warn(\n `GoabCalendar: Using Date for '${param}' is deprecated. Use a string in YYYY-MM-DD format instead.`,\n );\n });\n\n return new CalendarDate(val).toString();\n }\n\n valueString(): string {\n return this.formatValue(\"value\", this.value);\n }\n\n minString(): string {\n return this.formatValue(\"min\", this.min);\n }\n\n maxString(): string {\n return this.formatValue(\"max\", this.max);\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onChange(e: Event) {\n const details = (e as CustomEvent<GoabCalendarOnChangeDetail>).detail;\n this.onChange.emit(details);\n }\n}\n","import {\n GoabCalloutAriaLive,\n GoabCalloutSize,\n GoabCalloutType,\n GoabCalloutIconTheme,\n GoabCalloutEmphasis,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-callout\",\n\n template: `\n @if (isReady) {\n <goa-callout\n [attr.version]=\"version\"\n [attr.type]=\"type\"\n [attr.heading]=\"heading\"\n [attr.size]=\"size\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.arialive]=\"ariaLive\"\n [attr.icontheme]=\"iconTheme\"\n [attr.emphasis]=\"emphasis\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-callout>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabCallout extends GoabBaseComponent implements OnInit {\n isReady = false;\n version = \"2\";\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n @Input() type?: GoabCalloutType = \"information\";\n @Input() heading?: string = \"\";\n @Input() size?: GoabCalloutSize = \"large\";\n @Input() maxWidth?: string;\n @Input() ariaLive?: GoabCalloutAriaLive = \"off\";\n @Input() iconTheme?: GoabCalloutIconTheme = \"outline\";\n @Input() emphasis?: GoabCalloutEmphasis = \"medium\";\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-card\",\n\n template: `\n @if (isReady) {\n <goa-card\n [attr.elevation]=\"elevation\"\n [attr.width]=\"width\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-card>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabCard extends GoabBaseComponent implements OnInit {\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n @Input({ transform: numberAttribute }) elevation?: number;\n @Input() width?: string;\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-card-content\",\n template: `\n @if (isReady) {\n <goa-card-content>\n <ng-content />\n </goa-card-content>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabCardContent implements OnInit {\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-card-actions\",\n template: `\n @if (isReady) {\n <goa-card-actions>\n <ng-content />\n </goa-card-actions>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabCardActions implements OnInit {\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-card-image\",\n template: `\n @if (isReady) {\n <goa-card-image [attr.src]=\"src\" [attr.height]=\"height\">\n <ng-content />\n </goa-card-image>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabCardImage implements OnInit {\n @Input({ required: true }) src!: string;\n @Input({ required: true }) height!: string;\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabCheckboxOnChangeDetail,\n GoabCheckboxSize,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n TemplateRef,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n Renderer2,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport { GoabControlValueAccessor } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-checkbox\",\n template: `@if (isReady) {\n <goa-checkbox\n #goaComponentRef\n [attr.version]=\"version\"\n [attr.name]=\"name\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [attr.indeterminate]=\"indeterminate ? 'true' : undefined\"\n [attr.error]=\"error\"\n [attr.text]=\"text\"\n [value]=\"value\"\n [attr.testid]=\"testId\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.description]=\"getDescriptionAsString()\"\n [attr.revealarialabel]=\"revealArialLabel\"\n [id]=\"id\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.size]=\"size\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n <div slot=\"description\">\n <ng-container [ngTemplateOutlet]=\"getDescriptionAsTemplate()\"></ng-container>\n </div>\n @if (reveal) {\n <div slot=\"reveal\">\n <ng-container [ngTemplateOutlet]=\"reveal\"></ng-container>\n </div>\n }\n </goa-checkbox>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabCheckbox),\n },\n ],\n imports: [NgTemplateOutlet],\n})\nexport class GoabCheckbox extends GoabControlValueAccessor implements OnInit {\n isReady = false;\n version = \"2\";\n\n constructor(\n private cdr: ChangeDetectorRef,\n renderer: Renderer2,\n ) {\n super(renderer);\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n @Input() name?: string;\n @Input({ transform: booleanAttribute }) checked?: boolean;\n @Input({ transform: booleanAttribute }) indeterminate?: boolean;\n @Input() text?: string;\n // ** NOTE: can we just use the base component for this?\n @Input() override value?: string | number | boolean | null;\n @Input() ariaLabel?: string;\n @Input() description!: string | TemplateRef<any>;\n @Input() reveal?: TemplateRef<any>;\n @Input() revealArialLabel?: string;\n @Input() maxWidth?: string;\n @Input() size?: GoabCheckboxSize = \"default\";\n\n @Output() onChange = new EventEmitter<GoabCheckboxOnChangeDetail>();\n\n getDescriptionAsString(): string {\n return typeof this.description === \"string\" ? this.description : \"\";\n }\n\n getDescriptionAsTemplate(): TemplateRef<any> | null {\n if (this.description) {\n return typeof this.description === \"string\" ? null : this.description;\n }\n return null;\n }\n\n _onChange(e: Event) {\n const detail = { ...(e as CustomEvent<GoabCheckboxOnChangeDetail>).detail, event: e };\n this.onChange.emit(detail);\n this.markAsTouched();\n this.fcChange?.(detail.binding === \"check\" ? detail.checked : detail.value || \"\");\n }\n\n // Checkbox is a special case: it uses `checked` instead of `value`.\n override writeValue(value: string | number | boolean | null): void {\n this.value = value;\n this.checked = !!value;\n\n const el = this.goaComponentRef?.nativeElement as HTMLElement | undefined;\n if (el) {\n this.renderer.setAttribute(el, \"checked\", this.checked ? \"true\" : \"false\");\n }\n }\n}\n","import { GoabCheckboxListOnChangeDetail, GoabCheckboxSize } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n OnInit,\n ChangeDetectorRef,\n Renderer2,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\nimport { GoabControlValueAccessor } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-checkbox-list\",\n template: `@if (isReady) {\n <goa-checkbox-list\n [attr.name]=\"name\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [attr.error]=\"error\"\n [attr.testid]=\"testId\"\n [id]=\"id\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.version]=\"version\"\n [attr.size]=\"size\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n </goa-checkbox-list>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabCheckboxList),\n },\n ],\n})\nexport class GoabCheckboxList extends GoabControlValueAccessor implements OnInit {\n isReady = false;\n version = \"2\";\n @Input() name!: string;\n @Input() maxWidth?: string;\n @Input() size?: GoabCheckboxSize = \"default\";\n\n // Override value to handle string arrays consistently\n @Input() override value?: string[];\n\n constructor(\n private cdr: ChangeDetectorRef,\n renderer: Renderer2,\n ) {\n super(renderer);\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n @Output() onChange = new EventEmitter<GoabCheckboxListOnChangeDetail>();\n\n _onChange(e: Event) {\n const detail = {\n ...(e as CustomEvent<GoabCheckboxListOnChangeDetail>).detail,\n event: e,\n };\n this.onChange.emit(detail);\n this.markAsTouched();\n\n // Update the form control with the selected values\n const selectedValues = detail.value || [];\n // clone to ensure a new reference so the underlying web component updates\n this.value = [...selectedValues];\n this.fcChange?.([...selectedValues]);\n }\n\n // Simplified writeValue - expects array input directly\n override writeValue(value: string[] | null): void {\n // clone to ensure a new reference and trigger downstream updates\n this.value = Array.isArray(value) ? [...value] : [];\n }\n}\n","import {\n GoabChipTheme,\n GoabChipVariant,\n GoabIconType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-chip\",\n\n template: `@if (isReady) {\n <goa-chip\n [attr.leadingicon]=\"leadingIcon\"\n [attr.variant]=\"variant\"\n [attr.error]=\"error\"\n [attr.deletable]=\"deletable\"\n [attr.icontheme]=\"iconTheme\"\n [attr.content]=\"content\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_click)=\"_onClick()\"\n >\n <ng-content />\n </goa-chip>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabChip extends GoabBaseComponent implements OnInit {\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n @Input() leadingIcon?: GoabIconType | null;\n @Input({ transform: booleanAttribute }) error?: boolean;\n @Input({ transform: booleanAttribute }) deletable?: boolean;\n @Input() content?: string = \"\";\n @Input() variant?: GoabChipVariant;\n @Input() iconTheme?: GoabChipTheme;\n\n @Output() onClick = new EventEmitter();\n\n _onClick() {\n this.onClick.emit();\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n booleanAttribute,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport {\n GoabCircularProgressSize,\n GoabCircularProgressVariant,\n} from \"@abgov/ui-components-common\";\n\n@Component({\n standalone: true,\n selector: \"goab-circular-progress\",\n template: `\n @if (isReady) {\n <goa-circular-progress\n [attr.variant]=\"variant || 'inline'\"\n [attr.size]=\"size || 'large'\"\n [attr.message]=\"message\"\n [attr.visible]=\"visible\"\n [attr.progress]=\"progress\"\n [attr.testid]=\"testId\"\n >\n </goa-circular-progress>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabCircularProgress implements OnInit {\n @Input() variant?: GoabCircularProgressVariant;\n @Input() size?: GoabCircularProgressSize;\n @Input() message?: string;\n @Input({ transform: booleanAttribute }) visible?: boolean;\n @Input({ transform: numberAttribute }) progress?: number;\n @Input() testId?: string;\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-column-layout\",\n template: `\n @if (isReady) {\n <goa-one-column-layout>\n <ng-content />\n </goa-one-column-layout>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabColumnLayout implements OnInit {\n /** no props **/\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabContainerAccent,\n GoabContainerPadding,\n GoabContainerType,\n GoabContainerWidth,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-container\",\n imports: [NgTemplateOutlet],\n template: `@if (isReady) {\n <goa-container\n [attr.type]=\"type\"\n [attr.accent]=\"accent\"\n [attr.padding]=\"padding\"\n [attr.width]=\"width\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.minheight]=\"minHeight\"\n [attr.maxheight]=\"maxHeight\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n @if (title) {\n <div slot=\"title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n }\n <ng-content />\n @if (actions) {\n <div slot=\"actions\">\n <ng-container [ngTemplateOutlet]=\"actions\"></ng-container>\n </div>\n }\n </goa-container>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabContainer extends GoabBaseComponent implements OnInit {\n @Input() type?: GoabContainerType = \"interactive\";\n @Input() accent?: GoabContainerAccent = \"filled\";\n @Input() padding?: GoabContainerPadding = \"relaxed\";\n @Input() width?: GoabContainerWidth = \"full\";\n @Input() maxWidth?: string;\n @Input() minHeight?: string;\n @Input() maxHeight?: string;\n @Input() title!: TemplateRef<any>;\n @Input() actions!: TemplateRef<any>;\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n ChangeDetectorRef,\n OnInit,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-data-grid\",\n\n template: `\n @if (isReady) {\n <goa-data-grid\n [attr.keyboard-icon-visibility]=\"keyboardIconVisibility\"\n [attr.keyboard-icon-position]=\"keyboardIconPosition\"\n [attr.keyboard-nav]=\"keyboardNav\"\n >\n <ng-content></ng-content>\n </goa-data-grid>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabDataGrid implements OnInit {\n @Input() keyboardIconVisibility: \"visible\" | \"hidden\" = \"visible\";\n @Input() keyboardIconPosition: \"left\" | \"right\" = \"left\";\n @Input({ required: true }) keyboardNav!: \"layout\" | \"table\";\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CalendarDate,\n GoabDatePickerInputType,\n GoabDatePickerOnChangeDetail,\n Once,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n ElementRef,\n HostListener,\n OnInit,\n ChangeDetectorRef,\n Renderer2,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\nimport { GoabControlValueAccessor } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-date-picker\",\n\n template: `@if (isReady) {\n <goa-date-picker\n #goaComponentRef\n [attr.name]=\"name\"\n [attr.value]=\"valueString()\"\n [attr.min]=\"minString()\"\n [attr.max]=\"maxString()\"\n [attr.error]=\"error\"\n [attr.disabled]=\"disabled\"\n [attr.relative]=\"relative\"\n [attr.type]=\"type\"\n [attr.testid]=\"testId\"\n [attr.width]=\"width\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n [attr.version]=\"version\"\n (_change)=\"_onChange($event)\"\n >\n </goa-date-picker>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabDatePicker),\n },\n ],\n})\nexport class GoabDatePicker extends GoabControlValueAccessor implements OnInit {\n isReady = false;\n version = \"2\";\n\n @Input() name?: string;\n @Input() override value?: Date | string | null | undefined;\n @Input() min?: Date | string;\n @Input() max?: Date | string;\n @Input() type?: GoabDatePickerInputType;\n /***\n * @deprecated This property has no effect and will be removed in a future version\n */\n @Input() relative?: boolean;\n @Input() width?: string;\n\n @Output() onChange = new EventEmitter<GoabDatePickerOnChangeDetail>();\n\n private once: Once = new Once();\n\n private formatValue(param: string, val: Date | string | null | undefined): string {\n if (!val) return \"\";\n\n this.once.when(val instanceof Date).do(param, () => {\n console.warn(\n `GoabDatePicker: Using Date for '${param}' is deprecated. Use a string in YYYY-MM-DD format instead.`,\n );\n });\n\n return new CalendarDate(val).toString();\n }\n\n valueString(): string {\n return this.formatValue(\"value\", this.value);\n }\n\n minString(): string {\n return this.formatValue(\"min\", this.min);\n }\n\n maxString(): string {\n return this.formatValue(\"max\", this.max);\n }\n\n _onChange(e: Event) {\n const detail = {\n ...(e as CustomEvent<GoabDatePickerOnChangeDetail>).detail,\n event: e,\n };\n this.onChange.emit(detail);\n this.markAsTouched();\n this.fcChange?.(detail.value);\n }\n\n constructor(\n protected elementRef: ElementRef,\n private cdr: ChangeDetectorRef,\n renderer: Renderer2,\n ) {\n super(renderer);\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n\n if (this.value && typeof this.value !== \"string\") {\n console.warn(\n \"Using a `Date` type for value is deprecated. Instead use a string of the format `yyyy-mm-dd`\",\n );\n }\n }\n\n override setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n this.elementRef.nativeElement.disabled = isDisabled;\n }\n\n @HostListener(\"disabledChange\", [\"$event\"])\n listenDisabledChange(event: Event) {\n const isDisabled = (event as CustomEvent<{ disabled: boolean }>).detail.disabled;\n this.setDisabledState(isDisabled);\n }\n\n override writeValue(value: Date | null): void {\n this.value = value;\n\n const datePickerEl = this.goaComponentRef?.nativeElement as HTMLElement | undefined;\n if (datePickerEl) {\n if (!value) {\n this.renderer.setAttribute(datePickerEl, \"value\", \"\");\n } else {\n this.renderer.setAttribute(\n datePickerEl,\n \"value\",\n value instanceof Date ? new CalendarDate(value).toString() : value,\n );\n }\n }\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-details\",\n\n template: `\n @if (isReady) {\n <goa-details\n [attr.heading]=\"heading\"\n [attr.testid]=\"testId\"\n [attr.open]=\"open\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-details>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabDetails extends GoabBaseComponent implements OnInit {\n @Input({ required: true }) heading!: string;\n @Input({ transform: booleanAttribute }) open?: boolean;\n @Input() maxWidth?: string;\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-divider\",\n\n template: `\n @if (isReady) {\n <goa-divider\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n </goa-divider>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabDivider extends GoabBaseComponent implements OnInit {\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import { NgTemplateOutlet } from \"@angular/common\";\nimport {\n booleanAttribute,\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n EventEmitter,\n Input,\n Output,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { GoabDrawerPosition, GoabDrawerSize } from \"@abgov/ui-components-common\";\n\n@Component({\n standalone: true,\n selector: \"goab-drawer\",\n imports: [NgTemplateOutlet],\n template: `@if (isReady) {\n <goa-drawer\n [open]=\"open\"\n [attr.position]=\"position\"\n [attr.heading]=\"getHeadingAsString()\"\n [attr.maxsize]=\"maxSize\"\n [attr.testid]=\"testId\"\n [attr.version]=\"version\"\n (_close)=\"_onClose()\"\n >\n <ng-content></ng-content>\n <div slot=\"heading\">\n <ng-container [ngTemplateOutlet]=\"getHeadingAsTemplate()\"></ng-container>\n </div>\n <div slot=\"actions\">\n <ng-container [ngTemplateOutlet]=\"actions\"></ng-container>\n </div>\n </goa-drawer>\n } `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabDrawer implements OnInit {\n version = \"2\";\n\n @Input({ required: true, transform: booleanAttribute }) open!: boolean;\n @Input({ required: true }) position!: GoabDrawerPosition;\n @Input() heading!: string | TemplateRef<any>;\n @Input() maxSize?: GoabDrawerSize;\n @Input() testId?: string;\n @Input() actions!: TemplateRef<any>;\n @Output() onClose = new EventEmitter();\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onClose() {\n this.onClose.emit();\n }\n\n getHeadingAsString(): string {\n return this.heading instanceof TemplateRef ? \"\" : this.heading;\n }\n\n getHeadingAsTemplate(): TemplateRef<any> | null {\n if (!this.heading) return null;\n return this.heading instanceof TemplateRef ? this.heading : null;\n }\n}\n","import {\n GoabDropdownOnChangeDetail,\n GoabDropdownSize,\n GoabIconType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n booleanAttribute,\n forwardRef,\n OnInit,\n ChangeDetectorRef,\n Renderer2,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\nimport { GoabControlValueAccessor } from \"../base.component\";\n\n// \"disabled\", \"value\", \"id\" is an exposed property of HTMLInputElement, no need to bind with attr\n@Component({\n standalone: true,\n selector: \"goab-dropdown\",\n\n template: `\n @if (isReady) {\n <goa-dropdown\n #goaComponentRef\n [attr.version]=\"version\"\n [attr.name]=\"name\"\n [value]=\"value\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.arialabelledby]=\"ariaLabelledBy\"\n [disabled]=\"disabled\"\n [attr.error]=\"error\"\n [attr.filterable]=\"filterable\"\n [attr.leadingicon]=\"leadingIcon\"\n [attr.maxheight]=\"maxHeight\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n [attr.mt]=\"mt\"\n [attr.multiselect]=\"multiselect\"\n [attr.native]=\"native\"\n [attr.placeholder]=\"placeholder\"\n [attr.testid]=\"testId\"\n [attr.width]=\"width\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.relative]=\"relative\"\n [attr.autocomplete]=\"autoComplete\"\n [attr.size]=\"size\"\n [id]=\"id\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n </goa-dropdown>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabDropdown),\n },\n ],\n})\nexport class GoabDropdown extends GoabControlValueAccessor implements OnInit {\n @Input() name?: string;\n @Input() ariaLabel?: string;\n @Input() ariaLabelledBy?: string;\n @Input({ transform: booleanAttribute }) filterable?: boolean;\n @Input() leadingIcon?: GoabIconType;\n @Input() maxHeight?: string;\n @Input({ transform: booleanAttribute }) multiselect?: boolean;\n @Input({ transform: booleanAttribute }) native?: boolean;\n @Input() placeholder?: string;\n @Input() width?: string;\n @Input() maxWidth?: string;\n @Input() autoComplete?: string;\n @Input() size?: GoabDropdownSize = \"default\";\n /***\n * @deprecated This property has no effect and will be removed in a future version\n */\n @Input() relative?: boolean;\n @Output() onChange = new EventEmitter<GoabDropdownOnChangeDetail>();\n\n isReady = false;\n version = \"2\";\n\n constructor(\n private cdr: ChangeDetectorRef,\n renderer: Renderer2,\n ) {\n super(renderer);\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onChange(e: Event) {\n const detail = { ...(e as CustomEvent<GoabDropdownOnChangeDetail>).detail, event: e };\n // Keep local value in sync with emitted detail\n this.value = detail.value || null;\n this.onChange.emit(detail);\n\n this.markAsTouched();\n this.fcChange?.(detail.value || \"\");\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabDropdownItemMountType } from \"@abgov/ui-components-common\";\n\n@Component({\n standalone: true,\n selector: \"goab-dropdown-item\",\n template: ` @if (isReady) {\n <goa-dropdown-item\n [value]=\"value\"\n [label]=\"label\"\n [attr.filter]=\"filter\"\n [attr.name]=\"name\"\n [attr.mount]=\"mountType\"\n >\n </goa-dropdown-item>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabDropdownItem implements OnInit {\n @Input() value?: string;\n @Input() filter?: string;\n @Input() label?: string;\n @Input() name?: string;\n @Input() mountType?: GoabDropdownItemMountType;\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabFileUploadOnCancelDetail,\n GoabFileUploadOnDeleteDetail,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-file-upload-card\",\n template: ` @if (isReady) {\n <goa-file-upload-card\n [attr.version]=\"version\"\n [attr.filename]=\"filename\"\n [attr.size]=\"size\"\n [attr.type]=\"type\"\n [attr.progress]=\"progress\"\n [attr.error]=\"error\"\n [attr.testid]=\"testId\"\n (_cancel)=\"_onCancel($event)\"\n (_delete)=\"_onDelete($event)\"\n >\n </goa-file-upload-card>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabFileUploadCard implements OnInit {\n @Input({ required: true }) filename!: string;\n @Input({ transform: numberAttribute }) size?: number;\n @Input() type?: string;\n @Input({ transform: numberAttribute }) progress?: number;\n @Input() error?: string;\n @Input() testId?: string;\n\n @Output() onCancel = new EventEmitter<GoabFileUploadOnCancelDetail>();\n @Output() onDelete = new EventEmitter<GoabFileUploadOnDeleteDetail>();\n\n isReady = false;\n version = \"2\";\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onCancel(event: Event) {\n this.onCancel.emit({ filename: this.filename, event });\n }\n\n _onDelete(event: Event) {\n this.onDelete.emit({ filename: this.filename, event });\n }\n}\n","import {\n GoabFileUploadInputOnSelectFileDetail,\n GoabFileUploadInputVariant,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-file-upload-input\",\n template: `@if (isReady) {\n <goa-file-upload-input\n [attr.version]=\"version\"\n [attr.variant]=\"variant\"\n [attr.accept]=\"accept\"\n [attr.maxfilesize]=\"maxFileSize\"\n [attr.testid]=\"testId\"\n [id]=\"id\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.mr]=\"mr\"\n [attr.ml]=\"ml\"\n (_selectFile)=\"_onSelectFile($event)\"\n >\n </goa-file-upload-input>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabFileUploadInput extends GoabBaseComponent implements OnInit {\n @Input() id?: string = \"\";\n @Input({ required: true }) variant!: GoabFileUploadInputVariant;\n @Input() maxFileSize?: string = \"5MB\";\n @Input() accept?: string;\n\n @Output() onSelectFile = new EventEmitter<GoabFileUploadInputOnSelectFileDetail>();\n\n isReady = false;\n version = \"2\";\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onSelectFile(e: Event) {\n const detail = {\n ...(e as CustomEvent<GoabFileUploadInputOnSelectFileDetail>).detail,\n event: e,\n };\n this.onSelectFile.emit(detail);\n }\n}\n","import { GoabChipTheme, GoabIconType } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-filter-chip\",\n template: `@if (isReady) {\n <goa-filter-chip\n [attr.version]=\"version\"\n [attr.error]=\"error\"\n [attr.icontheme]=\"iconTheme\"\n [attr.content]=\"content\"\n [attr.secondarytext]=\"secondaryText\"\n [attr.leadingicon]=\"leadingIcon\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_click)=\"_onClick()\"\n >\n <ng-content />\n </goa-filter-chip>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabFilterChip extends GoabBaseComponent implements OnInit {\n @Input({ transform: booleanAttribute }) error?: boolean;\n @Input({ transform: booleanAttribute }) deletable?: boolean;\n @Input() content?: string = \"\";\n @Input() iconTheme?: GoabChipTheme;\n @Input() secondaryText?: string = \"\";\n @Input() leadingIcon?: GoabIconType | null = null;\n\n @Output() onClick = new EventEmitter();\n\n isReady = false;\n version = \"2\";\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onClick() {\n this.onClick.emit();\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-app-footer\",\n template: `@if (isReady) {\n <goa-app-footer\n [attr.maxcontentwidth]=\"maxContentWidth\"\n [attr.url]=\"url\"\n [attr.testid]=\"testId\"\n [attr.version]=\"version\"\n >\n <ng-content select=\"[slot=nav]\" />\n <ng-content select=\"goab-app-footer-meta-section\"></ng-content>\n <ng-content></ng-content>\n </goa-app-footer>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabAppFooter implements OnInit {\n @Input() maxContentWidth?: string;\n @Input() testId?: string;\n @Input() url?: string;\n\n isReady = false;\n version = \"2\";\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-app-footer-meta-section\",\n template: `@if (isReady) {\n <goa-app-footer-meta-section [attr.testid]=\"testId\">\n <ng-content />\n </goa-app-footer-meta-section>\n }`,\n styles: [\":host { width: 100%; }\"],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabAppFooterMetaSection implements OnInit {\n @Input() testId?: string;\n /** \"slot\" is required and must equal to \"meta\" so it can be rendered in the correct position **/\n @Input({ required: true }) slot!: \"meta\";\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-app-footer-nav-section\",\n template: `@if (isReady) {\n <goa-app-footer-nav-section\n [attr.maxcolumncount]=\"maxColumnCount\"\n [attr.heading]=\"heading\"\n [attr.testid]=\"testId\"\n >\n <ng-content />\n </goa-app-footer-nav-section>\n }`,\n styles: [\":host { width: 100%; }\"],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabAppFooterNavSection implements OnInit {\n @Input() heading?: string;\n @Input() maxColumnCount? = 1;\n @Input() testId?: string;\n /** \"slot\" is required and must equal to \"nav\" so it can be rendered in the correct position **/\n @Input({ required: true }) slot!: \"nav\";\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n EventEmitter,\n Input,\n Output,\n} from \"@angular/core\";\nimport { GoabFormState, GoabPublicFormStatus } from \"@abgov/ui-components-common\";\n\n@Component({\n selector: \"goab-public-form\",\n standalone: true,\n template: `\n <goa-public-form\n [attr.status]=\"status\"\n [attr.name]=\"name\"\n (_init)=\"_onInit($event)\"\n (_complete)=\"_onComplete($event)\"\n (_stateChange)=\"_onStateChange($event)\"\n >\n <ng-content />\n </goa-public-form>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabPublicForm {\n @Input() status?: GoabPublicFormStatus = \"complete\";\n @Input() name?: string;\n\n @Output() onInit = new EventEmitter<Event>();\n @Output() onComplete = new EventEmitter<GoabFormState>();\n @Output() onStateChange = new EventEmitter<GoabFormState>();\n\n _onInit(e: Event) {\n this.onInit.emit(e);\n }\n\n _onComplete(e: Event) {\n const detail = (e as CustomEvent).detail;\n this.onComplete.emit(detail);\n }\n\n _onStateChange(e: Event) {\n const detail = (e as CustomEvent).detail;\n this.onStateChange.emit(detail.data);\n }\n}\n","import {\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n EventEmitter,\n Input,\n Output,\n} from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\nimport {\n GoabPublicFormPageButtonVisibility,\n GoabPublicFormPageStep,\n} from \"@abgov/ui-components-common\";\n\n@Component({\n selector: \"goab-public-form-page\",\n standalone: true,\n template: `\n <goa-public-form-page\n [id]=\"id\"\n [attr.heading]=\"heading\"\n [attr.sub-heading]=\"subHeading\"\n [attr.section-title]=\"sectionTitle\"\n [attr.back-url]=\"backUrl\"\n [attr.type]=\"type\"\n [attr.button-text]=\"buttonText\"\n [attr.button-visibility]=\"buttonVisibility\"\n [attr.summary-heading]=\"summaryHeading\"\n [attr.mt]=\"mt\"\n [attr.mr]=\"mr\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n (_continue)=\"_onContinue($event)\"\n >\n <ng-content></ng-content>\n </goa-public-form-page>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabPublicFormPage extends GoabBaseComponent {\n @Input() id = \"\";\n @Input() heading = \"\";\n @Input() subHeading = \"\";\n @Input() summaryHeading = \"\";\n @Input() sectionTitle = \"\";\n @Input() backUrl = \"\";\n @Input() type: GoabPublicFormPageStep = \"step\";\n @Input() buttonText = \"\";\n @Input() buttonVisibility: GoabPublicFormPageButtonVisibility = \"visible\";\n\n /**\n * triggers when the form page continues to the next step\n */\n @Output() onContinue = new EventEmitter<Event>();\n\n _onContinue(event: Event) {\n this.onContinue.emit(event);\n }\n}\n","import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from \"@angular/core\";\n\n@Component({\n selector: \"goab-public-form-summary\",\n standalone: true,\n template: `\n <goa-public-form-summary [attr.heading]=\"heading\">\n <ng-content />\n </goa-public-form-summary>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabPublicFormSummary {\n @Input() heading?: string;\n}\n","import {\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n EventEmitter,\n Input,\n Output,\n} from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n selector: \"goab-public-subform\",\n standalone: true,\n template: `\n <goa-public-subform\n [attr.id]=\"id\"\n [attr.name]=\"name\"\n [attr.continue-msg]=\"continueMsg\"\n [attr.mt]=\"mt\"\n [attr.mr]=\"mr\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n (_init)=\"_onInit($event)\"\n (_stateChange)=\"_onStateChange($event)\"\n >\n <ng-content />\n </goa-public-subform>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabPublicSubform extends GoabBaseComponent {\n @Input() id?: string = \"\";\n @Input() name?: string = \"\";\n @Input() continueMsg?: string = \"\";\n\n @Output() onInit = new EventEmitter<Event>();\n @Output() onStateChange = new EventEmitter<Event>();\n\n _onInit(e: Event) {\n this.onInit.emit(e);\n }\n\n _onStateChange(e: Event) {\n this.onStateChange.emit(e);\n }\n}\n","import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n selector: \"goab-public-subform-index\",\n standalone: true,\n host: {\n slot: \"subform-index\",\n },\n template: `\n <goa-public-subform-index\n [attr.heading]=\"heading\"\n [attr.section-title]=\"sectionTitle\"\n [attr.action-button-text]=\"actionButtonText\"\n [attr.button-visibility]=\"buttonVisibility\"\n [attr.mt]=\"mt\"\n [attr.mr]=\"mr\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n >\n <ng-content />\n </goa-public-subform-index>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabPublicSubformIndex extends GoabBaseComponent {\n @Input() heading?: string = \"\";\n @Input() sectionTitle?: string = \"\";\n @Input() actionButtonText?: string = \"\";\n @Input() buttonVisibility?: \"visible\" | \"hidden\" = \"hidden\";\n}\n","import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from \"@angular/core\";\nimport { GoabPublicFormTaskStatus } from \"@abgov/ui-components-common\";\n\n@Component({\n selector: \"goab-public-form-task\",\n standalone: true,\n template: `\n <goa-public-form-task [attr.status]=\"status\">\n <ng-content />\n </goa-public-form-task>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabPublicFormTask {\n @Input() status?: GoabPublicFormTaskStatus;\n}\n","import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n selector: \"goab-public-form-task-list\",\n standalone: true,\n template: `\n <goa-public-form-task-list\n [attr.heading]=\"heading\"\n [attr.mt]=\"mt\"\n [attr.mr]=\"mr\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n >\n <ng-content />\n </goa-public-form-task-list>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabPublicFormTaskList extends GoabBaseComponent {\n @Input() heading?: string;\n}\n","import {\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n Input,\n Output,\n EventEmitter,\n} from \"@angular/core\";\nimport {\n GoabFormDispatchOn,\n GoabFieldsetOnContinueDetail,\n} from \"@abgov/ui-components-common\";\n\n@Component({\n selector: \"goab-fieldset\",\n template: ` <goa-fieldset\n [attr.section-title]=\"sectionTitle\"\n [attr.dispatch-on]=\"dispatchOn\"\n [attr.id]=\"id\"\n (_continue)=\"_onContinue($event)\"\n >\n <ng-content></ng-content>\n </goa-fieldset>`,\n standalone: true,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabFieldset {\n @Input() id?: string;\n @Input() sectionTitle?: string;\n @Input() dispatchOn: GoabFormDispatchOn = \"continue\";\n\n @Output() onContinue = new EventEmitter<GoabFieldsetOnContinueDetail>();\n\n _onContinue(event: Event) {\n const detail = (event as CustomEvent).detail;\n this.onContinue.emit(detail);\n }\n}\n","import {\n GoabFormItemLabelSize,\n GoabFormItemRequirement,\n} from \"@abgov/ui-components-common\";\nimport {\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\nimport { GoabFormItemType } from \"@abgov/ui-components-common\";\n\n@Component({\n standalone: true,\n selector: \"goab-form-item\",\n template: `@if (isReady) {\n <goa-form-item\n [attr.version]=\"version\"\n [attr.label]=\"label\"\n [attr.labelsize]=\"labelSize\"\n [attr.helptext]=\"helpText\"\n [attr.error]=\"error\"\n [attr.testid]=\"testId\"\n [attr.type]=\"type\"\n [id]=\"id\"\n [attr.name]=\"name\"\n [attr.requirement]=\"requirement\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.public-form-summary-order]=\"publicFormSummaryOrder\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.mr]=\"mr\"\n [attr.ml]=\"ml\"\n >\n <ng-content />\n <ng-content select=\"goab-form-item-slot\"></ng-content>\n </goa-form-item>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabFormItem extends GoabBaseComponent implements OnInit {\n @Input() label?: string;\n @Input() labelSize?: GoabFormItemLabelSize;\n @Input() helpText?: string;\n @Input() error?: string;\n @Input() requirement?: GoabFormItemRequirement;\n @Input() maxWidth?: string;\n @Input() id?: string;\n @Input() type?: GoabFormItemType = \"\";\n /**\n * Public form: to arrange fields in the summary\n */\n @Input() publicFormSummaryOrder?: number;\n /**\n * Public form: allow to override the label value within the form-summary to provide a shorter description of the value\n */\n @Input() name?: string;\n\n isReady = false;\n version = \"2\";\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import { Component, Input } from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-form-item-slot\",\n template: `<ng-content></ng-content>`,\n})\n/**\n * This component is used to define the slot for the form item component.\n * We need to use a separate component with a required attribute `slot` because\n * svelte component renders based on the `slot` of the wrapper component (which is `div` before)\n * // similar to app-footer-meta-section & app-footer-nav-section\n */\nexport class GoabFormItemSlot {\n @Input({ required: true }) slot!: \"helptext\" | \"error\";\n}\n","import { GoabFormStepStatus } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-form-step\",\n template: `\n @if (isReady) {\n <goa-form-step [attr.text]=\"text\" [attr.status]=\"status\"></goa-form-step>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabFormStep implements OnInit {\n @Input() text?: string;\n @Input() status?: GoabFormStepStatus;\n\n isReady = false;\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import { GoabFormStepperOnChangeDetail } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-form-stepper\",\n template: `\n @if (isReady) {\n <goa-form-stepper\n [attr.step]=\"step\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n </goa-form-stepper>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabFormStepper extends GoabBaseComponent implements OnInit {\n @Input() step?: number = -1;\n @Output() onChange = new EventEmitter<GoabFormStepperOnChangeDetail>();\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n _onChange(e: Event) {\n const detail = (e as CustomEvent<GoabFormStepperOnChangeDetail>).detail;\n this.onChange.emit(detail);\n }\n}\n","import { Spacing } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-grid\",\n template: `\n @if (isReady) {\n <goa-grid\n [attr.gap]=\"gap\"\n [attr.minchildwidth]=\"minChildWidth\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-grid>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabGrid extends GoabBaseComponent implements OnInit {\n isReady = false;\n @Input({ required: true }) minChildWidth!: string;\n @Input() gap?: Spacing;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-app-header\",\n template: `@if (isReady) {\n <goa-app-header\n [attr.url]=\"url\"\n [attr.heading]=\"heading\"\n [attr.secondarytext]=\"secondaryText\"\n [attr.maxcontentwidth]=\"maxContentWidth\"\n [attr.fullmenubreakpoint]=\"fullMenuBreakpoint\"\n [attr.testid]=\"testId\"\n [attr.hasmenuclickhandler]=\"onMenuClick.observed ? 'true' : 'false'\"\n [attr.version]=\"version\"\n (_menuClick)=\"_onMenuClick()\"\n >\n <ng-content />\n </goa-app-header>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabAppHeader extends GoabBaseComponent implements OnInit {\n @Input() url?: string;\n @Input() heading?: string;\n @Input() secondaryText?: string;\n @Input() maxContentWidth?: string;\n @Input({ transform: numberAttribute }) fullMenuBreakpoint?: number;\n\n isReady = false;\n version = \"2\";\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n @Output() onMenuClick = new EventEmitter();\n\n _onMenuClick() {\n this.onMenuClick.emit();\n }\n}\n","import { GoabIconType } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n HostBinding,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-app-header-menu\",\n template: `@if (isReady) {\n <goa-app-header-menu\n [attr.leadingicon]=\"leadingIcon\"\n [attr.heading]=\"heading\"\n [attr.testid]=\"testId\"\n >\n <ng-content />\n </goa-app-header-menu>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabAppHeaderMenu extends GoabBaseComponent implements OnInit {\n @Input() leadingIcon?: GoabIconType;\n @Input() heading?: string;\n @Input() slotName?: string;\n\n @HostBinding(\"attr.slot\")\n get hostSlot(): string | null {\n return this.slotName ?? null;\n }\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-hero-banner\",\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-hero-banner\n [attr.heading]=\"heading\"\n [attr.backgroundurl]=\"backgroundUrl\"\n [attr.minheight]=\"minHeight\"\n [attr.testid]=\"testId\"\n [attr.maxcontentwidth]=\"maxContentWidth\"\n [attr.backgroundColor]=\"backgroundColor\"\n [attr.textcolor]=\"textColor\"\n >\n <ng-content />\n <div slot=\"actions\">\n <ng-container [ngTemplateOutlet]=\"actions\"></ng-container>\n </div>\n </goa-hero-banner>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabHeroBanner implements OnInit {\n isReady = false;\n @Input() heading?: string;\n @Input() backgroundUrl?: string;\n @Input() minHeight?: string;\n @Input() testId?: string;\n @Input() maxContentWidth?: string;\n @Input() backgroundColor?: string;\n @Input() textColor?: string;\n @Input() actions!: TemplateRef<any>;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n GoabIconOverridesType,\n GoabIconSize,\n GoabIconTheme,\n GoabIconType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n booleanAttribute,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-icon\",\n template: `\n @if (isReady) {\n <goa-icon\n [attr.type]=\"type\"\n [attr.theme]=\"theme\"\n [attr.size]=\"size\"\n [attr.inverted]=\"inverted\"\n [attr.fillcolor]=\"fillColor\"\n [attr.opacity]=\"opacity\"\n [attr.title]=\"title\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n [attr.testid]=\"testId\"\n >\n </goa-icon>\n }\n `,\n styles: [\":host { display: inline-flex; align-items: center; }\"],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabIcon extends GoabBaseComponent implements OnInit {\n @Input({ required: true }) type!: GoabIconType | GoabIconOverridesType;\n @Input() size?: GoabIconSize;\n @Input() theme?: GoabIconTheme;\n @Input({ transform: booleanAttribute }) inverted?: boolean;\n @Input() fillColor?: string;\n @Input({ transform: numberAttribute }) opacity?: number;\n @Input() title?: string;\n @Input() ariaLabel?: string;\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabIconButtonVariant,\n GoabIconSize,\n GoabIconType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-icon-button\",\n template: `\n @if (isReady) {\n <goa-icon-button\n [attr.icon]=\"icon\"\n [disabled]=\"disabled\"\n [attr.size]=\"size\"\n [attr.variant]=\"variant\"\n [title]=\"title\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.testid]=\"testId\"\n [attr.action]=\"action\"\n [attr.action-arg]=\"actionArg\"\n [attr.action-args]=\"JSON.stringify(actionArgs)\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_click)=\"_onClick()\"\n >\n <ng-content></ng-content>\n </goa-icon-button>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabIconButton extends GoabBaseComponent implements OnInit {\n isReady = false;\n protected readonly JSON = JSON;\n @Input({ required: true }) icon!: GoabIconType;\n @Input() size?: GoabIconSize = \"medium\";\n @Input() variant?: GoabIconButtonVariant;\n @Input() title?: string;\n @Input({ transform: booleanAttribute }) disabled?: boolean;\n @Input() ariaLabel?: string;\n @Input() action?: string;\n @Input() actionArg?: string;\n @Input() actionArgs?: Record<string, unknown>;\n @Output() onClick = new EventEmitter();\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n _onClick() {\n this.onClick.emit();\n }\n}\n","import {\n GoabIconType,\n GoabInputAutoCapitalize,\n GoabInputOnBlurDetail,\n GoabInputOnChangeDetail,\n GoabInputOnFocusDetail,\n GoabInputOnKeyPressDetail,\n GoabInputSize,\n GoabInputType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n OnInit,\n booleanAttribute,\n numberAttribute,\n TemplateRef,\n ChangeDetectorRef,\n Renderer2,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\nimport { GoabControlValueAccessor } from \"../base.component\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-input\",\n imports: [NgTemplateOutlet],\n template: `@if (isReady) {\n <goa-input\n #goaComponentRef\n [attr.version]=\"version\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.focused]=\"focused\"\n [attr.value]=\"value\"\n [attr.autocapitalize]=\"autoCapitalize\"\n [attr.autocomplete]=\"autoComplete\"\n [attr.placeholder]=\"placeholder\"\n [attr.leadingicon]=\"leadingIcon\"\n [attr.trailingicon]=\"trailingIcon\"\n [attr.variant]=\"variant\"\n [disabled]=\"disabled\"\n [attr.readonly]=\"readonly\"\n [attr.error]=\"error\"\n [attr.data-testid]=\"testId\"\n [attr.width]=\"width\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.arialabelledby]=\"ariaLabelledBy\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.step]=\"step\"\n [attr.prefix]=\"prefix\"\n [attr.suffix]=\"suffix\"\n [attr.debounce]=\"debounce\"\n [attr.maxlength]=\"maxLength\"\n [attr.id]=\"id\"\n [attr.mt]=\"mt\"\n [attr.mr]=\"mr\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.handletrailingiconclick]=\"handleTrailingIconClick\"\n [attr.textalign]=\"textAlign\"\n [attr.size]=\"size\"\n (_trailingIconClick)=\"_onTrailingIconClick($event)\"\n (_change)=\"_onChange($event)\"\n (_focus)=\"_onFocus($event)\"\n (_blur)=\"_onBlur($event)\"\n (_keyPress)=\"_onKeyPress($event)\"\n [attr.trailingiconarialabel]=\"trailingIconAriaLabel\"\n >\n @if (leadingContent) {\n <div slot=\"leadingContent\">\n @if (getLeadingContentAsTemplate()) {\n <ng-container [ngTemplateOutlet]=\"getLeadingContentAsTemplate()\">\n </ng-container>\n } @else {\n {{ getLeadingContentAsString() }}\n }\n </div>\n }\n\n <ng-content />\n\n @if (trailingContent) {\n <div slot=\"trailingContent\">\n @if (getTrailingContentAsTemplate()) {\n <ng-container\n [ngTemplateOutlet]=\"getTrailingContentAsTemplate()\"\n ></ng-container>\n } @else {\n {{ getTrailingContentAsString() }}\n }\n </div>\n }\n </goa-input>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabInput),\n },\n ],\n})\nexport class GoabInput extends GoabControlValueAccessor implements OnInit {\n @Input() type?: GoabInputType = \"text\";\n @Input() name?: string;\n @Input({ transform: numberAttribute }) debounce?: number;\n @Input() autoCapitalize?: GoabInputAutoCapitalize;\n @Input() autoComplete?: string;\n @Input() placeholder?: string;\n @Input() leadingIcon?: GoabIconType;\n @Input() trailingIcon?: GoabIconType;\n @Input() variant?: string;\n @Input({ transform: booleanAttribute }) focused?: boolean;\n @Input({ transform: booleanAttribute }) readonly?: boolean;\n @Input() width?: string;\n @Input() prefix?: string;\n @Input() suffix?: string;\n @Input() ariaLabel?: string;\n @Input({ transform: numberAttribute }) maxLength?: number;\n @Input() min?: string | number;\n @Input() max?: string | number;\n @Input({ transform: numberAttribute }) step?: number;\n @Input() ariaLabelledBy?: string;\n @Input() trailingIconAriaLabel?: string;\n @Input() textAlign?: \"left\" | \"right\" = \"left\";\n @Input() leadingContent!: string | TemplateRef<any>;\n @Input() trailingContent!: string | TemplateRef<any>;\n @Input() size?: GoabInputSize = \"default\";\n\n @Output() onTrailingIconClick = new EventEmitter();\n @Output() onFocus = new EventEmitter<GoabInputOnFocusDetail>();\n @Output() onBlur = new EventEmitter<GoabInputOnBlurDetail>();\n @Output() onKeyPress = new EventEmitter<GoabInputOnKeyPressDetail>();\n @Output() onChange = new EventEmitter<GoabInputOnChangeDetail>();\n\n version = \"2\";\n isReady = false;\n handleTrailingIconClick = false;\n\n constructor(\n private cdr: ChangeDetectorRef,\n renderer: Renderer2,\n ) {\n super(renderer);\n }\n ngOnInit() {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n\n this.handleTrailingIconClick = this.onTrailingIconClick.observed;\n if (typeof this.value === \"number\") {\n console.warn(\"For numeric values use goab-input-number.\");\n }\n }\n\n _onTrailingIconClick(_: Event) {\n if (this.handleTrailingIconClick) {\n this.onTrailingIconClick.emit();\n }\n }\n\n _onChange(e: Event) {\n this.markAsTouched();\n const detail = { ...(e as CustomEvent<GoabInputOnChangeDetail>).detail, event: e };\n this.onChange.emit(detail);\n\n this.fcChange?.(detail.value);\n }\n\n _onKeyPress(e: Event) {\n this.markAsTouched();\n const detail = { ...(e as CustomEvent<GoabInputOnKeyPressDetail>).detail, event: e };\n this.onKeyPress.emit(detail);\n\n this.fcTouched?.();\n }\n\n _onFocus(e: Event) {\n this.markAsTouched();\n const detail = { ...(e as CustomEvent<GoabInputOnFocusDetail>).detail, event: e };\n this.onFocus.emit(detail);\n }\n\n _onBlur(e: Event) {\n const detail = { ...(e as CustomEvent<GoabInputOnBlurDetail>).detail, event: e };\n this.onBlur.emit(detail);\n }\n\n getLeadingContentAsString(): string {\n return this.leadingContent instanceof TemplateRef ? \"\" : this.leadingContent;\n }\n\n getLeadingContentAsTemplate(): TemplateRef<any> | null {\n if (!this.leadingContent) return null;\n return this.leadingContent instanceof TemplateRef ? this.leadingContent : null;\n }\n\n getTrailingContentAsString(): string {\n return this.trailingContent instanceof TemplateRef ? \"\" : this.trailingContent;\n }\n\n getTrailingContentAsTemplate(): TemplateRef<any> | null {\n if (!this.trailingContent) return null;\n return this.trailingContent instanceof TemplateRef ? this.trailingContent : null;\n }\n}\n","import {\n GoabIconType,\n GoabInputAutoCapitalize,\n GoabInputOnBlurDetail,\n GoabInputOnChangeDetail,\n GoabInputOnFocusDetail,\n GoabInputOnKeyPressDetail,\n GoabInputType,\n Spacing,\n} from \"@abgov/ui-components-common\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n OnInit,\n booleanAttribute,\n numberAttribute,\n TemplateRef,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\n@Component({\n standalone: true,\n selector: \"goab-input-number\",\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-input\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.focused]=\"focused\"\n [attr.value]=\"value !== null ? value : ''\"\n [attr.autocapitalize]=\"autoCapitalize\"\n [attr.placeholder]=\"placeholder\"\n [attr.leadingicon]=\"leadingIcon\"\n [attr.trailingicon]=\"trailingIcon\"\n [attr.variant]=\"variant\"\n [disabled]=\"disabled\"\n [attr.readonly]=\"readonly\"\n [attr.error]=\"error\"\n [attr.data-testid]=\"testId\"\n [attr.width]=\"width\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.arialabelledby]=\"ariaLabelledBy\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.step]=\"step\"\n [attr.prefix]=\"prefix\"\n [attr.suffix]=\"suffix\"\n [attr.debounce]=\"debounce\"\n [attr.maxlength]=\"maxLength\"\n [attr.id]=\"id\"\n [attr.mt]=\"mt\"\n [attr.mr]=\"mr\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.handletrailingiconclick]=\"handleTrailingIconClick\"\n [attr.textalign]=\"textAlign\"\n (_trailingIconClick)=\"_onTrailingIconClick($event)\"\n (_change)=\"_onChange($event)\"\n (_focus)=\"_onFocus($event)\"\n (_blur)=\"_onBlur($event)\"\n (_keypress)=\"_onKeyPress($event)\"\n [attr.trailingiconarialabel]=\"trailingIconAriaLabel\"\n >\n <div slot=\"leadingContent\">\n @if (leadingContent) {\n @if (getLeadingContentAsTemplate()) {\n <ng-container\n [ngTemplateOutlet]=\"getLeadingContentAsTemplate()\"\n ></ng-container>\n } @else {\n {{ getLeadingContentAsString() }}\n }\n }\n </div>\n\n <ng-content />\n\n <div slot=\"trailingContent\">\n @if (trailingContent) {\n @if (getTrailingContentAsTemplate()) {\n <ng-container\n [ngTemplateOutlet]=\"getTrailingContentAsTemplate()\"\n ></ng-container>\n } @else {\n {{ getTrailingContentAsString() }}\n }\n }\n </div>\n </goa-input>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n // Use forwardRef with the new class name\n useExisting: forwardRef(() => GoabInputNumber),\n },\n ],\n})\nexport class GoabInputNumber implements ControlValueAccessor, OnInit {\n isReady = false;\n @Input() type: GoabInputType = \"number\";\n @Input() name?: string;\n @Input() id?: string;\n @Input({ transform: numberAttribute }) debounce?: number;\n @Input({ transform: booleanAttribute }) disabled?: boolean;\n @Input() autoCapitalize?: GoabInputAutoCapitalize;\n @Input() placeholder?: string;\n @Input() leadingIcon?: GoabIconType;\n @Input() trailingIcon?: GoabIconType;\n @Input() variant?: string;\n @Input({ transform: booleanAttribute }) focused?: boolean;\n @Input({ transform: booleanAttribute }) readonly?: boolean;\n @Input({ transform: booleanAttribute }) error?: boolean;\n @Input() width?: string;\n @Input() prefix?: string;\n @Input() suffix?: string;\n @Input() testId?: string;\n @Input() ariaLabel?: string;\n @Input({ transform: numberAttribute }) maxLength?: number;\n @Input() min?: string | number;\n @Input() max?: string | number;\n @Input({ transform: numberAttribute }) step?: number;\n @Input() ariaLabelledBy?: string;\n @Input() mt?: Spacing;\n @Input() mr?: Spacing;\n @Input() mb?: Spacing;\n @Input() ml?: Spacing;\n @Input() trailingIconAriaLabel?: string;\n @Input() textAlign?: \"left\" | \"right\" = \"right\"; // Default to right for numbers\n\n @Input() value: number | null = null;\n @Input() leadingContent!: string | TemplateRef<any>;\n @Input() trailingContent!: string | TemplateRef<any>;\n\n @Output() onTrailingIconClick = new EventEmitter<void>(); // Keep void type\n @Output() onFocus = new EventEmitter<GoabInputOnFocusDetail>();\n @Output() onBlur = new EventEmitter<GoabInputOnBlurDetail>();\n @Output() onKeyPress = new EventEmitter<GoabInputOnKeyPressDetail>();\n @Output() onChange = new EventEmitter<GoabInputOnChangeDetail>();\n\n handleTrailingIconClick = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit() {\n this.handleTrailingIconClick = this.onTrailingIconClick.observed;\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n _onTrailingIconClick(_: Event) {\n if (this.handleTrailingIconClick) {\n this.onTrailingIconClick.emit();\n }\n }\n\n _onChange(e: Event) {\n this.markAsTouched();\n const detail = (e as CustomEvent<GoabInputOnChangeDetail>).detail;\n\n const stringValue = detail.value;\n let numericValue: number | null = null;\n\n if (stringValue !== null && stringValue.trim() !== \"\") {\n const parsed = parseFloat(stringValue);\n if (!isNaN(parsed)) {\n numericValue = parsed;\n }\n }\n\n this.value = numericValue;\n\n this.fcChange?.(numericValue);\n\n this.onChange.emit(detail);\n }\n\n _onKeyPress(e: Event) {\n this.markAsTouched();\n const detail = (e as CustomEvent<GoabInputOnKeyPressDetail>).detail;\n this.onKeyPress.emit(detail);\n }\n\n _onFocus(e: Event) {\n this.markAsTouched();\n const detail = (e as CustomEvent<GoabInputOnFocusDetail>).detail;\n this.onFocus.emit(detail);\n }\n\n _onBlur(e: Event) {\n this.markAsTouched();\n const detail = (e as CustomEvent<GoabInputOnBlurDetail>).detail;\n this.onBlur.emit(detail);\n }\n\n private fcChange?: (value: number | null) => void;\n private fcTouched?: () => void; // Changed type to void for consistency\n touched = false;\n\n markAsTouched() {\n if (!this.touched) {\n this.fcTouched?.();\n this.touched = true;\n }\n }\n\n writeValue(value: number | null): void {\n this.value = value === undefined ? null : value;\n }\n\n registerOnChange(fn: (value: number | null) => void): void {\n this.fcChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.fcTouched = fn;\n }\n\n setDisabledState?(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n getLeadingContentAsString(): string {\n return this.leadingContent instanceof TemplateRef ? \"\" : this.leadingContent;\n }\n\n getLeadingContentAsTemplate(): TemplateRef<any> | null {\n if (!this.leadingContent) return null;\n return this.leadingContent instanceof TemplateRef ? this.leadingContent : null;\n }\n\n getTrailingContentAsString(): string {\n return this.trailingContent instanceof TemplateRef ? \"\" : this.trailingContent;\n }\n\n getTrailingContentAsTemplate(): TemplateRef<any> | null {\n if (!this.trailingContent) return null;\n return this.trailingContent instanceof TemplateRef ? this.trailingContent : null;\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n@Component({\n standalone: true,\n selector: \"goab-linear-progress\",\n template: `\n @if (isReady) {\n <goa-linear-progress\n [attr.progress]=\"progress\"\n [attr.percent-visibility]=\"percentVisibility\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.testid]=\"testid\"\n >\n </goa-linear-progress>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabLinearProgress implements OnInit {\n @Input() progress?: number | null | undefined;\n @Input() percentVisibility?: \"visible\" | \"hidden\" | undefined;\n @Input() ariaLabel?: string;\n @Input() ariaLabelledBy?: string;\n @Input() testid?: string;\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabIconType,\n GoabLinkColor,\n GoabLinkSize,\n Spacing,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-link\",\n template: `\n @if (isReady) {\n <goa-link\n [attr.leadingicon]=\"leadingIcon\"\n [attr.trailingicon]=\"trailingIcon\"\n [attr.testid]=\"testId\"\n [attr.action]=\"action\"\n [attr.color]=\"color\"\n [attr.size]=\"size\"\n [attr.action-arg]=\"actionArg\"\n [attr.action-args]=\"JSON.stringify(actionArgs)\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-link>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabLink implements OnInit {\n isReady = false;\n @Input() leadingIcon?: GoabIconType;\n @Input() trailingIcon?: GoabIconType;\n @Input() testId?: string;\n @Input() action?: string;\n @Input() color?: GoabLinkColor = \"interactive\";\n @Input() size?: GoabLinkSize = \"medium\";\n @Input() actionArg?: string;\n @Input() actionArgs?: Record<string, unknown>;\n @Input() mt?: Spacing;\n @Input() mb?: Spacing;\n @Input() ml?: Spacing;\n @Input() mr?: Spacing;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n protected readonly JSON = JSON;\n}\n","import { GoabLinkTarget, GoabServiceLevel } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n EventEmitter,\n Output,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-microsite-header\",\n template: `\n @if (isReady) {\n <goa-microsite-header\n [attr.type]=\"type\"\n [attr.version]=\"getVersionAsString()\"\n [attr.feedbackurl]=\"feedbackUrl\"\n [attr.maxcontentwidth]=\"maxContentWidth\"\n [attr.feedbackurltarget]=\"feedbackUrlTarget\"\n [attr.headerurltarget]=\"headerUrlTarget\"\n [attr.testid]=\"testId\"\n [attr.hasfeedbackhandler]=\"onFeedbackClick.observed\"\n (_feedbackClick)=\"_onFeedbackClick()\"\n >\n <div slot=\"version\">\n <ng-container [ngTemplateOutlet]=\"getVersionAsTemplate()\"></ng-container>\n </div>\n </goa-microsite-header>\n }\n `,\n imports: [NgTemplateOutlet],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabMicrositeHeader implements OnInit {\n isReady = false;\n @Input({ required: true }) type!: GoabServiceLevel;\n @Input() version!: string | TemplateRef<any>;\n @Input() feedbackUrl?: string;\n @Input() testId?: string;\n @Input() maxContentWidth?: string;\n @Input() feedbackUrlTarget?: GoabLinkTarget;\n @Input() headerUrlTarget?: GoabLinkTarget;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n @Output() onFeedbackClick = new EventEmitter();\n\n getVersionAsString(): string {\n return typeof this.version === \"string\" ? this.version : \"\";\n }\n\n getVersionAsTemplate(): TemplateRef<any> | null {\n if (!this.version) return null;\n return this.version instanceof TemplateRef ? this.version : null;\n }\n\n _onFeedbackClick() {\n this.onFeedbackClick.emit();\n }\n}\n","import {\n GoabModalCalloutVariant,\n GoabModalTransition,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n TemplateRef,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-modal\",\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-modal\n [attr.version]=\"version\"\n [attr.calloutvariant]=\"calloutVariant\"\n [attr.open]=\"open\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.testid]=\"testId\"\n [attr.role]=\"role\"\n [attr.closable]=\"closable\"\n [attr.transition]=\"transition\"\n [attr.heading]=\"getHeadingAsString()\"\n (_close)=\"_onClose()\"\n >\n <div slot=\"heading\">\n @if (this.heading !== \"\" && getHeadingAsTemplate() !== null) {\n <ng-container [ngTemplateOutlet]=\"getHeadingAsTemplate()\"></ng-container>\n }\n </div>\n\n <ng-content></ng-content>\n\n <div slot=\"actions\">\n @if (this.actions) {\n <ng-container [ngTemplateOutlet]=\"actions\"></ng-container>\n }\n </div>\n </goa-modal>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabModal implements OnInit {\n isReady = false;\n version = \"2\";\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n @Input() calloutVariant?: GoabModalCalloutVariant;\n @Input({ transform: booleanAttribute }) open?: boolean;\n @Input() maxWidth?: string;\n @Input() closable = false;\n @Input() transition?: GoabModalTransition;\n @Input() testId?: string;\n /**\n * @deprecated The role property is deprecated and will be removed in a future version.\n * The modal will always use role=\"dialog\".\n */\n @Input() role?: string;\n @Input() heading!: string | TemplateRef<any>;\n @Input() actions!: TemplateRef<any>;\n\n @Output() onClose = new EventEmitter();\n\n getHeadingAsString(): string {\n return this.heading instanceof TemplateRef ? \"\" : this.heading;\n }\n\n getHeadingAsTemplate(): TemplateRef<any> | null {\n if (!this.heading) return null;\n return this.heading instanceof TemplateRef ? this.heading : null;\n }\n\n _onClose() {\n this.onClose.emit();\n }\n}\n","import {\n GoabButtonSize,\n GoabButtonType,\n GoabButtonVariant,\n GoabIconType,\n GoabMenuButtonOnActionDetail,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-menu-button\",\n template: `\n <goa-menu-button\n [attr.text]=\"text\"\n [attr.type]=\"type\"\n [attr.size]=\"size\"\n [attr.variant]=\"variant\"\n version=\"2\"\n [attr.max-width]=\"maxWidth\"\n [attr.leading-icon]=\"leadingIcon\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.testid]=\"testId\"\n (_action)=\"_onAction($event)\"\n >\n <ng-content></ng-content>\n </goa-menu-button>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabMenuButton {\n @Input() text?: string;\n @Input() type?: GoabButtonType;\n @Input() size?: GoabButtonSize;\n @Input() variant?: GoabButtonVariant;\n @Input() maxWidth?: string;\n @Input() leadingIcon?: GoabIconType;\n @Input() ariaLabel?: string;\n @Input() testId?: string;\n @Output() onAction = new EventEmitter<GoabMenuButtonOnActionDetail>();\n\n _onAction(e: Event) {\n const detail = (e as CustomEvent<GoabMenuButtonOnActionDetail>).detail;\n this.onAction.emit(detail);\n }\n}\n","import { GoabIconType } from \"@abgov/ui-components-common\";\n\nimport { CUSTOM_ELEMENTS_SCHEMA, Component, Input } from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-menu-action\",\n template: `\n <goa-menu-action\n [attr.text]=\"text\"\n [attr.action]=\"action\"\n [attr.icon]=\"icon\"\n [attr.testid]=\"testId\"\n >\n </goa-menu-action>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabMenuAction {\n @Input({required: true}) text!: string;\n @Input({required: true}) action!: string;\n @Input() icon?: GoabIconType;\n @Input() testId?: string;\n}\n","import {\n GoabAriaLiveType,\n GoabNotificationEmphasis,\n GoabNotificationType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n OnInit,\n ChangeDetectorRef,\n booleanAttribute,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-notification\",\n template: `\n @if (isReady) {\n <goa-notification\n [attr.version]=\"version\"\n [attr.type]=\"type\"\n [attr.arialive]=\"ariaLive\"\n [attr.maxcontentwidth]=\"maxContentWidth\"\n [attr.emphasis]=\"emphasis\"\n [attr.compact]=\"compact\"\n [attr.testid]=\"testId\"\n (_dismiss)=\"_onDismiss()\"\n >\n <ng-content />\n </goa-notification>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabNotification implements OnInit {\n isReady = false;\n version = \"2\";\n @Input() type?: GoabNotificationType = \"information\";\n @Input() ariaLive?: GoabAriaLiveType;\n @Input() maxContentWidth?: string;\n @Input() emphasis?: GoabNotificationEmphasis = \"high\";\n @Input({ transform: booleanAttribute }) compact?: boolean;\n @Input() testId?: string;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n @Output() onDismiss = new EventEmitter();\n\n _onDismiss() {\n this.onDismiss.emit();\n }\n}\n","import { GoabPageBlockSize } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-page-block\",\n template: `\n @if (isReady) {\n <goa-page-block [attr.width]=\"width\" [attr.testid]=\"testId\">\n <ng-content></ng-content>\n </goa-page-block>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabPageBlock implements OnInit {\n isReady = false;\n @Input() width?: GoabPageBlockSize;\n @Input() testId?: string;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import { Spacing } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-pages\",\n template: `\n @if (isReady) {\n <goa-pages\n [attr.current]=\"current\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-pages>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabPages extends GoabBaseComponent implements OnInit {\n isReady = false;\n @Input({ transform: numberAttribute }) current?: number;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n GoabPaginationOnChangeDetail,\n GoabPaginationVariant,\n Spacing,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-pagination\",\n template: `\n @if (isReady) {\n <goa-pagination\n [attr.version]=\"version\"\n [attr.itemcount]=\"itemCount\"\n [attr.perpagecount]=\"perPageCount\"\n [attr.pagenumber]=\"pageNumber\"\n [attr.variant]=\"variant\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n >\n </goa-pagination>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabPagination extends GoabBaseComponent implements OnInit {\n isReady = false;\n version = \"2\";\n @Input({ required: true }) itemCount!: number;\n @Input({ required: true }) pageNumber!: number;\n @Input() perPageCount?: number = 10;\n @Input() variant?: GoabPaginationVariant = \"all\";\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n @Output() onChange = new EventEmitter<GoabPaginationOnChangeDetail>();\n\n _onChange(e: Event) {\n const detail = (e as CustomEvent<GoabPaginationOnChangeDetail>).detail;\n this.onChange.emit(detail);\n }\n}\n","import { GoabPopoverPosition } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-popover\",\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-popover\n [attr.maxwidth]=\"maxWidth\"\n [attr.minwidth]=\"minWidth\"\n [attr.padded]=\"padded\"\n [attr.position]=\"position\"\n [attr.relative]=\"relative\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content></ng-content>\n <div slot=\"target\">\n <ng-container [ngTemplateOutlet]=\"target\"></ng-container>\n </div>\n </goa-popover>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabPopover extends GoabBaseComponent implements OnInit {\n isReady = false;\n @Input() maxWidth = \"320px\";\n @Input() minWidth?: string;\n @Input() padded = true;\n @Input() position?: GoabPopoverPosition;\n /***\n * @deprecated This property has no effect and will be removed in a future version\n */\n @Input() relative?: boolean;\n @Input({ required: true }) target!: TemplateRef<any>;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import { NgTemplateOutlet } from \"@angular/common\";\nimport {\n booleanAttribute,\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n EventEmitter,\n Input,\n Output,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-push-drawer\",\n imports: [NgTemplateOutlet],\n template: `@if (isReady) {\n <goa-push-drawer\n [open]=\"open\"\n [attr.heading]=\"getHeadingAsString()\"\n [attr.testid]=\"testId\"\n [attr.width]=\"width\"\n [attr.version]=\"version\"\n (_close)=\"_onClose()\"\n >\n <ng-content></ng-content>\n <div slot=\"heading\">\n <ng-container [ngTemplateOutlet]=\"getHeadingAsTemplate()\"></ng-container>\n </div>\n @if (actions) {\n <div slot=\"actions\">\n <ng-container [ngTemplateOutlet]=\"actions\"></ng-container>\n </div>\n }\n </goa-push-drawer>\n } `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabPushDrawer implements OnInit {\n version = \"2\";\n\n @Input({ transform: booleanAttribute }) open?: boolean;\n @Input() heading!: string | TemplateRef<any>;\n @Input() width?: string;\n @Input() testId?: string;\n @Input() actions!: TemplateRef<any>;\n @Output() onClose = new EventEmitter();\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onClose() {\n this.onClose.emit();\n }\n\n getHeadingAsString(): string {\n return this.heading instanceof TemplateRef ? \"\" : this.heading;\n }\n\n getHeadingAsTemplate(): TemplateRef<any> | null {\n if (!this.heading) return null;\n return this.heading instanceof TemplateRef ? this.heading : null;\n }\n}\n","import {\n GoabRadioGroupOnChangeDetail,\n GoabRadioGroupOrientation,\n GoabRadioGroupSize,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n OnInit,\n ChangeDetectorRef,\n Renderer2,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\nimport { GoabControlValueAccessor } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-radio-group\",\n template: `\n @if (isReady) {\n <goa-radio-group\n #goaComponentRef\n [attr.version]=\"version\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [disabled]=\"disabled\"\n [attr.orientation]=\"orientation\"\n [attr.error]=\"error\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.size]=\"size\"\n [id]=\"id\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n </goa-radio-group>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabRadioGroup),\n },\n ],\n})\nexport class GoabRadioGroup extends GoabControlValueAccessor implements OnInit {\n isReady = false;\n version = \"2\";\n @Input() name?: string;\n @Input() orientation?: GoabRadioGroupOrientation;\n @Input() ariaLabel?: string;\n @Input() size?: GoabRadioGroupSize = \"default\";\n\n constructor(\n private cdr: ChangeDetectorRef,\n renderer: Renderer2,\n ) {\n super(renderer);\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n @Output() onChange = new EventEmitter<GoabRadioGroupOnChangeDetail>();\n\n _onChange(e: Event) {\n const detail = {\n ...(e as CustomEvent<GoabRadioGroupOnChangeDetail>).detail,\n event: e,\n };\n this.markAsTouched();\n this.onChange.emit(detail);\n\n this.fcChange?.(detail.value);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-radio-item\",\n template: `\n @if (isReady) {\n <goa-radio-item\n [attr.version]=\"version\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [attr.label]=\"label\"\n [attr.description]=\"getDescriptionAsString()\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.revealarialabel]=\"revealAriaLabel\"\n [disabled]=\"disabled\"\n [attr.compact]=\"compact\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.checked]=\"checked\"\n [attr.error]=\"error\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n <div slot=\"description\">\n <ng-container [ngTemplateOutlet]=\"getDescriptionAsTemplate()\"></ng-container>\n </div>\n <div slot=\"reveal\">\n @if (this.reveal) {\n <ng-container [ngTemplateOutlet]=\"reveal\"></ng-container>\n }\n </div>\n </goa-radio-item>\n }\n `,\n imports: [NgTemplateOutlet],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabRadioItem extends GoabBaseComponent implements OnInit {\n @Input() value?: string;\n @Input() label?: string;\n @Input() name?: string;\n @Input() description!: string | TemplateRef<any>;\n @Input() reveal?: TemplateRef<any>;\n @Input() ariaLabel?: string;\n @Input() revealAriaLabel?: string;\n @Input({ transform: booleanAttribute }) disabled?: boolean;\n @Input({ transform: booleanAttribute }) checked?: boolean;\n @Input({ transform: booleanAttribute }) error?: boolean;\n @Input() maxWidth?: string;\n @Input({ transform: booleanAttribute }) compact?: boolean;\n\n isReady = false;\n version = \"2\";\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n getDescriptionAsString(): string {\n return !this.description || this.description instanceof TemplateRef\n ? \"\"\n : this.description;\n }\n\n getDescriptionAsTemplate(): TemplateRef<any> | null {\n if (!this.description) return null;\n return this.description instanceof TemplateRef ? this.description : null;\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-side-menu\",\n template: `\n @if (isReady) {\n <goa-side-menu [attr.version]=\"version\" [attr.testid]=\"testId\">\n <ng-content />\n </goa-side-menu>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabSideMenu implements OnInit {\n isReady = false;\n version = \"2\";\n @Input() testId?: string;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabIconType } from \"@abgov/ui-components-common\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-side-menu-group\",\n template: `\n @if (isReady) {\n <goa-side-menu-group\n [attr.version]=\"version\"\n [attr.heading]=\"heading\"\n [attr.testid]=\"testId\"\n [attr.icon]=\"icon\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-side-menu-group>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabSideMenuGroup extends GoabBaseComponent implements OnInit {\n isReady = false;\n version = \"2\";\n @Input({ required: true }) heading!: string;\n @Input() icon?: GoabIconType;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import { GoabIconType } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-side-menu-heading\",\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-side-menu-heading\n [attr.version]=\"version\"\n [attr.testid]=\"testId\"\n [attr.icon]=\"icon\"\n >\n <ng-content />\n <span slot=\"meta\">\n <ng-container [ngTemplateOutlet]=\"meta\"></ng-container>\n </span>\n </goa-side-menu-heading>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabSideMenuHeading implements OnInit {\n isReady = false;\n version = \"2\";\n @Input() icon!: GoabIconType;\n @Input() testId?: string;\n @Input() meta!: TemplateRef<any>;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import { GoabSkeletonSize, GoabSkeletonType, Spacing } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-skeleton\",\n template: `\n @if (isReady) {\n <goa-skeleton\n [attr.maxwidth]=\"maxWidth\"\n [attr.size]=\"size\"\n [attr.linecount]=\"lineCount\"\n [attr.type]=\"type\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n </goa-skeleton>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabSkeleton extends GoabBaseComponent implements OnInit {\n isReady = false;\n @Input({ required: true }) type!: GoabSkeletonType;\n @Input() maxWidth = \"300px\";\n @Input() size?: GoabSkeletonSize;\n @Input({ transform: numberAttribute }) lineCount?: number;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n GoabSpacerHorizontalSpacing,\n GoabSpacerVerticalSpacing,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-spacer\",\n template: `\n @if (isReady) {\n <goa-spacer\n [attr.hspacing]=\"hSpacing\"\n [attr.vspacing]=\"vSpacing\"\n [attr.testid]=\"testId\"\n >\n </goa-spacer>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabSpacer implements OnInit {\n isReady = false;\n @Input() hSpacing?: GoabSpacerHorizontalSpacing;\n @Input() vSpacing?: GoabSpacerVerticalSpacing;\n @Input() testId?: string;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n booleanAttribute,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-tab\",\n template: `\n @if (isReady) {\n <goa-tab\n [attr.slug]=\"slug\"\n [attr.disabled]=\"disabled || null\"\n [attr.heading]=\"getHeadingAsString()\"\n >\n <ng-content />\n @if (typeof heading !== \"string\") {\n <div slot=\"heading\">\n <ng-container [ngTemplateOutlet]=\"getHeadingAsTemplate()\"></ng-container>\n </div>\n }\n </goa-tab>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n imports: [NgTemplateOutlet],\n})\nexport class GoabTab implements OnInit {\n isReady = false;\n @Input() heading!: string | TemplateRef<any>;\n @Input({ transform: booleanAttribute }) disabled?: boolean;\n @Input() slug?: string;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n getHeadingAsString(): string {\n return this.heading instanceof TemplateRef ? \"\" : this.heading;\n }\n\n getHeadingAsTemplate(): TemplateRef<any> | null {\n if (!this.heading) return null;\n return this.heading instanceof TemplateRef ? this.heading : null;\n }\n}\n","import {\n GoabTableOnSortDetail,\n GoabTableOnMultiSortDetail,\n GoabTableSortMode,\n GoabTableVariant,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n OnInit,\n ChangeDetectorRef,\n booleanAttribute,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-table\",\n template: `\n @if (isReady) {\n <goa-table\n [attr.version]=\"version\"\n [attr.width]=\"width\"\n [attr.variant]=\"variant\"\n [attr.sort-mode]=\"sortMode\"\n [attr.striped]=\"striped\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_sort)=\"_onSort($event)\"\n (_multisort)=\"_onMultiSort($event)\"\n >\n <table style=\"width: 100%;\">\n <ng-content />\n </table>\n </goa-table>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabTable extends GoabBaseComponent implements OnInit {\n isReady = false;\n version = \"2\";\n @Input() width?: string;\n @Input() variant?: GoabTableVariant;\n @Input() sortMode?: GoabTableSortMode;\n @Input({ transform: booleanAttribute }) striped?: boolean;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n @Output() onSort = new EventEmitter<GoabTableOnSortDetail>();\n @Output() onMultiSort = new EventEmitter<GoabTableOnMultiSortDetail>();\n\n _onSort(e: Event) {\n const detail = (e as CustomEvent<GoabTableOnSortDetail>).detail;\n this.onSort.emit(detail);\n }\n\n _onMultiSort(e: Event) {\n const detail = (e as CustomEvent<GoabTableOnMultiSortDetail>).detail;\n this.onMultiSort.emit(detail);\n }\n}\n","import { GoabTableSortDirection, GoabTableSortOrder } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-table-sort-header\",\n template: `\n @if (isReady) {\n <goa-table-sort-header\n [attr.name]=\"name\"\n [attr.direction]=\"direction\"\n [attr.sort-order]=\"sortOrder\"\n >\n <ng-content />\n </goa-table-sort-header>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabTableSortHeader implements OnInit {\n isReady = false;\n @Input() name?: string;\n @Input() direction?: GoabTableSortDirection = \"none\";\n @Input() sortOrder?: GoabTableSortOrder;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport {\n GoabTabsOnChangeDetail,\n GoabTabsOrientation,\n GoabTabsVariant,\n GoabTabsNavigation,\n} from \"@abgov/ui-components-common\";\n\n@Component({\n standalone: true,\n selector: \"goab-tabs\",\n template: `\n @if (isReady) {\n <goa-tabs\n [attr.version]=\"version\"\n [attr.initialtab]=\"initialTab\"\n [attr.testid]=\"testId\"\n [attr.variant]=\"variant\"\n [attr.orientation]=\"orientation\"\n [attr.navigation]=\"navigation\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n </goa-tabs>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabTabs implements OnInit {\n isReady = false;\n version = \"2\";\n @Input({ transform: numberAttribute }) initialTab?: number;\n @Input() testId?: string;\n @Input() variant?: GoabTabsVariant;\n /** Tab layout orientation. \"auto\" stacks vertically on mobile (default), \"horizontal\" keeps horizontal on all screen sizes. */\n @Input() orientation?: GoabTabsOrientation;\n @Input() navigation?: GoabTabsNavigation;\n\n constructor(private cdr: ChangeDetectorRef) { }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n @Output() onChange = new EventEmitter<GoabTabsOnChangeDetail>();\n\n _onChange(e: Event) {\n const detail = (e as CustomEvent<GoabTabsOnChangeDetail>).detail;\n this.onChange.emit(detail);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\ntype SnackbarVerticalPosition = \"top\" | \"bottom\";\ntype SnackbarHorizontalPosition = \"left\" | \"center\" | \"right\";\n\n@Component({\n standalone: true,\n selector: \"goab-temporary-notification-ctrl\",\n template: `\n @if (isReady) {\n <goa-temp-notification-ctrl\n [attr.vertical-position]=\"verticalPosition\"\n [attr.horizontal-position]=\"horizontalPosition\"\n [attr.testid]=\"testId\"\n >\n </goa-temp-notification-ctrl>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabTemporaryNotificationCtrl implements OnInit {\n isReady = false;\n @Input() verticalPosition: SnackbarVerticalPosition = \"bottom\";\n @Input() horizontalPosition: SnackbarHorizontalPosition = \"center\";\n @Input() testId?: string;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n Input,\n OnInit,\n ChangeDetectorRef,\n HostBinding,\n} from \"@angular/core\";\n\nimport {\n GoabTextColor,\n GoabTextHeadingElement,\n GoabTextMaxWidth,\n GoabTextSize,\n GoabTextTextElement,\n Spacing,\n} from \"@abgov/ui-components-common\";\n\n@Component({\n standalone: true,\n selector: \"goab-text\",\n\n template: `\n @if (isReady) {\n <goa-text\n [attr.as]=\"tag\"\n [attr.size]=\"size\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.color]=\"color\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-text>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabText implements OnInit {\n @Input() tag?: GoabTextTextElement | GoabTextHeadingElement;\n @Input() size?: GoabTextSize;\n @Input() maxWidth?: GoabTextMaxWidth;\n @Input() color?: GoabTextColor;\n @Input() id?: string;\n /*\n This is necessary because angular outputs two elements, <goab-text> and <goa-text>\n This removes the id from <goa-text> and only outputs it to <goab-text>\n */\n @HostBinding(\"attr.id\") get hostId() {\n return this.id;\n }\n @Input() mt?: Spacing;\n @Input() mb?: Spacing;\n @Input() ml?: Spacing;\n @Input() mr?: Spacing;\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabTextAreaCountBy,\n GoabTextAreaOnChangeDetail,\n GoabTextAreaOnKeyPressDetail,\n GoabTextAreaOnBlurDetail,\n GoabTextAreaSize,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n booleanAttribute,\n forwardRef,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n Renderer2,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\nimport { GoabControlValueAccessor } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-textarea\",\n\n template: `\n @if (isReady) {\n <goa-textarea\n #goaComponentRef\n [attr.version]=\"version\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [attr.placeholder]=\"placeholder\"\n [attr.rows]=\"rows\"\n [attr.error]=\"error\"\n [disabled]=\"disabled\"\n [attr.readonly]=\"readOnly\"\n [attr.width]=\"width\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.countby]=\"countBy\"\n [attr.maxcount]=\"maxCount\"\n [attr.autocomplete]=\"autoComplete\"\n [attr.size]=\"size\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n (_keyPress)=\"_onKeyPress($event)\"\n (_blur)=\"_onBlur($event)\"\n >\n </goa-textarea>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabTextArea),\n },\n ],\n})\nexport class GoabTextArea extends GoabControlValueAccessor implements OnInit {\n @Input() name?: string;\n @Input() placeholder?: string;\n @Input({ transform: numberAttribute }) rows?: number;\n @Input({ transform: booleanAttribute }) readOnly?: boolean;\n @Input() width?: string;\n @Input() ariaLabel?: string;\n @Input() countBy?: GoabTextAreaCountBy = \"\";\n @Input() maxCount?: number = -1;\n @Input() maxWidth?: string;\n @Input() autoComplete?: string = \"on\";\n @Input() size?: GoabTextAreaSize = \"default\";\n\n @Output() onChange = new EventEmitter<GoabTextAreaOnChangeDetail>();\n @Output() onKeyPress = new EventEmitter<GoabTextAreaOnKeyPressDetail>();\n @Output() onBlur = new EventEmitter<GoabTextAreaOnBlurDetail>();\n\n isReady = false;\n version = \"2\";\n\n constructor(\n private cdr: ChangeDetectorRef,\n renderer: Renderer2,\n ) {\n super(renderer);\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onChange(e: Event) {\n const detail = { ...(e as CustomEvent<GoabTextAreaOnChangeDetail>).detail, event: e };\n this.onChange.emit(detail);\n this.markAsTouched();\n this.fcChange?.(detail.value);\n }\n\n _onKeyPress(e: Event) {\n const detail = {\n ...(e as CustomEvent<GoabTextAreaOnKeyPressDetail>).detail,\n event: e,\n };\n this.markAsTouched();\n this.onKeyPress.emit(detail);\n }\n\n _onBlur(e: Event) {\n const detail = { ...(e as CustomEvent<GoabTextAreaOnBlurDetail>).detail, event: e };\n this.markAsTouched();\n this.onBlur.emit(detail);\n }\n}\n","import {\n GoabTooltipHorizontalAlignment,\n GoabTooltipPosition,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-tooltip\",\n template: `\n @if (isReady) {\n <goa-tooltip\n [attr.position]=\"position\"\n [attr.content]=\"getContentAsString()\"\n [attr.halign]=\"hAlign\"\n [attr.testid]=\"testId\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <div slot=\"content\">\n @if (getContentAsTemplate()) {\n <ng-container [ngTemplateOutlet]=\"getContentAsTemplate()\"></ng-container>\n }\n {{ getContentAsString() }}\n </div>\n <ng-content />\n </goa-tooltip>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n imports: [NgTemplateOutlet],\n})\nexport class GoabTooltip extends GoabBaseComponent implements OnInit {\n isReady = false;\n @Input() position?: GoabTooltipPosition;\n @Input() content?: string | TemplateRef<unknown>;\n @Input() hAlign?: GoabTooltipHorizontalAlignment;\n @Input() maxWidth?: string;\n\n constructor(private cdr: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n getContentAsString(): string {\n return this.content instanceof TemplateRef ? \"\" : this.content || \"\";\n }\n\n getContentAsTemplate(): TemplateRef<unknown> | null {\n if (!this.content) return null;\n return this.content instanceof TemplateRef ? this.content : null;\n }\n}\n","import {\n booleanAttribute,\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n TemplateRef,\n EventEmitter,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n@Component({\n standalone: true,\n selector: \"goab-work-side-menu\", // eslint-disable-line\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-work-side-menu\n [open]=\"open ?? false\"\n [attr.heading]=\"heading\"\n [attr.url]=\"url\"\n [attr.user-name]=\"userName\"\n [attr.user-secondary-text]=\"userSecondaryText\"\n [attr.testid]=\"testId\"\n (_toggle)=\"_onToggle()\"\n (_navigate)=\"_onNavigate($event)\"\n >\n <div slot=\"primary\">\n <ng-container [ngTemplateOutlet]=\"primaryContent\"></ng-container>\n </div>\n <div slot=\"secondary\">\n <ng-container [ngTemplateOutlet]=\"secondaryContent\"></ng-container>\n </div>\n <div slot=\"account\">\n <ng-container [ngTemplateOutlet]=\"accountContent\"></ng-container>\n </div>\n </goa-work-side-menu>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabWorkSideMenu implements OnInit {\n @Input({ required: true }) heading!: string;\n @Input({ required: true }) url!: string;\n @Input() userName?: string;\n @Input() userSecondaryText?: string;\n @Input({ transform: booleanAttribute }) open?: boolean;\n @Input() testId?: string;\n @Input() primaryContent!: TemplateRef<any>;\n @Input() secondaryContent!: TemplateRef<any>;\n @Input() accountContent!: TemplateRef<any>;\n @Output() onToggle = new EventEmitter();\n @Output() onNavigate = new EventEmitter<string>();\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onToggle() {\n this.onToggle.emit();\n }\n\n _onNavigate(e: Event) {\n this.onNavigate.emit((e as CustomEvent).detail.url);\n }\n}\n","import { GoabIconType } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n booleanAttribute,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-work-side-menu-group\", // eslint-disable-line\n\n template: `\n @if (isReady) {\n <goa-work-side-menu-group\n [attr.heading]=\"heading\"\n [attr.icon]=\"icon\"\n [attr.open]=\"open ? '' : null\"\n [attr.testid]=\"testId\"\n >\n <ng-content />\n </goa-work-side-menu-group>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabWorkSideMenuGroup implements OnInit {\n @Input({ required: true }) heading!: string;\n @Input() icon?: GoabIconType;\n @Input({ transform: booleanAttribute }) open?: boolean;\n @Input() testId?: string;\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import { GoabWorkSideMenuItemType } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-work-side-menu-item\", // eslint-disable-line\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-work-side-menu-item\n [attr.label]=\"label\"\n [attr.url]=\"url\"\n [attr.badge]=\"badge\"\n [attr.current]=\"current\"\n [attr.divider]=\"divider\"\n [attr.icon]=\"icon\"\n [attr.testid]=\"testId\"\n [attr.type]=\"type\"\n >\n @if (popoverContent) {\n <div slot=\"popoverContent\">\n <ng-container [ngTemplateOutlet]=\"popoverContent\"></ng-container>\n </div>\n }\n <ng-content />\n </goa-work-side-menu-item>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabWorkSideMenuItem implements OnInit {\n @Input({ required: true }) label!: string;\n @Input() url?: string;\n @Input() badge?: string;\n @Input() current?: boolean;\n @Input() divider?: boolean;\n @Input() icon?: string;\n @Input() testId?: string;\n @Input() type?: GoabWorkSideMenuItemType = \"normal\";\n @Input() popoverContent!: TemplateRef<any>;\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabWorkSideNotificationItemType,\n GoabWorkSideNotificationReadStatus,\n GoabWorkSideNotificationPriority,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-work-side-notification-item\", // eslint-disable-line\n template: `\n @if (isReady) {\n <goa-work-side-notification-item\n [attr.type]=\"type\"\n [attr.timestamp]=\"timestamp\"\n [attr.title]=\"title\"\n [attr.description]=\"description\"\n [attr.read-status]=\"readStatus\"\n [attr.priority]=\"priority\"\n [attr.testid]=\"testId\"\n (_click)=\"_onClick()\"\n />\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabWorkSideNotificationItem implements OnInit {\n @Input() type?: GoabWorkSideNotificationItemType;\n @Input() timestamp?: string;\n @Input() title?: string;\n @Input({ required: true }) description!: string;\n @Input() readStatus?: GoabWorkSideNotificationReadStatus;\n @Input() priority?: GoabWorkSideNotificationPriority;\n @Input() testId?: string;\n\n @Output() onClick = new EventEmitter<void>();\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onClick() {\n this.onClick.emit();\n }\n}\n","import { GoabWorkSideNotificationActiveTabType } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n OnInit,\n ChangeDetectorRef,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-work-side-notification-panel\", // eslint-disable-line\n template: `\n @if (isReady) {\n <goa-work-side-notification-panel\n [attr.heading]=\"heading\"\n [attr.active-tab]=\"activeTab\"\n [attr.testid]=\"testId\"\n (_markAllRead)=\"_onMarkAllRead()\"\n (_viewAll)=\"_onViewAll()\"\n >\n <ng-content />\n </goa-work-side-notification-panel>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class GoabWorkSideNotificationPanel implements OnInit {\n @Input() heading?: string;\n @Input() activeTab?: GoabWorkSideNotificationActiveTabType;\n @Input() testId?: string;\n\n @Output() onMarkAllRead = new EventEmitter<void>();\n @Output() onViewAll = new EventEmitter<void>();\n\n isReady = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onMarkAllRead() {\n this.onMarkAllRead.emit();\n }\n\n _onViewAll() {\n this.onViewAll.emit();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"abgov-angular-components.mjs","sources":["../../../../libs/angular-components/src/lib/value-directive.ts","../../../../libs/angular-components/src/lib/checked-directive.ts","../../../../libs/angular-components/src/lib/angular-components.module.ts","../../../../libs/angular-components/src/lib/components/base.component.ts","../../../../libs/angular-components/src/lib/components/accordion/accordion.ts","../../../../libs/angular-components/src/lib/components/badge/badge.ts","../../../../libs/angular-components/src/lib/components/block/block.ts","../../../../libs/angular-components/src/lib/components/button/button.ts","../../../../libs/angular-components/src/lib/components/button-group/button-group.ts","../../../../libs/angular-components/src/lib/components/calendar/calendar.ts","../../../../libs/angular-components/src/lib/components/callout/callout.ts","../../../../libs/angular-components/src/lib/components/card/card.ts","../../../../libs/angular-components/src/lib/components/card-content/card-content.ts","../../../../libs/angular-components/src/lib/components/card-actions/card-actions.ts","../../../../libs/angular-components/src/lib/components/card-image/card-image.ts","../../../../libs/angular-components/src/lib/components/checkbox/checkbox.ts","../../../../libs/angular-components/src/lib/components/checkbox-list/checkbox-list.ts","../../../../libs/angular-components/src/lib/components/chip/chip.ts","../../../../libs/angular-components/src/lib/components/circular-progress/circular-progress.ts","../../../../libs/angular-components/src/lib/components/column-layout/column-layout.ts","../../../../libs/angular-components/src/lib/components/container/container.ts","../../../../libs/angular-components/src/lib/components/data-grid/data-grid.ts","../../../../libs/angular-components/src/lib/components/date-picker/date-picker.ts","../../../../libs/angular-components/src/lib/components/details/details.ts","../../../../libs/angular-components/src/lib/components/divider/divider.ts","../../../../libs/angular-components/src/lib/components/drawer/drawer.ts","../../../../libs/angular-components/src/lib/components/dropdown/dropdown.ts","../../../../libs/angular-components/src/lib/components/dropdown-item/dropdown-item.ts","../../../../libs/angular-components/src/lib/components/file-upload-card/file-upload-card.ts","../../../../libs/angular-components/src/lib/components/file-upload-input/file-upload-input.ts","../../../../libs/angular-components/src/lib/components/filter-chip/filter-chip.ts","../../../../libs/angular-components/src/lib/components/footer/footer.ts","../../../../libs/angular-components/src/lib/components/footer-meta-section/footer-meta-section.ts","../../../../libs/angular-components/src/lib/components/footer-nav-section/footer-nav-section.ts","../../../../libs/angular-components/src/lib/components/form/public-form.ts","../../../../libs/angular-components/src/lib/components/form/public-form-page.ts","../../../../libs/angular-components/src/lib/components/form/public-form-summary.ts","../../../../libs/angular-components/src/lib/components/form/public-subform.ts","../../../../libs/angular-components/src/lib/components/form/public-subform-index.ts","../../../../libs/angular-components/src/lib/components/form/task.ts","../../../../libs/angular-components/src/lib/components/form/task-list.ts","../../../../libs/angular-components/src/lib/components/form/fieldset.ts","../../../../libs/angular-components/src/lib/components/form-item/form-item.ts","../../../../libs/angular-components/src/lib/components/form-item/form-item-slot.ts","../../../../libs/angular-components/src/lib/components/form-step/form-step.ts","../../../../libs/angular-components/src/lib/components/form-stepper/form-stepper.ts","../../../../libs/angular-components/src/lib/components/grid/grid.ts","../../../../libs/angular-components/src/lib/components/header/header.ts","../../../../libs/angular-components/src/lib/components/header-menu/header-menu.ts","../../../../libs/angular-components/src/lib/components/hero-banner/hero-banner.ts","../../../../libs/angular-components/src/lib/components/icon/icon.ts","../../../../libs/angular-components/src/lib/components/icon-button/icon-button.ts","../../../../libs/angular-components/src/lib/components/input/input.ts","../../../../libs/angular-components/src/lib/components/input-number/input-number.ts","../../../../libs/angular-components/src/lib/components/linear-progress/linear-progress.ts","../../../../libs/angular-components/src/lib/components/link/link.ts","../../../../libs/angular-components/src/lib/components/microsite-header/microsite-header.ts","../../../../libs/angular-components/src/lib/components/modal/modal.ts","../../../../libs/angular-components/src/lib/components/menu-button/menu-button.ts","../../../../libs/angular-components/src/lib/components/menu-button/menu-action.ts","../../../../libs/angular-components/src/lib/components/notification/notification.ts","../../../../libs/angular-components/src/lib/components/page-block/page-block.ts","../../../../libs/angular-components/src/lib/components/pages/pages.ts","../../../../libs/angular-components/src/lib/components/pagination/pagination.ts","../../../../libs/angular-components/src/lib/components/popover/popover.ts","../../../../libs/angular-components/src/lib/components/push-drawer/push-drawer.ts","../../../../libs/angular-components/src/lib/components/radio-group/radio-group.ts","../../../../libs/angular-components/src/lib/components/radio-item/radio-item.ts","../../../../libs/angular-components/src/lib/components/side-menu/side-menu.ts","../../../../libs/angular-components/src/lib/components/side-menu-group/side-menu-group.ts","../../../../libs/angular-components/src/lib/components/side-menu-heading/side-menu-heading.ts","../../../../libs/angular-components/src/lib/components/skeleton/skeleton.ts","../../../../libs/angular-components/src/lib/components/spacer/spacer.ts","../../../../libs/angular-components/src/lib/components/tab/tab.ts","../../../../libs/angular-components/src/lib/components/table/table.ts","../../../../libs/angular-components/src/lib/components/table-sort-header/table-sort-header.ts","../../../../libs/angular-components/src/lib/components/tabs/tabs.ts","../../../../libs/angular-components/src/lib/components/temporary-notification-ctrl/temporary-notification-ctrl.ts","../../../../libs/angular-components/src/lib/components/text/text.ts","../../../../libs/angular-components/src/lib/components/textarea/textarea.ts","../../../../libs/angular-components/src/lib/components/tooltip/tooltip.ts","../../../../libs/angular-components/src/lib/components/work-side-menu/work-side-menu.ts","../../../../libs/angular-components/src/lib/components/work-side-menu-group/work-side-menu-group.ts","../../../../libs/angular-components/src/lib/components/work-side-menu-item/work-side-menu-item.ts","../../../../libs/angular-components/src/lib/components/work-side-notification-item/work-side-notification-item.ts","../../../../libs/angular-components/src/lib/components/work-side-notification-panel/work-side-notification-panel.ts","../../../../libs/angular-components/src/abgov-angular-components.ts"],"sourcesContent":["import { forwardRef, Directive, ElementRef, HostListener, inject } from \"@angular/core\";\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\n// @deprecated: Use the new <goab-input .. /> component\n@Directive({\n standalone: true,\n selector: \"[goaValue]\",\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ValueDirective),\n multi: true,\n },\n ],\n})\nexport class ValueDirective implements ControlValueAccessor {\n protected elementRef = inject(ElementRef);\n\n private _value = \"\";\n private _disabled = false;\n\n /* eslint-disable @typescript-eslint/no-explicit-any */\n onChange: any = () => {\n /* default implementation */\n };\n onTouched: any = () => {\n /* default implementation */\n };\n\n get value(): string {\n return this._value;\n }\n\n set value(val: string) {\n this._value = val;\n this.onChange(this._value);\n this.onTouched();\n this.elementRef.nativeElement.value = val;\n }\n\n writeValue(value: string) {\n this.value = value;\n }\n\n registerOnChange(fn: () => void) {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void) {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._disabled = isDisabled;\n this.elementRef.nativeElement.disabled = isDisabled;\n }\n\n @HostListener(\"_change\", [\"$event\"])\n listenForValueChange(event: Event) {\n const value = (event as CustomEvent<{ value: string }>).detail.value;\n this.value = value;\n }\n @HostListener(\"disabledChange\", [\"$event\"])\n listenForDisabledChange(event: Event) {\n const isDisabled = (event as CustomEvent<{ disabled: boolean }>).detail.disabled;\n this.setDisabledState(isDisabled);\n }\n}\n\n@Directive({\n standalone: true,\n selector: \"[goaValueList]\",\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ValueListDirective),\n multi: true,\n },\n ],\n})\nexport class ValueListDirective implements ControlValueAccessor {\n protected elementRef = inject(ElementRef);\n\n private _value?: string[] = [];\n\n onChange: any = () => {};\n onTouched: any = () => {};\n\n get value(): string[] | undefined {\n return this._value;\n }\n\n set value(val: string[] | undefined) {\n if (val && val !== this._value) {\n this._setValue(val);\n this.elementRef.nativeElement.value = JSON.stringify(val);\n }\n }\n\n writeValue(value?: string[]) {\n if (value) {\n this.value = value;\n }\n }\n\n registerOnChange(fn: () => void) {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void) {\n this.onTouched = fn;\n }\n\n @HostListener(\"_change\", [\"$event\"])\n listenForValueChange(event: Event) {\n const value = (event as CustomEvent<{ value: string }>).detail.value;\n if (!value) {\n this._setValue(undefined);\n return;\n }\n\n try {\n this.value = JSON.parse(value);\n } catch (e) {\n // we still need to trigger the events to prevent any previous valid value to remain set.\n const v = value.match(/^[\\w\\s,]*$/) ? value.split(\",\") : undefined;\n this._setValue(v);\n }\n }\n\n _setValue(value?: string[]) {\n this._value = value;\n this.onChange(value);\n this.onTouched();\n }\n}\n","import {\n forwardRef,\n Directive,\n ElementRef,\n HostListener,\n Renderer2,\n inject,\n} from \"@angular/core\";\nimport { CheckboxControlValueAccessor, NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\n// @deprecated: Use the new <goab-checkbox .. /> component\n@Directive({\n standalone: true,\n selector: \"[goaChecked]\",\n providers: [\n {\n useExisting: forwardRef(() => CheckedDirective),\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n },\n ],\n})\nexport class CheckedDirective extends CheckboxControlValueAccessor {\n protected renderer: Renderer2;\n protected elementRef: ElementRef;\n\n private _checked = false;\n\n /* eslint-disable @typescript-eslint/no-explicit-any */\n override onChange: any = () => {\n /** No implementation **/\n };\n override onTouched: any = () => {\n /** No implementation **/\n };\n\n constructor() {\n const renderer = inject(Renderer2);\n const elementRef = inject(ElementRef);\n\n super(renderer, elementRef);\n\n this.renderer = renderer;\n this.elementRef = elementRef;\n }\n\n get value(): string {\n return this._checked ? \"checked\" : \"\";\n }\n\n set value(checked: any) {\n this._checked = !!checked;\n this.onChange(this._checked);\n this.onTouched();\n this.elementRef.nativeElement.checked = checked;\n }\n\n override writeValue(checked: any) {\n this.value = checked;\n }\n\n override registerOnChange(fn: (_: any) => void) {\n this.onChange = fn;\n }\n\n override registerOnTouched(fn: () => void) {\n this.onTouched = fn;\n }\n\n @HostListener(\"_change\", [\"$event\"])\n listenForValueChange(event: Event) {\n const checked = (event as CustomEvent<{ checked: boolean }>).detail.checked;\n this.value = checked;\n }\n}\n","import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from \"@angular/core\";\n\nimport { ValueDirective, ValueListDirective } from \"./value-directive\";\nimport { CheckedDirective } from \"./checked-directive\";\n\n@NgModule({\n imports: [ValueDirective, ValueListDirective, CheckedDirective],\n exports: [ValueDirective, ValueListDirective, CheckedDirective],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class AngularComponentsModule {}\n\nexport { ValueDirective, ValueListDirective, CheckedDirective };\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Spacing } from \"@abgov/ui-components-common\";\nimport {\n booleanAttribute,\n Component,\n Input,\n ElementRef,\n ViewChild,\n Renderer2,\n inject,\n} from \"@angular/core\";\nimport { ControlValueAccessor } from \"@angular/forms\";\n\n@Component({\n standalone: true,\n template: ``, //** IMPLEMENT IN SUBCLASS\n})\n/** Provides shared margin and test id inputs for Angular GoA wrapper components. */\nexport abstract class GoabBaseComponent {\n /** Sets the top margin spacing token. */\n @Input() mt?: Spacing;\n /** Sets the bottom margin spacing token. */\n @Input() mb?: Spacing;\n /** Sets the left margin spacing token. */\n @Input() ml?: Spacing;\n /** Sets the right margin spacing token. */\n @Input() mr?: Spacing;\n /** Sets the data-testid attribute for automated testing. */\n @Input() testId?: string;\n}\n\n@Component({\n standalone: true,\n template: ``, //** IMPLEMENT IN SUBCLASS\n})\n/**\n * An abstract base class that extends `GoabBaseComponent` and implements the `ControlValueAccessor` interface.\n * This class provides a foundation for creating custom form controls in Angular, enabling them to integrate\n * seamlessly with Angular forms. It includes support for handling value changes, touch events, and disabled states.\n *\n * ## Features\n * - Supports `disabled=\"true\"` and `error=\"true` attribute bindings for convenience.\n * - Handles form control value changes and touch events via `ControlValueAccessor` methods.\n * - Allows for flexible value types (`unknown`), making it suitable for various data types like integers, dates, or booleans.\n * - Uses ViewChild to capture a reference to the native GOA web component element via `#goaComponentRef`.\n * - Uses Renderer2 for safe DOM manipulation (compatible with SSR and security best practices).\n *\n * ## Usage\n * Extend this class to create custom form controls. Child components must:\n * 1. Add `#goaComponentRef` template reference to their `goa-*` element in the template\n * 2. Inject `Renderer2` in their constructor and pass it to `super(renderer)`\n *\n * ### Example:\n * ```typescript\n * @Component({\n * template: `<goa-input #goaComponentRef [value]=\"value\" ...></goa-input>`\n * })\n * export class GoabInput extends GoabControlValueAccessor {\n * constructor(private cdr: ChangeDetectorRef, renderer: Renderer2) {\n * super(renderer); // Required: pass Renderer2 to base class\n * }\n * }\n * ```\n *\n * ## Properties\n * - `id?`: An optional identifier for the component.\n * - `disabled?`: A boolean indicating whether the component is disabled.\n * - `error?`: A boolean indicating whether the component is in an error state.\n * - `value?`: The current value of the component, which can be of any type.\n *\n * ## Methods\n * - `markAsTouched()`: Marks the component as touched and triggers the `fcTouched` callback if defined.\n * - `writeValue(value: unknown)`: Writes a new value to the form control (can be overridden for special behavior like checkbox).\n * - `registerOnChange(fn: any)`: Registers a function to handle changes in the form control value.\n * - `registerOnTouched(fn: any)`: Registers a function to handle touch events on the form control.\n * - `setDisabledState?(isDisabled: boolean)`: Sets the disabled state of the component.\n * - `convertValueToString(value: unknown)`: Converts a value to a string for DOM attribute assignment (can be overridden).\n *\n * ## Callbacks\n * - `fcChange?`: A function to handle changes in the form control value.\n * - `fcTouched?`: A function to handle touch events on the form control.\n */\nexport abstract class GoabControlValueAccessor\n extends GoabBaseComponent\n implements ControlValueAccessor\n{\n /** Sets the id attribute of the underlying web component. */\n @Input() id?: string;\n // supports disabled=\"true\" instead of [disabled]=\"true\"\n /** Sets the disabled state for the control. */\n @Input({ transform: booleanAttribute }) public disabled?: boolean;\n // supports error=\"true\" instead of [error]=\"true\"\n /** Sets the error state for the control. */\n @Input({ transform: booleanAttribute }) public error?: boolean;\n // this should be unknown (not string) as it might be an integer or a date or a boolean\n /** Sets the control value used by Angular forms and one-way binding. */\n @Input() value?: unknown | null | undefined;\n\n // implement ControlValueAccessor\n\n /**\n * Function to handle changes in the form control value.\n * @param {unknown} value - The new value.\n */\n public fcChange?: (value: unknown) => void;\n\n /**\n * Function to handle touch events on the form control.\n */\n public fcTouched?: () => unknown;\n\n private touched = false;\n\n /**\n * Marks the component as touched. If the component is not already marked as touched,\n * it triggers the `fcTouched` callback (if defined) and sets the `touched` property to `true`.\n */\n public markAsTouched() {\n if (!this.touched) {\n this.fcTouched?.();\n this.touched = true;\n }\n }\n\n /**\n * Reference to the native GOA web component element.\n * Child templates should declare `#goaComponentRef` on the `goa-*` element.\n * The base class captures it here so children don't need their own ViewChild.\n */\n @ViewChild(\"goaComponentRef\", { static: false, read: ElementRef })\n protected goaComponentRef?: ElementRef;\n\n protected renderer = inject(Renderer2);\n\n /**\n * Convert an arbitrary value into a string for DOM attribute assignment.\n * Child classes can override when they need special formatting.\n * @param value The value to convert\n * @returns string representation or empty string for nullish/empty\n */\n protected convertValueToString(value: unknown): string {\n if (value === null || value === undefined || value === \"\") {\n return \"\";\n }\n return String(value);\n }\n\n /**\n * Writes a new value to the form control.\n * @param {unknown} value - The value to write.\n */\n public writeValue(value: unknown): void {\n this.value = value;\n const el = this.goaComponentRef?.nativeElement as HTMLElement | undefined;\n if (el) {\n const stringValue = this.convertValueToString(value);\n this.renderer.setAttribute(el, \"value\", stringValue);\n }\n }\n\n /**\n * Registers a function to call when the form control value changes.\n * @param {function} fn - The function to call.\n */\n public registerOnChange(fn: any): void {\n this.fcChange = fn;\n }\n\n /**\n * Registers a function to call when the form control is touched.\n * @param {function} fn - The function to call.\n */\n public registerOnTouched(fn: any): void {\n this.fcTouched = fn;\n }\n\n /**\n * Sets the disabled state of the component.\n *\n * @param isDisabled - A boolean indicating whether the component should be disabled.\n */\n public setDisabledState?(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n}\n","import {\n GoabAccordionHeadingSize,\n GoabAccordionIconPosition,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n Output,\n EventEmitter,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-accordion\",\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-accordion\n [attr.heading]=\"heading\"\n [attr.secondarytext]=\"secondaryText\"\n [attr.open]=\"open\"\n [attr.headingsize]=\"headingSize\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.testid]=\"testId\"\n [attr.iconposition]=\"iconPosition\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n >\n <div slot=\"headingcontent\">\n <ng-container [ngTemplateOutlet]=\"headingContent\"></ng-container>\n </div>\n <ng-content></ng-content>\n </goa-accordion>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Let users show and hide sections of related content on a page. */\nexport class GoabAccordion extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Sets the heading text. */\n @Input() heading?: string;\n /** Sets secondary text. */\n @Input() secondaryText?: string;\n /** Sets the state of the accordion container open or closed. */\n @Input({ transform: booleanAttribute }) open?: boolean;\n /** Sets the heading size of the accordion container heading. */\n @Input() headingSize?: GoabAccordionHeadingSize;\n /** Sets the heading content template reference. */\n @Input() headingContent!: TemplateRef<any>;\n /** Sets the maximum width of the accordion. */\n @Input() maxWidth?: string;\n /** Sets the position of the expand/collapse icon. */\n @Input() iconPosition?: GoabAccordionIconPosition;\n\n /** Emits when the accordion opens or closes. Emits the new open state as a boolean. */\n @Output() onChange = new EventEmitter<boolean>();\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onChange(e: Event) {\n const detail = (e as CustomEvent).detail;\n this.onChange.emit(detail.open as boolean);\n }\n}\n","import {\n GoabBadgeType,\n GoabIconType,\n GoabBadgeSize,\n GoabBadgeEmphasis,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-badge\",\n template: `\n @if (isReady) {\n <goa-badge\n [attr.version]=\"version\"\n [attr.size]=\"size\"\n [attr.emphasis]=\"emphasis\"\n [attr.type]=\"type\"\n [attr.icon]=\"icon ? 'true' : 'false'\"\n [attr.icontype]=\"iconType\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.content]=\"content\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n </goa-badge>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n\n styles: [\n `\n :host {\n display: contents;\n }\n `,\n ],\n})\n/** Small labels which hold small amounts of information, system feedback, or states. */\nexport class GoabBadge extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Sets the context and colour of the badge. */\n @Input() type?: GoabBadgeType;\n /** Sets the text label of the badge. */\n @Input() content?: string;\n // Ensure boolean input; attribute only set when true so default behaviour is false\n /** @deprecated Use icontype instead. Includes an icon in the badge. */\n @Input({ transform: booleanAttribute }) icon?: boolean;\n /** Sets the icon type to display in the badge. */\n @Input() iconType?: GoabIconType;\n /** Sets the size of the badge. @default \"medium\" */\n @Input() size?: GoabBadgeSize = \"medium\";\n /** Sets the visual emphasis. 'subtle' for less prominent, 'strong' for more emphasis. @default \"strong\" */\n @Input() emphasis?: GoabBadgeEmphasis = \"strong\";\n /** Sets the accessible label for screen readers. */\n @Input() ariaLabel?: string;\n\n isReady = false;\n version = \"2\";\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabBlockAlignment,\n GoabBlockDirection,\n Spacing,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-block\",\n\n template: `\n @if (isReady) {\n <goa-block\n [attr.gap]=\"gap\"\n [attr.direction]=\"direction\"\n [attr.alignment]=\"alignment\"\n [attr.width]=\"width\"\n [attr.min-width]=\"minWidth\"\n [attr.max-width]=\"maxWidth\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-block>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Group components into a block with consistent space between. */\nexport class GoabBlock extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Sets the spacing between items. Uses design system spacing tokens. */\n @Input() gap?: Spacing;\n /** Sets the stacking direction of child components. */\n @Input() direction?: GoabBlockDirection;\n /** Sets the primary axis alignment of child components. */\n @Input() alignment?: GoabBlockAlignment;\n /** Sets the width of the block container. Defaults to max-content. */\n @Input() width?: string;\n /** Sets the minimum width of the block container. */\n @Input() minWidth?: string;\n /** Sets the maximum width of the block container. */\n @Input() maxWidth?: string;\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabButtonSize,\n GoabButtonType,\n GoabButtonVariant,\n GoabIconType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-button\",\n\n template: `\n @if (isReady) {\n <goa-button\n [attr.version]=\"version\"\n [attr.type]=\"type\"\n [attr.size]=\"size\"\n [attr.variant]=\"variant\"\n [disabled]=\"disabled\"\n [attr.leadingicon]=\"leadingIcon\"\n [attr.trailingicon]=\"trailingIcon\"\n [attr.width]=\"width\"\n [attr.testid]=\"testId\"\n [attr.action]=\"action\"\n [attr.action-arg]=\"actionArg\"\n [attr.action-args]=\"JSON.stringify(actionArgs)\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_click)=\"_onClick()\"\n >\n <ng-content />\n </goa-button>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Carry out an important action or navigate to another page. */\nexport class GoabButton extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Sets the visual style of the button. Use \"primary\" for main actions, \"secondary\" for alternative actions, \"tertiary\" for low-emphasis actions, \"start\" for prominent call-to-action buttons, and \"text\" for text-only buttons. @default \"primary\" */\n @Input() type?: GoabButtonType = \"primary\";\n /** Sets the size of the button. Use \"compact\" for inline actions or space-constrained layouts. @default \"normal\" */\n @Input() size?: GoabButtonSize;\n /** Sets the color variant for semantic meaning. Use \"destructive\" for delete or irreversible actions, \"inverse\" for light-colored text on dark backgrounds, and \"dark\" for dark text color on text buttons only. Note: \"dark\" has no effect on non-text button types. @default \"normal\" */\n @Input() variant?: GoabButtonVariant;\n /** Sets the disabled state. When true, prevents user interaction and applies disabled styling. */\n @Input({ transform: booleanAttribute }) disabled?: boolean;\n /** Sets the icon displayed before the button text. */\n @Input() leadingIcon?: GoabIconType;\n /** Icon displayed after the button text. */\n @Input() trailingIcon?: GoabIconType;\n /** Sets a custom width for the button (e.g., \"200px\" or \"100%\"). */\n @Input() width?: string;\n /** Action identifier passed in click events for event delegation patterns. */\n @Input() action?: string;\n /** Single argument value passed with the action in click events. */\n @Input() actionArg?: string;\n /** Multiple argument values passed with the action in click events. */\n @Input() actionArgs?: Record<string, unknown>;\n\n /** Emits when the button is clicked. */\n @Output() onClick = new EventEmitter();\n\n isReady = false;\n version = \"2\";\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onClick() {\n this.onClick.emit();\n }\n\n protected readonly JSON = JSON;\n}\n","import {\n GoabButtonGroupAlignment,\n GoabButtonGroupGap,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-button-group\",\n\n template: `\n @if (isReady) {\n <goa-button-group\n [attr.alignment]=\"alignment\"\n [attr.gap]=\"gap\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-button-group>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Display multiple related actions stacked or in a horizontal row to help with arrangement and spacing. */\nexport class GoabButtonGroup extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Positions the button group in the page layout. */\n @Input() alignment?: GoabButtonGroupAlignment;\n /** Sets the spacing between buttons in the button group. */\n @Input() gap?: GoabButtonGroupGap;\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CalendarDate,\n GoabCalendarOnChangeDetail,\n Once,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-calendar\",\n\n template: `\n @if (isReady) {\n <goa-calendar\n [attr.name]=\"name\"\n [attr.value]=\"valueString()\"\n [attr.min]=\"minString()\"\n [attr.max]=\"maxString()\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n [attr.version]=\"version\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n </goa-calendar>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Visual calendar for date selection. */\nexport class GoabCalendar extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n version = \"2\";\n\n /** Name identifier for the calendar, included in change events. */\n @Input() name?: string;\n /** The currently selected date value in YYYY-MM-DD format. */\n @Input() value?: Date | string;\n /** The minimum selectable date in YYYY-MM-DD format. Defaults to 5 years in the past. */\n @Input() min?: Date | string | undefined;\n /** The maximum selectable date in YYYY-MM-DD format. Defaults to 5 years in the future. */\n @Input() max?: Date | string | undefined;\n\n /** Emits when the selected date changes. Emits the selected date details as GoabCalendarOnChangeDetail. */\n @Output() onChange = new EventEmitter<GoabCalendarOnChangeDetail>();\n\n isReady = false;\n\n private once: Once = new Once();\n\n private formatValue(param: string, val: Date | string | null | undefined): string {\n if (!val) return \"\";\n\n this.once.when(val instanceof Date).do(param, () => {\n console.warn(\n `GoabCalendar: Using Date for '${param}' is deprecated. Use a string in YYYY-MM-DD format instead.`,\n );\n });\n\n return new CalendarDate(val).toString();\n }\n\n valueString(): string {\n return this.formatValue(\"value\", this.value);\n }\n\n minString(): string {\n return this.formatValue(\"min\", this.min);\n }\n\n maxString(): string {\n return this.formatValue(\"max\", this.max);\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onChange(e: Event) {\n const details = (e as CustomEvent<GoabCalendarOnChangeDetail>).detail;\n this.onChange.emit(details);\n }\n}\n","import {\n GoabCalloutAriaLive,\n GoabCalloutSize,\n GoabCalloutType,\n GoabCalloutIconTheme,\n GoabCalloutEmphasis,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-callout\",\n\n template: `\n @if (isReady) {\n <goa-callout\n [attr.version]=\"version\"\n [attr.type]=\"type\"\n [attr.heading]=\"heading\"\n [attr.size]=\"size\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.arialive]=\"ariaLive\"\n [attr.icontheme]=\"iconTheme\"\n [attr.emphasis]=\"emphasis\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-callout>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Communicate important information through a strong visual emphasis. */\nexport class GoabCallout extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n /** Define the context and colour of the callout. @default \"information\" */\n @Input() type?: GoabCalloutType = \"information\";\n /** Callout heading text. */\n @Input() heading?: string = \"\";\n /** Sets the size of the callout. 'medium' has reduced padding and type size for compact areas. @default \"large\" */\n @Input() size?: GoabCalloutSize = \"large\";\n /** Sets the maximum width of the callout. */\n @Input() maxWidth?: string;\n /** Indicates how assistive technology should handle updates to the live region. @default \"off\" */\n @Input() ariaLive?: GoabCalloutAriaLive = \"off\";\n /** Sets the icon theme. 'outline' for stroked icons, 'filled' for solid icons. @default \"outline\" */\n @Input() iconTheme?: GoabCalloutIconTheme = \"outline\";\n /** Sets the visual prominence. 'high' for full background, 'medium' for subtle, 'low' for minimal. @default \"medium\" */\n @Input() emphasis?: GoabCalloutEmphasis = \"medium\";\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-card\",\n\n template: `\n @if (isReady) {\n <goa-card\n [attr.elevation]=\"elevation\"\n [attr.width]=\"width\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-card>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A container that groups related content and actions. */\nexport class GoabCard extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n /** Adds a shadow to the card. 0 shows a border, 1-3 increase shadow intensity. */\n @Input({ transform: numberAttribute }) elevation?: number;\n /** Sets the width of the card. */\n @Input() width?: string;\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-card-content\",\n template: `\n @if (isReady) {\n <goa-card-content>\n <ng-content />\n </goa-card-content>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A container that groups related content and actions. */\nexport class GoabCardContent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-card-actions\",\n template: `\n @if (isReady) {\n <goa-card-actions>\n <ng-content />\n </goa-card-actions>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A container that groups related content and actions. */\nexport class GoabCardActions implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-card-image\",\n template: `\n @if (isReady) {\n <goa-card-image [attr.src]=\"src\" [attr.height]=\"height\">\n <ng-content />\n </goa-card-image>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A container that groups related content and actions. */\nexport class GoabCardImage implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** @required The URL of the image to display. */\n @Input({ required: true }) src!: string;\n /** @required Height of the image container. Accepts CSS values like \"200px\" or \"100%\". */\n @Input({ required: true }) height!: string;\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabCheckboxOnChangeDetail,\n GoabCheckboxSize,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n TemplateRef,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport { GoabControlValueAccessor } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-checkbox\",\n template: `@if (isReady) {\n <goa-checkbox\n #goaComponentRef\n [attr.version]=\"version\"\n [attr.name]=\"name\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [attr.indeterminate]=\"indeterminate ? 'true' : undefined\"\n [attr.error]=\"error\"\n [attr.text]=\"text\"\n [value]=\"value\"\n [attr.testid]=\"testId\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.description]=\"getDescriptionAsString()\"\n [attr.revealarialabel]=\"revealArialLabel\"\n [id]=\"id\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.size]=\"size\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n <div slot=\"description\">\n <ng-container [ngTemplateOutlet]=\"getDescriptionAsTemplate()\"></ng-container>\n </div>\n @if (reveal) {\n <div slot=\"reveal\">\n <ng-container [ngTemplateOutlet]=\"reveal\"></ng-container>\n </div>\n }\n </goa-checkbox>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabCheckbox),\n },\n ],\n imports: [NgTemplateOutlet],\n})\n/** Let the user select one or more options. */\nexport class GoabCheckbox extends GoabControlValueAccessor implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n /** Sets the name of the checkbox input for form submission. */\n @Input() name?: string;\n /** Marks the checkbox item as selected. */\n @Input({ transform: booleanAttribute }) checked?: boolean;\n /** Shows a mixed/partial selection state. Used for 'Select All' checkboxes when some items are selected. */\n @Input({ transform: booleanAttribute }) indeterminate?: boolean;\n /** Label shown beside the checkbox. */\n @Input() text?: string;\n // ** NOTE: can we just use the base component for this?\n /** The value binding. */\n @Input() override value?: string | number | boolean | null;\n /** Defines how the text will be translated for the screen reader. If not specified it will fall back to the name. */\n @Input() ariaLabel?: string;\n /** Sets additional description content displayed below the checkbox label. Accepts plain text or a template. */\n @Input() description!: string | TemplateRef<any>;\n /** Sets the template for the expandable reveal slot content. */\n @Input() reveal?: TemplateRef<any>;\n /** Text announced by screen readers when the reveal slot content is displayed. */\n @Input() revealArialLabel?: string;\n /** Sets the maximum width of the checkbox. */\n @Input() maxWidth?: string;\n /** Sets the size of the checkbox. 'compact' reduces spacing for dense layouts. @default \"default\" */\n @Input() size?: GoabCheckboxSize = \"default\";\n\n /** Emits when the checkbox value changes. Emits the new checkbox state as a GoabCheckboxOnChangeDetail object. */\n @Output() onChange = new EventEmitter<GoabCheckboxOnChangeDetail>();\n\n getDescriptionAsString(): string {\n return typeof this.description === \"string\" ? this.description : \"\";\n }\n\n getDescriptionAsTemplate(): TemplateRef<any> | null {\n if (this.description) {\n return typeof this.description === \"string\" ? null : this.description;\n }\n return null;\n }\n\n _onChange(e: Event) {\n const detail = { ...(e as CustomEvent<GoabCheckboxOnChangeDetail>).detail, event: e };\n this.onChange.emit(detail);\n this.markAsTouched();\n this.fcChange?.(detail.binding === \"check\" ? detail.checked : detail.value || \"\");\n }\n\n // Checkbox is a special case: it uses `checked` instead of `value`.\n override writeValue(value: string | number | boolean | null): void {\n this.value = value;\n this.checked = !!value;\n\n const el = this.goaComponentRef?.nativeElement as HTMLElement | undefined;\n if (el) {\n this.renderer.setAttribute(el, \"checked\", this.checked ? \"true\" : \"false\");\n }\n }\n}\n","import {\n GoabCheckboxListOnChangeDetail,\n GoabCheckboxSize,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\nimport { GoabControlValueAccessor } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-checkbox-list\",\n template: `@if (isReady) {\n <goa-checkbox-list\n [attr.name]=\"name\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [attr.error]=\"error\"\n [attr.testid]=\"testId\"\n [id]=\"id\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.version]=\"version\"\n [attr.size]=\"size\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n </goa-checkbox-list>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabCheckboxList),\n },\n ],\n})\n/** A multiple selection input. */\nexport class GoabCheckboxList extends GoabControlValueAccessor implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n /** @required The name for the checkbox list group. Used as group identifier in change events. */\n @Input() name!: string;\n /** Sets the maximum width of the checkbox list container. */\n @Input() maxWidth?: string;\n /** Sets the size of the checkbox list. 'compact' reduces spacing between items. @default \"default\" */\n @Input() size?: GoabCheckboxSize = \"default\";\n\n // Override value to handle string arrays consistently\n /** Array of currently selected checkbox values. */\n @Input() override value?: string[];\n\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n /** Emits when a checkbox selection changes. Emits the change detail including name, value array, and event. */\n @Output() onChange = new EventEmitter<GoabCheckboxListOnChangeDetail>();\n\n _onChange(e: Event) {\n const detail = {\n ...(e as CustomEvent<GoabCheckboxListOnChangeDetail>).detail,\n event: e,\n };\n this.onChange.emit(detail);\n this.markAsTouched();\n\n // Update the form control with the selected values\n const selectedValues = detail.value || [];\n // clone to ensure a new reference so the underlying web component updates\n this.value = [...selectedValues];\n this.fcChange?.([...selectedValues]);\n }\n\n // Simplified writeValue - expects array input directly\n override writeValue(value: string[] | null): void {\n // clone to ensure a new reference and trigger downstream updates\n this.value = Array.isArray(value) ? [...value] : [];\n }\n}\n","import {\n GoabChipTheme,\n GoabChipVariant,\n GoabIconType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-chip\",\n\n template: `@if (isReady) {\n <goa-chip\n [attr.leadingicon]=\"leadingIcon\"\n [attr.variant]=\"variant\"\n [attr.error]=\"error\"\n [attr.deletable]=\"deletable\"\n [attr.icontheme]=\"iconTheme\"\n [attr.content]=\"content\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_click)=\"_onClick()\"\n >\n <ng-content />\n </goa-chip>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Compact element for labels, tags, or selections. */\nexport class GoabChip extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n /** @deprecated Use GoAFilterChip instead. Icon displayed at the start of the chip. */\n @Input() leadingIcon?: GoabIconType | null;\n /** @deprecated Use GoAFilterChip instead. Shows an error state on the chip. */\n @Input({ transform: booleanAttribute }) error?: boolean;\n /** @deprecated Use GoAFilterChip instead. When true, shows a delete icon and makes chip clickable. */\n @Input({ transform: booleanAttribute }) deletable?: boolean;\n /** @deprecated Use GoAFilterChip instead. The text content displayed in the chip. */\n @Input() content?: string = \"\";\n /** @deprecated Use GoAFilterChip instead. The chip variant style. */\n @Input() variant?: GoabChipVariant;\n /** @deprecated Use GoAFilterChip instead. The icon theme - outline or filled. */\n @Input() iconTheme?: GoabChipTheme;\n\n /** Emits when the chip is clicked. */\n @Output() onClick = new EventEmitter();\n\n _onClick() {\n this.onClick.emit();\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n booleanAttribute,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport {\n GoabCircularProgressSize,\n GoabCircularProgressVariant,\n} from \"@abgov/ui-components-common\";\n\n@Component({\n standalone: true,\n selector: \"goab-circular-progress\",\n template: `\n @if (isReady) {\n <goa-circular-progress\n [attr.variant]=\"variant || 'inline'\"\n [attr.size]=\"size || 'large'\"\n [attr.message]=\"message\"\n [attr.visible]=\"visible\"\n [attr.progress]=\"progress\"\n [attr.testid]=\"testId\"\n >\n </goa-circular-progress>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Provide feedback of progress to users while loading. */\nexport class GoabCircularProgress implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Stretch across the full screen or use it inline. */\n @Input() variant?: GoabCircularProgressVariant;\n /** Size of the progress indicator. */\n @Input() size?: GoabCircularProgressSize;\n /** Loading message displayed under the progress indicator. */\n @Input() message?: string;\n /** Show/hide the page loader. This allows for fade transition to be applied in each transition. */\n @Input({ transform: booleanAttribute }) visible?: boolean;\n /** Set the progress value. Setting this value will change the type from infinite to progress. */\n @Input({ transform: numberAttribute }) progress?: number;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-column-layout\",\n template: `\n @if (isReady) {\n <goa-one-column-layout>\n <ng-content />\n </goa-one-column-layout>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Organizes page content in one, two, or three responsive columns. */\nexport class GoabColumnLayout implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** no props **/\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabContainerAccent,\n GoabContainerPadding,\n GoabContainerType,\n GoabContainerWidth,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-container\",\n imports: [NgTemplateOutlet],\n template: `@if (isReady) {\n <goa-container\n [attr.type]=\"type\"\n [attr.accent]=\"accent\"\n [attr.padding]=\"padding\"\n [attr.width]=\"width\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.minheight]=\"minHeight\"\n [attr.maxheight]=\"maxHeight\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n @if (title) {\n <div slot=\"title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n }\n <ng-content />\n @if (actions) {\n <div slot=\"actions\">\n <ng-container [ngTemplateOutlet]=\"actions\"></ng-container>\n </div>\n }\n </goa-container>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Group information, create hierarchy, and show related information. */\nexport class GoabContainer extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Sets the container and accent bar styling. @default \"interactive\" */\n @Input() type?: GoabContainerType = \"interactive\";\n /** Sets the style of accent on the container. @default \"filled\" */\n @Input() accent?: GoabContainerAccent = \"filled\";\n /** Sets the amount of white space in the container. @default \"relaxed\" */\n @Input() padding?: GoabContainerPadding = \"relaxed\";\n /** Sets the width of the container. @default \"full\" */\n @Input() width?: GoabContainerWidth = \"full\";\n /** Sets the maximum width of the container. */\n @Input() maxWidth?: string;\n /** Sets the minimum height of the container. */\n @Input() minHeight?: string;\n /** Sets the maximum height of the container. */\n @Input() maxHeight?: string;\n /** Sets the template for the title slot content. */\n @Input() title!: TemplateRef<any>;\n /** Sets the template for the actions slot content. */\n @Input() actions!: TemplateRef<any>;\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n ChangeDetectorRef,\n OnInit,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-data-grid\",\n\n template: `\n @if (isReady) {\n <goa-data-grid\n [attr.keyboard-icon-visibility]=\"keyboardIconVisibility\"\n [attr.keyboard-icon-position]=\"keyboardIconPosition\"\n [attr.keyboard-nav]=\"keyboardNav\"\n >\n <ng-content></ng-content>\n </goa-data-grid>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Advanced table with sorting and selection. */\nexport class GoabDataGrid implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Controls visibility of the keyboard navigation indicator icon. Use \"visible\" to show or \"hidden\" to hide. @default \"visible\" */\n @Input() keyboardIconVisibility: \"visible\" | \"hidden\" = \"visible\";\n /** Position of the keyboard navigation indicator icon. @default \"left\" */\n @Input() keyboardIconPosition: \"left\" | \"right\" = \"left\";\n /** @required Navigation mode. \"table\" navigates like a table (up/down between rows), \"layout\" allows wrapping between rows with left/right arrows. */\n @Input({ required: true }) keyboardNav!: \"layout\" | \"table\";\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CalendarDate,\n GoabDatePickerInputType,\n GoabDatePickerOnChangeDetail,\n Once,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n ElementRef,\n HostListener,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\nimport { GoabControlValueAccessor } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-date-picker\",\n\n template: `@if (isReady) {\n <goa-date-picker\n #goaComponentRef\n [attr.name]=\"name\"\n [attr.value]=\"valueString()\"\n [attr.min]=\"minString()\"\n [attr.max]=\"maxString()\"\n [attr.error]=\"error\"\n [attr.disabled]=\"disabled\"\n [attr.relative]=\"relative\"\n [attr.type]=\"type\"\n [attr.testid]=\"testId\"\n [attr.width]=\"width\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n [attr.version]=\"version\"\n (_change)=\"_onChange($event)\"\n >\n </goa-date-picker>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabDatePicker),\n },\n ],\n})\n/** Lets users select a date through a calendar without the need to manually type it in a field. */\nexport class GoabDatePicker extends GoabControlValueAccessor implements OnInit {\n protected elementRef = inject(ElementRef);\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n\n /** Sets the name of the date field. */\n @Input() name?: string;\n /** Sets the value of the calendar date. */\n @Input() override value?: Date | string | null | undefined;\n /** Sets the minimum date value allowed. */\n @Input() min?: Date | string;\n /** Sets the maximum date value allowed. */\n @Input() max?: Date | string;\n /** Sets the date picker type. 'calendar' shows a calendar popup, 'input' shows just a date input. @default \"calendar\" */\n @Input() type?: GoabDatePickerInputType;\n /** @deprecated This property has no effect and will be removed in a future version. */\n @Input() relative?: boolean;\n /** Sets the width of the date picker input. */\n @Input() width?: string;\n\n /** Emits when the selected date changes. Emits the date picker change detail including name and value. */\n @Output() onChange = new EventEmitter<GoabDatePickerOnChangeDetail>();\n\n private once: Once = new Once();\n\n private formatValue(param: string, val: Date | string | null | undefined): string {\n if (!val) return \"\";\n\n this.once.when(val instanceof Date).do(param, () => {\n console.warn(\n `GoabDatePicker: Using Date for '${param}' is deprecated. Use a string in YYYY-MM-DD format instead.`,\n );\n });\n\n return new CalendarDate(val).toString();\n }\n\n valueString(): string {\n return this.formatValue(\"value\", this.value);\n }\n\n minString(): string {\n return this.formatValue(\"min\", this.min);\n }\n\n maxString(): string {\n return this.formatValue(\"max\", this.max);\n }\n\n _onChange(e: Event) {\n const detail = {\n ...(e as CustomEvent<GoabDatePickerOnChangeDetail>).detail,\n event: e,\n };\n this.onChange.emit(detail);\n this.markAsTouched();\n this.fcChange?.(detail.value);\n }\n\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n\n if (this.value && typeof this.value !== \"string\") {\n console.warn(\n \"Using a `Date` type for value is deprecated. Instead use a string of the format `yyyy-mm-dd`\",\n );\n }\n }\n\n override setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n this.elementRef.nativeElement.disabled = isDisabled;\n }\n\n @HostListener(\"disabledChange\", [\"$event\"])\n listenDisabledChange(event: Event) {\n const isDisabled = (event as CustomEvent<{ disabled: boolean }>).detail.disabled;\n this.setDisabledState(isDisabled);\n }\n\n override writeValue(value: Date | null): void {\n this.value = value;\n\n const datePickerEl = this.goaComponentRef?.nativeElement as HTMLElement | undefined;\n if (datePickerEl) {\n if (!value) {\n this.renderer.setAttribute(datePickerEl, \"value\", \"\");\n } else {\n this.renderer.setAttribute(\n datePickerEl,\n \"value\",\n value instanceof Date ? new CalendarDate(value).toString() : value,\n );\n }\n }\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-details\",\n\n template: `\n @if (isReady) {\n <goa-details\n [attr.heading]=\"heading\"\n [attr.testid]=\"testId\"\n [attr.open]=\"open\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-details>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Let users reveal more detailed information when they need it. */\nexport class GoabDetails extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** @required The title heading. */\n @Input({ required: true }) heading!: string;\n /** Controls if details is expanded or not. */\n @Input({ transform: booleanAttribute }) open?: boolean;\n /** Sets the maximum width of the details. */\n @Input() maxWidth?: string;\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-divider\",\n\n template: `\n @if (isReady) {\n <goa-divider\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n </goa-divider>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Indicate a separation of layout, or to distinguish large chunks of information on a page. */\nexport class GoabDivider extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import { NgTemplateOutlet } from \"@angular/common\";\nimport {\n booleanAttribute,\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n EventEmitter,\n Input,\n Output,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { GoabDrawerPosition, GoabDrawerSize } from \"@abgov/ui-components-common\";\n\n@Component({\n standalone: true,\n selector: \"goab-drawer\",\n imports: [NgTemplateOutlet],\n template: `@if (isReady) {\n <goa-drawer\n [open]=\"open\"\n [attr.position]=\"position\"\n [attr.heading]=\"getHeadingAsString()\"\n [attr.maxsize]=\"maxSize\"\n [attr.testid]=\"testId\"\n [attr.version]=\"version\"\n (_close)=\"_onClose()\"\n >\n <ng-content></ng-content>\n <div slot=\"heading\">\n <ng-container [ngTemplateOutlet]=\"getHeadingAsTemplate()\"></ng-container>\n </div>\n <div slot=\"actions\">\n <ng-container [ngTemplateOutlet]=\"actions\"></ng-container>\n </div>\n </goa-drawer>\n } `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A panel that slides in from the side of the screen to display additional content or actions without navigating away from the current view. */\nexport class GoabDrawer implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n version = \"2\";\n\n /** @required Whether the drawer is open. */\n @Input({ required: true, transform: booleanAttribute }) open!: boolean;\n /** @required The position of the drawer. */\n @Input({ required: true }) position!: GoabDrawerPosition;\n /** The heading text displayed at the top of the drawer. */\n @Input() heading!: string | TemplateRef<any>;\n /** Sets max height on bottom position, sets width on left and right position. */\n @Input() maxSize?: GoabDrawerSize;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** Sets the actions area content using an Angular template reference. */\n @Input() actions!: TemplateRef<any>;\n /** Emits when the drawer is closed. */\n @Output() onClose = new EventEmitter();\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onClose() {\n this.onClose.emit();\n }\n\n getHeadingAsString(): string {\n return this.heading instanceof TemplateRef ? \"\" : this.heading;\n }\n\n getHeadingAsTemplate(): TemplateRef<any> | null {\n if (!this.heading) return null;\n return this.heading instanceof TemplateRef ? this.heading : null;\n }\n}\n","import {\n GoabDropdownOnChangeDetail,\n GoabDropdownSize,\n GoabIconType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n booleanAttribute,\n forwardRef,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\nimport { GoabControlValueAccessor } from \"../base.component\";\n\n// \"disabled\", \"value\", \"id\" is an exposed property of HTMLInputElement, no need to bind with attr\n@Component({\n standalone: true,\n selector: \"goab-dropdown\",\n\n template: `\n @if (isReady) {\n <goa-dropdown\n #goaComponentRef\n [attr.version]=\"version\"\n [attr.name]=\"name\"\n [value]=\"value\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.arialabelledby]=\"ariaLabelledBy\"\n [disabled]=\"disabled\"\n [attr.error]=\"error\"\n [attr.filterable]=\"filterable\"\n [attr.leadingicon]=\"leadingIcon\"\n [attr.maxheight]=\"maxHeight\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n [attr.mt]=\"mt\"\n [attr.multiselect]=\"multiselect\"\n [attr.native]=\"native\"\n [attr.placeholder]=\"placeholder\"\n [attr.testid]=\"testId\"\n [attr.width]=\"width\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.relative]=\"relative\"\n [attr.autocomplete]=\"autoComplete\"\n [attr.size]=\"size\"\n [id]=\"id\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n </goa-dropdown>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabDropdown),\n },\n ],\n})\n/** Present a list of options to the user to select from. */\nexport class GoabDropdown extends GoabControlValueAccessor implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Identifier for the dropdown. Should be unique. */\n @Input() name?: string;\n /** Defines how the selected value will be translated for the screen reader. If not specified it will fall back to the name. */\n @Input() ariaLabel?: string;\n /** The aria-labelledby attribute identifies the element(or elements) that labels the dropdown it is applied to. Normally it is the id of the label. */\n @Input() ariaLabelledBy?: string;\n /** When true the dropdown will have the ability to filter options by typing into the input field. */\n @Input({ transform: booleanAttribute }) filterable?: boolean;\n /** Icon shown to the left of the dropdown input. */\n @Input() leadingIcon?: GoabIconType;\n /** Maximum height of the dropdown menu. Non-native only. */\n @Input() maxHeight?: string;\n /** When true, allows multiple items to be selected. Not currently exposed. */\n @Input({ transform: booleanAttribute }) multiselect?: boolean;\n /** When true will render the native select HTML element. */\n @Input({ transform: booleanAttribute }) native?: boolean;\n /** The text displayed for the dropdown before a selection is made. Non-native only. */\n @Input() placeholder?: string;\n /** Overrides the autosized menu width. Non-native only. */\n @Input() width?: string;\n /** Sets the maximum width of the dropdown. Use a CSS unit (px, %, ch, rem, em). */\n @Input() maxWidth?: string;\n /** Specifies the autocomplete attribute for the dropdown input. Native only. */\n @Input() autoComplete?: string;\n /** Sets the size of the dropdown. Compact reduces height for dense layouts. @default \"default\" */\n @Input() size?: GoabDropdownSize = \"default\";\n /** @deprecated This property has no effect and will be removed in a future version. */\n @Input() relative?: boolean;\n /** Emits when the user selects a value from the dropdown. Emits a GoabDropdownOnChangeDetail object with the new value. */\n @Output() onChange = new EventEmitter<GoabDropdownOnChangeDetail>();\n\n isReady = false;\n version = \"2\";\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onChange(e: Event) {\n const detail = { ...(e as CustomEvent<GoabDropdownOnChangeDetail>).detail, event: e };\n // Keep local value in sync with emitted detail\n this.value = detail.value || null;\n this.onChange.emit(detail);\n\n this.markAsTouched();\n this.fcChange?.(detail.value || \"\");\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabDropdownItemMountType } from \"@abgov/ui-components-common\";\n\n@Component({\n standalone: true,\n selector: \"goab-dropdown-item\",\n template: ` @if (isReady) {\n <goa-dropdown-item\n [value]=\"value\"\n [label]=\"label\"\n [attr.filter]=\"filter\"\n [attr.name]=\"name\"\n [attr.mount]=\"mountType\"\n >\n </goa-dropdown-item>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Present a list of options to the user to select from. */\nexport class GoabDropdownItem implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** The value submitted when this item is selected. */\n @Input() value?: string;\n /** Text used to filter and match this item in typeahead search. */\n @Input() filter?: string;\n /** Display label for the dropdown item. */\n @Input() label?: string;\n /** Sets the name attribute of the dropdown item. */\n @Input() name?: string;\n /** Controls how the item is registered with the parent dropdown. */\n @Input() mountType?: GoabDropdownItemMountType;\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabFileUploadOnCancelDetail,\n GoabFileUploadOnDeleteDetail,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-file-upload-card\",\n template: ` @if (isReady) {\n <goa-file-upload-card\n [attr.version]=\"version\"\n [attr.filename]=\"filename\"\n [attr.size]=\"size\"\n [attr.type]=\"type\"\n [attr.progress]=\"progress\"\n [attr.error]=\"error\"\n [attr.testid]=\"testId\"\n (_cancel)=\"_onCancel($event)\"\n (_delete)=\"_onDelete($event)\"\n >\n </goa-file-upload-card>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Display uploaded file with actions. */\nexport class GoabFileUploadCard implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** @required The name of the uploaded file to display. */\n @Input({ required: true }) filename!: string;\n /** @required The file size in bytes. Displayed in a human-readable format (KB, MB). */\n @Input({ required: true, transform: numberAttribute }) size!: number;\n /** The MIME type of the file. Used to determine the file type icon. */\n @Input() type?: string;\n /** Upload progress percentage from 0-100. Use -1 to indicate upload is complete. */\n @Input({ transform: numberAttribute }) progress?: number;\n /** Error message to display. When set, the card shows an error state with a cancel button. */\n @Input() error?: string;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n\n /** Emits when the user cancels a file upload. Emits a GoabFileUploadOnCancelDetail object with the filename. */\n @Output() onCancel = new EventEmitter<GoabFileUploadOnCancelDetail>();\n /** Emits when the user removes an uploaded file. Emits a GoabFileUploadOnDeleteDetail object with the filename. */\n @Output() onDelete = new EventEmitter<GoabFileUploadOnDeleteDetail>();\n\n isReady = false;\n version = \"2\";\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onCancel(event: Event) {\n this.onCancel.emit({ filename: this.filename, event });\n }\n\n _onDelete(event: Event) {\n this.onDelete.emit({ filename: this.filename, event });\n }\n}\n","import {\n GoabFileUploadInputOnSelectFileDetail,\n GoabFileUploadInputVariant,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-file-upload-input\",\n template: `@if (isReady) {\n <goa-file-upload-input\n [attr.version]=\"version\"\n [attr.variant]=\"variant\"\n [attr.accept]=\"accept\"\n [attr.maxfilesize]=\"maxFileSize\"\n [attr.testid]=\"testId\"\n [id]=\"id\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.mr]=\"mr\"\n [attr.ml]=\"ml\"\n (_selectFile)=\"_onSelectFile($event)\"\n >\n </goa-file-upload-input>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Help users select and upload a file. */\nexport class GoabFileUploadInput extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Sets the id attribute on the file upload input element. */\n @Input() id?: string = \"\";\n /** The input display variant. \"dragdrop\" shows a drag-and-drop area, \"button\" shows a simple button. @default \"dragdrop\" */\n @Input() variant?: GoabFileUploadInputVariant;\n /** Maximum file size with unit (e.g., \"5MB\", \"100KB\", \"1GB\"). Files exceeding this will be rejected. @default \"5MB\" */\n @Input() maxFileSize?: string = \"5MB\";\n /** Accepted file types as a comma-separated list of MIME types or file extensions (e.g., \"image/*,.pdf\"). */\n @Input() accept?: string;\n\n /** Emits when a file is selected. Emits the selected file details. */\n @Output() onSelectFile = new EventEmitter<GoabFileUploadInputOnSelectFileDetail>();\n\n isReady = false;\n version = \"2\";\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onSelectFile(e: Event) {\n const detail = {\n ...(e as CustomEvent<GoabFileUploadInputOnSelectFileDetail>).detail,\n event: e,\n };\n this.onSelectFile.emit(detail);\n }\n}\n","import { GoabChipTheme, GoabIconType } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-filter-chip\",\n template: `@if (isReady) {\n <goa-filter-chip\n [attr.version]=\"version\"\n [attr.error]=\"error\"\n [attr.icontheme]=\"iconTheme\"\n [attr.content]=\"content\"\n [attr.secondarytext]=\"secondaryText\"\n [attr.leadingicon]=\"leadingIcon\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_click)=\"_onClick()\"\n >\n <ng-content />\n </goa-filter-chip>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Allow the user to enter information, filter content, and make selections. */\nexport class GoabFilterChip extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Shows an error state. */\n @Input({ transform: booleanAttribute }) error?: boolean;\n /** Marks the chip as deletable. */\n @Input({ transform: booleanAttribute }) deletable?: boolean;\n /** Text label of the chip. */\n @Input() content?: string = \"\";\n /** Sets the icon theme style for the filter chip. */\n @Input() iconTheme?: GoabChipTheme;\n /** Secondary text displayed in a smaller size before the main content. */\n @Input() secondaryText?: string = \"\";\n /** Icon displayed at the start of the chip. */\n @Input() leadingIcon?: GoabIconType | null = null;\n\n /** Emits when the filter chip delete button is clicked. */\n @Output() onClick = new EventEmitter();\n\n isReady = false;\n version = \"2\";\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onClick() {\n this.onClick.emit();\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-app-footer\",\n template: `@if (isReady) {\n <goa-app-footer\n [attr.maxcontentwidth]=\"maxContentWidth\"\n [attr.url]=\"url\"\n [attr.testid]=\"testId\"\n [attr.version]=\"version\"\n >\n <ng-content select=\"[slot=nav]\" />\n <ng-content select=\"goab-app-footer-meta-section\"></ng-content>\n <ng-content></ng-content>\n </goa-app-footer>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Provides information related your service at the bottom of every page. */\nexport class GoabAppFooter implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** The maximum width of the main content area. */\n @Input() maxContentWidth?: string;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** URL for the Government of Alberta logo link. Set to empty string to disable the link. */\n @Input() url?: string;\n\n isReady = false;\n version = \"2\";\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-app-footer-meta-section\",\n template: `@if (isReady) {\n <goa-app-footer-meta-section [attr.testid]=\"testId\">\n <ng-content />\n </goa-app-footer-meta-section>\n }`,\n styles: [\":host { width: 100%; }\"],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Copyright and legal links in footer. */\nexport class GoabAppFooterMetaSection implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** @required Sets the slot to \"meta\" to render the section in the correct footer position. */\n @Input({ required: true }) slot!: \"meta\";\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-app-footer-nav-section\",\n template: `@if (isReady) {\n <goa-app-footer-nav-section\n [attr.maxcolumncount]=\"maxColumnCount\"\n [attr.heading]=\"heading\"\n [attr.testid]=\"testId\"\n >\n <ng-content />\n </goa-app-footer-nav-section>\n }`,\n styles: [\":host { width: 100%; }\"],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Navigation links section in footer. */\nexport class GoabAppFooterNavSection implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** The section heading displayed above the navigation links. */\n @Input() heading?: string;\n /** Maximum number of columns to display links in on larger screens. @default 1 */\n @Input() maxColumnCount? = 1;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** @required Sets the slot to \"nav\" to render the section in the correct footer position. */\n @Input({ required: true }) slot!: \"nav\";\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n EventEmitter,\n Input,\n Output,\n} from \"@angular/core\";\nimport { GoabFormState, GoabPublicFormStatus } from \"@abgov/ui-components-common\";\n\n@Component({\n selector: \"goab-public-form\",\n standalone: true,\n template: `\n <goa-public-form\n [attr.status]=\"status\"\n [attr.name]=\"name\"\n (_init)=\"_onInit($event)\"\n (_complete)=\"_onComplete($event)\"\n (_stateChange)=\"_onStateChange($event)\"\n >\n <ng-content />\n </goa-public-form>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Container for form inputs and validation. */\nexport class GoabPublicForm {\n /** The initialization status of the form. Set to \"initializing\" while loading external state, then \"complete\" when ready. @default \"complete\" */\n @Input() status?: GoabPublicFormStatus = \"complete\";\n /** A name identifier for the form. Useful for debugging complex forms with multiple nested forms. */\n @Input() name?: string;\n\n /** Emits when the form is initialized. */\n @Output() onInit = new EventEmitter<Event>();\n /** Emits when the form is complete. Emits the form state. */\n @Output() onComplete = new EventEmitter<GoabFormState>();\n /** Emits when the form state changes. Emits the updated form state. */\n @Output() onStateChange = new EventEmitter<GoabFormState>();\n\n _onInit(e: Event) {\n this.onInit.emit(e);\n }\n\n _onComplete(e: Event) {\n const detail = (e as CustomEvent).detail;\n this.onComplete.emit(detail);\n }\n\n _onStateChange(e: Event) {\n const detail = (e as CustomEvent).detail;\n this.onStateChange.emit(detail.data);\n }\n}\n","import {\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n EventEmitter,\n Input,\n Output,\n} from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\nimport {\n GoabPublicFormPageButtonVisibility,\n GoabPublicFormPageStep,\n} from \"@abgov/ui-components-common\";\n\n@Component({\n selector: \"goab-public-form-page\",\n standalone: true,\n template: `\n <goa-public-form-page\n [id]=\"id\"\n [attr.heading]=\"heading\"\n [attr.sub-heading]=\"subHeading\"\n [attr.section-title]=\"sectionTitle\"\n [attr.back-url]=\"backUrl\"\n [attr.type]=\"type\"\n [attr.button-text]=\"buttonText\"\n [attr.button-visibility]=\"buttonVisibility\"\n [attr.summary-heading]=\"summaryHeading\"\n [attr.mt]=\"mt\"\n [attr.mr]=\"mr\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n (_continue)=\"_onContinue($event)\"\n >\n <ng-content></ng-content>\n </goa-public-form-page>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Container for form inputs and validation. */\nexport class GoabPublicFormPage extends GoabBaseComponent {\n /** Sets the id of the form page. */\n @Input() id = \"\";\n /** Sets the main heading text of the form page. */\n @Input() heading = \"\";\n /** Sets the sub-heading text displayed below the main heading. */\n @Input() subHeading = \"\";\n /** Sets the heading used in the summary view for this page. */\n @Input() summaryHeading = \"\";\n /** Sets the section title displayed above the heading. */\n @Input() sectionTitle = \"\";\n /** Sets the URL for the back navigation link. */\n @Input() backUrl = \"\";\n /** Sets the type of the form page step. @default \"step\" */\n @Input() type: GoabPublicFormPageStep = \"step\";\n /** Sets the text for the continue or confirm button. */\n @Input() buttonText = \"\";\n /** Sets the visibility of the continue button. @default \"visible\" */\n @Input() buttonVisibility: GoabPublicFormPageButtonVisibility = \"visible\";\n\n /** Emits when the form page continues to the next step. */\n @Output() onContinue = new EventEmitter<Event>();\n\n _onContinue(event: Event) {\n this.onContinue.emit(event);\n }\n}\n","import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from \"@angular/core\";\n\n@Component({\n selector: \"goab-public-form-summary\",\n standalone: true,\n template: `\n <goa-public-form-summary [attr.heading]=\"heading\">\n <ng-content />\n </goa-public-form-summary>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Container for form inputs and validation. */\nexport class GoabPublicFormSummary {\n /** Sets the heading text displayed above the form summary. */\n @Input() heading?: string;\n}\n","import {\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n EventEmitter,\n Input,\n Output,\n} from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n selector: \"goab-public-subform\",\n standalone: true,\n template: `\n <goa-public-subform\n [attr.id]=\"id\"\n [attr.name]=\"name\"\n [attr.continue-msg]=\"continueMsg\"\n [attr.mt]=\"mt\"\n [attr.mr]=\"mr\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n (_init)=\"_onInit($event)\"\n (_stateChange)=\"_onStateChange($event)\"\n >\n <ng-content />\n </goa-public-subform>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Container for form inputs and validation. */\nexport class GoabPublicSubform extends GoabBaseComponent {\n /** Sets the id of the subform. */\n @Input() id?: string = \"\";\n /** Sets the name identifier for the subform. */\n @Input() name?: string = \"\";\n /** Sets the text for the continue button. */\n @Input() continueMsg?: string = \"\";\n\n /** Emits when the subform is initialized. */\n @Output() onInit = new EventEmitter<Event>();\n /** Emits when the subform state changes. */\n @Output() onStateChange = new EventEmitter<Event>();\n\n _onInit(e: Event) {\n this.onInit.emit(e);\n }\n\n _onStateChange(e: Event) {\n this.onStateChange.emit(e);\n }\n}\n","import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n selector: \"goab-public-subform-index\",\n standalone: true,\n host: {\n slot: \"subform-index\",\n },\n template: `\n <goa-public-subform-index\n [attr.heading]=\"heading\"\n [attr.section-title]=\"sectionTitle\"\n [attr.action-button-text]=\"actionButtonText\"\n [attr.button-visibility]=\"buttonVisibility\"\n [attr.mt]=\"mt\"\n [attr.mr]=\"mr\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n >\n <ng-content />\n </goa-public-subform-index>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Container for form inputs and validation. */\nexport class GoabPublicSubformIndex extends GoabBaseComponent {\n /** Sets the heading text of the subform index page. */\n @Input() heading?: string = \"\";\n /** Sets the section title displayed above the heading. */\n @Input() sectionTitle?: string = \"\";\n /** Sets the text for the action button that navigates to the subform. */\n @Input() actionButtonText?: string = \"\";\n /** Sets the visibility of the continue button. @default \"hidden\" */\n @Input() buttonVisibility?: \"visible\" | \"hidden\" = \"hidden\";\n}\n","import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from \"@angular/core\";\nimport { GoabPublicFormTaskStatus } from \"@abgov/ui-components-common\";\n\n@Component({\n selector: \"goab-public-form-task\",\n standalone: true,\n template: `\n <goa-public-form-task [attr.status]=\"status\">\n <ng-content />\n </goa-public-form-task>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Container for form inputs and validation. */\nexport class GoabPublicFormTask {\n /** Sets the status of the task, which determines its badge display. */\n @Input() status?: GoabPublicFormTaskStatus;\n}\n","import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n selector: \"goab-public-form-task-list\",\n standalone: true,\n template: `\n <goa-public-form-task-list\n [attr.heading]=\"heading\"\n [attr.mt]=\"mt\"\n [attr.mr]=\"mr\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n >\n <ng-content />\n </goa-public-form-task-list>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Container for form inputs and validation. */\nexport class GoabPublicFormTaskList extends GoabBaseComponent {\n /** Sets the heading text displayed above the task list. */\n @Input() heading?: string;\n}\n","import {\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n Input,\n Output,\n EventEmitter,\n} from \"@angular/core\";\nimport {\n GoabFormDispatchOn,\n GoabFieldsetOnContinueDetail,\n} from \"@abgov/ui-components-common\";\n\n@Component({\n selector: \"goab-fieldset\",\n template: ` <goa-fieldset\n [attr.section-title]=\"sectionTitle\"\n [attr.dispatch-on]=\"dispatchOn\"\n [attr.id]=\"id\"\n (_continue)=\"_onContinue($event)\"\n >\n <ng-content></ng-content>\n </goa-fieldset>`,\n standalone: true,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Container for form inputs and validation. */\nexport class GoabFieldset {\n /** Sets the id of the fieldset. */\n @Input() id?: string;\n /** Sets the section title displayed above the fieldset content. */\n @Input() sectionTitle?: string;\n /** Sets when changes will be dispatched to the form. @default \"continue\" */\n @Input() dispatchOn: GoabFormDispatchOn = \"continue\";\n\n /** Emits when the fieldset continues to the next step. Emits the continue detail. */\n @Output() onContinue = new EventEmitter<GoabFieldsetOnContinueDetail>();\n\n _onContinue(event: Event) {\n const detail = (event as CustomEvent).detail;\n this.onContinue.emit(detail);\n }\n}\n","import {\n GoabFormItemLabelSize,\n GoabFormItemRequirement,\n} from \"@abgov/ui-components-common\";\nimport {\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n Input,\n OnInit,\n ChangeDetectorRef,\n TemplateRef,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\nimport { GoabBaseComponent } from \"../base.component\";\nimport { GoabFormItemType } from \"@abgov/ui-components-common\";\n\n@Component({\n standalone: true,\n selector: \"goab-form-item\",\n imports: [NgTemplateOutlet],\n template: `@if (isReady) {\n <goa-form-item\n [attr.version]=\"version\"\n [attr.label]=\"label\"\n [attr.labelsize]=\"labelSize\"\n [attr.helptext]=\"getHelpTextAsString()\"\n [attr.error]=\"getErrorAsString()\"\n [attr.testid]=\"testId\"\n [attr.type]=\"type\"\n [id]=\"id\"\n [attr.name]=\"name\"\n [attr.requirement]=\"requirement\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.public-form-summary-order]=\"publicFormSummaryOrder\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.mr]=\"mr\"\n [attr.ml]=\"ml\"\n >\n @if (getErrorAsTemplate()) {\n <div slot=\"error\">\n <ng-container [ngTemplateOutlet]=\"getErrorAsTemplate()\"></ng-container>\n </div>\n }\n @if (getHelpTextAsTemplate()) {\n <div slot=\"helptext\">\n <ng-container [ngTemplateOutlet]=\"getHelpTextAsTemplate()\"></ng-container>\n </div>\n }\n <ng-content />\n </goa-form-item>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Wraps an input control with a text label, requirement label, helper text, and error text. */\nexport class GoabFormItem extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Creates a label for the form item. */\n @Input() label?: string;\n /** Sets the label size. 'regular' for standard, 'large' for emphasis. */\n @Input() labelSize?: GoabFormItemLabelSize;\n /** Help text displayed under the form field to provide additional explanation. */\n @Input() helpText?: string | TemplateRef<any>;\n /** Error text displayed under the form field. Leave blank to indicate a valid field. */\n @Input() error?: string | TemplateRef<any>;\n /** Marks the field with an optional or required label indicator. */\n @Input() requirement?: GoabFormItemRequirement;\n /** Sets the maximum width of the form item. */\n @Input() maxWidth?: string;\n /** Sets the id attribute on the form item element. */\n @Input() id?: string;\n /** Specifies the input type for appropriate message spacing. Used with checkbox-list or radio-group. */\n @Input() type?: GoabFormItemType = \"\";\n /** Sets the display order within the form summary. For public-form use only. */\n @Input() publicFormSummaryOrder?: number;\n /** Overrides the label value within the form-summary to provide a shorter description. For public-form use only. */\n @Input() name?: string;\n\n isReady = false;\n version = \"2\";\n\n getHelpTextAsString(): string | undefined {\n return typeof this.helpText === \"string\" ? this.helpText : undefined;\n }\n\n getHelpTextAsTemplate(): TemplateRef<any> | null {\n return this.helpText instanceof TemplateRef ? this.helpText : null;\n }\n\n getErrorAsString(): string | undefined {\n return typeof this.error === \"string\" ? this.error : undefined;\n }\n\n getErrorAsTemplate(): TemplateRef<any> | null {\n return this.error instanceof TemplateRef ? this.error : null;\n }\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import { Component, Input } from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-form-item-slot\",\n template: `<ng-content></ng-content>`,\n})\n/**\n * @deprecated Use `TemplateRef` inputs on `goab-form-item` (`[helpText]` / `[error]`) instead.\n */\nexport class GoabFormItemSlot {\n /** @required Sets which form-item slot this content should render into. */\n @Input({ required: true }) slot!: \"helptext\" | \"error\";\n}\n","import { GoabFormStepStatus } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-form-step\",\n template: `\n @if (isReady) {\n <goa-form-step [attr.text]=\"text\" [attr.status]=\"status\"></goa-form-step>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Individual step in a multi-step form. */\nexport class GoabFormStep implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** The step label text displayed to users. */\n @Input() text?: string;\n /** The completion status of the step. Affects visual styling and icons. */\n @Input() status?: GoabFormStepStatus;\n\n isReady = false;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import { GoabFormStepperOnChangeDetail } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-form-stepper\",\n template: `\n @if (isReady) {\n <goa-form-stepper\n [attr.step]=\"step\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n </goa-form-stepper>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Provides a visual representation of a form through a series of steps. */\nexport class GoabFormStepper extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** The current step state value (1-based index). Leaving it blank (-1) will allow any step to be accessed. @default -1 */\n @Input() step?: number = -1;\n /** Emits when the form stepper step changes. Emits the new step as GoabFormStepperOnChangeDetail. */\n @Output() onChange = new EventEmitter<GoabFormStepperOnChangeDetail>();\n\n isReady = false;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n _onChange(e: Event) {\n const detail = (e as CustomEvent<GoabFormStepperOnChangeDetail>).detail;\n this.onChange.emit(detail);\n }\n}\n","import { Spacing } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-grid\",\n template: `\n @if (isReady) {\n <goa-grid\n [attr.gap]=\"gap\"\n [attr.minchildwidth]=\"minChildWidth\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-grid>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Arrange a number of components into a responsive grid pattern. */\nexport class GoabGrid extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** @required Minimum width of the child elements. */\n @Input({ required: true }) minChildWidth!: string;\n /** Gap between child items. */\n @Input() gap?: Spacing;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-app-header\",\n template: `@if (isReady) {\n <goa-app-header\n [attr.url]=\"url\"\n [attr.heading]=\"heading\"\n [attr.secondarytext]=\"secondaryText\"\n [attr.maxcontentwidth]=\"maxContentWidth\"\n [attr.fullmenubreakpoint]=\"fullMenuBreakpoint\"\n [attr.testid]=\"testId\"\n [attr.hasmenuclickhandler]=\"onMenuClick.observed ? 'true' : 'false'\"\n [attr.version]=\"version\"\n (_menuClick)=\"_onMenuClick()\"\n >\n <ng-content />\n </goa-app-header>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Provide structure to help users find their way around the service. */\nexport class GoabAppHeader extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Sets the URL to link from the alberta.ca logo. A full url is required. */\n @Input() url?: string;\n /** Sets the service name to display in the app header. */\n @Input() heading?: string;\n /** V2 only: Secondary text displayed under the service name. */\n @Input() secondaryText?: string;\n /** Maximum width of the content area. */\n @Input() maxContentWidth?: string;\n /** Sets the breakpoint in px for the full menu to display. */\n @Input({ transform: numberAttribute }) fullMenuBreakpoint?: number;\n\n isReady = false;\n version = \"2\";\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n /** Emits when the menu button is clicked. Used for custom menu handling. */\n @Output() onMenuClick = new EventEmitter();\n\n _onMenuClick() {\n this.onMenuClick.emit();\n }\n}\n","import { GoabIconType } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n HostBinding,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-app-header-menu\",\n template: `@if (isReady) {\n <goa-app-header-menu\n [attr.leadingicon]=\"leadingIcon\"\n [attr.heading]=\"heading\"\n [attr.testid]=\"testId\"\n >\n <ng-content />\n </goa-app-header-menu>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Menu items within the app header. */\nexport class GoabAppHeaderMenu extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Icon displayed before the heading text. */\n @Input() leadingIcon?: GoabIconType;\n /** The menu heading text displayed as the dropdown trigger. */\n @Input() heading?: string;\n /** Sets the slot name for the component. */\n @Input() slotName?: string;\n\n @HostBinding(\"attr.slot\")\n get hostSlot(): string | null {\n return this.slotName ?? null;\n }\n\n isReady = false;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-hero-banner\",\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-hero-banner\n [attr.heading]=\"heading\"\n [attr.backgroundurl]=\"backgroundUrl\"\n [attr.minheight]=\"minHeight\"\n [attr.testid]=\"testId\"\n [attr.maxcontentwidth]=\"maxContentWidth\"\n [attr.backgroundColor]=\"backgroundColor\"\n [attr.textcolor]=\"textColor\"\n >\n <ng-content />\n <div slot=\"actions\">\n <ng-container [ngTemplateOutlet]=\"actions\"></ng-container>\n </div>\n </goa-hero-banner>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A visual band of text, including an image and a call to action. */\nexport class GoabHeroBanner implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** Main heading text. */\n @Input() heading?: string;\n /** Background image url. */\n @Input() backgroundUrl?: string;\n /** Minimum height of the hero banner. Defaults to 600px when a background image is provided. */\n @Input() minHeight?: string;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** Maximum width of the content area. */\n @Input() maxContentWidth?: string;\n /** Hero Banner background color when no background image is provided. */\n @Input() backgroundColor?: string;\n /** Text color within the hero banner. */\n @Input() textColor?: string;\n /** Angular template reference for the actions slot content. */\n @Input() actions!: TemplateRef<any>;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n GoabIconOverridesType,\n GoabIconSize,\n GoabIconTheme,\n GoabIconType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n booleanAttribute,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-icon\",\n template: `\n @if (isReady) {\n <goa-icon\n [attr.type]=\"type\"\n [attr.theme]=\"theme\"\n [attr.size]=\"size\"\n [attr.inverted]=\"inverted\"\n [attr.fillcolor]=\"fillColor\"\n [attr.opacity]=\"opacity\"\n [attr.title]=\"title\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.role]=\"role\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n [attr.testid]=\"testId\"\n >\n </goa-icon>\n }\n `,\n styles: [\":host { display: inline-flex; align-items: center; }\"],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A simple and universal graphic symbol representing an action, object, or concept to help guide the user. */\nexport class GoabIcon extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** @required The icon type to display. See GoabIconType for available icons. */\n @Input({ required: true }) type!: GoabIconType | GoabIconOverridesType;\n /** Sets the size of the icon. Accepts numeric (1-6) or named sizes. @default \"medium\" */\n @Input() size?: GoabIconSize;\n /** Sets the icon theme. 'outline' shows stroked icons, 'filled' shows solid icons. */\n @Input() theme?: GoabIconTheme;\n /** When true, inverts the icon colors for use on dark backgrounds. */\n @Input({ transform: booleanAttribute }) inverted?: boolean;\n /** Sets a custom fill color for the icon. Accepts any valid CSS color value. */\n @Input() fillColor?: string;\n /** Sets the opacity of the icon from 0 (transparent) to 1 (opaque). */\n @Input({ transform: numberAttribute }) opacity?: number;\n /** Adds an accessible title to the icon SVG. Used by screen readers. */\n @Input() title?: string;\n /** Defines how the icon will be announced by screen readers. */\n @Input() ariaLabel?: string;\n /** Sets the ARIA role for the icon. Use 'presentation' for decorative icons. */\n @Input() role?: string;\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabIconButtonVariant,\n GoabIconSize,\n GoabIconTheme,\n GoabIconType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-icon-button\",\n template: `\n @if (isReady) {\n <goa-icon-button\n [attr.icon]=\"icon\"\n [disabled]=\"disabled\"\n [attr.size]=\"size\"\n [attr.theme]=\"theme\"\n [attr.variant]=\"variant\"\n [title]=\"title\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.testid]=\"testId\"\n [attr.action]=\"action\"\n [attr.action-arg]=\"actionArg\"\n [attr.action-args]=\"JSON.stringify(actionArgs)\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_click)=\"_onClick()\"\n >\n <ng-content></ng-content>\n </goa-icon-button>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A compact button with an icon and no text. */\nexport class GoabIconButton extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n protected readonly JSON = JSON;\n /** @required Sets the icon. */\n @Input({ required: true }) icon!: GoabIconType;\n /** Sets the size of button. @default \"medium\" */\n @Input() size?: GoabIconSize = \"medium\";\n /** Styles the button to show color, light, dark or destructive action. */\n @Input() variant?: GoabIconButtonVariant;\n /** Sets the icon theme. \"outline\" for stroked icons, \"filled\" for solid icons. @default \"outline\" */\n @Input() theme?: GoabIconTheme = \"outline\";\n /** Sets the title of the button. */\n @Input() title?: string;\n /** Disables the button. */\n @Input({ transform: booleanAttribute }) disabled?: boolean;\n /** Sets the aria-label of the button. */\n @Input() ariaLabel?: string;\n /** Action identifier passed in click events for event delegation patterns. */\n @Input() action?: string;\n /** Single argument value passed with the action in click events. */\n @Input() actionArg?: string;\n /** Multiple argument values passed with the action in click events. */\n @Input() actionArgs?: Record<string, unknown>;\n /** Emits when the icon button is clicked. */\n @Output() onClick = new EventEmitter();\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n _onClick() {\n this.onClick.emit();\n }\n}\n","import {\n GoabIconType,\n GoabInputAutoCapitalize,\n GoabInputOnBlurDetail,\n GoabInputOnChangeDetail,\n GoabInputOnFocusDetail,\n GoabInputOnKeyPressDetail,\n GoabInputSize,\n GoabInputType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n OnInit,\n booleanAttribute,\n numberAttribute,\n TemplateRef,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\nimport { GoabControlValueAccessor } from \"../base.component\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-input\",\n imports: [NgTemplateOutlet],\n template: `@if (isReady) {\n <goa-input\n #goaComponentRef\n [attr.version]=\"version\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.focused]=\"focused\"\n [attr.value]=\"value\"\n [attr.autocapitalize]=\"autoCapitalize\"\n [attr.autocomplete]=\"autoComplete\"\n [attr.placeholder]=\"placeholder\"\n [attr.leadingicon]=\"leadingIcon\"\n [attr.trailingicon]=\"trailingIcon\"\n [attr.variant]=\"variant\"\n [disabled]=\"disabled\"\n [attr.readonly]=\"readonly\"\n [attr.error]=\"error\"\n [attr.data-testid]=\"testId\"\n [attr.width]=\"width\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.arialabelledby]=\"ariaLabelledBy\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.step]=\"step\"\n [attr.prefix]=\"prefix\"\n [attr.suffix]=\"suffix\"\n [attr.debounce]=\"debounce\"\n [attr.maxlength]=\"maxLength\"\n [attr.id]=\"id\"\n [attr.mt]=\"mt\"\n [attr.mr]=\"mr\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.handletrailingiconclick]=\"handleTrailingIconClick\"\n [attr.textalign]=\"textAlign\"\n [attr.size]=\"size\"\n (_trailingIconClick)=\"_onTrailingIconClick($event)\"\n (_change)=\"_onChange($event)\"\n (_focus)=\"_onFocus($event)\"\n (_blur)=\"_onBlur($event)\"\n (_keyPress)=\"_onKeyPress($event)\"\n [attr.trailingiconarialabel]=\"trailingIconAriaLabel\"\n >\n @if (leadingContent) {\n <div slot=\"leadingContent\">\n @if (getLeadingContentAsTemplate()) {\n <ng-container [ngTemplateOutlet]=\"getLeadingContentAsTemplate()\">\n </ng-container>\n } @else {\n {{ getLeadingContentAsString() }}\n }\n </div>\n }\n\n <ng-content />\n\n @if (trailingContent) {\n <div slot=\"trailingContent\">\n @if (getTrailingContentAsTemplate()) {\n <ng-container\n [ngTemplateOutlet]=\"getTrailingContentAsTemplate()\"\n ></ng-container>\n } @else {\n {{ getTrailingContentAsString() }}\n }\n </div>\n }\n </goa-input>\n }`,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabInput),\n },\n ],\n})\n/** A single-line field where users can input and edit text. */\nexport class GoabInput extends GoabControlValueAccessor implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Sets the type of the input field. @default \"text\" */\n @Input() type?: GoabInputType = \"text\";\n /** Name of input value that is received in the onChange event. */\n @Input() name?: string;\n /** Debounce delay in milliseconds before firing the change event. 0 means no debounce. */\n @Input({ transform: numberAttribute }) debounce?: number;\n /** Controls whether and how text input is automatically capitalized as it is entered/edited by the user. This only works on mobile devices. */\n @Input() autoCapitalize?: GoabInputAutoCapitalize;\n /** Specifies the autocomplete attribute for the input field. */\n @Input() autoComplete?: string;\n /** Text displayed within the input when no value is set. */\n @Input() placeholder?: string;\n /** Icon shown to the left of the text. */\n @Input() leadingIcon?: GoabIconType;\n /** Icon shown to the right of the text. */\n @Input() trailingIcon?: GoabIconType;\n /** Sets the visual style variant. 'goa' for standard GoA styling, 'bare' for minimal styling. */\n @Input() variant?: string;\n /** Sets the cursor focus to the input. */\n @Input({ transform: booleanAttribute }) focused?: boolean;\n /** Makes the input readonly. */\n @Input({ transform: booleanAttribute }) readonly?: boolean;\n /** Sets the width of the text input area. */\n @Input() width?: string;\n /** @deprecated Use leadingContent slot instead. */\n @Input() prefix?: string;\n /** @deprecated Use trailingContent slot instead. */\n @Input() suffix?: string;\n /** Defines how the input will be translated for the screen reader. If not specified it will fall back to the name. */\n @Input() ariaLabel?: string;\n /** Sets the maximum number of characters (as UTF-16 code units) the user can enter into the input. */\n @Input({ transform: numberAttribute }) maxLength?: number;\n /** A string value that supports any number, or an ISO 8601 format if using the date or datetime type. */\n @Input() min?: string | number;\n /** A string value that supports any number, or an ISO 8601 format if using the date or datetime type. */\n @Input() max?: string | number;\n /** How much a number or date should change by. */\n @Input({ transform: numberAttribute }) step?: number;\n /** The aria-labelledby attribute identifies the element (or elements) that labels the input. */\n @Input() ariaLabelledBy?: string;\n /** Aria label for the trailing icon. Use only when the trailing icon is interactive. */\n @Input() trailingIconAriaLabel?: string;\n /** Sets the text alignment within the input field. @default \"left\" */\n @Input() textAlign?: \"left\" | \"right\" = \"left\";\n /** Sets the leading content slot, accepting a string or template reference. */\n @Input() leadingContent!: string | TemplateRef<any>;\n /** Sets the trailing content slot, accepting a string or template reference. */\n @Input() trailingContent!: string | TemplateRef<any>;\n /** Sets the size of the input. 'compact' reduces height for dense layouts. @default \"default\" */\n @Input() size?: GoabInputSize = \"default\";\n\n /** Emits when the trailing icon is clicked. */\n @Output() onTrailingIconClick = new EventEmitter();\n /** Emits when the input receives focus. Emits focus detail including the current value. */\n @Output() onFocus = new EventEmitter<GoabInputOnFocusDetail>();\n /** Emits when the input loses focus. Emits blur detail including the current value. */\n @Output() onBlur = new EventEmitter<GoabInputOnBlurDetail>();\n /** Emits when a key is pressed in the input. Emits key press detail including the value and key pressed. */\n @Output() onKeyPress = new EventEmitter<GoabInputOnKeyPressDetail>();\n /** Emits when the input value changes. Emits change detail including the new value. */\n @Output() onChange = new EventEmitter<GoabInputOnChangeDetail>();\n\n version = \"2\";\n isReady = false;\n handleTrailingIconClick = false;\n\n ngOnInit() {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n\n this.handleTrailingIconClick = this.onTrailingIconClick.observed;\n if (typeof this.value === \"number\") {\n console.warn(\"For numeric values use goab-input-number.\");\n }\n }\n\n _onTrailingIconClick(_: Event) {\n if (this.handleTrailingIconClick) {\n this.onTrailingIconClick.emit();\n }\n }\n\n _onChange(e: Event) {\n this.markAsTouched();\n const detail = { ...(e as CustomEvent<GoabInputOnChangeDetail>).detail, event: e };\n this.onChange.emit(detail);\n\n this.fcChange?.(detail.value);\n }\n\n _onKeyPress(e: Event) {\n this.markAsTouched();\n const detail = { ...(e as CustomEvent<GoabInputOnKeyPressDetail>).detail, event: e };\n this.onKeyPress.emit(detail);\n\n this.fcTouched?.();\n }\n\n _onFocus(e: Event) {\n this.markAsTouched();\n const detail = { ...(e as CustomEvent<GoabInputOnFocusDetail>).detail, event: e };\n this.onFocus.emit(detail);\n }\n\n _onBlur(e: Event) {\n const detail = { ...(e as CustomEvent<GoabInputOnBlurDetail>).detail, event: e };\n this.onBlur.emit(detail);\n }\n\n getLeadingContentAsString(): string {\n return this.leadingContent instanceof TemplateRef ? \"\" : this.leadingContent;\n }\n\n getLeadingContentAsTemplate(): TemplateRef<any> | null {\n if (!this.leadingContent) return null;\n return this.leadingContent instanceof TemplateRef ? this.leadingContent : null;\n }\n\n getTrailingContentAsString(): string {\n return this.trailingContent instanceof TemplateRef ? \"\" : this.trailingContent;\n }\n\n getTrailingContentAsTemplate(): TemplateRef<any> | null {\n if (!this.trailingContent) return null;\n return this.trailingContent instanceof TemplateRef ? this.trailingContent : null;\n }\n}\n","import {\n GoabIconType,\n GoabInputAutoCapitalize,\n GoabInputOnBlurDetail,\n GoabInputOnChangeDetail,\n GoabInputOnFocusDetail,\n GoabInputOnKeyPressDetail,\n GoabInputType,\n Spacing,\n} from \"@abgov/ui-components-common\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n OnInit,\n booleanAttribute,\n numberAttribute,\n TemplateRef,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\n@Component({\n standalone: true,\n selector: \"goab-input-number\",\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-input\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.focused]=\"focused\"\n [attr.value]=\"value !== null ? value : ''\"\n [attr.autocapitalize]=\"autoCapitalize\"\n [attr.placeholder]=\"placeholder\"\n [attr.leadingicon]=\"leadingIcon\"\n [attr.trailingicon]=\"trailingIcon\"\n [attr.variant]=\"variant\"\n [disabled]=\"disabled\"\n [attr.readonly]=\"readonly\"\n [attr.error]=\"error\"\n [attr.data-testid]=\"testId\"\n [attr.width]=\"width\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.arialabelledby]=\"ariaLabelledBy\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.step]=\"step\"\n [attr.prefix]=\"prefix\"\n [attr.suffix]=\"suffix\"\n [attr.debounce]=\"debounce\"\n [attr.maxlength]=\"maxLength\"\n [attr.id]=\"id\"\n [attr.mt]=\"mt\"\n [attr.mr]=\"mr\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.handletrailingiconclick]=\"handleTrailingIconClick\"\n [attr.textalign]=\"textAlign\"\n (_trailingIconClick)=\"_onTrailingIconClick($event)\"\n (_change)=\"_onChange($event)\"\n (_focus)=\"_onFocus($event)\"\n (_blur)=\"_onBlur($event)\"\n (_keypress)=\"_onKeyPress($event)\"\n [attr.trailingiconarialabel]=\"trailingIconAriaLabel\"\n >\n <div slot=\"leadingContent\">\n @if (leadingContent) {\n @if (getLeadingContentAsTemplate()) {\n <ng-container\n [ngTemplateOutlet]=\"getLeadingContentAsTemplate()\"\n ></ng-container>\n } @else {\n {{ getLeadingContentAsString() }}\n }\n }\n </div>\n\n <ng-content />\n\n <div slot=\"trailingContent\">\n @if (trailingContent) {\n @if (getTrailingContentAsTemplate()) {\n <ng-container\n [ngTemplateOutlet]=\"getTrailingContentAsTemplate()\"\n ></ng-container>\n } @else {\n {{ getTrailingContentAsString() }}\n }\n }\n </div>\n </goa-input>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n // Use forwardRef with the new class name\n useExisting: forwardRef(() => GoabInputNumber),\n },\n ],\n})\n/** A single-line field where users can input and edit numeric values. */\nexport class GoabInputNumber implements ControlValueAccessor, OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** Sets the type of the input field. @default \"number\" */\n @Input() type: GoabInputType = \"number\";\n /** Name of input value that is received in the onChange event. */\n @Input() name?: string;\n /** Unique identifier for the input element. Used for label associations and accessibility. */\n @Input() id?: string;\n /** Debounce delay in milliseconds before firing the change event. 0 means no debounce. */\n @Input({ transform: numberAttribute }) debounce?: number;\n /** Disables this input. The input will not receive focus or events. */\n @Input({ transform: booleanAttribute }) disabled?: boolean;\n /** Controls whether and how text input is automatically capitalized as it is entered/edited by the user. This only works on mobile devices. */\n @Input() autoCapitalize?: GoabInputAutoCapitalize;\n /** Text displayed within the input when no value is set. */\n @Input() placeholder?: string;\n /** Icon shown to the left of the text. */\n @Input() leadingIcon?: GoabIconType;\n /** Icon shown to the right of the text. */\n @Input() trailingIcon?: GoabIconType;\n /** Sets the visual style variant. 'goa' for standard GoA styling, 'bare' for minimal styling. */\n @Input() variant?: string;\n /** Sets the cursor focus to the input. */\n @Input({ transform: booleanAttribute }) focused?: boolean;\n /** Makes the input readonly. */\n @Input({ transform: booleanAttribute }) readonly?: boolean;\n /** Sets the input to an error state. */\n @Input({ transform: booleanAttribute }) error?: boolean;\n /** Sets the width of the text input area. */\n @Input() width?: string;\n /** @deprecated Use leadingContent slot instead. */\n @Input() prefix?: string;\n /** @deprecated Use trailingContent slot instead. */\n @Input() suffix?: string;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** Defines how the input will be translated for the screen reader. If not specified it will fall back to the name. */\n @Input() ariaLabel?: string;\n /** Sets the maximum number of characters (as UTF-16 code units) the user can enter into the input. */\n @Input({ transform: numberAttribute }) maxLength?: number;\n /** A string value that supports any number, or an ISO 8601 format if using the date or datetime type. */\n @Input() min?: string | number;\n /** A string value that supports any number, or an ISO 8601 format if using the date or datetime type. */\n @Input() max?: string | number;\n /** How much a number or date should change by. */\n @Input({ transform: numberAttribute }) step?: number;\n /** The aria-labelledby attribute identifies the element (or elements) that labels the input. */\n @Input() ariaLabelledBy?: string;\n /** Top margin. */\n @Input() mt?: Spacing;\n /** Right margin. */\n @Input() mr?: Spacing;\n /** Bottom margin. */\n @Input() mb?: Spacing;\n /** Left margin. */\n @Input() ml?: Spacing;\n /** Aria label for the trailing icon. Use only when the trailing icon is interactive. */\n @Input() trailingIconAriaLabel?: string;\n /** Sets the text alignment within the input field. @default \"right\" */\n @Input() textAlign?: \"left\" | \"right\" = \"right\"; // Default to right for numbers\n\n /** Bound to value. */\n @Input() value: number | null = null;\n /** Sets the leading content slot, accepting a string or template reference. */\n @Input() leadingContent!: string | TemplateRef<any>;\n /** Sets the trailing content slot, accepting a string or template reference. */\n @Input() trailingContent!: string | TemplateRef<any>;\n\n /** Emits when the trailing icon is clicked. */\n @Output() onTrailingIconClick = new EventEmitter<void>(); // Keep void type\n /** Emits when the input receives focus. Emits focus detail including the current value. */\n @Output() onFocus = new EventEmitter<GoabInputOnFocusDetail>();\n /** Emits when the input loses focus. Emits blur detail including the current value. */\n @Output() onBlur = new EventEmitter<GoabInputOnBlurDetail>();\n /** Emits when a key is pressed in the input. Emits key press detail including the value and key pressed. */\n @Output() onKeyPress = new EventEmitter<GoabInputOnKeyPressDetail>();\n /** Emits when the input value changes. Emits change detail including the new value. */\n @Output() onChange = new EventEmitter<GoabInputOnChangeDetail>();\n\n handleTrailingIconClick = false;\n\n ngOnInit() {\n this.handleTrailingIconClick = this.onTrailingIconClick.observed;\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n _onTrailingIconClick(_: Event) {\n if (this.handleTrailingIconClick) {\n this.onTrailingIconClick.emit();\n }\n }\n\n _onChange(e: Event) {\n this.markAsTouched();\n const detail = (e as CustomEvent<GoabInputOnChangeDetail>).detail;\n\n const stringValue = detail.value;\n let numericValue: number | null = null;\n\n if (stringValue !== null && stringValue.trim() !== \"\") {\n const parsed = parseFloat(stringValue);\n if (!isNaN(parsed)) {\n numericValue = parsed;\n }\n }\n\n this.value = numericValue;\n\n this.fcChange?.(numericValue);\n\n this.onChange.emit(detail);\n }\n\n _onKeyPress(e: Event) {\n this.markAsTouched();\n const detail = (e as CustomEvent<GoabInputOnKeyPressDetail>).detail;\n this.onKeyPress.emit(detail);\n }\n\n _onFocus(e: Event) {\n this.markAsTouched();\n const detail = (e as CustomEvent<GoabInputOnFocusDetail>).detail;\n this.onFocus.emit(detail);\n }\n\n _onBlur(e: Event) {\n this.markAsTouched();\n const detail = (e as CustomEvent<GoabInputOnBlurDetail>).detail;\n this.onBlur.emit(detail);\n }\n\n private fcChange?: (value: number | null) => void;\n private fcTouched?: () => void; // Changed type to void for consistency\n touched = false;\n\n markAsTouched() {\n if (!this.touched) {\n this.fcTouched?.();\n this.touched = true;\n }\n }\n\n writeValue(value: number | null): void {\n this.value = value === undefined ? null : value;\n }\n\n registerOnChange(fn: (value: number | null) => void): void {\n this.fcChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.fcTouched = fn;\n }\n\n setDisabledState?(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n getLeadingContentAsString(): string {\n return this.leadingContent instanceof TemplateRef ? \"\" : this.leadingContent;\n }\n\n getLeadingContentAsTemplate(): TemplateRef<any> | null {\n if (!this.leadingContent) return null;\n return this.leadingContent instanceof TemplateRef ? this.leadingContent : null;\n }\n\n getTrailingContentAsString(): string {\n return this.trailingContent instanceof TemplateRef ? \"\" : this.trailingContent;\n }\n\n getTrailingContentAsTemplate(): TemplateRef<any> | null {\n if (!this.trailingContent) return null;\n return this.trailingContent instanceof TemplateRef ? this.trailingContent : null;\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n@Component({\n standalone: true,\n selector: \"goab-linear-progress\",\n template: `\n @if (isReady) {\n <goa-linear-progress\n [attr.progress]=\"progress\"\n [attr.percent-visibility]=\"percentVisibility\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.testid]=\"testid\"\n >\n </goa-linear-progress>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Provide visual feedback to users while loading. */\nexport class GoabLinearProgress implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Progress value (0-100). When undefined, shows an indeterminate loading animation. */\n @Input() progress?: number | null | undefined;\n /** Controls visibility of the percentage text. */\n @Input() percentVisibility?: \"visible\" | \"hidden\" | undefined;\n /** Accessible label for the progress bar. */\n @Input() ariaLabel?: string;\n /** ID of the element that labels this progress bar. */\n @Input() ariaLabelledBy?: string;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testid?: string;\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabIconType,\n GoabLinkColor,\n GoabLinkSize,\n Spacing,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-link\",\n template: `\n @if (isReady) {\n <goa-link\n [attr.leadingicon]=\"leadingIcon\"\n [attr.trailingicon]=\"trailingIcon\"\n [attr.testid]=\"testId\"\n [attr.action]=\"action\"\n [attr.color]=\"color\"\n [attr.size]=\"size\"\n [attr.action-arg]=\"actionArg\"\n [attr.action-args]=\"JSON.stringify(actionArgs)\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-link>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Wraps an anchor element to add icons or margins. */\nexport class GoabLink implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** Icon displayed before the link text. */\n @Input() leadingIcon?: GoabIconType;\n /** Icon displayed after the link text. */\n @Input() trailingIcon?: GoabIconType;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** Custom action event name to dispatch when the link is clicked. */\n @Input() action?: string;\n /** Sets the color theme. 'interactive' for blue, 'dark' for black, 'light' for white text. @default \"interactive\" */\n @Input() color?: GoabLinkColor = \"interactive\";\n /** Sets the text size and corresponding icon size. @default \"medium\" */\n @Input() size?: GoabLinkSize = \"medium\";\n /** Single argument to pass with the action event (deprecated, use actionArgs). */\n @Input() actionArg?: string;\n /** Object of arguments to pass with the action event. */\n @Input() actionArgs?: Record<string, unknown>;\n /** Top margin. */\n @Input() mt?: Spacing;\n /** Bottom margin. */\n @Input() mb?: Spacing;\n /** Left margin. */\n @Input() ml?: Spacing;\n /** Right margin. */\n @Input() mr?: Spacing;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n protected readonly JSON = JSON;\n}\n","import { GoabLinkTarget, GoabServiceLevel } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n EventEmitter,\n Output,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-microsite-header\",\n template: `\n @if (isReady) {\n <goa-microsite-header\n [attr.type]=\"type\"\n [attr.version]=\"getVersionAsString()\"\n [attr.feedbackurl]=\"feedbackUrl\"\n [attr.maxcontentwidth]=\"maxContentWidth\"\n [attr.feedbackurltarget]=\"feedbackUrlTarget\"\n [attr.headerurltarget]=\"headerUrlTarget\"\n [attr.testid]=\"testId\"\n [attr.hasfeedbackhandler]=\"onFeedbackClick.observed\"\n (_feedbackClick)=\"_onFeedbackClick()\"\n >\n <div slot=\"version\">\n <ng-container [ngTemplateOutlet]=\"getVersionAsTemplate()\"></ng-container>\n </div>\n </goa-microsite-header>\n }\n `,\n imports: [NgTemplateOutlet],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Communicate what stage the service is at, connect to Alberta.ca, and gather feedback on your service. */\nexport class GoabMicrositeHeader implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** @required The service type which determines the badge style. \"live\" shows official government site text, \"alpha\" and \"beta\" show development stage badges. */\n @Input({ required: true }) type!: GoabServiceLevel;\n /** @required App or service version displayed on the right side of the header. */\n @Input() version!: string | TemplateRef<any>;\n /** Url to feedback page that will be displayed when provided. */\n @Input() feedbackUrl?: string;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** Maximum width of the content area. */\n @Input() maxContentWidth?: string;\n /** For internal feedback urls sets target. */\n @Input() feedbackUrlTarget?: GoabLinkTarget;\n /** Sets the target attribute for the header link. */\n @Input() headerUrlTarget?: GoabLinkTarget;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n /** Emits when the feedback link is clicked. */\n @Output() onFeedbackClick = new EventEmitter();\n\n getVersionAsString(): string {\n return typeof this.version === \"string\" ? this.version : \"\";\n }\n\n getVersionAsTemplate(): TemplateRef<any> | null {\n if (!this.version) return null;\n return this.version instanceof TemplateRef ? this.version : null;\n }\n\n _onFeedbackClick() {\n this.onFeedbackClick.emit();\n }\n}\n","import {\n GoabModalCalloutVariant,\n GoabModalTransition,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n TemplateRef,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-modal\",\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-modal\n [attr.version]=\"version\"\n [attr.calloutvariant]=\"calloutVariant\"\n [attr.open]=\"open\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.testid]=\"testId\"\n [attr.role]=\"role\"\n [attr.closable]=\"closable\"\n [attr.transition]=\"transition\"\n [attr.heading]=\"getHeadingAsString()\"\n (_close)=\"_onClose()\"\n >\n <div slot=\"heading\">\n @if (this.heading !== \"\" && getHeadingAsTemplate() !== null) {\n <ng-container [ngTemplateOutlet]=\"getHeadingAsTemplate()\"></ng-container>\n }\n </div>\n\n <ng-content></ng-content>\n\n <div slot=\"actions\">\n @if (this.actions) {\n <ng-container [ngTemplateOutlet]=\"actions\"></ng-container>\n }\n </div>\n </goa-modal>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** An overlay that appears in front of all other content, and requires a user to take an action before continuing. */\nexport class GoabModal implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n /** Define the context and colour of the callout modal. It is required when type is set to callout. */\n @Input() calloutVariant?: GoabModalCalloutVariant;\n /** Controls if modal is visible or not. */\n @Input({ transform: booleanAttribute }) open?: boolean;\n /** Set the max allowed width of the modal. */\n @Input() maxWidth?: string;\n /** Show close icon and allow clicking the background to close the modal. */\n @Input() closable = false;\n /** Sets the animation transition when opening/closing. 'fast' or 'slow' for animated, 'none' for instant. */\n @Input() transition?: GoabModalTransition;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /**\n * @deprecated The role property is deprecated and will be removed in a future version.\n * The modal will always use role=\"dialog\".\n */\n @Input() role?: string;\n /** The heading text displayed at the top of the modal. */\n @Input() heading!: string | TemplateRef<any>;\n /** Sets the template reference for the modal action buttons. */\n @Input() actions!: TemplateRef<any>;\n\n /** Emits when the modal is closed. */\n @Output() onClose = new EventEmitter();\n\n getHeadingAsString(): string {\n return this.heading instanceof TemplateRef ? \"\" : this.heading;\n }\n\n getHeadingAsTemplate(): TemplateRef<any> | null {\n if (!this.heading) return null;\n return this.heading instanceof TemplateRef ? this.heading : null;\n }\n\n _onClose() {\n this.onClose.emit();\n }\n}\n","import {\n GoabButtonSize,\n GoabButtonType,\n GoabButtonVariant,\n GoabIconType,\n GoabMenuButtonOnActionDetail,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-menu-button\",\n template: `\n <goa-menu-button\n [attr.text]=\"text\"\n [attr.type]=\"type\"\n [attr.size]=\"size\"\n [attr.variant]=\"variant\"\n version=\"2\"\n [attr.max-width]=\"maxWidth\"\n [attr.leading-icon]=\"leadingIcon\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.testid]=\"testId\"\n (_action)=\"_onAction($event)\"\n >\n <ng-content></ng-content>\n </goa-menu-button>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A button with more than one action. */\nexport class GoabMenuButton {\n /** The button label text. When provided, displays as a text button with a dropdown icon. */\n @Input() text?: string;\n /** The button style variant. */\n @Input() type?: GoabButtonType;\n /** Sets the size of the button. */\n @Input() size?: GoabButtonSize;\n /** Sets the color variant for semantic meaning. */\n @Input() variant?: GoabButtonVariant;\n /** Maximum width of the dropdown menu. */\n @Input() maxWidth?: string;\n /** Icon displayed before the button text. When no text is provided, displays as an icon button. */\n @Input() leadingIcon?: GoabIconType;\n /** Sets the aria-label for the icon button in icon-only mode. */\n @Input() ariaLabel?: string;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** Emits when a menu action is clicked. Emits the action detail. */\n @Output() onAction = new EventEmitter<GoabMenuButtonOnActionDetail>();\n\n _onAction(e: Event) {\n const detail = (e as CustomEvent<GoabMenuButtonOnActionDetail>).detail;\n this.onAction.emit(detail);\n }\n}\n","import { GoabIconType } from \"@abgov/ui-components-common\";\n\nimport { CUSTOM_ELEMENTS_SCHEMA, Component, Input } from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-menu-action\",\n template: `\n <goa-menu-action\n [attr.text]=\"text\"\n [attr.action]=\"action\"\n [attr.icon]=\"icon\"\n [attr.testid]=\"testId\"\n >\n </goa-menu-action>\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Individual action item within a menu button. */\nexport class GoabMenuAction {\n /** @required Display text for the menu action. */\n @Input({ required: true }) text!: string;\n /** @required Action identifier included in the click event. */\n @Input({ required: true }) action!: string;\n /** Icon displayed before the text. */\n @Input() icon?: GoabIconType;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n}\n","import {\n GoabAriaLiveType,\n GoabNotificationEmphasis,\n GoabNotificationType,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n OnInit,\n ChangeDetectorRef,\n booleanAttribute,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-notification\",\n template: `\n @if (isReady) {\n <goa-notification\n [attr.version]=\"version\"\n [attr.type]=\"type\"\n [attr.arialive]=\"ariaLive\"\n [attr.maxcontentwidth]=\"maxContentWidth\"\n [attr.emphasis]=\"emphasis\"\n [attr.compact]=\"compact\"\n [attr.testid]=\"testId\"\n (_dismiss)=\"_onDismiss()\"\n >\n <ng-content />\n </goa-notification>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Display important page level information or notifications. */\nexport class GoabNotification implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n /** Define the context and colour of the notification. @default \"information\" */\n @Input() type?: GoabNotificationType = \"information\";\n /** Indicates how assistive technology should handle updates to the live region. */\n @Input() ariaLive?: GoabAriaLiveType;\n /** Maximum width of the content area. */\n @Input() maxContentWidth?: string;\n /** Sets the visual prominence. 'high' for full background, 'low' for medium. @default \"high\" */\n @Input() emphasis?: GoabNotificationEmphasis = \"high\";\n /** When true, reduces padding for a more compact notification. */\n @Input({ transform: booleanAttribute }) compact?: boolean;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n /** Emits when the notification is dismissed. */\n @Output() onDismiss = new EventEmitter();\n\n _onDismiss() {\n this.onDismiss.emit();\n }\n}\n","import { GoabPageBlockSize } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-page-block\",\n template: `\n @if (isReady) {\n <goa-page-block [attr.width]=\"width\" [attr.testid]=\"testId\">\n <ng-content></ng-content>\n </goa-page-block>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Full-width section with optional background. */\nexport class GoabPageBlock implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** Maximum width of the content area. Use \"full\" for 100% width or a CSS dimension like \"1200px\". */\n @Input() width?: GoabPageBlockSize;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import { Spacing } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-pages\",\n template: `\n @if (isReady) {\n <goa-pages\n [attr.current]=\"current\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-pages>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Container for paginated content views. */\nexport class GoabPages extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** The currently visible page (1-based index). */\n @Input({ transform: numberAttribute }) current?: number;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n GoabPaginationOnChangeDetail,\n GoabPaginationVariant,\n Spacing,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-pagination\",\n template: `\n @if (isReady) {\n <goa-pagination\n [attr.version]=\"version\"\n [attr.itemcount]=\"itemCount\"\n [attr.perpagecount]=\"perPageCount\"\n [attr.pagenumber]=\"pageNumber\"\n [attr.variant]=\"variant\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n >\n </goa-pagination>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Help users navigation between multiple pages or screens as part of a set. */\nexport class GoabPagination extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n /** @required Total number of data items within all pages. */\n @Input({ required: true }) itemCount!: number;\n /** @required The current page being viewed (non-zero based). */\n @Input({ required: true }) pageNumber!: number;\n /** Number of data items shown per page. @default 10 */\n @Input() perPageCount?: number = 10;\n /** Controls which nav controls are visible. @default \"all\" */\n @Input() variant?: GoabPaginationVariant = \"all\";\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n /** Emits when the page changes. Emits the new page number as part of the change detail. */\n @Output() onChange = new EventEmitter<GoabPaginationOnChangeDetail>();\n\n _onChange(e: Event) {\n const detail = (e as CustomEvent<GoabPaginationOnChangeDetail>).detail;\n this.onChange.emit(detail);\n }\n}\n","import { GoabPopoverPosition } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-popover\",\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-popover\n [attr.maxwidth]=\"maxWidth\"\n [attr.minwidth]=\"minWidth\"\n [attr.padded]=\"padded\"\n [attr.position]=\"position\"\n [attr.relative]=\"relative\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content></ng-content>\n <div slot=\"target\">\n <ng-container [ngTemplateOutlet]=\"target\"></ng-container>\n </div>\n </goa-popover>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A small overlay that opens on demand, used in other components. */\nexport class GoabPopover extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** Sets the maximum width of the popover container. @default \"320px\" */\n @Input() maxWidth = \"320px\";\n /** Sets the minimum width of the popover container. */\n @Input() minWidth?: string;\n /** Sets if the popover has padding. Use false when content needs to be flush with boundaries. @default true */\n @Input() padded = true;\n /** Provides control to where the popover content is positioned. */\n @Input() position?: GoabPopoverPosition;\n /** @deprecated This property has no effect and will be removed in a future version. */\n @Input() relative?: boolean;\n /** @required Sets the target template reference for the popover trigger. */\n @Input({ required: true }) target!: TemplateRef<any>;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import { NgTemplateOutlet } from \"@angular/common\";\nimport {\n booleanAttribute,\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n EventEmitter,\n Input,\n Output,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-push-drawer\",\n imports: [NgTemplateOutlet],\n template: `@if (isReady) {\n <goa-push-drawer\n [open]=\"open\"\n [attr.heading]=\"getHeadingAsString()\"\n [attr.testid]=\"testId\"\n [attr.width]=\"width\"\n [attr.version]=\"version\"\n (_close)=\"_onClose()\"\n >\n <ng-content></ng-content>\n <div slot=\"heading\">\n <ng-container [ngTemplateOutlet]=\"getHeadingAsTemplate()\"></ng-container>\n </div>\n @if (actions) {\n <div slot=\"actions\">\n <ng-container [ngTemplateOutlet]=\"actions\"></ng-container>\n </div>\n }\n </goa-push-drawer>\n } `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A panel that pushes the main page content aside on desktop, falling back to an overlay drawer on smaller screens. */\nexport class GoabPushDrawer implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n version = \"2\";\n\n /** Sets the open state of the push drawer. */\n @Input({ transform: booleanAttribute }) open?: boolean;\n /** Sets the heading text or template for the push drawer. */\n @Input() heading!: string | TemplateRef<any>;\n /** Sets the width of the push drawer panel. */\n @Input() width?: string;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** Sets the template reference for the actions slot content. */\n @Input() actions!: TemplateRef<any>;\n /** Emits when the push drawer closes. */\n @Output() onClose = new EventEmitter();\n\n isReady = false;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onClose() {\n this.onClose.emit();\n }\n\n getHeadingAsString(): string {\n return this.heading instanceof TemplateRef ? \"\" : this.heading;\n }\n\n getHeadingAsTemplate(): TemplateRef<any> | null {\n if (!this.heading) return null;\n return this.heading instanceof TemplateRef ? this.heading : null;\n }\n}\n","import {\n GoabRadioGroupOnChangeDetail,\n GoabRadioGroupOrientation,\n GoabRadioGroupSize,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n forwardRef,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\nimport { GoabControlValueAccessor } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-radio-group\",\n template: `\n @if (isReady) {\n <goa-radio-group\n #goaComponentRef\n [attr.version]=\"version\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [disabled]=\"disabled\"\n [attr.orientation]=\"orientation\"\n [attr.error]=\"error\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.size]=\"size\"\n [id]=\"id\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n </goa-radio-group>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabRadioGroup),\n },\n ],\n})\n/** Allow users to select one option from a set. */\nexport class GoabRadioGroup extends GoabControlValueAccessor implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n /** The name for the radio group. Used for accessibility and change events. */\n @Input() name?: string;\n /** Sets the layout direction. 'vertical' stacks items, 'horizontal' places them in a row. */\n @Input() orientation?: GoabRadioGroupOrientation;\n /** Defines how the radio group will be announced by screen readers. */\n @Input() ariaLabel?: string;\n /** Sets the size of all radio items. 'compact' reduces spacing for dense layouts (V2 only). @default \"default\" */\n @Input() size?: GoabRadioGroupSize = \"default\";\n\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n /** Emits when the selected radio item changes. Emits the name, value, and event of the selected item. */\n @Output() onChange = new EventEmitter<GoabRadioGroupOnChangeDetail>();\n\n _onChange(e: Event) {\n const detail = {\n ...(e as CustomEvent<GoabRadioGroupOnChangeDetail>).detail,\n event: e,\n };\n this.markAsTouched();\n this.onChange.emit(detail);\n\n this.fcChange?.(detail.value);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n booleanAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-radio-item\",\n template: `\n @if (isReady) {\n <goa-radio-item\n [attr.version]=\"version\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [attr.label]=\"label\"\n [attr.description]=\"getDescriptionAsString()\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.revealarialabel]=\"revealAriaLabel\"\n [disabled]=\"disabled\"\n [attr.compact]=\"compact\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.checked]=\"checked\"\n [attr.error]=\"error\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n <div slot=\"description\">\n <ng-container [ngTemplateOutlet]=\"getDescriptionAsTemplate()\"></ng-container>\n </div>\n <div slot=\"reveal\">\n @if (this.reveal) {\n <ng-container [ngTemplateOutlet]=\"reveal\"></ng-container>\n }\n </div>\n </goa-radio-item>\n }\n `,\n imports: [NgTemplateOutlet],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Individual radio option within a group. */\nexport class GoabRadioItem extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** The value of this radio option. Will be emitted when selected. */\n @Input() value?: string;\n /** The display label for this radio option. Falls back to value if not provided. */\n @Input() label?: string;\n /** The name of the radio group. Inherited from the parent RadioGroup if not set. */\n @Input() name?: string;\n /** Additional description text displayed below the label. */\n @Input() description!: string | TemplateRef<any>;\n /** Sets the template reference for the reveal slot content. */\n @Input() reveal?: TemplateRef<any>;\n /** Defines how this option will be announced by screen readers. */\n @Input() ariaLabel?: string;\n /** Text announced by screen readers when the reveal slot content is displayed. */\n @Input() revealAriaLabel?: string;\n /** Disables this radio option. Also disabled if the parent RadioGroup is disabled. */\n @Input({ transform: booleanAttribute }) disabled?: boolean;\n /** Sets this radio option as checked/selected. */\n @Input({ transform: booleanAttribute }) checked?: boolean;\n /** Shows an error state on this radio option. */\n @Input({ transform: booleanAttribute }) error?: boolean;\n /** Sets the maximum width of this radio item. */\n @Input() maxWidth?: string;\n /** Enables compact layout for the radio item, reducing spacing for dense layouts. */\n @Input({ transform: booleanAttribute }) compact?: boolean;\n\n isReady = false;\n version = \"2\";\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n getDescriptionAsString(): string {\n return !this.description || this.description instanceof TemplateRef\n ? \"\"\n : this.description;\n }\n\n getDescriptionAsTemplate(): TemplateRef<any> | null {\n if (!this.description) return null;\n return this.description instanceof TemplateRef ? this.description : null;\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-side-menu\",\n template: `\n @if (isReady) {\n <goa-side-menu [attr.version]=\"version\" [attr.testid]=\"testId\">\n <ng-content />\n </goa-side-menu>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A side navigation that helps the user navigate between pages. */\nexport class GoabSideMenu implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabIconType } from \"@abgov/ui-components-common\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-side-menu-group\",\n template: `\n @if (isReady) {\n <goa-side-menu-group\n [attr.version]=\"version\"\n [attr.heading]=\"heading\"\n [attr.testid]=\"testId\"\n [attr.icon]=\"icon\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-side-menu-group>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Group of related side menu items. */\nexport class GoabSideMenuGroup extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n /** @required The heading text for the menu group. */\n @Input({ required: true }) heading!: string;\n /** Icon displayed alongside the heading. */\n @Input() icon?: GoabIconType;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import { GoabIconType } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-side-menu-heading\",\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-side-menu-heading\n [attr.version]=\"version\"\n [attr.testid]=\"testId\"\n [attr.icon]=\"icon\"\n >\n <ng-content />\n <span slot=\"meta\">\n <ng-container [ngTemplateOutlet]=\"meta\"></ng-container>\n </span>\n </goa-side-menu-heading>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Section heading in side menu. */\nexport class GoabSideMenuHeading implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n /** @required Icon displayed before the heading text. */\n @Input() icon!: GoabIconType;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** Sets the template for the meta slot content. */\n @Input() meta!: TemplateRef<any>;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import { GoabSkeletonSize, GoabSkeletonType, Spacing } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-skeleton\",\n template: `\n @if (isReady) {\n <goa-skeleton\n [attr.maxwidth]=\"maxWidth\"\n [attr.size]=\"size\"\n [attr.linecount]=\"lineCount\"\n [attr.type]=\"type\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n </goa-skeleton>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Provide visual feedback to users while loading a content heavy page or page element. */\nexport class GoabSkeleton extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** @required Sets the skeleton shape to represent your content. */\n @Input({ required: true }) type!: GoabSkeletonType;\n /** Sets the maximum width. Currently only used in card skeleton type. @default \"300px\" */\n @Input() maxWidth = \"300px\";\n /** Size can affect either the height, width or both for different skeleton types. */\n @Input() size?: GoabSkeletonSize;\n /** Used within components that contain multiple lines. Currently only used in card skeleton type. */\n @Input({ transform: numberAttribute }) lineCount?: number;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n GoabSpacerHorizontalSpacing,\n GoabSpacerVerticalSpacing,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-spacer\",\n template: `\n @if (isReady) {\n <goa-spacer\n [attr.hspacing]=\"hSpacing\"\n [attr.vspacing]=\"vSpacing\"\n [attr.testid]=\"testId\"\n >\n </goa-spacer>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Negative area between the components and the interface. */\nexport class GoabSpacer implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** Horizontal spacing. */\n @Input() hSpacing?: GoabSpacerHorizontalSpacing;\n /** Vertical spacing. */\n @Input() vSpacing?: GoabSpacerVerticalSpacing;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n booleanAttribute,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-tab\",\n template: `\n @if (isReady) {\n <goa-tab\n [attr.slug]=\"slug\"\n [attr.disabled]=\"disabled || null\"\n [attr.heading]=\"getHeadingAsString()\"\n >\n <ng-content />\n @if (typeof heading !== \"string\") {\n <div slot=\"heading\">\n <ng-container [ngTemplateOutlet]=\"getHeadingAsTemplate()\"></ng-container>\n </div>\n }\n </goa-tab>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n imports: [NgTemplateOutlet],\n})\n/** Individual tab within a tabs component. */\nexport class GoabTab implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** The text label for this tab. Can also use the heading slot for custom content. */\n @Input() heading!: string | TemplateRef<any>;\n /** When true, disables the tab. */\n @Input({ transform: booleanAttribute }) disabled?: boolean;\n /** Sets the URL slug for the tab. */\n @Input() slug?: string;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n getHeadingAsString(): string {\n return this.heading instanceof TemplateRef ? \"\" : this.heading;\n }\n\n getHeadingAsTemplate(): TemplateRef<any> | null {\n if (!this.heading) return null;\n return this.heading instanceof TemplateRef ? this.heading : null;\n }\n}\n","import {\n GoabTableOnSortDetail,\n GoabTableOnMultiSortDetail,\n GoabTableSortMode,\n GoabTableVariant,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n OnInit,\n ChangeDetectorRef,\n booleanAttribute,\n inject,\n} from \"@angular/core\";\n\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-table\",\n template: `\n @if (isReady) {\n <goa-table\n [attr.version]=\"version\"\n [attr.width]=\"width\"\n [attr.variant]=\"variant\"\n [attr.sort-mode]=\"sortMode\"\n [attr.striped]=\"striped\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_sort)=\"_onSort($event)\"\n (_multisort)=\"_onMultiSort($event)\"\n >\n <table style=\"width: 100%;\">\n <ng-content />\n </table>\n </goa-table>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A set of structured data that is easy for a user to scan, examine, and compare. */\nexport class GoabTable extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n /** Width of the table. By default it will fit the enclosed content. */\n @Input() width?: string;\n /** Sets a relaxed variant of the table with more vertical padding for the cells. */\n @Input() variant?: GoabTableVariant;\n /** Sets sort mode: \"single\" allows one column, \"multi\" allows up to 2 columns. */\n @Input() sortMode?: GoabTableSortMode;\n /** When true, alternates row background colors for improved readability. */\n @Input({ transform: booleanAttribute }) striped?: boolean;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n /** Emits when a table column is sorted. Emits the sort column and direction as GoabTableOnSortDetail. */\n @Output() onSort = new EventEmitter<GoabTableOnSortDetail>();\n /** Emits when multi-column sorting changes. Emits an array of sort entries as GoabTableOnMultiSortDetail. */\n @Output() onMultiSort = new EventEmitter<GoabTableOnMultiSortDetail>();\n\n _onSort(e: Event) {\n const detail = (e as CustomEvent<GoabTableOnSortDetail>).detail;\n this.onSort.emit(detail);\n }\n\n _onMultiSort(e: Event) {\n const detail = (e as CustomEvent<GoabTableOnMultiSortDetail>).detail;\n this.onMultiSort.emit(detail);\n }\n}\n","import { GoabTableSortDirection, GoabTableSortOrder } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-table-sort-header\",\n template: `\n @if (isReady) {\n <goa-table-sort-header\n [attr.name]=\"name\"\n [attr.direction]=\"direction\"\n [attr.sort-order]=\"sortOrder\"\n >\n <ng-content />\n </goa-table-sort-header>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A set of structured data that is easy for a user to scan, examine, and compare. */\nexport class GoabTableSortHeader implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** Column name identifier for sorting. */\n @Input() name?: string;\n /** Sets the sort direction indicator. @default \"none\" */\n @Input() direction?: GoabTableSortDirection = \"none\";\n /** Sort order number for multi-column sort display (\"1\", \"2\", etc). */\n @Input() sortOrder?: GoabTableSortOrder;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport {\n GoabTabsOnChangeDetail,\n GoabTabsOrientation,\n GoabTabsVariant,\n GoabTabsNavigation,\n} from \"@abgov/ui-components-common\";\n\n@Component({\n standalone: true,\n selector: \"goab-tabs\",\n template: `\n @if (isReady) {\n <goa-tabs\n [attr.version]=\"version\"\n [attr.initialtab]=\"initialTab\"\n [attr.testid]=\"testId\"\n [attr.variant]=\"variant\"\n [attr.orientation]=\"orientation\"\n [attr.navigation]=\"navigation\"\n (_change)=\"_onChange($event)\"\n >\n <ng-content />\n </goa-tabs>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Let users navigate between related sections of content, displaying one section at a time. */\nexport class GoabTabs implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n version = \"2\";\n /** The initially active tab (1-based index). If not set, the first tab is active. */\n @Input({ transform: numberAttribute }) initialTab?: number;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** Visual style variant. \"segmented\" shows pill-style tabs with animation. */\n @Input() variant?: GoabTabsVariant;\n /** Tab layout orientation. \"auto\" stacks vertically on mobile (default), \"horizontal\" keeps horizontal on all screen sizes. */\n @Input() orientation?: GoabTabsOrientation;\n /** Sets the navigation mode for tab switching. \"hash\" updates the URL hash when switching tabs. */\n @Input() navigation?: GoabTabsNavigation;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n /** Emits when the active tab changes. Emits the new tab index as GoabTabsOnChangeDetail. */\n @Output() onChange = new EventEmitter<GoabTabsOnChangeDetail>();\n\n _onChange(e: Event) {\n const detail = (e as CustomEvent<GoabTabsOnChangeDetail>).detail;\n this.onChange.emit(detail);\n }\n}\n","import {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\ntype SnackbarVerticalPosition = \"top\" | \"bottom\";\ntype SnackbarHorizontalPosition = \"left\" | \"center\" | \"right\";\n\n@Component({\n standalone: true,\n selector: \"goab-temporary-notification-ctrl\",\n template: `\n @if (isReady) {\n <goa-temp-notification-ctrl\n [attr.vertical-position]=\"verticalPosition\"\n [attr.horizontal-position]=\"horizontalPosition\"\n [attr.testid]=\"testId\"\n >\n </goa-temp-notification-ctrl>\n }\n `,\n\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** A notification that appears at the bottom of the screen. */\nexport class GoabTemporaryNotificationCtrl implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** Vertical position of the notification container. @default \"bottom\" */\n @Input() verticalPosition: SnackbarVerticalPosition = \"bottom\";\n /** Horizontal position of the notification container. @default \"center\" */\n @Input() horizontalPosition: SnackbarHorizontalPosition = \"center\";\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n}\n","import {\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n Input,\n OnInit,\n ChangeDetectorRef,\n HostBinding,\n inject,\n} from \"@angular/core\";\n\nimport {\n GoabTextColor,\n GoabTextHeadingElement,\n GoabTextMaxWidth,\n GoabTextSize,\n GoabTextTextElement,\n Spacing,\n} from \"@abgov/ui-components-common\";\n\n@Component({\n standalone: true,\n selector: \"goab-text\",\n\n template: `\n @if (isReady) {\n <goa-text\n [attr.as]=\"tag\"\n [attr.size]=\"size\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.color]=\"color\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <ng-content />\n </goa-text>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Provides consistent sizing, spacing, and colour to written content. */\nexport class GoabText implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** The HTML element to render. Use semantic elements like 'h1'-'h6' for headings. */\n @Input() tag?: GoabTextTextElement | GoabTextHeadingElement;\n /** Overrides the text size. */\n @Input() size?: GoabTextSize;\n /** Sets the max width. */\n @Input() maxWidth?: GoabTextMaxWidth;\n /** Sets the text colour. */\n @Input() color?: GoabTextColor;\n /** Sets the id attribute on the host element. */\n @Input() id?: string;\n /*\n This is necessary because angular outputs two elements, <goab-text> and <goa-text>\n This removes the id from <goa-text> and only outputs it to <goab-text>\n */\n @HostBinding(\"attr.id\") get hostId() {\n return this.id;\n }\n /** Top margin. */\n @Input() mt?: Spacing;\n /** Bottom margin. */\n @Input() mb?: Spacing;\n /** Left margin. */\n @Input() ml?: Spacing;\n /** Right margin. */\n @Input() mr?: Spacing;\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabTextAreaCountBy,\n GoabTextAreaOnChangeDetail,\n GoabTextAreaOnKeyPressDetail,\n GoabTextAreaOnBlurDetail,\n GoabTextAreaSize,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n EventEmitter,\n Input,\n Output,\n booleanAttribute,\n forwardRef,\n numberAttribute,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\nimport { GoabControlValueAccessor } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-textarea\",\n\n template: `\n @if (isReady) {\n <goa-textarea\n #goaComponentRef\n [attr.version]=\"version\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [attr.placeholder]=\"placeholder\"\n [attr.rows]=\"rows\"\n [attr.error]=\"error\"\n [disabled]=\"disabled\"\n [attr.readonly]=\"readOnly\"\n [attr.width]=\"width\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.arialabel]=\"ariaLabel\"\n [attr.countby]=\"countBy\"\n [attr.maxcount]=\"maxCount\"\n [attr.autocomplete]=\"autoComplete\"\n [attr.size]=\"size\"\n [attr.testid]=\"testId\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n (_change)=\"_onChange($event)\"\n (_keyPress)=\"_onKeyPress($event)\"\n (_blur)=\"_onBlur($event)\"\n >\n </goa-textarea>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => GoabTextArea),\n },\n ],\n})\n/** A multi-line field where users can input and edit text. */\nexport class GoabTextArea extends GoabControlValueAccessor implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Name of the input value that is received in the _change event. */\n @Input() name?: string;\n /** Text displayed within the input when no value is set. */\n @Input() placeholder?: string;\n /** Set the number of rows. @default 3 */\n @Input({ transform: numberAttribute }) rows?: number;\n /** Sets the input to a read only state. */\n @Input({ transform: booleanAttribute }) readOnly?: boolean;\n /** Width of the text area. */\n @Input() width?: string;\n /** Defines how the text will be translated for the screen reader. If not specified it will fall back to the name. */\n @Input() ariaLabel?: string;\n /** Counting interval for characters or words, specifying whether to count every character or word. @default \"\" */\n @Input() countBy?: GoabTextAreaCountBy = \"\";\n /** Maximum number of characters or words allowed. @default -1 */\n @Input() maxCount?: number = -1;\n /** Maximum width of the text area. */\n @Input() maxWidth?: string;\n /** Specifies the autocomplete attribute for the textarea input. @default \"on\" */\n @Input() autoComplete?: string = \"on\";\n /** Sets the size variant of the textarea. @default \"default\" */\n @Input() size?: GoabTextAreaSize = \"default\";\n\n /** Emits when the textarea value changes. Emits the name and new value. */\n @Output() onChange = new EventEmitter<GoabTextAreaOnChangeDetail>();\n /** Emits when a key is pressed in the textarea. Emits the name, value, and key. */\n @Output() onKeyPress = new EventEmitter<GoabTextAreaOnKeyPressDetail>();\n /** Emits when the textarea loses focus. Emits the name and current value. */\n @Output() onBlur = new EventEmitter<GoabTextAreaOnBlurDetail>();\n\n isReady = false;\n version = \"2\";\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onChange(e: Event) {\n const detail = { ...(e as CustomEvent<GoabTextAreaOnChangeDetail>).detail, event: e };\n this.onChange.emit(detail);\n this.markAsTouched();\n this.fcChange?.(detail.value);\n }\n\n _onKeyPress(e: Event) {\n const detail = {\n ...(e as CustomEvent<GoabTextAreaOnKeyPressDetail>).detail,\n event: e,\n };\n this.markAsTouched();\n this.onKeyPress.emit(detail);\n }\n\n _onBlur(e: Event) {\n const detail = { ...(e as CustomEvent<GoabTextAreaOnBlurDetail>).detail, event: e };\n this.markAsTouched();\n this.onBlur.emit(detail);\n }\n}\n","import {\n GoabTooltipHorizontalAlignment,\n GoabTooltipPosition,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\nimport { GoabBaseComponent } from \"../base.component\";\n\n@Component({\n standalone: true,\n selector: \"goab-tooltip\",\n template: `\n @if (isReady) {\n <goa-tooltip\n [attr.position]=\"position\"\n [attr.content]=\"getContentAsString()\"\n [attr.halign]=\"hAlign\"\n [attr.testid]=\"testId\"\n [attr.maxwidth]=\"maxWidth\"\n [attr.mt]=\"mt\"\n [attr.mb]=\"mb\"\n [attr.ml]=\"ml\"\n [attr.mr]=\"mr\"\n >\n <div slot=\"content\">\n @if (getContentAsTemplate()) {\n <ng-container [ngTemplateOutlet]=\"getContentAsTemplate()\"></ng-container>\n }\n {{ getContentAsString() }}\n </div>\n <ng-content />\n </goa-tooltip>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n imports: [NgTemplateOutlet],\n})\n/** A small popover that displays more information about an item. */\nexport class GoabTooltip extends GoabBaseComponent implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n isReady = false;\n /** Position with respect to the child element. @default \"top\" */\n @Input() position?: GoabTooltipPosition;\n /** The content of the tooltip. */\n @Input() content?: string | TemplateRef<unknown>;\n /** Horizontal alignment to the child element. @default \"center\" */\n @Input() hAlign?: GoabTooltipHorizontalAlignment;\n /** Sets the maximum width of the tooltip. Must use 'px' unit. */\n @Input() maxWidth?: string;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n });\n }\n\n getContentAsString(): string {\n return this.content instanceof TemplateRef ? \"\" : this.content || \"\";\n }\n\n getContentAsTemplate(): TemplateRef<unknown> | null {\n if (!this.content) return null;\n return this.content instanceof TemplateRef ? this.content : null;\n }\n}\n","import {\n booleanAttribute,\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n TemplateRef,\n EventEmitter,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n@Component({\n standalone: true,\n selector: \"goab-work-side-menu\", // eslint-disable-line\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-work-side-menu\n [open]=\"open ?? false\"\n [attr.heading]=\"heading\"\n [attr.url]=\"url\"\n [attr.user-name]=\"userName\"\n [attr.user-secondary-text]=\"userSecondaryText\"\n [attr.testid]=\"testId\"\n (_toggle)=\"_onToggle()\"\n (_navigate)=\"_onNavigate($event)\"\n >\n <div slot=\"primary\">\n <ng-container [ngTemplateOutlet]=\"primaryContent\"></ng-container>\n </div>\n <div slot=\"secondary\">\n <ng-container [ngTemplateOutlet]=\"secondaryContent\"></ng-container>\n </div>\n <div slot=\"account\">\n <ng-container [ngTemplateOutlet]=\"accountContent\"></ng-container>\n </div>\n </goa-work-side-menu>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Side menu variant for worker applications. */\nexport class GoabWorkSideMenu implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** @required The application name displayed in the header. */\n @Input({ required: true }) heading!: string;\n /** @required URL for the header link. Clicking the logo/heading navigates to this URL. */\n @Input({ required: true }) url!: string;\n /** User's name displayed in the profile section. */\n @Input() userName?: string;\n /** Secondary text displayed below the user's name, such as role or email. */\n @Input() userSecondaryText?: string;\n /** Controls whether the side menu is expanded or collapsed. */\n @Input({ transform: booleanAttribute }) open?: boolean;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** Template reference for the primary navigation slot content. */\n @Input() primaryContent!: TemplateRef<any>;\n /** Template reference for the secondary navigation slot content. */\n @Input() secondaryContent!: TemplateRef<any>;\n /** Template reference for the account slot content. */\n @Input() accountContent!: TemplateRef<any>;\n /** Emits when the side menu is toggled open or closed. */\n @Output() onToggle = new EventEmitter();\n /** Emits when a navigation link is clicked. Emits the URL as a string. */\n @Output() onNavigate = new EventEmitter<string>();\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onToggle() {\n this.onToggle.emit();\n }\n\n _onNavigate(e: Event) {\n this.onNavigate.emit((e as CustomEvent).detail.url);\n }\n}\n","import { GoabIconType } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n booleanAttribute,\n Component,\n Input,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-work-side-menu-group\", // eslint-disable-line\n\n template: `\n @if (isReady) {\n <goa-work-side-menu-group\n [attr.heading]=\"heading\"\n [attr.icon]=\"icon\"\n [attr.open]=\"open ? '' : null\"\n [attr.testid]=\"testId\"\n >\n <ng-content />\n </goa-work-side-menu-group>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Collapsible group of items within the work side menu. */\nexport class GoabWorkSideMenuGroup implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** @required The text displayed in the group heading. */\n @Input({ required: true }) heading!: string;\n /** Icon displayed before the group label. When omitted, no icon is rendered and no space is reserved. */\n @Input() icon?: GoabIconType;\n /** Whether the group is open. */\n @Input({ transform: booleanAttribute }) open?: boolean;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import { GoabWorkSideMenuItemType } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n TemplateRef,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\nimport { NgTemplateOutlet } from \"@angular/common\";\n\n@Component({\n standalone: true,\n selector: \"goab-work-side-menu-item\", // eslint-disable-line\n imports: [NgTemplateOutlet],\n template: `\n @if (isReady) {\n <goa-work-side-menu-item\n [attr.label]=\"label\"\n [attr.url]=\"url\"\n [attr.badge]=\"badge\"\n [attr.current]=\"current\"\n [attr.divider]=\"divider\"\n [attr.icon]=\"icon\"\n [attr.testid]=\"testId\"\n [attr.type]=\"type\"\n >\n @if (popoverContent) {\n <div slot=\"popoverContent\">\n <ng-container [ngTemplateOutlet]=\"popoverContent\"></ng-container>\n </div>\n }\n <ng-content />\n </goa-work-side-menu-item>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Individual menu item within the work side menu. */\nexport class GoabWorkSideMenuItem implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** @required The text label displayed for the menu item. */\n @Input({ required: true }) label!: string;\n /** The URL the menu item links to. Optional — when absent, renders as a button instead of a link. */\n @Input() url?: string;\n /** Badge text displayed alongside the menu item (e.g., notification count). */\n @Input() badge?: string;\n /** When true, indicates this is the currently active menu item. */\n @Input() current?: boolean;\n /** When true, displays a divider line above this menu item. */\n @Input() divider?: boolean;\n /** Icon displayed before the menu item label. */\n @Input() icon?: string;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n /** Sets the visual style of the badge. Use \"emergency\" for urgent items, \"success\" for positive status. @default \"normal\" */\n @Input() type?: GoabWorkSideMenuItemType = \"normal\";\n /** Template reference for the popover content slot. */\n @Input() popoverContent!: TemplateRef<any>;\n\n isReady = false;\n\n ngOnInit(): void {\n // For Angular 20, we need to delay rendering the web component\n // to ensure all attributes are properly bound before the component initializes\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n}\n","import {\n GoabWorkSideNotificationItemType,\n GoabWorkSideNotificationReadStatus,\n GoabWorkSideNotificationPriority,\n} from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-work-side-notification-item\", // eslint-disable-line\n template: `\n @if (isReady) {\n <goa-work-side-notification-item\n [attr.type]=\"type\"\n [attr.timestamp]=\"timestamp\"\n [attr.title]=\"title\"\n [attr.description]=\"description\"\n [attr.read-status]=\"readStatus\"\n [attr.priority]=\"priority\"\n [attr.testid]=\"testId\"\n (_click)=\"_onClick()\"\n />\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Displays an individual notification item in the work-side notification panel. */\nexport class GoabWorkSideNotificationItem implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** Sets the visual style of the notification item. */\n @Input() type?: GoabWorkSideNotificationItemType;\n /** The timestamp for when the notification was created. */\n @Input() timestamp?: string;\n /** The title text of the notification item. */\n @Input() title?: string;\n /** @required The description text of the notification item. */\n @Input({ required: true }) description!: string;\n /** Indicates whether the notification is read or unread. */\n @Input() readStatus?: GoabWorkSideNotificationReadStatus;\n /** Sets the priority level of the notification. */\n @Input() priority?: GoabWorkSideNotificationPriority;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n\n /** Emits when the notification item is clicked. */\n @Output() onClick = new EventEmitter<void>();\n\n isReady = false;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onClick() {\n this.onClick.emit();\n }\n}\n","import { GoabWorkSideNotificationActiveTabType } from \"@abgov/ui-components-common\";\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n Component,\n Input,\n Output,\n EventEmitter,\n OnInit,\n ChangeDetectorRef,\n inject,\n} from \"@angular/core\";\n\n@Component({\n standalone: true,\n selector: \"goab-work-side-notification-panel\", // eslint-disable-line\n template: `\n @if (isReady) {\n <goa-work-side-notification-panel\n [attr.heading]=\"heading\"\n [attr.active-tab]=\"activeTab\"\n [attr.testid]=\"testId\"\n (_markAllRead)=\"_onMarkAllRead()\"\n (_viewAll)=\"_onViewAll()\"\n >\n <ng-content />\n </goa-work-side-notification-panel>\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\n/** Displays a panel of work-side notifications. */\nexport class GoabWorkSideNotificationPanel implements OnInit {\n private cdr = inject(ChangeDetectorRef);\n\n /** The heading text displayed at the top of the notification panel. */\n @Input() heading?: string;\n /** Sets the initially active tab in the notification panel. */\n @Input() activeTab?: GoabWorkSideNotificationActiveTabType;\n /** Sets a data-testid attribute for automated testing. */\n @Input() testId?: string;\n\n /** Emits when the user clicks \"Mark all as read\". */\n @Output() onMarkAllRead = new EventEmitter<void>();\n /** Emits when the user clicks \"View all\". */\n @Output() onViewAll = new EventEmitter<void>();\n\n isReady = false;\n\n ngOnInit(): void {\n setTimeout(() => {\n this.isReady = true;\n this.cdr.detectChanges();\n }, 0);\n }\n\n _onMarkAllRead() {\n this.onMarkAllRead.emit();\n }\n\n _onViewAll() {\n this.onViewAll.emit();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|