@nova-design-system/nova-angular 3.29.0 → 3.31.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":"nova-components.mjs","sources":["../../../projects/nova-components/src/lib/stencil-generated/angular-component-lib/utils.ts","../../../projects/nova-components/src/lib/stencil-generated/components.ts","../../../projects/nova-components/src/lib/stencil-generated/index.ts","../../../projects/nova-components/src/lib/components/nv-datatable-cell.directive.ts","../../../projects/nova-components/src/lib/components/datatable.utils/lazy-signal-initializer.ts","../../../projects/nova-components/src/lib/components/datatable.utils/proxy.ts","../../../projects/nova-components/src/lib/components/datatable.utils/flex-render/context.ts","../../../projects/nova-components/src/lib/components/datatable.utils/flex-render/flags.ts","../../../projects/nova-components/src/lib/components/datatable.utils/flex-render/flex-render-component.ts","../../../projects/nova-components/src/lib/components/datatable.utils/flex-render/flex-render-component-ref.ts","../../../projects/nova-components/src/lib/components/datatable.utils/flex-render/view.ts","../../../projects/nova-components/src/lib/components/datatable.utils/flex-render.ts","../../../projects/nova-components/src/lib/components/datatable.utils/index.ts","../../../projects/nova-components/src/lib/components/nv-datatable.component.ts","../../../projects/nova-components/src/lib/value-accessor.ts","../../../projects/nova-components/src/lib/stencil-generated/component-value-accessors.ts","../../../projects/nova-components/src/lib/providers/notification.service.ts","../../../projects/nova-components/src/lib/providers/notification-service.component.ts","../../../projects/nova-components/src/lib/nova-components.module.ts","../../../projects/nova-components/src/public-api.ts","../../../projects/nova-components/src/nova-components.ts"],"sourcesContent":["/* eslint-disable */\n/* tslint:disable */\nimport { fromEvent } from 'rxjs';\n\nexport const proxyInputs = (Cmp: any, inputs: string[]) => {\n const Prototype = Cmp.prototype;\n inputs.forEach((item) => {\n Object.defineProperty(Prototype, item, {\n get() {\n return this.el[item];\n },\n set(val: any) {\n this.z.runOutsideAngular(() => (this.el[item] = val));\n },\n /**\n * In the event that proxyInputs is called\n * multiple times re-defining these inputs\n * will cause an error to be thrown. As a result\n * we set configurable: true to indicate these\n * properties can be changed.\n */\n configurable: true,\n });\n });\n};\n\nexport const proxyMethods = (Cmp: any, methods: string[]) => {\n const Prototype = Cmp.prototype;\n methods.forEach((methodName) => {\n Prototype[methodName] = function () {\n const args = arguments;\n return this.z.runOutsideAngular(() => this.el[methodName].apply(this.el, args));\n };\n });\n};\n\nexport const proxyOutputs = (instance: any, el: any, events: string[]) => {\n events.forEach((eventName) => (instance[eventName] = fromEvent(el, eventName)));\n};\n\nexport const defineCustomElement = (tagName: string, customElement: any) => {\n if (customElement !== undefined && typeof customElements !== 'undefined' && !customElements.get(tagName)) {\n customElements.define(tagName, customElement);\n }\n};\n\n// tslint:disable-next-line: only-arrow-functions\nexport function ProxyCmp(opts: { defineCustomElementFn?: () => void; inputs?: any; methods?: any }) {\n const decorator = function (cls: any) {\n const { defineCustomElementFn, inputs, methods } = opts;\n\n if (defineCustomElementFn !== undefined) {\n defineCustomElementFn();\n }\n\n if (inputs) {\n proxyInputs(cls, inputs);\n }\n if (methods) {\n proxyMethods(cls, methods);\n }\n return cls;\n };\n return decorator;\n}\n","/* tslint:disable */\n/* auto-generated angular directive proxies */\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, Output, NgZone } from '@angular/core';\n\nimport { ProxyCmp } from './angular-component-lib/utils';\n\nimport { Components } from '@nova-design-system/nova-webcomponents';\n\n\n@ProxyCmp({\n inputs: ['data', 'mode', 'openIndexes'],\n methods: ['open', 'close']\n})\n@Component({\n selector: 'nv-accordion',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['data', 'mode', 'openIndexes'],\n outputs: ['openIndexesChanged'],\n standalone: false\n})\nexport class NvAccordion {\n protected el: HTMLNvAccordionElement;\n @Output() openIndexesChanged = new EventEmitter<CustomEvent<number[]>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvAccordion extends Components.NvAccordion {\n /**\n * Event emitted when an item's open state changes @bind openIndexes\n */\n openIndexesChanged: EventEmitter<CustomEvent<number[]>>;\n}\n\n\n@ProxyCmp({\n inputs: ['disabled', 'itemTitle', 'maxContentHeight', 'mode', 'open', 'subtitle'],\n methods: ['toggle']\n})\n@Component({\n selector: 'nv-accordion-item',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'itemTitle', 'maxContentHeight', 'mode', 'open', 'subtitle'],\n outputs: ['itemToggle'],\n standalone: false\n})\nexport class NvAccordionItem {\n protected el: HTMLNvAccordionItemElement;\n @Output() itemToggle = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvAccordionItem extends Components.NvAccordionItem {\n /**\n * Event emitted on toggle (header click or programmatic change)\n */\n itemToggle: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['color', 'dismissible', 'feedback', 'hasNoAnimations', 'heading', 'hidden', 'icon', 'message', 'preventAutoClose']\n})\n@Component({\n selector: 'nv-alert',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'dismissible', 'feedback', 'hasNoAnimations', 'heading', 'hidden', 'icon', 'message', 'preventAutoClose'],\n outputs: ['hiddenChanged', 'hiddenChangedComplete', 'closeClicked'],\n standalone: false\n})\nexport class NvAlert {\n protected el: HTMLNvAlertElement;\n @Output() hiddenChanged = new EventEmitter<CustomEvent<boolean>>();\n @Output() hiddenChangedComplete = new EventEmitter<CustomEvent<boolean>>();\n @Output() closeClicked = new EventEmitter<CustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvAlert extends Components.NvAlert {\n /**\n * Emits when the 'hidden' prop changes, reflecting a change in visibility.\nPasses hidden value to the detail. @bind hidden\n */\n hiddenChanged: EventEmitter<CustomEvent<boolean>>;\n /**\n * Emitted when the animations complete, detail includes the hidden value.\n */\n hiddenChangedComplete: EventEmitter<CustomEvent<boolean>>;\n /**\n * Emitted when the close button is clicked.\n */\n closeClicked: EventEmitter<CustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n inputs: ['alt', 'color', 'initials', 'large', 'medium', 'size', 'small', 'src', 'text', 'url', 'xlarge', 'xsmall']\n})\n@Component({\n selector: 'nv-avatar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['alt', 'color', 'initials', 'large', 'medium', 'size', 'small', 'src', 'text', 'url', 'xlarge', 'xsmall'],\n standalone: false\n})\nexport class NvAvatar {\n protected el: HTMLNvAvatarElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvAvatar extends Components.NvAvatar {}\n\n\n@ProxyCmp({\n inputs: ['color', 'dismissal', 'dismissible', 'hidden', 'icon', 'iconLocation', 'isIconOnly', 'label', 'leadIcon', 'preventAutoClose']\n})\n@Component({\n selector: 'nv-badge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'dismissal', 'dismissible', 'hidden', 'icon', 'iconLocation', 'isIconOnly', 'label', 'leadIcon', 'preventAutoClose'],\n outputs: ['closeClicked', 'hiddenChanged', 'hiddenChangedComplete'],\n standalone: false\n})\nexport class NvBadge {\n protected el: HTMLNvBadgeElement;\n @Output() closeClicked = new EventEmitter<CustomEvent<void>>();\n @Output() hiddenChanged = new EventEmitter<CustomEvent<boolean>>();\n @Output() hiddenChangedComplete = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvBadge extends Components.NvBadge {\n /**\n * Emitted when the badge is dismissed.\n */\n closeClicked: EventEmitter<CustomEvent<void>>;\n /**\n * Emits when the 'hidden' prop changes, reflecting a change in visibility.\nPasses hidden value to the detail.\n */\n hiddenChanged: EventEmitter<CustomEvent<boolean>>;\n /**\n * Emitted when the animations complete, detail includes the hidden value.\n */\n hiddenChangedComplete: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['current', 'tooltip', 'type']\n})\n@Component({\n selector: 'nv-breadcrumb',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['current', 'tooltip', 'type'],\n standalone: false\n})\nexport class NvBreadcrumb {\n protected el: HTMLNvBreadcrumbElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvBreadcrumb extends Components.NvBreadcrumb {}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-breadcrumbs',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvBreadcrumbs {\n protected el: HTMLNvBreadcrumbsElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvBreadcrumbs extends Components.NvBreadcrumbs {}\n\n\n@ProxyCmp({\n inputs: ['active', 'danger', 'disableTabindex', 'disabled', 'emphasis', 'fluid', 'form', 'loading', 'size', 'type']\n})\n@Component({\n selector: 'nv-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'danger', 'disableTabindex', 'disabled', 'emphasis', 'fluid', 'form', 'loading', 'size', 'type'],\n standalone: false\n})\nexport class NvButton {\n protected el: HTMLNvButtonElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvButton extends Components.NvButton {}\n\n\n@ProxyCmp({\n inputs: ['emphasis', 'fluid', 'orientation', 'size']\n})\n@Component({\n selector: 'nv-buttongroup',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['emphasis', 'fluid', 'orientation', 'size'],\n standalone: false\n})\nexport class NvButtongroup {\n protected el: HTMLNvButtongroupElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvButtongroup extends Components.NvButtongroup {}\n\n\n@ProxyCmp({\n inputs: ['cancelLabel', 'dateFormat', 'disabledDates', 'firstDayOfWeek', 'locale', 'max', 'min', 'numberOfCalendars', 'primaryLabel', 'rangeValue', 'selectionType', 'shortcuts', 'shortcutsPlacement', 'showActions', 'showWeekNumbers', 'singleValue', 'value'],\n methods: ['clear']\n})\n@Component({\n selector: 'nv-calendar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['cancelLabel', 'dateFormat', 'disabledDates', 'firstDayOfWeek', 'locale', 'max', 'min', 'numberOfCalendars', 'primaryLabel', 'rangeValue', 'selectionType', 'shortcuts', 'shortcutsPlacement', 'showActions', 'showWeekNumbers', 'singleValue', 'value'],\n outputs: ['singleDateChange', 'rangeDateChange', 'valueChanged'],\n standalone: false\n})\nexport class NvCalendar {\n protected el: HTMLNvCalendarElement;\n @Output() singleDateChange = new EventEmitter<CustomEvent<string>>();\n @Output() rangeDateChange = new EventEmitter<CustomEvent<HTMLNvCalendarElement['rangeValue']>>();\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvCalendar extends Components.NvCalendar {\n /**\n * Emitted when a single date is selected\n */\n singleDateChange: EventEmitter<CustomEvent<string>>;\n /**\n * Emitted when a date range is selected\n */\n rangeDateChange: EventEmitter<CustomEvent<HTMLNvCalendarElement['rangeValue']>>;\n /**\n * Emitted when the unified value changes @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['size']\n})\n@Component({\n selector: 'nv-col',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['size'],\n standalone: false\n})\nexport class NvCol {\n protected el: HTMLNvColElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvCol extends Components.NvCol {}\n\n\n@ProxyCmp({\n inputs: ['autoGenerateColumns', 'columns', 'data', 'enableGlobalFilter', 'enablePagination', 'enableRowSelection', 'enableSorting', 'fallbackValue', 'globalFilterPosition', 'noColumnsNoDataMessage', 'noDataMessage', 'pageSize', 'pageSizes', 'state']\n})\n@Component({\n selector: 'nv-datagrid',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autoGenerateColumns', 'columns', 'data', 'enableGlobalFilter', 'enablePagination', 'enableRowSelection', 'enableSorting', 'fallbackValue', 'globalFilterPosition', 'noColumnsNoDataMessage', 'noDataMessage', 'pageSize', 'pageSizes', 'state'],\n outputs: ['action', 'selectedRows', 'stateChanged'],\n standalone: false\n})\nexport class NvDatagrid {\n protected el: HTMLNvDatagridElement;\n @Output() action = new EventEmitter<CustomEvent<{ /** * Key action to be performed */ keyAction: string; /** * Details of the action to be performed */ details: any; }>>();\n @Output() selectedRows = new EventEmitter<CustomEvent<any[]>>();\n @Output() stateChanged = new EventEmitter<CustomEvent<{ /** * Global filter search term */ globalFilterSearchTerm: string; /** * Pagination State */ paginationState: { /** * Page Index */ pageIndex: number; /** * Page Size */ pageSize: number; }; /** * Sorting the columns */ sortingState: { /** * Descending */ desc: boolean; /** * Column Id */ id: string; }[]; }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDatagrid extends Components.NvDatagrid {\n /**\n * Emitted when an action is triggered on a cell.\n */\n action: EventEmitter<CustomEvent<{ /** * Key action to be performed */ keyAction: string; /** * Details of the action to be performed */ details: any; }>>;\n /**\n * Emitted when the selection of the rows are changed.\n */\n selectedRows: EventEmitter<CustomEvent<any[]>>;\n /**\n * Emitted when the state is changed @bind state\n */\n stateChanged: EventEmitter<CustomEvent<{ /** * Global filter search term */ globalFilterSearchTerm: string; /** * Pagination State */ paginationState: { /** * Page Index */ pageIndex: number; /** * Page Size */ pageSize: number; }; /** * Sorting the columns */ sortingState: { /** * Descending */ desc: boolean; /** * Column Id */ id: string; }[]; }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['accessor', 'group', 'header', 'repeatTemplate']\n})\n@Component({\n selector: 'nv-datagridcolumn',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [{ name: 'accessor', required: true }, 'group', 'header', 'repeatTemplate'],\n standalone: false\n})\nexport class NvDatagridcolumn {\n protected el: HTMLNvDatagridcolumnElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDatagridcolumn extends Components.NvDatagridcolumn {}\n\n\n@ProxyCmp({\n inputs: ['history', 'lastChange', 'value']\n})\n@Component({\n selector: 'nv-datetest',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['history', 'lastChange', 'value'],\n outputs: ['valueChanged', 'lastChanged', 'historyChanged', 'valueDateChanged'],\n standalone: false\n})\nexport class NvDatetest {\n protected el: HTMLNvDatetestElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<{ start?: INvDatetestDateOnly; end?: INvDatetestDateOnly }>>();\n @Output() lastChanged = new EventEmitter<CustomEvent<{ date: INvDatetestDateOnly }>>();\n @Output() historyChanged = new EventEmitter<CustomEvent<{ dates: INvDatetestDateOnly[] }>>();\n @Output() valueDateChanged = new EventEmitter<CustomEvent<{ start?: Date; end?: Date }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { DateOnly as INvDatetestDateOnly } from '@nova-design-system/nova-webcomponents';\n\nexport declare interface NvDatetest extends Components.NvDatetest {\n /**\n * Emitted when the date range value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<{ start?: INvDatetestDateOnly; end?: INvDatetestDateOnly }>>;\n /**\n * Emitted when the last change date updates.\n */\n lastChanged: EventEmitter<CustomEvent<{ date: INvDatetestDateOnly }>>;\n /**\n * Emitted when the history array changes.\n */\n historyChanged: EventEmitter<CustomEvent<{ dates: INvDatetestDateOnly[] }>>;\n /**\n * Emitted when the date range value changes as Date objects (local time).\n */\n valueDateChanged: EventEmitter<CustomEvent<{ start?: Date; end?: Date }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['history', 'lastChange', 'value']\n})\n@Component({\n selector: 'nv-datetimetest',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['history', 'lastChange', 'value'],\n outputs: ['valueChanged', 'lastChanged', 'historyChanged'],\n standalone: false\n})\nexport class NvDatetimetest {\n protected el: HTMLNvDatetimetestElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<{ start?: Date; end?: Date }>>();\n @Output() lastChanged = new EventEmitter<CustomEvent<{ date: Date }>>();\n @Output() historyChanged = new EventEmitter<CustomEvent<{ dates: Date[] }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDatetimetest extends Components.NvDatetimetest {\n /**\n * Emitted when the date range value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<{ start?: Date; end?: Date }>>;\n /**\n * Emitted when the last change timestamp updates.\n */\n lastChanged: EventEmitter<CustomEvent<{ date: Date }>>;\n /**\n * Emitted when the history array changes.\n */\n historyChanged: EventEmitter<CustomEvent<{ dates: Date[] }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['autofocus', 'clickOutside', 'controlled', 'full', 'open', 'undismissable'],\n methods: ['show', 'close']\n})\n@Component({\n selector: 'nv-dialog',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autofocus', 'clickOutside', 'controlled', 'full', 'open', 'undismissable'],\n outputs: ['openChanged'],\n standalone: false\n})\nexport class NvDialog {\n protected el: HTMLNvDialogElement;\n @Output() openChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDialog extends Components.NvDialog {\n /**\n * Emitted when the dialog is closing in order to allow for cleanup, data-capture, etc. @bind open\n */\n openChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['cancelLabel', 'danger', 'disabled', 'form', 'leadingIcon', 'primaryButtonType', 'primaryLabel', 'trailingIcon', 'undismissable']\n})\n@Component({\n selector: 'nv-dialogfooter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['cancelLabel', 'danger', 'disabled', 'form', 'leadingIcon', 'primaryButtonType', 'primaryLabel', 'trailingIcon', 'undismissable'],\n outputs: ['dialogCanceled', 'dialogPrimaryClicked'],\n standalone: false\n})\nexport class NvDialogfooter {\n protected el: HTMLNvDialogfooterElement;\n @Output() dialogCanceled = new EventEmitter<CustomEvent<void>>();\n @Output() dialogPrimaryClicked = new EventEmitter<CustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDialogfooter extends Components.NvDialogfooter {\n /**\n * Emitted when the cancel button is clicked. This will close the dialog.\n */\n dialogCanceled: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the primary button is clicked. This allows to handle the\nprimary action and potential data capture before closing the dialog.\n */\n dialogPrimaryClicked: EventEmitter<CustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n inputs: ['heading', 'subheading']\n})\n@Component({\n selector: 'nv-dialogheader',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['heading', 'subheading'],\n standalone: false\n})\nexport class NvDialogheader {\n protected el: HTMLNvDialogheaderElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDialogheader extends Components.NvDialogheader {}\n\n\n@ProxyCmp({\n inputs: ['autofocus', 'clickOutside', 'controlled', 'open', 'side', 'size', 'swipeToOpen', 'undismissable', 'width'],\n methods: ['show', 'close']\n})\n@Component({\n selector: 'nv-drawer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autofocus', 'clickOutside', 'controlled', 'open', 'side', 'size', 'swipeToOpen', 'undismissable', 'width'],\n outputs: ['openChanged'],\n standalone: false\n})\nexport class NvDrawer {\n protected el: HTMLNvDrawerElement;\n @Output() openChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDrawer extends Components.NvDrawer {\n /**\n * Emitted when the drawer is closing in order to allow for cleanup, data-capture, etc. @bind open\n */\n openChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['cancelLabel', 'danger', 'disabled', 'form', 'leadingIcon', 'primaryButtonType', 'primaryLabel', 'trailingIcon', 'undismissable']\n})\n@Component({\n selector: 'nv-drawerfooter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['cancelLabel', 'danger', 'disabled', 'form', 'leadingIcon', 'primaryButtonType', 'primaryLabel', 'trailingIcon', 'undismissable'],\n outputs: ['drawerCanceled', 'drawerPrimaryClicked'],\n standalone: false\n})\nexport class NvDrawerfooter {\n protected el: HTMLNvDrawerfooterElement;\n @Output() drawerCanceled = new EventEmitter<CustomEvent<void>>();\n @Output() drawerPrimaryClicked = new EventEmitter<CustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDrawerfooter extends Components.NvDrawerfooter {\n /**\n * Emitted when the cancel button is clicked. This will close the drawer.\n */\n drawerCanceled: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the primary button is clicked. This allows to handle the\nprimary action and potential data capture before closing the drawer.\n */\n drawerPrimaryClicked: EventEmitter<CustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n inputs: ['heading', 'subheading']\n})\n@Component({\n selector: 'nv-drawerheader',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['heading', 'subheading'],\n standalone: false\n})\nexport class NvDrawerheader {\n protected el: HTMLNvDrawerheaderElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDrawerheader extends Components.NvDrawerheader {}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'checked', 'description', 'disabled', 'error', 'errorDescription', 'hideLabel', 'indeterminate', 'inputId', 'label', 'labelBefore', 'labelPlacement', 'message', 'name', 'readonly', 'required', 'validation', 'value']\n})\n@Component({\n selector: 'nv-fieldcheckbox',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'checked', 'description', 'disabled', 'error', 'errorDescription', 'hideLabel', 'indeterminate', 'inputId', 'label', 'labelBefore', 'labelPlacement', 'message', 'name', 'readonly', 'required', 'validation', 'value'],\n outputs: ['checkedChanged'],\n standalone: false\n})\nexport class NvFieldcheckbox {\n protected el: HTMLNvFieldcheckboxElement;\n @Output() checkedChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldcheckbox extends Components.NvFieldcheckbox {\n /**\n * Emits when the checked state changes. @bind checked\n */\n checkedChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'dateFormat', 'description', 'disabled', 'disabledDates', 'error', 'errorDescription', 'firstDayOfWeek', 'fluid', 'inputId', 'label', 'locale', 'max', 'min', 'name', 'numberOfCalendars', 'placeholder', 'readonly', 'required', 'shortcuts', 'shortcutsPlacement', 'showActions', 'showWeekNumbers', 'success', 'value'],\n methods: ['clear']\n})\n@Component({\n selector: 'nv-fielddate',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'dateFormat', 'description', 'disabled', 'disabledDates', 'error', 'errorDescription', 'firstDayOfWeek', 'fluid', 'inputId', 'label', 'locale', 'max', 'min', 'name', 'numberOfCalendars', 'placeholder', 'readonly', 'required', 'shortcuts', 'shortcutsPlacement', 'showActions', 'showWeekNumbers', 'success', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFielddate {\n protected el: HTMLNvFielddateElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFielddate extends Components.NvFielddate {\n /**\n * Emitted when the value changes (unified value binding). @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'dateFormat', 'description', 'disabled', 'disabledDates', 'endInputId', 'endName', 'endPlaceholder', 'error', 'errorDescription', 'firstDayOfWeek', 'fluid', 'label', 'locale', 'max', 'min', 'numberOfCalendars', 'readonly', 'required', 'shortcuts', 'shortcutsPlacement', 'showActions', 'showWeekNumbers', 'startInputId', 'startName', 'startPlaceholder', 'success', 'value'],\n methods: ['clear']\n})\n@Component({\n selector: 'nv-fielddaterange',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'dateFormat', 'description', 'disabled', 'disabledDates', 'endInputId', 'endName', 'endPlaceholder', 'error', 'errorDescription', 'firstDayOfWeek', 'fluid', 'label', 'locale', 'max', 'min', 'numberOfCalendars', 'readonly', 'required', 'shortcuts', 'shortcutsPlacement', 'showActions', 'showWeekNumbers', 'startInputId', 'startName', 'startPlaceholder', 'success', 'value'],\n outputs: ['dateRangeChange', 'valueChanged'],\n standalone: false\n})\nexport class NvFielddaterange {\n protected el: HTMLNvFielddaterangeElement;\n @Output() dateRangeChange = new EventEmitter<CustomEvent<HTMLNvCalendarElementEventMap['rangeDateChange']>>();\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFielddaterange extends Components.NvFielddaterange {\n /**\n * Emitted when the date range changes.\n */\n dateRangeChange: EventEmitter<CustomEvent<HTMLNvCalendarElementEventMap['rangeDateChange']>>;\n /**\n * Emitted when the unified value changes @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'controlledFilter', 'debounceDelay', 'description', 'disabled', 'emptyResult', 'error', 'errorDescription', 'filterMode', 'filterable', 'fluid', 'fuzzyThreshold', 'inputId', 'label', 'locale', 'maxHeight', 'maxResults', 'name', 'openOnSelect', 'options', 'placeholder', 'readonly', 'required', 'startFilterAt', 'truncatedResultsText', 'value', 'workerThreshold'],\n methods: ['clearFilter', 'toggleDropdown']\n})\n@Component({\n selector: 'nv-fielddropdown',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'controlledFilter', 'debounceDelay', 'description', 'disabled', 'emptyResult', 'error', 'errorDescription', 'filterMode', 'filterable', 'fluid', 'fuzzyThreshold', 'inputId', 'label', 'locale', 'maxHeight', 'maxResults', 'name', 'openOnSelect', 'options', 'placeholder', 'readonly', 'required', 'startFilterAt', 'truncatedResultsText', 'value', 'workerThreshold'],\n outputs: ['valueChanged', 'filterTextChanged', 'openChanged', 'dropdownItemSelected'],\n standalone: false\n})\nexport class NvFielddropdown {\n protected el: HTMLNvFielddropdownElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n @Output() filterTextChanged = new EventEmitter<CustomEvent<string>>();\n @Output() openChanged = new EventEmitter<CustomEvent<HTMLNvPopoverElementEventMap['openChanged']>>();\n @Output() dropdownItemSelected = new EventEmitter<CustomEvent<HTMLNvFielddropdownitemElementEventMap['dropdownItemSelected']>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFielddropdown extends Components.NvFielddropdown {\n /**\n * Emitted when the input value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n /**\n * Event emitted when the filter input value changes.\n */\n filterTextChanged: EventEmitter<CustomEvent<string>>;\n /**\n * Event emitted when the dropdown opened or closed.\n */\n openChanged: EventEmitter<CustomEvent<HTMLNvPopoverElementEventMap['openChanged']>>;\n /**\n * Event emitted when an item is clicked. Propagation prevented in listener.\n */\n dropdownItemSelected: EventEmitter<CustomEvent<HTMLNvFielddropdownitemElementEventMap['dropdownItemSelected']>>;\n}\n\n\n@ProxyCmp({\n inputs: ['detached', 'disabled', 'label', 'selected', 'value']\n})\n@Component({\n selector: 'nv-fielddropdownitem',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['detached', 'disabled', 'label', 'selected', 'value'],\n outputs: ['dropdownItemSelected'],\n standalone: false\n})\nexport class NvFielddropdownitem {\n protected el: HTMLNvFielddropdownitemElement;\n @Output() dropdownItemSelected = new EventEmitter<CustomEvent<{ /** The value associated with the item. */ label?: string; /** The value associated with the item. */ value: string; /** Is the item detached? */ detached?: boolean; }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFielddropdownitem extends Components.NvFielddropdownitem {\n /**\n * Event emitted when the dropdown item is selected.\n */\n dropdownItemSelected: EventEmitter<CustomEvent<{ /** The value associated with the item. */ label?: string; /** The value associated with the item. */ value: string; /** Is the item detached? */ detached?: boolean; }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['checked', 'description', 'disabled', 'group', 'label', 'value']\n})\n@Component({\n selector: 'nv-fielddropdownitemcheck',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['checked', 'description', 'disabled', 'group', 'label', 'value'],\n outputs: ['itemChecked'],\n standalone: false\n})\nexport class NvFielddropdownitemcheck {\n protected el: HTMLNvFielddropdownitemcheckElement;\n @Output() itemChecked = new EventEmitter<CustomEvent<{ /** * The value associated with this item */ value: string | undefined; /** * Whether the checkbox is currently checked */ checked: boolean; /** * The group this item belongs to, if any */ group?: string | undefined; }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFielddropdownitemcheck extends Components.NvFielddropdownitemcheck {\n /**\n * Event emitted when the checkbox is toggled.\nIt provides details about the current state of the item.\n */\n itemChecked: EventEmitter<CustomEvent<{ /** * The value associated with this item */ value: string | undefined; /** * Whether the checkbox is currently checked */ checked: boolean; /** * The group this item belongs to, if any */ group?: string | undefined; }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'badgeLabel', 'debounceDelay', 'description', 'deselectAllLabel', 'disabled', 'emptyResult', 'enableSelectAll', 'error', 'errorDescription', 'filterMode', 'filterText', 'filterable', 'fluid', 'fuzzyThreshold', 'inputId', 'label', 'locale', 'maxHeight', 'maxResults', 'name', 'open', 'options', 'placeholder', 'readonly', 'required', 'selectAllLabel', 'startFilterAt', 'truncatedResultsText', 'value', 'workerThreshold'],\n methods: ['getFilterText', 'resetFilter', 'getSelectedValues', 'selectAll', 'deselectAll', 'toggleSelectAll']\n})\n@Component({\n selector: 'nv-fieldmultiselect',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'badgeLabel', 'debounceDelay', 'description', 'deselectAllLabel', 'disabled', 'emptyResult', 'enableSelectAll', 'error', 'errorDescription', 'filterMode', 'filterText', 'filterable', 'fluid', 'fuzzyThreshold', 'inputId', 'label', 'locale', 'maxHeight', 'maxResults', 'name', 'open', 'options', 'placeholder', 'readonly', 'required', 'selectAllLabel', 'startFilterAt', 'truncatedResultsText', 'value', 'workerThreshold'],\n outputs: ['valueChanged', 'filterTextChanged'],\n standalone: false\n})\nexport class NvFieldmultiselect {\n protected el: HTMLNvFieldmultiselectElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string[]>>();\n @Output() filterTextChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldmultiselect extends Components.NvFieldmultiselect {\n /**\n * Emitted when the selected values change. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string[]>>;\n /**\n * Emitted when the filter text changes.\n */\n filterTextChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'max', 'message', 'min', 'name', 'placeholder', 'readonly', 'required', 'step', 'success', 'validation', 'value']\n})\n@Component({\n selector: 'nv-fieldnumber',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'max', 'message', 'min', 'name', 'placeholder', 'readonly', 'required', 'step', 'success', 'validation', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldnumber {\n protected el: HTMLNvFieldnumberElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<number | null>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldnumber extends Components.NvFieldnumber {\n /**\n * Emitted when the input value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<number | null>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'hidePasswordIcon', 'inputId', 'label', 'maxlength', 'minlength', 'mode', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'showPassword', 'success', 'value']\n})\n@Component({\n selector: 'nv-fieldpassword',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'hidePasswordIcon', 'inputId', 'label', 'maxlength', 'minlength', 'mode', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'showPassword', 'success', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldpassword {\n protected el: HTMLNvFieldpasswordElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldpassword extends Components.NvFieldpassword {\n /**\n * Emitted when the input value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['autofocus', 'checked', 'description', 'disabled', 'error', 'errorDescription', 'inputId', 'label', 'labelBefore', 'labelPlacement', 'message', 'name', 'value']\n})\n@Component({\n selector: 'nv-fieldradio',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autofocus', 'checked', 'description', 'disabled', 'error', 'errorDescription', 'inputId', 'label', 'labelBefore', 'labelPlacement', 'message', 'name', 'value'],\n outputs: ['checkedChanged'],\n standalone: false\n})\nexport class NvFieldradio {\n protected el: HTMLNvFieldradioElement;\n @Output() checkedChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldradio extends Components.NvFieldradio {\n /**\n * Emits when the checked state changes. @bind checked\n */\n checkedChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'description', 'disabled', 'displayValue', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'message', 'multiple', 'name', 'options', 'readonly', 'required', 'success', 'validation', 'value']\n})\n@Component({\n selector: 'nv-fieldselect',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'description', 'disabled', 'displayValue', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'message', 'multiple', 'name', 'options', 'readonly', 'required', 'success', 'validation', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldselect {\n protected el: HTMLNvFieldselectElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldselect extends Components.NvFieldselect {\n /**\n * Emitted when the selected value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['description', 'disabled', 'endInputId', 'endName', 'error', 'errorDescription', 'fluid', 'hasField', 'hideLabel', 'label', 'labelAfterValue', 'labelBeforeValue', 'max', 'min', 'name', 'range', 'readonly', 'showTicks', 'snap', 'snapTicks', 'startInputId', 'step', 'success', 'ticks', 'value']\n})\n@Component({\n selector: 'nv-fieldslider',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['description', 'disabled', 'endInputId', 'endName', 'error', 'errorDescription', 'fluid', 'hasField', 'hideLabel', 'label', 'labelAfterValue', 'labelBeforeValue', 'max', 'min', 'name', 'range', 'readonly', 'showTicks', 'snap', 'snapTicks', 'startInputId', 'step', 'success', 'ticks', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldslider {\n protected el: HTMLNvFieldsliderElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<number[]>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldslider extends Components.NvFieldslider {\n /**\n * Emitted when the slider values change. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<number[]>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'maxlength', 'message', 'minlength', 'multiple', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'success', 'textInputType', 'type', 'validation', 'value']\n})\n@Component({\n selector: 'nv-fieldtext',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'maxlength', 'message', 'minlength', 'multiple', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'success', 'textInputType', 'type', 'validation', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldtext {\n protected el: HTMLNvFieldtextElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldtext extends Components.NvFieldtext {\n /**\n * Emitted when the input value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'autosize', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'maxAutoHeight', 'maxlength', 'message', 'minlength', 'name', 'placeholder', 'readonly', 'required', 'resize', 'rows', 'success', 'validation', 'value']\n})\n@Component({\n selector: 'nv-fieldtextarea',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'autosize', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'maxAutoHeight', 'maxlength', 'message', 'minlength', 'name', 'placeholder', 'readonly', 'required', 'resize', 'rows', 'success', 'validation', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldtextarea {\n protected el: HTMLNvFieldtextareaElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldtextarea extends Components.NvFieldtextarea {\n /**\n * Emitted when the textarea value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'format', 'inputId', 'label', 'max', 'min', 'name', 'open', 'readonly', 'required', 'step', 'success', 'value']\n})\n@Component({\n selector: 'nv-fieldtime',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'format', 'inputId', 'label', 'max', 'min', 'name', 'open', 'readonly', 'required', 'step', 'success', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldtime {\n protected el: HTMLNvFieldtimeElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldtime extends Components.NvFieldtime {\n /**\n * Emit an event when the time value changes.\nThe event detail contains the new time value in the format specified by the format property. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['color', 'large', 'medium', 'name', 'size', 'small', 'xlarge', 'xsmall']\n})\n@Component({\n selector: 'nv-icon',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'large', 'medium', 'name', 'size', 'small', 'xlarge', 'xsmall'],\n standalone: false\n})\nexport class NvIcon {\n protected el: HTMLNvIconElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvIcon extends Components.NvIcon {}\n\n\n@ProxyCmp({\n inputs: ['active', 'disableTabindex', 'disabled', 'emphasis', 'loading', 'name', 'shape', 'size', 'type']\n})\n@Component({\n selector: 'nv-iconbutton',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'disableTabindex', 'disabled', 'emphasis', 'loading', 'name', 'shape', 'size', 'type'],\n standalone: false\n})\nexport class NvIconbutton {\n protected el: HTMLNvIconbuttonElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvIconbutton extends Components.NvIconbutton {}\n\n\n@ProxyCmp({\n inputs: ['color', 'size']\n})\n@Component({\n selector: 'nv-loader',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'size'],\n standalone: false\n})\nexport class NvLoader {\n protected el: HTMLNvLoaderElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvLoader extends Components.NvLoader {}\n\n\n@ProxyCmp({\n inputs: ['disableCloseOnSelect', 'items', 'nested', 'open', 'placement'],\n methods: ['show', 'close']\n})\n@Component({\n selector: 'nv-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disableCloseOnSelect', 'items', 'nested', 'open', 'placement'],\n outputs: ['menuitemSelected'],\n standalone: false\n})\nexport class NvMenu {\n protected el: HTMLNvMenuElement;\n @Output() menuitemSelected = new EventEmitter<CustomEvent<HTMLNvMenuitemElementEventMap['menuitemSelected']>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvMenu extends Components.NvMenu {\n /**\n * Emitted from nv-menuitem elements with the corresponding id and name when\nselected (via click or keyboard). This event listener can be attached to\neither the nv-menu or the nv-menuitem element.\n */\n menuitemSelected: EventEmitter<CustomEvent<HTMLNvMenuitemElementEventMap['menuitemSelected']>>;\n}\n\n\n@ProxyCmp({\n inputs: ['disabled', 'hasSubmenu', 'icon', 'label', 'name', 'shortcut']\n})\n@Component({\n selector: 'nv-menuitem',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'hasSubmenu', 'icon', 'label', 'name', 'shortcut'],\n outputs: ['menuitemSelected'],\n standalone: false\n})\nexport class NvMenuitem {\n protected el: HTMLNvMenuitemElement;\n @Output() menuitemSelected = new EventEmitter<CustomEvent<{ /** * The id of the menu item that was selected. */ id?: HTMLElement['id']; /** * The name of the menu item that was selected. */ name?: string; /** * Indicates if the menu item has a nested submenu. */ hasSubmenu?: boolean; }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvMenuitem extends Components.NvMenuitem {\n /**\n * Fires when the menu item is selected (click or keypress). Will include the\nid and name of the menu item.\n */\n menuitemSelected: EventEmitter<CustomEvent<{ /** * The id of the menu item that was selected. */ id?: HTMLElement['id']; /** * The name of the menu item that was selected. */ name?: string; /** * Indicates if the menu item has a nested submenu. */ hasSubmenu?: boolean; }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['dismissible', 'emphasis', 'feedback', 'heading', 'hidden', 'icon', 'initiallyHidden', 'message', 'uid'],\n methods: ['dismiss', 'show']\n})\n@Component({\n selector: 'nv-notification',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dismissible', 'emphasis', 'feedback', 'heading', 'hidden', 'icon', 'initiallyHidden', 'message', 'uid'],\n outputs: ['hiddenChanged'],\n standalone: false\n})\nexport class NvNotification {\n protected el: HTMLNvNotificationElement;\n @Output() hiddenChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvNotification extends Components.NvNotification {\n /**\n * Emits when the 'hidden' prop changes, reflecting a change in visibility.\nPasses hidden value to the detail. @bind hidden\n */\n hiddenChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['contrastingBorder', 'count', 'emphasis', 'intention', 'size']\n})\n@Component({\n selector: 'nv-notification-bullet',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['contrastingBorder', 'count', 'emphasis', 'intention', 'size'],\n standalone: false\n})\nexport class NvNotificationBullet {\n protected el: HTMLNvNotificationBulletElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvNotificationBullet extends Components.NvNotificationBullet {}\n\n\n@ProxyCmp({\n inputs: ['position']\n})\n@Component({\n selector: 'nv-notificationcontainer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['position'],\n standalone: false\n})\nexport class NvNotificationcontainer {\n protected el: HTMLNvNotificationcontainerElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvNotificationcontainer extends Components.NvNotificationcontainer {}\n\n\n@ProxyCmp({\n inputs: ['currentPage', 'isOnlyIcon', 'nextButtonLabel', 'numEndZoneButtons', 'numMiddleButtons', 'numStartZoneButtons', 'pageSize', 'previousButtonLabel', 'showMiddleZone', 'totalCount']\n})\n@Component({\n selector: 'nv-pagination-nav',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['currentPage', 'isOnlyIcon', 'nextButtonLabel', 'numEndZoneButtons', 'numMiddleButtons', 'numStartZoneButtons', 'pageSize', 'previousButtonLabel', 'showMiddleZone', 'totalCount'],\n outputs: ['currentPageChanged'],\n standalone: false\n})\nexport class NvPaginationNav {\n protected el: HTMLNvPaginationNavElement;\n @Output() currentPageChanged = new EventEmitter<CustomEvent<number>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvPaginationNav extends Components.NvPaginationNav {\n /**\n * Emitted when the current page changes. @bind currentPage\n */\n currentPageChanged: EventEmitter<CustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n inputs: ['hideControls', 'hideFirstLast', 'hidePrevNext', 'labelPage', 'labelPageSizeOption', 'labelTotal', 'pageCount', 'pageIndex', 'pageSize', 'rowCount'],\n methods: ['firstPage', 'previousPage', 'nextPage', 'lastPage', 'setPageIndex', 'setPageSize']\n})\n@Component({\n selector: 'nv-paginationtable',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['hideControls', 'hideFirstLast', 'hidePrevNext', 'labelPage', 'labelPageSizeOption', 'labelTotal', 'pageCount', 'pageIndex', 'pageSize', 'rowCount'],\n outputs: ['pageIndexChanged', 'pageSizeChanged'],\n standalone: false\n})\nexport class NvPaginationtable {\n protected el: HTMLNvPaginationtableElement;\n @Output() pageIndexChanged = new EventEmitter<CustomEvent<number>>();\n @Output() pageSizeChanged = new EventEmitter<CustomEvent<number>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvPaginationtable extends Components.NvPaginationtable {\n /**\n * Emitted when the page index changes. @bind pageIndex\n */\n pageIndexChanged: EventEmitter<CustomEvent<number>>;\n /**\n * Emitted when the page size changes.\n */\n pageSizeChanged: EventEmitter<CustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n inputs: ['disableFlip', 'enterDelay', 'groupName', 'hasArrow', 'nested', 'offset', 'open', 'placement', 'shiftPadding', 'strategy', 'triggerMode'],\n methods: ['show', 'hide', 'toggle']\n})\n@Component({\n selector: 'nv-popover',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disableFlip', 'enterDelay', 'groupName', 'hasArrow', 'nested', 'offset', 'open', 'placement', 'shiftPadding', 'strategy', 'triggerMode'],\n outputs: ['openChanged'],\n standalone: false\n})\nexport class NvPopover {\n protected el: HTMLNvPopoverElement;\n @Output() openChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvPopover extends Components.NvPopover {\n /**\n * Emitted when the popover is toggled. @bind open\n */\n openChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-row',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvRow {\n protected el: HTMLNvRowElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvRow extends Components.NvRow {}\n\n\n@ProxyCmp({\n inputs: ['activePath', 'notificationEmphasis', 'notificationIntention', 'open', 'type']\n})\n@Component({\n selector: 'nv-sidebar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['activePath', 'notificationEmphasis', 'notificationIntention', 'open', 'type'],\n outputs: ['openChanged'],\n standalone: false\n})\nexport class NvSidebar {\n protected el: HTMLNvSidebarElement;\n @Output() openChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebar extends Components.NvSidebar {\n /**\n * Emitted when the open state changes. @bind open\n */\n openChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-sidebarcontent',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvSidebarcontent {\n protected el: HTMLNvSidebarcontentElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebarcontent extends Components.NvSidebarcontent {}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-sidebardivider',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvSidebardivider {\n protected el: HTMLNvSidebardividerElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebardivider extends Components.NvSidebardivider {}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-sidebarfooter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvSidebarfooter {\n protected el: HTMLNvSidebarfooterElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebarfooter extends Components.NvSidebarfooter {}\n\n\n@ProxyCmp({\n inputs: ['label']\n})\n@Component({\n selector: 'nv-sidebargroup',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['label'],\n standalone: false\n})\nexport class NvSidebargroup {\n protected el: HTMLNvSidebargroupElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebargroup extends Components.NvSidebargroup {}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-sidebarheader',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvSidebarheader {\n protected el: HTMLNvSidebarheaderElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebarheader extends Components.NvSidebarheader {}\n\n\n@ProxyCmp({\n inputs: ['collapsedLogo', 'label', 'logo']\n})\n@Component({\n selector: 'nv-sidebarlogo',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['collapsedLogo', 'label', 'logo'],\n standalone: false\n})\nexport class NvSidebarlogo {\n protected el: HTMLNvSidebarlogoElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebarlogo extends Components.NvSidebarlogo {}\n\n\n@ProxyCmp({\n inputs: ['active', 'collapsible', 'icon', 'notificationCount', 'open']\n})\n@Component({\n selector: 'nv-sidebarnavitem',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'collapsible', 'icon', 'notificationCount', 'open'],\n standalone: false\n})\nexport class NvSidebarnavitem {\n protected el: HTMLNvSidebarnavitemElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebarnavitem extends Components.NvSidebarnavitem {}\n\n\n@ProxyCmp({\n inputs: ['active']\n})\n@Component({\n selector: 'nv-sidebarnavsubitem',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active'],\n standalone: false\n})\nexport class NvSidebarnavsubitem {\n protected el: HTMLNvSidebarnavsubitemElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebarnavsubitem extends Components.NvSidebarnavsubitem {}\n\n\n@ProxyCmp({\n inputs: ['direction', 'gutterSize', 'minSizes', 'sizes'],\n methods: ['setSizes', 'getSizes', 'collapse', 'destroy']\n})\n@Component({\n selector: 'nv-split',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['direction', 'gutterSize', 'minSizes', 'sizes'],\n outputs: ['sizesChanged'],\n standalone: false\n})\nexport class NvSplit {\n protected el: HTMLNvSplitElement;\n @Output() sizesChanged = new EventEmitter<CustomEvent<number[]>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSplit extends Components.NvSplit {\n /**\n * Emitted when pane sizes are updated (drag start/stop or programmatically). @bind sizes\n */\n sizesChanged: EventEmitter<CustomEvent<number[]>>;\n}\n\n\n@ProxyCmp({\n inputs: ['fill', 'flex', 'full', 'gutter', 'vertical']\n})\n@Component({\n selector: 'nv-stack',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['fill', 'flex', 'full', 'gutter', 'vertical'],\n standalone: false\n})\nexport class NvStack {\n protected el: HTMLNvStackElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvStack extends Components.NvStack {}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-table',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvTable {\n protected el: HTMLNvTableElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvTable extends Components.NvTable {}\n\n\n@ProxyCmp({\n inputs: ['sortDirection', 'sortable']\n})\n@Component({\n selector: 'nv-tableheader',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['sortDirection', 'sortable'],\n outputs: ['sortDirectionChanged'],\n standalone: false\n})\nexport class NvTableheader {\n protected el: HTMLNvTableheaderElement;\n @Output() sortDirectionChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvTableheader extends Components.NvTableheader {\n /**\n * Event emitted when the sort direction changes. Payload is the new sort\ndirection.\n */\n sortDirectionChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['history', 'lastChange', 'value']\n})\n@Component({\n selector: 'nv-timetest',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['history', 'lastChange', 'value'],\n outputs: ['valueChanged', 'lastChanged', 'historyChanged', 'valueDateChanged'],\n standalone: false\n})\nexport class NvTimetest {\n protected el: HTMLNvTimetestElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<{ start?: INvTimetestTimeOnly; end?: INvTimetestTimeOnly }>>();\n @Output() lastChanged = new EventEmitter<CustomEvent<{ time: INvTimetestTimeOnly }>>();\n @Output() historyChanged = new EventEmitter<CustomEvent<{ times: INvTimetestTimeOnly[] }>>();\n @Output() valueDateChanged = new EventEmitter<CustomEvent<{ start?: Date; end?: Date }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { TimeOnly as INvTimetestTimeOnly } from '@nova-design-system/nova-webcomponents';\n\nexport declare interface NvTimetest extends Components.NvTimetest {\n /**\n * Emitted when the time range value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<{ start?: INvTimetestTimeOnly; end?: INvTimetestTimeOnly }>>;\n /**\n * Emitted when the last change timestamp updates.\n */\n lastChanged: EventEmitter<CustomEvent<{ time: INvTimetestTimeOnly }>>;\n /**\n * Emitted when the history array changes.\n */\n historyChanged: EventEmitter<CustomEvent<{ times: INvTimetestTimeOnly[] }>>;\n /**\n * Emitted when the time range value changes as Date objects (local time).\n */\n valueDateChanged: EventEmitter<CustomEvent<{ start?: Date; end?: Date }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['checked', 'description', 'disabled', 'hideLabel', 'inputId', 'label', 'labelPlacement', 'name', 'readonly', 'value']\n})\n@Component({\n selector: 'nv-toggle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['checked', 'description', 'disabled', 'hideLabel', 'inputId', 'label', 'labelPlacement', 'name', 'readonly', 'value'],\n outputs: ['checkedChanged'],\n standalone: false\n})\nexport class NvToggle {\n protected el: HTMLNvToggleElement;\n @Output() checkedChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvToggle extends Components.NvToggle {\n /**\n * Emits when the checked state changes. @bind checked\n */\n checkedChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['active', 'disabled', 'emphasis', 'size', 'value']\n})\n@Component({\n selector: 'nv-togglebutton',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'disabled', 'emphasis', 'size', 'value'],\n outputs: ['toggled'],\n standalone: false\n})\nexport class NvTogglebutton {\n protected el: HTMLNvTogglebuttonElement;\n @Output() toggled = new EventEmitter<CustomEvent<{ /** The value associated with the button. */ value: string; /** If the button is active when clicked. */ active: boolean; }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvTogglebutton extends Components.NvTogglebutton {\n /**\n * Emitted when the button is toggled. Will bubble up so that the\nnv-togglebuttongroup can update the state.\n */\n toggled: EventEmitter<CustomEvent<{ /** The value associated with the button. */ value: string; /** If the button is active when clicked. */ active: boolean; }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['emphasis', 'enforceValue', 'exclusive', 'size', 'value']\n})\n@Component({\n selector: 'nv-togglebuttongroup',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['emphasis', 'enforceValue', 'exclusive', 'size', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvTogglebuttongroup {\n protected el: HTMLNvTogglebuttongroupElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string[]>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvTogglebuttongroup extends Components.NvTogglebuttongroup {\n /**\n * Emitted when the selected toggle buttons change. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string[]>>;\n}\n\n\n@ProxyCmp({\n inputs: ['enterDelay', 'message', 'placement', 'strategy']\n})\n@Component({\n selector: 'nv-tooltip',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['enterDelay', 'message', 'placement', 'strategy'],\n outputs: ['openChanged'],\n standalone: false\n})\nexport class NvTooltip {\n protected el: HTMLNvTooltipElement;\n @Output() openChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvTooltip extends Components.NvTooltip {\n /**\n * Emitted when the tooltip is opened or closed. Bubbles up from the popover\nelement.\n */\n openChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n","\nimport * as d from './components';\n\nexport const DIRECTIVES = [\n d.NvAccordion,\n d.NvAccordionItem,\n d.NvAlert,\n d.NvAvatar,\n d.NvBadge,\n d.NvBreadcrumb,\n d.NvBreadcrumbs,\n d.NvButton,\n d.NvButtongroup,\n d.NvCalendar,\n d.NvCol,\n d.NvDatagrid,\n d.NvDatagridcolumn,\n d.NvDatetest,\n d.NvDatetimetest,\n d.NvDialog,\n d.NvDialogfooter,\n d.NvDialogheader,\n d.NvDrawer,\n d.NvDrawerfooter,\n d.NvDrawerheader,\n d.NvFieldcheckbox,\n d.NvFielddate,\n d.NvFielddaterange,\n d.NvFielddropdown,\n d.NvFielddropdownitem,\n d.NvFielddropdownitemcheck,\n d.NvFieldmultiselect,\n d.NvFieldnumber,\n d.NvFieldpassword,\n d.NvFieldradio,\n d.NvFieldselect,\n d.NvFieldslider,\n d.NvFieldtext,\n d.NvFieldtextarea,\n d.NvFieldtime,\n d.NvIcon,\n d.NvIconbutton,\n d.NvLoader,\n d.NvMenu,\n d.NvMenuitem,\n d.NvNotification,\n d.NvNotificationBullet,\n d.NvNotificationcontainer,\n d.NvPaginationNav,\n d.NvPaginationtable,\n d.NvPopover,\n d.NvRow,\n d.NvSidebar,\n d.NvSidebarcontent,\n d.NvSidebardivider,\n d.NvSidebarfooter,\n d.NvSidebargroup,\n d.NvSidebarheader,\n d.NvSidebarlogo,\n d.NvSidebarnavitem,\n d.NvSidebarnavsubitem,\n d.NvSplit,\n d.NvStack,\n d.NvTable,\n d.NvTableheader,\n d.NvTimetest,\n d.NvToggle,\n d.NvTogglebutton,\n d.NvTogglebuttongroup,\n d.NvTooltip\n];\n","import { Directive, Input, TemplateRef } from '@angular/core';\nimport type { CellContext } from './datatable.utils';\n\n/**\n * Context type for cell templates - uses TanStack Table's CellContext directly\n */\nexport type NvDatatableCellContext<T, V> = {\n /** The cell's actual value */\n $implicit: CellContext<T, V>;\n};\n\n/**\n * Directive to mark ng-templates as cell templates for specific fields.\n *\n * @example\n * ```html\n * <nv-datatable [columns]=\"columns\" [rows]=\"data\">\n * <ng-template nvDatatableCell=\"name\" let-context>\n * <div class=\"font-semibold\">{{ context.value }}</div>\n * </ng-template>\n *\n * <ng-template nvDatatableCell=\"price\" let-context>\n * <span class=\"font-mono\">${{ context.value }}</span>\n * </ng-template>\n * </nv-datatable>\n * ```\n */\n@Directive({\n selector: 'ng-template[nvDatatableCell]',\n standalone: true,\n})\nexport class NvDatatableCellDirective<T, V> {\n /**\n * The field name this template should render.\n * Should match a field in your column definitions.\n */\n @Input({ required: true }) nvDatatableCell!: string;\n\n constructor(public template: TemplateRef<NvDatatableCellContext<T, V>>) {}\n}\n","import { untracked } from '@angular/core'\n\n/**\n * Implementation from @tanstack/angular-query\n * {@link https://github.com/TanStack/query/blob/main/packages/angular-query-experimental/src/util/lazy-init/lazy-init.ts}\n */\nexport function lazyInit<T extends object>(initializer: () => T): T {\n let object: T | null = null\n\n const initializeObject = () => {\n if (!object) {\n object = untracked(() => initializer())\n }\n }\n\n queueMicrotask(() => initializeObject())\n\n const table = () => {}\n\n return new Proxy<T>(table as T, {\n apply(target: T, thisArg: any, argArray: any[]): any {\n initializeObject()\n if (typeof object === 'function') {\n return Reflect.apply(object, thisArg, argArray)\n }\n return Reflect.apply(target as any, thisArg, argArray)\n },\n get(_, prop, receiver) {\n initializeObject()\n return Reflect.get(object as T, prop, receiver)\n },\n has(_, prop) {\n initializeObject()\n return Reflect.has(object as T, prop)\n },\n ownKeys() {\n initializeObject()\n return Reflect.ownKeys(object as T)\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n }\n },\n })\n}\n","import { computed, type Signal, untracked } from '@angular/core'\nimport { type Table } from '@tanstack/table-core'\n\ntype TableSignal<T> = Table<T> & Signal<Table<T>>\n\nexport function proxifyTable<T>(\n tableSignal: Signal<Table<T>>\n): Table<T> & Signal<Table<T>> {\n const internalState = tableSignal as TableSignal<T>\n\n return new Proxy(internalState, {\n apply() {\n return tableSignal()\n },\n get(target, property: keyof Table<T>): any {\n if (target[property]) {\n return target[property]\n }\n const table = untracked(tableSignal)\n /**\n * Attempt to convert all accessors into computed ones,\n * excluding handlers as they do not retain any reactive value\n */\n if (\n property.startsWith('get') &&\n !property.endsWith('Handler')\n // e.g. getCoreRowModel, getSelectedRowModel etc.\n // We need that after a signal change even `rowModel` may mark the view as dirty.\n // This allows to always get the latest `getContext` value while using flexRender\n // && !property.endsWith('Model')\n ) {\n const maybeFn = table[property] as Function | never\n if (typeof maybeFn === 'function') {\n Object.defineProperty(target, property, {\n value: toComputed(tableSignal, maybeFn),\n configurable: true,\n enumerable: true,\n })\n return target[property]\n }\n }\n // @ts-expect-error\n return (target[property] = table[property])\n },\n has(_, prop: keyof Table<T>) {\n return !!untracked(tableSignal)[prop]\n },\n ownKeys() {\n return Reflect.ownKeys(untracked(tableSignal))\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n }\n },\n })\n}\n\n/**\n * Here we'll handle all type of accessors:\n * - 0 argument -> e.g. table.getCanNextPage())\n * - 0~1 arguments -> e.g. table.getIsSomeRowsPinned(position?)\n * - 1 required argument -> e.g. table.getColumn(columnId)\n * - 1+ argument -> e.g. table.getRow(id, searchAll?)\n *\n * Since we are not able to detect automatically the accessors parameters,\n * we'll wrap all accessors into a cached function wrapping a computed\n * that return it's value based on the given parameters\n */\nfunction toComputed<T>(signal: Signal<Table<T>>, fn: Function) {\n const hasArgs = fn.length > 0\n if (!hasArgs) {\n return computed(() => {\n void signal()\n return fn()\n })\n }\n\n const computedCache: Record<string, Signal<unknown>> = {}\n\n return (...argsArray: any[]) => {\n const serializedArgs = serializeArgs(...argsArray)\n if (computedCache.hasOwnProperty(serializedArgs)) {\n return computedCache[serializedArgs]?.()\n }\n const computedSignal = computed(() => {\n void signal()\n return fn(...argsArray)\n })\n\n computedCache[serializedArgs] = computedSignal\n\n return computedSignal()\n }\n}\n\nfunction serializeArgs(...args: any[]) {\n return JSON.stringify(args)\n}\n","import { inject, InjectionToken } from '@angular/core'\n\nexport const FlexRenderComponentProps = new InjectionToken<\n NonNullable<unknown>\n>('[@tanstack/angular-table] Flex render component context props')\n\nexport function injectFlexRenderContext<T extends NonNullable<unknown>>(): T {\n return inject<T>(FlexRenderComponentProps)\n}\n","/**\n * Flags used to manage and optimize the rendering lifecycle of content of the cell,\n * while using FlexRenderDirective.\n */\nexport enum FlexRenderFlags {\n /**\n * Indicates that the view is being created for the first time or will be cleared during the next update phase.\n * This is the initial state and will transition after the first ngDoCheck.\n */\n ViewFirstRender = 1 << 0,\n /**\n * Represents a state where the view is not dirty, meaning no changes require rendering updates.\n */\n Pristine = 1 << 1,\n /**\n * Indicates the `content` property has been modified or the view requires a complete re-render.\n * When this flag is enabled, the view will be cleared and recreated from scratch.\n */\n ContentChanged = 1 << 2,\n /**\n * Indicates that the `props` property reference has changed.\n * When this flag is enabled, the view context is updated based on the type of the content.\n *\n * For Component view, inputs will be updated and view will be marked as dirty.\n * For TemplateRef and primitive values, view will be marked as dirty\n */\n PropsReferenceChanged = 1 << 3,\n /**\n * Indicates that the current rendered view needs to be checked for changes.\n */\n DirtyCheck = 1 << 4,\n /**\n * Indicates that a signal within the `content(props)` result has changed\n */\n DirtySignal = 1 << 5,\n /**\n * Indicates that the first render effect has been checked at least one time.\n */\n RenderEffectChecked = 1 << 6,\n}\n","import {\n ComponentMirror,\n Injector,\n InputSignal,\n OutputEmitterRef,\n reflectComponentType,\n Type,\n} from '@angular/core'\n\ntype Inputs<T> = {\n [K in keyof T as T[K] extends InputSignal<infer R>\n ? K\n : never]?: T[K] extends InputSignal<infer R> ? R : never\n}\n\ntype Outputs<T> = {\n [K in keyof T as T[K] extends OutputEmitterRef<infer R>\n ? K\n : never]?: T[K] extends OutputEmitterRef<infer R>\n ? OutputEmitterRef<R>['emit']\n : never\n}\n\ntype OptionalKeys<T, K = keyof T> = K extends keyof T\n ? T[K] extends Required<T>[K]\n ? undefined extends T[K]\n ? K\n : never\n : K\n : never\n\ninterface FlexRenderRequiredOptions<\n TInputs extends Record<string, any>,\n TOutputs extends Record<string, any>,\n> {\n /**\n * Component instance inputs. They will be set via [componentRef.setInput API](https://angular.dev/api/core/ComponentRef#setInput)\n */\n inputs: TInputs\n /**\n * Component instance outputs.\n */\n outputs?: TOutputs\n /**\n * Optional {@link Injector} that will be used when rendering the component\n */\n injector?: Injector\n}\n\ninterface FlexRenderOptions<\n TInputs extends Record<string, any>,\n TOutputs extends Record<string, any>,\n> {\n /**\n * Component instance inputs. They will be set via [componentRef.setInput API](https://angular.dev/api/core/ComponentRef#setInput)\n */\n inputs?: TInputs\n /**\n * Component instance outputs.\n */\n outputs?: TOutputs\n /**\n * Optional {@link Injector} that will be used when rendering the component\n */\n injector?: Injector\n}\n\n/**\n * Helper function to create a [@link FlexRenderComponent] instance, with better type-safety.\n *\n * - options object must be passed when the given component instance contains at least one required signal input.\n * - options/inputs is typed with the given component inputs\n * - options/outputs is typed with the given component outputs\n */\nexport function flexRenderComponent<\n TComponent = any,\n TInputs extends Inputs<TComponent> = Inputs<TComponent>,\n TOutputs extends Outputs<TComponent> = Outputs<TComponent>,\n>(\n component: Type<TComponent>,\n ...options: OptionalKeys<TInputs> extends never\n ? [FlexRenderOptions<TInputs, TOutputs>?]\n : [FlexRenderRequiredOptions<TInputs, TOutputs>]\n) {\n const { inputs, injector, outputs } = options?.[0] ?? {}\n return new FlexRenderComponent(component, inputs, injector, outputs)\n}\n\n/**\n * Wrapper class for a component that will be used as content for {@link FlexRenderDirective}\n *\n * Prefer {@link flexRenderComponent} helper for better type-safety\n */\nexport class FlexRenderComponent<TComponent = any> {\n readonly mirror: ComponentMirror<TComponent>\n readonly allowedInputNames: string[] = []\n readonly allowedOutputNames: string[] = []\n\n constructor(\n readonly component: Type<TComponent>,\n readonly inputs?: Inputs<TComponent>,\n readonly injector?: Injector,\n readonly outputs?: Outputs<TComponent>\n ) {\n const mirror = reflectComponentType(component)\n if (!mirror) {\n throw new Error(\n `[@tanstack-table/angular] The provided symbol is not a component`\n )\n }\n this.mirror = mirror\n for (const input of this.mirror.inputs) {\n this.allowedInputNames.push(input.propName)\n }\n for (const output of this.mirror.outputs) {\n this.allowedOutputNames.push(output.propName)\n }\n }\n}\n","import {\n ChangeDetectorRef,\n ComponentRef,\n inject,\n Injectable,\n Injector,\n KeyValueDiffer,\n KeyValueDiffers,\n OutputEmitterRef,\n OutputRefSubscription,\n ViewContainerRef,\n} from '@angular/core'\nimport { FlexRenderComponent } from './flex-render-component'\n\n@Injectable()\nexport class FlexRenderComponentFactory {\n #viewContainerRef = inject(ViewContainerRef)\n\n createComponent<T>(\n flexRenderComponent: FlexRenderComponent<T>,\n componentInjector: Injector\n ): FlexRenderComponentRef<T> {\n const componentRef = this.#viewContainerRef.createComponent(\n flexRenderComponent.component,\n {\n injector: componentInjector,\n }\n )\n const view = new FlexRenderComponentRef(\n componentRef,\n flexRenderComponent,\n componentInjector\n )\n\n const { inputs, outputs } = flexRenderComponent\n\n if (inputs) view.setInputs(inputs)\n if (outputs) view.setOutputs(outputs)\n\n return view\n }\n}\n\nexport class FlexRenderComponentRef<T> {\n readonly #keyValueDiffersFactory: KeyValueDiffers\n #componentData: FlexRenderComponent<T>\n #inputValueDiffer: KeyValueDiffer<string, unknown>\n\n readonly #outputRegistry: FlexRenderComponentOutputManager\n\n constructor(\n readonly componentRef: ComponentRef<T>,\n componentData: FlexRenderComponent<T>,\n readonly componentInjector: Injector\n ) {\n this.#componentData = componentData\n this.#keyValueDiffersFactory = componentInjector.get(KeyValueDiffers)\n\n this.#outputRegistry = new FlexRenderComponentOutputManager(\n this.#keyValueDiffersFactory,\n this.outputs\n )\n\n this.#inputValueDiffer = this.#keyValueDiffersFactory\n .find(this.inputs)\n .create()\n this.#inputValueDiffer.diff(this.inputs)\n\n this.componentRef.onDestroy(() => this.#outputRegistry.unsubscribeAll())\n }\n\n get component() {\n return this.#componentData.component\n }\n\n get inputs() {\n return this.#componentData.inputs ?? {}\n }\n\n get outputs() {\n return this.#componentData.outputs ?? {}\n }\n\n /**\n * Get component input and output diff by the given item\n */\n diff(item: FlexRenderComponent<T>) {\n return {\n inputDiff: this.#inputValueDiffer.diff(item.inputs ?? {}),\n outputDiff: this.#outputRegistry.diff(item.outputs ?? {}),\n }\n }\n /**\n *\n * @param compare Whether the current ref component instance is the same as the given one\n */\n eqType(compare: FlexRenderComponent<T>): boolean {\n return compare.component === this.component\n }\n\n /**\n * Tries to update current component refs input by the new given content component.\n */\n update(content: FlexRenderComponent<T>) {\n const eq = this.eqType(content)\n if (!eq) return\n const { inputDiff, outputDiff } = this.diff(content)\n if (inputDiff) {\n inputDiff.forEachAddedItem(item =>\n this.setInput(item.key, item.currentValue)\n )\n inputDiff.forEachChangedItem(item =>\n this.setInput(item.key, item.currentValue)\n )\n inputDiff.forEachRemovedItem(item => this.setInput(item.key, undefined))\n }\n if (outputDiff) {\n outputDiff.forEachAddedItem(item => {\n this.setOutput(item.key, item.currentValue)\n })\n outputDiff.forEachChangedItem(item => {\n if (item.currentValue) {\n this.#outputRegistry.setListener(item.key, item.currentValue)\n } else {\n this.#outputRegistry.unsubscribe(item.key)\n }\n })\n outputDiff.forEachRemovedItem(item => {\n this.#outputRegistry.unsubscribe(item.key)\n })\n }\n\n this.#componentData = content\n }\n\n markAsDirty(): void {\n this.componentRef.injector.get(ChangeDetectorRef).markForCheck()\n }\n\n setInputs(inputs: Record<string, unknown>) {\n for (const prop in inputs) {\n this.setInput(prop, inputs[prop])\n }\n }\n\n setInput(key: string, value: unknown) {\n if (this.#componentData.allowedInputNames.includes(key)) {\n this.componentRef.setInput(key, value)\n }\n }\n\n setOutputs(\n outputs: Record<\n string,\n OutputEmitterRef<unknown>['emit'] | null | undefined\n >\n ) {\n this.#outputRegistry.unsubscribeAll()\n for (const prop in outputs) {\n this.setOutput(prop, outputs[prop])\n }\n }\n\n setOutput(\n outputName: string,\n emit: OutputEmitterRef<unknown>['emit'] | undefined | null\n ): void {\n if (!this.#componentData.allowedOutputNames.includes(outputName)) return\n if (!emit) {\n this.#outputRegistry.unsubscribe(outputName)\n return\n }\n\n const hasListener = this.#outputRegistry.hasListener(outputName)\n this.#outputRegistry.setListener(outputName, emit)\n\n if (hasListener) {\n return\n }\n\n const instance = this.componentRef.instance\n const output = instance[outputName as keyof typeof instance]\n if (output && output instanceof OutputEmitterRef) {\n output.subscribe(value => {\n this.#outputRegistry.getListener(outputName)?.(value)\n })\n }\n }\n}\n\nclass FlexRenderComponentOutputManager {\n readonly #outputSubscribers: Record<string, OutputRefSubscription> = {}\n readonly #outputListeners: Record<string, (...args: any[]) => void> = {}\n\n readonly #valueDiffer: KeyValueDiffer<\n string,\n undefined | null | OutputEmitterRef<unknown>['emit']\n >\n\n constructor(keyValueDiffers: KeyValueDiffers, initialOutputs: any) {\n this.#valueDiffer = keyValueDiffers.find(initialOutputs).create()\n if (initialOutputs) {\n this.#valueDiffer.diff(initialOutputs)\n }\n }\n\n hasListener(outputName: string) {\n return outputName in this.#outputListeners\n }\n\n setListener(outputName: string, callback: (...args: any[]) => void) {\n this.#outputListeners[outputName] = callback\n }\n\n getListener(outputName: string) {\n return this.#outputListeners[outputName]\n }\n\n unsubscribeAll(): void {\n for (const prop in this.#outputSubscribers) {\n this.unsubscribe(prop)\n }\n }\n\n unsubscribe(outputName: string) {\n if (outputName in this.#outputSubscribers) {\n this.#outputSubscribers[outputName]?.unsubscribe()\n delete this.#outputSubscribers[outputName]\n delete this.#outputListeners[outputName]\n }\n }\n\n diff(outputs: Record<string, OutputEmitterRef<unknown>['emit'] | undefined>) {\n return this.#valueDiffer.diff(outputs ?? {})\n }\n}\n","import { FlexRenderComponentRef } from './flex-render-component-ref'\nimport { EmbeddedViewRef, TemplateRef, Type } from '@angular/core'\nimport type { FlexRenderContent } from '../flex-render'\nimport { FlexRenderComponent } from './flex-render-component'\n\nexport type FlexRenderTypedContent =\n | { kind: 'null' }\n | {\n kind: 'primitive'\n content: string | number | Record<string, any>\n }\n | { kind: 'flexRenderComponent'; content: FlexRenderComponent<unknown> }\n | { kind: 'templateRef'; content: TemplateRef<unknown> }\n | { kind: 'component'; content: Type<unknown> }\n\nexport function mapToFlexRenderTypedContent(\n content: FlexRenderContent<any>\n): FlexRenderTypedContent {\n if (content === null || content === undefined) {\n return { kind: 'null' }\n }\n if (typeof content === 'string' || typeof content === 'number') {\n return { kind: 'primitive', content }\n }\n if (content instanceof FlexRenderComponent) {\n return { kind: 'flexRenderComponent', content }\n } else if (content instanceof TemplateRef) {\n return { kind: 'templateRef', content }\n } else if (content instanceof Type) {\n return { kind: 'component', content }\n } else {\n return { kind: 'primitive', content }\n }\n}\n\nexport abstract class FlexRenderView<\n TView extends FlexRenderComponentRef<any> | EmbeddedViewRef<unknown> | null,\n> {\n readonly view: TView\n #previousContent: FlexRenderTypedContent | undefined\n #content: FlexRenderTypedContent\n\n protected constructor(\n initialContent: Exclude<FlexRenderTypedContent, { kind: 'null' }>,\n view: TView\n ) {\n this.#content = initialContent\n this.view = view\n }\n\n get previousContent(): FlexRenderTypedContent {\n return this.#previousContent ?? { kind: 'null' }\n }\n\n get content() {\n return this.#content\n }\n\n set content(content: FlexRenderTypedContent) {\n this.#previousContent = this.#content\n this.#content = content\n }\n\n abstract updateProps(props: Record<string, any>): void\n\n abstract dirtyCheck(): void\n\n abstract onDestroy(callback: Function): void\n}\n\nexport class FlexRenderTemplateView extends FlexRenderView<\n EmbeddedViewRef<unknown>\n> {\n constructor(\n initialContent: Extract<\n FlexRenderTypedContent,\n { kind: 'primitive' | 'templateRef' }\n >,\n view: EmbeddedViewRef<unknown>\n ) {\n super(initialContent, view)\n }\n\n override updateProps(props: Record<string, any>) {\n this.view.markForCheck()\n }\n\n override dirtyCheck() {\n // Basically a no-op. When the view is created via EmbeddedViewRef, we don't need to do any manual update\n // since this type of content has a proxy as a context, then every time the root component is checked for changes,\n // the property getter will be re-evaluated.\n //\n // If in a future we need to manually mark the view as dirty, just uncomment next line\n // this.view.markForCheck()\n }\n\n override onDestroy(callback: Function) {\n this.view.onDestroy(callback)\n }\n}\n\nexport class FlexRenderComponentView extends FlexRenderView<\n FlexRenderComponentRef<unknown>\n> {\n constructor(\n initialContent: Extract<\n FlexRenderTypedContent,\n { kind: 'component' | 'flexRenderComponent' }\n >,\n view: FlexRenderComponentRef<unknown>\n ) {\n super(initialContent, view)\n }\n\n override updateProps(props: Record<string, any>) {\n switch (this.content.kind) {\n case 'component': {\n this.view.setInputs(props)\n break\n }\n case 'flexRenderComponent': {\n // No-op. When FlexRenderFlags.PropsReferenceChanged is set,\n // FlexRenderComponent will be updated into `dirtyCheck`.\n break\n }\n }\n }\n\n override dirtyCheck() {\n switch (this.content.kind) {\n case 'component': {\n // Component context is currently valuated with the cell context. Since it's reference\n // shouldn't change, we force mark the component as dirty in order to re-evaluate function invocation in view.\n // NOTE: this should behave like having a component with ChangeDetectionStrategy.Default\n this.view.markAsDirty()\n break\n }\n case 'flexRenderComponent': {\n // Given context instance will always have a different reference than the previous one,\n // so instead of recreating the entire view, we will only update the current view\n if (this.view.eqType(this.content.content)) {\n this.view.update(this.content.content)\n }\n this.view.markAsDirty()\n break\n }\n }\n }\n\n override onDestroy(callback: Function) {\n this.view.componentRef.onDestroy(callback)\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n DoCheck,\n effect,\n type EffectRef,\n Inject,\n inject,\n Injector,\n Input,\n OnChanges,\n runInInjectionContext,\n SimpleChanges,\n TemplateRef,\n Type,\n ViewContainerRef,\n} from '@angular/core'\nimport { FlexRenderComponentProps } from './flex-render/context'\nimport { FlexRenderFlags } from './flex-render/flags'\nimport {\n flexRenderComponent,\n FlexRenderComponent,\n} from './flex-render/flex-render-component'\nimport { FlexRenderComponentFactory } from './flex-render/flex-render-component-ref'\nimport {\n FlexRenderComponentView,\n FlexRenderTemplateView,\n type FlexRenderTypedContent,\n FlexRenderView,\n mapToFlexRenderTypedContent,\n} from './flex-render/view'\nimport { memo } from '@tanstack/table-core'\n\nexport {\n injectFlexRenderContext,\n type FlexRenderComponentProps,\n} from './flex-render/context'\n\nexport type FlexRenderContent<TProps extends NonNullable<unknown>> =\n | string\n | number\n | Type<TProps>\n | FlexRenderComponent<TProps>\n | TemplateRef<{ $implicit: TProps }>\n | null\n | Record<any, any>\n | undefined\n\n@Directive({\n selector: '[flexRender]',\n standalone: true,\n providers: [FlexRenderComponentFactory],\n})\nexport class FlexRenderDirective<TProps extends NonNullable<unknown>>\n implements OnChanges, DoCheck\n{\n readonly #flexRenderComponentFactory = inject(FlexRenderComponentFactory)\n readonly #changeDetectorRef = inject(ChangeDetectorRef)\n\n @Input({ required: true, alias: 'flexRender' })\n content:\n | number\n | string\n | ((props: TProps) => FlexRenderContent<TProps>)\n | null\n | undefined = undefined\n\n @Input({ required: true, alias: 'flexRenderProps' })\n props: TProps = {} as TProps\n\n @Input({ required: false, alias: 'flexRenderInjector' })\n injector: Injector = inject(Injector)\n\n renderFlags = FlexRenderFlags.ViewFirstRender\n renderView: FlexRenderView<any> | null = null\n\n readonly #latestContent = () => {\n const { content, props } = this\n return typeof content !== 'function'\n ? content\n : runInInjectionContext(this.injector, () => content(props))\n }\n\n #getContentValue = memo(\n () => [this.#latestContent(), this.props, this.content],\n latestContent => {\n return mapToFlexRenderTypedContent(latestContent)\n },\n { key: 'flexRenderContentValue', debug: () => false }\n )\n\n constructor(\n @Inject(ViewContainerRef)\n private readonly viewContainerRef: ViewContainerRef,\n @Inject(TemplateRef)\n private readonly templateRef: TemplateRef<any>\n ) {}\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['props']) {\n this.renderFlags |= FlexRenderFlags.PropsReferenceChanged\n }\n if (changes['content']) {\n this.renderFlags |=\n FlexRenderFlags.ContentChanged | FlexRenderFlags.ViewFirstRender\n this.update()\n }\n }\n\n ngDoCheck(): void {\n if (this.renderFlags & FlexRenderFlags.ViewFirstRender) {\n // On the initial render, the view is created during the `ngOnChanges` hook.\n // Since `ngDoCheck` is called immediately afterward, there's no need to check for changes in this phase.\n this.renderFlags &= ~FlexRenderFlags.ViewFirstRender\n return\n }\n\n this.renderFlags |= FlexRenderFlags.DirtyCheck\n\n const latestContent = this.#getContentValue()\n if (latestContent.kind === 'null' || !this.renderView) {\n this.renderFlags |= FlexRenderFlags.ContentChanged\n } else {\n this.renderView.content = latestContent\n const { kind: previousKind } = this.renderView.previousContent\n if (latestContent.kind !== previousKind) {\n this.renderFlags |= FlexRenderFlags.ContentChanged\n }\n }\n this.update()\n }\n\n update() {\n if (\n this.renderFlags &\n (FlexRenderFlags.ContentChanged | FlexRenderFlags.ViewFirstRender)\n ) {\n this.render()\n return\n }\n if (this.renderFlags & FlexRenderFlags.PropsReferenceChanged) {\n if (this.renderView) this.renderView.updateProps(this.props)\n this.renderFlags &= ~FlexRenderFlags.PropsReferenceChanged\n }\n if (\n this.renderFlags &\n (FlexRenderFlags.DirtyCheck | FlexRenderFlags.DirtySignal)\n ) {\n if (this.renderView) this.renderView.dirtyCheck()\n this.renderFlags &= ~(\n FlexRenderFlags.DirtyCheck | FlexRenderFlags.DirtySignal\n )\n }\n }\n\n #currentEffectRef: EffectRef | null = null\n\n render() {\n if (this.#shouldRecreateEntireView() && this.#currentEffectRef) {\n this.#currentEffectRef.destroy()\n this.#currentEffectRef = null\n this.renderFlags &= ~FlexRenderFlags.RenderEffectChecked\n }\n\n this.viewContainerRef.clear()\n this.renderFlags =\n FlexRenderFlags.Pristine |\n (this.renderFlags & FlexRenderFlags.ViewFirstRender) |\n (this.renderFlags & FlexRenderFlags.RenderEffectChecked)\n\n const resolvedContent = this.#getContentValue()\n if (resolvedContent.kind === 'null') {\n this.renderView = null\n } else {\n this.renderView = this.#renderViewByContent(resolvedContent)\n }\n\n // If the content is a function `content(props)`, we initialize an effect\n // in order to react to changes if the given definition use signals.\n if (!this.#currentEffectRef && typeof this.content === 'function') {\n this.#currentEffectRef = effect(\n () => {\n this.#latestContent()\n if (!(this.renderFlags & FlexRenderFlags.RenderEffectChecked)) {\n this.renderFlags |= FlexRenderFlags.RenderEffectChecked\n return\n }\n this.renderFlags |= FlexRenderFlags.DirtySignal\n // This will mark the view as changed,\n // so we'll try to check for updates into ngDoCheck\n this.#changeDetectorRef.markForCheck()\n },\n { injector: this.viewContainerRef.injector }\n )\n }\n }\n\n #shouldRecreateEntireView() {\n return (\n this.renderFlags &\n FlexRenderFlags.ContentChanged &\n FlexRenderFlags.ViewFirstRender\n )\n }\n\n #renderViewByContent(\n content: FlexRenderTypedContent\n ): FlexRenderView<any> | null {\n if (content.kind === 'primitive') {\n return this.#renderStringContent(content)\n } else if (content.kind === 'templateRef') {\n return this.#renderTemplateRefContent(content)\n } else if (content.kind === 'flexRenderComponent') {\n return this.#renderComponent(content)\n } else if (content.kind === 'component') {\n return this.#renderCustomComponent(content)\n } else {\n return null\n }\n }\n\n #renderStringContent(\n template: Extract<FlexRenderTypedContent, { kind: 'primitive' }>\n ): FlexRenderTemplateView {\n const context = () => {\n return typeof this.content === 'string' ||\n typeof this.content === 'number'\n ? this.content\n : this.content?.(this.props)\n }\n const ref = this.viewContainerRef.createEmbeddedView(this.templateRef, {\n get $implicit() {\n return context()\n },\n })\n return new FlexRenderTemplateView(template, ref)\n }\n\n #renderTemplateRefContent(\n template: Extract<FlexRenderTypedContent, { kind: 'templateRef' }>\n ): FlexRenderTemplateView {\n const latestContext = () => this.props\n const view = this.viewContainerRef.createEmbeddedView(template.content, {\n get $implicit() {\n return latestContext()\n },\n })\n return new FlexRenderTemplateView(template, view)\n }\n\n #renderComponent(\n flexRenderComponent: Extract<\n FlexRenderTypedContent,\n { kind: 'flexRenderComponent' }\n >\n ): FlexRenderComponentView {\n const { inputs, outputs, injector } = flexRenderComponent.content\n\n const getContext = () => this.props\n const proxy = new Proxy(this.props, {\n get: (_, key) => getContext()[key as keyof typeof _],\n })\n const componentInjector = Injector.create({\n parent: injector ?? this.injector,\n providers: [{ provide: FlexRenderComponentProps, useValue: proxy }],\n })\n const view = this.#flexRenderComponentFactory.createComponent(\n flexRenderComponent.content,\n componentInjector\n )\n return new FlexRenderComponentView(flexRenderComponent, view)\n }\n\n #renderCustomComponent(\n component: Extract<FlexRenderTypedContent, { kind: 'component' }>\n ): FlexRenderComponentView {\n const view = this.#flexRenderComponentFactory.createComponent(\n flexRenderComponent(component.content, {\n inputs: this.props,\n injector: this.injector,\n }),\n this.injector\n )\n return new FlexRenderComponentView(component, view)\n }\n}\n","import { computed, type Signal, signal } from '@angular/core'\nimport {\n RowData,\n TableOptions,\n TableOptionsResolved,\n TableState,\n createTable,\n type Table,\n} from '@tanstack/table-core'\nimport { lazyInit } from './lazy-signal-initializer'\nimport { proxifyTable } from './proxy'\n\nexport * from '@tanstack/table-core'\n\nexport {\n type FlexRenderContent,\n FlexRenderDirective,\n FlexRenderDirective as FlexRender,\n injectFlexRenderContext,\n type FlexRenderComponentProps,\n} from './flex-render'\n\nexport {\n FlexRenderComponent,\n flexRenderComponent,\n} from './flex-render/flex-render-component'\n\nexport function createAngularTable<TData extends RowData>(\n options: () => TableOptions<TData>\n): Table<TData> & Signal<Table<TData>> {\n return lazyInit(() => {\n const resolvedOptions = {\n state: {},\n onStateChange: () => {},\n renderFallbackValue: null,\n ...options(),\n }\n\n const table = createTable(resolvedOptions)\n\n // By default, manage table state here using the table's initial state\n const state = signal<TableState>(table.initialState)\n\n // Compose table options using computed.\n // This is to allow `tableSignal` to listen and set table option\n const updatedOptions = computed<TableOptionsResolved<TData>>(() => {\n // listen to table state changed\n const tableState = state()\n // listen to input options changed\n const tableOptions = options()\n return {\n ...table.options,\n ...resolvedOptions,\n ...tableOptions,\n state: { ...tableState, ...tableOptions.state },\n onStateChange: updater => {\n const value =\n updater instanceof Function ? updater(tableState) : updater\n state.set(value)\n resolvedOptions.onStateChange?.(updater)\n },\n }\n })\n\n // convert table instance to signal for proxify to listen to any table state and options changes\n const tableSignal = computed(\n () => {\n table.setOptions(updatedOptions())\n return table\n },\n {\n equal: () => false,\n }\n )\n\n // proxify Table instance to provide ability for consumer to listen to any table state changes\n return proxifyTable(tableSignal)\n })\n}\n","/* eslint-disable jsdoc/require-jsdoc */\n/* eslint-disable jsdoc/require-returns */\n/* eslint-disable jsdoc/require-param */\n\nimport {\n Component,\n computed,\n input,\n TemplateRef,\n CUSTOM_ELEMENTS_SCHEMA,\n ContentChild,\n ContentChildren,\n QueryList,\n effect,\n signal,\n ElementRef,\n viewChild,\n AfterViewInit,\n OnDestroy,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {\n NvDatatableCellDirective,\n type NvDatatableCellContext,\n} from './nv-datatable-cell.directive';\n\n// local copy of @tanstack/angular-table (required for multi angular versions, the built version is not working)\nimport {\n createAngularTable,\n getCoreRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n FlexRenderDirective,\n type FlexRenderComponent,\n type ColumnDef,\n type CellContext,\n type PaginationState,\n type SortingState,\n type NoInfer,\n} from './datatable.utils';\n\n/**\n * A powerful, flexible datatable component built on TanStack Table.\n * Supports custom cell rendering, column configuration, pagination, and full TypeScript typing.\n */\n@Component({\n selector: 'nv-datatable',\n standalone: true,\n imports: [CommonModule, FlexRenderDirective],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n template: `\n <nv-table>\n <table>\n <thead [attr.data-sticky-top]=\"stickyHeader() ? 'true' : null\">\n @for (headerGroup of table().getHeaderGroups(); track headerGroup.id)\n {\n <tr>\n @for (header of headerGroup.headers; track header.id) {\n <th\n [attr.data-testid]=\"'datatable-header-' + header.id\"\n [style.width]=\"\n header.column.columnDef.size\n ? header.column.columnDef.size + 'px'\n : null\n \"\n [attr.data-no-resize]=\"\n !header.column.columnDef.enableResizing ? 'true' : null\n \"\n >\n @if (!header.isPlaceholder) { @if (header.column.getCanSort()) {\n <nv-tableheader\n [sortable]=\"true\"\n [sortDirection]=\"header.column.getIsSorted() || 'none'\"\n (sortDirectionChanged)=\"\n handleSortDirectionChanged($event, header)\n \"\n >\n {{ header.column.columnDef.header }}\n </nv-tableheader>\n } @else {\n {{ header.column.columnDef.header }}\n } }\n </th>\n }\n </tr>\n }\n </thead>\n\n <tbody>\n @for (row of table().getRowModel().rows; track row.id; let i = $index)\n {\n <tr\n [attr.data-testid]=\"'datatable-row-' + i\"\n #tableRow\n [attr.data-is-last]=\"\n isInfiniteScroll() && i === table().getRowModel().rows.length - 1\n ? 'true'\n : null\n \"\n >\n @for (cell of row.getVisibleCells(); track cell.id) {\n <td [attr.data-testid]=\"'datatable-cell-' + cell.column.id\">\n <ng-container\n *flexRender=\"\n cell.column.columnDef.cell;\n props: cell.getContext();\n let cellContent\n \"\n >\n {{ cellContent }}\n </ng-container>\n </td>\n }\n </tr>\n }\n </tbody>\n </table>\n </nv-table>\n\n <!-- Render pagination if configured -->\n @if (paginationAPI()) { @if (paginationTemplate) {\n <ng-container\n *ngTemplateOutlet=\"\n paginationTemplate;\n context: { $implicit: paginationAPI() }\n \"\n ></ng-container>\n } @else if (mode() === 'client' && pagination() && !pagination()?.infinite)\n {\n <!-- Default pagination with nv-paginationtable (client mode only) -->\n <nv-paginationtable\n [pageIndex]=\"paginationAPI()!.pageIndex\"\n [pageSize]=\"paginationAPI()!.pageSize\"\n [pageCount]=\"paginationAPI()!.pageCount\"\n [rowCount]=\"paginationAPI()!.rowCount\"\n [attr.label-page]=\"pagination()?.labels?.page || null\"\n [attr.label-total]=\"pagination()?.labels?.total || null\"\n [attr.label-page-size-option]=\"\n pagination()?.labels?.pageSizeOption || null\n \"\n (pageIndexChanged)=\"paginationAPI()!.setPageIndex($event.detail)\"\n (pageSizeChanged)=\"paginationAPI()!.setPageSize($event.detail)\"\n ></nv-paginationtable>\n } }\n `,\n})\nexport class NvDatatable<T> implements AfterViewInit, OnDestroy {\n /** Column definitions */\n columns = input<NvDatatableColumn<T>[]>([]);\n /** Row data */\n rows = input<T[]>([]);\n /**\n * Data handling mode for sorting and filtering operations.\n * - 'client': All operations handled in browser (default)\n * - 'server': Operations trigger callbacks for server-side handling\n */\n mode = input<'client' | 'server'>('client');\n /** Optional pagination configuration */\n pagination = input<NvDatatablePaginationConfig | undefined>(undefined);\n /** Optional sorting configuration */\n sorting = input<NvDatatableSortingConfig | undefined>(undefined);\n /** Should the header stick to the top of the table when scrolling? */\n stickyHeader = input<boolean>(false);\n\n /** Template for custom pagination UI */\n @ContentChild('paginationTemplate', { read: TemplateRef })\n paginationTemplate?: TemplateRef<{\n $implicit: NvDatatableRenderPaginationAPI;\n }>;\n\n /** Cell templates provided via nvDatatableCell directive */\n @ContentChildren(NvDatatableCellDirective)\n cellTemplates?: QueryList<NvDatatableCellDirective<T, T[keyof T]>>;\n\n /** Signal to track cell templates array */\n private cellTemplatesSignal = signal<\n NvDatatableCellDirective<T, T[keyof T]>[]\n >([]);\n\n /** Map of field names to cell templates */\n private cellTemplateMap = computed(() => {\n const map = new Map<\n string,\n TemplateRef<NvDatatableCellContext<T, T[keyof T]>>\n >();\n this.cellTemplatesSignal().forEach((directive) => {\n map.set(directive.nvDatatableCell, directive.template);\n });\n return map;\n });\n\n /** Pagination state for server mode */\n private paginationState = signal<PaginationState>({\n pageIndex: 0,\n pageSize: this.pagination()?.initialPageSize || 10,\n });\n\n /** Sorting state for controlled sorting (server mode) */\n private sortingState = signal<SortingState>(this.sorting()?.sortState || []);\n\n /** Reference to table rows for infinite scroll observer */\n private tableRows = viewChild<ElementRef>('tableRow');\n\n /** Intersection observer for infinite scroll */\n private observer: IntersectionObserver | null = null;\n\n /** Helper to check if using infinite scroll */\n isInfiniteScroll = computed(() => this.pagination()?.infinite === true);\n\n /** Computed table columns with proper typing and filtering. */\n tableColumns = computed<ColumnDef<T, T[keyof T]>[]>(() => {\n const templateMap = this.cellTemplateMap();\n\n return this.columns()\n .filter((col) => !col.hidden)\n .map((col) => {\n // Shared cell renderer\n const cellRenderer = (context: CellContext<T, T[keyof T]>) => {\n const fieldName = String(col.field);\n const cellTemplate = templateMap.get(fieldName);\n\n // Priority: template > renderCell > default\n if (cellTemplate) {\n // Return TemplateRef directly - getValue() returns formatted value\n return cellTemplate;\n }\n\n // Fall back to renderCell if provided\n if (col.renderCell) {\n return col.renderCell(context);\n }\n\n // Default: just return the value (formatted if valueFormatter was used)\n return context.getValue();\n };\n\n const columnDef: ColumnDef<T, T[keyof T]> = {\n accessorKey: col.field,\n accessorFn: col.valueFormatter\n ? (row: T) => {\n const rawValue = row[col.field];\n return col.valueFormatter!({\n value: rawValue,\n row,\n field: col.field,\n });\n }\n : undefined,\n header: col.headerName || String(col.field),\n size: col.width,\n enableResizing: col.resizable ?? true,\n // Sorting configuration\n enableSorting: this.sorting() ? col.sortable ?? true : false,\n cell: cellRenderer,\n };\n\n // Add optional sorting properties only if defined\n if (col.sortingFn !== undefined) {\n // @ts-expect-error - TanStack typing is strict but this works at runtime\n columnDef.sortingFn = col.sortingFn;\n }\n if (col.sortDescFirst !== undefined) {\n columnDef.sortDescFirst = col.sortDescFirst;\n }\n if (col.invertSorting !== undefined) {\n columnDef.invertSorting = col.invertSorting;\n }\n if (col.sortUndefined !== undefined) {\n columnDef.sortUndefined = col.sortUndefined;\n }\n\n return columnDef;\n });\n });\n\n /** TanStack table instance with Signals */\n private tableInstance = createAngularTable(() => {\n const paginationConfig = this.pagination();\n const sortingConfig = this.sorting();\n const componentMode = this.mode();\n const isServerMode = componentMode === 'server';\n const isInfinite = paginationConfig?.infinite === true;\n\n // Determine base table configuration with sorting\n const getBaseTableConfig = () => {\n const baseConfig = {\n data: this.rows(),\n columns: this.tableColumns(),\n getCoreRowModel: getCoreRowModel(),\n // Sorting configuration - uses top-level mode\n ...(sortingConfig && {\n state: {\n sorting:\n isServerMode && sortingConfig.sortState\n ? sortingConfig.sortState\n : this.sortingState(),\n },\n onSortingChange: (\n updaterOrValue:\n | SortingState\n | ((old: SortingState) => SortingState),\n ) => {\n const currentSort =\n isServerMode && sortingConfig.sortState\n ? sortingConfig.sortState\n : this.sortingState();\n\n const newSort =\n typeof updaterOrValue === 'function'\n ? updaterOrValue(currentSort)\n : updaterOrValue;\n\n // Always update internal state for reactivity\n this.sortingState.set(newSort);\n\n // For server-side sorting, also call the callback\n if (isServerMode && sortingConfig.onSortingChange) {\n sortingConfig.onSortingChange(newSort);\n }\n },\n manualSorting: isServerMode,\n enableSorting: true,\n enableMultiSort: sortingConfig.enableMultiSort ?? false,\n enableSortingRemoval: sortingConfig.enableSortingRemoval ?? true,\n maxMultiSortColCount: sortingConfig.maxMultiSortColCount,\n sortDescFirst: sortingConfig.sortDescFirst ?? false,\n // When multi-sort is enabled, treat all clicks as multi-sort events\n isMultiSortEvent: sortingConfig.enableMultiSort\n ? () => true\n : undefined,\n getSortedRowModel: !isServerMode ? getSortedRowModel() : undefined,\n }),\n };\n\n return baseConfig;\n };\n\n // Infinite scroll mode (requires server mode)\n if (isInfinite) {\n // No pagination row model for infinite scroll - simple config\n return getBaseTableConfig();\n }\n\n // No pagination configured\n if (!paginationConfig) {\n return getBaseTableConfig();\n }\n\n // Client-side pagination\n if (!isServerMode) {\n return {\n ...getBaseTableConfig(),\n getPaginationRowModel: getPaginationRowModel(),\n initialState: {\n pagination: {\n pageIndex: 0,\n pageSize: paginationConfig.initialPageSize || 10,\n },\n },\n };\n }\n\n // Server-side pagination - manual pagination with reactive state\n const baseConfig = getBaseTableConfig();\n const pageSize = this.paginationState().pageSize;\n return {\n ...baseConfig,\n manualPagination: true,\n pageCount:\n paginationConfig.totalPageCount !== undefined\n ? paginationConfig.totalPageCount\n : paginationConfig.totalRowCount !== undefined\n ? Math.ceil(paginationConfig.totalRowCount / pageSize)\n : -1,\n state: {\n pagination: this.paginationState(),\n ...(baseConfig.state && { sorting: baseConfig.state.sorting }),\n },\n onPaginationChange: (\n updaterOrValue:\n | PaginationState\n | ((old: PaginationState) => PaginationState),\n ) => {\n const newState =\n typeof updaterOrValue === 'function'\n ? updaterOrValue(this.paginationState())\n : updaterOrValue;\n\n this.paginationState.set(newState);\n\n // Call user's callback for server-side pagination\n if (paginationConfig.onPaginationChange) {\n paginationConfig.onPaginationChange({\n pageIndex: newState.pageIndex,\n pageSize: newState.pageSize,\n });\n }\n },\n };\n });\n\n /** Public getter for table instance. */\n table() {\n return this.tableInstance();\n }\n\n /**\n * Handle sort direction change from table header\n * @param {Event} event The sort direction change event or direction string\n * @param {object} header The table header object\n */\n handleSortDirectionChanged(\n event: Event | CustomEvent<string> | string,\n header: {\n column: {\n clearSorting: () => void;\n toggleSorting: (desc?: boolean, multi?: boolean) => void;\n };\n },\n ) {\n // Extract direction from event or use directly if string\n let direction: 'asc' | 'desc' | 'none';\n\n if (typeof event === 'string') {\n direction = event as 'asc' | 'desc' | 'none';\n } else if ('detail' in event && typeof event.detail === 'string') {\n direction = event.detail as 'asc' | 'desc' | 'none';\n } else {\n // Fallback - shouldn't happen but handle gracefully\n console.warn(\n 'Unexpected event type in handleSortDirectionChanged:',\n event,\n );\n return;\n }\n\n const sortingConfig = this.sorting();\n\n // Check if multi-sort is enabled\n const isMultiSort = sortingConfig?.enableMultiSort ?? false;\n\n if (direction === 'none') {\n // Clear this column's sort\n header.column.clearSorting();\n } else {\n // Toggle sort - TanStack will handle the logic internally\n header.column.toggleSorting(direction === 'desc', isMultiSort);\n }\n }\n\n /** Build pagination API for template */\n paginationAPI = computed<NvDatatableRenderPaginationAPI | null>(() => {\n const paginationConfig = this.pagination();\n if (!paginationConfig) {\n return null;\n }\n\n const componentMode = this.mode();\n const isServerMode = componentMode === 'server';\n const isInfinite = paginationConfig.infinite === true;\n const table = this.table();\n const tablePaginationState = table.getState().pagination;\n const pageCount = table.getPageCount();\n const rowCount = isServerMode\n ? paginationConfig.totalRowCount || this.rows().length\n : this.rows().length;\n\n return {\n pageIndex: tablePaginationState.pageIndex,\n pageSize: tablePaginationState.pageSize,\n pageCount,\n rowCount,\n firstPage: () => table.setPageIndex(0),\n previousPage: () => table.previousPage(),\n nextPage: () => table.nextPage(),\n lastPage: () => table.setPageIndex(pageCount - 1),\n setPageIndex: (index: number) => table.setPageIndex(index),\n setPageSize: (size: number) => table.setPageSize(size),\n canPreviousPage: table.getCanPreviousPage(),\n canNextPage: table.getCanNextPage(),\n isLoading: isInfinite ? paginationConfig.isLoading : undefined,\n hasMore: isInfinite ? paginationConfig.hasMore : undefined,\n };\n });\n\n constructor() {\n // Validate infinite scroll requires server mode\n effect(() => {\n const paginationConfig = this.pagination();\n const componentMode = this.mode();\n\n if (paginationConfig?.infinite === true && componentMode !== 'server') {\n console.warn(\n '[NvDatatable] pagination.infinite=true requires mode=\"server\". ' +\n 'Infinite scroll relies on server-side data loading.',\n );\n }\n });\n\n // Set up intersection observer for infinite scroll\n effect(\n () => {\n const paginationConfig = this.pagination();\n const rows = this.rows(); // Track rows changes\n const isInfinite = paginationConfig?.infinite === true;\n\n // Clean up existing observer\n if (this.observer) {\n this.observer.disconnect();\n this.observer = null;\n }\n\n // Only set up observer for infinite scroll mode\n if (!isInfinite || rows.length === 0) {\n return;\n }\n\n // Use setTimeout to ensure DOM is updated\n setTimeout(() => {\n const threshold = paginationConfig.loadMoreThreshold || 500;\n\n // Find the last row element\n const tableRowElements = document.querySelectorAll(\n '[data-is-last=\"true\"]',\n );\n const lastRowElement = tableRowElements[tableRowElements.length - 1];\n\n if (!lastRowElement) {\n return;\n }\n\n this.observer = new IntersectionObserver(\n (entries) => {\n const entry = entries[0];\n if (\n entry.isIntersecting &&\n paginationConfig.hasMore &&\n !paginationConfig.isLoading &&\n paginationConfig.onLoadMore\n ) {\n paginationConfig.onLoadMore();\n }\n },\n {\n rootMargin: `${threshold}px`,\n root: null,\n },\n );\n\n this.observer.observe(lastRowElement);\n }, 0);\n },\n { allowSignalWrites: true },\n );\n }\n\n ngAfterViewInit(): void {\n // Sync cell templates QueryList to signal\n if (this.cellTemplates) {\n this.cellTemplatesSignal.set(this.cellTemplates.toArray());\n\n // Subscribe to changes in the QueryList\n this.cellTemplates.changes.subscribe(() => {\n if (this.cellTemplates) {\n this.cellTemplatesSignal.set(this.cellTemplates.toArray());\n }\n });\n }\n }\n\n ngOnDestroy(): void {\n if (this.observer) {\n this.observer.disconnect();\n this.observer = null;\n }\n }\n}\n\n/********************************* UTILS **************************************/\n\n/**\n * Creates a strongly-typed column factory for a given row type.\n *\n * @template Row The row data type (e.g., `Product`)\n *\n * @returns {function} A function that accepts a column definition and infers:\n * - `K` as the field key (`keyof Row`)\n * - `F` as the return type of `valueFormatter` (defaults to `Row[K]`)\n *\n * @example\n * ```ts\n * // Define your row type\n * interface Product {\n * name: string;\n * price: number;\n * }\n *\n * const col = makeColumn<Product>();\n */\nexport function makeColumn<Row>() {\n return function define<K extends keyof Row, F = Row[K]>(\n col: NvDatatableColumn<Row, K, F>,\n ) {\n return col as unknown as NvDatatableColumn<Row>;\n };\n}\n\nexport { flexRenderComponent as nvDatatableRenderComponent } from './datatable.utils';\n\n/********************************* TYPES **************************************/\nexport type { CellContext as NvDatatableCellContext };\n\n/** Column definition for NvDatatable. */\nexport interface NvDatatableColumn<\n Row,\n K extends keyof Row = keyof Row,\n F = Row[K],\n> {\n /** Field name from row data */\n field: K;\n /** Display name for column header */\n headerName?: string;\n /** Column width in pixels */\n width?: number;\n /** Whether column is resizable */\n resizable?: boolean;\n /** Whether column is hidden */\n hidden?: boolean;\n /**\n * Transform the raw value before rendering. Receives the cell value and full row object.\n * This is useful for formatting dates, converting arrays to strings, accessing nested objects, etc.\n * The transformed value is then passed to renderCell or templates.\n */\n valueFormatter?: (params: NvTableValueFormatterParams<Row, Row[K], K>) => F;\n /**\n * Custom cell renderer function that can return either a string or Angular TemplateRef.\n * Use `$implicit` in your template to receive the CellContext.\n * Note: If valueFormatter is provided, renderCell receives the formatted value.\n */\n renderCell?: (context: CellContext<Row, F>) =>\n | string\n | FlexRenderComponent\n | TemplateRef<{\n $implicit: CellContext<Row, F>;\n }>;\n /** Enable/disable sorting for this column */\n sortable?: boolean;\n /** Custom sorting function or built-in function name */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n sortingFn?: ((rowA: any, rowB: any, columnId: string) => number) | string;\n /** Start with descending sort for this column */\n sortDescFirst?: boolean;\n /** Invert the sort order (useful for rankings) */\n invertSorting?: boolean;\n /** Where to place undefined values in sort */\n sortUndefined?: 'first' | 'last' | false | -1 | 1;\n}\n\n/** Parameters for custom cell rendering function. */\nexport interface NvTableRenderCellParams<Row, Value, Field> {\n /** Cell value */\n value: Value | NoInfer<Value>;\n /** Row data */\n row: Row;\n /** Field name */\n field: Field;\n /** Row index */\n rowIndex: number;\n}\n\n/**\n * Parameters for valueFormatter function.\n */\nexport interface NvTableValueFormatterParams<Row, Value, Field> {\n /** Cell original value */\n value: Value;\n /** Row data */\n row: Row;\n /** Field name */\n field: Field;\n}\n\n/**\n * Pagination configuration for NvDatatable.\n * The pagination behavior (client vs server) is derived from the top-level `mode` prop.\n */\nexport interface NvDatatablePaginationConfig {\n /**\n * Enable infinite scroll mode.\n * When true, requires the component's top-level `mode` to be set to 'server'.\n * Data is loaded incrementally as the user scrolls.\n */\n infinite?: boolean;\n /** Initial page size (default: 10) */\n initialPageSize?: number;\n /** Available page size options (default: [10, 20, 50, 100]) */\n pageSizeOptions?: number[];\n /** Custom labels for pagination component (i18n support) */\n labels?: {\n /** Label template for the page indicator. Supports placeholders: {pageIndex}, {pageCount} */\n page?: string;\n /** Label template for the total row count display. Supports placeholder: {rowCount} */\n total?: string;\n /** Label template for the page size dropdown options. Supports placeholder: {pageSize} */\n pageSizeOption?: string;\n };\n\n // Server-side (buttons) specific properties\n /** Total number of rows (for server-side pagination) */\n totalRowCount?: number;\n /** Total number of pages (for server-side pagination) */\n totalPageCount?: number;\n /** Callback when pagination state changes (for server-side pagination) */\n onPaginationChange?: (state: {\n /** Current page index */\n pageIndex: number;\n /** Current page size */\n pageSize: number;\n }) => void;\n\n // Infinite scroll specific properties (used when infinite: true)\n /** Whether there are more items to load (for infinite scroll) */\n hasMore?: boolean;\n /** Whether data is currently loading (for infinite scroll) */\n isLoading?: boolean;\n /** Distance from bottom in pixels to trigger load (default: 500) */\n loadMoreThreshold?: number;\n /** Callback to load more data (for infinite scroll) */\n onLoadMore?: () => void;\n}\n\n/**\n * API exposed to pagination template for building custom pagination UI.\n */\nexport interface NvDatatableRenderPaginationAPI {\n /** Current page index (zero-based) */\n pageIndex: number;\n /** Current page size */\n pageSize: number;\n /** Total number of pages */\n pageCount: number;\n /** Total number of rows */\n rowCount: number;\n /** Navigate to first page */\n firstPage: () => void;\n /** Navigate to previous page */\n previousPage: () => void;\n /** Navigate to next page */\n nextPage: () => void;\n /** Navigate to last page */\n lastPage: () => void;\n /** Navigate to specific page by index */\n setPageIndex: (index: number) => void;\n /** Change page size */\n setPageSize: (size: number) => void;\n /** Whether previous page is available */\n canPreviousPage: boolean;\n /** Whether next page is available */\n canNextPage: boolean;\n /** Loading state (only for infinite scroll) */\n isLoading?: boolean;\n /** Whether more items are available (only for infinite scroll) */\n hasMore?: boolean;\n}\n\n/**\n * Sorting configuration for NvDatatable.\n * The sorting mode (client vs server) is derived from the component's top-level `mode` prop.\n */\nexport interface NvDatatableSortingConfig {\n /** Enable multi-column sorting with Shift+Click */\n enableMultiSort?: boolean;\n /** Allow cycling through to \"no sort\" state */\n enableSortingRemoval?: boolean;\n /** Maximum number of columns for multi-sort */\n maxMultiSortColCount?: number;\n /** Start with descending sort as first toggle state */\n sortDescFirst?: boolean;\n /** Controlled sort state (for server-side sorting) */\n sortState?: SortingState;\n /** Callback when sorting changes (for server-side sorting) */\n onSortingChange?: (sorting: SortingState) => void;\n}\n\n/**\n * Sorting state type - array of sort descriptors\n */\nexport type NvDataTableSortingState = SortingState;\n","import { Directive, ElementRef, HostListener } from '@angular/core';\nimport { ControlValueAccessor } from '@angular/forms';\n\n@Directive({})\nexport class ValueAccessor implements ControlValueAccessor {\n private onChange: (value: unknown) => void = () => {};\n private onTouched: () => void = () => {};\n protected lastValue: unknown = null;\n\n constructor(protected el: ElementRef) {}\n\n writeValue(value: unknown) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n\n handleChangeEvent(value: unknown) {\n if (value !== this.lastValue) {\n this.lastValue = value;\n this.onChange(value);\n }\n }\n\n @HostListener('focusout')\n _handleBlurEvent() {\n this.onTouched();\n }\n\n registerOnChange(fn: (value: unknown) => void) {\n this.onChange = fn;\n }\n registerOnTouched(fn: () => void) {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean) {\n this.el.nativeElement.disabled = isDisabled;\n }\n}\n","import { Directive, ElementRef, HostListener } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from '../value-accessor';\n\n@Directive({\n selector: 'nv-accordion',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvAccordionValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvAccordionValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('openIndexesChanged', ['$event'])\n handleOpenIndexesChanged(event: any) {\n this.handleChangeEvent(event.target.openIndexes)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.openIndexes = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-alert',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvAlertValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvAlertValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('hiddenChanged', ['$event'])\n handleHiddenChanged(event: any) {\n this.handleChangeEvent(event.target.hidden)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.hidden = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-calendar',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvCalendarValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvCalendarValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-datagrid',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvDatagridValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvDatagridValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('stateChanged', ['$event'])\n handleStateChanged(event: any) {\n this.handleChangeEvent(event.target.state)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.state = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-datetest',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvDatetestValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvDatetestValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-datetimetest',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvDatetimetestValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvDatetimetestValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-dialog',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvDialogValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvDialogValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('openChanged', ['$event'])\n handleOpenChanged(event: any) {\n this.handleChangeEvent(event.target.open)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.open = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-drawer',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvDrawerValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvDrawerValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('openChanged', ['$event'])\n handleOpenChanged(event: any) {\n this.handleChangeEvent(event.target.open)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.open = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldcheckbox',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldcheckboxValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldcheckboxValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('checkedChanged', ['$event'])\n handleCheckedChanged(event: any) {\n this.handleChangeEvent(event.target.checked)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.checked = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fielddate',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFielddateValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFielddateValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fielddaterange',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFielddaterangeValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFielddaterangeValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fielddropdown',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFielddropdownValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFielddropdownValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldmultiselect',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldmultiselectValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldmultiselectValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldnumber',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldnumberValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldnumberValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldpassword',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldpasswordValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldpasswordValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldradio',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldradioValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldradioValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('checkedChanged', ['$event'])\n handleCheckedChanged(event: any) {\n this.handleChangeEvent(event.target.checked)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.checked = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldselect',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldselectValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldselectValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldslider',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldsliderValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldsliderValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldtext',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldtextValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldtextValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldtextarea',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldtextareaValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldtextareaValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldtime',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldtimeValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldtimeValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-notification',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvNotificationValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvNotificationValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('hiddenChanged', ['$event'])\n handleHiddenChanged(event: any) {\n this.handleChangeEvent(event.target.hidden)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.hidden = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-pagination-nav',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvPaginationNavValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvPaginationNavValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('currentPageChanged', ['$event'])\n handleCurrentPageChanged(event: any) {\n this.handleChangeEvent(event.target.currentPage)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.currentPage = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-paginationtable',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvPaginationtableValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvPaginationtableValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('pageIndexChanged', ['$event'])\n handlePageIndexChanged(event: any) {\n this.handleChangeEvent(event.target.pageIndex)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.pageIndex = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-popover',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvPopoverValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvPopoverValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('openChanged', ['$event'])\n handleOpenChanged(event: any) {\n this.handleChangeEvent(event.target.open)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.open = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-sidebar',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvSidebarValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvSidebarValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('openChanged', ['$event'])\n handleOpenChanged(event: any) {\n this.handleChangeEvent(event.target.open)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.open = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-split',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvSplitValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvSplitValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('sizesChanged', ['$event'])\n handleSizesChanged(event: any) {\n this.handleChangeEvent(event.target.sizes)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.sizes = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-timetest',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvTimetestValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvTimetestValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-toggle',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvToggleValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvToggleValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('checkedChanged', ['$event'])\n handleCheckedChanged(event: any) {\n this.handleChangeEvent(event.target.checked)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.checked = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-togglebuttongroup',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvTogglebuttongroupValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvTogglebuttongroupValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n\nexport const VALUE_ACCESSORS = [\n NvAccordionValueAccessor,\n NvAlertValueAccessor,\n NvCalendarValueAccessor,\n NvDatagridValueAccessor,\n NvDatetestValueAccessor,\n NvDatetimetestValueAccessor,\n NvDialogValueAccessor,\n NvDrawerValueAccessor,\n NvFieldcheckboxValueAccessor,\n NvFielddateValueAccessor,\n NvFielddaterangeValueAccessor,\n NvFielddropdownValueAccessor,\n NvFieldmultiselectValueAccessor,\n NvFieldnumberValueAccessor,\n NvFieldpasswordValueAccessor,\n NvFieldradioValueAccessor,\n NvFieldselectValueAccessor,\n NvFieldsliderValueAccessor,\n NvFieldtextValueAccessor,\n NvFieldtextareaValueAccessor,\n NvFieldtimeValueAccessor,\n NvNotificationValueAccessor,\n NvPaginationNavValueAccessor,\n NvPaginationtableValueAccessor,\n NvPopoverValueAccessor,\n NvSidebarValueAccessor,\n NvSplitValueAccessor,\n NvTimetestValueAccessor,\n NvToggleValueAccessor,\n NvTogglebuttongroupValueAccessor,\n];","import { Injectable, type Type } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport {\n NotificationEmphasis,\n FeedbackColors,\n} from '@nova-design-system/nova-webcomponents';\nimport { v4 as uuidv4 } from 'uuid';\n\n/**\n * Action callbacks for notifications. Will render buttons automatically.\n */\nexport interface NotificationAction {\n /** The label of the action. */\n label: string;\n /** The callback to execute when the action is clicked. */\n onClick: () => void;\n}\n\n/**\n * Options for creating a notification.\n */\nexport interface NotificationOptions {\n /** Unique identifier for the notification. If not provided, one will be generated. */\n id?: string;\n /** Short and concise text for the notification heading. */\n heading?: string;\n /** Main content of the notification. */\n message?: string;\n /** Whether the notification can be manually dismissed via close button. */\n dismissible?: boolean;\n /** Adjusts the emphasis to make the notification more or less visually\n * prominent to users. Use this to draw attention to important actions or\n * reduce focus on less critical ones */\n emphasis?: `${NotificationEmphasis}`;\n /** Type of the notification, used to determine the color and default icon. */\n feedback?: `${FeedbackColors}`;\n /** Custom icon name to override the default icon. */\n icon?: string;\n /** Notification actions */\n actions?: NotificationAction[];\n /** Custom components for the notification actions. */\n actionSlot?: Type<unknown>;\n /** Duration in milliseconds before auto-dismissing. 0 = sticky (no auto-dismiss). Default: 0 */\n duration?: number;\n}\n\n/**\n * A notification with all required fields populated.\n */\nexport interface Notification extends NotificationOptions {\n /** Timestamp when the notification was created. */\n createdAt: number;\n}\n\n/**\n * Configuration options for the NotificationService.\n */\nexport interface NotificationServiceConfig {\n /** Position of the notification container on the screen. */\n position?: string;\n /** Maximum number of notifications to display at once. */\n maxNotifications?: number;\n /** Additional CSS class name for the notification container. */\n className?: string;\n}\n\n/**\n * Utility function to generate unique IDs.\n *\n * @returns {string} A unique identifier string\n */\nconst generateId = (): string => {\n return `notification-${uuidv4()}`;\n};\n\n/**\n * Angular service for managing notifications.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class NotificationService {\n private readonly _notifications = new BehaviorSubject<Notification[]>([]);\n private readonly _config: Required<NotificationServiceConfig>;\n private readonly timers = new Map<string, ReturnType<typeof setTimeout>>();\n\n /**\n * Observable stream of active notifications.\n */\n public readonly notifications$: Observable<Notification[]> =\n this._notifications.asObservable();\n\n /**\n * Current array of notifications.\n *\n * @returns {Notification[]} Array of active notifications\n */\n public get notifications(): Notification[] {\n return this._notifications.value;\n }\n\n constructor() {\n this._config = {\n position: 'top-right',\n maxNotifications: 50,\n className: '',\n };\n }\n\n /**\n * Configure the notification service.\n *\n * @param {NotificationServiceConfig} config Configuration options\n */\n configure(config: NotificationServiceConfig): void {\n Object.assign(this._config, config);\n }\n\n /**\n * Get the current configuration.\n *\n * @returns {Required<NotificationServiceConfig>} Current configuration\n */\n get config(): Required<NotificationServiceConfig> {\n return { ...this._config };\n }\n\n // keep track of all notification refs\n private elRefs = new Map<string, HTMLNvNotificationElement>();\n registerRef(id: string, el: HTMLNvNotificationElement): void {\n this.elRefs.set(id, el);\n }\n unregisterRef(id: string): void {\n this.elRefs.delete(id);\n }\n clearRefs() {\n this.elRefs.clear();\n }\n\n /**\n * Clean up all timers and references.\n */\n ngOnDestroy(): void {\n this.timers.forEach((timer) => clearTimeout(timer));\n this.timers.clear();\n this.clearRefs();\n }\n\n /**\n * Show a new notification.\n *\n * @param {NotificationOptions} options The notification options\n * @returns {string} The notification ID\n */\n show(options: NotificationOptions): string {\n const id = options.id || generateId();\n\n const notification: Notification = {\n id,\n heading: options.heading,\n message: options.message,\n dismissible: options.dismissible ?? true,\n emphasis: options.emphasis ?? 'medium',\n feedback: options.feedback ?? 'information',\n icon: options.icon,\n actions: options.actions ?? [],\n actionSlot: options.actionSlot,\n duration: options.duration ?? 0,\n createdAt: Date.now(),\n };\n\n const currentNotifications = this._notifications.value;\n\n // Remove oldest notifications if we exceed max\n const newNotifications = [notification, ...currentNotifications];\n if (newNotifications.length > this._config.maxNotifications) {\n this._notifications.next(\n newNotifications.slice(0, this._config.maxNotifications),\n );\n } else {\n this._notifications.next(newNotifications);\n }\n\n setTimeout(() => {\n const ref = this.elRefs.get(id) as HTMLNvNotificationElement | undefined;\n ref?.show();\n\n // Set up auto-dismiss timer if duration > 0\n if (notification.duration && notification.duration > 0) {\n const timer = setTimeout(() => {\n this.dismiss(id);\n }, notification.duration);\n this.timers.set(id, timer);\n }\n }, 0);\n\n return id;\n }\n\n /**\n * Dismiss a specific notification by ID. This will remove the notification\n * after the animation completes.\n *\n * @param {string} id The notification ID to dismiss\n */\n dismiss(id: string): void {\n // Clear timer if exists\n const timer = this.timers.get(id);\n if (timer) {\n clearTimeout(timer);\n this.timers.delete(id);\n }\n\n this.elRefs.get(id)?.dismiss?.();\n }\n\n /**\n * Immediately remove a specific notification by ID.\n *\n * @param {string} id The notification ID to dismiss\n */\n remove(id: string): void {\n // Clear timer if exists\n const timer = this.timers.get(id);\n if (timer) {\n clearTimeout(timer);\n this.timers.delete(id);\n }\n\n const currentNotifications = this._notifications.value;\n const filteredNotifications = currentNotifications.filter(\n (notification) => notification.id !== id,\n );\n this._notifications.next(filteredNotifications);\n }\n\n /**\n * Immediately remove all active notifications.\n */\n removeAll(): void {\n // Clear all timers\n this.timers.forEach((timer) => clearTimeout(timer));\n this.timers.clear();\n\n this._notifications.next([]);\n }\n}\n","import {\n Component,\n Input,\n OnDestroy,\n OnInit,\n ViewChildren,\n ElementRef,\n QueryList,\n CUSTOM_ELEMENTS_SCHEMA,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Subscription } from 'rxjs';\n// import { NovaComponentsModule } from '../nova-components.module';\nimport { NotificationService, type Notification } from './notification.service';\n\n/**\n * Angular component that renders the notification container with active notifications.\n */\n@Component({\n selector: 'nv-notification-service',\n standalone: true,\n imports: [CommonModule],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n template: `\n <nv-notificationcontainer\n [position]=\"position\"\n [class]=\"className\"\n data-testid=\"notification-container\"\n >\n <nv-notification\n *ngFor=\"\n let notification of notifications;\n trackBy: trackByNotificationId\n \"\n #notificationEl\n [attr.data-id]=\"notification.id\"\n [uid]=\"notification.id\"\n [heading]=\"notification.heading\"\n [message]=\"notification.message\"\n [dismissible]=\"notification.dismissible\"\n [emphasis]=\"notification.emphasis\"\n [feedback]=\"notification.feedback\"\n [icon]=\"notification.icon\"\n [initiallyHidden]=\"true\"\n (hiddenChanged)=\"handleHiddenChanged($event, notification.id)\"\n >\n <!-- Actions slot content for the custom element -->\n <div\n slot=\"actions\"\n class=\"flex gap-2\"\n *ngIf=\"notification.actions?.length || notification.actionSlot\"\n >\n <!-- Config-driven actions -->\n <nv-button\n *ngFor=\"let action of notification.actions\"\n emphasis=\"low\"\n size=\"sm\"\n (click)=\"action.onClick()\"\n >\n {{ action.label }}\n </nv-button>\n\n <!-- Component-driven actions -->\n <ng-container\n *ngIf=\"notification.actionSlot\"\n [ngComponentOutlet]=\"notification.actionSlot\"\n ></ng-container>\n </div>\n </nv-notification>\n </nv-notificationcontainer>\n `,\n})\nexport class NotificationServiceComponent implements OnInit, OnDestroy {\n /**\n * Position of the notification container on the screen.\n */\n @Input() position?: string;\n\n /**\n * Additional CSS class name for the notification container.\n */\n @Input() className?: string;\n\n /**\n * Array of active notifications.\n */\n notifications: Notification[] = [];\n\n /**\n * References to the notification elements.\n */\n @ViewChildren('notificationEl', { read: ElementRef })\n private notificationEls!: QueryList<ElementRef<HTMLNvNotificationElement>>;\n\n private subscription?: Subscription;\n\n constructor(private notificationService: NotificationService) {}\n\n /**\n * Component initialization.\n */\n ngOnInit(): void {\n // Use service config if no input provided\n this.position ??= this.notificationService.config.position;\n this.className ??= this.notificationService.config.className;\n\n // Subscribe to notification changes\n this.subscription = this.notificationService.notifications$.subscribe(\n (list) => (this.notifications = list),\n );\n }\n\n /**\n * Synchronize notification elements/refs with the service.\n */\n ngAfterViewInit(): void {\n const sync = () => {\n this.notificationService.clearRefs();\n for (const elRef of this.notificationEls.toArray()) {\n const el = elRef.nativeElement;\n const id = el.getAttribute('data-id');\n if (id) this.notificationService.registerRef(id, el);\n }\n };\n sync();\n this.notificationEls.changes.subscribe(sync);\n }\n\n /**\n * Component cleanup.\n */\n ngOnDestroy(): void {\n this.subscription?.unsubscribe();\n this.notificationService.clearRefs();\n }\n\n /**\n * Track function for ngFor to optimize rendering.\n *\n * @param {number} index The index of the item\n * @param {Notification} notification The notification item\n * @returns {string} The notification ID\n */\n trackByNotificationId(index: number, notification: Notification) {\n return notification.id;\n }\n\n /**\n * Handle notification hidden state change.\n *\n * @param {CustomEvent<boolean>} event The hidden changed event\n * @param {string} id The notification ID\n */\n handleHiddenChanged(event: CustomEvent<boolean>, id?: string): void {\n if (event.detail && id) {\n this.notificationService.remove(id);\n }\n }\n}\n","import { APP_INITIALIZER, NgModule, type Provider } from '@angular/core';\nimport { defineCustomElements } from '@nova-design-system/nova-webcomponents/loader';\n\nimport { DIRECTIVES } from './stencil-generated';\nimport { NvDatatable } from './components/index';\nimport { VALUE_ACCESSORS } from './stencil-generated/component-value-accessors';\nimport { NotificationServiceComponent } from './providers';\n\n/**\n * Initialize the Nova Components\n *\n * @returns {Provider} - The provider to be used for nova components\n */\nexport function provideNovaComponents(): Provider {\n return {\n provide: APP_INITIALIZER,\n useFactory: () => defineCustomElements,\n multi: true,\n };\n}\n\n@NgModule({\n imports: [NvDatatable],\n declarations: [...DIRECTIVES],\n exports: [...DIRECTIVES, NvDatatable],\n})\nexport class NovaComponentsModule {}\n\n@NgModule({\n declarations: [...VALUE_ACCESSORS],\n exports: [...VALUE_ACCESSORS],\n})\nexport class NovaComponentsValueAccessorModule {}\n\n@NgModule({\n imports: [NotificationServiceComponent],\n exports: [NotificationServiceComponent],\n})\nexport class NovaComponentsProvidersModule {}\n","/*\n * Public API Surface of nova-components\n */\n\nexport * from './lib/nova-components.module';\nexport * from './lib/stencil-generated/components';\nexport * from './lib/stencil-generated/component-value-accessors';\nexport * from './lib/providers';\nexport * from './lib/components';\nexport * from '@nova-design-system/nova-webcomponents/constants';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["d.NvAccordion","d.NvAccordionItem","d.NvAlert","d.NvAvatar","d.NvBadge","d.NvBreadcrumb","d.NvBreadcrumbs","d.NvButton","d.NvButtongroup","d.NvCalendar","d.NvCol","d.NvDatagrid","d.NvDatagridcolumn","d.NvDatetest","d.NvDatetimetest","d.NvDialog","d.NvDialogfooter","d.NvDialogheader","d.NvDrawer","d.NvDrawerfooter","d.NvDrawerheader","d.NvFieldcheckbox","d.NvFielddate","d.NvFielddaterange","d.NvFielddropdown","d.NvFielddropdownitem","d.NvFielddropdownitemcheck","d.NvFieldmultiselect","d.NvFieldnumber","d.NvFieldpassword","d.NvFieldradio","d.NvFieldselect","d.NvFieldslider","d.NvFieldtext","d.NvFieldtextarea","d.NvFieldtime","d.NvIcon","d.NvIconbutton","d.NvLoader","d.NvMenu","d.NvMenuitem","d.NvNotification","d.NvNotificationBullet","d.NvNotificationcontainer","d.NvPaginationNav","d.NvPaginationtable","d.NvPopover","d.NvRow","d.NvSidebar","d.NvSidebarcontent","d.NvSidebardivider","d.NvSidebarfooter","d.NvSidebargroup","d.NvSidebarheader","d.NvSidebarlogo","d.NvSidebarnavitem","d.NvSidebarnavsubitem","d.NvSplit","d.NvStack","d.NvTable","d.NvTableheader","d.NvTimetest","d.NvToggle","d.NvTogglebutton","d.NvTogglebuttongroup","d.NvTooltip","uuidv4","i1.NotificationService","i1.NvAccordion","i1.NvAccordionItem","i1.NvAlert","i1.NvAvatar","i1.NvBadge","i1.NvBreadcrumb","i1.NvBreadcrumbs","i1.NvButton","i1.NvButtongroup","i1.NvCalendar","i1.NvCol","i1.NvDatagrid","i1.NvDatagridcolumn","i1.NvDatetest","i1.NvDatetimetest","i1.NvDialog","i1.NvDialogfooter","i1.NvDialogheader","i1.NvDrawer","i1.NvDrawerfooter","i1.NvDrawerheader","i1.NvFieldcheckbox","i1.NvFielddate","i1.NvFielddaterange","i1.NvFielddropdown","i1.NvFielddropdownitem","i1.NvFielddropdownitemcheck","i1.NvFieldmultiselect","i1.NvFieldnumber","i1.NvFieldpassword","i1.NvFieldradio","i1.NvFieldselect","i1.NvFieldslider","i1.NvFieldtext","i1.NvFieldtextarea","i1.NvFieldtime","i1.NvIcon","i1.NvIconbutton","i1.NvLoader","i1.NvMenu","i1.NvMenuitem","i1.NvNotification","i1.NvNotificationBullet","i1.NvNotificationcontainer","i1.NvPaginationNav","i1.NvPaginationtable","i1.NvPopover","i1.NvRow","i1.NvSidebar","i1.NvSidebarcontent","i1.NvSidebardivider","i1.NvSidebarfooter","i1.NvSidebargroup","i1.NvSidebarheader","i1.NvSidebarlogo","i1.NvSidebarnavitem","i1.NvSidebarnavsubitem","i1.NvSplit","i1.NvStack","i1.NvTable","i1.NvTableheader","i1.NvTimetest","i1.NvToggle","i1.NvTogglebutton","i1.NvTogglebuttongroup","i1.NvTooltip","i2.NvAccordionValueAccessor","i2.NvAlertValueAccessor","i2.NvCalendarValueAccessor","i2.NvDatagridValueAccessor","i2.NvDatetestValueAccessor","i2.NvDatetimetestValueAccessor","i2.NvDialogValueAccessor","i2.NvDrawerValueAccessor","i2.NvFieldcheckboxValueAccessor","i2.NvFielddateValueAccessor","i2.NvFielddaterangeValueAccessor","i2.NvFielddropdownValueAccessor","i2.NvFieldmultiselectValueAccessor","i2.NvFieldnumberValueAccessor","i2.NvFieldpasswordValueAccessor","i2.NvFieldradioValueAccessor","i2.NvFieldselectValueAccessor","i2.NvFieldsliderValueAccessor","i2.NvFieldtextValueAccessor","i2.NvFieldtextareaValueAccessor","i2.NvFieldtimeValueAccessor","i2.NvNotificationValueAccessor","i2.NvPaginationNavValueAccessor","i2.NvPaginationtableValueAccessor","i2.NvPopoverValueAccessor","i2.NvSidebarValueAccessor","i2.NvSplitValueAccessor","i2.NvTimetestValueAccessor","i2.NvToggleValueAccessor","i2.NvTogglebuttongroupValueAccessor"],"mappings":"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"}
1
+ {"version":3,"file":"nova-components.mjs","sources":["../../../projects/nova-components/src/lib/stencil-generated/angular-component-lib/utils.ts","../../../projects/nova-components/src/lib/stencil-generated/components.ts","../../../projects/nova-components/src/lib/stencil-generated/index.ts","../../../projects/nova-components/src/lib/components/nv-datatable-cell.directive.ts","../../../projects/nova-components/src/lib/components/datatable.utils/lazy-signal-initializer.ts","../../../projects/nova-components/src/lib/components/datatable.utils/proxy.ts","../../../projects/nova-components/src/lib/components/datatable.utils/flex-render/context.ts","../../../projects/nova-components/src/lib/components/datatable.utils/flex-render/flags.ts","../../../projects/nova-components/src/lib/components/datatable.utils/flex-render/flex-render-component.ts","../../../projects/nova-components/src/lib/components/datatable.utils/flex-render/flex-render-component-ref.ts","../../../projects/nova-components/src/lib/components/datatable.utils/flex-render/view.ts","../../../projects/nova-components/src/lib/components/datatable.utils/flex-render.ts","../../../projects/nova-components/src/lib/components/datatable.utils/index.ts","../../../projects/nova-components/src/lib/components/nv-datatable.component.ts","../../../projects/nova-components/src/lib/value-accessor.ts","../../../projects/nova-components/src/lib/stencil-generated/component-value-accessors.ts","../../../projects/nova-components/src/lib/providers/notification.service.ts","../../../projects/nova-components/src/lib/providers/notification-service.component.ts","../../../projects/nova-components/src/lib/nova-components.module.ts","../../../projects/nova-components/src/public-api.ts","../../../projects/nova-components/src/nova-components.ts"],"sourcesContent":["/* eslint-disable */\n/* tslint:disable */\nimport { fromEvent } from 'rxjs';\n\nexport const proxyInputs = (Cmp: any, inputs: string[]) => {\n const Prototype = Cmp.prototype;\n inputs.forEach((item) => {\n Object.defineProperty(Prototype, item, {\n get() {\n return this.el[item];\n },\n set(val: any) {\n this.z.runOutsideAngular(() => (this.el[item] = val));\n },\n /**\n * In the event that proxyInputs is called\n * multiple times re-defining these inputs\n * will cause an error to be thrown. As a result\n * we set configurable: true to indicate these\n * properties can be changed.\n */\n configurable: true,\n });\n });\n};\n\nexport const proxyMethods = (Cmp: any, methods: string[]) => {\n const Prototype = Cmp.prototype;\n methods.forEach((methodName) => {\n Prototype[methodName] = function () {\n const args = arguments;\n return this.z.runOutsideAngular(() => this.el[methodName].apply(this.el, args));\n };\n });\n};\n\nexport const proxyOutputs = (instance: any, el: any, events: string[]) => {\n events.forEach((eventName) => (instance[eventName] = fromEvent(el, eventName)));\n};\n\nexport const defineCustomElement = (tagName: string, customElement: any) => {\n if (customElement !== undefined && typeof customElements !== 'undefined' && !customElements.get(tagName)) {\n customElements.define(tagName, customElement);\n }\n};\n\n// tslint:disable-next-line: only-arrow-functions\nexport function ProxyCmp(opts: { defineCustomElementFn?: () => void; inputs?: any; methods?: any }) {\n const decorator = function (cls: any) {\n const { defineCustomElementFn, inputs, methods } = opts;\n\n if (defineCustomElementFn !== undefined) {\n defineCustomElementFn();\n }\n\n if (inputs) {\n proxyInputs(cls, inputs);\n }\n if (methods) {\n proxyMethods(cls, methods);\n }\n return cls;\n };\n return decorator;\n}\n","/* tslint:disable */\n/* auto-generated angular directive proxies */\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, Output, NgZone } from '@angular/core';\n\nimport { ProxyCmp } from './angular-component-lib/utils';\n\nimport { Components } from '@nova-design-system/nova-webcomponents';\n\n\n@ProxyCmp({\n inputs: ['data', 'mode', 'openIndexes'],\n methods: ['open', 'close']\n})\n@Component({\n selector: 'nv-accordion',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['data', 'mode', 'openIndexes'],\n outputs: ['openIndexesChanged'],\n standalone: false\n})\nexport class NvAccordion {\n protected el: HTMLNvAccordionElement;\n @Output() openIndexesChanged = new EventEmitter<CustomEvent<number[]>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvAccordion extends Components.NvAccordion {\n /**\n * Event emitted when an item's open state changes @bind openIndexes\n */\n openIndexesChanged: EventEmitter<CustomEvent<number[]>>;\n}\n\n\n@ProxyCmp({\n inputs: ['disabled', 'itemTitle', 'maxContentHeight', 'mode', 'open', 'subtitle'],\n methods: ['toggle']\n})\n@Component({\n selector: 'nv-accordion-item',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'itemTitle', 'maxContentHeight', 'mode', 'open', 'subtitle'],\n outputs: ['itemToggle'],\n standalone: false\n})\nexport class NvAccordionItem {\n protected el: HTMLNvAccordionItemElement;\n @Output() itemToggle = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvAccordionItem extends Components.NvAccordionItem {\n /**\n * Event emitted on toggle (header click or programmatic change)\n */\n itemToggle: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['color', 'dismissible', 'feedback', 'hasNoAnimations', 'heading', 'hidden', 'icon', 'message', 'preventAutoClose']\n})\n@Component({\n selector: 'nv-alert',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'dismissible', 'feedback', 'hasNoAnimations', 'heading', 'hidden', 'icon', 'message', 'preventAutoClose'],\n outputs: ['hiddenChanged', 'hiddenChangedComplete', 'closeClicked'],\n standalone: false\n})\nexport class NvAlert {\n protected el: HTMLNvAlertElement;\n @Output() hiddenChanged = new EventEmitter<CustomEvent<boolean>>();\n @Output() hiddenChangedComplete = new EventEmitter<CustomEvent<boolean>>();\n @Output() closeClicked = new EventEmitter<CustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvAlert extends Components.NvAlert {\n /**\n * Emits when the 'hidden' prop changes, reflecting a change in visibility.\nPasses hidden value to the detail. @bind hidden\n */\n hiddenChanged: EventEmitter<CustomEvent<boolean>>;\n /**\n * Emitted when the animations complete, detail includes the hidden value.\n */\n hiddenChangedComplete: EventEmitter<CustomEvent<boolean>>;\n /**\n * Emitted when the close button is clicked.\n */\n closeClicked: EventEmitter<CustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n inputs: ['alt', 'color', 'initials', 'large', 'medium', 'size', 'small', 'src', 'text', 'url', 'xlarge', 'xsmall']\n})\n@Component({\n selector: 'nv-avatar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['alt', 'color', 'initials', 'large', 'medium', 'size', 'small', 'src', 'text', 'url', 'xlarge', 'xsmall'],\n standalone: false\n})\nexport class NvAvatar {\n protected el: HTMLNvAvatarElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvAvatar extends Components.NvAvatar {}\n\n\n@ProxyCmp({\n inputs: ['color', 'dismissal', 'dismissible', 'hidden', 'icon', 'iconLocation', 'isIconOnly', 'label', 'leadIcon', 'preventAutoClose']\n})\n@Component({\n selector: 'nv-badge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'dismissal', 'dismissible', 'hidden', 'icon', 'iconLocation', 'isIconOnly', 'label', 'leadIcon', 'preventAutoClose'],\n outputs: ['closeClicked', 'hiddenChanged', 'hiddenChangedComplete'],\n standalone: false\n})\nexport class NvBadge {\n protected el: HTMLNvBadgeElement;\n @Output() closeClicked = new EventEmitter<CustomEvent<void>>();\n @Output() hiddenChanged = new EventEmitter<CustomEvent<boolean>>();\n @Output() hiddenChangedComplete = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvBadge extends Components.NvBadge {\n /**\n * Emitted when the badge is dismissed.\n */\n closeClicked: EventEmitter<CustomEvent<void>>;\n /**\n * Emits when the 'hidden' prop changes, reflecting a change in visibility.\nPasses hidden value to the detail.\n */\n hiddenChanged: EventEmitter<CustomEvent<boolean>>;\n /**\n * Emitted when the animations complete, detail includes the hidden value.\n */\n hiddenChangedComplete: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['current', 'tooltip', 'type']\n})\n@Component({\n selector: 'nv-breadcrumb',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['current', 'tooltip', 'type'],\n standalone: false\n})\nexport class NvBreadcrumb {\n protected el: HTMLNvBreadcrumbElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvBreadcrumb extends Components.NvBreadcrumb {}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-breadcrumbs',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvBreadcrumbs {\n protected el: HTMLNvBreadcrumbsElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvBreadcrumbs extends Components.NvBreadcrumbs {}\n\n\n@ProxyCmp({\n inputs: ['active', 'danger', 'disableTabindex', 'disabled', 'emphasis', 'fluid', 'form', 'loading', 'size', 'type']\n})\n@Component({\n selector: 'nv-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'danger', 'disableTabindex', 'disabled', 'emphasis', 'fluid', 'form', 'loading', 'size', 'type'],\n standalone: false\n})\nexport class NvButton {\n protected el: HTMLNvButtonElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvButton extends Components.NvButton {}\n\n\n@ProxyCmp({\n inputs: ['emphasis', 'fluid', 'orientation', 'size']\n})\n@Component({\n selector: 'nv-buttongroup',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['emphasis', 'fluid', 'orientation', 'size'],\n standalone: false\n})\nexport class NvButtongroup {\n protected el: HTMLNvButtongroupElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvButtongroup extends Components.NvButtongroup {}\n\n\n@ProxyCmp({\n inputs: ['cancelLabel', 'dateFormat', 'disabledDates', 'firstDayOfWeek', 'locale', 'max', 'min', 'numberOfCalendars', 'primaryLabel', 'rangeValue', 'selectionType', 'shortcuts', 'shortcutsPlacement', 'showActions', 'showWeekNumbers', 'singleValue', 'value'],\n methods: ['clear']\n})\n@Component({\n selector: 'nv-calendar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['cancelLabel', 'dateFormat', 'disabledDates', 'firstDayOfWeek', 'locale', 'max', 'min', 'numberOfCalendars', 'primaryLabel', 'rangeValue', 'selectionType', 'shortcuts', 'shortcutsPlacement', 'showActions', 'showWeekNumbers', 'singleValue', 'value'],\n outputs: ['singleDateChange', 'rangeDateChange', 'valueChanged'],\n standalone: false\n})\nexport class NvCalendar {\n protected el: HTMLNvCalendarElement;\n @Output() singleDateChange = new EventEmitter<CustomEvent<string>>();\n @Output() rangeDateChange = new EventEmitter<CustomEvent<HTMLNvCalendarElement['rangeValue']>>();\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvCalendar extends Components.NvCalendar {\n /**\n * Emitted when a single date is selected\n */\n singleDateChange: EventEmitter<CustomEvent<string>>;\n /**\n * Emitted when a date range is selected\n */\n rangeDateChange: EventEmitter<CustomEvent<HTMLNvCalendarElement['rangeValue']>>;\n /**\n * Emitted when the unified value changes @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['size']\n})\n@Component({\n selector: 'nv-col',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['size'],\n standalone: false\n})\nexport class NvCol {\n protected el: HTMLNvColElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvCol extends Components.NvCol {}\n\n\n@ProxyCmp({\n inputs: ['autoGenerateColumns', 'columns', 'data', 'enableGlobalFilter', 'enablePagination', 'enableRowSelection', 'enableSorting', 'fallbackValue', 'globalFilterPosition', 'noColumnsNoDataMessage', 'noDataMessage', 'pageSize', 'pageSizes', 'state']\n})\n@Component({\n selector: 'nv-datagrid',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autoGenerateColumns', 'columns', 'data', 'enableGlobalFilter', 'enablePagination', 'enableRowSelection', 'enableSorting', 'fallbackValue', 'globalFilterPosition', 'noColumnsNoDataMessage', 'noDataMessage', 'pageSize', 'pageSizes', 'state'],\n outputs: ['action', 'selectedRows', 'stateChanged'],\n standalone: false\n})\nexport class NvDatagrid {\n protected el: HTMLNvDatagridElement;\n @Output() action = new EventEmitter<CustomEvent<{ /** * Key action to be performed */ keyAction: string; /** * Details of the action to be performed */ details: any; }>>();\n @Output() selectedRows = new EventEmitter<CustomEvent<any[]>>();\n @Output() stateChanged = new EventEmitter<CustomEvent<{ /** * Global filter search term */ globalFilterSearchTerm: string; /** * Pagination State */ paginationState: { /** * Page Index */ pageIndex: number; /** * Page Size */ pageSize: number; }; /** * Sorting the columns */ sortingState: { /** * Descending */ desc: boolean; /** * Column Id */ id: string; }[]; }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDatagrid extends Components.NvDatagrid {\n /**\n * Emitted when an action is triggered on a cell.\n */\n action: EventEmitter<CustomEvent<{ /** * Key action to be performed */ keyAction: string; /** * Details of the action to be performed */ details: any; }>>;\n /**\n * Emitted when the selection of the rows are changed.\n */\n selectedRows: EventEmitter<CustomEvent<any[]>>;\n /**\n * Emitted when the state is changed @bind state\n */\n stateChanged: EventEmitter<CustomEvent<{ /** * Global filter search term */ globalFilterSearchTerm: string; /** * Pagination State */ paginationState: { /** * Page Index */ pageIndex: number; /** * Page Size */ pageSize: number; }; /** * Sorting the columns */ sortingState: { /** * Descending */ desc: boolean; /** * Column Id */ id: string; }[]; }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['accessor', 'group', 'header', 'repeatTemplate']\n})\n@Component({\n selector: 'nv-datagridcolumn',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [{ name: 'accessor', required: true }, 'group', 'header', 'repeatTemplate'],\n standalone: false\n})\nexport class NvDatagridcolumn {\n protected el: HTMLNvDatagridcolumnElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDatagridcolumn extends Components.NvDatagridcolumn {}\n\n\n@ProxyCmp({\n inputs: ['history', 'lastChange', 'value']\n})\n@Component({\n selector: 'nv-datetest',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['history', 'lastChange', 'value'],\n outputs: ['valueChanged', 'lastChanged', 'historyChanged', 'valueDateChanged'],\n standalone: false\n})\nexport class NvDatetest {\n protected el: HTMLNvDatetestElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<{ start?: INvDatetestDateOnly; end?: INvDatetestDateOnly }>>();\n @Output() lastChanged = new EventEmitter<CustomEvent<{ date: INvDatetestDateOnly }>>();\n @Output() historyChanged = new EventEmitter<CustomEvent<{ dates: INvDatetestDateOnly[] }>>();\n @Output() valueDateChanged = new EventEmitter<CustomEvent<{ start?: Date; end?: Date }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { DateOnly as INvDatetestDateOnly } from '@nova-design-system/nova-webcomponents';\n\nexport declare interface NvDatetest extends Components.NvDatetest {\n /**\n * Emitted when the date range value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<{ start?: INvDatetestDateOnly; end?: INvDatetestDateOnly }>>;\n /**\n * Emitted when the last change date updates.\n */\n lastChanged: EventEmitter<CustomEvent<{ date: INvDatetestDateOnly }>>;\n /**\n * Emitted when the history array changes.\n */\n historyChanged: EventEmitter<CustomEvent<{ dates: INvDatetestDateOnly[] }>>;\n /**\n * Emitted when the date range value changes as Date objects (local time).\n */\n valueDateChanged: EventEmitter<CustomEvent<{ start?: Date; end?: Date }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['history', 'lastChange', 'value']\n})\n@Component({\n selector: 'nv-datetimetest',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['history', 'lastChange', 'value'],\n outputs: ['valueChanged', 'lastChanged', 'historyChanged'],\n standalone: false\n})\nexport class NvDatetimetest {\n protected el: HTMLNvDatetimetestElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<{ start?: Date; end?: Date }>>();\n @Output() lastChanged = new EventEmitter<CustomEvent<{ date: Date }>>();\n @Output() historyChanged = new EventEmitter<CustomEvent<{ dates: Date[] }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDatetimetest extends Components.NvDatetimetest {\n /**\n * Emitted when the date range value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<{ start?: Date; end?: Date }>>;\n /**\n * Emitted when the last change timestamp updates.\n */\n lastChanged: EventEmitter<CustomEvent<{ date: Date }>>;\n /**\n * Emitted when the history array changes.\n */\n historyChanged: EventEmitter<CustomEvent<{ dates: Date[] }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['autofocus', 'clickOutside', 'controlled', 'full', 'open', 'undismissable'],\n methods: ['show', 'close']\n})\n@Component({\n selector: 'nv-dialog',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autofocus', 'clickOutside', 'controlled', 'full', 'open', 'undismissable'],\n outputs: ['openChanged'],\n standalone: false\n})\nexport class NvDialog {\n protected el: HTMLNvDialogElement;\n @Output() openChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDialog extends Components.NvDialog {\n /**\n * Emitted when the dialog is closing in order to allow for cleanup, data-capture, etc. @bind open\n */\n openChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['cancelLabel', 'danger', 'disabled', 'form', 'leadingIcon', 'primaryButtonType', 'primaryLabel', 'trailingIcon', 'undismissable']\n})\n@Component({\n selector: 'nv-dialogfooter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['cancelLabel', 'danger', 'disabled', 'form', 'leadingIcon', 'primaryButtonType', 'primaryLabel', 'trailingIcon', 'undismissable'],\n outputs: ['dialogCanceled', 'dialogPrimaryClicked'],\n standalone: false\n})\nexport class NvDialogfooter {\n protected el: HTMLNvDialogfooterElement;\n @Output() dialogCanceled = new EventEmitter<CustomEvent<void>>();\n @Output() dialogPrimaryClicked = new EventEmitter<CustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDialogfooter extends Components.NvDialogfooter {\n /**\n * Emitted when the cancel button is clicked. This will close the dialog.\n */\n dialogCanceled: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the primary button is clicked. This allows to handle the\nprimary action and potential data capture before closing the dialog.\n */\n dialogPrimaryClicked: EventEmitter<CustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n inputs: ['heading', 'subheading']\n})\n@Component({\n selector: 'nv-dialogheader',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['heading', 'subheading'],\n standalone: false\n})\nexport class NvDialogheader {\n protected el: HTMLNvDialogheaderElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDialogheader extends Components.NvDialogheader {}\n\n\n@ProxyCmp({\n inputs: ['autofocus', 'clickOutside', 'controlled', 'open', 'side', 'size', 'swipeToOpen', 'undismissable', 'width'],\n methods: ['show', 'close']\n})\n@Component({\n selector: 'nv-drawer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autofocus', 'clickOutside', 'controlled', 'open', 'side', 'size', 'swipeToOpen', 'undismissable', 'width'],\n outputs: ['openChanged'],\n standalone: false\n})\nexport class NvDrawer {\n protected el: HTMLNvDrawerElement;\n @Output() openChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDrawer extends Components.NvDrawer {\n /**\n * Emitted when the drawer is closing in order to allow for cleanup, data-capture, etc. @bind open\n */\n openChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['cancelLabel', 'danger', 'disabled', 'form', 'leadingIcon', 'primaryButtonType', 'primaryLabel', 'trailingIcon', 'undismissable']\n})\n@Component({\n selector: 'nv-drawerfooter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['cancelLabel', 'danger', 'disabled', 'form', 'leadingIcon', 'primaryButtonType', 'primaryLabel', 'trailingIcon', 'undismissable'],\n outputs: ['drawerCanceled', 'drawerPrimaryClicked'],\n standalone: false\n})\nexport class NvDrawerfooter {\n protected el: HTMLNvDrawerfooterElement;\n @Output() drawerCanceled = new EventEmitter<CustomEvent<void>>();\n @Output() drawerPrimaryClicked = new EventEmitter<CustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDrawerfooter extends Components.NvDrawerfooter {\n /**\n * Emitted when the cancel button is clicked. This will close the drawer.\n */\n drawerCanceled: EventEmitter<CustomEvent<void>>;\n /**\n * Emitted when the primary button is clicked. This allows to handle the\nprimary action and potential data capture before closing the drawer.\n */\n drawerPrimaryClicked: EventEmitter<CustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n inputs: ['heading', 'subheading']\n})\n@Component({\n selector: 'nv-drawerheader',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['heading', 'subheading'],\n standalone: false\n})\nexport class NvDrawerheader {\n protected el: HTMLNvDrawerheaderElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvDrawerheader extends Components.NvDrawerheader {}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'checked', 'description', 'disabled', 'error', 'errorDescription', 'hideLabel', 'indeterminate', 'inputId', 'label', 'labelBefore', 'labelPlacement', 'message', 'name', 'readonly', 'required', 'validation', 'value']\n})\n@Component({\n selector: 'nv-fieldcheckbox',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'checked', 'description', 'disabled', 'error', 'errorDescription', 'hideLabel', 'indeterminate', 'inputId', 'label', 'labelBefore', 'labelPlacement', 'message', 'name', 'readonly', 'required', 'validation', 'value'],\n outputs: ['checkedChanged'],\n standalone: false\n})\nexport class NvFieldcheckbox {\n protected el: HTMLNvFieldcheckboxElement;\n @Output() checkedChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldcheckbox extends Components.NvFieldcheckbox {\n /**\n * Emits when the checked state changes. @bind checked\n */\n checkedChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'dateFormat', 'description', 'disabled', 'disabledDates', 'error', 'errorDescription', 'firstDayOfWeek', 'fluid', 'inputId', 'label', 'locale', 'max', 'min', 'name', 'numberOfCalendars', 'placeholder', 'readonly', 'required', 'shortcuts', 'shortcutsPlacement', 'showActions', 'showWeekNumbers', 'success', 'value'],\n methods: ['clear']\n})\n@Component({\n selector: 'nv-fielddate',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'dateFormat', 'description', 'disabled', 'disabledDates', 'error', 'errorDescription', 'firstDayOfWeek', 'fluid', 'inputId', 'label', 'locale', 'max', 'min', 'name', 'numberOfCalendars', 'placeholder', 'readonly', 'required', 'shortcuts', 'shortcutsPlacement', 'showActions', 'showWeekNumbers', 'success', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFielddate {\n protected el: HTMLNvFielddateElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFielddate extends Components.NvFielddate {\n /**\n * Emitted when the value changes (unified value binding). @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'dateFormat', 'description', 'disabled', 'disabledDates', 'endInputId', 'endName', 'endPlaceholder', 'error', 'errorDescription', 'firstDayOfWeek', 'fluid', 'label', 'locale', 'max', 'min', 'numberOfCalendars', 'readonly', 'required', 'shortcuts', 'shortcutsPlacement', 'showActions', 'showWeekNumbers', 'startInputId', 'startName', 'startPlaceholder', 'success', 'value'],\n methods: ['clear']\n})\n@Component({\n selector: 'nv-fielddaterange',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'dateFormat', 'description', 'disabled', 'disabledDates', 'endInputId', 'endName', 'endPlaceholder', 'error', 'errorDescription', 'firstDayOfWeek', 'fluid', 'label', 'locale', 'max', 'min', 'numberOfCalendars', 'readonly', 'required', 'shortcuts', 'shortcutsPlacement', 'showActions', 'showWeekNumbers', 'startInputId', 'startName', 'startPlaceholder', 'success', 'value'],\n outputs: ['dateRangeChange', 'valueChanged'],\n standalone: false\n})\nexport class NvFielddaterange {\n protected el: HTMLNvFielddaterangeElement;\n @Output() dateRangeChange = new EventEmitter<CustomEvent<HTMLNvCalendarElementEventMap['rangeDateChange']>>();\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFielddaterange extends Components.NvFielddaterange {\n /**\n * Emitted when the date range changes.\n */\n dateRangeChange: EventEmitter<CustomEvent<HTMLNvCalendarElementEventMap['rangeDateChange']>>;\n /**\n * Emitted when the unified value changes @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'clearable', 'controlledFilter', 'debounceDelay', 'description', 'disabled', 'emptyResult', 'error', 'errorDescription', 'filterMode', 'filterable', 'fluid', 'fuzzyThreshold', 'inputId', 'label', 'locale', 'maxHeight', 'maxResults', 'name', 'openOnSelect', 'options', 'placeholder', 'readonly', 'required', 'startFilterAt', 'truncatedResultsText', 'value', 'workerThreshold'],\n methods: ['clearFilter', 'clear', 'toggleDropdown']\n})\n@Component({\n selector: 'nv-fielddropdown',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'clearable', 'controlledFilter', 'debounceDelay', 'description', 'disabled', 'emptyResult', 'error', 'errorDescription', 'filterMode', 'filterable', 'fluid', 'fuzzyThreshold', 'inputId', 'label', 'locale', 'maxHeight', 'maxResults', 'name', 'openOnSelect', 'options', 'placeholder', 'readonly', 'required', 'startFilterAt', 'truncatedResultsText', 'value', 'workerThreshold'],\n outputs: ['valueChanged', 'filterTextChanged', 'cleared', 'openChanged', 'dropdownItemSelected'],\n standalone: false\n})\nexport class NvFielddropdown {\n protected el: HTMLNvFielddropdownElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n @Output() filterTextChanged = new EventEmitter<CustomEvent<string>>();\n @Output() cleared = new EventEmitter<CustomEvent<void>>();\n @Output() openChanged = new EventEmitter<CustomEvent<HTMLNvPopoverElementEventMap['openChanged']>>();\n @Output() dropdownItemSelected = new EventEmitter<CustomEvent<HTMLNvFielddropdownitemElementEventMap['dropdownItemSelected']>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFielddropdown extends Components.NvFielddropdown {\n /**\n * Emitted when the input value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n /**\n * Event emitted when the filter input value changes.\n */\n filterTextChanged: EventEmitter<CustomEvent<string>>;\n /**\n * Emitted when the field is cleared via the inline clear button or the\nprogrammatic `clear()` method. Useful for reacting to user-initiated\nclears without subscribing to every `valueChanged` emission.\n */\n cleared: EventEmitter<CustomEvent<void>>;\n /**\n * Event emitted when the dropdown opened or closed.\n */\n openChanged: EventEmitter<CustomEvent<HTMLNvPopoverElementEventMap['openChanged']>>;\n /**\n * Event emitted when an item is clicked. Propagation prevented in listener.\n */\n dropdownItemSelected: EventEmitter<CustomEvent<HTMLNvFielddropdownitemElementEventMap['dropdownItemSelected']>>;\n}\n\n\n@ProxyCmp({\n inputs: ['detached', 'disabled', 'label', 'selected', 'value']\n})\n@Component({\n selector: 'nv-fielddropdownitem',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['detached', 'disabled', 'label', 'selected', 'value'],\n outputs: ['dropdownItemSelected'],\n standalone: false\n})\nexport class NvFielddropdownitem {\n protected el: HTMLNvFielddropdownitemElement;\n @Output() dropdownItemSelected = new EventEmitter<CustomEvent<{ /** The value associated with the item. */ label?: string; /** The value associated with the item. */ value: string; /** Is the item detached? */ detached?: boolean; }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFielddropdownitem extends Components.NvFielddropdownitem {\n /**\n * Event emitted when the dropdown item is selected.\n */\n dropdownItemSelected: EventEmitter<CustomEvent<{ /** The value associated with the item. */ label?: string; /** The value associated with the item. */ value: string; /** Is the item detached? */ detached?: boolean; }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['checked', 'description', 'disabled', 'group', 'label', 'value']\n})\n@Component({\n selector: 'nv-fielddropdownitemcheck',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['checked', 'description', 'disabled', 'group', 'label', 'value'],\n outputs: ['itemChecked'],\n standalone: false\n})\nexport class NvFielddropdownitemcheck {\n protected el: HTMLNvFielddropdownitemcheckElement;\n @Output() itemChecked = new EventEmitter<CustomEvent<{ /** * The value associated with this item */ value: string | undefined; /** * Whether the checkbox is currently checked */ checked: boolean; /** * The group this item belongs to, if any */ group?: string | undefined; }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFielddropdownitemcheck extends Components.NvFielddropdownitemcheck {\n /**\n * Event emitted when the checkbox is toggled.\nIt provides details about the current state of the item.\n */\n itemChecked: EventEmitter<CustomEvent<{ /** * The value associated with this item */ value: string | undefined; /** * Whether the checkbox is currently checked */ checked: boolean; /** * The group this item belongs to, if any */ group?: string | undefined; }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'badgeLabel', 'debounceDelay', 'description', 'deselectAllLabel', 'disabled', 'emptyResult', 'enableSelectAll', 'error', 'errorDescription', 'filterMode', 'filterText', 'filterable', 'fluid', 'fuzzyThreshold', 'inputId', 'label', 'locale', 'maxHeight', 'maxResults', 'name', 'open', 'options', 'placeholder', 'readonly', 'required', 'selectAllLabel', 'startFilterAt', 'truncatedResultsText', 'value', 'workerThreshold'],\n methods: ['getFilterText', 'resetFilter', 'getSelectedValues', 'selectAll', 'deselectAll', 'toggleSelectAll']\n})\n@Component({\n selector: 'nv-fieldmultiselect',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'badgeLabel', 'debounceDelay', 'description', 'deselectAllLabel', 'disabled', 'emptyResult', 'enableSelectAll', 'error', 'errorDescription', 'filterMode', 'filterText', 'filterable', 'fluid', 'fuzzyThreshold', 'inputId', 'label', 'locale', 'maxHeight', 'maxResults', 'name', 'open', 'options', 'placeholder', 'readonly', 'required', 'selectAllLabel', 'startFilterAt', 'truncatedResultsText', 'value', 'workerThreshold'],\n outputs: ['valueChanged', 'filterTextChanged'],\n standalone: false\n})\nexport class NvFieldmultiselect {\n protected el: HTMLNvFieldmultiselectElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string[]>>();\n @Output() filterTextChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldmultiselect extends Components.NvFieldmultiselect {\n /**\n * Emitted when the selected values change. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string[]>>;\n /**\n * Emitted when the filter text changes.\n */\n filterTextChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'max', 'message', 'min', 'name', 'placeholder', 'readonly', 'required', 'step', 'success', 'validation', 'value']\n})\n@Component({\n selector: 'nv-fieldnumber',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'max', 'message', 'min', 'name', 'placeholder', 'readonly', 'required', 'step', 'success', 'validation', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldnumber {\n protected el: HTMLNvFieldnumberElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<number | null>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldnumber extends Components.NvFieldnumber {\n /**\n * Emitted when the input value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<number | null>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'hidePasswordIcon', 'inputId', 'label', 'maxlength', 'minlength', 'mode', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'showPassword', 'success', 'value']\n})\n@Component({\n selector: 'nv-fieldpassword',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'hidePasswordIcon', 'inputId', 'label', 'maxlength', 'minlength', 'mode', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'showPassword', 'success', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldpassword {\n protected el: HTMLNvFieldpasswordElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldpassword extends Components.NvFieldpassword {\n /**\n * Emitted when the input value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['autofocus', 'checked', 'description', 'disabled', 'error', 'errorDescription', 'inputId', 'label', 'labelBefore', 'labelPlacement', 'message', 'name', 'value']\n})\n@Component({\n selector: 'nv-fieldradio',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autofocus', 'checked', 'description', 'disabled', 'error', 'errorDescription', 'inputId', 'label', 'labelBefore', 'labelPlacement', 'message', 'name', 'value'],\n outputs: ['checkedChanged'],\n standalone: false\n})\nexport class NvFieldradio {\n protected el: HTMLNvFieldradioElement;\n @Output() checkedChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldradio extends Components.NvFieldradio {\n /**\n * Emits when the checked state changes. @bind checked\n */\n checkedChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'clearable', 'description', 'disabled', 'displayValue', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'message', 'multiple', 'name', 'options', 'readonly', 'required', 'success', 'validation', 'value'],\n methods: ['clear']\n})\n@Component({\n selector: 'nv-fieldselect',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'clearable', 'description', 'disabled', 'displayValue', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'message', 'multiple', 'name', 'options', 'readonly', 'required', 'success', 'validation', 'value'],\n outputs: ['valueChanged', 'cleared'],\n standalone: false\n})\nexport class NvFieldselect {\n protected el: HTMLNvFieldselectElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n @Output() cleared = new EventEmitter<CustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldselect extends Components.NvFieldselect {\n /**\n * Emitted when the selected value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n /**\n * Emitted when the field is cleared via the inline clear button or the\nprogrammatic `clear()` method. Useful for reacting to user-initiated\nclears without subscribing to every `valueChanged` emission.\n */\n cleared: EventEmitter<CustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n inputs: ['description', 'disabled', 'endInputId', 'endName', 'error', 'errorDescription', 'fluid', 'hasField', 'hideLabel', 'label', 'labelAfterValue', 'labelBeforeValue', 'max', 'min', 'name', 'range', 'readonly', 'showTicks', 'snap', 'snapTicks', 'startInputId', 'step', 'success', 'ticks', 'value']\n})\n@Component({\n selector: 'nv-fieldslider',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['description', 'disabled', 'endInputId', 'endName', 'error', 'errorDescription', 'fluid', 'hasField', 'hideLabel', 'label', 'labelAfterValue', 'labelBeforeValue', 'max', 'min', 'name', 'range', 'readonly', 'showTicks', 'snap', 'snapTicks', 'startInputId', 'step', 'success', 'ticks', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldslider {\n protected el: HTMLNvFieldsliderElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<number[]>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldslider extends Components.NvFieldslider {\n /**\n * Emitted when the slider values change. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<number[]>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'maxlength', 'message', 'minlength', 'multiple', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'success', 'textInputType', 'type', 'validation', 'value']\n})\n@Component({\n selector: 'nv-fieldtext',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autocomplete', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'maxlength', 'message', 'minlength', 'multiple', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'success', 'textInputType', 'type', 'validation', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldtext {\n protected el: HTMLNvFieldtextElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldtext extends Components.NvFieldtext {\n /**\n * Emitted when the input value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'autosize', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'maxAutoHeight', 'maxlength', 'message', 'minlength', 'name', 'placeholder', 'readonly', 'required', 'resize', 'rows', 'success', 'validation', 'value']\n})\n@Component({\n selector: 'nv-fieldtextarea',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'autosize', 'description', 'disabled', 'error', 'errorDescription', 'fluid', 'inputId', 'label', 'maxAutoHeight', 'maxlength', 'message', 'minlength', 'name', 'placeholder', 'readonly', 'required', 'resize', 'rows', 'success', 'validation', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldtextarea {\n protected el: HTMLNvFieldtextareaElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldtextarea extends Components.NvFieldtextarea {\n /**\n * Emitted when the textarea value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['ariaRequiredAttr', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'format', 'inputId', 'label', 'max', 'min', 'name', 'open', 'readonly', 'required', 'step', 'success', 'value']\n})\n@Component({\n selector: 'nv-fieldtime',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['ariaRequiredAttr', 'autofocus', 'description', 'disabled', 'error', 'errorDescription', 'format', 'inputId', 'label', 'max', 'min', 'name', 'open', 'readonly', 'required', 'step', 'success', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvFieldtime {\n protected el: HTMLNvFieldtimeElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvFieldtime extends Components.NvFieldtime {\n /**\n * Emit an event when the time value changes.\nThe event detail contains the new time value in the format specified by the format property. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['color', 'large', 'medium', 'name', 'size', 'small', 'xlarge', 'xsmall']\n})\n@Component({\n selector: 'nv-icon',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'large', 'medium', 'name', 'size', 'small', 'xlarge', 'xsmall'],\n standalone: false\n})\nexport class NvIcon {\n protected el: HTMLNvIconElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvIcon extends Components.NvIcon {}\n\n\n@ProxyCmp({\n inputs: ['active', 'disableTabindex', 'disabled', 'emphasis', 'loading', 'name', 'shape', 'size', 'type']\n})\n@Component({\n selector: 'nv-iconbutton',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'disableTabindex', 'disabled', 'emphasis', 'loading', 'name', 'shape', 'size', 'type'],\n standalone: false\n})\nexport class NvIconbutton {\n protected el: HTMLNvIconbuttonElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvIconbutton extends Components.NvIconbutton {}\n\n\n@ProxyCmp({\n inputs: ['color', 'size']\n})\n@Component({\n selector: 'nv-loader',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'size'],\n standalone: false\n})\nexport class NvLoader {\n protected el: HTMLNvLoaderElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvLoader extends Components.NvLoader {}\n\n\n@ProxyCmp({\n inputs: ['disableCloseOnSelect', 'items', 'nested', 'open', 'placement'],\n methods: ['show', 'close']\n})\n@Component({\n selector: 'nv-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disableCloseOnSelect', 'items', 'nested', 'open', 'placement'],\n outputs: ['menuitemSelected'],\n standalone: false\n})\nexport class NvMenu {\n protected el: HTMLNvMenuElement;\n @Output() menuitemSelected = new EventEmitter<CustomEvent<HTMLNvMenuitemElementEventMap['menuitemSelected']>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvMenu extends Components.NvMenu {\n /**\n * Emitted from nv-menuitem elements with the corresponding id and name when\nselected (via click or keyboard). This event listener can be attached to\neither the nv-menu or the nv-menuitem element.\n */\n menuitemSelected: EventEmitter<CustomEvent<HTMLNvMenuitemElementEventMap['menuitemSelected']>>;\n}\n\n\n@ProxyCmp({\n inputs: ['disabled', 'hasSubmenu', 'icon', 'label', 'name', 'shortcut']\n})\n@Component({\n selector: 'nv-menuitem',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'hasSubmenu', 'icon', 'label', 'name', 'shortcut'],\n outputs: ['menuitemSelected'],\n standalone: false\n})\nexport class NvMenuitem {\n protected el: HTMLNvMenuitemElement;\n @Output() menuitemSelected = new EventEmitter<CustomEvent<{ /** * The id of the menu item that was selected. */ id?: HTMLElement['id']; /** * The name of the menu item that was selected. */ name?: string; /** * Indicates if the menu item has a nested submenu. */ hasSubmenu?: boolean; }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvMenuitem extends Components.NvMenuitem {\n /**\n * Fires when the menu item is selected (click or keypress). Will include the\nid and name of the menu item.\n */\n menuitemSelected: EventEmitter<CustomEvent<{ /** * The id of the menu item that was selected. */ id?: HTMLElement['id']; /** * The name of the menu item that was selected. */ name?: string; /** * Indicates if the menu item has a nested submenu. */ hasSubmenu?: boolean; }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['dismissible', 'emphasis', 'feedback', 'heading', 'hidden', 'icon', 'initiallyHidden', 'message', 'uid'],\n methods: ['dismiss', 'show']\n})\n@Component({\n selector: 'nv-notification',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dismissible', 'emphasis', 'feedback', 'heading', 'hidden', 'icon', 'initiallyHidden', 'message', 'uid'],\n outputs: ['hiddenChanged'],\n standalone: false\n})\nexport class NvNotification {\n protected el: HTMLNvNotificationElement;\n @Output() hiddenChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvNotification extends Components.NvNotification {\n /**\n * Emits when the 'hidden' prop changes, reflecting a change in visibility.\nPasses hidden value to the detail. @bind hidden\n */\n hiddenChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['contrastingBorder', 'count', 'emphasis', 'intention', 'size']\n})\n@Component({\n selector: 'nv-notification-bullet',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['contrastingBorder', 'count', 'emphasis', 'intention', 'size'],\n standalone: false\n})\nexport class NvNotificationBullet {\n protected el: HTMLNvNotificationBulletElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvNotificationBullet extends Components.NvNotificationBullet {}\n\n\n@ProxyCmp({\n inputs: ['position']\n})\n@Component({\n selector: 'nv-notificationcontainer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['position'],\n standalone: false\n})\nexport class NvNotificationcontainer {\n protected el: HTMLNvNotificationcontainerElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvNotificationcontainer extends Components.NvNotificationcontainer {}\n\n\n@ProxyCmp({\n inputs: ['currentPage', 'isOnlyIcon', 'nextButtonLabel', 'numEndZoneButtons', 'numMiddleButtons', 'numStartZoneButtons', 'pageSize', 'previousButtonLabel', 'showMiddleZone', 'totalCount']\n})\n@Component({\n selector: 'nv-pagination-nav',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['currentPage', 'isOnlyIcon', 'nextButtonLabel', 'numEndZoneButtons', 'numMiddleButtons', 'numStartZoneButtons', 'pageSize', 'previousButtonLabel', 'showMiddleZone', 'totalCount'],\n outputs: ['currentPageChanged'],\n standalone: false\n})\nexport class NvPaginationNav {\n protected el: HTMLNvPaginationNavElement;\n @Output() currentPageChanged = new EventEmitter<CustomEvent<number>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvPaginationNav extends Components.NvPaginationNav {\n /**\n * Emitted when the current page changes. @bind currentPage\n */\n currentPageChanged: EventEmitter<CustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n inputs: ['hideControls', 'hideFirstLast', 'hidePrevNext', 'labelPage', 'labelPageSizeOption', 'labelTotal', 'pageCount', 'pageIndex', 'pageSize', 'rowCount'],\n methods: ['firstPage', 'previousPage', 'nextPage', 'lastPage', 'setPageIndex', 'setPageSize']\n})\n@Component({\n selector: 'nv-paginationtable',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['hideControls', 'hideFirstLast', 'hidePrevNext', 'labelPage', 'labelPageSizeOption', 'labelTotal', 'pageCount', 'pageIndex', 'pageSize', 'rowCount'],\n outputs: ['pageIndexChanged', 'pageSizeChanged'],\n standalone: false\n})\nexport class NvPaginationtable {\n protected el: HTMLNvPaginationtableElement;\n @Output() pageIndexChanged = new EventEmitter<CustomEvent<number>>();\n @Output() pageSizeChanged = new EventEmitter<CustomEvent<number>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvPaginationtable extends Components.NvPaginationtable {\n /**\n * Emitted when the page index changes. @bind pageIndex\n */\n pageIndexChanged: EventEmitter<CustomEvent<number>>;\n /**\n * Emitted when the page size changes.\n */\n pageSizeChanged: EventEmitter<CustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n inputs: ['disableFlip', 'enterDelay', 'groupName', 'hasArrow', 'nested', 'offset', 'open', 'placement', 'shiftPadding', 'strategy', 'triggerMode'],\n methods: ['show', 'hide', 'toggle']\n})\n@Component({\n selector: 'nv-popover',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disableFlip', 'enterDelay', 'groupName', 'hasArrow', 'nested', 'offset', 'open', 'placement', 'shiftPadding', 'strategy', 'triggerMode'],\n outputs: ['openChanged'],\n standalone: false\n})\nexport class NvPopover {\n protected el: HTMLNvPopoverElement;\n @Output() openChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvPopover extends Components.NvPopover {\n /**\n * Emitted when the popover is toggled. @bind open\n */\n openChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-row',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvRow {\n protected el: HTMLNvRowElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvRow extends Components.NvRow {}\n\n\n@ProxyCmp({\n inputs: ['activePath', 'maxWidth', 'minWidth', 'notificationEmphasis', 'notificationIntention', 'open', 'resizable', 'type', 'width']\n})\n@Component({\n selector: 'nv-sidebar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['activePath', 'maxWidth', 'minWidth', 'notificationEmphasis', 'notificationIntention', 'open', 'resizable', 'type', 'width'],\n outputs: ['openChanged', 'widthChanged'],\n standalone: false\n})\nexport class NvSidebar {\n protected el: HTMLNvSidebarElement;\n @Output() openChanged = new EventEmitter<CustomEvent<boolean>>();\n @Output() widthChanged = new EventEmitter<CustomEvent<number>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebar extends Components.NvSidebar {\n /**\n * Emitted when the open state changes. @bind open\n */\n openChanged: EventEmitter<CustomEvent<boolean>>;\n /**\n * Emitted when the sidebar width changes via the resize handle.\nFires at the end of a drag, or after each keyboard adjustment.\n */\n widthChanged: EventEmitter<CustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-sidebarcontent',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvSidebarcontent {\n protected el: HTMLNvSidebarcontentElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebarcontent extends Components.NvSidebarcontent {}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-sidebardivider',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvSidebardivider {\n protected el: HTMLNvSidebardividerElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebardivider extends Components.NvSidebardivider {}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-sidebarfooter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvSidebarfooter {\n protected el: HTMLNvSidebarfooterElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebarfooter extends Components.NvSidebarfooter {}\n\n\n@ProxyCmp({\n inputs: ['label']\n})\n@Component({\n selector: 'nv-sidebargroup',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['label'],\n standalone: false\n})\nexport class NvSidebargroup {\n protected el: HTMLNvSidebargroupElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebargroup extends Components.NvSidebargroup {}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-sidebarheader',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvSidebarheader {\n protected el: HTMLNvSidebarheaderElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebarheader extends Components.NvSidebarheader {}\n\n\n@ProxyCmp({\n inputs: ['collapsedLogo', 'label', 'logo']\n})\n@Component({\n selector: 'nv-sidebarlogo',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['collapsedLogo', 'label', 'logo'],\n standalone: false\n})\nexport class NvSidebarlogo {\n protected el: HTMLNvSidebarlogoElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebarlogo extends Components.NvSidebarlogo {}\n\n\n@ProxyCmp({\n inputs: ['active', 'collapsible', 'icon', 'notificationCount', 'open']\n})\n@Component({\n selector: 'nv-sidebarnavitem',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'collapsible', 'icon', 'notificationCount', 'open'],\n standalone: false\n})\nexport class NvSidebarnavitem {\n protected el: HTMLNvSidebarnavitemElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebarnavitem extends Components.NvSidebarnavitem {}\n\n\n@ProxyCmp({\n inputs: ['active']\n})\n@Component({\n selector: 'nv-sidebarnavsubitem',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active'],\n standalone: false\n})\nexport class NvSidebarnavsubitem {\n protected el: HTMLNvSidebarnavsubitemElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSidebarnavsubitem extends Components.NvSidebarnavsubitem {}\n\n\n@ProxyCmp({\n inputs: ['direction', 'gutterSize', 'minSizes', 'sizes'],\n methods: ['setSizes', 'getSizes', 'collapse', 'destroy']\n})\n@Component({\n selector: 'nv-split',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['direction', 'gutterSize', 'minSizes', 'sizes'],\n outputs: ['sizesChanged'],\n standalone: false\n})\nexport class NvSplit {\n protected el: HTMLNvSplitElement;\n @Output() sizesChanged = new EventEmitter<CustomEvent<number[]>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvSplit extends Components.NvSplit {\n /**\n * Emitted when pane sizes are updated (drag start/stop or programmatically). @bind sizes\n */\n sizesChanged: EventEmitter<CustomEvent<number[]>>;\n}\n\n\n@ProxyCmp({\n inputs: ['fill', 'flex', 'full', 'gutter', 'vertical']\n})\n@Component({\n selector: 'nv-stack',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['fill', 'flex', 'full', 'gutter', 'vertical'],\n standalone: false\n})\nexport class NvStack {\n protected el: HTMLNvStackElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvStack extends Components.NvStack {}\n\n\n@ProxyCmp({\n inputs: ['emphasis', 'label', 'status']\n})\n@Component({\n selector: 'nv-statusindicator',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['emphasis', 'label', 'status'],\n standalone: false\n})\nexport class NvStatusindicator {\n protected el: HTMLNvStatusindicatorElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvStatusindicator extends Components.NvStatusindicator {}\n\n\n@ProxyCmp({\n})\n@Component({\n selector: 'nv-table',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n standalone: false\n})\nexport class NvTable {\n protected el: HTMLNvTableElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvTable extends Components.NvTable {}\n\n\n@ProxyCmp({\n inputs: ['sortDirection', 'sortable']\n})\n@Component({\n selector: 'nv-tableheader',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['sortDirection', 'sortable'],\n outputs: ['sortDirectionChanged'],\n standalone: false\n})\nexport class NvTableheader {\n protected el: HTMLNvTableheaderElement;\n @Output() sortDirectionChanged = new EventEmitter<CustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvTableheader extends Components.NvTableheader {\n /**\n * Event emitted when the sort direction changes. Payload is the new sort\ndirection.\n */\n sortDirectionChanged: EventEmitter<CustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n inputs: ['color', 'disabled', 'dismissible', 'href', 'label', 'rel', 'target']\n})\n@Component({\n selector: 'nv-tag',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'disabled', 'dismissible', 'href', 'label', 'rel', 'target'],\n outputs: ['dismissed'],\n standalone: false\n})\nexport class NvTag {\n protected el: HTMLNvTagElement;\n @Output() dismissed = new EventEmitter<CustomEvent<{ /** * The label of the dismissed tag. */ label?: string; }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvTag extends Components.NvTag {\n /**\n * Emitted when the dismiss button is clicked.\n */\n dismissed: EventEmitter<CustomEvent<{ /** * The label of the dismissed tag. */ label?: string; }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['history', 'lastChange', 'value']\n})\n@Component({\n selector: 'nv-timetest',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['history', 'lastChange', 'value'],\n outputs: ['valueChanged', 'lastChanged', 'historyChanged', 'valueDateChanged'],\n standalone: false\n})\nexport class NvTimetest {\n protected el: HTMLNvTimetestElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<{ start?: INvTimetestTimeOnly; end?: INvTimetestTimeOnly }>>();\n @Output() lastChanged = new EventEmitter<CustomEvent<{ time: INvTimetestTimeOnly }>>();\n @Output() historyChanged = new EventEmitter<CustomEvent<{ times: INvTimetestTimeOnly[] }>>();\n @Output() valueDateChanged = new EventEmitter<CustomEvent<{ start?: Date; end?: Date }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { TimeOnly as INvTimetestTimeOnly } from '@nova-design-system/nova-webcomponents';\n\nexport declare interface NvTimetest extends Components.NvTimetest {\n /**\n * Emitted when the time range value changes. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<{ start?: INvTimetestTimeOnly; end?: INvTimetestTimeOnly }>>;\n /**\n * Emitted when the last change timestamp updates.\n */\n lastChanged: EventEmitter<CustomEvent<{ time: INvTimetestTimeOnly }>>;\n /**\n * Emitted when the history array changes.\n */\n historyChanged: EventEmitter<CustomEvent<{ times: INvTimetestTimeOnly[] }>>;\n /**\n * Emitted when the time range value changes as Date objects (local time).\n */\n valueDateChanged: EventEmitter<CustomEvent<{ start?: Date; end?: Date }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['checked', 'description', 'disabled', 'hideLabel', 'inputId', 'label', 'labelPlacement', 'name', 'readonly', 'value']\n})\n@Component({\n selector: 'nv-toggle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['checked', 'description', 'disabled', 'hideLabel', 'inputId', 'label', 'labelPlacement', 'name', 'readonly', 'value'],\n outputs: ['checkedChanged'],\n standalone: false\n})\nexport class NvToggle {\n protected el: HTMLNvToggleElement;\n @Output() checkedChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvToggle extends Components.NvToggle {\n /**\n * Emits when the checked state changes. @bind checked\n */\n checkedChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n inputs: ['active', 'disabled', 'emphasis', 'size', 'value']\n})\n@Component({\n selector: 'nv-togglebutton',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'disabled', 'emphasis', 'size', 'value'],\n outputs: ['toggled'],\n standalone: false\n})\nexport class NvTogglebutton {\n protected el: HTMLNvTogglebuttonElement;\n @Output() toggled = new EventEmitter<CustomEvent<{ /** The value associated with the button. */ value: string; /** If the button is active when clicked. */ active: boolean; }>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvTogglebutton extends Components.NvTogglebutton {\n /**\n * Emitted when the button is toggled. Will bubble up so that the\nnv-togglebuttongroup can update the state.\n */\n toggled: EventEmitter<CustomEvent<{ /** The value associated with the button. */ value: string; /** If the button is active when clicked. */ active: boolean; }>>;\n}\n\n\n@ProxyCmp({\n inputs: ['emphasis', 'enforceValue', 'exclusive', 'size', 'value']\n})\n@Component({\n selector: 'nv-togglebuttongroup',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['emphasis', 'enforceValue', 'exclusive', 'size', 'value'],\n outputs: ['valueChanged'],\n standalone: false\n})\nexport class NvTogglebuttongroup {\n protected el: HTMLNvTogglebuttongroupElement;\n @Output() valueChanged = new EventEmitter<CustomEvent<string[]>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvTogglebuttongroup extends Components.NvTogglebuttongroup {\n /**\n * Emitted when the selected toggle buttons change. @bind value\n */\n valueChanged: EventEmitter<CustomEvent<string[]>>;\n}\n\n\n@ProxyCmp({\n inputs: ['enterDelay', 'message', 'placement', 'strategy']\n})\n@Component({\n selector: 'nv-tooltip',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['enterDelay', 'message', 'placement', 'strategy'],\n outputs: ['openChanged'],\n standalone: false\n})\nexport class NvTooltip {\n protected el: HTMLNvTooltipElement;\n @Output() openChanged = new EventEmitter<CustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface NvTooltip extends Components.NvTooltip {\n /**\n * Emitted when the tooltip is opened or closed. Bubbles up from the popover\nelement.\n */\n openChanged: EventEmitter<CustomEvent<boolean>>;\n}\n\n\n","\nimport * as d from './components';\n\nexport const DIRECTIVES = [\n d.NvAccordion,\n d.NvAccordionItem,\n d.NvAlert,\n d.NvAvatar,\n d.NvBadge,\n d.NvBreadcrumb,\n d.NvBreadcrumbs,\n d.NvButton,\n d.NvButtongroup,\n d.NvCalendar,\n d.NvCol,\n d.NvDatagrid,\n d.NvDatagridcolumn,\n d.NvDatetest,\n d.NvDatetimetest,\n d.NvDialog,\n d.NvDialogfooter,\n d.NvDialogheader,\n d.NvDrawer,\n d.NvDrawerfooter,\n d.NvDrawerheader,\n d.NvFieldcheckbox,\n d.NvFielddate,\n d.NvFielddaterange,\n d.NvFielddropdown,\n d.NvFielddropdownitem,\n d.NvFielddropdownitemcheck,\n d.NvFieldmultiselect,\n d.NvFieldnumber,\n d.NvFieldpassword,\n d.NvFieldradio,\n d.NvFieldselect,\n d.NvFieldslider,\n d.NvFieldtext,\n d.NvFieldtextarea,\n d.NvFieldtime,\n d.NvIcon,\n d.NvIconbutton,\n d.NvLoader,\n d.NvMenu,\n d.NvMenuitem,\n d.NvNotification,\n d.NvNotificationBullet,\n d.NvNotificationcontainer,\n d.NvPaginationNav,\n d.NvPaginationtable,\n d.NvPopover,\n d.NvRow,\n d.NvSidebar,\n d.NvSidebarcontent,\n d.NvSidebardivider,\n d.NvSidebarfooter,\n d.NvSidebargroup,\n d.NvSidebarheader,\n d.NvSidebarlogo,\n d.NvSidebarnavitem,\n d.NvSidebarnavsubitem,\n d.NvSplit,\n d.NvStack,\n d.NvStatusindicator,\n d.NvTable,\n d.NvTableheader,\n d.NvTag,\n d.NvTimetest,\n d.NvToggle,\n d.NvTogglebutton,\n d.NvTogglebuttongroup,\n d.NvTooltip\n];\n","import { Directive, Input, TemplateRef } from '@angular/core';\nimport type { CellContext } from './datatable.utils';\n\n/**\n * Context type for cell templates - uses TanStack Table's CellContext directly\n */\nexport type NvDatatableCellContext<T, V> = {\n /** The cell's actual value */\n $implicit: CellContext<T, V>;\n};\n\n/**\n * Directive to mark ng-templates as cell templates for specific fields.\n *\n * @example\n * ```html\n * <nv-datatable [columns]=\"columns\" [rows]=\"data\">\n * <ng-template nvDatatableCell=\"name\" let-context>\n * <div class=\"font-semibold\">{{ context.value }}</div>\n * </ng-template>\n *\n * <ng-template nvDatatableCell=\"price\" let-context>\n * <span class=\"font-mono\">${{ context.value }}</span>\n * </ng-template>\n * </nv-datatable>\n * ```\n */\n@Directive({\n selector: 'ng-template[nvDatatableCell]',\n standalone: true,\n})\nexport class NvDatatableCellDirective<T, V> {\n /**\n * The field name this template should render.\n * Should match a field in your column definitions.\n */\n @Input({ required: true }) nvDatatableCell!: string;\n\n constructor(public template: TemplateRef<NvDatatableCellContext<T, V>>) {}\n}\n","import { untracked } from '@angular/core'\n\n/**\n * Implementation from @tanstack/angular-query\n * {@link https://github.com/TanStack/query/blob/main/packages/angular-query-experimental/src/util/lazy-init/lazy-init.ts}\n */\nexport function lazyInit<T extends object>(initializer: () => T): T {\n let object: T | null = null\n\n const initializeObject = () => {\n if (!object) {\n object = untracked(() => initializer())\n }\n }\n\n queueMicrotask(() => initializeObject())\n\n const table = () => {}\n\n return new Proxy<T>(table as T, {\n apply(target: T, thisArg: any, argArray: any[]): any {\n initializeObject()\n if (typeof object === 'function') {\n return Reflect.apply(object, thisArg, argArray)\n }\n return Reflect.apply(target as any, thisArg, argArray)\n },\n get(_, prop, receiver) {\n initializeObject()\n return Reflect.get(object as T, prop, receiver)\n },\n has(_, prop) {\n initializeObject()\n return Reflect.has(object as T, prop)\n },\n ownKeys() {\n initializeObject()\n return Reflect.ownKeys(object as T)\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n }\n },\n })\n}\n","import { computed, type Signal, untracked } from '@angular/core'\nimport { type Table } from '@tanstack/table-core'\n\ntype TableSignal<T> = Table<T> & Signal<Table<T>>\n\nexport function proxifyTable<T>(\n tableSignal: Signal<Table<T>>\n): Table<T> & Signal<Table<T>> {\n const internalState = tableSignal as TableSignal<T>\n\n return new Proxy(internalState, {\n apply() {\n return tableSignal()\n },\n get(target, property: keyof Table<T>): any {\n if (target[property]) {\n return target[property]\n }\n const table = untracked(tableSignal)\n /**\n * Attempt to convert all accessors into computed ones,\n * excluding handlers as they do not retain any reactive value\n */\n if (\n property.startsWith('get') &&\n !property.endsWith('Handler')\n // e.g. getCoreRowModel, getSelectedRowModel etc.\n // We need that after a signal change even `rowModel` may mark the view as dirty.\n // This allows to always get the latest `getContext` value while using flexRender\n // && !property.endsWith('Model')\n ) {\n const maybeFn = table[property] as Function | never\n if (typeof maybeFn === 'function') {\n Object.defineProperty(target, property, {\n value: toComputed(tableSignal, maybeFn),\n configurable: true,\n enumerable: true,\n })\n return target[property]\n }\n }\n // @ts-expect-error\n return (target[property] = table[property])\n },\n has(_, prop: keyof Table<T>) {\n return !!untracked(tableSignal)[prop]\n },\n ownKeys() {\n return Reflect.ownKeys(untracked(tableSignal))\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n }\n },\n })\n}\n\n/**\n * Here we'll handle all type of accessors:\n * - 0 argument -> e.g. table.getCanNextPage())\n * - 0~1 arguments -> e.g. table.getIsSomeRowsPinned(position?)\n * - 1 required argument -> e.g. table.getColumn(columnId)\n * - 1+ argument -> e.g. table.getRow(id, searchAll?)\n *\n * Since we are not able to detect automatically the accessors parameters,\n * we'll wrap all accessors into a cached function wrapping a computed\n * that return it's value based on the given parameters\n */\nfunction toComputed<T>(signal: Signal<Table<T>>, fn: Function) {\n const hasArgs = fn.length > 0\n if (!hasArgs) {\n return computed(() => {\n void signal()\n return fn()\n })\n }\n\n const computedCache: Record<string, Signal<unknown>> = {}\n\n return (...argsArray: any[]) => {\n const serializedArgs = serializeArgs(...argsArray)\n if (computedCache.hasOwnProperty(serializedArgs)) {\n return computedCache[serializedArgs]?.()\n }\n const computedSignal = computed(() => {\n void signal()\n return fn(...argsArray)\n })\n\n computedCache[serializedArgs] = computedSignal\n\n return computedSignal()\n }\n}\n\nfunction serializeArgs(...args: any[]) {\n return JSON.stringify(args)\n}\n","import { inject, InjectionToken } from '@angular/core'\n\nexport const FlexRenderComponentProps = new InjectionToken<\n NonNullable<unknown>\n>('[@tanstack/angular-table] Flex render component context props')\n\nexport function injectFlexRenderContext<T extends NonNullable<unknown>>(): T {\n return inject<T>(FlexRenderComponentProps)\n}\n","/**\n * Flags used to manage and optimize the rendering lifecycle of content of the cell,\n * while using FlexRenderDirective.\n */\nexport enum FlexRenderFlags {\n /**\n * Indicates that the view is being created for the first time or will be cleared during the next update phase.\n * This is the initial state and will transition after the first ngDoCheck.\n */\n ViewFirstRender = 1 << 0,\n /**\n * Represents a state where the view is not dirty, meaning no changes require rendering updates.\n */\n Pristine = 1 << 1,\n /**\n * Indicates the `content` property has been modified or the view requires a complete re-render.\n * When this flag is enabled, the view will be cleared and recreated from scratch.\n */\n ContentChanged = 1 << 2,\n /**\n * Indicates that the `props` property reference has changed.\n * When this flag is enabled, the view context is updated based on the type of the content.\n *\n * For Component view, inputs will be updated and view will be marked as dirty.\n * For TemplateRef and primitive values, view will be marked as dirty\n */\n PropsReferenceChanged = 1 << 3,\n /**\n * Indicates that the current rendered view needs to be checked for changes.\n */\n DirtyCheck = 1 << 4,\n /**\n * Indicates that a signal within the `content(props)` result has changed\n */\n DirtySignal = 1 << 5,\n /**\n * Indicates that the first render effect has been checked at least one time.\n */\n RenderEffectChecked = 1 << 6,\n}\n","import {\n ComponentMirror,\n Injector,\n InputSignal,\n OutputEmitterRef,\n reflectComponentType,\n Type,\n} from '@angular/core'\n\ntype Inputs<T> = {\n [K in keyof T as T[K] extends InputSignal<infer R>\n ? K\n : never]?: T[K] extends InputSignal<infer R> ? R : never\n}\n\ntype Outputs<T> = {\n [K in keyof T as T[K] extends OutputEmitterRef<infer R>\n ? K\n : never]?: T[K] extends OutputEmitterRef<infer R>\n ? OutputEmitterRef<R>['emit']\n : never\n}\n\ntype OptionalKeys<T, K = keyof T> = K extends keyof T\n ? T[K] extends Required<T>[K]\n ? undefined extends T[K]\n ? K\n : never\n : K\n : never\n\ninterface FlexRenderRequiredOptions<\n TInputs extends Record<string, any>,\n TOutputs extends Record<string, any>,\n> {\n /**\n * Component instance inputs. They will be set via [componentRef.setInput API](https://angular.dev/api/core/ComponentRef#setInput)\n */\n inputs: TInputs\n /**\n * Component instance outputs.\n */\n outputs?: TOutputs\n /**\n * Optional {@link Injector} that will be used when rendering the component\n */\n injector?: Injector\n}\n\ninterface FlexRenderOptions<\n TInputs extends Record<string, any>,\n TOutputs extends Record<string, any>,\n> {\n /**\n * Component instance inputs. They will be set via [componentRef.setInput API](https://angular.dev/api/core/ComponentRef#setInput)\n */\n inputs?: TInputs\n /**\n * Component instance outputs.\n */\n outputs?: TOutputs\n /**\n * Optional {@link Injector} that will be used when rendering the component\n */\n injector?: Injector\n}\n\n/**\n * Helper function to create a [@link FlexRenderComponent] instance, with better type-safety.\n *\n * - options object must be passed when the given component instance contains at least one required signal input.\n * - options/inputs is typed with the given component inputs\n * - options/outputs is typed with the given component outputs\n */\nexport function flexRenderComponent<\n TComponent = any,\n TInputs extends Inputs<TComponent> = Inputs<TComponent>,\n TOutputs extends Outputs<TComponent> = Outputs<TComponent>,\n>(\n component: Type<TComponent>,\n ...options: OptionalKeys<TInputs> extends never\n ? [FlexRenderOptions<TInputs, TOutputs>?]\n : [FlexRenderRequiredOptions<TInputs, TOutputs>]\n) {\n const { inputs, injector, outputs } = options?.[0] ?? {}\n return new FlexRenderComponent(component, inputs, injector, outputs)\n}\n\n/**\n * Wrapper class for a component that will be used as content for {@link FlexRenderDirective}\n *\n * Prefer {@link flexRenderComponent} helper for better type-safety\n */\nexport class FlexRenderComponent<TComponent = any> {\n readonly mirror: ComponentMirror<TComponent>\n readonly allowedInputNames: string[] = []\n readonly allowedOutputNames: string[] = []\n\n constructor(\n readonly component: Type<TComponent>,\n readonly inputs?: Inputs<TComponent>,\n readonly injector?: Injector,\n readonly outputs?: Outputs<TComponent>\n ) {\n const mirror = reflectComponentType(component)\n if (!mirror) {\n throw new Error(\n `[@tanstack-table/angular] The provided symbol is not a component`\n )\n }\n this.mirror = mirror\n for (const input of this.mirror.inputs) {\n this.allowedInputNames.push(input.propName)\n }\n for (const output of this.mirror.outputs) {\n this.allowedOutputNames.push(output.propName)\n }\n }\n}\n","import {\n ChangeDetectorRef,\n ComponentRef,\n inject,\n Injectable,\n Injector,\n KeyValueDiffer,\n KeyValueDiffers,\n OutputEmitterRef,\n OutputRefSubscription,\n ViewContainerRef,\n} from '@angular/core'\nimport { FlexRenderComponent } from './flex-render-component'\n\n@Injectable()\nexport class FlexRenderComponentFactory {\n #viewContainerRef = inject(ViewContainerRef)\n\n createComponent<T>(\n flexRenderComponent: FlexRenderComponent<T>,\n componentInjector: Injector\n ): FlexRenderComponentRef<T> {\n const componentRef = this.#viewContainerRef.createComponent(\n flexRenderComponent.component,\n {\n injector: componentInjector,\n }\n )\n const view = new FlexRenderComponentRef(\n componentRef,\n flexRenderComponent,\n componentInjector\n )\n\n const { inputs, outputs } = flexRenderComponent\n\n if (inputs) view.setInputs(inputs)\n if (outputs) view.setOutputs(outputs)\n\n return view\n }\n}\n\nexport class FlexRenderComponentRef<T> {\n readonly #keyValueDiffersFactory: KeyValueDiffers\n #componentData: FlexRenderComponent<T>\n #inputValueDiffer: KeyValueDiffer<string, unknown>\n\n readonly #outputRegistry: FlexRenderComponentOutputManager\n\n constructor(\n readonly componentRef: ComponentRef<T>,\n componentData: FlexRenderComponent<T>,\n readonly componentInjector: Injector\n ) {\n this.#componentData = componentData\n this.#keyValueDiffersFactory = componentInjector.get(KeyValueDiffers)\n\n this.#outputRegistry = new FlexRenderComponentOutputManager(\n this.#keyValueDiffersFactory,\n this.outputs\n )\n\n this.#inputValueDiffer = this.#keyValueDiffersFactory\n .find(this.inputs)\n .create()\n this.#inputValueDiffer.diff(this.inputs)\n\n this.componentRef.onDestroy(() => this.#outputRegistry.unsubscribeAll())\n }\n\n get component() {\n return this.#componentData.component\n }\n\n get inputs() {\n return this.#componentData.inputs ?? {}\n }\n\n get outputs() {\n return this.#componentData.outputs ?? {}\n }\n\n /**\n * Get component input and output diff by the given item\n */\n diff(item: FlexRenderComponent<T>) {\n return {\n inputDiff: this.#inputValueDiffer.diff(item.inputs ?? {}),\n outputDiff: this.#outputRegistry.diff(item.outputs ?? {}),\n }\n }\n /**\n *\n * @param compare Whether the current ref component instance is the same as the given one\n */\n eqType(compare: FlexRenderComponent<T>): boolean {\n return compare.component === this.component\n }\n\n /**\n * Tries to update current component refs input by the new given content component.\n */\n update(content: FlexRenderComponent<T>) {\n const eq = this.eqType(content)\n if (!eq) return\n const { inputDiff, outputDiff } = this.diff(content)\n if (inputDiff) {\n inputDiff.forEachAddedItem(item =>\n this.setInput(item.key, item.currentValue)\n )\n inputDiff.forEachChangedItem(item =>\n this.setInput(item.key, item.currentValue)\n )\n inputDiff.forEachRemovedItem(item => this.setInput(item.key, undefined))\n }\n if (outputDiff) {\n outputDiff.forEachAddedItem(item => {\n this.setOutput(item.key, item.currentValue)\n })\n outputDiff.forEachChangedItem(item => {\n if (item.currentValue) {\n this.#outputRegistry.setListener(item.key, item.currentValue)\n } else {\n this.#outputRegistry.unsubscribe(item.key)\n }\n })\n outputDiff.forEachRemovedItem(item => {\n this.#outputRegistry.unsubscribe(item.key)\n })\n }\n\n this.#componentData = content\n }\n\n markAsDirty(): void {\n this.componentRef.injector.get(ChangeDetectorRef).markForCheck()\n }\n\n setInputs(inputs: Record<string, unknown>) {\n for (const prop in inputs) {\n this.setInput(prop, inputs[prop])\n }\n }\n\n setInput(key: string, value: unknown) {\n if (this.#componentData.allowedInputNames.includes(key)) {\n this.componentRef.setInput(key, value)\n }\n }\n\n setOutputs(\n outputs: Record<\n string,\n OutputEmitterRef<unknown>['emit'] | null | undefined\n >\n ) {\n this.#outputRegistry.unsubscribeAll()\n for (const prop in outputs) {\n this.setOutput(prop, outputs[prop])\n }\n }\n\n setOutput(\n outputName: string,\n emit: OutputEmitterRef<unknown>['emit'] | undefined | null\n ): void {\n if (!this.#componentData.allowedOutputNames.includes(outputName)) return\n if (!emit) {\n this.#outputRegistry.unsubscribe(outputName)\n return\n }\n\n const hasListener = this.#outputRegistry.hasListener(outputName)\n this.#outputRegistry.setListener(outputName, emit)\n\n if (hasListener) {\n return\n }\n\n const instance = this.componentRef.instance\n const output = instance[outputName as keyof typeof instance]\n if (output && output instanceof OutputEmitterRef) {\n output.subscribe(value => {\n this.#outputRegistry.getListener(outputName)?.(value)\n })\n }\n }\n}\n\nclass FlexRenderComponentOutputManager {\n readonly #outputSubscribers: Record<string, OutputRefSubscription> = {}\n readonly #outputListeners: Record<string, (...args: any[]) => void> = {}\n\n readonly #valueDiffer: KeyValueDiffer<\n string,\n undefined | null | OutputEmitterRef<unknown>['emit']\n >\n\n constructor(keyValueDiffers: KeyValueDiffers, initialOutputs: any) {\n this.#valueDiffer = keyValueDiffers.find(initialOutputs).create()\n if (initialOutputs) {\n this.#valueDiffer.diff(initialOutputs)\n }\n }\n\n hasListener(outputName: string) {\n return outputName in this.#outputListeners\n }\n\n setListener(outputName: string, callback: (...args: any[]) => void) {\n this.#outputListeners[outputName] = callback\n }\n\n getListener(outputName: string) {\n return this.#outputListeners[outputName]\n }\n\n unsubscribeAll(): void {\n for (const prop in this.#outputSubscribers) {\n this.unsubscribe(prop)\n }\n }\n\n unsubscribe(outputName: string) {\n if (outputName in this.#outputSubscribers) {\n this.#outputSubscribers[outputName]?.unsubscribe()\n delete this.#outputSubscribers[outputName]\n delete this.#outputListeners[outputName]\n }\n }\n\n diff(outputs: Record<string, OutputEmitterRef<unknown>['emit'] | undefined>) {\n return this.#valueDiffer.diff(outputs ?? {})\n }\n}\n","import { FlexRenderComponentRef } from './flex-render-component-ref'\nimport { EmbeddedViewRef, TemplateRef, Type } from '@angular/core'\nimport type { FlexRenderContent } from '../flex-render'\nimport { FlexRenderComponent } from './flex-render-component'\n\nexport type FlexRenderTypedContent =\n | { kind: 'null' }\n | {\n kind: 'primitive'\n content: string | number | Record<string, any>\n }\n | { kind: 'flexRenderComponent'; content: FlexRenderComponent<unknown> }\n | { kind: 'templateRef'; content: TemplateRef<unknown> }\n | { kind: 'component'; content: Type<unknown> }\n\nexport function mapToFlexRenderTypedContent(\n content: FlexRenderContent<any>\n): FlexRenderTypedContent {\n if (content === null || content === undefined) {\n return { kind: 'null' }\n }\n if (typeof content === 'string' || typeof content === 'number') {\n return { kind: 'primitive', content }\n }\n if (content instanceof FlexRenderComponent) {\n return { kind: 'flexRenderComponent', content }\n } else if (content instanceof TemplateRef) {\n return { kind: 'templateRef', content }\n } else if (content instanceof Type) {\n return { kind: 'component', content }\n } else {\n return { kind: 'primitive', content }\n }\n}\n\nexport abstract class FlexRenderView<\n TView extends FlexRenderComponentRef<any> | EmbeddedViewRef<unknown> | null,\n> {\n readonly view: TView\n #previousContent: FlexRenderTypedContent | undefined\n #content: FlexRenderTypedContent\n\n protected constructor(\n initialContent: Exclude<FlexRenderTypedContent, { kind: 'null' }>,\n view: TView\n ) {\n this.#content = initialContent\n this.view = view\n }\n\n get previousContent(): FlexRenderTypedContent {\n return this.#previousContent ?? { kind: 'null' }\n }\n\n get content() {\n return this.#content\n }\n\n set content(content: FlexRenderTypedContent) {\n this.#previousContent = this.#content\n this.#content = content\n }\n\n abstract updateProps(props: Record<string, any>): void\n\n abstract dirtyCheck(): void\n\n abstract onDestroy(callback: Function): void\n}\n\nexport class FlexRenderTemplateView extends FlexRenderView<\n EmbeddedViewRef<unknown>\n> {\n constructor(\n initialContent: Extract<\n FlexRenderTypedContent,\n { kind: 'primitive' | 'templateRef' }\n >,\n view: EmbeddedViewRef<unknown>\n ) {\n super(initialContent, view)\n }\n\n override updateProps(props: Record<string, any>) {\n this.view.markForCheck()\n }\n\n override dirtyCheck() {\n // Basically a no-op. When the view is created via EmbeddedViewRef, we don't need to do any manual update\n // since this type of content has a proxy as a context, then every time the root component is checked for changes,\n // the property getter will be re-evaluated.\n //\n // If in a future we need to manually mark the view as dirty, just uncomment next line\n // this.view.markForCheck()\n }\n\n override onDestroy(callback: Function) {\n this.view.onDestroy(callback)\n }\n}\n\nexport class FlexRenderComponentView extends FlexRenderView<\n FlexRenderComponentRef<unknown>\n> {\n constructor(\n initialContent: Extract<\n FlexRenderTypedContent,\n { kind: 'component' | 'flexRenderComponent' }\n >,\n view: FlexRenderComponentRef<unknown>\n ) {\n super(initialContent, view)\n }\n\n override updateProps(props: Record<string, any>) {\n switch (this.content.kind) {\n case 'component': {\n this.view.setInputs(props)\n break\n }\n case 'flexRenderComponent': {\n // No-op. When FlexRenderFlags.PropsReferenceChanged is set,\n // FlexRenderComponent will be updated into `dirtyCheck`.\n break\n }\n }\n }\n\n override dirtyCheck() {\n switch (this.content.kind) {\n case 'component': {\n // Component context is currently valuated with the cell context. Since it's reference\n // shouldn't change, we force mark the component as dirty in order to re-evaluate function invocation in view.\n // NOTE: this should behave like having a component with ChangeDetectionStrategy.Default\n this.view.markAsDirty()\n break\n }\n case 'flexRenderComponent': {\n // Given context instance will always have a different reference than the previous one,\n // so instead of recreating the entire view, we will only update the current view\n if (this.view.eqType(this.content.content)) {\n this.view.update(this.content.content)\n }\n this.view.markAsDirty()\n break\n }\n }\n }\n\n override onDestroy(callback: Function) {\n this.view.componentRef.onDestroy(callback)\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n DoCheck,\n effect,\n type EffectRef,\n Inject,\n inject,\n Injector,\n Input,\n OnChanges,\n runInInjectionContext,\n SimpleChanges,\n TemplateRef,\n Type,\n ViewContainerRef,\n} from '@angular/core'\nimport { FlexRenderComponentProps } from './flex-render/context'\nimport { FlexRenderFlags } from './flex-render/flags'\nimport {\n flexRenderComponent,\n FlexRenderComponent,\n} from './flex-render/flex-render-component'\nimport { FlexRenderComponentFactory } from './flex-render/flex-render-component-ref'\nimport {\n FlexRenderComponentView,\n FlexRenderTemplateView,\n type FlexRenderTypedContent,\n FlexRenderView,\n mapToFlexRenderTypedContent,\n} from './flex-render/view'\nimport { memo } from '@tanstack/table-core'\n\nexport {\n injectFlexRenderContext,\n type FlexRenderComponentProps,\n} from './flex-render/context'\n\nexport type FlexRenderContent<TProps extends NonNullable<unknown>> =\n | string\n | number\n | Type<TProps>\n | FlexRenderComponent<TProps>\n | TemplateRef<{ $implicit: TProps }>\n | null\n | Record<any, any>\n | undefined\n\n@Directive({\n selector: '[flexRender]',\n standalone: true,\n providers: [FlexRenderComponentFactory],\n})\nexport class FlexRenderDirective<TProps extends NonNullable<unknown>>\n implements OnChanges, DoCheck\n{\n readonly #flexRenderComponentFactory = inject(FlexRenderComponentFactory)\n readonly #changeDetectorRef = inject(ChangeDetectorRef)\n\n @Input({ required: true, alias: 'flexRender' })\n content:\n | number\n | string\n | ((props: TProps) => FlexRenderContent<TProps>)\n | null\n | undefined = undefined\n\n @Input({ required: true, alias: 'flexRenderProps' })\n props: TProps = {} as TProps\n\n @Input({ required: false, alias: 'flexRenderInjector' })\n injector: Injector = inject(Injector)\n\n renderFlags = FlexRenderFlags.ViewFirstRender\n renderView: FlexRenderView<any> | null = null\n\n readonly #latestContent = () => {\n const { content, props } = this\n return typeof content !== 'function'\n ? content\n : runInInjectionContext(this.injector, () => content(props))\n }\n\n #getContentValue = memo(\n () => [this.#latestContent(), this.props, this.content],\n latestContent => {\n return mapToFlexRenderTypedContent(latestContent)\n },\n { key: 'flexRenderContentValue', debug: () => false }\n )\n\n constructor(\n @Inject(ViewContainerRef)\n private readonly viewContainerRef: ViewContainerRef,\n @Inject(TemplateRef)\n private readonly templateRef: TemplateRef<any>\n ) {}\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['props']) {\n this.renderFlags |= FlexRenderFlags.PropsReferenceChanged\n }\n if (changes['content']) {\n this.renderFlags |=\n FlexRenderFlags.ContentChanged | FlexRenderFlags.ViewFirstRender\n this.update()\n }\n }\n\n ngDoCheck(): void {\n if (this.renderFlags & FlexRenderFlags.ViewFirstRender) {\n // On the initial render, the view is created during the `ngOnChanges` hook.\n // Since `ngDoCheck` is called immediately afterward, there's no need to check for changes in this phase.\n this.renderFlags &= ~FlexRenderFlags.ViewFirstRender\n return\n }\n\n this.renderFlags |= FlexRenderFlags.DirtyCheck\n\n const latestContent = this.#getContentValue()\n if (latestContent.kind === 'null' || !this.renderView) {\n this.renderFlags |= FlexRenderFlags.ContentChanged\n } else {\n this.renderView.content = latestContent\n const { kind: previousKind } = this.renderView.previousContent\n if (latestContent.kind !== previousKind) {\n this.renderFlags |= FlexRenderFlags.ContentChanged\n }\n }\n this.update()\n }\n\n update() {\n if (\n this.renderFlags &\n (FlexRenderFlags.ContentChanged | FlexRenderFlags.ViewFirstRender)\n ) {\n this.render()\n return\n }\n if (this.renderFlags & FlexRenderFlags.PropsReferenceChanged) {\n if (this.renderView) this.renderView.updateProps(this.props)\n this.renderFlags &= ~FlexRenderFlags.PropsReferenceChanged\n }\n if (\n this.renderFlags &\n (FlexRenderFlags.DirtyCheck | FlexRenderFlags.DirtySignal)\n ) {\n if (this.renderView) this.renderView.dirtyCheck()\n this.renderFlags &= ~(\n FlexRenderFlags.DirtyCheck | FlexRenderFlags.DirtySignal\n )\n }\n }\n\n #currentEffectRef: EffectRef | null = null\n\n render() {\n if (this.#shouldRecreateEntireView() && this.#currentEffectRef) {\n this.#currentEffectRef.destroy()\n this.#currentEffectRef = null\n this.renderFlags &= ~FlexRenderFlags.RenderEffectChecked\n }\n\n this.viewContainerRef.clear()\n this.renderFlags =\n FlexRenderFlags.Pristine |\n (this.renderFlags & FlexRenderFlags.ViewFirstRender) |\n (this.renderFlags & FlexRenderFlags.RenderEffectChecked)\n\n const resolvedContent = this.#getContentValue()\n if (resolvedContent.kind === 'null') {\n this.renderView = null\n } else {\n this.renderView = this.#renderViewByContent(resolvedContent)\n }\n\n // If the content is a function `content(props)`, we initialize an effect\n // in order to react to changes if the given definition use signals.\n if (!this.#currentEffectRef && typeof this.content === 'function') {\n this.#currentEffectRef = effect(\n () => {\n this.#latestContent()\n if (!(this.renderFlags & FlexRenderFlags.RenderEffectChecked)) {\n this.renderFlags |= FlexRenderFlags.RenderEffectChecked\n return\n }\n this.renderFlags |= FlexRenderFlags.DirtySignal\n // This will mark the view as changed,\n // so we'll try to check for updates into ngDoCheck\n this.#changeDetectorRef.markForCheck()\n },\n { injector: this.viewContainerRef.injector }\n )\n }\n }\n\n #shouldRecreateEntireView() {\n return (\n this.renderFlags &\n FlexRenderFlags.ContentChanged &\n FlexRenderFlags.ViewFirstRender\n )\n }\n\n #renderViewByContent(\n content: FlexRenderTypedContent\n ): FlexRenderView<any> | null {\n if (content.kind === 'primitive') {\n return this.#renderStringContent(content)\n } else if (content.kind === 'templateRef') {\n return this.#renderTemplateRefContent(content)\n } else if (content.kind === 'flexRenderComponent') {\n return this.#renderComponent(content)\n } else if (content.kind === 'component') {\n return this.#renderCustomComponent(content)\n } else {\n return null\n }\n }\n\n #renderStringContent(\n template: Extract<FlexRenderTypedContent, { kind: 'primitive' }>\n ): FlexRenderTemplateView {\n const context = () => {\n return typeof this.content === 'string' ||\n typeof this.content === 'number'\n ? this.content\n : this.content?.(this.props)\n }\n const ref = this.viewContainerRef.createEmbeddedView(this.templateRef, {\n get $implicit() {\n return context()\n },\n })\n return new FlexRenderTemplateView(template, ref)\n }\n\n #renderTemplateRefContent(\n template: Extract<FlexRenderTypedContent, { kind: 'templateRef' }>\n ): FlexRenderTemplateView {\n const latestContext = () => this.props\n const view = this.viewContainerRef.createEmbeddedView(template.content, {\n get $implicit() {\n return latestContext()\n },\n })\n return new FlexRenderTemplateView(template, view)\n }\n\n #renderComponent(\n flexRenderComponent: Extract<\n FlexRenderTypedContent,\n { kind: 'flexRenderComponent' }\n >\n ): FlexRenderComponentView {\n const { inputs, outputs, injector } = flexRenderComponent.content\n\n const getContext = () => this.props\n const proxy = new Proxy(this.props, {\n get: (_, key) => getContext()[key as keyof typeof _],\n })\n const componentInjector = Injector.create({\n parent: injector ?? this.injector,\n providers: [{ provide: FlexRenderComponentProps, useValue: proxy }],\n })\n const view = this.#flexRenderComponentFactory.createComponent(\n flexRenderComponent.content,\n componentInjector\n )\n return new FlexRenderComponentView(flexRenderComponent, view)\n }\n\n #renderCustomComponent(\n component: Extract<FlexRenderTypedContent, { kind: 'component' }>\n ): FlexRenderComponentView {\n const view = this.#flexRenderComponentFactory.createComponent(\n flexRenderComponent(component.content, {\n inputs: this.props,\n injector: this.injector,\n }),\n this.injector\n )\n return new FlexRenderComponentView(component, view)\n }\n}\n","import { computed, type Signal, signal } from '@angular/core'\nimport {\n RowData,\n TableOptions,\n TableOptionsResolved,\n TableState,\n createTable,\n type Table,\n} from '@tanstack/table-core'\nimport { lazyInit } from './lazy-signal-initializer'\nimport { proxifyTable } from './proxy'\n\nexport * from '@tanstack/table-core'\n\nexport {\n type FlexRenderContent,\n FlexRenderDirective,\n FlexRenderDirective as FlexRender,\n injectFlexRenderContext,\n type FlexRenderComponentProps,\n} from './flex-render'\n\nexport {\n FlexRenderComponent,\n flexRenderComponent,\n} from './flex-render/flex-render-component'\n\nexport function createAngularTable<TData extends RowData>(\n options: () => TableOptions<TData>\n): Table<TData> & Signal<Table<TData>> {\n return lazyInit(() => {\n const resolvedOptions = {\n state: {},\n onStateChange: () => {},\n renderFallbackValue: null,\n ...options(),\n }\n\n const table = createTable(resolvedOptions)\n\n // By default, manage table state here using the table's initial state\n const state = signal<TableState>(table.initialState)\n\n // Compose table options using computed.\n // This is to allow `tableSignal` to listen and set table option\n const updatedOptions = computed<TableOptionsResolved<TData>>(() => {\n // listen to table state changed\n const tableState = state()\n // listen to input options changed\n const tableOptions = options()\n return {\n ...table.options,\n ...resolvedOptions,\n ...tableOptions,\n state: { ...tableState, ...tableOptions.state },\n onStateChange: updater => {\n const value =\n updater instanceof Function ? updater(tableState) : updater\n state.set(value)\n resolvedOptions.onStateChange?.(updater)\n },\n }\n })\n\n // convert table instance to signal for proxify to listen to any table state and options changes\n const tableSignal = computed(\n () => {\n table.setOptions(updatedOptions())\n return table\n },\n {\n equal: () => false,\n }\n )\n\n // proxify Table instance to provide ability for consumer to listen to any table state changes\n return proxifyTable(tableSignal)\n })\n}\n","/* eslint-disable jsdoc/require-jsdoc */\n/* eslint-disable jsdoc/require-returns */\n/* eslint-disable jsdoc/require-param */\n\nimport {\n Component,\n computed,\n input,\n TemplateRef,\n CUSTOM_ELEMENTS_SCHEMA,\n ContentChild,\n ContentChildren,\n QueryList,\n effect,\n signal,\n ElementRef,\n viewChild,\n AfterViewInit,\n OnDestroy,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {\n NvDatatableCellDirective,\n type NvDatatableCellContext,\n} from './nv-datatable-cell.directive';\n\n// local copy of @tanstack/angular-table (required for multi angular versions, the built version is not working)\nimport {\n createAngularTable,\n getCoreRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n FlexRenderDirective,\n type FlexRenderComponent,\n type ColumnDef,\n type CellContext,\n type PaginationState,\n type SortingState,\n type NoInfer,\n} from './datatable.utils';\n\n/**\n * A powerful, flexible datatable component built on TanStack Table.\n * Supports custom cell rendering, column configuration, pagination, and full TypeScript typing.\n */\n@Component({\n selector: 'nv-datatable',\n standalone: true,\n imports: [CommonModule, FlexRenderDirective],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n template: `\n <nv-table>\n <table>\n <thead [attr.data-sticky-top]=\"stickyHeader() ? 'true' : null\">\n @for (headerGroup of table().getHeaderGroups(); track headerGroup.id)\n {\n <tr>\n @for (header of headerGroup.headers; track header.id) {\n <th\n [attr.data-testid]=\"'datatable-header-' + header.id\"\n [style.width]=\"\n header.column.columnDef.size\n ? header.column.columnDef.size + 'px'\n : null\n \"\n [attr.data-no-resize]=\"\n !header.column.columnDef.enableResizing ? 'true' : null\n \"\n >\n @if (!header.isPlaceholder) { @if (header.column.getCanSort()) {\n <nv-tableheader\n [sortable]=\"true\"\n [sortDirection]=\"header.column.getIsSorted() || 'none'\"\n (sortDirectionChanged)=\"\n handleSortDirectionChanged($event, header)\n \"\n >\n {{ header.column.columnDef.header }}\n </nv-tableheader>\n } @else {\n {{ header.column.columnDef.header }}\n } }\n </th>\n }\n </tr>\n }\n </thead>\n\n <tbody>\n @for (row of table().getRowModel().rows; track row.id; let i = $index)\n {\n <tr\n [attr.data-testid]=\"'datatable-row-' + i\"\n #tableRow\n [attr.data-is-last]=\"\n isInfiniteScroll() && i === table().getRowModel().rows.length - 1\n ? 'true'\n : null\n \"\n >\n @for (cell of row.getVisibleCells(); track cell.id) {\n <td [attr.data-testid]=\"'datatable-cell-' + cell.column.id\">\n <ng-container\n *flexRender=\"\n cell.column.columnDef.cell;\n props: cell.getContext();\n let cellContent\n \"\n >\n {{ cellContent }}\n </ng-container>\n </td>\n }\n </tr>\n }\n </tbody>\n </table>\n </nv-table>\n\n <!-- Render pagination if configured -->\n @if (paginationAPI()) { @if (paginationTemplate) {\n <ng-container\n *ngTemplateOutlet=\"\n paginationTemplate;\n context: { $implicit: paginationAPI() }\n \"\n ></ng-container>\n } @else if (mode() === 'client' && pagination() && !pagination()?.infinite)\n {\n <!-- Default pagination with nv-paginationtable (client mode only) -->\n <nv-paginationtable\n [pageIndex]=\"paginationAPI()!.pageIndex\"\n [pageSize]=\"paginationAPI()!.pageSize\"\n [pageCount]=\"paginationAPI()!.pageCount\"\n [rowCount]=\"paginationAPI()!.rowCount\"\n [attr.label-page]=\"pagination()?.labels?.page || null\"\n [attr.label-total]=\"pagination()?.labels?.total || null\"\n [attr.label-page-size-option]=\"\n pagination()?.labels?.pageSizeOption || null\n \"\n (pageIndexChanged)=\"paginationAPI()!.setPageIndex($event.detail)\"\n (pageSizeChanged)=\"paginationAPI()!.setPageSize($event.detail)\"\n ></nv-paginationtable>\n } }\n `,\n})\nexport class NvDatatable<T> implements AfterViewInit, OnDestroy {\n /** Column definitions */\n columns = input<NvDatatableColumn<T>[]>([]);\n /** Row data */\n rows = input<T[]>([]);\n /**\n * Data handling mode for sorting and filtering operations.\n * - 'client': All operations handled in browser (default)\n * - 'server': Operations trigger callbacks for server-side handling\n */\n mode = input<'client' | 'server'>('client');\n /** Optional pagination configuration */\n pagination = input<NvDatatablePaginationConfig | undefined>(undefined);\n /** Optional sorting configuration */\n sorting = input<NvDatatableSortingConfig | undefined>(undefined);\n /** Should the header stick to the top of the table when scrolling? */\n stickyHeader = input<boolean>(false);\n\n /** Template for custom pagination UI */\n @ContentChild('paginationTemplate', { read: TemplateRef })\n paginationTemplate?: TemplateRef<{\n $implicit: NvDatatableRenderPaginationAPI;\n }>;\n\n /** Cell templates provided via nvDatatableCell directive */\n @ContentChildren(NvDatatableCellDirective)\n cellTemplates?: QueryList<NvDatatableCellDirective<T, T[keyof T]>>;\n\n /** Signal to track cell templates array */\n private cellTemplatesSignal = signal<\n NvDatatableCellDirective<T, T[keyof T]>[]\n >([]);\n\n /** Map of field names to cell templates */\n private cellTemplateMap = computed(() => {\n const map = new Map<\n string,\n TemplateRef<NvDatatableCellContext<T, T[keyof T]>>\n >();\n this.cellTemplatesSignal().forEach((directive) => {\n map.set(directive.nvDatatableCell, directive.template);\n });\n return map;\n });\n\n /** Pagination state for server mode */\n private paginationState = signal<PaginationState>({\n pageIndex: 0,\n pageSize: this.pagination()?.initialPageSize || 10,\n });\n\n /**\n * Sorting state. When sorting.sortState is provided the component is controlled;\n * initialSortState only seeds the uncontrolled state (seeded from the constructor\n * effect below — field initializers run before inputs are bound).\n */\n private sortingState = signal<SortingState>([]);\n\n /** Reference to table rows for infinite scroll observer */\n private tableRows = viewChild<ElementRef>('tableRow');\n\n /** Intersection observer for infinite scroll */\n private observer: IntersectionObserver | null = null;\n\n /** Helper to check if using infinite scroll */\n isInfiniteScroll = computed(() => this.pagination()?.infinite === true);\n\n /** Computed table columns with proper typing and filtering. */\n tableColumns = computed<ColumnDef<T, T[keyof T]>[]>(() => {\n const templateMap = this.cellTemplateMap();\n\n return this.columns()\n .filter((col) => !col.hidden)\n .map((col) => {\n // Shared cell renderer\n const cellRenderer = (context: CellContext<T, T[keyof T]>) => {\n const fieldName = String(col.field);\n const cellTemplate = templateMap.get(fieldName);\n\n // Priority: template > renderCell > default\n if (cellTemplate) {\n // Return TemplateRef directly - getValue() returns formatted value\n return cellTemplate;\n }\n\n // Fall back to renderCell if provided\n if (col.renderCell) {\n return col.renderCell(context);\n }\n\n // Default: just return the value (formatted if valueFormatter was used)\n return context.getValue();\n };\n\n const columnDef: ColumnDef<T, T[keyof T]> = {\n accessorKey: col.field,\n accessorFn: col.valueFormatter\n ? (row: T) => {\n const rawValue = row[col.field];\n return col.valueFormatter!({\n value: rawValue,\n row,\n field: col.field,\n });\n }\n : undefined,\n header: col.headerName || String(col.field),\n size: col.width,\n enableResizing: col.resizable ?? true,\n // Sorting configuration\n enableSorting: this.sorting() ? col.sortable ?? true : false,\n cell: cellRenderer,\n };\n\n // Add optional sorting properties only if defined\n if (col.sortingFn !== undefined) {\n // @ts-expect-error - TanStack typing is strict but this works at runtime\n columnDef.sortingFn = col.sortingFn;\n }\n if (col.sortDescFirst !== undefined) {\n columnDef.sortDescFirst = col.sortDescFirst;\n }\n if (col.invertSorting !== undefined) {\n columnDef.invertSorting = col.invertSorting;\n }\n if (col.sortUndefined !== undefined) {\n columnDef.sortUndefined = col.sortUndefined;\n }\n\n return columnDef;\n });\n });\n\n /** TanStack table instance with Signals */\n private tableInstance = createAngularTable(() => {\n const paginationConfig = this.pagination();\n const sortingConfig = this.sorting();\n const componentMode = this.mode();\n const isServerMode = componentMode === 'server';\n const isInfinite = paginationConfig?.infinite === true;\n\n // Determine base table configuration with sorting\n const getBaseTableConfig = () => {\n const baseConfig = {\n data: this.rows(),\n columns: this.tableColumns(),\n getCoreRowModel: getCoreRowModel(),\n // Sorting configuration - uses top-level mode\n ...(sortingConfig && {\n state: {\n sorting:\n isServerMode && sortingConfig.sortState\n ? sortingConfig.sortState\n : this.sortingState(),\n },\n onSortingChange: (\n updaterOrValue:\n | SortingState\n | ((old: SortingState) => SortingState),\n ) => {\n const currentSort =\n isServerMode && sortingConfig.sortState\n ? sortingConfig.sortState\n : this.sortingState();\n\n const newSort =\n typeof updaterOrValue === 'function'\n ? updaterOrValue(currentSort)\n : updaterOrValue;\n\n // Always update internal state for reactivity\n this.sortingState.set(newSort);\n\n // For server-side sorting, also call the callback\n if (isServerMode && sortingConfig.onSortingChange) {\n sortingConfig.onSortingChange(newSort);\n }\n },\n manualSorting: isServerMode,\n enableSorting: true,\n enableMultiSort: sortingConfig.enableMultiSort ?? false,\n enableSortingRemoval: sortingConfig.enableSortingRemoval ?? true,\n maxMultiSortColCount: sortingConfig.maxMultiSortColCount,\n sortDescFirst: sortingConfig.sortDescFirst ?? false,\n // When multi-sort is enabled, treat all clicks as multi-sort events\n isMultiSortEvent: sortingConfig.enableMultiSort\n ? () => true\n : undefined,\n getSortedRowModel: !isServerMode ? getSortedRowModel() : undefined,\n }),\n };\n\n return baseConfig;\n };\n\n // Infinite scroll mode (requires server mode)\n if (isInfinite) {\n // No pagination row model for infinite scroll - simple config\n return getBaseTableConfig();\n }\n\n // No pagination configured\n if (!paginationConfig) {\n return getBaseTableConfig();\n }\n\n // Client-side pagination\n if (!isServerMode) {\n return {\n ...getBaseTableConfig(),\n getPaginationRowModel: getPaginationRowModel(),\n initialState: {\n pagination: {\n pageIndex: 0,\n pageSize: paginationConfig.initialPageSize || 10,\n },\n },\n };\n }\n\n // Server-side pagination - manual pagination with reactive state\n const baseConfig = getBaseTableConfig();\n const pageSize = this.paginationState().pageSize;\n return {\n ...baseConfig,\n manualPagination: true,\n pageCount:\n paginationConfig.totalPageCount !== undefined\n ? paginationConfig.totalPageCount\n : paginationConfig.totalRowCount !== undefined\n ? Math.ceil(paginationConfig.totalRowCount / pageSize)\n : -1,\n state: {\n pagination: this.paginationState(),\n ...(baseConfig.state && { sorting: baseConfig.state.sorting }),\n },\n onPaginationChange: (\n updaterOrValue:\n | PaginationState\n | ((old: PaginationState) => PaginationState),\n ) => {\n const newState =\n typeof updaterOrValue === 'function'\n ? updaterOrValue(this.paginationState())\n : updaterOrValue;\n\n this.paginationState.set(newState);\n\n // Call user's callback for server-side pagination\n if (paginationConfig.onPaginationChange) {\n paginationConfig.onPaginationChange({\n pageIndex: newState.pageIndex,\n pageSize: newState.pageSize,\n });\n }\n },\n };\n });\n\n /** Public getter for table instance. */\n table() {\n return this.tableInstance();\n }\n\n /**\n * Handle sort direction change from table header\n * @param {Event} event The sort direction change event or direction string\n * @param {object} header The table header object\n */\n handleSortDirectionChanged(\n event: Event | CustomEvent<string> | string,\n header: {\n column: {\n clearSorting: () => void;\n toggleSorting: (desc?: boolean, multi?: boolean) => void;\n };\n },\n ) {\n // Extract direction from event or use directly if string\n let direction: 'asc' | 'desc' | 'none';\n\n if (typeof event === 'string') {\n direction = event as 'asc' | 'desc' | 'none';\n } else if ('detail' in event && typeof event.detail === 'string') {\n direction = event.detail as 'asc' | 'desc' | 'none';\n } else {\n // Fallback - shouldn't happen but handle gracefully\n console.warn(\n 'Unexpected event type in handleSortDirectionChanged:',\n event,\n );\n return;\n }\n\n const sortingConfig = this.sorting();\n\n // Check if multi-sort is enabled\n const isMultiSort = sortingConfig?.enableMultiSort ?? false;\n\n if (direction === 'none') {\n // Clear this column's sort\n header.column.clearSorting();\n } else {\n // Toggle sort - TanStack will handle the logic internally\n header.column.toggleSorting(direction === 'desc', isMultiSort);\n }\n }\n\n /** Build pagination API for template */\n paginationAPI = computed<NvDatatableRenderPaginationAPI | null>(() => {\n const paginationConfig = this.pagination();\n if (!paginationConfig) {\n return null;\n }\n\n const componentMode = this.mode();\n const isServerMode = componentMode === 'server';\n const isInfinite = paginationConfig.infinite === true;\n const table = this.table();\n const tablePaginationState = table.getState().pagination;\n const pageCount = table.getPageCount();\n const rowCount = isServerMode\n ? paginationConfig.totalRowCount || this.rows().length\n : this.rows().length;\n\n return {\n pageIndex: tablePaginationState.pageIndex,\n pageSize: tablePaginationState.pageSize,\n pageCount,\n rowCount,\n firstPage: () => table.setPageIndex(0),\n previousPage: () => table.previousPage(),\n nextPage: () => table.nextPage(),\n lastPage: () => table.setPageIndex(pageCount - 1),\n setPageIndex: (index: number) => table.setPageIndex(index),\n setPageSize: (size: number) => table.setPageSize(size),\n canPreviousPage: table.getCanPreviousPage(),\n canNextPage: table.getCanNextPage(),\n isLoading: isInfinite ? paginationConfig.isLoading : undefined,\n hasMore: isInfinite ? paginationConfig.hasMore : undefined,\n };\n });\n\n constructor() {\n // Seed sortingState from sortState / initialSortState once the sorting input\n // is bound. Field initializers run before inputs are set, so we can't do this\n // inline in the signal definition.\n let sortingSeeded = false;\n effect(\n () => {\n if (sortingSeeded) return;\n const sorting = this.sorting();\n if (sorting === undefined) return;\n sortingSeeded = true;\n const seed = sorting.sortState ?? sorting.initialSortState;\n if (seed && seed.length > 0) {\n this.sortingState.set(seed);\n }\n },\n { allowSignalWrites: true },\n );\n\n // Validate infinite scroll requires server mode\n effect(() => {\n const paginationConfig = this.pagination();\n const componentMode = this.mode();\n\n if (paginationConfig?.infinite === true && componentMode !== 'server') {\n console.warn(\n '[NvDatatable] pagination.infinite=true requires mode=\"server\". ' +\n 'Infinite scroll relies on server-side data loading.',\n );\n }\n });\n\n // Set up intersection observer for infinite scroll\n effect(\n () => {\n const paginationConfig = this.pagination();\n const rows = this.rows(); // Track rows changes\n const isInfinite = paginationConfig?.infinite === true;\n\n // Clean up existing observer\n if (this.observer) {\n this.observer.disconnect();\n this.observer = null;\n }\n\n // Only set up observer for infinite scroll mode\n if (!isInfinite || rows.length === 0) {\n return;\n }\n\n // Use setTimeout to ensure DOM is updated\n setTimeout(() => {\n const threshold = paginationConfig.loadMoreThreshold || 500;\n\n // Find the last row element\n const tableRowElements = document.querySelectorAll(\n '[data-is-last=\"true\"]',\n );\n const lastRowElement = tableRowElements[tableRowElements.length - 1];\n\n if (!lastRowElement) {\n return;\n }\n\n this.observer = new IntersectionObserver(\n (entries) => {\n const entry = entries[0];\n if (\n entry.isIntersecting &&\n paginationConfig.hasMore &&\n !paginationConfig.isLoading &&\n paginationConfig.onLoadMore\n ) {\n paginationConfig.onLoadMore();\n }\n },\n {\n rootMargin: `${threshold}px`,\n root: null,\n },\n );\n\n this.observer.observe(lastRowElement);\n }, 0);\n },\n { allowSignalWrites: true },\n );\n }\n\n ngAfterViewInit(): void {\n // Sync cell templates QueryList to signal\n if (this.cellTemplates) {\n this.cellTemplatesSignal.set(this.cellTemplates.toArray());\n\n // Subscribe to changes in the QueryList\n this.cellTemplates.changes.subscribe(() => {\n if (this.cellTemplates) {\n this.cellTemplatesSignal.set(this.cellTemplates.toArray());\n }\n });\n }\n }\n\n ngOnDestroy(): void {\n if (this.observer) {\n this.observer.disconnect();\n this.observer = null;\n }\n }\n}\n\n/********************************* UTILS **************************************/\n\n/**\n * Creates a strongly-typed column factory for a given row type.\n *\n * @template Row The row data type (e.g., `Product`)\n *\n * @returns {function} A function that accepts a column definition and infers:\n * - `K` as the field key (`keyof Row`)\n * - `F` as the return type of `valueFormatter` (defaults to `Row[K]`)\n *\n * @example\n * ```ts\n * // Define your row type\n * interface Product {\n * name: string;\n * price: number;\n * }\n *\n * const col = makeColumn<Product>();\n */\nexport function makeColumn<Row>() {\n return function define<K extends keyof Row, F = Row[K]>(\n col: NvDatatableColumn<Row, K, F>,\n ) {\n return col as unknown as NvDatatableColumn<Row>;\n };\n}\n\nexport { flexRenderComponent as nvDatatableRenderComponent } from './datatable.utils';\n\n/********************************* TYPES **************************************/\nexport type { CellContext as NvDatatableCellContext };\n\n/** Column definition for NvDatatable. */\nexport interface NvDatatableColumn<\n Row,\n K extends keyof Row = keyof Row,\n F = Row[K],\n> {\n /** Field name from row data */\n field: K;\n /** Display name for column header */\n headerName?: string;\n /** Column width in pixels */\n width?: number;\n /** Whether column is resizable */\n resizable?: boolean;\n /** Whether column is hidden */\n hidden?: boolean;\n /**\n * Transform the raw value before rendering. Receives the cell value and full row object.\n * This is useful for formatting dates, converting arrays to strings, accessing nested objects, etc.\n * The transformed value is then passed to renderCell or templates.\n */\n valueFormatter?: (params: NvTableValueFormatterParams<Row, Row[K], K>) => F;\n /**\n * Custom cell renderer function that can return either a string or Angular TemplateRef.\n * Use `$implicit` in your template to receive the CellContext.\n * Note: If valueFormatter is provided, renderCell receives the formatted value.\n */\n renderCell?: (context: CellContext<Row, F>) =>\n | string\n | FlexRenderComponent\n | TemplateRef<{\n $implicit: CellContext<Row, F>;\n }>;\n /** Enable/disable sorting for this column */\n sortable?: boolean;\n /** Custom sorting function or built-in function name */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n sortingFn?: ((rowA: any, rowB: any, columnId: string) => number) | string;\n /** Start with descending sort for this column */\n sortDescFirst?: boolean;\n /** Invert the sort order (useful for rankings) */\n invertSorting?: boolean;\n /** Where to place undefined values in sort */\n sortUndefined?: 'first' | 'last' | false | -1 | 1;\n}\n\n/** Parameters for custom cell rendering function. */\nexport interface NvTableRenderCellParams<Row, Value, Field> {\n /** Cell value */\n value: Value | NoInfer<Value>;\n /** Row data */\n row: Row;\n /** Field name */\n field: Field;\n /** Row index */\n rowIndex: number;\n}\n\n/**\n * Parameters for valueFormatter function.\n */\nexport interface NvTableValueFormatterParams<Row, Value, Field> {\n /** Cell original value */\n value: Value;\n /** Row data */\n row: Row;\n /** Field name */\n field: Field;\n}\n\n/**\n * Pagination configuration for NvDatatable.\n * The pagination behavior (client vs server) is derived from the top-level `mode` prop.\n */\nexport interface NvDatatablePaginationConfig {\n /**\n * Enable infinite scroll mode.\n * When true, requires the component's top-level `mode` to be set to 'server'.\n * Data is loaded incrementally as the user scrolls.\n */\n infinite?: boolean;\n /** Initial page size (default: 10) */\n initialPageSize?: number;\n /** Available page size options (default: [10, 20, 50, 100]) */\n pageSizeOptions?: number[];\n /** Custom labels for pagination component (i18n support) */\n labels?: {\n /** Label template for the page indicator. Supports placeholders: {pageIndex}, {pageCount} */\n page?: string;\n /** Label template for the total row count display. Supports placeholder: {rowCount} */\n total?: string;\n /** Label template for the page size dropdown options. Supports placeholder: {pageSize} */\n pageSizeOption?: string;\n };\n\n // Server-side (buttons) specific properties\n /** Total number of rows (for server-side pagination) */\n totalRowCount?: number;\n /** Total number of pages (for server-side pagination) */\n totalPageCount?: number;\n /** Callback when pagination state changes (for server-side pagination) */\n onPaginationChange?: (state: {\n /** Current page index */\n pageIndex: number;\n /** Current page size */\n pageSize: number;\n }) => void;\n\n // Infinite scroll specific properties (used when infinite: true)\n /** Whether there are more items to load (for infinite scroll) */\n hasMore?: boolean;\n /** Whether data is currently loading (for infinite scroll) */\n isLoading?: boolean;\n /** Distance from bottom in pixels to trigger load (default: 500) */\n loadMoreThreshold?: number;\n /** Callback to load more data (for infinite scroll) */\n onLoadMore?: () => void;\n}\n\n/**\n * API exposed to pagination template for building custom pagination UI.\n */\nexport interface NvDatatableRenderPaginationAPI {\n /** Current page index (zero-based) */\n pageIndex: number;\n /** Current page size */\n pageSize: number;\n /** Total number of pages */\n pageCount: number;\n /** Total number of rows */\n rowCount: number;\n /** Navigate to first page */\n firstPage: () => void;\n /** Navigate to previous page */\n previousPage: () => void;\n /** Navigate to next page */\n nextPage: () => void;\n /** Navigate to last page */\n lastPage: () => void;\n /** Navigate to specific page by index */\n setPageIndex: (index: number) => void;\n /** Change page size */\n setPageSize: (size: number) => void;\n /** Whether previous page is available */\n canPreviousPage: boolean;\n /** Whether next page is available */\n canNextPage: boolean;\n /** Loading state (only for infinite scroll) */\n isLoading?: boolean;\n /** Whether more items are available (only for infinite scroll) */\n hasMore?: boolean;\n}\n\n/**\n * Sorting configuration for NvDatatable.\n * The sorting mode (client vs server) is derived from the component's top-level `mode` prop.\n */\nexport interface NvDatatableSortingConfig {\n /** Enable multi-column sorting with Shift+Click */\n enableMultiSort?: boolean;\n /** Allow cycling through to \"no sort\" state */\n enableSortingRemoval?: boolean;\n /** Maximum number of columns for multi-sort */\n maxMultiSortColCount?: number;\n /** Start with descending sort as first toggle state */\n sortDescFirst?: boolean;\n /**\n * Initial sort state (uncontrolled). Applied on first render only; the user can then\n * freely change sorting via header clicks. Ignored when `sortState` is also provided.\n */\n initialSortState?: SortingState;\n /** Controlled sort state (for server-side sorting) */\n sortState?: SortingState;\n /** Callback when sorting changes (for server-side sorting) */\n onSortingChange?: (sorting: SortingState) => void;\n}\n\n/**\n * Sorting state type - array of sort descriptors\n */\nexport type NvDataTableSortingState = SortingState;\n","import { Directive, ElementRef, HostListener } from '@angular/core';\nimport { ControlValueAccessor } from '@angular/forms';\n\n@Directive({})\nexport class ValueAccessor implements ControlValueAccessor {\n private onChange: (value: unknown) => void = () => {};\n private onTouched: () => void = () => {};\n protected lastValue: unknown = null;\n\n constructor(protected el: ElementRef) {}\n\n writeValue(value: unknown) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n\n handleChangeEvent(value: unknown) {\n if (value !== this.lastValue) {\n this.lastValue = value;\n this.onChange(value);\n }\n }\n\n @HostListener('focusout')\n _handleBlurEvent() {\n this.onTouched();\n }\n\n registerOnChange(fn: (value: unknown) => void) {\n this.onChange = fn;\n }\n registerOnTouched(fn: () => void) {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean) {\n this.el.nativeElement.disabled = isDisabled;\n }\n}\n","import { Directive, ElementRef, HostListener } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from '../value-accessor';\n\n@Directive({\n selector: 'nv-accordion',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvAccordionValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvAccordionValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('openIndexesChanged', ['$event'])\n handleOpenIndexesChanged(event: any) {\n this.handleChangeEvent(event.target.openIndexes)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.openIndexes = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-alert',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvAlertValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvAlertValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('hiddenChanged', ['$event'])\n handleHiddenChanged(event: any) {\n this.handleChangeEvent(event.target.hidden)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.hidden = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-calendar',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvCalendarValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvCalendarValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-datagrid',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvDatagridValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvDatagridValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('stateChanged', ['$event'])\n handleStateChanged(event: any) {\n this.handleChangeEvent(event.target.state)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.state = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-datetest',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvDatetestValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvDatetestValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-datetimetest',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvDatetimetestValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvDatetimetestValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-dialog',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvDialogValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvDialogValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('openChanged', ['$event'])\n handleOpenChanged(event: any) {\n this.handleChangeEvent(event.target.open)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.open = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-drawer',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvDrawerValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvDrawerValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('openChanged', ['$event'])\n handleOpenChanged(event: any) {\n this.handleChangeEvent(event.target.open)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.open = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldcheckbox',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldcheckboxValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldcheckboxValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('checkedChanged', ['$event'])\n handleCheckedChanged(event: any) {\n this.handleChangeEvent(event.target.checked)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.checked = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fielddate',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFielddateValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFielddateValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fielddaterange',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFielddaterangeValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFielddaterangeValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fielddropdown',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFielddropdownValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFielddropdownValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldmultiselect',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldmultiselectValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldmultiselectValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldnumber',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldnumberValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldnumberValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldpassword',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldpasswordValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldpasswordValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldradio',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldradioValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldradioValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('checkedChanged', ['$event'])\n handleCheckedChanged(event: any) {\n this.handleChangeEvent(event.target.checked)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.checked = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldselect',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldselectValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldselectValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldslider',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldsliderValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldsliderValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldtext',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldtextValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldtextValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldtextarea',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldtextareaValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldtextareaValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-fieldtime',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvFieldtimeValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvFieldtimeValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-notification',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvNotificationValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvNotificationValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('hiddenChanged', ['$event'])\n handleHiddenChanged(event: any) {\n this.handleChangeEvent(event.target.hidden)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.hidden = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-pagination-nav',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvPaginationNavValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvPaginationNavValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('currentPageChanged', ['$event'])\n handleCurrentPageChanged(event: any) {\n this.handleChangeEvent(event.target.currentPage)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.currentPage = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-paginationtable',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvPaginationtableValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvPaginationtableValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('pageIndexChanged', ['$event'])\n handlePageIndexChanged(event: any) {\n this.handleChangeEvent(event.target.pageIndex)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.pageIndex = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-popover',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvPopoverValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvPopoverValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('openChanged', ['$event'])\n handleOpenChanged(event: any) {\n this.handleChangeEvent(event.target.open)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.open = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-sidebar',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvSidebarValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvSidebarValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('openChanged', ['$event'])\n handleOpenChanged(event: any) {\n this.handleChangeEvent(event.target.open)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.open = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-split',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvSplitValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvSplitValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('sizesChanged', ['$event'])\n handleSizesChanged(event: any) {\n this.handleChangeEvent(event.target.sizes)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.sizes = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-timetest',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvTimetestValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvTimetestValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-toggle',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvToggleValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvToggleValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('checkedChanged', ['$event'])\n handleCheckedChanged(event: any) {\n this.handleChangeEvent(event.target.checked)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.checked = this.lastValue = value;\n }\n}\n\n@Directive({\n selector: 'nv-togglebuttongroup',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: NvTogglebuttongroupValueAccessor,\n multi: true,\n },\n ],\n})\nexport class NvTogglebuttongroupValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n @HostListener('valueChanged', ['$event'])\n handleValueChanged(event: any) {\n this.handleChangeEvent(event.target.value)\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value;\n }\n}\n\n\nexport const VALUE_ACCESSORS = [\n NvAccordionValueAccessor,\n NvAlertValueAccessor,\n NvCalendarValueAccessor,\n NvDatagridValueAccessor,\n NvDatetestValueAccessor,\n NvDatetimetestValueAccessor,\n NvDialogValueAccessor,\n NvDrawerValueAccessor,\n NvFieldcheckboxValueAccessor,\n NvFielddateValueAccessor,\n NvFielddaterangeValueAccessor,\n NvFielddropdownValueAccessor,\n NvFieldmultiselectValueAccessor,\n NvFieldnumberValueAccessor,\n NvFieldpasswordValueAccessor,\n NvFieldradioValueAccessor,\n NvFieldselectValueAccessor,\n NvFieldsliderValueAccessor,\n NvFieldtextValueAccessor,\n NvFieldtextareaValueAccessor,\n NvFieldtimeValueAccessor,\n NvNotificationValueAccessor,\n NvPaginationNavValueAccessor,\n NvPaginationtableValueAccessor,\n NvPopoverValueAccessor,\n NvSidebarValueAccessor,\n NvSplitValueAccessor,\n NvTimetestValueAccessor,\n NvToggleValueAccessor,\n NvTogglebuttongroupValueAccessor,\n];","import { Injectable, type Type } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport {\n NotificationEmphasis,\n FeedbackColors,\n} from '@nova-design-system/nova-webcomponents';\nimport { v4 as uuidv4 } from 'uuid';\n\n/**\n * Action callbacks for notifications. Will render buttons automatically.\n */\nexport interface NotificationAction {\n /** The label of the action. */\n label: string;\n /** The callback to execute when the action is clicked. */\n onClick: () => void;\n}\n\n/**\n * Options for creating a notification.\n */\nexport interface NotificationOptions {\n /** Unique identifier for the notification. If not provided, one will be generated. */\n id?: string;\n /** Short and concise text for the notification heading. */\n heading?: string;\n /** Main content of the notification. */\n message?: string;\n /** Whether the notification can be manually dismissed via close button. */\n dismissible?: boolean;\n /** Adjusts the emphasis to make the notification more or less visually\n * prominent to users. Use this to draw attention to important actions or\n * reduce focus on less critical ones */\n emphasis?: `${NotificationEmphasis}`;\n /** Type of the notification, used to determine the color and default icon. */\n feedback?: `${FeedbackColors}`;\n /** Custom icon name to override the default icon. */\n icon?: string;\n /** Notification actions */\n actions?: NotificationAction[];\n /** Custom components for the notification actions. */\n actionSlot?: Type<unknown>;\n /** Duration in milliseconds before auto-dismissing. 0 = sticky (no auto-dismiss). Default: 0 */\n duration?: number;\n}\n\n/**\n * A notification with all required fields populated.\n */\nexport interface Notification extends NotificationOptions {\n /** Timestamp when the notification was created. */\n createdAt: number;\n}\n\n/**\n * Configuration options for the NotificationService.\n */\nexport interface NotificationServiceConfig {\n /** Position of the notification container on the screen. */\n position?: string;\n /** Maximum number of notifications to display at once. */\n maxNotifications?: number;\n /** Additional CSS class name for the notification container. */\n className?: string;\n}\n\n/**\n * Utility function to generate unique IDs.\n *\n * @returns {string} A unique identifier string\n */\nconst generateId = (): string => {\n return `notification-${uuidv4()}`;\n};\n\n/**\n * Angular service for managing notifications.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class NotificationService {\n private readonly _notifications = new BehaviorSubject<Notification[]>([]);\n private readonly _config: Required<NotificationServiceConfig>;\n private readonly timers = new Map<string, ReturnType<typeof setTimeout>>();\n\n /**\n * Observable stream of active notifications.\n */\n public readonly notifications$: Observable<Notification[]> =\n this._notifications.asObservable();\n\n /**\n * Current array of notifications.\n *\n * @returns {Notification[]} Array of active notifications\n */\n public get notifications(): Notification[] {\n return this._notifications.value;\n }\n\n constructor() {\n this._config = {\n position: 'top-right',\n maxNotifications: 50,\n className: '',\n };\n }\n\n /**\n * Configure the notification service.\n *\n * @param {NotificationServiceConfig} config Configuration options\n */\n configure(config: NotificationServiceConfig): void {\n Object.assign(this._config, config);\n }\n\n /**\n * Get the current configuration.\n *\n * @returns {Required<NotificationServiceConfig>} Current configuration\n */\n get config(): Required<NotificationServiceConfig> {\n return { ...this._config };\n }\n\n // keep track of all notification refs\n private elRefs = new Map<string, HTMLNvNotificationElement>();\n registerRef(id: string, el: HTMLNvNotificationElement): void {\n this.elRefs.set(id, el);\n }\n unregisterRef(id: string): void {\n this.elRefs.delete(id);\n }\n clearRefs() {\n this.elRefs.clear();\n }\n\n /**\n * Clean up all timers and references.\n */\n ngOnDestroy(): void {\n this.timers.forEach((timer) => clearTimeout(timer));\n this.timers.clear();\n this.clearRefs();\n }\n\n /**\n * Show a new notification.\n *\n * @param {NotificationOptions} options The notification options\n * @returns {string} The notification ID\n */\n show(options: NotificationOptions): string {\n const id = options.id || generateId();\n\n const notification: Notification = {\n id,\n heading: options.heading,\n message: options.message,\n dismissible: options.dismissible ?? true,\n emphasis: options.emphasis ?? 'medium',\n feedback: options.feedback ?? 'information',\n icon: options.icon,\n actions: options.actions ?? [],\n actionSlot: options.actionSlot,\n duration: options.duration ?? 0,\n createdAt: Date.now(),\n };\n\n const currentNotifications = this._notifications.value;\n\n // Remove oldest notifications if we exceed max\n const newNotifications = [notification, ...currentNotifications];\n if (newNotifications.length > this._config.maxNotifications) {\n this._notifications.next(\n newNotifications.slice(0, this._config.maxNotifications),\n );\n } else {\n this._notifications.next(newNotifications);\n }\n\n setTimeout(() => {\n const ref = this.elRefs.get(id) as HTMLNvNotificationElement | undefined;\n ref?.show();\n\n // Set up auto-dismiss timer if duration > 0\n if (notification.duration && notification.duration > 0) {\n const timer = setTimeout(() => {\n this.dismiss(id);\n }, notification.duration);\n this.timers.set(id, timer);\n }\n }, 0);\n\n return id;\n }\n\n /**\n * Dismiss a specific notification by ID. This will remove the notification\n * after the animation completes.\n *\n * @param {string} id The notification ID to dismiss\n */\n dismiss(id: string): void {\n // Clear timer if exists\n const timer = this.timers.get(id);\n if (timer) {\n clearTimeout(timer);\n this.timers.delete(id);\n }\n\n this.elRefs.get(id)?.dismiss?.();\n }\n\n /**\n * Immediately remove a specific notification by ID.\n *\n * @param {string} id The notification ID to dismiss\n */\n remove(id: string): void {\n // Clear timer if exists\n const timer = this.timers.get(id);\n if (timer) {\n clearTimeout(timer);\n this.timers.delete(id);\n }\n\n const currentNotifications = this._notifications.value;\n const filteredNotifications = currentNotifications.filter(\n (notification) => notification.id !== id,\n );\n this._notifications.next(filteredNotifications);\n }\n\n /**\n * Immediately remove all active notifications.\n */\n removeAll(): void {\n // Clear all timers\n this.timers.forEach((timer) => clearTimeout(timer));\n this.timers.clear();\n\n this._notifications.next([]);\n }\n}\n","import {\n Component,\n Input,\n OnDestroy,\n OnInit,\n ViewChildren,\n ElementRef,\n QueryList,\n CUSTOM_ELEMENTS_SCHEMA,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Subscription } from 'rxjs';\n// import { NovaComponentsModule } from '../nova-components.module';\nimport { NotificationService, type Notification } from './notification.service';\n\n/**\n * Angular component that renders the notification container with active notifications.\n */\n@Component({\n selector: 'nv-notification-service',\n standalone: true,\n imports: [CommonModule],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n template: `\n <nv-notificationcontainer\n [position]=\"position\"\n [class]=\"className\"\n data-testid=\"notification-container\"\n >\n <nv-notification\n *ngFor=\"\n let notification of notifications;\n trackBy: trackByNotificationId\n \"\n #notificationEl\n [attr.data-id]=\"notification.id\"\n [uid]=\"notification.id\"\n [heading]=\"notification.heading\"\n [message]=\"notification.message\"\n [dismissible]=\"notification.dismissible\"\n [emphasis]=\"notification.emphasis\"\n [feedback]=\"notification.feedback\"\n [icon]=\"notification.icon\"\n [initiallyHidden]=\"true\"\n (hiddenChanged)=\"handleHiddenChanged($event, notification.id)\"\n >\n <!-- Actions slot content for the custom element -->\n <div\n slot=\"actions\"\n class=\"flex gap-2\"\n *ngIf=\"notification.actions?.length || notification.actionSlot\"\n >\n <!-- Config-driven actions -->\n <nv-button\n *ngFor=\"let action of notification.actions\"\n emphasis=\"low\"\n size=\"sm\"\n (click)=\"action.onClick()\"\n >\n {{ action.label }}\n </nv-button>\n\n <!-- Component-driven actions -->\n <ng-container\n *ngIf=\"notification.actionSlot\"\n [ngComponentOutlet]=\"notification.actionSlot\"\n ></ng-container>\n </div>\n </nv-notification>\n </nv-notificationcontainer>\n `,\n})\nexport class NotificationServiceComponent implements OnInit, OnDestroy {\n /**\n * Position of the notification container on the screen.\n */\n @Input() position?: string;\n\n /**\n * Additional CSS class name for the notification container.\n */\n @Input() className?: string;\n\n /**\n * Array of active notifications.\n */\n notifications: Notification[] = [];\n\n /**\n * References to the notification elements.\n */\n @ViewChildren('notificationEl', { read: ElementRef })\n private notificationEls!: QueryList<ElementRef<HTMLNvNotificationElement>>;\n\n private subscription?: Subscription;\n\n constructor(private notificationService: NotificationService) {}\n\n /**\n * Component initialization.\n */\n ngOnInit(): void {\n // Use service config if no input provided\n this.position ??= this.notificationService.config.position;\n this.className ??= this.notificationService.config.className;\n\n // Subscribe to notification changes\n this.subscription = this.notificationService.notifications$.subscribe(\n (list) => (this.notifications = list),\n );\n }\n\n /**\n * Synchronize notification elements/refs with the service.\n */\n ngAfterViewInit(): void {\n const sync = () => {\n this.notificationService.clearRefs();\n for (const elRef of this.notificationEls.toArray()) {\n const el = elRef.nativeElement;\n const id = el.getAttribute('data-id');\n if (id) this.notificationService.registerRef(id, el);\n }\n };\n sync();\n this.notificationEls.changes.subscribe(sync);\n }\n\n /**\n * Component cleanup.\n */\n ngOnDestroy(): void {\n this.subscription?.unsubscribe();\n this.notificationService.clearRefs();\n }\n\n /**\n * Track function for ngFor to optimize rendering.\n *\n * @param {number} index The index of the item\n * @param {Notification} notification The notification item\n * @returns {string} The notification ID\n */\n trackByNotificationId(index: number, notification: Notification) {\n return notification.id;\n }\n\n /**\n * Handle notification hidden state change.\n *\n * @param {CustomEvent<boolean>} event The hidden changed event\n * @param {string} id The notification ID\n */\n handleHiddenChanged(event: CustomEvent<boolean>, id?: string): void {\n if (event.detail && id) {\n this.notificationService.remove(id);\n }\n }\n}\n","import { APP_INITIALIZER, NgModule, type Provider } from '@angular/core';\nimport { defineCustomElements } from '@nova-design-system/nova-webcomponents/loader';\n\nimport { DIRECTIVES } from './stencil-generated';\nimport { NvDatatable } from './components/index';\nimport { VALUE_ACCESSORS } from './stencil-generated/component-value-accessors';\nimport { NotificationServiceComponent } from './providers';\n\n/**\n * Initialize the Nova Components\n *\n * @returns {Provider} - The provider to be used for nova components\n */\nexport function provideNovaComponents(): Provider {\n return {\n provide: APP_INITIALIZER,\n useFactory: () => defineCustomElements,\n multi: true,\n };\n}\n\n@NgModule({\n imports: [NvDatatable],\n declarations: [...DIRECTIVES],\n exports: [...DIRECTIVES, NvDatatable],\n})\nexport class NovaComponentsModule {}\n\n@NgModule({\n declarations: [...VALUE_ACCESSORS],\n exports: [...VALUE_ACCESSORS],\n})\nexport class NovaComponentsValueAccessorModule {}\n\n@NgModule({\n imports: [NotificationServiceComponent],\n exports: [NotificationServiceComponent],\n})\nexport class NovaComponentsProvidersModule {}\n","/*\n * Public API Surface of nova-components\n */\n\nexport * from './lib/nova-components.module';\nexport * from './lib/stencil-generated/components';\nexport * from './lib/stencil-generated/component-value-accessors';\nexport * from './lib/providers';\nexport * from './lib/components';\nexport * from '@nova-design-system/nova-webcomponents/constants';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["d.NvAccordion","d.NvAccordionItem","d.NvAlert","d.NvAvatar","d.NvBadge","d.NvBreadcrumb","d.NvBreadcrumbs","d.NvButton","d.NvButtongroup","d.NvCalendar","d.NvCol","d.NvDatagrid","d.NvDatagridcolumn","d.NvDatetest","d.NvDatetimetest","d.NvDialog","d.NvDialogfooter","d.NvDialogheader","d.NvDrawer","d.NvDrawerfooter","d.NvDrawerheader","d.NvFieldcheckbox","d.NvFielddate","d.NvFielddaterange","d.NvFielddropdown","d.NvFielddropdownitem","d.NvFielddropdownitemcheck","d.NvFieldmultiselect","d.NvFieldnumber","d.NvFieldpassword","d.NvFieldradio","d.NvFieldselect","d.NvFieldslider","d.NvFieldtext","d.NvFieldtextarea","d.NvFieldtime","d.NvIcon","d.NvIconbutton","d.NvLoader","d.NvMenu","d.NvMenuitem","d.NvNotification","d.NvNotificationBullet","d.NvNotificationcontainer","d.NvPaginationNav","d.NvPaginationtable","d.NvPopover","d.NvRow","d.NvSidebar","d.NvSidebarcontent","d.NvSidebardivider","d.NvSidebarfooter","d.NvSidebargroup","d.NvSidebarheader","d.NvSidebarlogo","d.NvSidebarnavitem","d.NvSidebarnavsubitem","d.NvSplit","d.NvStack","d.NvStatusindicator","d.NvTable","d.NvTableheader","d.NvTag","d.NvTimetest","d.NvToggle","d.NvTogglebutton","d.NvTogglebuttongroup","d.NvTooltip","uuidv4","i1.NotificationService","i1.NvAccordion","i1.NvAccordionItem","i1.NvAlert","i1.NvAvatar","i1.NvBadge","i1.NvBreadcrumb","i1.NvBreadcrumbs","i1.NvButton","i1.NvButtongroup","i1.NvCalendar","i1.NvCol","i1.NvDatagrid","i1.NvDatagridcolumn","i1.NvDatetest","i1.NvDatetimetest","i1.NvDialog","i1.NvDialogfooter","i1.NvDialogheader","i1.NvDrawer","i1.NvDrawerfooter","i1.NvDrawerheader","i1.NvFieldcheckbox","i1.NvFielddate","i1.NvFielddaterange","i1.NvFielddropdown","i1.NvFielddropdownitem","i1.NvFielddropdownitemcheck","i1.NvFieldmultiselect","i1.NvFieldnumber","i1.NvFieldpassword","i1.NvFieldradio","i1.NvFieldselect","i1.NvFieldslider","i1.NvFieldtext","i1.NvFieldtextarea","i1.NvFieldtime","i1.NvIcon","i1.NvIconbutton","i1.NvLoader","i1.NvMenu","i1.NvMenuitem","i1.NvNotification","i1.NvNotificationBullet","i1.NvNotificationcontainer","i1.NvPaginationNav","i1.NvPaginationtable","i1.NvPopover","i1.NvRow","i1.NvSidebar","i1.NvSidebarcontent","i1.NvSidebardivider","i1.NvSidebarfooter","i1.NvSidebargroup","i1.NvSidebarheader","i1.NvSidebarlogo","i1.NvSidebarnavitem","i1.NvSidebarnavsubitem","i1.NvSplit","i1.NvStack","i1.NvStatusindicator","i1.NvTable","i1.NvTableheader","i1.NvTag","i1.NvTimetest","i1.NvToggle","i1.NvTogglebutton","i1.NvTogglebuttongroup","i1.NvTooltip","i2.NvAccordionValueAccessor","i2.NvAlertValueAccessor","i2.NvCalendarValueAccessor","i2.NvDatagridValueAccessor","i2.NvDatetestValueAccessor","i2.NvDatetimetestValueAccessor","i2.NvDialogValueAccessor","i2.NvDrawerValueAccessor","i2.NvFieldcheckboxValueAccessor","i2.NvFielddateValueAccessor","i2.NvFielddaterangeValueAccessor","i2.NvFielddropdownValueAccessor","i2.NvFieldmultiselectValueAccessor","i2.NvFieldnumberValueAccessor","i2.NvFieldpasswordValueAccessor","i2.NvFieldradioValueAccessor","i2.NvFieldselectValueAccessor","i2.NvFieldsliderValueAccessor","i2.NvFieldtextValueAccessor","i2.NvFieldtextareaValueAccessor","i2.NvFieldtimeValueAccessor","i2.NvNotificationValueAccessor","i2.NvPaginationNavValueAccessor","i2.NvPaginationtableValueAccessor","i2.NvPopoverValueAccessor","i2.NvSidebarValueAccessor","i2.NvSplitValueAccessor","i2.NvTimetestValueAccessor","i2.NvToggleValueAccessor","i2.NvTogglebuttongroupValueAccessor"],"mappings":"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"}