@shineuix/angular 1.0.2 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/shineuix-angular.mjs +3 -3
- package/fesm2022/shineuix-angular.mjs.map +1 -1
- package/index.d.ts +50 -18
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shineuix-angular.mjs","sources":["../../src/directives/angular-component-lib/utils.ts","../../src/two-way.ts","../../src/directives/proxies.ts","../../src/directives/index.ts","../../src/directives/value-accessor.ts","../../src/directives/boolean-value-accessor.ts","../../src/directives/text-value-accessor.ts","../../src/filter-panel-value-accessor.ts","../../src/html-value-accessor.ts","../../src/numeric-value-accessor.ts","../../src/scheduler-builder-value-accessor.ts","../../src/select-value-accessor.ts","../../src/index.ts","../../src/shineuix-angular.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","import { Observable } from 'rxjs';\n\n/** The element a generated proxy wraps, read when a binding subscribes, after the proxy's constructor stored it. */\nconst elementOf = (proxy: object): HTMLElement => (proxy as { el: HTMLElement }).el;\n\n/**\n * The `<prop>Change` output behind `[(prop)]` for a prop the element reports with\n * `sui<Prop>Change`: it emits the event's detail, which is the prop's new value.\n * scripts/two-way-outputs.mjs gives every generated proxy one per such prop, from the core's\n * component metadata. Lazy: nothing listens to the element until a template binds the output, and\n * the listener goes when the binding does.\n */\nexport function propChange<E extends CustomEvent>(proxy: object, event: string): Observable<E['detail']> {\n return new Observable<E['detail']>((subscriber) => {\n const el = elementOf(proxy);\n const listener = (e: Event) => subscriber.next((e as E).detail);\n el.addEventListener(event, listener);\n return () => el.removeEventListener(event, listener);\n });\n}\n\n/**\n * The `<prop>Change` output behind `[(prop)]` for a prop the element reports with the open-state\n * pair: `suiOpen` after it opens itself, and the cancelable `suiClose` before it closes itself\n * (`open` on an overlay, `collapsed` on a panel). It emits the prop's value once the event has\n * reached every listener: after `suiOpen` always, after `suiClose` only when the element did\n * close, so a close that a `(suiClose)` handler vetoed with `preventDefault()` leaves the model\n * alone. Lazy, as {@link propChange} is.\n */\nexport function openStateChange<T>(proxy: object, prop: string): Observable<T> {\n return new Observable<T>((subscriber) => {\n const el = elementOf(proxy) as HTMLElement & Record<string, unknown>;\n const read = () => el[prop] as T;\n const opened = () => queueMicrotask(() => subscriber.next(read()));\n const closing = () => {\n const before = read();\n queueMicrotask(() => {\n const after = read();\n if (after !== before) subscriber.next(after);\n });\n };\n el.addEventListener('suiOpen', opened);\n el.addEventListener('suiClose', closing);\n return () => {\n el.removeEventListener('suiOpen', opened);\n el.removeEventListener('suiClose', closing);\n };\n });\n}\n","/* two-way outputs: written by scripts/two-way-outputs.mjs */\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';\nimport { openStateChange, propChange } from '../two-way';\n\nimport type { Components } from '@shineuix/core/dist/components';\n\nimport { defineCustomElement as defineSuiAccordion } from '@shineuix/core/dist/components/sui-accordion.js';\nimport { defineCustomElement as defineSuiAccordionItem } from '@shineuix/core/dist/components/sui-accordion-item.js';\nimport { defineCustomElement as defineSuiAnchor } from '@shineuix/core/dist/components/sui-anchor.js';\nimport { defineCustomElement as defineSuiAutoComplete } from '@shineuix/core/dist/components/sui-auto-complete.js';\nimport { defineCustomElement as defineSuiAvatar } from '@shineuix/core/dist/components/sui-avatar.js';\nimport { defineCustomElement as defineSuiAvatarGroup } from '@shineuix/core/dist/components/sui-avatar-group.js';\nimport { defineCustomElement as defineSuiBadge } from '@shineuix/core/dist/components/sui-badge.js';\nimport { defineCustomElement as defineSuiBlockUi } from '@shineuix/core/dist/components/sui-block-ui.js';\nimport { defineCustomElement as defineSuiBoard } from '@shineuix/core/dist/components/sui-board.js';\nimport { defineCustomElement as defineSuiBottomNav } from '@shineuix/core/dist/components/sui-bottom-nav.js';\nimport { defineCustomElement as defineSuiBreadcrumb } from '@shineuix/core/dist/components/sui-breadcrumb.js';\nimport { defineCustomElement as defineSuiButton } from '@shineuix/core/dist/components/sui-button.js';\nimport { defineCustomElement as defineSuiButtonGroup } from '@shineuix/core/dist/components/sui-button-group.js';\nimport { defineCustomElement as defineSuiCalendar } from '@shineuix/core/dist/components/sui-calendar.js';\nimport { defineCustomElement as defineSuiCard } from '@shineuix/core/dist/components/sui-card.js';\nimport { defineCustomElement as defineSuiCarousel } from '@shineuix/core/dist/components/sui-carousel.js';\nimport { defineCustomElement as defineSuiCascadeSelect } from '@shineuix/core/dist/components/sui-cascade-select.js';\nimport { defineCustomElement as defineSuiChartBar } from '@shineuix/core/dist/components/sui-chart-bar.js';\nimport { defineCustomElement as defineSuiChartCandlestick } from '@shineuix/core/dist/components/sui-chart-candlestick.js';\nimport { defineCustomElement as defineSuiChartCombo } from '@shineuix/core/dist/components/sui-chart-combo.js';\nimport { defineCustomElement as defineSuiChartGauge } from '@shineuix/core/dist/components/sui-chart-gauge.js';\nimport { defineCustomElement as defineSuiChartHeatmap } from '@shineuix/core/dist/components/sui-chart-heatmap.js';\nimport { defineCustomElement as defineSuiChartLine } from '@shineuix/core/dist/components/sui-chart-line.js';\nimport { defineCustomElement as defineSuiChartNavigator } from '@shineuix/core/dist/components/sui-chart-navigator.js';\nimport { defineCustomElement as defineSuiChartPie } from '@shineuix/core/dist/components/sui-chart-pie.js';\nimport { defineCustomElement as defineSuiChartRadar } from '@shineuix/core/dist/components/sui-chart-radar.js';\nimport { defineCustomElement as defineSuiChartScatter } from '@shineuix/core/dist/components/sui-chart-scatter.js';\nimport { defineCustomElement as defineSuiChartSynced } from '@shineuix/core/dist/components/sui-chart-synced.js';\nimport { defineCustomElement as defineSuiChartTreemap } from '@shineuix/core/dist/components/sui-chart-treemap.js';\nimport { defineCustomElement as defineSuiChartWaterfall } from '@shineuix/core/dist/components/sui-chart-waterfall.js';\nimport { defineCustomElement as defineSuiCheckbox } from '@shineuix/core/dist/components/sui-checkbox.js';\nimport { defineCustomElement as defineSuiCheckboxGroup } from '@shineuix/core/dist/components/sui-checkbox-group.js';\nimport { defineCustomElement as defineSuiChip } from '@shineuix/core/dist/components/sui-chip.js';\nimport { defineCustomElement as defineSuiChoiceCards } from '@shineuix/core/dist/components/sui-choice-cards.js';\nimport { defineCustomElement as defineSuiCodeBlock } from '@shineuix/core/dist/components/sui-code-block.js';\nimport { defineCustomElement as defineSuiColorEditor } from '@shineuix/core/dist/components/sui-color-editor.js';\nimport { defineCustomElement as defineSuiColorPicker } from '@shineuix/core/dist/components/sui-color-picker.js';\nimport { defineCustomElement as defineSuiCommandPalette } from '@shineuix/core/dist/components/sui-command-palette.js';\nimport { defineCustomElement as defineSuiConfigList } from '@shineuix/core/dist/components/sui-config-list.js';\nimport { defineCustomElement as defineSuiConfigRow } from '@shineuix/core/dist/components/sui-config-row.js';\nimport { defineCustomElement as defineSuiConfirmDialog } from '@shineuix/core/dist/components/sui-confirm-dialog.js';\nimport { defineCustomElement as defineSuiConfirmPopup } from '@shineuix/core/dist/components/sui-confirm-popup.js';\nimport { defineCustomElement as defineSuiContextMenu } from '@shineuix/core/dist/components/sui-context-menu.js';\nimport { defineCustomElement as defineSuiCopyButton } from '@shineuix/core/dist/components/sui-copy-button.js';\nimport { defineCustomElement as defineSuiDataGrid } from '@shineuix/core/dist/components/sui-data-grid.js';\nimport { defineCustomElement as defineSuiDataTable } from '@shineuix/core/dist/components/sui-data-table.js';\nimport { defineCustomElement as defineSuiDataView } from '@shineuix/core/dist/components/sui-data-view.js';\nimport { defineCustomElement as defineSuiDatePicker } from '@shineuix/core/dist/components/sui-date-picker.js';\nimport { defineCustomElement as defineSuiDescriptionList } from '@shineuix/core/dist/components/sui-description-list.js';\nimport { defineCustomElement as defineSuiDialog } from '@shineuix/core/dist/components/sui-dialog.js';\nimport { defineCustomElement as defineSuiDivider } from '@shineuix/core/dist/components/sui-divider.js';\nimport { defineCustomElement as defineSuiDock } from '@shineuix/core/dist/components/sui-dock.js';\nimport { defineCustomElement as defineSuiDrawer } from '@shineuix/core/dist/components/sui-drawer.js';\nimport { defineCustomElement as defineSuiEditBox } from '@shineuix/core/dist/components/sui-edit-box.js';\nimport { defineCustomElement as defineSuiEmptyState } from '@shineuix/core/dist/components/sui-empty-state.js';\nimport { defineCustomElement as defineSuiFieldset } from '@shineuix/core/dist/components/sui-fieldset.js';\nimport { defineCustomElement as defineSuiFileUpload } from '@shineuix/core/dist/components/sui-file-upload.js';\nimport { defineCustomElement as defineSuiFilterBuilder } from '@shineuix/core/dist/components/sui-filter-builder.js';\nimport { defineCustomElement as defineSuiFilterPanel } from '@shineuix/core/dist/components/sui-filter-panel.js';\nimport { defineCustomElement as defineSuiFloatLabel } from '@shineuix/core/dist/components/sui-float-label.js';\nimport { defineCustomElement as defineSuiFluid } from '@shineuix/core/dist/components/sui-fluid.js';\nimport { defineCustomElement as defineSuiForm } from '@shineuix/core/dist/components/sui-form.js';\nimport { defineCustomElement as defineSuiFormActions } from '@shineuix/core/dist/components/sui-form-actions.js';\nimport { defineCustomElement as defineSuiFormLayout } from '@shineuix/core/dist/components/sui-form-layout.js';\nimport { defineCustomElement as defineSuiGalleria } from '@shineuix/core/dist/components/sui-galleria.js';\nimport { defineCustomElement as defineSuiIconButton } from '@shineuix/core/dist/components/sui-icon-button.js';\nimport { defineCustomElement as defineSuiIconField } from '@shineuix/core/dist/components/sui-icon-field.js';\nimport { defineCustomElement as defineSuiIftaLabel } from '@shineuix/core/dist/components/sui-ifta-label.js';\nimport { defineCustomElement as defineSuiImage } from '@shineuix/core/dist/components/sui-image.js';\nimport { defineCustomElement as defineSuiImageCompare } from '@shineuix/core/dist/components/sui-image-compare.js';\nimport { defineCustomElement as defineSuiInplace } from '@shineuix/core/dist/components/sui-inplace.js';\nimport { defineCustomElement as defineSuiInputGroup } from '@shineuix/core/dist/components/sui-input-group.js';\nimport { defineCustomElement as defineSuiInputGroupAddon } from '@shineuix/core/dist/components/sui-input-group-addon.js';\nimport { defineCustomElement as defineSuiInputMask } from '@shineuix/core/dist/components/sui-input-mask.js';\nimport { defineCustomElement as defineSuiInputNumber } from '@shineuix/core/dist/components/sui-input-number.js';\nimport { defineCustomElement as defineSuiInputOtp } from '@shineuix/core/dist/components/sui-input-otp.js';\nimport { defineCustomElement as defineSuiInputTags } from '@shineuix/core/dist/components/sui-input-tags.js';\nimport { defineCustomElement as defineSuiInputText } from '@shineuix/core/dist/components/sui-input-text.js';\nimport { defineCustomElement as defineSuiKbd } from '@shineuix/core/dist/components/sui-kbd.js';\nimport { defineCustomElement as defineSuiKnob } from '@shineuix/core/dist/components/sui-knob.js';\nimport { defineCustomElement as defineSuiList } from '@shineuix/core/dist/components/sui-list.js';\nimport { defineCustomElement as defineSuiListbox } from '@shineuix/core/dist/components/sui-listbox.js';\nimport { defineCustomElement as defineSuiMegaMenu } from '@shineuix/core/dist/components/sui-mega-menu.js';\nimport { defineCustomElement as defineSuiMenu } from '@shineuix/core/dist/components/sui-menu.js';\nimport { defineCustomElement as defineSuiMenubar } from '@shineuix/core/dist/components/sui-menubar.js';\nimport { defineCustomElement as defineSuiMessage } from '@shineuix/core/dist/components/sui-message.js';\nimport { defineCustomElement as defineSuiMeterGroup } from '@shineuix/core/dist/components/sui-meter-group.js';\nimport { defineCustomElement as defineSuiMiniToolbar } from '@shineuix/core/dist/components/sui-mini-toolbar.js';\nimport { defineCustomElement as defineSuiMultiSelect } from '@shineuix/core/dist/components/sui-multi-select.js';\nimport { defineCustomElement as defineSuiNotificationCenter } from '@shineuix/core/dist/components/sui-notification-center.js';\nimport { defineCustomElement as defineSuiOrderList } from '@shineuix/core/dist/components/sui-order-list.js';\nimport { defineCustomElement as defineSuiOrgChart } from '@shineuix/core/dist/components/sui-org-chart.js';\nimport { defineCustomElement as defineSuiOverlayBadge } from '@shineuix/core/dist/components/sui-overlay-badge.js';\nimport { defineCustomElement as defineSuiPageHeader } from '@shineuix/core/dist/components/sui-page-header.js';\nimport { defineCustomElement as defineSuiPaginator } from '@shineuix/core/dist/components/sui-paginator.js';\nimport { defineCustomElement as defineSuiPanel } from '@shineuix/core/dist/components/sui-panel.js';\nimport { defineCustomElement as defineSuiPanelMenu } from '@shineuix/core/dist/components/sui-panel-menu.js';\nimport { defineCustomElement as defineSuiPassword } from '@shineuix/core/dist/components/sui-password.js';\nimport { defineCustomElement as defineSuiPersona } from '@shineuix/core/dist/components/sui-persona.js';\nimport { defineCustomElement as defineSuiPickList } from '@shineuix/core/dist/components/sui-pick-list.js';\nimport { defineCustomElement as defineSuiPopover } from '@shineuix/core/dist/components/sui-popover.js';\nimport { defineCustomElement as defineSuiProgressBar } from '@shineuix/core/dist/components/sui-progress-bar.js';\nimport { defineCustomElement as defineSuiProgressRing } from '@shineuix/core/dist/components/sui-progress-ring.js';\nimport { defineCustomElement as defineSuiProgressSpinner } from '@shineuix/core/dist/components/sui-progress-spinner.js';\nimport { defineCustomElement as defineSuiQrCode } from '@shineuix/core/dist/components/sui-qr-code.js';\nimport { defineCustomElement as defineSuiRadioButton } from '@shineuix/core/dist/components/sui-radio-button.js';\nimport { defineCustomElement as defineSuiRadioGroup } from '@shineuix/core/dist/components/sui-radio-group.js';\nimport { defineCustomElement as defineSuiRating } from '@shineuix/core/dist/components/sui-rating.js';\nimport { defineCustomElement as defineSuiRichTextEditor } from '@shineuix/core/dist/components/sui-rich-text-editor.js';\nimport { defineCustomElement as defineSuiSaveStatus } from '@shineuix/core/dist/components/sui-save-status.js';\nimport { defineCustomElement as defineSuiSchedulerBuilder } from '@shineuix/core/dist/components/sui-scheduler-builder.js';\nimport { defineCustomElement as defineSuiScrollPanel } from '@shineuix/core/dist/components/sui-scroll-panel.js';\nimport { defineCustomElement as defineSuiScrollTop } from '@shineuix/core/dist/components/sui-scroll-top.js';\nimport { defineCustomElement as defineSuiSelect } from '@shineuix/core/dist/components/sui-select.js';\nimport { defineCustomElement as defineSuiSelectButton } from '@shineuix/core/dist/components/sui-select-button.js';\nimport { defineCustomElement as defineSuiSideNav } from '@shineuix/core/dist/components/sui-side-nav.js';\nimport { defineCustomElement as defineSuiSkeleton } from '@shineuix/core/dist/components/sui-skeleton.js';\nimport { defineCustomElement as defineSuiSkeletonCard } from '@shineuix/core/dist/components/sui-skeleton-card.js';\nimport { defineCustomElement as defineSuiSlider } from '@shineuix/core/dist/components/sui-slider.js';\nimport { defineCustomElement as defineSuiSparkline } from '@shineuix/core/dist/components/sui-sparkline.js';\nimport { defineCustomElement as defineSuiSpeedDial } from '@shineuix/core/dist/components/sui-speed-dial.js';\nimport { defineCustomElement as defineSuiSplitButton } from '@shineuix/core/dist/components/sui-split-button.js';\nimport { defineCustomElement as defineSuiSplitter } from '@shineuix/core/dist/components/sui-splitter.js';\nimport { defineCustomElement as defineSuiSpoiler } from '@shineuix/core/dist/components/sui-spoiler.js';\nimport { defineCustomElement as defineSuiStatCard } from '@shineuix/core/dist/components/sui-stat-card.js';\nimport { defineCustomElement as defineSuiStepper } from '@shineuix/core/dist/components/sui-stepper.js';\nimport { defineCustomElement as defineSuiTab } from '@shineuix/core/dist/components/sui-tab.js';\nimport { defineCustomElement as defineSuiTabs } from '@shineuix/core/dist/components/sui-tabs.js';\nimport { defineCustomElement as defineSuiTag } from '@shineuix/core/dist/components/sui-tag.js';\nimport { defineCustomElement as defineSuiTerminal } from '@shineuix/core/dist/components/sui-terminal.js';\nimport { defineCustomElement as defineSuiTextarea } from '@shineuix/core/dist/components/sui-textarea.js';\nimport { defineCustomElement as defineSuiThemePicker } from '@shineuix/core/dist/components/sui-theme-picker.js';\nimport { defineCustomElement as defineSuiTieredMenu } from '@shineuix/core/dist/components/sui-tiered-menu.js';\nimport { defineCustomElement as defineSuiTimePicker } from '@shineuix/core/dist/components/sui-time-picker.js';\nimport { defineCustomElement as defineSuiTimeline } from '@shineuix/core/dist/components/sui-timeline.js';\nimport { defineCustomElement as defineSuiToastHost } from '@shineuix/core/dist/components/sui-toast-host.js';\nimport { defineCustomElement as defineSuiToggleButton } from '@shineuix/core/dist/components/sui-toggle-button.js';\nimport { defineCustomElement as defineSuiToggleSwitch } from '@shineuix/core/dist/components/sui-toggle-switch.js';\nimport { defineCustomElement as defineSuiToolbar } from '@shineuix/core/dist/components/sui-toolbar.js';\nimport { defineCustomElement as defineSuiTooltip } from '@shineuix/core/dist/components/sui-tooltip.js';\nimport { defineCustomElement as defineSuiTour } from '@shineuix/core/dist/components/sui-tour.js';\nimport { defineCustomElement as defineSuiTree } from '@shineuix/core/dist/components/sui-tree.js';\nimport { defineCustomElement as defineSuiTreeSelect } from '@shineuix/core/dist/components/sui-tree-select.js';\nimport { defineCustomElement as defineSuiTreeTable } from '@shineuix/core/dist/components/sui-tree-table.js';\nimport { defineCustomElement as defineSuiTrend } from '@shineuix/core/dist/components/sui-trend.js';\nimport { defineCustomElement as defineSuiVirtualScroller } from '@shineuix/core/dist/components/sui-virtual-scroller.js';\n@ProxyCmp({\n defineCustomElementFn: defineSuiAccordion,\n inputs: ['expanded', 'multiple'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-accordion',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['expanded', 'multiple'],\n outputs: ['suiExpandedChange'],\n})\nexport class SuiAccordion {\n protected el: HTMLSuiAccordionElement;\n @Output() suiExpandedChange = new EventEmitter<SuiAccordionCustomEvent<number[]>>();\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiAccordionCustomEvent<number[]>>(this, 'suiExpandedChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiAccordionCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiAccordion extends Components.SuiAccordion {\n /**\n * Fires after a header toggles, or when sections come or go and the open indexes move or drop;\ndetail is the new `expanded` index list. Does not bubble, so an accordion inside a section\nnever reports as the outer one.\n */\n suiExpandedChange: EventEmitter<SuiAccordionCustomEvent<number[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiAccordionItem,\n inputs: ['disabled', 'expanded', 'heading', 'meta', 'subtitle'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-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', 'expanded', 'heading', 'meta', 'subtitle'],\n})\nexport class SuiAccordionItem {\n protected el: HTMLSuiAccordionItemElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiAccordionItem extends Components.SuiAccordionItem {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiAnchor,\n inputs: ['active', 'heading', 'items', 'scrollPad', 'spyOffset', 'target'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-anchor',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'heading', 'items', 'scrollPad', 'spyOffset', 'target'],\n outputs: ['suiNavigate', 'suiActiveChange'],\n})\nexport class SuiAnchor {\n protected el: HTMLSuiAnchorElement;\n @Output() suiNavigate = new EventEmitter<SuiAnchorCustomEvent<string>>();\n @Output() suiActiveChange = new EventEmitter<SuiAnchorCustomEvent<string>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiAnchorCustomEvent<string>>(this, 'suiActiveChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiAnchorCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiAnchor extends Components.SuiAnchor {\n /**\n * Fires when a link is chosen; detail is the section id.\n */\n suiNavigate: EventEmitter<SuiAnchorCustomEvent<string>>;\n /**\n * Fires whenever `active` changes, including when the scroll-spy moves it; detail is the\nsection id. A click on a link that is not already current emits this before `suiNavigate`.\nDoes not bubble.\n */\n suiActiveChange: EventEmitter<SuiAnchorCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiAutoComplete,\n inputs: ['allowCustom', 'clearable', 'disabled', 'dropdown', 'emptyFilterMessage', 'emptyMessage', 'error', 'externalFilter', 'forceSelection', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'max', 'multiple', 'name', 'open', 'openOnFocus', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-auto-complete',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['allowCustom', 'clearable', 'disabled', 'dropdown', 'emptyFilterMessage', 'emptyMessage', 'error', 'externalFilter', 'forceSelection', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'max', 'multiple', 'name', 'open', 'openOnFocus', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n outputs: ['suiInput', 'suiSelect', 'suiChange', 'suiSearch', 'suiOpen', 'suiFocus', 'suiBlur', 'suiClose'],\n})\nexport class SuiAutoComplete {\n protected el: HTMLSuiAutoCompleteElement;\n @Output() suiInput = new EventEmitter<SuiAutoCompleteCustomEvent<string>>();\n @Output() suiSelect = new EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiKey>>();\n @Output() suiChange = new EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiAutoCompleteValue>>();\n @Output() suiSearch = new EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiAutoCompleteSearchDetail>>();\n @Output() suiOpen = new EventEmitter<SuiAutoCompleteCustomEvent<void>>();\n @Output() suiFocus = new EventEmitter<SuiAutoCompleteCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiAutoCompleteCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiAutoComplete['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiAutoCompleteCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiAutoCompleteSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiAutoCompleteValue as ISuiAutoCompleteSuiAutoCompleteValue } from '@shineuix/core/dist/components';\nimport type { SuiAutoCompleteSearchDetail as ISuiAutoCompleteSuiAutoCompleteSearchDetail } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiAutoCompleteSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiAutoComplete extends Components.SuiAutoComplete {\n /**\n * Fires when the text changes; detail is the text. On a multiple field the text is the query, and\nthe values travel on `suiChange`. The element's own edits count as well as keystrokes: a pick\nthat writes or empties the text, Clear, and a `forceSelection` wipe.\n */\n suiInput: EventEmitter<SuiAutoCompleteCustomEvent<string>>;\n /**\n * Fires when a suggestion is picked (click, Enter, or a label match when the text commits); detail\nis the option's value: the string itself, or `value` of an object option, as given. A multiple\nfield fires it for each value added from the suggestions, not for one removed or added as typed.\n */\n suiSelect: EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiKey>>;\n /**\n * Fires when the value commits; detail is the new `value`. Single field: the text, when it\ncommits (pick, Enter, or leaving the field with a changed value). Multiple field: the full\narray of values, on every value added or removed.\n */\n suiChange: EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiAutoCompleteValue>>;\n /**\n * Fires when the field asks for suggestions; detail is `{ query, reason }`. `reason` is `input`\non each keystroke, with the typed text (a multiple field's query), and `dropdown` when the Show\noptions button, or ArrowDown on an empty field, asks for every option, with the text in the\nfield. A host that fetches answers it by setting `options`, usually with `externalFilter` set\nso the answer shows as given. The element's own edits (a pick, Clear) do not ask.\n */\n suiSearch: EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiAutoCompleteSearchDetail>>;\n /**\n * Fires after the element opens the panel itself (typing, ArrowDown, the dropdown button, or focus\nunder `openOnFocus`).\nDoes not bubble, so a dialog around the field never takes it for its own.\n */\n suiOpen: EventEmitter<SuiAutoCompleteCustomEvent<void>>;\n /**\n * Fires when the input takes focus; no detail. Every text field carries the same pair, so a\nhost arms a hint or a launcher the same way on each without listening for the native `focusin`.\nDoes not bubble, like the native `focus`.\n */\n suiFocus: EventEmitter<SuiAutoCompleteCustomEvent<void>>;\n /**\n * Fires when the input loses focus; no detail. Does not bubble, like the native `blur`.\n */\n suiBlur: EventEmitter<SuiAutoCompleteCustomEvent<void>>;\n /**\n * Fires before the element closes the panel itself; detail is\n`'pick' | 'escape' | 'outside' | 'trigger' | 'cancel'` (`'pick'` covers both picking a\nsuggestion and committing the typed text with Enter, `'trigger'` the dropdown button on an\nopen panel, `'cancel'` a form reset, a clear or an emptied field, `'outside'` an outside\npointer and Tab). Cancelable: `preventDefault()` keeps it open. Does not bubble: a\n`preventDefault()` in a dialog's own `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiAvatar,\n inputs: ['accent', 'badge', 'badgeTone', 'initials', 'name', 'size', 'square', 'src']\n})\n@Component({\n selector: 'sui-avatar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'badge', 'badgeTone', 'initials', 'name', 'size', 'square', 'src'],\n})\nexport class SuiAvatar {\n protected el: HTMLSuiAvatarElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiAvatar extends Components.SuiAvatar {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiAvatarGroup,\n inputs: ['max', 'size', 'users']\n})\n@Component({\n selector: 'sui-avatar-group',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['max', 'size', 'users'],\n})\nexport class SuiAvatarGroup {\n protected el: HTMLSuiAvatarGroupElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiAvatarGroup extends Components.SuiAvatarGroup {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiBadge,\n inputs: ['dot', 'severity', 'size', 'value']\n})\n@Component({\n selector: 'sui-badge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dot', 'severity', 'size', 'value'],\n})\nexport class SuiBadge {\n protected el: HTMLSuiBadgeElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiBadge extends Components.SuiBadge {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiBlockUi,\n inputs: ['blocked', 'message']\n})\n@Component({\n selector: 'sui-block-ui',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['blocked', 'message'],\n})\nexport class SuiBlockUi {\n protected el: HTMLSuiBlockUiElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiBlockUi extends Components.SuiBlockUi {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiBoard,\n inputs: ['cardRender', 'cards', 'collapsed', 'columns', 'density', 'emptyMessage', 'groupBy', 'loading', 'noDrag', 'variant'],\n methods: ['move', 'setFocus']\n})\n@Component({\n selector: 'sui-board',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['cardRender', 'cards', 'collapsed', 'columns', 'density', 'emptyMessage', 'groupBy', 'loading', 'noDrag', 'variant'],\n outputs: ['suiMove', 'suiCollapsedChange', 'suiCardClick'],\n})\nexport class SuiBoard {\n protected el: HTMLSuiBoardElement;\n @Output() suiMove = new EventEmitter<SuiBoardCustomEvent<ISuiBoardSuiBoardMoveDetail>>();\n @Output() suiCollapsedChange = new EventEmitter<SuiBoardCustomEvent<ISuiBoardSuiKey[]>>();\n @Output() suiCardClick = new EventEmitter<SuiBoardCustomEvent<ISuiBoardSuiBoardCardClickDetail>>();\n /** Emits the new `collapsed` when the element changes it (`suiCollapsedChange`), so `[(collapsed)]` binds both ways. */\n @Output() collapsedChange = propChange<SuiBoardCustomEvent<ISuiBoardSuiKey[]>>(this, 'suiCollapsedChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiBoardCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiBoardMoveDetail as ISuiBoardSuiBoardMoveDetail } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiBoardSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiBoardCardClickDetail as ISuiBoardSuiBoardCardClickDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiBoard extends Components.SuiBoard {\n /**\n * Fires before a card moves, from a drop, a keyboard lift or `move()` alike; detail is\n`{ id, from, fromIndex, to, index, collapsed }`, where `collapsed` says the card is landing in\na strip. Cancelable: `preventDefault()` refuses the move and the card stays where it was.\nOtherwise the board writes `cards` and moves the card.\n */\n suiMove: EventEmitter<SuiBoardCustomEvent<ISuiBoardSuiBoardMoveDetail>>;\n /**\n * Fires when a column collapses or expands; detail is the new `collapsed`. Does not bubble.\n */\n suiCollapsedChange: EventEmitter<SuiBoardCustomEvent<ISuiBoardSuiKey[]>>;\n /**\n * Fires on a click or Enter on a card that is not lifted; detail is `{ id, card }`.\n */\n suiCardClick: EventEmitter<SuiBoardCustomEvent<ISuiBoardSuiBoardCardClickDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiBottomNav,\n inputs: ['active', 'fixed', 'items'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-bottom-nav',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'fixed', 'items'],\n outputs: ['suiNavigate', 'suiActiveChange'],\n})\nexport class SuiBottomNav {\n protected el: HTMLSuiBottomNavElement;\n @Output() suiNavigate = new EventEmitter<SuiBottomNavCustomEvent<string>>();\n @Output() suiActiveChange = new EventEmitter<SuiBottomNavCustomEvent<string>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiBottomNavCustomEvent<string>>(this, 'suiActiveChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiBottomNavCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiBottomNav extends Components.SuiBottomNav {\n /**\n * Fires when a tab is activated; detail is the tab key, its own `key` or its label.\n */\n suiNavigate: EventEmitter<SuiBottomNavCustomEvent<string>>;\n /**\n * Fires whenever the element writes `active`, a tap on a tab that was not active, before\n`suiNavigate`; detail is the new `active`. Writing `active` from script emits nothing. Does\nnot bubble.\n */\n suiActiveChange: EventEmitter<SuiBottomNavCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiBreadcrumb,\n inputs: ['items', 'maxItems'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-breadcrumb',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['items', 'maxItems'],\n outputs: ['suiNavigate'],\n})\nexport class SuiBreadcrumb {\n protected el: HTMLSuiBreadcrumbElement;\n @Output() suiNavigate = new EventEmitter<SuiBreadcrumbCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiBreadcrumbCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiBreadcrumb extends Components.SuiBreadcrumb {\n /**\n * Fires when a non-last crumb is clicked; detail is the destination, a string as on every\nnavigation element: the crumb's `href`, or for a crumb without one its `key`, else its label.\nA link still follows its `href`.\n */\n suiNavigate: EventEmitter<SuiBreadcrumbCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiButton,\n inputs: ['block', 'disabled', 'form', 'href', 'icon', 'iconPos', 'label', 'loading', 'name', 'pill', 'rel', 'size', 'target', 'tone', 'type', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['block', 'disabled', 'form', 'href', 'icon', 'iconPos', 'label', 'loading', 'name', 'pill', 'rel', 'size', 'target', 'tone', 'type', 'value', 'variant'],\n})\nexport class SuiButton {\n protected el: HTMLSuiButtonElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiButton extends Components.SuiButton {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiButtonGroup,\n inputs: ['active', 'disabled', 'items', 'orientation', 'selectable', 'size'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-button-group',\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', 'items', 'orientation', 'selectable', 'size'],\n outputs: ['suiActiveChange', 'suiPick'],\n})\nexport class SuiButtonGroup {\n protected el: HTMLSuiButtonGroupElement;\n @Output() suiActiveChange = new EventEmitter<SuiButtonGroupCustomEvent<number>>();\n @Output() suiPick = new EventEmitter<SuiButtonGroupCustomEvent<ISuiButtonGroupSuiButtonGroupItem>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiButtonGroupCustomEvent<number>>(this, 'suiActiveChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiButtonGroupCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiButtonGroupItem as ISuiButtonGroupSuiButtonGroupItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiButtonGroup extends Components.SuiButtonGroup {\n /**\n * Fires when the pick moves (selectable only); detail is the new `active` index. A state\nreport, not a field's value, so a form around the group never hears it. Does not bubble.\n */\n suiActiveChange: EventEmitter<SuiButtonGroupCustomEvent<number>>;\n /**\n * Fires on every press of an enabled item; detail is the item. `item.command()` also runs.\n */\n suiPick: EventEmitter<SuiButtonGroupCustomEvent<ISuiButtonGroupSuiButtonGroupItem>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCalendar,\n inputs: ['agendaRender', 'breakpoint', 'chipRender', 'chipSubtitle', 'date', 'emptyMessage', 'events', 'firstDayOfWeek', 'hideToolbar', 'hideWeekends', 'loading', 'locale', 'maxPerDay', 'noDrag', 'todayDate', 'view'],\n methods: ['next', 'previous', 'today', 'move', 'setFocus']\n})\n@Component({\n selector: 'sui-calendar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['agendaRender', 'breakpoint', 'chipRender', 'chipSubtitle', 'date', 'emptyMessage', 'events', 'firstDayOfWeek', 'hideToolbar', 'hideWeekends', 'loading', 'locale', 'maxPerDay', 'noDrag', 'todayDate', 'view'],\n outputs: ['suiMove', 'suiDayClick', 'suiEventClick', 'suiDateChange', 'suiViewChange', 'suiOverflow'],\n})\nexport class SuiCalendar {\n protected el: HTMLSuiCalendarElement;\n @Output() suiMove = new EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarMoveDetail>>();\n @Output() suiDayClick = new EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarDayDetail>>();\n @Output() suiEventClick = new EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarEventClickDetail>>();\n @Output() suiDateChange = new EventEmitter<SuiCalendarCustomEvent<string>>();\n @Output() suiViewChange = new EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarView>>();\n @Output() suiOverflow = new EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarOverflowDetail>>();\n /** Emits the new `date` when the element changes it (`suiDateChange`), so `[(date)]` binds both ways. */\n @Output() dateChange = propChange<SuiCalendarCustomEvent<string>>(this, 'suiDateChange');\n /** Emits the new `view` when the element changes it (`suiViewChange`), so `[(view)]` binds both ways. */\n @Output() viewChange = propChange<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarView>>(this, 'suiViewChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCalendarCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCalendarMoveDetail as ISuiCalendarSuiCalendarMoveDetail } from '@shineuix/core/dist/components';\nimport type { SuiCalendarDayDetail as ISuiCalendarSuiCalendarDayDetail } from '@shineuix/core/dist/components';\nimport type { SuiCalendarEventClickDetail as ISuiCalendarSuiCalendarEventClickDetail } from '@shineuix/core/dist/components';\nimport type { SuiCalendarView as ISuiCalendarSuiCalendarView } from '@shineuix/core/dist/components';\nimport type { SuiCalendarOverflowDetail as ISuiCalendarSuiCalendarOverflowDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCalendar extends Components.SuiCalendar {\n /**\n * Fires before a record moves, from a drop, a keyboard lift or `move()` alike; detail is\n`{ id, from, to }` with both days ISO. Cancelable: `preventDefault()` refuses the move and\nthe chip stays where it was. Otherwise the calendar writes `events` and moves the chip.\n */\n suiMove: EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarMoveDetail>>;\n /**\n * Fires on a click, Enter or Space on a day cell away from its chips; detail is `{ date }`.\n */\n suiDayClick: EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarDayDetail>>;\n /**\n * Fires on a click or Enter on a chip that is not lifted, and on a click, Enter or Space on an\nagenda row; detail is `{ id, event }`.\n */\n suiEventClick: EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarEventClickDetail>>;\n /**\n * Fires after the calendar moves its own anchor, from the toolbar, the methods or the\nkeyboard; detail is the new `date`, ISO. A host write to `date` does not echo. A page that\nloads the records on show listens to this and `suiViewChange`. Does not bubble.\n */\n suiDateChange: EventEmitter<SuiCalendarCustomEvent<string>>;\n /**\n * Fires after the toolbar switches the view; detail is the new `view`. A week drawn as the\nagenda under `breakpoint` keeps `week`, so a change of width does not fire it, and neither\ndoes a host write. Does not bubble.\n */\n suiViewChange: EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarView>>;\n /**\n * Fires before the \"more\" link opens the calendar's own list of a day's records; detail is\n`{ date, events }`. Cancelable: `preventDefault()` keeps that list closed so the host can\nopen its own surface.\n */\n suiOverflow: EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarOverflowDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCard,\n inputs: ['flush', 'heading', 'hoverable', 'subtitle']\n})\n@Component({\n selector: 'sui-card',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['flush', 'heading', 'hoverable', 'subtitle'],\n})\nexport class SuiCard {\n protected el: HTMLSuiCardElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiCard extends Components.SuiCard {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCarousel,\n inputs: ['autoplay', 'circular', 'height', 'hideArrows', 'hideDots', 'index', 'orientation', 'perPage', 'step'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-carousel',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autoplay', 'circular', 'height', 'hideArrows', 'hideDots', 'index', 'orientation', 'perPage', 'step'],\n outputs: ['suiIndexChange'],\n})\nexport class SuiCarousel {\n protected el: HTMLSuiCarouselElement;\n @Output() suiIndexChange = new EventEmitter<SuiCarouselCustomEvent<number>>();\n /** Emits the new `index` when the element changes it (`suiIndexChange`), so `[(index)]` binds both ways. */\n @Output() indexChange = propChange<SuiCarouselCustomEvent<number>>(this, 'suiIndexChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCarouselCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCarousel extends Components.SuiCarousel {\n /**\n * Fires after navigation by the user or by autoplay; detail is the new page index. Does not\nbubble.\n */\n suiIndexChange: EventEmitter<SuiCarouselCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCascadeSelect,\n inputs: ['clearable', 'disabled', 'emptyMessage', 'error', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'name', 'open', 'openPath', 'options', 'placeholder', 'readOnly', 'required', 'showPath', 'size', 'tone', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-cascade-select',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['clearable', 'disabled', 'emptyMessage', 'error', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'name', 'open', 'openPath', 'options', 'placeholder', 'readOnly', 'required', 'showPath', 'size', 'tone', 'value', 'variant'],\n outputs: ['suiChange', 'suiOpen', 'suiOpenPathChange', 'suiClose'],\n})\nexport class SuiCascadeSelect {\n protected el: HTMLSuiCascadeSelectElement;\n @Output() suiChange = new EventEmitter<SuiCascadeSelectCustomEvent<ISuiCascadeSelectSuiKey>>();\n @Output() suiOpen = new EventEmitter<SuiCascadeSelectCustomEvent<void>>();\n @Output() suiOpenPathChange = new EventEmitter<SuiCascadeSelectCustomEvent<number[]>>();\n @Output() suiClose = new EventEmitter<SuiCascadeSelectCustomEvent<ISuiCascadeSelectSuiCloseReason>>();\n /** Emits the new `openPath` when the element changes it (`suiOpenPathChange`), so `[(openPath)]` binds both ways. */\n @Output() openPathChange = propChange<SuiCascadeSelectCustomEvent<number[]>>(this, 'suiOpenPathChange');\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiCascadeSelect['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCascadeSelectCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiCascadeSelectSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiCascadeSelectSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCascadeSelect extends Components.SuiCascadeSelect {\n /**\n * Fires when a leaf is picked; detail is the new `value`: the leaf's value as given, or `''`\nafter a clear.\n */\n suiChange: EventEmitter<SuiCascadeSelectCustomEvent<ISuiCascadeSelectSuiKey>>;\n /**\n * Fires after the element opens the menu itself (trigger click, ArrowDown, Enter, Space). Does\nnot bubble, so a dialog around the control never takes it for its own.\n */\n suiOpen: EventEmitter<SuiCascadeSelectCustomEvent<void>>;\n /**\n * Fires after the element moves `openPath` itself (hover, click or an arrow key over a branch, the\nback row, or an open from the trigger); detail is the new path. The prop is written first, so a\nframework binding stays in step. It reports a cursor move inside the menu, not a destination,\nwhich is why it is not `suiNavigate`. Does not bubble: it reports the panel's state, not the\nvalue, like `suiOpen` and `suiClose`.\n */\n suiOpenPathChange: EventEmitter<SuiCascadeSelectCustomEvent<number[]>>;\n /**\n * Fires before the element closes the menu itself; detail is\n`'pick' | 'escape' | 'outside' | 'trigger'`. Cancelable: `preventDefault()` keeps it open.\nTab reports `'outside'`, because focus left the control and `SuiCloseReason` has no member\nfor that. Does not bubble: a `preventDefault()` in a dialog's own `suiClose` listener cannot\nveto this one.\n */\n suiClose: EventEmitter<SuiCascadeSelectCustomEvent<ISuiCascadeSelectSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartBar,\n inputs: ['caption', 'currency', 'emptyMessage', 'every', 'fixedSize', 'heading', 'height', 'hoverIndex', 'labels', 'loading', 'money', 'orientation', 'refLine', 'series', 'stacked', 'subtitle', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-bar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'currency', 'emptyMessage', 'every', 'fixedSize', 'heading', 'height', 'hoverIndex', 'labels', 'loading', 'money', 'orientation', 'refLine', 'series', 'stacked', 'subtitle', 'width'],\n outputs: ['suiHover'],\n})\nexport class SuiChartBar {\n protected el: HTMLSuiChartBarElement;\n @Output() suiHover = new EventEmitter<SuiChartBarCustomEvent<ISuiChartBarSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartBarCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartBarSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartBar extends Components.SuiChartBar {\n /**\n * Fires when the pointer or the keyboard moves the hover to another category; `{ index: -1 }`\nwhen the pointer leaves, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartBarCustomEvent<ISuiChartBarSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartCandlestick,\n inputs: ['caption', 'currency', 'emptyMessage', 'every', 'fixedSize', 'heading', 'height', 'hoverIndex', 'items', 'kind', 'loading', 'money', 'subtitle', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-candlestick',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'currency', 'emptyMessage', 'every', 'fixedSize', 'heading', 'height', 'hoverIndex', 'items', 'kind', 'loading', 'money', 'subtitle', 'width'],\n outputs: ['suiHover'],\n})\nexport class SuiChartCandlestick {\n protected el: HTMLSuiChartCandlestickElement;\n @Output() suiHover = new EventEmitter<SuiChartCandlestickCustomEvent<ISuiChartCandlestickSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartCandlestickCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartCandlestickSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartCandlestick extends Components.SuiChartCandlestick {\n /**\n * Fires when the pointer or the keyboard moves the hover to another period; `{ index: -1 }`\nwhen the pointer leaves, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartCandlestickCustomEvent<ISuiChartCandlestickSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartCombo,\n inputs: ['bars', 'caption', 'currency', 'curve', 'emptyMessage', 'every', 'fixedSize', 'formatEnd', 'heading', 'height', 'hoverIndex', 'labels', 'line', 'loading', 'money', 'subtitle', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-combo',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['bars', 'caption', 'currency', 'curve', 'emptyMessage', 'every', 'fixedSize', 'formatEnd', 'heading', 'height', 'hoverIndex', 'labels', 'line', 'loading', 'money', 'subtitle', 'width'],\n outputs: ['suiHover'],\n})\nexport class SuiChartCombo {\n protected el: HTMLSuiChartComboElement;\n @Output() suiHover = new EventEmitter<SuiChartComboCustomEvent<ISuiChartComboSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartComboCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartComboSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartCombo extends Components.SuiChartCombo {\n /**\n * Fires when the pointer or the keyboard moves the hover to another period; `{ index: -1 }`\nwhen the pointer leaves, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartComboCustomEvent<ISuiChartComboSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartGauge,\n inputs: ['band', 'caption', 'diameter', 'format', 'heading', 'label', 'loading', 'max', 'min', 'subtitle', 'target', 'value']\n})\n@Component({\n selector: 'sui-chart-gauge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['band', 'caption', 'diameter', 'format', 'heading', 'label', 'loading', 'max', 'min', 'subtitle', 'target', 'value'],\n})\nexport class SuiChartGauge {\n protected el: HTMLSuiChartGaugeElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiChartGauge extends Components.SuiChartGauge {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartHeatmap,\n inputs: ['caption', 'cell', 'cols', 'currency', 'emptyMessage', 'heading', 'hideMax', 'hoverIndex', 'loading', 'money', 'rows', 'subtitle', 'values'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-heatmap',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'cell', 'cols', 'currency', 'emptyMessage', 'heading', 'hideMax', 'hoverIndex', 'loading', 'money', 'rows', 'subtitle', 'values'],\n outputs: ['suiHover'],\n})\nexport class SuiChartHeatmap {\n protected el: HTMLSuiChartHeatmapElement;\n @Output() suiHover = new EventEmitter<SuiChartHeatmapCustomEvent<ISuiChartHeatmapSuiChartHeatmapHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartHeatmapCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHeatmapHoverDetail as ISuiChartHeatmapSuiChartHeatmapHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartHeatmap extends Components.SuiChartHeatmap {\n /**\n * Fires when the pointer or the keyboard moves the hover to another cell: `{ index, row, col }`,\nall -1 when the pointer leaves the matrix, or Escape or a blur takes the keyboard's cell\naway.\n */\n suiHover: EventEmitter<SuiChartHeatmapCustomEvent<ISuiChartHeatmapSuiChartHeatmapHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartLine,\n inputs: ['caption', 'currency', 'curve', 'emptyMessage', 'every', 'fixedSize', 'formatEnd', 'heading', 'height', 'hoverIndex', 'kind', 'labels', 'loading', 'markers', 'money', 'plain', 'refLine', 'series', 'subtitle', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-line',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'currency', 'curve', 'emptyMessage', 'every', 'fixedSize', 'formatEnd', 'heading', 'height', 'hoverIndex', 'kind', 'labels', 'loading', 'markers', 'money', 'plain', 'refLine', 'series', 'subtitle', 'width'],\n outputs: ['suiHover'],\n})\nexport class SuiChartLine {\n protected el: HTMLSuiChartLineElement;\n @Output() suiHover = new EventEmitter<SuiChartLineCustomEvent<ISuiChartLineSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartLineCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartLineSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartLine extends Components.SuiChartLine {\n /**\n * Fires when the pointer or the keyboard moves the hover to another index; `{ index: -1 }` when\nthe pointer leaves the plot, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartLineCustomEvent<ISuiChartLineSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartNavigator,\n inputs: ['caption', 'curve', 'data', 'emptyMessage', 'heading', 'loading', 'subtitle', 'width', 'window', 'zoom'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-navigator',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'curve', 'data', 'emptyMessage', 'heading', 'loading', 'subtitle', 'width', 'window', 'zoom'],\n outputs: ['suiWindowChange'],\n})\nexport class SuiChartNavigator {\n protected el: HTMLSuiChartNavigatorElement;\n @Output() suiWindowChange = new EventEmitter<SuiChartNavigatorCustomEvent<ISuiChartNavigatorSuiChartWindow>>();\n /** Emits the new `window` when the element changes it (`suiWindowChange`), so `[(window)]` binds both ways. */\n @Output() windowChange = propChange<SuiChartNavigatorCustomEvent<ISuiChartNavigatorSuiChartWindow>>(this, 'suiWindowChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartNavigatorCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartWindow as ISuiChartNavigatorSuiChartWindow } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartNavigator extends Components.SuiChartNavigator {\n /**\n * Fires when the element writes a new `window`, the detail the new `[start, end]`: on a drag,\na key, the wheel or a pinch, and when new `data` moves the range. Re-slice the detail chart's\n`labels` and `series` from `start` to `end` on every event. It does not fire for a drag that\nstays on the same points. Does not bubble.\n */\n suiWindowChange: EventEmitter<SuiChartNavigatorCustomEvent<ISuiChartNavigatorSuiChartWindow>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartPie,\n inputs: ['caption', 'centerLabel', 'currency', 'diameter', 'emptyMessage', 'heading', 'hoverIndex', 'items', 'kind', 'loading', 'money', 'subtitle'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-pie',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'centerLabel', 'currency', 'diameter', 'emptyMessage', 'heading', 'hoverIndex', 'items', 'kind', 'loading', 'money', 'subtitle'],\n outputs: ['suiHover'],\n})\nexport class SuiChartPie {\n protected el: HTMLSuiChartPieElement;\n @Output() suiHover = new EventEmitter<SuiChartPieCustomEvent<ISuiChartPieSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartPieCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartPieSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartPie extends Components.SuiChartPie {\n /**\n * Fires when the hovered item changes; `index` is the item position, or -1 when nothing is hovered.\nHovering a slice or a legend row, reaching a slice with the arrow keys and focusing a legend\nrow all count as hover.\n */\n suiHover: EventEmitter<SuiChartPieCustomEvent<ISuiChartPieSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartRadar,\n inputs: ['axes', 'caption', 'currency', 'diameter', 'emptyMessage', 'heading', 'hoverIndex', 'loading', 'max', 'money', 'rings', 'series', 'subtitle'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-radar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['axes', 'caption', 'currency', 'diameter', 'emptyMessage', 'heading', 'hoverIndex', 'loading', 'max', 'money', 'rings', 'series', 'subtitle'],\n outputs: ['suiHover'],\n})\nexport class SuiChartRadar {\n protected el: HTMLSuiChartRadarElement;\n @Output() suiHover = new EventEmitter<SuiChartRadarCustomEvent<ISuiChartRadarSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartRadarCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartRadarSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartRadar extends Components.SuiChartRadar {\n /**\n * Fires when the pointer or the keyboard moves the hover to another axis; `{ index: -1 }` when\nthe pointer leaves the plot, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartRadarCustomEvent<ISuiChartRadarSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartScatter,\n inputs: ['caption', 'emptyMessage', 'every', 'fixedSize', 'formatX', 'formatY', 'heading', 'height', 'hoverIndex', 'loading', 'series', 'subtitle', 'width', 'xLabel', 'yLabel'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-scatter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'emptyMessage', 'every', 'fixedSize', 'formatX', 'formatY', 'heading', 'height', 'hoverIndex', 'loading', 'series', 'subtitle', 'width', 'xLabel', 'yLabel'],\n outputs: ['suiHover'],\n})\nexport class SuiChartScatter {\n protected el: HTMLSuiChartScatterElement;\n @Output() suiHover = new EventEmitter<SuiChartScatterCustomEvent<ISuiChartScatterSuiChartScatterHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartScatterCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartScatterHoverDetail as ISuiChartScatterSuiChartScatterHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartScatter extends Components.SuiChartScatter {\n /**\n * Fires when the pointer or the keyboard moves the hover to another point:\n`{ index, series, point }`, all -1 when the pointer leaves the marks, or Escape or a blur\ntakes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartScatterCustomEvent<ISuiChartScatterSuiChartScatterHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartSynced,\n inputs: ['hoverIndex']\n})\n@Component({\n selector: 'sui-chart-synced',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['hoverIndex'],\n outputs: ['suiHover'],\n})\nexport class SuiChartSynced {\n protected el: HTMLSuiChartSyncedElement;\n @Output() suiHover = new EventEmitter<SuiChartSyncedCustomEvent<ISuiChartSyncedSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartSyncedCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartSyncedSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartSynced extends Components.SuiChartSynced {\n /**\n * Fires once per change of the shared index; detail is `{ index }`. A panel's own `suiHover`\nstops at the panel, so a listener on the container, or above it, hears this event alone. A\npanel inside a nested `sui-chart-synced` belongs to that group, not to this one.\n */\n suiHover: EventEmitter<SuiChartSyncedCustomEvent<ISuiChartSyncedSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartTreemap,\n inputs: ['caption', 'currency', 'emptyMessage', 'fixedSize', 'heading', 'height', 'hoverIndex', 'items', 'loading', 'money', 'subtitle', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-treemap',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'currency', 'emptyMessage', 'fixedSize', 'heading', 'height', 'hoverIndex', 'items', 'loading', 'money', 'subtitle', 'width'],\n outputs: ['suiHover'],\n})\nexport class SuiChartTreemap {\n protected el: HTMLSuiChartTreemapElement;\n @Output() suiHover = new EventEmitter<SuiChartTreemapCustomEvent<ISuiChartTreemapSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartTreemapCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartTreemapSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartTreemap extends Components.SuiChartTreemap {\n /**\n * Fires when the pointer or the keyboard moves the hover to another item; `{ index: -1 }` when\nthe pointer leaves the tiles, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartTreemapCustomEvent<ISuiChartTreemapSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartWaterfall,\n inputs: ['caption', 'currency', 'emptyMessage', 'every', 'fixedSize', 'heading', 'height', 'hoverIndex', 'items', 'loading', 'money', 'subtitle', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-waterfall',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'currency', 'emptyMessage', 'every', 'fixedSize', 'heading', 'height', 'hoverIndex', 'items', 'loading', 'money', 'subtitle', 'width'],\n outputs: ['suiHover'],\n})\nexport class SuiChartWaterfall {\n protected el: HTMLSuiChartWaterfallElement;\n @Output() suiHover = new EventEmitter<SuiChartWaterfallCustomEvent<ISuiChartWaterfallSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartWaterfallCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartWaterfallSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartWaterfall extends Components.SuiChartWaterfall {\n /**\n * Fires when the pointer or the keyboard moves the hover to another step; `{ index: -1 }` when\nthe pointer leaves, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartWaterfallCustomEvent<ISuiChartWaterfallSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCheckbox,\n inputs: ['checked', 'description', 'disabled', 'error', 'help', 'indeterminate', 'invalid', 'label', 'name', 'readOnly', 'required', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-checkbox',\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', 'error', 'help', 'indeterminate', 'invalid', 'label', 'name', 'readOnly', 'required', 'size', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiCheckbox {\n protected el: HTMLSuiCheckboxElement;\n @Output() suiChange = new EventEmitter<SuiCheckboxCustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCheckboxCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCheckbox extends Components.SuiCheckbox {\n /**\n * Fires on toggle; detail is the new checked state.\n */\n suiChange: EventEmitter<SuiCheckboxCustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCheckboxGroup,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'name', 'options', 'orientation', 'readOnly', 'required', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-checkbox-group',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'name', 'options', 'orientation', 'readOnly', 'required', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiCheckboxGroup {\n protected el: HTMLSuiCheckboxGroupElement;\n @Output() suiChange = new EventEmitter<SuiCheckboxGroupCustomEvent<ISuiCheckboxGroupSuiKey[]>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCheckboxGroupCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiCheckboxGroupSuiKey } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCheckboxGroup extends Components.SuiCheckboxGroup {\n /**\n * Fires when an option toggles; detail is the new `value`, the full array of checked values.\n */\n suiChange: EventEmitter<SuiCheckboxGroupCustomEvent<ISuiCheckboxGroupSuiKey[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChip,\n inputs: ['clickable', 'disabled', 'icon', 'image', 'initial', 'label', 'removable', 'selected', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chip',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['clickable', 'disabled', 'icon', 'image', 'initial', 'label', 'removable', 'selected', 'size', 'value'],\n outputs: ['suiRemove'],\n})\nexport class SuiChip {\n protected el: HTMLSuiChipElement;\n @Output() suiRemove = new EventEmitter<SuiChipCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChipCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChip extends Components.SuiChip {\n /**\n * Fires when the remove control is activated: a click on the X, or Backspace or Delete while\nthe X or a clickable chip holds focus. Detail is the chip's `value`, or its `label` when it\nhas none, as every `suiRemove` in the library carries the item that went. The control stops\npropagation, so removing never counts as a chip click, and a disabled chip does not emit.\n */\n suiRemove: EventEmitter<SuiChipCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChoiceCards,\n inputs: ['columns', 'disabled', 'error', 'help', 'invalid', 'label', 'multiple', 'name', 'options', 'readOnly', 'required', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-choice-cards',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columns', 'disabled', 'error', 'help', 'invalid', 'label', 'multiple', 'name', 'options', 'readOnly', 'required', 'value', 'variant'],\n outputs: ['suiChange'],\n})\nexport class SuiChoiceCards {\n protected el: HTMLSuiChoiceCardsElement;\n @Output() suiChange = new EventEmitter<SuiChoiceCardsCustomEvent<ISuiChoiceCardsSuiChoiceValue>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChoiceCardsCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChoiceValue as ISuiChoiceCardsSuiChoiceValue } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChoiceCards extends Components.SuiChoiceCards {\n /**\n * Fires when the selection changes; detail is the new `value`: the picked card's value, or the\narray of picked values when `multiple`.\n */\n suiChange: EventEmitter<SuiChoiceCardsCustomEvent<ISuiChoiceCardsSuiChoiceValue>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCodeBlock,\n inputs: ['code', 'label', 'language', 'lines', 'maxHeight', 'noCopy', 'size', 'wrap', 'wrapToggle'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-code-block',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['code', 'label', 'language', 'lines', 'maxHeight', 'noCopy', 'size', 'wrap', 'wrapToggle'],\n outputs: ['suiCopy', 'suiCopyError'],\n})\nexport class SuiCodeBlock {\n protected el: HTMLSuiCodeBlockElement;\n @Output() suiCopy = new EventEmitter<SuiCodeBlockCustomEvent<string>>();\n @Output() suiCopyError = new EventEmitter<SuiCodeBlockCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCodeBlockCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCodeBlock extends Components.SuiCodeBlock {\n /**\n * Fires after the source reaches the clipboard; detail is the copied text. Copy falls back to a\nhidden textarea where `navigator.clipboard` is absent, so plain http still works.\n */\n suiCopy: EventEmitter<SuiCodeBlockCustomEvent<string>>;\n /**\n * Fires when the clipboard refused the write. No Copied state shows; detail is the text that\nwas not copied, which is where your own toast belongs.\n */\n suiCopyError: EventEmitter<SuiCodeBlockCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiColorEditor,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'name', 'noAlpha', 'presets', 'readOnly', 'recentsKey', 'required', 'showContrast', 'value', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-color-editor',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'name', 'noAlpha', 'presets', 'readOnly', 'recentsKey', 'required', 'showContrast', 'value', 'width'],\n outputs: ['suiInput', 'suiChange'],\n})\nexport class SuiColorEditor {\n protected el: HTMLSuiColorEditorElement;\n @Output() suiInput = new EventEmitter<SuiColorEditorCustomEvent<ISuiColorEditorSuiColorEditorValueDetail>>();\n @Output() suiChange = new EventEmitter<SuiColorEditorCustomEvent<ISuiColorEditorSuiColorEditorValueDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiColorEditorCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiColorEditorValueDetail as ISuiColorEditorSuiColorEditorValueDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiColorEditor extends Components.SuiColorEditor {\n /**\n * Fires on every color change, drag frames included; detail is `{ hex, alpha, rgb, hsl, css }`.\n */\n suiInput: EventEmitter<SuiColorEditorCustomEvent<ISuiColorEditorSuiColorEditorValueDetail>>;\n /**\n * Fires when a color is committed: a drag released, a key, a swatch, the eyedropper or a field entry. Same detail as `suiInput`.\n */\n suiChange: EventEmitter<SuiColorEditorCustomEvent<ISuiColorEditorSuiColorEditorValueDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiColorPicker,\n inputs: ['disabled', 'error', 'help', 'inline', 'invalid', 'label', 'name', 'open', 'readOnly', 'required', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-color-picker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'inline', 'invalid', 'label', 'name', 'open', 'readOnly', 'required', 'value'],\n outputs: ['suiChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiColorPicker {\n protected el: HTMLSuiColorPickerElement;\n @Output() suiChange = new EventEmitter<SuiColorPickerCustomEvent<string>>();\n @Output() suiOpen = new EventEmitter<SuiColorPickerCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiColorPickerCustomEvent<ISuiColorPickerSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiColorPicker['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiColorPickerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiColorPickerSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiColorPicker extends Components.SuiColorPicker {\n /**\n * Fires when a swatch is picked; detail is the hex string.\n */\n suiChange: EventEmitter<SuiColorPickerCustomEvent<string>>;\n /**\n * Fires after the element opens the palette itself. Does not bubble, so a dialog around the picker\nnever takes it for its own.\n */\n suiOpen: EventEmitter<SuiColorPickerCustomEvent<void>>;\n /**\n * Fires before the element closes the palette itself; detail is `'escape' | 'outside' | 'trigger'`\n(Tab reports `'outside'`, as the select family does, because focus left the control).\nPicking deliberately leaves the panel open, so there is no `'pick'` reason here.\nCancelable: `preventDefault()` keeps it open. Does not bubble: a `preventDefault()` in a dialog's\nown `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiColorPickerCustomEvent<ISuiColorPickerSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCommandPalette,\n inputs: ['brand', 'emptyFilterMessage', 'emptyMessage', 'externalFilter', 'groups', 'open', 'placeholder', 'query']\n})\n@Component({\n selector: 'sui-command-palette',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['brand', 'emptyFilterMessage', 'emptyMessage', 'externalFilter', 'groups', 'open', 'placeholder', 'query'],\n outputs: ['suiClose', 'suiPick', 'suiQueryChange'],\n})\nexport class SuiCommandPalette {\n protected el: HTMLSuiCommandPaletteElement;\n @Output() suiClose = new EventEmitter<SuiCommandPaletteCustomEvent<ISuiCommandPaletteSuiCloseReason>>();\n @Output() suiPick = new EventEmitter<SuiCommandPaletteCustomEvent<ISuiCommandPaletteSuiCommandItem>>();\n @Output() suiQueryChange = new EventEmitter<SuiCommandPaletteCustomEvent<string>>();\n /** Emits the new `query` when the element changes it (`suiQueryChange`), so `[(query)]` binds both ways. */\n @Output() queryChange = propChange<SuiCommandPaletteCustomEvent<string>>(this, 'suiQueryChange');\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiCommandPalette['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCommandPaletteCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiCommandPaletteSuiCloseReason } from '@shineuix/core/dist/components';\nimport type { SuiCommandItem as ISuiCommandPaletteSuiCommandItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCommandPalette extends Components.SuiCommandPalette {\n /**\n * Fires before the palette closes itself; detail is `'escape' | 'scrim' | 'pick'`.\nCancelable: `preventDefault()` keeps it open. It does not bubble.\n */\n suiClose: EventEmitter<SuiCommandPaletteCustomEvent<ISuiCommandPaletteSuiCloseReason>>;\n /**\n * Fires when a row is chosen (click or Enter); detail is the item. `suiClose` follows with reason `'pick'`.\n */\n suiPick: EventEmitter<SuiCommandPaletteCustomEvent<ISuiCommandPaletteSuiCommandItem>>;\n /**\n * Fires on every keystroke in the search field; detail is the new `query`, so a host can run a\nremote or fuzzy search. Assigning `query` from code does not emit, so a host can feed the\nfield back without a loop. Does not bubble.\n */\n suiQueryChange: EventEmitter<SuiCommandPaletteCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiConfigList,\n inputs: ['breakpoint', 'controlAlign', 'controlWidth', 'heading', 'headingLevel', 'subtitle', 'variant']\n})\n@Component({\n selector: 'sui-config-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['breakpoint', 'controlAlign', 'controlWidth', 'heading', 'headingLevel', 'subtitle', 'variant'],\n})\nexport class SuiConfigList {\n protected el: HTMLSuiConfigListElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiConfigList extends Components.SuiConfigList {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiConfigRow,\n inputs: ['breakpoint', 'controlAlign', 'controlWidth', 'description', 'previewColumn', 'term', 'variant']\n})\n@Component({\n selector: 'sui-config-row',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['breakpoint', 'controlAlign', 'controlWidth', 'description', 'previewColumn', 'term', 'variant'],\n})\nexport class SuiConfigRow {\n protected el: HTMLSuiConfigRowElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiConfigRow extends Components.SuiConfigRow {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiConfirmDialog,\n inputs: ['cancelLabel', 'confirmDisabled', 'confirmLabel', 'confirmVariant', 'detail', 'heading', 'message', 'open', 'pending', 'returnFocus']\n})\n@Component({\n selector: 'sui-confirm-dialog',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['cancelLabel', 'confirmDisabled', 'confirmLabel', 'confirmVariant', 'detail', 'heading', 'message', 'open', 'pending', 'returnFocus'],\n outputs: ['suiConfirm', 'suiClose'],\n})\nexport class SuiConfirmDialog {\n protected el: HTMLSuiConfirmDialogElement;\n @Output() suiConfirm = new EventEmitter<SuiConfirmDialogCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiConfirmDialogCustomEvent<ISuiConfirmDialogSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiConfirmDialog['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiConfirmDialogCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiConfirmDialogSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiConfirmDialog extends Components.SuiConfirmDialog {\n /**\n * Fires when the confirm button is pressed. Cancelable: `preventDefault()` keeps the dialog\nopen, which is how a server-backed confirmation works: refuse it, set `pending`, and clear\n`open` when the request resolves.\n */\n suiConfirm: EventEmitter<SuiConfirmDialogCustomEvent<void>>;\n /**\n * Fires when Cancel, Escape or the scrim asks to close; detail is `'cancel' | 'escape' | 'scrim'`.\nCancelable: `preventDefault()` keeps it open and keeps focus inside. It does not bubble, as\non every dismissible surface.\n */\n suiClose: EventEmitter<SuiConfirmDialogCustomEvent<ISuiConfirmDialogSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiConfirmPopup,\n inputs: ['cancelLabel', 'confirmLabel', 'confirmVariant', 'message', 'open', 'position']\n})\n@Component({\n selector: 'sui-confirm-popup',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['cancelLabel', 'confirmLabel', 'confirmVariant', 'message', 'open', 'position'],\n outputs: ['suiOpen', 'suiConfirm', 'suiClose'],\n})\nexport class SuiConfirmPopup {\n protected el: HTMLSuiConfirmPopupElement;\n @Output() suiOpen = new EventEmitter<SuiConfirmPopupCustomEvent<void>>();\n @Output() suiConfirm = new EventEmitter<SuiConfirmPopupCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiConfirmPopupCustomEvent<ISuiConfirmPopupSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiConfirmPopup['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiConfirmPopupCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiConfirmPopupSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiConfirmPopup extends Components.SuiConfirmPopup {\n /**\n * Fires when the trigger opens the panel. It does not bubble.\n */\n suiOpen: EventEmitter<SuiConfirmPopupCustomEvent<void>>;\n /**\n * Fires when the confirm button is pressed. Cancelable, as on sui-confirm-dialog: unless a\nlistener calls `preventDefault()`, the panel closes itself and focus returns to the trigger.\n */\n suiConfirm: EventEmitter<SuiConfirmPopupCustomEvent<void>>;\n /**\n * Fires before the panel closes itself; detail is `'cancel' | 'escape' | 'outside' | 'trigger'`.\nCancel and Escape return focus to the trigger. Cancelable: `preventDefault()` keeps it open.\nIt does not bubble, so a dialog around the trigger never hears it.\n */\n suiClose: EventEmitter<SuiConfirmPopupCustomEvent<ISuiConfirmPopupSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiContextMenu,\n inputs: ['global', 'items', 'open', 'width', 'x', 'y']\n})\n@Component({\n selector: 'sui-context-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['global', 'items', 'open', 'width', 'x', 'y'],\n outputs: ['suiPick', 'suiOpen', 'suiClose'],\n})\nexport class SuiContextMenu {\n protected el: HTMLSuiContextMenuElement;\n @Output() suiPick = new EventEmitter<SuiContextMenuCustomEvent<ISuiContextMenuSuiMenuItem>>();\n @Output() suiOpen = new EventEmitter<SuiContextMenuCustomEvent<ISuiContextMenuSuiContextMenuOpenDetail>>();\n @Output() suiClose = new EventEmitter<SuiContextMenuCustomEvent<ISuiContextMenuSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiContextMenu['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiContextMenuCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiMenuItem as ISuiContextMenuSuiMenuItem } from '@shineuix/core/dist/components';\nimport type { SuiContextMenuOpenDetail as ISuiContextMenuSuiContextMenuOpenDetail } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiContextMenuSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiContextMenu extends Components.SuiContextMenu {\n /**\n * Fires when a row is picked; detail is the item. `item.command()` also runs, then the menu closes.\n */\n suiPick: EventEmitter<SuiContextMenuCustomEvent<ISuiContextMenuSuiMenuItem>>;\n /**\n * Fires when a right-click opens the menu; detail is where it opened, the\n`SuiContextMenuOpenDetail` offset. It does not bubble.\n */\n suiOpen: EventEmitter<SuiContextMenuCustomEvent<ISuiContextMenuSuiContextMenuOpenDetail>>;\n /**\n * Fires before the menu closes itself; detail is `'pick' | 'outside' | 'escape'`\n(`'outside'` covers a pointer outside the menu, a press in the region, and Tab, which hands\nfocus back to what had it when the menu opened and carries on from there).\nCancelable: `preventDefault()` keeps it open. It does not bubble.\n */\n suiClose: EventEmitter<SuiContextMenuCustomEvent<ISuiContextMenuSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCopyButton,\n inputs: ['copied', 'copiedLabel', 'disabled', 'errorLabel', 'feedback', 'from', 'label', 'size', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-copy-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['copied', 'copiedLabel', 'disabled', 'errorLabel', 'feedback', 'from', 'label', 'size', 'value', 'variant'],\n outputs: ['suiCopy', 'suiCopyError'],\n})\nexport class SuiCopyButton {\n protected el: HTMLSuiCopyButtonElement;\n @Output() suiCopy = new EventEmitter<SuiCopyButtonCustomEvent<string>>();\n @Output() suiCopyError = new EventEmitter<SuiCopyButtonCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCopyButtonCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCopyButton extends Components.SuiCopyButton {\n /**\n * Fires after the value reaches the clipboard; detail is the copied text. The event and the\ncheck state follow the confirmed write, not the press. The write goes through\n`navigator.clipboard.writeText`, with a hidden textarea and `execCommand('copy')` as the\nfallback in insecure contexts.\n */\n suiCopy: EventEmitter<SuiCopyButtonCustomEvent<string>>;\n /**\n * Fires when the write failed. The button shows `errorLabel` for 1.6 s and announces it; the\nevent is for a host that wants to offer its own recovery. Detail is the value that was not\ncopied.\n */\n suiCopyError: EventEmitter<SuiCopyButtonCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDataGrid,\n inputs: ['columnLayout', 'columns', 'copyFormulas', 'density', 'editMode', 'emptyFilterMessage', 'emptyMessage', 'filterDisplay', 'filterModel', 'focusedCell', 'footerTotals', 'hideSelectionBar', 'loading', 'nullOrder', 'overscan', 'pinnedBottom', 'pinnedTop', 'rangeSelection', 'reorderableColumns', 'rowClass', 'rowHeights', 'rowKey', 'rowNumbers', 'rows', 'selection', 'selectionMode', 'showColumnToggle', 'sortIndicator', 'sortMode', 'sorts', 'stateKey', 'stateStorage'],\n methods: ['scrollToRow', 'focusCell', 'setFocus', 'exportCsv', 'getViewport', 'autosizeColumn', 'setFilter', 'paste', 'copy', 'undo', 'redo', 'cut']\n})\n@Component({\n selector: 'sui-data-grid',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columnLayout', 'columns', 'copyFormulas', 'density', 'editMode', 'emptyFilterMessage', 'emptyMessage', 'filterDisplay', 'filterModel', 'focusedCell', 'footerTotals', 'hideSelectionBar', 'loading', 'nullOrder', 'overscan', 'pinnedBottom', 'pinnedTop', 'rangeSelection', 'reorderableColumns', 'rowClass', 'rowHeights', 'rowKey', 'rowNumbers', 'rows', 'selection', 'selectionMode', 'showColumnToggle', 'sortIndicator', 'sortMode', 'sorts', 'stateKey', 'stateStorage'],\n outputs: ['suiViewport', 'suiCellFocus', 'suiCellActivate', 'suiSort', 'suiRangeChange', 'suiCellEdit', 'suiSelectionChange', 'suiColumnLayoutChange', 'suiFilter', 'suiCellContextMenu', 'suiCut', 'suiCopy', 'suiCopyError', 'suiFill', 'suiPaste'],\n})\nexport class SuiDataGrid {\n protected el: HTMLSuiDataGridElement;\n @Output() suiViewport = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridViewportDetail>>();\n @Output() suiCellFocus = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridCell>>();\n @Output() suiCellActivate = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridCell>>();\n @Output() suiSort = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridSort[]>>();\n @Output() suiRangeChange = new EventEmitter<SuiDataGridCustomEvent<number>>();\n @Output() suiCellEdit = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridCellEditDetail>>();\n @Output() suiSelectionChange = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridRowSelection>>();\n @Output() suiColumnLayoutChange = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridLayout>>();\n @Output() suiFilter = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridFilterModel>>();\n @Output() suiCellContextMenu = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridContextMenuDetail>>();\n @Output() suiCut = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridFillDetail>>();\n @Output() suiCopy = new EventEmitter<SuiDataGridCustomEvent<string>>();\n @Output() suiCopyError = new EventEmitter<SuiDataGridCustomEvent<string>>();\n @Output() suiFill = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridFillDetail>>();\n @Output() suiPaste = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridPasteDetail>>();\n /** Emits the new `columnLayout` when the element changes it (`suiColumnLayoutChange`), so `[(columnLayout)]` binds both ways. */\n @Output() columnLayoutChange = propChange<SuiDataGridCustomEvent<ISuiDataGridSuiGridLayout>>(this, 'suiColumnLayoutChange');\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiDataGridCustomEvent<ISuiDataGridSuiGridRowSelection>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDataGridCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiGridViewportDetail as ISuiDataGridSuiGridViewportDetail } from '@shineuix/core/dist/components';\nimport type { SuiGridCell as ISuiDataGridSuiGridCell } from '@shineuix/core/dist/components';\nimport type { SuiGridSort as ISuiDataGridSuiGridSort } from '@shineuix/core/dist/components';\nimport type { SuiGridCellEditDetail as ISuiDataGridSuiGridCellEditDetail } from '@shineuix/core/dist/components';\nimport type { SuiGridRowSelection as ISuiDataGridSuiGridRowSelection } from '@shineuix/core/dist/components';\nimport type { SuiGridLayout as ISuiDataGridSuiGridLayout } from '@shineuix/core/dist/components';\nimport type { SuiGridFilterModel as ISuiDataGridSuiGridFilterModel } from '@shineuix/core/dist/components';\nimport type { SuiGridContextMenuDetail as ISuiDataGridSuiGridContextMenuDetail } from '@shineuix/core/dist/components';\nimport type { SuiGridFillDetail as ISuiDataGridSuiGridFillDetail } from '@shineuix/core/dist/components';\nimport type { SuiGridPasteDetail as ISuiDataGridSuiGridPasteDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDataGrid extends Components.SuiDataGrid {\n /**\n * Fires when the mounted window changes, and once after the first render. Fetch the rows the\nwindow asks for here to page a grid from a server. Does not bubble.\n */\n suiViewport: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridViewportDetail>>;\n /**\n * Fires when the focused cell moves, by key or by pointer; detail is `{ row, col }`. Does not\nbubble.\n */\n suiCellFocus: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridCell>>;\n /**\n * Fires when a cell is activated with Enter or a double click; detail is `{ row, col }`.\n */\n suiCellActivate: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridCell>>;\n /**\n * Fires when a header click changes the sort; detail is the new ordered term list. Does not\nbubble.\n */\n suiSort: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridSort[]>>;\n /**\n * Fires when the selected range changes; detail is the number of cells now selected. Does not\nbubble.\n */\n suiRangeChange: EventEmitter<SuiDataGridCustomEvent<number>>;\n /**\n * Fires when an editor commits and the value actually changed, and again for each cell an undo\nor a redo puts back, with `source` set. Detail is a `SuiGridCellEditDetail`, the shape\n`sui-data-table` reports too: apply it to your own rows through `rowKey` or `sourceIndex`.\n */\n suiCellEdit: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridCellEditDetail>>;\n /**\n * Fires when the row selection changes; detail is the new `selection`. Under `mode: 'include'`\nits `keys` are the selected rows; under `mode: 'exclude'` every row is selected except its\n`keys`, so read the mode before treating `keys` as the selected rows. Does not bubble.\n */\n suiSelectionChange: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridRowSelection>>;\n /**\n * Fires after a column resize, reorder or toggle; detail is the whole `columnLayout`, ready to\npersist. Does not bubble.\n */\n suiColumnLayoutChange: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridLayout>>;\n /**\n * Fires after the filter row or the filter menu rewrites a rule; detail is the whole model.\nDoes not bubble.\n */\n suiFilter: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridFilterModel>>;\n /**\n * Fires on a right click or the context-menu key over a cell, after focus has moved there. The\ngrid suppresses the browser menu and opens nothing itself: what a menu should contain is the\nhost's business, and `sui-context-menu` is the element to open with it.\n */\n suiCellContextMenu: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridContextMenuDetail>>;\n /**\n * Fires when a cut takes the selection to the clipboard, after its `suiCopy`. The rectangle is\nreported and the rows are not written, exactly as with a fill or a paste: the host owns the\ndata.\n */\n suiCut: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridFillDetail>>;\n /**\n * Fires after a copy or a cut reaches the clipboard; detail is the copied text, the tab-separated\nrows another application reads, with a formula cell escaped unless `copyFormulas` is set.\n */\n suiCopy: EventEmitter<SuiDataGridCustomEvent<string>>;\n /**\n * Fires when the browser refused a copy or a cut, so nothing reached the clipboard and a cut\ncleared nothing; detail is the text that was not copied.\n */\n suiCopyError: EventEmitter<SuiDataGridCustomEvent<string>>;\n /**\n * Fires when the fill handle is released; detail carries the rectangle to write and the values\nthe series inference produced for it.\n */\n suiFill: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridFillDetail>>;\n /**\n * Fires when a block is pasted over the focused cell. The grid parses the clipboard and reports\nthe rectangle; writing it is the host's, since only the host knows whether the dataset may\ngrow.\n */\n suiPaste: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridPasteDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDataTable,\n inputs: ['bare', 'breakpoint', 'columnLayout', 'columns', 'density', 'editMode', 'emptyFilterMessage', 'emptyMessage', 'expandedRows', 'filterDisplay', 'filterModel', 'footerMeta', 'footerTotals', 'globalFilter', 'globalFilterFields', 'gridlines', 'groupBy', 'groupSummary', 'hideSelectionBar', 'lazy', 'loading', 'nullOrder', 'overscan', 'page', 'pageSize', 'reorderableColumns', 'rowDetail', 'rowKey', 'rowPartial', 'rowTree', 'rows', 'selection', 'selectionMode', 'showColumnToggle', 'sortIndicator', 'sortMode', 'sorts', 'stateKey', 'stateStorage', 'striped', 'totalRecords', 'viewHeight', 'virtual', 'virtualRowHeight'],\n methods: ['exportCsv', 'getViewWidth', 'setFocus', 'scrollToRow', 'setFilter']\n})\n@Component({\n selector: 'sui-data-table',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['bare', 'breakpoint', 'columnLayout', 'columns', 'density', 'editMode', 'emptyFilterMessage', 'emptyMessage', 'expandedRows', 'filterDisplay', 'filterModel', 'footerMeta', 'footerTotals', 'globalFilter', 'globalFilterFields', 'gridlines', 'groupBy', 'groupSummary', 'hideSelectionBar', 'lazy', 'loading', 'nullOrder', 'overscan', 'page', 'pageSize', 'reorderableColumns', 'rowDetail', 'rowKey', 'rowPartial', 'rowTree', 'rows', 'selection', 'selectionMode', 'showColumnToggle', 'sortIndicator', 'sortMode', 'sorts', 'stateKey', 'stateStorage', 'striped', 'totalRecords', 'viewHeight', 'virtual', 'virtualRowHeight'],\n outputs: ['suiSort', 'suiFilter', 'suiSelectionChange', 'suiRowClick', 'suiRowContextMenu', 'suiRowFocus', 'suiExpandedRowsChange', 'suiCellEdit', 'suiPageChange', 'suiPageSizeChange', 'suiColumnLayoutChange', 'suiViewWidthChange'],\n})\nexport class SuiDataTable {\n protected el: HTMLSuiDataTableElement;\n @Output() suiSort = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridSort[]>>();\n @Output() suiFilter = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridFilterModel>>();\n @Output() suiSelectionChange = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridRowSelection>>();\n @Output() suiRowClick = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiDataTableRowEventDetail>>();\n @Output() suiRowContextMenu = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiDataTableRowEventDetail>>();\n @Output() suiRowFocus = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiDataTableRowEventDetail>>();\n @Output() suiExpandedRowsChange = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiKey[]>>();\n @Output() suiCellEdit = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridCellEditDetail>>();\n @Output() suiPageChange = new EventEmitter<SuiDataTableCustomEvent<number>>();\n @Output() suiPageSizeChange = new EventEmitter<SuiDataTableCustomEvent<number>>();\n @Output() suiColumnLayoutChange = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridLayout>>();\n @Output() suiViewWidthChange = new EventEmitter<SuiDataTableCustomEvent<number>>();\n /** Emits the new `columnLayout` when the element changes it (`suiColumnLayoutChange`), so `[(columnLayout)]` binds both ways. */\n @Output() columnLayoutChange = propChange<SuiDataTableCustomEvent<ISuiDataTableSuiGridLayout>>(this, 'suiColumnLayoutChange');\n /** Emits the new `expandedRows` when the element changes it (`suiExpandedRowsChange`), so `[(expandedRows)]` binds both ways. */\n @Output() expandedRowsChange = propChange<SuiDataTableCustomEvent<ISuiDataTableSuiKey[]>>(this, 'suiExpandedRowsChange');\n /** Emits the new `page` when the element changes it (`suiPageChange`), so `[(page)]` binds both ways. */\n @Output() pageChange = propChange<SuiDataTableCustomEvent<number>>(this, 'suiPageChange');\n /** Emits the new `pageSize` when the element changes it (`suiPageSizeChange`), so `[(pageSize)]` binds both ways. */\n @Output() pageSizeChange = propChange<SuiDataTableCustomEvent<number>>(this, 'suiPageSizeChange');\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiDataTableCustomEvent<ISuiDataTableSuiGridRowSelection>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDataTableCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiGridSort as ISuiDataTableSuiGridSort } from '@shineuix/core/dist/components';\nimport type { SuiGridFilterModel as ISuiDataTableSuiGridFilterModel } from '@shineuix/core/dist/components';\nimport type { SuiGridRowSelection as ISuiDataTableSuiGridRowSelection } from '@shineuix/core/dist/components';\nimport type { SuiDataTableRowEventDetail as ISuiDataTableSuiDataTableRowEventDetail } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiDataTableSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiGridCellEditDetail as ISuiDataTableSuiGridCellEditDetail } from '@shineuix/core/dist/components';\nimport type { SuiGridLayout as ISuiDataTableSuiGridLayout } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDataTable extends Components.SuiDataTable {\n /**\n * Fires when a header click changes the sort; detail is the new ordered term list. Does not\nbubble.\n */\n suiSort: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridSort[]>>;\n /**\n * Fires when the filter row, the filter menu or the global term changes the filter; detail is\nthe whole model. Does not bubble.\n */\n suiFilter: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridFilterModel>>;\n /**\n * Fires when the selection changes; detail is the new `selection`. Under `mode: 'include'` its\n`keys` are the selected rows; under `mode: 'exclude'` every row is selected except its `keys`,\nwhich is how select-all reads over rows the page does not hold. Does not bubble.\n */\n suiSelectionChange: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridRowSelection>>;\n /**\n * Fires when a row is clicked or activated with Enter; detail is `{ row, key, index, x, y }`.\n */\n suiRowClick: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiDataTableRowEventDetail>>;\n /**\n * Fires on a right click over a row; detail carries the pointer position so a `sui-context-menu`\ncan open there. The browser's own menu is suppressed.\n */\n suiRowContextMenu: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiDataTableRowEventDetail>>;\n /**\n * Fires when a row, or a control inside it such as its checkbox, receives focus; detail is\n`{ row, key, index, x, y }` with `x` and `y` zero. Focus moving between a row and its own\ncontrols does not fire it again. A host opens a menu or runs a shortcut for the focused row\nfrom this rather than by reading a cell. Does not bubble.\n */\n suiRowFocus: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiDataTableRowEventDetail>>;\n /**\n * Fires when a row opens or closes; detail is the new `expandedRows`. Does not bubble.\n */\n suiExpandedRowsChange: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiKey[]>>;\n /**\n * Fires once per changed column when an edit commits. Detail is a `SuiGridCellEditDetail`, the shape\n`sui-data-grid` reports too: `{ data, rowKey, sourceIndex, rowIndex, columnKey, value,\nprevious }`. The table does not write the row, so apply the value through `rowKey` and hand\nback a new `rows` array.\n */\n suiCellEdit: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridCellEditDetail>>;\n /**\n * Fires when the page changes, by the paginator or by a page size that moved it; detail is the\nnew `page`. `pageSize` is already written, so a lazy host reads both here. Does not bubble.\n */\n suiPageChange: EventEmitter<SuiDataTableCustomEvent<number>>;\n /**\n * Fires when the paginator's rows-per-page control changes the page size; detail is the new\n`pageSize`. A page size that moves the page writes both props, then fires this and\n`suiPageChange`. Does not bubble.\n */\n suiPageSizeChange: EventEmitter<SuiDataTableCustomEvent<number>>;\n /**\n * Fires after a column resize, reorder or toggle; detail is the whole `columnLayout`. Does not\nbubble.\n */\n suiColumnLayoutChange: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridLayout>>;\n /**\n * Fires when the scroller's client width changes, the first measurement after load included;\ndetail is the width in px, what `getViewWidth()` answers. It comes through the table's own ResizeObserver, so it is at most one\nper frame, and a host that hides or sizes columns from it writes `columnLayout` in the frame the\nwidth changed, which the table already allows for. Does not bubble.\n */\n suiViewWidthChange: EventEmitter<SuiDataTableCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDataView,\n inputs: ['columns', 'emptyMessage', 'hideToggle', 'itemRender', 'items', 'layout', 'loading', 'page', 'pageSize', 'pageSizes', 'paginator', 'totalRecords'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-data-view',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columns', 'emptyMessage', 'hideToggle', 'itemRender', 'items', 'layout', 'loading', 'page', 'pageSize', 'pageSizes', 'paginator', 'totalRecords'],\n outputs: ['suiLayoutChange', 'suiPageChange', 'suiPageSizeChange'],\n})\nexport class SuiDataView {\n protected el: HTMLSuiDataViewElement;\n @Output() suiLayoutChange = new EventEmitter<SuiDataViewCustomEvent<ISuiDataViewSuiDataViewLayout>>();\n @Output() suiPageChange = new EventEmitter<SuiDataViewCustomEvent<number>>();\n @Output() suiPageSizeChange = new EventEmitter<SuiDataViewCustomEvent<number>>();\n /** Emits the new `layout` when the element changes it (`suiLayoutChange`), so `[(layout)]` binds both ways. */\n @Output() layoutChange = propChange<SuiDataViewCustomEvent<ISuiDataViewSuiDataViewLayout>>(this, 'suiLayoutChange');\n /** Emits the new `page` when the element changes it (`suiPageChange`), so `[(page)]` binds both ways. */\n @Output() pageChange = propChange<SuiDataViewCustomEvent<number>>(this, 'suiPageChange');\n /** Emits the new `pageSize` when the element changes it (`suiPageSizeChange`), so `[(pageSize)]` binds both ways. */\n @Output() pageSizeChange = propChange<SuiDataViewCustomEvent<number>>(this, 'suiPageSizeChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDataViewCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiDataViewLayout as ISuiDataViewSuiDataViewLayout } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDataView extends Components.SuiDataView {\n /**\n * Fires when the layout toggle changes; detail is `'grid' | 'list'`. Does not bubble.\n */\n suiLayoutChange: EventEmitter<SuiDataViewCustomEvent<ISuiDataViewSuiDataViewLayout>>;\n /**\n * Fires when the page changes, including a page the view clamps after the record count\nshrinks; detail is the new `page`. `pageSize` is already written, so a host that fetches one\npage at a time reads both here. Does not bubble.\n */\n suiPageChange: EventEmitter<SuiDataViewCustomEvent<number>>;\n /**\n * Fires when the paginator's rows-per-page control changes the page size; detail is the new\n`pageSize`. The view writes both props, then fires this and, when the page moved,\n`suiPageChange`. Does not bubble.\n */\n suiPageSizeChange: EventEmitter<SuiDataViewCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDatePicker,\n inputs: ['dateFormat', 'disabled', 'disabledDates', 'disabledDays', 'error', 'firstDayOfWeek', 'help', 'hourFormat', 'inline', 'invalid', 'label', 'locale', 'maxDate', 'maxTime', 'minDate', 'minTime', 'name', 'open', 'placeholder', 'presets', 'range', 'readOnly', 'required', 'showTime', 'size', 'timeStep', 'todayDate', 'tone', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-date-picker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dateFormat', 'disabled', 'disabledDates', 'disabledDays', 'error', 'firstDayOfWeek', 'help', 'hourFormat', 'inline', 'invalid', 'label', 'locale', 'maxDate', 'maxTime', 'minDate', 'minTime', 'name', 'open', 'placeholder', 'presets', 'range', 'readOnly', 'required', 'showTime', 'size', 'timeStep', 'todayDate', 'tone', 'value', 'variant'],\n outputs: ['suiChange', 'suiMonthChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiDatePicker {\n protected el: HTMLSuiDatePickerElement;\n @Output() suiChange = new EventEmitter<SuiDatePickerCustomEvent<string | string[]>>();\n @Output() suiMonthChange = new EventEmitter<SuiDatePickerCustomEvent<ISuiDatePickerSuiDateViewDetail>>();\n @Output() suiOpen = new EventEmitter<SuiDatePickerCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiDatePickerCustomEvent<ISuiDatePickerSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiDatePicker['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDatePickerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiDateViewDetail as ISuiDatePickerSuiDateViewDetail } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiDatePickerSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDatePicker extends Components.SuiDatePicker {\n /**\n * Fires when a date commits, by pick or by typed entry on Enter or blur; detail is the ISO string (`YYYY-MM-DDTHH:mm` with `showTime`; `\"\"` after clear or an entry that does not parse), or `[start, end]` ISO strings in range mode (`[]` after clear).\n */\n suiChange: EventEmitter<SuiDatePickerCustomEvent<string | string[]>>;\n /**\n * Fires when the calendar shows a different month, so a host can fetch that month's\navailability. Does not bubble: it reports the calendar's view, not the value.\n */\n suiMonthChange: EventEmitter<SuiDatePickerCustomEvent<ISuiDatePickerSuiDateViewDetail>>;\n /**\n * Fires after the element opens the panel itself. Does not bubble, so a dialog around the picker\nnever takes it for its own.\n */\n suiOpen: EventEmitter<SuiDatePickerCustomEvent<void>>;\n /**\n * Fires before the element closes the panel itself; detail is `'escape' | 'outside' | 'trigger' | 'pick'`.\nTab out of the calendar reports `'outside'`, because focus left the control.\nCancelable: `preventDefault()` keeps it open. Does not bubble: a `preventDefault()` in a dialog's\nown `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiDatePickerCustomEvent<ISuiDatePickerSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDescriptionList,\n inputs: ['align', 'columns', 'items', 'layout', 'termWidth']\n})\n@Component({\n selector: 'sui-description-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['align', 'columns', 'items', 'layout', 'termWidth'],\n outputs: ['suiCopy', 'suiCopyError'],\n})\nexport class SuiDescriptionList {\n protected el: HTMLSuiDescriptionListElement;\n @Output() suiCopy = new EventEmitter<SuiDescriptionListCustomEvent<string>>();\n @Output() suiCopyError = new EventEmitter<SuiDescriptionListCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDescriptionListCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDescriptionList extends Components.SuiDescriptionList {\n /**\n * Fires after a value reaches the clipboard, together with the short \"Copied\" state on the\ncontrol; detail is the copied text, as on every element that copies.\n */\n suiCopy: EventEmitter<SuiDescriptionListCustomEvent<string>>;\n /**\n * Fires when the write failed and no \"Copied\" state was shown; detail is the text that was not\ncopied.\n */\n suiCopyError: EventEmitter<SuiDescriptionListCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDialog,\n inputs: ['heading', 'hideClose', 'initialFocus', 'maximizable', 'maximized', 'movable', 'open', 'returnFocus', 'size', 'subtitle']\n})\n@Component({\n selector: 'sui-dialog',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['heading', 'hideClose', 'initialFocus', 'maximizable', 'maximized', 'movable', 'open', 'returnFocus', 'size', 'subtitle'],\n outputs: ['suiClose', 'suiMaximizedChange'],\n})\nexport class SuiDialog {\n protected el: HTMLSuiDialogElement;\n @Output() suiClose = new EventEmitter<SuiDialogCustomEvent<ISuiDialogSuiCloseReason>>();\n @Output() suiMaximizedChange = new EventEmitter<SuiDialogCustomEvent<boolean>>();\n /** Emits the new `maximized` when the element changes it (`suiMaximizedChange`), so `[(maximized)]` binds both ways. */\n @Output() maximizedChange = propChange<SuiDialogCustomEvent<boolean>>(this, 'suiMaximizedChange');\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiDialog['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDialogCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiDialogSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDialog extends Components.SuiDialog {\n /**\n * Fires before the dialog closes itself; detail is `'escape' | 'scrim' | 'close-button'`.\nCancelable: `preventDefault()` keeps it open. Refusing one reason, such as `scrim` while a\nform is dirty, leaves the others working; there is no prop for it. It does not bubble, so a\nlistener on the dialog never hears a select or a popover closing inside it.\n */\n suiClose: EventEmitter<SuiDialogCustomEvent<ISuiDialogSuiCloseReason>>;\n /**\n * Fires after the maximize control toggles `maximized`; detail is the new state. A host write\nto the prop does not echo it. Does not bubble.\n */\n suiMaximizedChange: EventEmitter<SuiDialogCustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDivider,\n inputs: ['dashed', 'height', 'label', 'orientation', 'spacing', 'strong']\n})\n@Component({\n selector: 'sui-divider',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dashed', 'height', 'label', 'orientation', 'spacing', 'strong'],\n})\nexport class SuiDivider {\n protected el: HTMLSuiDividerElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiDivider extends Components.SuiDivider {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDock,\n inputs: ['active', 'arc', 'collapsed', 'direction', 'items', 'noCollapse', 'orientation', 'position', 'radius'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-dock',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'arc', 'collapsed', 'direction', 'items', 'noCollapse', 'orientation', 'position', 'radius'],\n outputs: ['suiNavigate', 'suiActiveChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiDock {\n protected el: HTMLSuiDockElement;\n @Output() suiNavigate = new EventEmitter<SuiDockCustomEvent<string>>();\n @Output() suiActiveChange = new EventEmitter<SuiDockCustomEvent<string>>();\n @Output() suiOpen = new EventEmitter<SuiDockCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiDockCustomEvent<ISuiDockSuiCloseReason>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiDockCustomEvent<string>>(this, 'suiActiveChange');\n /** Emits `collapsed` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(collapsed)]` binds both ways. */\n @Output() collapsedChange = openStateChange<Components.SuiDock['collapsed']>(this, 'collapsed');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDockCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiDockSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDock extends Components.SuiDock {\n /**\n * Fires when a tile is activated; detail is the tile key, its own `key` or its label.\n */\n suiNavigate: EventEmitter<SuiDockCustomEvent<string>>;\n /**\n * Fires whenever the element writes `active`, a press on a tile that was not active, before\n`suiNavigate`; detail is the new `active`. Writing `active` from script emits nothing. Does\nnot bubble.\n */\n suiActiveChange: EventEmitter<SuiDockCustomEvent<string>>;\n /**\n * Fires after the dock expands itself. It does not bubble.\n */\n suiOpen: EventEmitter<SuiDockCustomEvent<void>>;\n /**\n * Fires before the dock collapses itself; detail is `'trigger'` (its own control is the only way\nit collapses). Cancelable: `preventDefault()` keeps the dock open. It does not bubble.\n */\n suiClose: EventEmitter<SuiDockCustomEvent<ISuiDockSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDrawer,\n inputs: ['heading', 'height', 'initialFocus', 'open', 'position', 'returnFocus', 'subtitle', 'width']\n})\n@Component({\n selector: 'sui-drawer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['heading', 'height', 'initialFocus', 'open', 'position', 'returnFocus', 'subtitle', 'width'],\n outputs: ['suiClose'],\n})\nexport class SuiDrawer {\n protected el: HTMLSuiDrawerElement;\n @Output() suiClose = new EventEmitter<SuiDrawerCustomEvent<ISuiDrawerSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiDrawer['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDrawerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiDrawerSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDrawer extends Components.SuiDrawer {\n /**\n * Fires before the drawer closes itself; detail is `'escape' | 'scrim' | 'close-button'`.\nCancelable: `preventDefault()` keeps it open. Refusing one reason, such as `scrim` while a\nform is dirty, leaves the others working. The corner X is always there: unlike sui-dialog\nthere is no `hide-close`. It does not bubble, so a listener on the drawer never hears a select\nor a popover closing inside it.\n */\n suiClose: EventEmitter<SuiDrawerCustomEvent<ISuiDrawerSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiEditBox,\n inputs: ['disabled', 'error', 'help', 'html', 'invalid', 'label', 'minHeight', 'name', 'placeholder', 'readOnly', 'required', 'toolbar'],\n methods: ['edit', 'setFocus', 'save', 'cancel', 'exec']\n})\n@Component({\n selector: 'sui-edit-box',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'html', 'invalid', 'label', 'minHeight', 'name', 'placeholder', 'readOnly', 'required', 'toolbar'],\n outputs: ['suiSave', 'suiCancel'],\n})\nexport class SuiEditBox {\n protected el: HTMLSuiEditBoxElement;\n @Output() suiSave = new EventEmitter<SuiEditBoxCustomEvent<string>>();\n @Output() suiCancel = new EventEmitter<SuiEditBoxCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiEditBoxCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiEditBox extends Components.SuiEditBox {\n /**\n * Fires when Done commits an edit; detail is the serialized HTML.\n */\n suiSave: EventEmitter<SuiEditBoxCustomEvent<string>>;\n /**\n * Fires when an edit is discarded (Cancel or Escape).\n */\n suiCancel: EventEmitter<SuiEditBoxCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiEmptyState,\n inputs: ['bare', 'compact', 'description', 'heading', 'headingLevel', 'icon', 'variant']\n})\n@Component({\n selector: 'sui-empty-state',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['bare', 'compact', 'description', 'heading', 'headingLevel', 'icon', 'variant'],\n})\nexport class SuiEmptyState {\n protected el: HTMLSuiEmptyStateElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiEmptyState extends Components.SuiEmptyState {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFieldset,\n inputs: ['collapsed', 'collapsible', 'disabled', 'legend'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-fieldset',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['collapsed', 'collapsible', 'disabled', 'legend'],\n outputs: ['suiOpen', 'suiClose'],\n})\nexport class SuiFieldset {\n protected el: HTMLSuiFieldsetElement;\n @Output() suiOpen = new EventEmitter<SuiFieldsetCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiFieldsetCustomEvent<ISuiFieldsetSuiCloseReason>>();\n /** Emits `collapsed` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(collapsed)]` binds both ways. */\n @Output() collapsedChange = openStateChange<Components.SuiFieldset['collapsed']>(this, 'collapsed');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFieldsetCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiFieldsetSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiFieldset extends Components.SuiFieldset {\n /**\n * Fires after the legend expands the body. It does not bubble, as no open-state event does.\n */\n suiOpen: EventEmitter<SuiFieldsetCustomEvent<void>>;\n /**\n * Fires before the legend collapses the body; detail is `'trigger'` (the legend is the only way\nthis element closes itself). Cancelable: `preventDefault()` leaves the group open. A group of\nfields is the case that most needs the veto, because collapsing unmounts the body and takes\nthe user's typing with it. It does not bubble.\n */\n suiClose: EventEmitter<SuiFieldsetCustomEvent<ISuiFieldsetSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFileUpload,\n inputs: ['accept', 'compact', 'disabled', 'error', 'fileLimit', 'files', 'help', 'label', 'maxFileSize', 'multiple', 'name', 'required', 'url'],\n methods: ['showPicker', 'setFocus', 'upload']\n})\n@Component({\n selector: 'sui-file-upload',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accept', 'compact', 'disabled', 'error', 'fileLimit', 'files', 'help', 'label', 'maxFileSize', 'multiple', 'name', 'required', 'url'],\n outputs: ['suiSelect', 'suiRemove', 'suiReject', 'suiBeforeUpload', 'suiProgress', 'suiUpload', 'suiUploadError'],\n})\nexport class SuiFileUpload {\n protected el: HTMLSuiFileUploadElement;\n @Output() suiSelect = new EventEmitter<SuiFileUploadCustomEvent<File[]>>();\n @Output() suiRemove = new EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiFileRow>>();\n @Output() suiReject = new EventEmitter<SuiFileUploadCustomEvent<File[]>>();\n @Output() suiBeforeUpload = new EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadRequestDetail>>();\n @Output() suiProgress = new EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadProgressDetail>>();\n @Output() suiUpload = new EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadResultDetail>>();\n @Output() suiUploadError = new EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadResultDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFileUploadCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiFileRow as ISuiFileUploadSuiFileRow } from '@shineuix/core/dist/components';\nimport type { SuiUploadRequestDetail as ISuiFileUploadSuiUploadRequestDetail } from '@shineuix/core/dist/components';\nimport type { SuiUploadProgressDetail as ISuiFileUploadSuiUploadProgressDetail } from '@shineuix/core/dist/components';\nimport type { SuiUploadResultDetail as ISuiFileUploadSuiUploadResultDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiFileUpload extends Components.SuiFileUpload {\n /**\n * Fires when files are chosen or dropped and pass every rule; detail is the accepted native\n`File` objects. Fires in `url` mode too, before the requests go out.\n */\n suiSelect: EventEmitter<SuiFileUploadCustomEvent<File[]>>;\n /**\n * Fires when a row's remove control is used; detail is the removed row.\n */\n suiRemove: EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiFileRow>>;\n /**\n * Fires when `accept`, `multiple`, `maxFileSize` or `fileLimit` refuses files; detail is the\nrefused `File` objects. A refused file never enters the queue, so the host decides how to\nsay so.\n */\n suiReject: EventEmitter<SuiFileUploadCustomEvent<File[]>>;\n /**\n * Fires in `url` mode once per file, with the request open and unsent. Set headers on `xhr` or\nadd fields to `body`.\n */\n suiBeforeUpload: EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadRequestDetail>>;\n /**\n * Fires in `url` mode as a file goes up, at each whole percent. The row carries the same\nnumber, so listen only if something outside the queue shows it.\n */\n suiProgress: EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadProgressDetail>>;\n /**\n * Fires in `url` mode when a file lands, with the server's status and body text.\n */\n suiUpload: EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadResultDetail>>;\n /**\n * Fires in `url` mode when a file fails to upload. The row turns to error with a retry control;\n`status` is 0 when the request never reached the server.\n */\n suiUploadError: EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadResultDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFilterBuilder,\n inputs: ['columns', 'inline', 'label', 'maxDepth', 'open', 'size', 'target', 'value'],\n methods: ['setFocus', 'refresh']\n})\n@Component({\n selector: 'sui-filter-builder',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columns', 'inline', 'label', 'maxDepth', 'open', 'size', 'target', 'value'],\n outputs: ['suiChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiFilterBuilder {\n protected el: HTMLSuiFilterBuilderElement;\n @Output() suiChange = new EventEmitter<SuiFilterBuilderCustomEvent<ISuiFilterBuilderSuiGridFilterModel>>();\n @Output() suiOpen = new EventEmitter<SuiFilterBuilderCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiFilterBuilderCustomEvent<ISuiFilterBuilderSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiFilterBuilder['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFilterBuilderCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiGridFilterModel as ISuiFilterBuilderSuiGridFilterModel } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiFilterBuilderSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiFilterBuilder extends Components.SuiFilterBuilder {\n /**\n * Fires on Apply and on Clear all; detail is the whole filter model now applied.\n */\n suiChange: EventEmitter<SuiFilterBuilderCustomEvent<ISuiFilterBuilderSuiGridFilterModel>>;\n /**\n * Fires when the popover opens.\n */\n suiOpen: EventEmitter<SuiFilterBuilderCustomEvent<void>>;\n /**\n * Fires before the popover closes; detail is why. Cancel it to keep the popover open.\n */\n suiClose: EventEmitter<SuiFilterBuilderCustomEvent<ISuiFilterBuilderSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFilterPanel,\n inputs: ['filters', 'open', 'values'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-filter-panel',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['filters', 'open', 'values'],\n outputs: ['suiApply', 'suiChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiFilterPanel {\n protected el: HTMLSuiFilterPanelElement;\n @Output() suiApply = new EventEmitter<SuiFilterPanelCustomEvent<ISuiFilterPanelSuiFilterValues>>();\n @Output() suiChange = new EventEmitter<SuiFilterPanelCustomEvent<ISuiFilterPanelSuiFilterValues>>();\n @Output() suiOpen = new EventEmitter<SuiFilterPanelCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiFilterPanelCustomEvent<ISuiFilterPanelSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiFilterPanel['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFilterPanelCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiFilterValues as ISuiFilterPanelSuiFilterValues } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiFilterPanelSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiFilterPanel extends Components.SuiFilterPanel {\n /**\n * Fires on every apply, clear all and chip removal, whether or not anything changed; detail is the applied set.\n */\n suiApply: EventEmitter<SuiFilterPanelCustomEvent<ISuiFilterPanelSuiFilterValues>>;\n /**\n * Fires only when the applied set actually differs from before; detail is the applied set.\n */\n suiChange: EventEmitter<SuiFilterPanelCustomEvent<ISuiFilterPanelSuiFilterValues>>;\n /**\n * Fires after the panel opens itself. It does not bubble.\n */\n suiOpen: EventEmitter<SuiFilterPanelCustomEvent<void>>;\n /**\n * Fires before the panel closes itself; detail is `'trigger' | 'pick' | 'outside' | 'escape'`\n(`'pick'` is the close from \"Apply filters\"; `'escape'` also returns focus to the trigger;\n`'outside'` covers a pointer elsewhere and Tab past either end of the panel, which hands focus\nto the trigger first).\nCancelable: `preventDefault()` keeps it open. It does not bubble, so a listener on the\nfilter panel never hears a select closing inside it.\n */\n suiClose: EventEmitter<SuiFilterPanelCustomEvent<ISuiFilterPanelSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFloatLabel,\n inputs: ['autocomplete', 'disabled', 'error', 'help', 'invalid', 'label', 'maxLength', 'minLength', 'name', 'pattern', 'readOnly', 'required', 'type', 'value'],\n methods: ['select', 'setFocus']\n})\n@Component({\n selector: 'sui-float-label',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autocomplete', 'disabled', 'error', 'help', 'invalid', { name: 'label', required: true }, 'maxLength', 'minLength', 'name', 'pattern', 'readOnly', 'required', 'type', 'value'],\n outputs: ['suiInput', 'suiChange', 'suiFocus', 'suiBlur'],\n})\nexport class SuiFloatLabel {\n protected el: HTMLSuiFloatLabelElement;\n @Output() suiInput = new EventEmitter<SuiFloatLabelCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiFloatLabelCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiFloatLabelCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiFloatLabelCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFloatLabelCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiFloatLabel extends Components.SuiFloatLabel {\n /**\n * Fires on every keystroke; detail is the current value.\n */\n suiInput: EventEmitter<SuiFloatLabelCustomEvent<string>>;\n /**\n * Fires on commit (blur or Enter, native change); detail is the final value.\n */\n suiChange: EventEmitter<SuiFloatLabelCustomEvent<string>>;\n /**\n * Fires when the input takes focus, as the label floats up; no detail. The same pair is on every text field. Does not bubble.\n */\n suiFocus: EventEmitter<SuiFloatLabelCustomEvent<void>>;\n /**\n * Fires when the input loses focus; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiFloatLabelCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFluid,\n inputs: ['gap']\n})\n@Component({\n selector: 'sui-fluid',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['gap'],\n})\nexport class SuiFluid {\n protected el: HTMLSuiFluidElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiFluid extends Components.SuiFluid {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiForm,\n inputs: ['noFocusOnInvalid', 'novalidate', 'resolver', 'validateOn'],\n methods: ['validate', 'clearErrors']\n})\n@Component({\n selector: 'sui-form',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['noFocusOnInvalid', 'novalidate', 'resolver', 'validateOn'],\n outputs: ['suiSubmit', 'suiInvalid'],\n})\nexport class SuiForm {\n protected el: HTMLSuiFormElement;\n @Output() suiSubmit = new EventEmitter<SuiFormCustomEvent<FormData>>();\n @Output() suiInvalid = new EventEmitter<SuiFormCustomEvent<ISuiFormSuiFormErrors>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFormCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiFormErrors as ISuiFormSuiFormErrors } from '@shineuix/core/dist/components';\n\nexport declare interface SuiForm extends Components.SuiForm {\n /**\n * Fires with the `FormData` once the form is valid. Cancelable: call `preventDefault()` in every\nhandler that sends the data itself, because without it the native form submits and the page\nnavigates to its `action`, the way a plain form does; that is the usual case for a fetch.\n */\n suiSubmit: EventEmitter<SuiFormCustomEvent<FormData>>;\n /**\n * Fires when a submit was refused, with the messages keyed by control name: the browser's own\nmessage for each control that fails its constraints (`required` and the rest), or the resolver's\nwhen the native pass is clean. Each named message is also written to that control's `error` prop\nand cleared on the next submit; a bare native control keeps the browser's bubble instead. A\nmessage under the empty-string key is form-level and belongs to no single control.\n */\n suiInvalid: EventEmitter<SuiFormCustomEvent<ISuiFormSuiFormErrors>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFormActions,\n inputs: ['form', 'hideSecondary', 'primaryDisabled', 'primaryLabel', 'primaryLoading', 'primaryType', 'secondaryLabel', 'secondaryType', 'sticky']\n})\n@Component({\n selector: 'sui-form-actions',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['form', 'hideSecondary', 'primaryDisabled', 'primaryLabel', 'primaryLoading', 'primaryType', 'secondaryLabel', 'secondaryType', 'sticky'],\n outputs: ['suiPrimary', 'suiSecondary'],\n})\nexport class SuiFormActions {\n protected el: HTMLSuiFormActionsElement;\n @Output() suiPrimary = new EventEmitter<SuiFormActionsCustomEvent<void>>();\n @Output() suiSecondary = new EventEmitter<SuiFormActionsCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFormActionsCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiFormActions extends Components.SuiFormActions {\n /**\n * Fires when the primary button is clicked, even when the browser then refuses the submit as\ninvalid. Listen to the form's own `submit` event for the validated path.\n */\n suiPrimary: EventEmitter<SuiFormActionsCustomEvent<void>>;\n /**\n * Fires when the secondary button is clicked.\n */\n suiSecondary: EventEmitter<SuiFormActionsCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFormLayout,\n inputs: ['columns', 'heading', 'subtitle']\n})\n@Component({\n selector: 'sui-form-layout',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columns', 'heading', 'subtitle'],\n})\nexport class SuiFormLayout {\n protected el: HTMLSuiFormLayoutElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiFormLayout extends Components.SuiFormLayout {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiGalleria,\n inputs: ['autoplay', 'circular', 'fullScreen', 'height', 'hideArrows', 'index', 'items', 'open'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-galleria',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autoplay', 'circular', 'fullScreen', 'height', 'hideArrows', 'index', 'items', 'open'],\n outputs: ['suiIndexChange', 'suiOpen', 'suiClose', 'suiError'],\n})\nexport class SuiGalleria {\n protected el: HTMLSuiGalleriaElement;\n @Output() suiIndexChange = new EventEmitter<SuiGalleriaCustomEvent<number>>();\n @Output() suiOpen = new EventEmitter<SuiGalleriaCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiGalleriaCustomEvent<ISuiGalleriaSuiCloseReason>>();\n @Output() suiError = new EventEmitter<SuiGalleriaCustomEvent<string>>();\n /** Emits the new `index` when the element changes it (`suiIndexChange`), so `[(index)]` binds both ways. */\n @Output() indexChange = propChange<SuiGalleriaCustomEvent<number>>(this, 'suiIndexChange');\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiGalleria['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiGalleriaCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiGalleriaSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiGalleria extends Components.SuiGalleria {\n /**\n * Fires after navigation by the user or by autoplay; detail is the new index. Does not\nbubble.\n */\n suiIndexChange: EventEmitter<SuiGalleriaCustomEvent<number>>;\n /**\n * Fires when the user opens the full-screen viewer. It does not bubble.\n */\n suiOpen: EventEmitter<SuiGalleriaCustomEvent<void>>;\n /**\n * Fires before the full-screen viewer closes itself; detail is `'escape' | 'scrim' | 'close-button'`.\nCancelable: `preventDefault()` keeps it open. It does not bubble.\n\nThe corner X is always there: unlike sui-dialog there is no `hide-close`, and that is a\ndecision rather than a gap. A dialog may force a choice and a message may be permanent, so\nthose two let the page leave the control out (`hide-close`, and `closable` left unset).\nThis is a full-screen viewer over the whole page, so a copy of it with no visible way out is\na trap and not a configuration. Cancel the event instead if a close has to be refused.\n */\n suiClose: EventEmitter<SuiGalleriaCustomEvent<ISuiGalleriaSuiCloseReason>>;\n /**\n * Fires when a picture fails to load, once per source; detail is the source that failed. The\npicture's place shows the image glyph and \"Image unavailable\" on the frame's well, and a failed\nthumbnail the glyph alone, as `sui-image` draws its own. Does not bubble.\n */\n suiError: EventEmitter<SuiGalleriaCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiIconButton,\n inputs: ['disabled', 'form', 'href', 'icon', 'loading', 'name', 'noTabStop', 'noTooltip', 'pill', 'rel', 'size', 'target', 'tone', 'type', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-icon-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'form', 'href', 'icon', 'loading', 'name', 'noTabStop', 'noTooltip', 'pill', 'rel', 'size', 'target', 'tone', 'type', 'value', 'variant'],\n})\nexport class SuiIconButton {\n protected el: HTMLSuiIconButtonElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiIconButton extends Components.SuiIconButton {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiIconField,\n inputs: ['autocomplete', 'clearable', 'disabled', 'endIcon', 'error', 'help', 'icon', 'invalid', 'label', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'size', 'type', 'value', 'width'],\n methods: ['select', 'setFocus']\n})\n@Component({\n selector: 'sui-icon-field',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autocomplete', 'clearable', 'disabled', 'endIcon', 'error', 'help', 'icon', 'invalid', 'label', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'size', 'type', 'value', 'width'],\n outputs: ['suiInput', 'suiChange', 'suiClear', 'suiFocus', 'suiBlur'],\n})\nexport class SuiIconField {\n protected el: HTMLSuiIconFieldElement;\n @Output() suiInput = new EventEmitter<SuiIconFieldCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiIconFieldCustomEvent<string>>();\n @Output() suiClear = new EventEmitter<SuiIconFieldCustomEvent<void>>();\n @Output() suiFocus = new EventEmitter<SuiIconFieldCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiIconFieldCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiIconFieldCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiIconField extends Components.SuiIconField {\n /**\n * Fires on every keystroke; detail is the current value.\n */\n suiInput: EventEmitter<SuiIconFieldCustomEvent<string>>;\n /**\n * Fires on commit (blur or Enter, native change) and after a clear; detail is the value.\n */\n suiChange: EventEmitter<SuiIconFieldCustomEvent<string>>;\n /**\n * Fires when the clear control empties the field.\n */\n suiClear: EventEmitter<SuiIconFieldCustomEvent<void>>;\n /**\n * Fires when the input takes focus, so a host can arm a launcher or a shortcut hint without\nlistening for the native `focusin` on the element. Does not bubble.\n */\n suiFocus: EventEmitter<SuiIconFieldCustomEvent<void>>;\n /**\n * Fires when the input loses focus, to the clear control and the end slot included. Does not bubble.\n */\n suiBlur: EventEmitter<SuiIconFieldCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiIftaLabel,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'type', 'value'],\n methods: ['select', 'setFocus']\n})\n@Component({\n selector: 'sui-ifta-label',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', { name: 'label', required: true }, 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'type', 'value'],\n outputs: ['suiInput', 'suiChange', 'suiFocus', 'suiBlur'],\n})\nexport class SuiIftaLabel {\n protected el: HTMLSuiIftaLabelElement;\n @Output() suiInput = new EventEmitter<SuiIftaLabelCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiIftaLabelCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiIftaLabelCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiIftaLabelCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiIftaLabelCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiIftaLabel extends Components.SuiIftaLabel {\n /**\n * Fires on every keystroke; detail is the current value.\n */\n suiInput: EventEmitter<SuiIftaLabelCustomEvent<string>>;\n /**\n * Fires on commit (blur or Enter, native change); detail is the final value.\n */\n suiChange: EventEmitter<SuiIftaLabelCustomEvent<string>>;\n /**\n * Fires when the input takes focus; no detail. The same pair is on every text field. Does not bubble.\n */\n suiFocus: EventEmitter<SuiIftaLabelCustomEvent<void>>;\n /**\n * Fires when the input loses focus; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiIftaLabelCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiImage,\n inputs: ['alt', 'caption', 'fit', 'height', 'loading', 'noPreview', 'open', 'previewSrc', 'radius', 'src', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-image',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['alt', 'caption', 'fit', 'height', 'loading', 'noPreview', 'open', 'previewSrc', 'radius', { name: 'src', required: true }, 'width'],\n outputs: ['suiOpen', 'suiClose', 'suiError'],\n})\nexport class SuiImage {\n protected el: HTMLSuiImageElement;\n @Output() suiOpen = new EventEmitter<SuiImageCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiImageCustomEvent<ISuiImageSuiCloseReason>>();\n @Output() suiError = new EventEmitter<SuiImageCustomEvent<string>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiImage['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiImageCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiImageSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiImage extends Components.SuiImage {\n /**\n * Fires when the user opens the lightbox. It does not bubble.\n */\n suiOpen: EventEmitter<SuiImageCustomEvent<void>>;\n /**\n * Fires before the lightbox closes itself; detail is `'escape' | 'scrim' | 'close-button'`, or\n`'cancel'` when the source failed while the preview was open.\nCancelable: `preventDefault()` keeps it open. It does not bubble.\n\nThe corner X is always there: unlike sui-dialog there is no `hide-close`, and that is a\ndecision rather than a gap. A dialog may force a choice and a message may be permanent, so\nthose two let the page leave the control out (`hide-close`, and `closable` left unset).\nA lightbox covers the page, so a copy of it with no visible way out is a trap and not a\nconfiguration. Cancel the event instead if a close has to be refused.\n */\n suiClose: EventEmitter<SuiImageCustomEvent<ISuiImageSuiCloseReason>>;\n /**\n * Fires when `src` or `previewSrc` fails to load; detail is the source that failed. A failed\n`src` is replaced by the `error` slot, or, with nothing in it, by the image glyph and \"Image\nunavailable\" on the frame's well, as the galleria and the image compare draw theirs. Either\nfailure leaves the frame a plain picture rather than a preview button, because there is nothing\nto enlarge. Does not bubble.\n */\n suiError: EventEmitter<SuiImageCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiImageCompare,\n inputs: ['afterAlt', 'afterLabel', 'afterSrc', 'beforeAlt', 'beforeFilter', 'beforeLabel', 'beforeSrc', 'height', 'ratio'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-image-compare',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['afterAlt', 'afterLabel', 'afterSrc', 'beforeAlt', 'beforeFilter', 'beforeLabel', { name: 'beforeSrc', required: true }, 'height', 'ratio'],\n outputs: ['suiResize', 'suiResizeEnd', 'suiError'],\n})\nexport class SuiImageCompare {\n protected el: HTMLSuiImageCompareElement;\n @Output() suiResize = new EventEmitter<SuiImageCompareCustomEvent<number>>();\n @Output() suiResizeEnd = new EventEmitter<SuiImageCompareCustomEvent<number>>();\n @Output() suiError = new EventEmitter<SuiImageCompareCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiImageCompareCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiImageCompare extends Components.SuiImageCompare {\n /**\n * Fires while the divider moves (every drag step and every key press); detail is the new ratio\n(0.04..0.96). The pair is `sui-splitter`'s for the same ratio: a state report, not a field's\nvalue. Does not bubble.\n */\n suiResize: EventEmitter<SuiImageCompareCustomEvent<number>>;\n /**\n * Fires when a move commits: on pointer release, or straight away on a key press. Detail is the\nratio (0.04..0.96). Do the expensive work here. Does not bubble.\n */\n suiResizeEnd: EventEmitter<SuiImageCompareCustomEvent<number>>;\n /**\n * Fires when the before or the after picture fails to load, once per source; detail is the\nsource. With either lost there is nothing to compare, so the frame shows the image glyph and a\nquiet line and drops its divider and labels. Does not bubble.\n */\n suiError: EventEmitter<SuiImageCompareCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInplace,\n inputs: ['disabled', 'editing', 'label', 'name', 'placeholder', 'readOnly', 'value'],\n methods: ['edit', 'setFocus']\n})\n@Component({\n selector: 'sui-inplace',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'editing', 'label', 'name', 'placeholder', 'readOnly', 'value'],\n outputs: ['suiInput', 'suiSave', 'suiOpen', 'suiClose'],\n})\nexport class SuiInplace {\n protected el: HTMLSuiInplaceElement;\n @Output() suiInput = new EventEmitter<SuiInplaceCustomEvent<string>>();\n @Output() suiSave = new EventEmitter<SuiInplaceCustomEvent<string>>();\n @Output() suiOpen = new EventEmitter<SuiInplaceCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiInplaceCustomEvent<ISuiInplaceSuiCloseReason>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInplaceCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiInplaceSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInplace extends Components.SuiInplace {\n /**\n * Fires on every keystroke while editing; detail is the live value.\n */\n suiInput: EventEmitter<SuiInplaceCustomEvent<string>>;\n /**\n * Fires when an edit commits (Enter or blur); detail is the saved value. Emitted after the\nmatching `suiClose('pick')` is accepted.\n */\n suiSave: EventEmitter<SuiInplaceCustomEvent<string>>;\n /**\n * Fires after the element enters edit mode itself (a click, Enter or Space, or `edit()`). It\ndoes not bubble, as no open-state event does.\n */\n suiOpen: EventEmitter<SuiInplaceCustomEvent<void>>;\n /**\n * Fires before the element leaves edit mode itself; detail is `'pick'` for a commit and\n`'escape'` for an abandoned edit. Cancelable: `preventDefault()` keeps the editor open and\nrefocuses it, which is how a parent holds a failed validation on screen. It does not bubble.\n */\n suiClose: EventEmitter<SuiInplaceCustomEvent<ISuiInplaceSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputGroup,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'required', 'size']\n})\n@Component({\n selector: 'sui-input-group',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'required', 'size'],\n outputs: ['suiFocus', 'suiBlur'],\n})\nexport class SuiInputGroup {\n protected el: HTMLSuiInputGroupElement;\n @Output() suiFocus = new EventEmitter<SuiInputGroupCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiInputGroupCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInputGroupCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInputGroup extends Components.SuiInputGroup {\n /**\n * Fires when a control in the group takes focus, as the group paints its focus border; no\ndetail. The same pair is on every text field. Focus coming back to a control from the list or\ncalendar it opened is not a new focus. Does not bubble.\n */\n suiFocus: EventEmitter<SuiInputGroupCustomEvent<void>>;\n /**\n * Fires when a control in the group loses focus, a move to the next control in the group\nincluded; no detail. Focus moving into the list or calendar a control opened is not a blur,\nwherever that panel sits: the group keeps its focus border, and fires once focus has left the\ncontrol and its panel. Does not bubble.\n */\n suiBlur: EventEmitter<SuiInputGroupCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputGroupAddon\n})\n@Component({\n selector: 'sui-input-group-addon',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n})\nexport class SuiInputGroupAddon {\n protected el: HTMLSuiInputGroupAddonElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiInputGroupAddon extends Components.SuiInputGroupAddon {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputMask,\n inputs: ['autoClear', 'autocomplete', 'disabled', 'error', 'help', 'invalid', 'label', 'mask', 'name', 'placeholder', 'readOnly', 'required', 'size', 'unmask', 'value'],\n methods: ['select', 'setFocus', 'getUnmasked']\n})\n@Component({\n selector: 'sui-input-mask',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autoClear', 'autocomplete', 'disabled', 'error', 'help', 'invalid', 'label', 'mask', 'name', 'placeholder', 'readOnly', 'required', 'size', 'unmask', 'value'],\n outputs: ['suiInput', 'suiChange', 'suiComplete', 'suiFocus', 'suiBlur'],\n})\nexport class SuiInputMask {\n protected el: HTMLSuiInputMaskElement;\n @Output() suiInput = new EventEmitter<SuiInputMaskCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiInputMaskCustomEvent<string>>();\n @Output() suiComplete = new EventEmitter<SuiInputMaskCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiInputMaskCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiInputMaskCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInputMaskCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInputMask extends Components.SuiInputMask {\n /**\n * Fires on every keystroke; detail is the formatted value.\n */\n suiInput: EventEmitter<SuiInputMaskCustomEvent<string>>;\n /**\n * Fires on commit (blur or Enter, native change); detail is the formatted value.\n */\n suiChange: EventEmitter<SuiInputMaskCustomEvent<string>>;\n /**\n * Fires once when the required slots fill: every slot, or those before a `?`. Detail is the formatted value.\n */\n suiComplete: EventEmitter<SuiInputMaskCustomEvent<string>>;\n /**\n * Fires when the input takes focus; no detail. The same pair is on every text field. Does not bubble.\n */\n suiFocus: EventEmitter<SuiInputMaskCustomEvent<void>>;\n /**\n * Fires when the input loses focus; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiInputMaskCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputNumber,\n inputs: ['align', 'autocomplete', 'currency', 'decimals', 'disabled', 'error', 'help', 'hideButtons', 'invalid', 'label', 'locale', 'max', 'min', 'money', 'name', 'placeholder', 'prefixText', 'readOnly', 'required', 'size', 'step', 'suffixText', 'tone', 'value', 'variant'],\n methods: ['select', 'setFocus']\n})\n@Component({\n selector: 'sui-input-number',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['align', 'autocomplete', 'currency', 'decimals', 'disabled', 'error', 'help', 'hideButtons', 'invalid', 'label', 'locale', 'max', 'min', 'money', 'name', 'placeholder', 'prefixText', 'readOnly', 'required', 'size', 'step', 'suffixText', 'tone', 'value', 'variant'],\n outputs: ['suiChange', 'suiInput', 'suiFocus', 'suiBlur'],\n})\nexport class SuiInputNumber {\n protected el: HTMLSuiInputNumberElement;\n @Output() suiChange = new EventEmitter<SuiInputNumberCustomEvent<number | null>>();\n @Output() suiInput = new EventEmitter<SuiInputNumberCustomEvent<number | null>>();\n @Output() suiFocus = new EventEmitter<SuiInputNumberCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiInputNumberCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInputNumberCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInputNumber extends Components.SuiInputNumber {\n /**\n * Fires on commit (blur, Enter, arrows, stepper); detail is the committed number or `null`.\n */\n suiChange: EventEmitter<SuiInputNumberCustomEvent<number | null>>;\n /**\n * Fires on every keystroke; detail is the parsed, unclamped number, or `null` while the text\ndoes not parse: an empty field, or a lone `-` or `.`.\n */\n suiInput: EventEmitter<SuiInputNumberCustomEvent<number | null>>;\n /**\n * Fires when the input takes focus; no detail. Every text field carries the same pair, so a\nhost arms a hint or a launcher the same way on each without listening for the native `focusin`. Does not bubble.\n */\n suiFocus: EventEmitter<SuiInputNumberCustomEvent<void>>;\n /**\n * Fires when the input loses focus; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiInputNumberCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputOtp,\n inputs: ['alphanumeric', 'disabled', 'error', 'help', 'invalid', 'label', 'length', 'masked', 'name', 'readOnly', 'required', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-input-otp',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['alphanumeric', 'disabled', 'error', 'help', 'invalid', 'label', 'length', 'masked', 'name', 'readOnly', 'required', 'size', 'value'],\n outputs: ['suiInput', 'suiChange', 'suiComplete', 'suiFocus', 'suiBlur'],\n})\nexport class SuiInputOtp {\n protected el: HTMLSuiInputOtpElement;\n @Output() suiInput = new EventEmitter<SuiInputOtpCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiInputOtpCustomEvent<string>>();\n @Output() suiComplete = new EventEmitter<SuiInputOtpCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiInputOtpCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiInputOtpCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInputOtpCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInputOtp extends Components.SuiInputOtp {\n /**\n * Fires on every edit; detail is the code typed so far.\n */\n suiInput: EventEmitter<SuiInputOtpCustomEvent<string>>;\n /**\n * Fires on commit (Enter, or focus leaving the boxes after an edit); detail is the code. The\nsplit matches `sui-input-text` and `sui-input-mask`, so a host that saves on `suiChange`\nsaves once, not once per character.\n */\n suiChange: EventEmitter<SuiInputOtpCustomEvent<string>>;\n /**\n * Fires when every box is filled; detail is the full code.\n */\n suiComplete: EventEmitter<SuiInputOtpCustomEvent<string>>;\n /**\n * Fires when focus enters the boxes from outside them; no detail. A move from one box to the\nnext fires nothing, so the boxes read as one field, the way `suiChange` treats them. Does not bubble.\n */\n suiFocus: EventEmitter<SuiInputOtpCustomEvent<void>>;\n /**\n * Fires when focus leaves the boxes, after the `suiChange` an edit owes; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiInputOtpCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputTags,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'max', 'name', 'placeholder', 'readOnly', 'required', 'separator', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-input-tags',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'max', 'name', 'placeholder', 'readOnly', 'required', 'separator', 'size', 'value'],\n outputs: ['suiChange', 'suiInput', 'suiFocus', 'suiBlur'],\n})\nexport class SuiInputTags {\n protected el: HTMLSuiInputTagsElement;\n @Output() suiChange = new EventEmitter<SuiInputTagsCustomEvent<ISuiInputTagsSuiInputTagsValue[]>>();\n @Output() suiInput = new EventEmitter<SuiInputTagsCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiInputTagsCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiInputTagsCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInputTagsCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiInputTagsValue as ISuiInputTagsSuiInputTagsValue } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInputTags extends Components.SuiInputTags {\n /**\n * Fires when a chip is added or removed; detail is the new `value`, the full array in the shape\nit was given (strings, tags, or both).\n */\n suiChange: EventEmitter<SuiInputTagsCustomEvent<ISuiInputTagsSuiInputTagsValue[]>>;\n /**\n * Fires when the pending text changes: on each keystroke, and with the remainder after a\ncommit. Does not fire when a chip is removed.\n */\n suiInput: EventEmitter<SuiInputTagsCustomEvent<string>>;\n /**\n * Fires when the entry box takes focus; no detail. The same pair is on every text field. Does not bubble.\n */\n suiFocus: EventEmitter<SuiInputTagsCustomEvent<void>>;\n /**\n * Fires when the entry box loses focus, a move to a chip's remove control included, after the\npending text is committed; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiInputTagsCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputText,\n inputs: ['autocomplete', 'disabled', 'error', 'help', 'invalid', 'label', 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'size', 'type', 'value'],\n methods: ['setFocus', 'select']\n})\n@Component({\n selector: 'sui-input-text',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autocomplete', 'disabled', 'error', 'help', 'invalid', 'label', 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'size', 'type', 'value'],\n outputs: ['suiInput', 'suiChange', 'suiFocus', 'suiBlur'],\n})\nexport class SuiInputText {\n protected el: HTMLSuiInputTextElement;\n @Output() suiInput = new EventEmitter<SuiInputTextCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiInputTextCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiInputTextCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiInputTextCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInputTextCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInputText extends Components.SuiInputText {\n /**\n * Fires on every keystroke; detail is the current value.\n */\n suiInput: EventEmitter<SuiInputTextCustomEvent<string>>;\n /**\n * Fires on commit (blur or Enter, native change); detail is the final value.\n */\n suiChange: EventEmitter<SuiInputTextCustomEvent<string>>;\n /**\n * Fires when the input takes focus; no detail. Every text field carries the same pair, so a\nhost arms a hint or a launcher the same way on each without listening for the native `focusin`. Does not bubble.\n */\n suiFocus: EventEmitter<SuiInputTextCustomEvent<void>>;\n /**\n * Fires when the input loses focus; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiInputTextCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiKbd,\n inputs: ['quiet', 'size', 'tone']\n})\n@Component({\n selector: 'sui-kbd',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['quiet', 'size', 'tone'],\n})\nexport class SuiKbd {\n protected el: HTMLSuiKbdElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiKbd extends Components.SuiKbd {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiKnob,\n inputs: ['diameter', 'disabled', 'error', 'format', 'help', 'label', 'max', 'min', 'name', 'readOnly', 'required', 'step', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-knob',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['diameter', 'disabled', 'error', 'format', 'help', 'label', 'max', 'min', 'name', 'readOnly', 'required', 'step', 'value'],\n outputs: ['suiInput', 'suiChange'],\n})\nexport class SuiKnob {\n protected el: HTMLSuiKnobElement;\n @Output() suiInput = new EventEmitter<SuiKnobCustomEvent<number>>();\n @Output() suiChange = new EventEmitter<SuiKnobCustomEvent<number>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiKnobCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiKnob extends Components.SuiKnob {\n /**\n * Fires continuously while dragging; detail is the value.\n */\n suiInput: EventEmitter<SuiKnobCustomEvent<number>>;\n /**\n * Fires when a drag ends or a keyboard step lands; detail is the value.\n */\n suiChange: EventEmitter<SuiKnobCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiList,\n inputs: ['density', 'emptyFilterMessage', 'emptyMessage', 'filter', 'filterPlaceholder', 'itemRender', 'items', 'loading', 'maxHeight', 'selection', 'wrap'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['density', 'emptyFilterMessage', 'emptyMessage', 'filter', 'filterPlaceholder', 'itemRender', 'items', 'loading', 'maxHeight', 'selection', 'wrap'],\n outputs: ['suiItemPick', 'suiSelectionChange'],\n})\nexport class SuiList {\n protected el: HTMLSuiListElement;\n @Output() suiItemPick = new EventEmitter<SuiListCustomEvent<ISuiListSuiListItemPickDetail>>();\n @Output() suiSelectionChange = new EventEmitter<SuiListCustomEvent<ISuiListSuiKey | undefined>>();\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiListCustomEvent<ISuiListSuiKey | undefined>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiListCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiListItemPickDetail as ISuiListSuiListItemPickDetail } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiListSuiKey } from '@shineuix/core/dist/components';\n\nexport declare interface SuiList extends Components.SuiList {\n /**\n * Fires when a row is picked by click, Enter or Space; detail is `{ id, item }`. It fires on\nevery pick, so picking the selected row again reports again. On a linked row it fires on the\nclick, before the browser follows the `href`; on a `command` row it fires once and writes\nnothing, since the host is about to navigate.\n */\n suiItemPick: EventEmitter<SuiListCustomEvent<ISuiListSuiListItemPickDetail>>;\n /**\n * Fires when a pick changes `selection`, before `suiItemPick`; detail is the new\n`selection`. A command row and a second pick of the selected row leave it unchanged and do\nnot fire it. Does not bubble.\n */\n suiSelectionChange: EventEmitter<SuiListCustomEvent<ISuiListSuiKey | undefined>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiListbox,\n inputs: ['disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'filter', 'height', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'multiple', 'name', 'options', 'readOnly', 'required', 'value', 'virtualScrollThreshold'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-listbox',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'filter', 'height', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'multiple', 'name', 'options', 'readOnly', 'required', 'value', 'virtualScrollThreshold'],\n outputs: ['suiChange'],\n})\nexport class SuiListbox {\n protected el: HTMLSuiListboxElement;\n @Output() suiChange = new EventEmitter<SuiListboxCustomEvent<ISuiListboxSuiChoiceValue>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiListboxCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChoiceValue as ISuiListboxSuiChoiceValue } from '@shineuix/core/dist/components';\n\nexport declare interface SuiListbox extends Components.SuiListbox {\n /**\n * Fires when the selection changes; detail is the new `value`: the picked option's value, or\nthe array of picked values when `multiple`.\n */\n suiChange: EventEmitter<SuiListboxCustomEvent<ISuiListboxSuiChoiceValue>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMegaMenu,\n inputs: ['items', 'noFold', 'openIndex', 'orientation'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-mega-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['items', 'noFold', 'openIndex', 'orientation'],\n outputs: ['suiPick', 'suiOpen', 'suiClose'],\n})\nexport class SuiMegaMenu {\n protected el: HTMLSuiMegaMenuElement;\n @Output() suiPick = new EventEmitter<SuiMegaMenuCustomEvent<ISuiMegaMenuSuiMegaMenuLink>>();\n @Output() suiOpen = new EventEmitter<SuiMegaMenuCustomEvent<number>>();\n @Output() suiClose = new EventEmitter<SuiMegaMenuCustomEvent<ISuiMegaMenuSuiCloseReason>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiMegaMenuCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiMegaMenuLink as ISuiMegaMenuSuiMegaMenuLink } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiMegaMenuSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiMegaMenu extends Components.SuiMegaMenu {\n /**\n * Fires when a panel link, or a top item without a panel, is picked; detail is the link. `command()` also runs.\n */\n suiPick: EventEmitter<SuiMegaMenuCustomEvent<ISuiMegaMenuSuiMegaMenuLink>>;\n /**\n * Fires after the element opens a panel; detail is the top-item index it opened, or\n`items.length` for More. It does not bubble.\n */\n suiOpen: EventEmitter<SuiMegaMenuCustomEvent<number>>;\n /**\n * Fires before the element closes the open panel; detail is `'trigger' | 'outside' | 'escape' | 'pick'`.\nCancelable: `preventDefault()` keeps it open (and cancels a switch to another panel). It\ndoes not bubble.\n */\n suiClose: EventEmitter<SuiMegaMenuCustomEvent<ISuiMegaMenuSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMenu,\n inputs: ['items', 'variant', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['items', 'variant', 'width'],\n outputs: ['suiPick'],\n})\nexport class SuiMenu {\n protected el: HTMLSuiMenuElement;\n @Output() suiPick = new EventEmitter<SuiMenuCustomEvent<ISuiMenuSuiMenuItem>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiMenuCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiMenuItem as ISuiMenuSuiMenuItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiMenu extends Components.SuiMenu {\n /**\n * Fires when an enabled row is picked; detail is the item. `item.command()` also runs. On a\nlink row both happen on the click, before the browser follows the `href`.\n */\n suiPick: EventEmitter<SuiMenuCustomEvent<ISuiMenuSuiMenuItem>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMenubar,\n inputs: ['items', 'noFold', 'openIndex'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-menubar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['items', 'noFold', 'openIndex'],\n outputs: ['suiPick', 'suiOpen', 'suiClose'],\n})\nexport class SuiMenubar {\n protected el: HTMLSuiMenubarElement;\n @Output() suiPick = new EventEmitter<SuiMenubarCustomEvent<ISuiMenubarSuiMenuItem>>();\n @Output() suiOpen = new EventEmitter<SuiMenubarCustomEvent<number>>();\n @Output() suiClose = new EventEmitter<SuiMenubarCustomEvent<ISuiMenubarSuiCloseReason>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiMenubarCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiMenuItem as ISuiMenubarSuiMenuItem } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiMenubarSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiMenubar extends Components.SuiMenubar {\n /**\n * Fires when a dropdown row (or a top item without a dropdown) is picked; detail is the item. `item.command()` also runs.\n */\n suiPick: EventEmitter<SuiMenubarCustomEvent<ISuiMenubarSuiMenuItem>>;\n /**\n * Fires after the element opens a dropdown; detail is the top-item index it opened, or\n`items.length` for More. It does not bubble.\n */\n suiOpen: EventEmitter<SuiMenubarCustomEvent<number>>;\n /**\n * Fires before the element closes the open dropdown; detail is `'trigger' | 'outside' | 'escape' | 'pick'`.\nCancelable: `preventDefault()` keeps it open (and cancels a switch to another dropdown). It\ndoes not bubble.\n */\n suiClose: EventEmitter<SuiMenubarCustomEvent<ISuiMenubarSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMessage,\n inputs: ['closable', 'heading', 'icon', 'severity']\n})\n@Component({\n selector: 'sui-message',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['closable', 'heading', 'icon', 'severity'],\n outputs: ['suiClose'],\n})\nexport class SuiMessage {\n protected el: HTMLSuiMessageElement;\n @Output() suiClose = new EventEmitter<SuiMessageCustomEvent<ISuiMessageSuiCloseReason>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiMessageCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiMessageSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiMessage extends Components.SuiMessage {\n /**\n * Fires before the dismiss control hides the message; detail is `'close-button'`.\nCancelable: `preventDefault()` keeps it shown (confirm first, then set `hidden` yourself). It\ndoes not bubble, as no `suiClose` in the library does.\n */\n suiClose: EventEmitter<SuiMessageCustomEvent<ISuiMessageSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMeterGroup,\n inputs: ['height', 'hideLegend', 'orientation', 'segments', 'totalLabel']\n})\n@Component({\n selector: 'sui-meter-group',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['height', 'hideLegend', 'orientation', 'segments', 'totalLabel'],\n})\nexport class SuiMeterGroup {\n protected el: HTMLSuiMeterGroupElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiMeterGroup extends Components.SuiMeterGroup {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMiniToolbar,\n inputs: ['open', 'x', 'y'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-mini-toolbar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['open', 'x', 'y'],\n})\nexport class SuiMiniToolbar {\n protected el: HTMLSuiMiniToolbarElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiMiniToolbar extends Components.SuiMiniToolbar {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMultiSelect,\n inputs: ['clearable', 'disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'filter', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'maxChips', 'name', 'open', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-multi-select',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['clearable', 'disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'filter', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'maxChips', 'name', 'open', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n outputs: ['suiChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiMultiSelect {\n protected el: HTMLSuiMultiSelectElement;\n @Output() suiChange = new EventEmitter<SuiMultiSelectCustomEvent<ISuiMultiSelectSuiKey[]>>();\n @Output() suiOpen = new EventEmitter<SuiMultiSelectCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiMultiSelectCustomEvent<ISuiMultiSelectSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiMultiSelect['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiMultiSelectCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiMultiSelectSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiMultiSelectSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiMultiSelect extends Components.SuiMultiSelect {\n /**\n * Fires when the picks change; detail is the new `value`, the full array of picked values as\ntheir options give them (empty after a clear).\n */\n suiChange: EventEmitter<SuiMultiSelectCustomEvent<ISuiMultiSelectSuiKey[]>>;\n /**\n * Fires after the element opens the panel itself (trigger click, ArrowDown, Enter, Space). Does\nnot bubble, so a dialog around the control never takes it for its own.\n */\n suiOpen: EventEmitter<SuiMultiSelectCustomEvent<void>>;\n /**\n * Fires before the element closes the panel itself; detail is `'escape' | 'outside' | 'trigger'`.\nCancelable: `preventDefault()` keeps it open. Tab reports `'outside'`, because focus left the\ncontrol and `SuiCloseReason` has no member for that. Picking never closes a multi-select. Does\nnot bubble: a `preventDefault()` in a dialog's own `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiMultiSelectCustomEvent<ISuiMultiSelectSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiNotificationCenter,\n inputs: ['align', 'listMaxHeight', 'notifications', 'open', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-notification-center',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['align', 'listMaxHeight', 'notifications', 'open', 'width'],\n outputs: ['suiViewAll', 'suiItemPick', 'suiRead', 'suiRemove', 'suiOpen', 'suiClose'],\n})\nexport class SuiNotificationCenter {\n protected el: HTMLSuiNotificationCenterElement;\n @Output() suiViewAll = new EventEmitter<SuiNotificationCenterCustomEvent<void>>();\n @Output() suiItemPick = new EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiNotificationItem>>();\n @Output() suiRead = new EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiNotificationItem>>();\n @Output() suiRemove = new EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiNotificationItem>>();\n @Output() suiOpen = new EventEmitter<SuiNotificationCenterCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiNotificationCenter['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiNotificationCenterCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiNotificationItem as ISuiNotificationCenterSuiNotificationItem } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiNotificationCenterSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiNotificationCenter extends Components.SuiNotificationCenter {\n /**\n * Fires when \"View all notifications\" is activated. No detail.\n */\n suiViewAll: EventEmitter<SuiNotificationCenterCustomEvent<void>>;\n /**\n * Fires every time a row is activated, whatever its read state; detail is the item as the user\nsaw it (so an unread row still reads `read: false`). This is the navigate signal, and\nactivating also marks the row read. `suiRead` only reports that state change, and says\nnothing on an already-read row.\n */\n suiItemPick: EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiNotificationItem>>;\n /**\n * Fires when a row becomes read (row activation or \"Mark all read\"); detail is the item.\n */\n suiRead: EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiNotificationItem>>;\n /**\n * Fires when a row's remove control is used; detail is the removed item. Focus moves to the\nsame control on the row that takes its place, so Enter clears an inbox row by row, and to\nthe bell once the list is empty.\n\nNamed `suiRemove` because that is what the library calls this everywhere else. Dismissal has\ntwo shapes here and only two: `suiClose` carries a `SuiCloseReason` and says why something\nshut, and `suiRemove` carries the thing that went. This used to be `suiDismiss`, which was\nthe only third name in the library, on an event that takes a row out of a list and hands you\nthe row: the `suiRemove` shape exactly, as on `sui-file-upload`.\n */\n suiRemove: EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiNotificationItem>>;\n /**\n * Fires when an interaction opens the panel. It does not bubble.\n */\n suiOpen: EventEmitter<SuiNotificationCenterCustomEvent<void>>;\n /**\n * Fires before the panel closes itself; detail is `'trigger' | 'outside' | 'escape'`.\nCancelable: `preventDefault()` keeps it open. It does not bubble.\n */\n suiClose: EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiOrderList,\n inputs: ['dragOnly', 'emptyFilterMessage', 'emptyMessage', 'filter', 'heading', 'height', 'items', 'loading', 'noDrag', 'selection', 'selectionMode'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-order-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dragOnly', 'emptyFilterMessage', 'emptyMessage', 'filter', 'heading', 'height', 'items', 'loading', 'noDrag', 'selection', 'selectionMode'],\n outputs: ['suiItemsChange', 'suiSelectionChange'],\n})\nexport class SuiOrderList {\n protected el: HTMLSuiOrderListElement;\n @Output() suiItemsChange = new EventEmitter<SuiOrderListCustomEvent<ISuiOrderListSuiReorderItem[]>>();\n @Output() suiSelectionChange = new EventEmitter<SuiOrderListCustomEvent<ISuiOrderListSuiKey[]>>();\n /** Emits the new `items` when the element changes it (`suiItemsChange`), so `[(items)]` binds both ways. */\n @Output() itemsChange = propChange<SuiOrderListCustomEvent<ISuiOrderListSuiReorderItem[]>>(this, 'suiItemsChange');\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiOrderListCustomEvent<ISuiOrderListSuiKey[]>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiOrderListCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiReorderItem as ISuiOrderListSuiReorderItem } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiOrderListSuiKey } from '@shineuix/core/dist/components';\n\nexport declare interface SuiOrderList extends Components.SuiOrderList {\n /**\n * Fires after every reorder (control click, drop, keyboard move); detail is the new `items`\narray. A state report: the list is not a form field, so a form around it never hears it.\nDoes not bubble.\n */\n suiItemsChange: EventEmitter<SuiOrderListCustomEvent<ISuiOrderListSuiReorderItem[]>>;\n /**\n * Fires when the selection changes; detail is the new `selection`, the selected rows' values\nin list order. Does not bubble.\n */\n suiSelectionChange: EventEmitter<SuiOrderListCustomEvent<ISuiOrderListSuiKey[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiOrgChart,\n inputs: ['collapsible', 'emptyMessage', 'expanded', 'loading', 'root', 'selection', 'selectionMode'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-org-chart',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['collapsible', 'emptyMessage', 'expanded', 'loading', 'root', 'selection', 'selectionMode'],\n outputs: ['suiExpandedChange', 'suiSelectionChange'],\n})\nexport class SuiOrgChart {\n protected el: HTMLSuiOrgChartElement;\n @Output() suiExpandedChange = new EventEmitter<SuiOrgChartCustomEvent<ISuiOrgChartSuiKey[]>>();\n @Output() suiSelectionChange = new EventEmitter<SuiOrgChartCustomEvent<ISuiOrgChartSuiKey[]>>();\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiOrgChartCustomEvent<ISuiOrgChartSuiKey[]>>(this, 'suiExpandedChange');\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiOrgChartCustomEvent<ISuiOrgChartSuiKey[]>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiOrgChartCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiOrgChartSuiKey } from '@shineuix/core/dist/components';\n\nexport declare interface SuiOrgChart extends Components.SuiOrgChart {\n /**\n * Fires when a branch opens or closes; detail is the array of expanded keys. Does not\nbubble.\n */\n suiExpandedChange: EventEmitter<SuiOrgChartCustomEvent<ISuiOrgChartSuiKey[]>>;\n /**\n * Fires when the selection changes; detail is the new `selection`. Does not bubble.\n */\n suiSelectionChange: EventEmitter<SuiOrgChartCustomEvent<ISuiOrgChartSuiKey[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiOverlayBadge,\n inputs: ['dot', 'position', 'severity', 'value']\n})\n@Component({\n selector: 'sui-overlay-badge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dot', 'position', 'severity', 'value'],\n})\nexport class SuiOverlayBadge {\n protected el: HTMLSuiOverlayBadgeElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiOverlayBadge extends Components.SuiOverlayBadge {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPageHeader,\n inputs: ['back', 'heading', 'headingLevel'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-page-header',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['back', 'heading', 'headingLevel'],\n outputs: ['suiBack'],\n})\nexport class SuiPageHeader {\n protected el: HTMLSuiPageHeaderElement;\n @Output() suiBack = new EventEmitter<SuiPageHeaderCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPageHeaderCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPageHeader extends Components.SuiPageHeader {\n /**\n * Fires when the back control is clicked, before the browser follows `back`. Cancelable:\n`preventDefault()` keeps the page where it is, for a host that navigates in memory.\n */\n suiBack: EventEmitter<SuiPageHeaderCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPaginator,\n inputs: ['hidePageSize', 'page', 'pageSize', 'pageSizes', 'showOnSinglePage', 'totalRecords'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-paginator',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['hidePageSize', 'page', 'pageSize', 'pageSizes', 'showOnSinglePage', 'totalRecords'],\n outputs: ['suiPageChange', 'suiPageSizeChange'],\n})\nexport class SuiPaginator {\n protected el: HTMLSuiPaginatorElement;\n @Output() suiPageChange = new EventEmitter<SuiPaginatorCustomEvent<number>>();\n @Output() suiPageSizeChange = new EventEmitter<SuiPaginatorCustomEvent<number>>();\n /** Emits the new `page` when the element changes it (`suiPageChange`), so `[(page)]` binds both ways. */\n @Output() pageChange = propChange<SuiPaginatorCustomEvent<number>>(this, 'suiPageChange');\n /** Emits the new `pageSize` when the element changes it (`suiPageSizeChange`), so `[(pageSize)]` binds both ways. */\n @Output() pageSizeChange = propChange<SuiPaginatorCustomEvent<number>>(this, 'suiPageSizeChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPaginatorCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPaginator extends Components.SuiPaginator {\n /**\n * Fires when the page changes, by a page control or by a clamp after `totalRecords` or\n`pageSize` shrank the page count; detail is the new `page`. Does not bubble, so a table or a\nview the paginator sits in never hears it as its own.\n */\n suiPageChange: EventEmitter<SuiPaginatorCustomEvent<number>>;\n /**\n * Fires when the rows-per-page select changes the page size; detail is the new `pageSize`. The\npaginator writes `pageSize` and returns to page 1 first, then fires this and, when the page\nmoved, `suiPageChange`. Does not bubble.\n */\n suiPageSizeChange: EventEmitter<SuiPaginatorCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPanel,\n inputs: ['collapsed', 'collapsible', 'headerTone', 'heading', 'meta'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-panel',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['collapsed', 'collapsible', 'headerTone', 'heading', 'meta'],\n outputs: ['suiOpen', 'suiClose'],\n})\nexport class SuiPanel {\n protected el: HTMLSuiPanelElement;\n @Output() suiOpen = new EventEmitter<SuiPanelCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiPanelCustomEvent<ISuiPanelSuiCloseReason>>();\n /** Emits `collapsed` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(collapsed)]` binds both ways. */\n @Output() collapsedChange = openStateChange<Components.SuiPanel['collapsed']>(this, 'collapsed');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPanelCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiPanelSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPanel extends Components.SuiPanel {\n /**\n * Fires after the header expands the body. It does not bubble.\n */\n suiOpen: EventEmitter<SuiPanelCustomEvent<void>>;\n /**\n * Fires before the header collapses the body; detail is `'trigger'` (the header is the only way\nthis element closes itself). Cancelable: `preventDefault()` leaves the panel open, so a host\ncan keep unsaved edits on screen that unmounting would throw away. It does not bubble.\n */\n suiClose: EventEmitter<SuiPanelCustomEvent<ISuiPanelSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPanelMenu,\n inputs: ['expanded', 'groups', 'multiple', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-panel-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['expanded', 'groups', 'multiple', 'width'],\n outputs: ['suiExpandedChange', 'suiPick'],\n})\nexport class SuiPanelMenu {\n protected el: HTMLSuiPanelMenuElement;\n @Output() suiExpandedChange = new EventEmitter<SuiPanelMenuCustomEvent<number[]>>();\n @Output() suiPick = new EventEmitter<SuiPanelMenuCustomEvent<ISuiPanelMenuSuiPanelMenuItem>>();\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiPanelMenuCustomEvent<number[]>>(this, 'suiExpandedChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPanelMenuCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiPanelMenuItem as ISuiPanelMenuSuiPanelMenuItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPanelMenu extends Components.SuiPanelMenu {\n /**\n * Fires after a group header toggles; detail is the new `expanded` list of open group indexes.\nIndexed expansion is not open state, so this is not the `suiOpen` and `suiClose` pair, as in\n`sui-accordion`. Does not bubble.\n */\n suiExpandedChange: EventEmitter<SuiPanelMenuCustomEvent<number[]>>;\n /**\n * Fires when a row is chosen; detail is the item object, as every menu reports a pick.\n`item.command()` also runs.\n */\n suiPick: EventEmitter<SuiPanelMenuCustomEvent<ISuiPanelMenuSuiPanelMenuItem>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPassword,\n inputs: ['autocomplete', 'disabled', 'error', 'fairLabel', 'goodLabel', 'help', 'hideLabel', 'invalid', 'label', 'locale', 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'showLabel', 'showStrength', 'size', 'strongLabel', 'value', 'weakLabel'],\n methods: ['select', 'setFocus']\n})\n@Component({\n selector: 'sui-password',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autocomplete', 'disabled', 'error', 'fairLabel', 'goodLabel', 'help', 'hideLabel', 'invalid', 'label', 'locale', 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'showLabel', 'showStrength', 'size', 'strongLabel', 'value', 'weakLabel'],\n outputs: ['suiInput', 'suiChange', 'suiFocus', 'suiBlur'],\n})\nexport class SuiPassword {\n protected el: HTMLSuiPasswordElement;\n @Output() suiInput = new EventEmitter<SuiPasswordCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiPasswordCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiPasswordCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiPasswordCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPasswordCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPassword extends Components.SuiPassword {\n /**\n * Fires on every keystroke; detail is the current value.\n */\n suiInput: EventEmitter<SuiPasswordCustomEvent<string>>;\n /**\n * Fires on commit (blur or Enter, native change); detail is the final value.\n */\n suiChange: EventEmitter<SuiPasswordCustomEvent<string>>;\n /**\n * Fires when the input takes focus; no detail. The same pair is on every text field. Does not bubble.\n */\n suiFocus: EventEmitter<SuiPasswordCustomEvent<void>>;\n /**\n * Fires when the input loses focus, to the eye included; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiPasswordCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPersona,\n inputs: ['accent', 'initials', 'inverse', 'meta', 'name', 'secondary', 'size', 'src', 'weight']\n})\n@Component({\n selector: 'sui-persona',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'initials', 'inverse', 'meta', 'name', 'secondary', 'size', 'src', 'weight'],\n})\nexport class SuiPersona {\n protected el: HTMLSuiPersonaElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiPersona extends Components.SuiPersona {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPickList,\n inputs: ['breakpoint', 'dragOnly', 'emptyFilterMessage', 'emptyMessage', 'filter', 'height', 'loading', 'noDrag', 'selection', 'selectionMode', 'source', 'sourceHeading', 'target', 'targetHeading'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-pick-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['breakpoint', 'dragOnly', 'emptyFilterMessage', 'emptyMessage', 'filter', 'height', 'loading', 'noDrag', 'selection', 'selectionMode', 'source', 'sourceHeading', 'target', 'targetHeading'],\n outputs: ['suiSourceChange', 'suiTargetChange', 'suiSelectionChange'],\n})\nexport class SuiPickList {\n protected el: HTMLSuiPickListElement;\n @Output() suiSourceChange = new EventEmitter<SuiPickListCustomEvent<ISuiPickListSuiReorderItem[]>>();\n @Output() suiTargetChange = new EventEmitter<SuiPickListCustomEvent<ISuiPickListSuiReorderItem[]>>();\n @Output() suiSelectionChange = new EventEmitter<SuiPickListCustomEvent<ISuiPickListSuiKey[]>>();\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiPickListCustomEvent<ISuiPickListSuiKey[]>>(this, 'suiSelectionChange');\n /** Emits the new `source` when the element changes it (`suiSourceChange`), so `[(source)]` binds both ways. */\n @Output() sourceChange = propChange<SuiPickListCustomEvent<ISuiPickListSuiReorderItem[]>>(this, 'suiSourceChange');\n /** Emits the new `target` when the element changes it (`suiTargetChange`), so `[(target)]` binds both ways. */\n @Output() targetChange = propChange<SuiPickListCustomEvent<ISuiPickListSuiReorderItem[]>>(this, 'suiTargetChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPickListCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiReorderItem as ISuiPickListSuiReorderItem } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiPickListSuiKey } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPickList extends Components.SuiPickList {\n /**\n * Fires after a transfer or a reorder that changed the available pane; detail is the new\n`source`. A transfer changes both panes and fires this, then `suiTargetChange`. A state\nreport: the pick list is not a form field, so a form around it never hears it. Does not\nbubble.\n */\n suiSourceChange: EventEmitter<SuiPickListCustomEvent<ISuiPickListSuiReorderItem[]>>;\n /**\n * Fires after a transfer or a reorder that changed the chosen pane; detail is the new `target`.\nDoes not bubble.\n */\n suiTargetChange: EventEmitter<SuiPickListCustomEvent<ISuiPickListSuiReorderItem[]>>;\n /**\n * Fires when the selection changes; detail is the new `selection`, the picked rows' values in\npane order. A transfer carries the picks with their rows and does not fire it. Does not\nbubble.\n */\n suiSelectionChange: EventEmitter<SuiPickListCustomEvent<ISuiPickListSuiKey[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPopover,\n inputs: ['align', 'closeDelay', 'flush', 'hoverPersist', 'menu', 'open', 'openDelay', 'position', 'triggerOn', 'width']\n})\n@Component({\n selector: 'sui-popover',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['align', 'closeDelay', 'flush', 'hoverPersist', 'menu', 'open', 'openDelay', 'position', 'triggerOn', 'width'],\n outputs: ['suiOpen', 'suiClose'],\n})\nexport class SuiPopover {\n protected el: HTMLSuiPopoverElement;\n @Output() suiOpen = new EventEmitter<SuiPopoverCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiPopoverCustomEvent<ISuiPopoverSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiPopover['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPopoverCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiPopoverSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPopover extends Components.SuiPopover {\n /**\n * Fires when an interaction opens the panel. It does not bubble.\n */\n suiOpen: EventEmitter<SuiPopoverCustomEvent<void>>;\n /**\n * Fires before the panel closes itself; detail is `'escape' | 'outside' | 'trigger'`\n(`'trigger'` covers both a trigger click and a hover card's mouse-out or blur; `'outside'`\ncovers an outside pointer and focus leaving a click panel on Tab).\nCancelable: `preventDefault()` keeps it open. It does not bubble, so a dialog around the\npopover never hears it.\n */\n suiClose: EventEmitter<SuiPopoverCustomEvent<ISuiPopoverSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiProgressBar,\n inputs: ['accent', 'height', 'indeterminate', 'label', 'showValue', 'value']\n})\n@Component({\n selector: 'sui-progress-bar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'height', 'indeterminate', 'label', 'showValue', 'value'],\n})\nexport class SuiProgressBar {\n protected el: HTMLSuiProgressBarElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiProgressBar extends Components.SuiProgressBar {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiProgressRing,\n inputs: ['accent', 'diameter', 'label', 'showValue', 'thickness', 'value']\n})\n@Component({\n selector: 'sui-progress-ring',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'diameter', 'label', 'showValue', 'thickness', 'value'],\n})\nexport class SuiProgressRing {\n protected el: HTMLSuiProgressRingElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiProgressRing extends Components.SuiProgressRing {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiProgressSpinner,\n inputs: ['accent', 'diameter', 'label', 'thickness']\n})\n@Component({\n selector: 'sui-progress-spinner',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'diameter', 'label', 'thickness'],\n})\nexport class SuiProgressSpinner {\n protected el: HTMLSuiProgressSpinnerElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiProgressSpinner extends Components.SuiProgressSpinner {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiQrCode,\n inputs: ['caption', 'downloadable', 'ecLevel', 'fileName', 'label', 'value', 'width'],\n methods: ['setFocus', 'download']\n})\n@Component({\n selector: 'sui-qr-code',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'downloadable', 'ecLevel', 'fileName', 'label', 'value', 'width'],\n outputs: ['suiRender'],\n})\nexport class SuiQrCode {\n protected el: HTMLSuiQrCodeElement;\n @Output() suiRender = new EventEmitter<SuiQrCodeCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiQrCodeCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiQrCode extends Components.SuiQrCode {\n /**\n * Fires after each successful draw, including the redraw a new `value`, `width` or `ecLevel`\ntriggers. No detail: read the element for the state you need.\n */\n suiRender: EventEmitter<SuiQrCodeCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiRadioButton,\n inputs: ['checked', 'description', 'disabled', 'invalid', 'label', 'name', 'readOnly', 'required', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-radio-button',\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', 'invalid', 'label', 'name', 'readOnly', 'required', 'size', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiRadioButton {\n protected el: HTMLSuiRadioButtonElement;\n @Output() suiChange = new EventEmitter<SuiRadioButtonCustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiRadioButtonCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiRadioButton extends Components.SuiRadioButton {\n /**\n * Fires when this radio becomes checked by user input; detail is the new checked state, as on\n`sui-checkbox`, `sui-toggle-switch` and `sui-toggle-button`. A radio only ever reports itself\nbecoming checked, so the detail is always `true`.\n */\n suiChange: EventEmitter<SuiRadioButtonCustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiRadioGroup,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'name', 'options', 'orientation', 'readOnly', 'required', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-radio-group',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'name', 'options', 'orientation', 'readOnly', 'required', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiRadioGroup {\n protected el: HTMLSuiRadioGroupElement;\n @Output() suiChange = new EventEmitter<SuiRadioGroupCustomEvent<ISuiRadioGroupSuiKey>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiRadioGroupCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiRadioGroupSuiKey } from '@shineuix/core/dist/components';\n\nexport declare interface SuiRadioGroup extends Components.SuiRadioGroup {\n /**\n * Fires when the selection changes; detail is the new `value`, the picked option's value.\n */\n suiChange: EventEmitter<SuiRadioGroupCustomEvent<ISuiRadioGroupSuiKey>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiRating,\n inputs: ['allowHalf', 'count', 'disabled', 'error', 'help', 'label', 'name', 'readOnly', 'required', 'showCount', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-rating',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['allowHalf', 'count', 'disabled', 'error', 'help', 'label', 'name', 'readOnly', 'required', 'showCount', 'size', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiRating {\n protected el: HTMLSuiRatingElement;\n @Output() suiChange = new EventEmitter<SuiRatingCustomEvent<number>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiRatingCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiRating extends Components.SuiRating {\n /**\n * Fires when the rating changes; detail is the new value (0 after clearing, `n.5` for a half star).\n */\n suiChange: EventEmitter<SuiRatingCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiRichTextEditor,\n inputs: ['disabled', 'error', 'help', 'html', 'invalid', 'label', 'mergeFields', 'minHeight', 'name', 'placeholder', 'readOnly', 'required', 'variant'],\n methods: ['getSnapshot', 'setFocus', 'exec']\n})\n@Component({\n selector: 'sui-rich-text-editor',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'html', 'invalid', 'label', 'mergeFields', 'minHeight', 'name', 'placeholder', 'readOnly', 'required', 'variant'],\n outputs: ['suiChange', 'suiSelection'],\n})\nexport class SuiRichTextEditor {\n protected el: HTMLSuiRichTextEditorElement;\n @Output() suiChange = new EventEmitter<SuiRichTextEditorCustomEvent<ISuiRichTextEditorSuiRichTextChangeDetail>>();\n @Output() suiSelection = new EventEmitter<SuiRichTextEditorCustomEvent<ISuiRichTextEditorSuiEditorSnapshot>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiRichTextEditorCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiRichTextChangeDetail as ISuiRichTextEditorSuiRichTextChangeDetail } from '@shineuix/core/dist/components';\nimport type { SuiEditorSnapshot as ISuiRichTextEditorSuiEditorSnapshot } from '@shineuix/core/dist/components';\n\nexport declare interface SuiRichTextEditor extends Components.SuiRichTextEditor {\n /**\n * Fires on every document change with the serialized HTML, plain text and counters.\n */\n suiChange: EventEmitter<SuiRichTextEditorCustomEvent<ISuiRichTextEditorSuiRichTextChangeDetail>>;\n /**\n * Fires after every transaction (selection or document) with the fresh snapshot. A state\nreport, not a value: it fires on every caret move. Does not bubble.\n */\n suiSelection: EventEmitter<SuiRichTextEditorCustomEvent<ISuiRichTextEditorSuiEditorSnapshot>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSaveStatus,\n inputs: ['state', 'time']\n})\n@Component({\n selector: 'sui-save-status',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['state', 'time'],\n})\nexport class SuiSaveStatus {\n protected el: HTMLSuiSaveStatusElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiSaveStatus extends Components.SuiSaveStatus {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSchedulerBuilder,\n inputs: ['config', 'disabled', 'hideJson', 'label', 'timezone', 'todayDate', 'variant'],\n methods: ['getConfig', 'setFocus']\n})\n@Component({\n selector: 'sui-scheduler-builder',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['config', 'disabled', 'hideJson', 'label', 'timezone', 'todayDate', 'variant'],\n outputs: ['suiChange'],\n})\nexport class SuiSchedulerBuilder {\n protected el: HTMLSuiSchedulerBuilderElement;\n @Output() suiChange = new EventEmitter<SuiSchedulerBuilderCustomEvent<ISuiSchedulerBuilderSuiScheduleChangeDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSchedulerBuilderCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiScheduleChangeDetail as ISuiSchedulerBuilderSuiScheduleChangeDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSchedulerBuilder extends Components.SuiSchedulerBuilder {\n /**\n * Fires after every edit (and once after load) with `{ config, sentence }`: the version-2\ncontract and its restatement in the page's language. The composed inputs' own `suiChange` and\n`suiInput` events stop at this element, so this is the only change event a consumer sees. The\nbuilder is a value control: Vue's `v-model` and Angular's `ngModel` bind the `config` prop\nthrough this event, so the model holds the seed form the element writes back.\n */\n suiChange: EventEmitter<SuiSchedulerBuilderCustomEvent<ISuiSchedulerBuilderSuiScheduleChangeDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiScrollPanel,\n inputs: ['height'],\n methods: ['setFocus', 'scrollToBottom']\n})\n@Component({\n selector: 'sui-scroll-panel',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['height'],\n})\nexport class SuiScrollPanel {\n protected el: HTMLSuiScrollPanelElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiScrollPanel extends Components.SuiScrollPanel {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiScrollTop,\n inputs: ['target', 'threshold', 'visible'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-scroll-top',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['target', 'threshold', 'visible'],\n outputs: ['suiVisibleChange'],\n})\nexport class SuiScrollTop {\n protected el: HTMLSuiScrollTopElement;\n @Output() suiVisibleChange = new EventEmitter<SuiScrollTopCustomEvent<boolean>>();\n /** Emits the new `visible` when the element changes it (`suiVisibleChange`), so `[(visible)]` binds both ways. */\n @Output() visibleChange = propChange<SuiScrollTopCustomEvent<boolean>>(this, 'suiVisibleChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiScrollTopCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiScrollTop extends Components.SuiScrollTop {\n /**\n * Fires when the element shows or hides itself from the scroll position; detail is the new\n`visible`. Only a flip emits, so a scroll does not produce an event storm. Not cancelable:\nnothing opened this and there is no trigger to hand focus back to. Does not bubble.\n */\n suiVisibleChange: EventEmitter<SuiScrollTopCustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSelect,\n inputs: ['clearable', 'disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'filter', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'name', 'open', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-select',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['clearable', 'disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'filter', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'name', 'open', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n outputs: ['suiChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiSelect {\n protected el: HTMLSuiSelectElement;\n @Output() suiChange = new EventEmitter<SuiSelectCustomEvent<ISuiSelectSuiKey>>();\n @Output() suiOpen = new EventEmitter<SuiSelectCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiSelectCustomEvent<ISuiSelectSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiSelect['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSelectCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiSelectSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiSelectSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSelect extends Components.SuiSelect {\n /**\n * Fires when a value commits; detail is the new `value`: the option's value as given, or `''`\nafter a clear.\n */\n suiChange: EventEmitter<SuiSelectCustomEvent<ISuiSelectSuiKey>>;\n /**\n * Fires after the element opens the panel itself (trigger click, ArrowDown, Enter, Space). Does\nnot bubble, so a dialog around the select never takes it for its own.\n */\n suiOpen: EventEmitter<SuiSelectCustomEvent<void>>;\n /**\n * Fires before the element closes the panel itself; detail is\n`'pick' | 'escape' | 'outside' | 'trigger'`. Cancelable: `preventDefault()` keeps it open, so\n`detail === 'pick'` is how a consumer keeps the panel up after a choice. Tab reports\n`'outside'`, because focus left the control and `SuiCloseReason` has no member for that. Does\nnot bubble: a `preventDefault()` in a dialog's own `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiSelectCustomEvent<ISuiSelectSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSelectButton,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'multiple', 'name', 'options', 'pill', 'readOnly', 'required', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-select-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'multiple', 'name', 'options', 'pill', 'readOnly', 'required', 'size', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiSelectButton {\n protected el: HTMLSuiSelectButtonElement;\n @Output() suiChange = new EventEmitter<SuiSelectButtonCustomEvent<ISuiSelectButtonSuiChoiceValue>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSelectButtonCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChoiceValue as ISuiSelectButtonSuiChoiceValue } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSelectButton extends Components.SuiSelectButton {\n /**\n * Fires when the selection changes; detail is the new `value`: the picked option's value, or the\narray of picked values when `multiple`. On a linked segment it fires before the browser follows\nthe link; a host that routes itself cancels the segment's `click` instead.\n */\n suiChange: EventEmitter<SuiSelectButtonCustomEvent<ISuiSelectButtonSuiChoiceValue>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSideNav,\n inputs: ['active', 'collapseControl', 'collapsed', 'collapsedBadges', 'collapsedWidth', 'expanded', 'height', 'sections', 'tone', 'variant', 'width'],\n methods: ['setFocus', 'toggle']\n})\n@Component({\n selector: 'sui-side-nav',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'collapseControl', 'collapsed', 'collapsedBadges', 'collapsedWidth', 'expanded', 'height', 'sections', 'tone', 'variant', 'width'],\n outputs: ['suiNavigate', 'suiActiveChange', 'suiExpandedChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiSideNav {\n protected el: HTMLSuiSideNavElement;\n @Output() suiNavigate = new EventEmitter<SuiSideNavCustomEvent<string>>();\n @Output() suiActiveChange = new EventEmitter<SuiSideNavCustomEvent<string>>();\n @Output() suiExpandedChange = new EventEmitter<SuiSideNavCustomEvent<string[]>>();\n @Output() suiOpen = new EventEmitter<SuiSideNavCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiSideNavCustomEvent<ISuiSideNavSuiCloseReason>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiSideNavCustomEvent<string>>(this, 'suiActiveChange');\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiSideNavCustomEvent<string[]>>(this, 'suiExpandedChange');\n /** Emits `collapsed` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(collapsed)]` binds both ways. */\n @Output() collapsedChange = openStateChange<Components.SuiSideNav['collapsed']>(this, 'collapsed');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSideNavCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiSideNavSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSideNav extends Components.SuiSideNav {\n /**\n * Fires when an item is activated; detail is the item key, its own `key` or its label.\n */\n suiNavigate: EventEmitter<SuiSideNavCustomEvent<string>>;\n /**\n * Fires whenever the element writes `active`, a choice of an item that was not active, before\n`suiNavigate`; detail is the new `active`. Writing `active` from script emits nothing. Does\nnot bubble.\n */\n suiActiveChange: EventEmitter<SuiSideNavCustomEvent<string>>;\n /**\n * Fires after a group parent opens or closes, or when a script write moves `active` into a\nclosed group and the element opens it; detail is the new `expanded` array of open keys. Group expansion is\nindexed state, not open state, so it reports the way `sui-accordion` and `sui-panel-menu` do.\nDoes not bubble.\n */\n suiExpandedChange: EventEmitter<SuiSideNavCustomEvent<string[]>>;\n /**\n * Fires after the rail expands itself. It does not bubble, as no open-state event does.\n */\n suiOpen: EventEmitter<SuiSideNavCustomEvent<void>>;\n /**\n * Fires before the rail collapses itself; detail is `'trigger'` (its own control and `toggle()`\nare the only ways it collapses). Cancelable: `preventDefault()` keeps the rail expanded. It\ndoes not bubble.\n */\n suiClose: EventEmitter<SuiSideNavCustomEvent<ISuiSideNavSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSkeleton,\n inputs: ['animation', 'height', 'shape', 'width']\n})\n@Component({\n selector: 'sui-skeleton',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['animation', 'height', 'shape', 'width'],\n})\nexport class SuiSkeleton {\n protected el: HTMLSuiSkeletonElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiSkeleton extends Components.SuiSkeleton {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSkeletonCard,\n inputs: ['animation']\n})\n@Component({\n selector: 'sui-skeleton-card',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['animation'],\n})\nexport class SuiSkeletonCard {\n protected el: HTMLSuiSkeletonCardElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiSkeletonCard extends Components.SuiSkeletonCard {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSlider,\n inputs: ['disabled', 'error', 'format', 'help', 'label', 'max', 'min', 'minGap', 'name', 'orientation', 'range', 'readOnly', 'required', 'showValue', 'step', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-slider',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'format', 'help', 'label', 'max', 'min', 'minGap', 'name', 'orientation', 'range', 'readOnly', 'required', 'showValue', 'step', 'value'],\n outputs: ['suiInput', 'suiChange'],\n})\nexport class SuiSlider {\n protected el: HTMLSuiSliderElement;\n @Output() suiInput = new EventEmitter<SuiSliderCustomEvent<ISuiSliderSuiSliderValue>>();\n @Output() suiChange = new EventEmitter<SuiSliderCustomEvent<ISuiSliderSuiSliderValue>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSliderCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiSliderValue as ISuiSliderSuiSliderValue } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSlider extends Components.SuiSlider {\n /**\n * Fires continuously while a handle moves; detail is the number, or `[low, high]` in range mode.\n */\n suiInput: EventEmitter<SuiSliderCustomEvent<ISuiSliderSuiSliderValue>>;\n /**\n * Fires when a drag ends or a keyboard step lands; detail is the number, or `[low, high]` in range mode.\n */\n suiChange: EventEmitter<SuiSliderCustomEvent<ISuiSliderSuiSliderValue>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSparkline,\n inputs: ['accent', 'data', 'height', 'max', 'min', 'width']\n})\n@Component({\n selector: 'sui-sparkline',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'data', 'height', 'max', 'min', 'width'],\n})\nexport class SuiSparkline {\n protected el: HTMLSuiSparklineElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiSparkline extends Components.SuiSparkline {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSpeedDial,\n inputs: ['direction', 'disabled', 'icon', 'iconOpen', 'items', 'open'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-speed-dial',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['direction', 'disabled', 'icon', 'iconOpen', 'items', 'open'],\n outputs: ['suiOpen', 'suiClose', 'suiPick'],\n})\nexport class SuiSpeedDial {\n protected el: HTMLSuiSpeedDialElement;\n @Output() suiOpen = new EventEmitter<SuiSpeedDialCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiSpeedDialCustomEvent<ISuiSpeedDialSuiCloseReason>>();\n @Output() suiPick = new EventEmitter<SuiSpeedDialCustomEvent<ISuiSpeedDialSuiSpeedDialItem>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiSpeedDial['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSpeedDialCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiSpeedDialSuiCloseReason } from '@shineuix/core/dist/components';\nimport type { SuiSpeedDialItem as ISuiSpeedDialSuiSpeedDialItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSpeedDial extends Components.SuiSpeedDial {\n /**\n * Fires after the element fans the dial out itself (a launcher press, or an arrow key on the\nlauncher). An external `open` write does not echo it. It does not bubble.\n */\n suiOpen: EventEmitter<SuiSpeedDialCustomEvent<void>>;\n /**\n * Fires before the element closes the dial itself; detail is why: `'pick'` (a satellite ran),\n`'trigger'` (the launcher was pressed again), `'outside'` (a pointer landed elsewhere, or Tab\nmoved focus out of the dial), `'escape'`, or `'cancel'` (the dial went `disabled` while it was\nfanned out). Cancelable: `preventDefault()` keeps it open, so a parent that binds `open` never\ngoes stale and \"a stray click outside must not close this\" needs no prop of its own. On\n`'cancel'` a veto means the satellites stay hidden while the dial is disabled and fan back out\nwhen it is enabled again, because `open && !disabled` and not `open` alone decides what renders.\nIt does not bubble.\n */\n suiClose: EventEmitter<SuiSpeedDialCustomEvent<ISuiSpeedDialSuiCloseReason>>;\n /**\n * Fires when a satellite is pressed; detail is the item. `item.command()` also runs.\n */\n suiPick: EventEmitter<SuiSpeedDialCustomEvent<ISuiSpeedDialSuiSpeedDialItem>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSplitButton,\n inputs: ['disabled', 'form', 'icon', 'items', 'label', 'loading', 'menuAlign', 'menuWidth', 'name', 'open', 'size', 'type', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-split-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'form', 'icon', 'items', { name: 'label', required: true }, 'loading', 'menuAlign', 'menuWidth', 'name', 'open', 'size', 'type', 'value', 'variant'],\n outputs: ['suiPick', 'suiOpen', 'suiClose'],\n})\nexport class SuiSplitButton {\n protected el: HTMLSuiSplitButtonElement;\n @Output() suiPick = new EventEmitter<SuiSplitButtonCustomEvent<ISuiSplitButtonSuiMenuItem>>();\n @Output() suiOpen = new EventEmitter<SuiSplitButtonCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiSplitButtonCustomEvent<ISuiSplitButtonSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiSplitButton['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSplitButtonCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiMenuItem as ISuiSplitButtonSuiMenuItem } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiSplitButtonSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSplitButton extends Components.SuiSplitButton {\n /**\n * Fires when a menu row is picked; detail is the item. `item.command()` also runs. The main\nhalf's click is the native host `click`; the chevron's click never reaches the host, so a\n`click` listener means the primary action ran and nothing else.\n */\n suiPick: EventEmitter<SuiSplitButtonCustomEvent<ISuiSplitButtonSuiMenuItem>>;\n /**\n * Fires after the element opens the menu itself (a chevron press, or ArrowDown/ArrowUp on\neither half). An external `open` write does not echo it. It does not bubble.\n */\n suiOpen: EventEmitter<SuiSplitButtonCustomEvent<void>>;\n /**\n * Fires before the element closes the menu itself; detail is why: `'pick'` (a row ran),\n`'trigger'` (the chevron was pressed again), `'outside'` (a pointer landed elsewhere, or Tab\nleft the menu: focus goes back to the chevron, and Tab carries on to whatever follows the\ncontrol while Shift+Tab stops on the chevron), `'escape'`, or `'cancel'` (the control went\n`disabled` or `loading` under an open menu). Cancelable: `preventDefault()` keeps it open, so a parent that\nbinds `open` never goes stale and \"a stray click outside must not close this\" needs no prop\nof its own. On `'cancel'` a veto means the menu is hidden while the control is inert and\ncomes back when it settles, because `menuOpen` and not `open` alone decides what renders. It\ndoes not bubble.\n */\n suiClose: EventEmitter<SuiSplitButtonCustomEvent<ISuiSplitButtonSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSplitter,\n inputs: ['collapsible', 'flush', 'height', 'minRatio', 'orientation', 'ratio'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-splitter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['collapsible', 'flush', 'height', 'minRatio', 'orientation', 'ratio'],\n outputs: ['suiResize', 'suiResizeEnd'],\n})\nexport class SuiSplitter {\n protected el: HTMLSuiSplitterElement;\n @Output() suiResize = new EventEmitter<SuiSplitterCustomEvent<number>>();\n @Output() suiResizeEnd = new EventEmitter<SuiSplitterCustomEvent<number>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSplitterCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSplitter extends Components.SuiSplitter {\n /**\n * Fires while the gutter moves (every drag step and every key press); detail is the new ratio.\nDoes not bubble, so a splitter inside a pane never reports as the outer one.\n */\n suiResize: EventEmitter<SuiSplitterCustomEvent<number>>;\n /**\n * Fires when a resize commits: on pointer release, or straight away on a key press. Detail is\nthe new ratio. Do the expensive work, such as re-laying out a chart or a virtualized table,\nhere. Does not bubble.\n */\n suiResizeEnd: EventEmitter<SuiSplitterCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSpoiler,\n inputs: ['lessLabel', 'lines', 'moreLabel', 'open'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-spoiler',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['lessLabel', 'lines', 'moreLabel', 'open'],\n outputs: ['suiOpen', 'suiClose'],\n})\nexport class SuiSpoiler {\n protected el: HTMLSuiSpoilerElement;\n @Output() suiOpen = new EventEmitter<SuiSpoilerCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiSpoilerCustomEvent<ISuiSpoilerSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiSpoiler['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSpoilerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiSpoilerSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSpoiler extends Components.SuiSpoiler {\n /**\n * Fires after the toggle expands the content, so a parent binding `open` stays current. It does\nnot bubble, as no open-state event does.\n */\n suiOpen: EventEmitter<SuiSpoilerCustomEvent<void>>;\n /**\n * Fires before the toggle collapses the content; detail is `'trigger'`, the only way this\nelement closes itself. Cancelable: `preventDefault()` keeps it expanded. It does not bubble.\n */\n suiClose: EventEmitter<SuiSpoilerCustomEvent<ISuiSpoilerSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiStatCard,\n inputs: ['accent', 'command', 'data', 'delta', 'deltaDirection', 'href', 'label', 'linkLabel', 'note', 'scaleMax', 'scaleMin', 'severity', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-stat-card',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'command', 'data', 'delta', 'deltaDirection', 'href', 'label', 'linkLabel', 'note', 'scaleMax', 'scaleMin', 'severity', 'size', 'value'],\n outputs: ['suiLink'],\n})\nexport class SuiStatCard {\n protected el: HTMLSuiStatCardElement;\n @Output() suiLink = new EventEmitter<SuiStatCardCustomEvent<ISuiStatCardSuiStatCardLinkDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiStatCardCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiStatCardLinkDetail as ISuiStatCardSuiStatCardLinkDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiStatCard extends Components.SuiStatCard {\n /**\n * Fires when the card is activated by click, Enter or Space, before the browser follows `href`;\ndetail is `{ href }`. Cancelable: `preventDefault()` keeps the page where it is, for a host\nwith in-memory navigation.\n */\n suiLink: EventEmitter<SuiStatCardCustomEvent<ISuiStatCardSuiStatCardLinkDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiStepper,\n inputs: ['active', 'linear', 'orientation', 'readOnly', 'steps'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-stepper',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'linear', 'orientation', 'readOnly', 'steps'],\n outputs: ['suiActiveChange'],\n})\nexport class SuiStepper {\n protected el: HTMLSuiStepperElement;\n @Output() suiActiveChange = new EventEmitter<SuiStepperCustomEvent<number>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiStepperCustomEvent<number>>(this, 'suiActiveChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiStepperCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiStepper extends Components.SuiStepper {\n /**\n * Fires when a step is picked; detail is the new `active` index. Does not bubble.\n */\n suiActiveChange: EventEmitter<SuiStepperCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTab,\n inputs: ['badge', 'disabled', 'icon', 'label']\n})\n@Component({\n selector: 'sui-tab',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['badge', 'disabled', 'icon', 'label'],\n})\nexport class SuiTab {\n protected el: HTMLSuiTabElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiTab extends Components.SuiTab {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTabs,\n inputs: ['active', 'stretch', 'variant'],\n methods: ['refresh', 'setFocus']\n})\n@Component({\n selector: 'sui-tabs',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'stretch', 'variant'],\n outputs: ['suiActiveChange'],\n})\nexport class SuiTabs {\n protected el: HTMLSuiTabsElement;\n @Output() suiActiveChange = new EventEmitter<SuiTabsCustomEvent<number>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiTabsCustomEvent<number>>(this, 'suiActiveChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTabsCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTabs extends Components.SuiTabs {\n /**\n * Fires when the user picks another tab, or when tabs are removed and the element moves\n`active` back inside the count; detail is the new `active` index. Writing `active` from script\nemits nothing. Does not bubble, so tabs inside a panel never report as the outer tabs.\n */\n suiActiveChange: EventEmitter<SuiTabsCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTag,\n inputs: ['icon', 'label', 'severity', 'size']\n})\n@Component({\n selector: 'sui-tag',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['icon', 'label', 'severity', 'size'],\n})\nexport class SuiTag {\n protected el: HTMLSuiTagElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiTag extends Components.SuiTag {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTerminal,\n inputs: ['commands', 'height', 'prompt', 'welcome'],\n methods: ['setFocus', 'print', 'clear']\n})\n@Component({\n selector: 'sui-terminal',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['commands', 'height', 'prompt', 'welcome'],\n outputs: ['suiCommand'],\n})\nexport class SuiTerminal {\n protected el: HTMLSuiTerminalElement;\n @Output() suiCommand = new EventEmitter<SuiTerminalCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTerminalCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTerminal extends Components.SuiTerminal {\n /**\n * Fires for every line the operator submits, before it runs; detail is the raw line. Built-ins\nand unknown input included, so a host can audit-log the session or watch for input its map\ndoes not cover.\n */\n suiCommand: EventEmitter<SuiTerminalCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTextarea,\n inputs: ['autoResize', 'autocomplete', 'disabled', 'error', 'help', 'invalid', 'label', 'maxLength', 'minLength', 'name', 'placeholder', 'readOnly', 'required', 'rows', 'showCount', 'size', 'value'],\n methods: ['setFocus', 'select']\n})\n@Component({\n selector: 'sui-textarea',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autoResize', 'autocomplete', 'disabled', 'error', 'help', 'invalid', 'label', 'maxLength', 'minLength', 'name', 'placeholder', 'readOnly', 'required', 'rows', 'showCount', 'size', 'value'],\n outputs: ['suiInput', 'suiChange', 'suiFocus', 'suiBlur'],\n})\nexport class SuiTextarea {\n protected el: HTMLSuiTextareaElement;\n @Output() suiInput = new EventEmitter<SuiTextareaCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiTextareaCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiTextareaCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiTextareaCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTextareaCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTextarea extends Components.SuiTextarea {\n /**\n * Fires on every keystroke; detail is the current value.\n */\n suiInput: EventEmitter<SuiTextareaCustomEvent<string>>;\n /**\n * Fires on commit (blur, native change); detail is the final value.\n */\n suiChange: EventEmitter<SuiTextareaCustomEvent<string>>;\n /**\n * Fires when the box takes focus; no detail. The same pair is on every text field. Does not bubble.\n */\n suiFocus: EventEmitter<SuiTextareaCustomEvent<void>>;\n /**\n * Fires when the box loses focus; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiTextareaCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiThemePicker,\n inputs: ['accentColor', 'accentMode', 'appearance', 'code', 'disabled', 'mode', 'neutral', 'persist', 'preset', 'primary', 'showPresetName', 'status', 'target'],\n methods: ['setTheme', 'reset', 'setFocus']\n})\n@Component({\n selector: 'sui-theme-picker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accentColor', 'accentMode', 'appearance', 'code', 'disabled', 'mode', 'neutral', 'persist', 'preset', 'primary', 'showPresetName', 'status', 'target'],\n outputs: ['suiThemeChange'],\n})\nexport class SuiThemePicker {\n protected el: HTMLSuiThemePickerElement;\n @Output() suiThemeChange = new EventEmitter<SuiThemePickerCustomEvent<ISuiThemePickerSuiThemeChoice>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiThemePickerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiThemeChoice as ISuiThemePickerSuiThemeChoice } from '@shineuix/core/dist/components';\n\nexport declare interface SuiThemePicker extends Components.SuiThemePicker {\n /**\n * Fires after attributes and any custom sheet are applied, from a user pick, `setTheme()`,\n`reset()`, or the operating system's color scheme changing under `mode=\"system\"`; detail is\n`{ preset, mode, resolvedMode, status, code, primary, accent, neutral }`. The only\nevent: there is no `suiClick`. A state report, not a field's value: the picker applies the\ntheme itself and posts nothing, so a form around it never hears it. Does not bubble; listen\non the picker, or on the document in the capture phase.\n */\n suiThemeChange: EventEmitter<SuiThemePickerCustomEvent<ISuiThemePickerSuiThemeChoice>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTieredMenu,\n inputs: ['items', 'openPath', 'variant', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-tiered-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['items', 'openPath', 'variant', 'width'],\n outputs: ['suiPick', 'suiOpenPathChange'],\n})\nexport class SuiTieredMenu {\n protected el: HTMLSuiTieredMenuElement;\n @Output() suiPick = new EventEmitter<SuiTieredMenuCustomEvent<ISuiTieredMenuSuiMenuItem>>();\n @Output() suiOpenPathChange = new EventEmitter<SuiTieredMenuCustomEvent<number[]>>();\n /** Emits the new `openPath` when the element changes it (`suiOpenPathChange`), so `[(openPath)]` binds both ways. */\n @Output() openPathChange = propChange<SuiTieredMenuCustomEvent<number[]>>(this, 'suiOpenPathChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTieredMenuCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiMenuItem as ISuiTieredMenuSuiMenuItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTieredMenu extends Components.SuiTieredMenu {\n /**\n * Fires when a leaf row is picked; detail is the item. `item.command()` also runs, then the open\npath collapses to empty.\n */\n suiPick: EventEmitter<SuiTieredMenuCustomEvent<ISuiTieredMenuSuiMenuItem>>;\n /**\n * Fires whenever the element changes `openPath`; detail is the new path. Several flyouts can be\nopen at once, so this is indexed expansion as in `sui-accordion`, not the `suiOpen` and\n`suiClose` pair: the menu is inline, with no trigger and nothing to dismiss. Does not\nbubble.\n */\n suiOpenPathChange: EventEmitter<SuiTieredMenuCustomEvent<number[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTimePicker,\n inputs: ['disabled', 'error', 'help', 'hourFormat', 'invalid', 'label', 'locale', 'max', 'min', 'name', 'open', 'placeholder', 'readOnly', 'required', 'seconds', 'size', 'step', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-time-picker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'hourFormat', 'invalid', 'label', 'locale', 'max', 'min', 'name', 'open', 'placeholder', 'readOnly', 'required', 'seconds', 'size', 'step', 'value'],\n outputs: ['suiChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiTimePicker {\n protected el: HTMLSuiTimePickerElement;\n @Output() suiChange = new EventEmitter<SuiTimePickerCustomEvent<string>>();\n @Output() suiOpen = new EventEmitter<SuiTimePickerCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiTimePickerCustomEvent<ISuiTimePickerSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiTimePicker['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTimePickerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiTimePickerSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTimePicker extends Components.SuiTimePicker {\n /**\n * Fires when a time commits; detail is the `HH:mm` value, e.g. `\"14:30\"` (`\"14:30:15\"` with `seconds`).\n */\n suiChange: EventEmitter<SuiTimePickerCustomEvent<string>>;\n /**\n * Fires after the element opens the panel itself. Does not bubble, so a dialog around the picker\nnever takes it for its own.\n */\n suiOpen: EventEmitter<SuiTimePickerCustomEvent<void>>;\n /**\n * Fires before the element closes the panel itself; detail is `'escape' | 'outside' | 'trigger' | 'pick'`.\nCancelable: `preventDefault()` keeps it open. Does not bubble: a `preventDefault()` in a dialog's\nown `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiTimePickerCustomEvent<ISuiTimePickerSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTimeline,\n inputs: ['align', 'items', 'orientation', 'severityFill', 'variant']\n})\n@Component({\n selector: 'sui-timeline',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['align', 'items', 'orientation', 'severityFill', 'variant'],\n})\nexport class SuiTimeline {\n protected el: HTMLSuiTimelineElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiTimeline extends Components.SuiTimeline {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiToastHost,\n inputs: ['max', 'name', 'position'],\n methods: ['push', 'dismiss', 'clear']\n})\n@Component({\n selector: 'sui-toast-host',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['max', 'name', 'position'],\n outputs: ['suiRemove', 'suiAction'],\n})\nexport class SuiToastHost {\n protected el: HTMLSuiToastHostElement;\n @Output() suiRemove = new EventEmitter<SuiToastHostCustomEvent<ISuiToastHostSuiToastItem>>();\n @Output() suiAction = new EventEmitter<SuiToastHostCustomEvent<ISuiToastHostSuiToastItem>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiToastHostCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiToastItem as ISuiToastHostSuiToastItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiToastHost extends Components.SuiToastHost {\n /**\n * Fires when a toast leaves the stack (timer, the X, `dismiss()` or `clear()`); detail is the\ntoast. It fires as the toast starts its short fade out, so a listener that reads the stack\nsees the toast gone from `items` one fade later. It is `suiRemove`, as on `sui-chip` and\n`sui-file-upload`, because one item leaving a collection is what it reports; the stack itself\nnever closes, and every `suiClose` in the library carries a `SuiCloseReason`.\n */\n suiRemove: EventEmitter<SuiToastHostCustomEvent<ISuiToastHostSuiToastItem>>;\n /**\n * Fires when a toast's action link is clicked. Detail is the toast; the toast stays until dismissed.\n */\n suiAction: EventEmitter<SuiToastHostCustomEvent<ISuiToastHostSuiToastItem>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiToggleButton,\n inputs: ['checked', 'disabled', 'error', 'help', 'iconOff', 'iconOn', 'invalid', 'labelOff', 'labelOn', 'name', 'readOnly', 'required', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-toggle-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['checked', 'disabled', 'error', 'help', 'iconOff', 'iconOn', 'invalid', 'labelOff', 'labelOn', 'name', 'readOnly', 'required', 'size', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiToggleButton {\n protected el: HTMLSuiToggleButtonElement;\n @Output() suiChange = new EventEmitter<SuiToggleButtonCustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiToggleButtonCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiToggleButton extends Components.SuiToggleButton {\n /**\n * Fires on toggle; detail is the new pressed state.\n */\n suiChange: EventEmitter<SuiToggleButtonCustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiToggleSwitch,\n inputs: ['checked', 'description', 'disabled', 'error', 'help', 'iconOff', 'iconOn', 'invalid', 'label', 'labelPos', 'name', 'readOnly', 'required', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-toggle-switch',\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', 'error', 'help', 'iconOff', 'iconOn', 'invalid', 'label', 'labelPos', 'name', 'readOnly', 'required', 'size', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiToggleSwitch {\n protected el: HTMLSuiToggleSwitchElement;\n @Output() suiChange = new EventEmitter<SuiToggleSwitchCustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiToggleSwitchCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiToggleSwitch extends Components.SuiToggleSwitch {\n /**\n * Fires on toggle; detail is the new on state.\n */\n suiChange: EventEmitter<SuiToggleSwitchCustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiToolbar,\n inputs: ['elevated', 'landmark', 'sticky', 'tone', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-toolbar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['elevated', 'landmark', 'sticky', 'tone', 'variant'],\n})\nexport class SuiToolbar {\n protected el: HTMLSuiToolbarElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiToolbar extends Components.SuiToolbar {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTooltip,\n inputs: ['closeDelay', 'content', 'disabled', 'open', 'openDelay', 'position', 'tone']\n})\n@Component({\n selector: 'sui-tooltip',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['closeDelay', 'content', 'disabled', 'open', 'openDelay', 'position', 'tone'],\n outputs: ['suiClose'],\n})\nexport class SuiTooltip {\n protected el: HTMLSuiTooltipElement;\n @Output() suiClose = new EventEmitter<SuiTooltipCustomEvent<ISuiTooltipSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiTooltip['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTooltipCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiTooltipSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTooltip extends Components.SuiTooltip {\n /**\n * Fires before Escape unpins the capsule; detail is always `'escape'`, the only path on which\nthis element writes `open` itself. Cancelable: `preventDefault()` keeps the capsule pinned.\nIt does not bubble.\n */\n suiClose: EventEmitter<SuiTooltipCustomEvent<ISuiTooltipSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTour,\n inputs: ['open', 'step', 'steps', 'target']\n})\n@Component({\n selector: 'sui-tour',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['open', 'step', 'steps', 'target'],\n outputs: ['suiClose', 'suiStepChange'],\n})\nexport class SuiTour {\n protected el: HTMLSuiTourElement;\n @Output() suiClose = new EventEmitter<SuiTourCustomEvent<ISuiTourSuiCloseReason>>();\n @Output() suiStepChange = new EventEmitter<SuiTourCustomEvent<number>>();\n /** Emits the new `step` when the element changes it (`suiStepChange`), so `[(step)]` binds both ways. */\n @Output() stepChange = propChange<SuiTourCustomEvent<number>>(this, 'suiStepChange');\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiTour['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTourCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiTourSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTour extends Components.SuiTour {\n /**\n * Fires before the tour ends itself. Detail is why: `'pick'` for Finish (the tour was completed),\n`'cancel'` for Skip, `'close-button'` for the X, `'escape'` for Escape. Cancelable:\n`preventDefault()` keeps the tour open. It does not bubble.\n */\n suiClose: EventEmitter<SuiTourCustomEvent<ISuiTourSuiCloseReason>>;\n /**\n * Fires after Next or Back; detail is the new step index. Does not bubble.\n */\n suiStepChange: EventEmitter<SuiTourCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTree,\n inputs: ['dragDrop', 'emptyFilterMessage', 'emptyMessage', 'expanded', 'filter', 'loading', 'loadingMessage', 'nodes', 'selection', 'selectionMode'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-tree',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dragDrop', 'emptyFilterMessage', 'emptyMessage', 'expanded', 'filter', 'loading', 'loadingMessage', 'nodes', 'selection', 'selectionMode'],\n outputs: ['suiExpandedChange', 'suiSelectionChange', 'suiLoad', 'suiNodesChange'],\n})\nexport class SuiTree {\n protected el: HTMLSuiTreeElement;\n @Output() suiExpandedChange = new EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiKey[]>>();\n @Output() suiSelectionChange = new EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiKey[]>>();\n @Output() suiLoad = new EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiTreeNode>>();\n @Output() suiNodesChange = new EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiTreeNode[]>>();\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiTreeCustomEvent<ISuiTreeSuiKey[]>>(this, 'suiExpandedChange');\n /** Emits the new `nodes` when the element changes it (`suiNodesChange`), so `[(nodes)]` binds both ways. */\n @Output() nodesChange = propChange<SuiTreeCustomEvent<ISuiTreeSuiTreeNode[]>>(this, 'suiNodesChange');\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiTreeCustomEvent<ISuiTreeSuiKey[]>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTreeCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiTreeSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiTreeNode as ISuiTreeSuiTreeNode } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTree extends Components.SuiTree {\n /**\n * Fires when a branch opens or closes; detail is the array of expanded keys. Does not\nbubble.\n */\n suiExpandedChange: EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiKey[]>>;\n /**\n * Fires when the selection changes; detail is the new `selection`. Does not bubble.\n */\n suiSelectionChange: EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiKey[]>>;\n /**\n * Asks the host for a branch's children: fires when the element opens a node marked\n`leaf: false` that has none yet and is not already `loading`. Detail is the node. Answer by\nsetting its `loading`, then its `children`, and assigning a new `nodes` array. Writing\n`expanded` from outside opens a branch without asking, since the caller already knows which.\n */\n suiLoad: EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiTreeNode>>;\n /**\n * Fires after a row moves; detail is the new `nodes` tree, which is written back first. Does\nnot bubble.\n */\n suiNodesChange: EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiTreeNode[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTreeSelect,\n inputs: ['clearable', 'disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'expanded', 'filter', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'multiple', 'name', 'open', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-tree-select',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['clearable', 'disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'expanded', 'filter', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'multiple', 'name', 'open', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n outputs: ['suiChange', 'suiExpandedChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiTreeSelect {\n protected el: HTMLSuiTreeSelectElement;\n @Output() suiChange = new EventEmitter<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiChoiceValue>>();\n @Output() suiExpandedChange = new EventEmitter<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiKey[]>>();\n @Output() suiOpen = new EventEmitter<SuiTreeSelectCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiCloseReason>>();\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiKey[]>>(this, 'suiExpandedChange');\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiTreeSelect['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTreeSelectCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChoiceValue as ISuiTreeSelectSuiChoiceValue } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiTreeSelectSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiTreeSelectSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTreeSelect extends Components.SuiTreeSelect {\n /**\n * Fires when the pick changes; detail is the new `value`: the node's key (single, `''` after a\nclear) or the array of keys (multiple).\n */\n suiChange: EventEmitter<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiChoiceValue>>;\n /**\n * Fires when a branch in the panel opens or closes; detail is the array of expanded keys. Does\nnot bubble: it reports the panel's state, not the value, like `suiOpen` and `suiClose`.\n */\n suiExpandedChange: EventEmitter<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiKey[]>>;\n /**\n * Fires after the element opens the panel itself (trigger click, ArrowDown, Enter, Space). Does\nnot bubble, so a dialog around the control never takes it for its own.\n */\n suiOpen: EventEmitter<SuiTreeSelectCustomEvent<void>>;\n /**\n * Fires before the element closes the panel itself; detail is\n`'pick' | 'escape' | 'outside' | 'trigger'`. Cancelable: `preventDefault()` keeps it open, so\n`detail === 'pick'` is how a consumer keeps a single-mode panel up after a choice. Tab reports\n`'outside'`, because focus left the control and `SuiCloseReason` has no member for that. Does\nnot bubble: a `preventDefault()` in a dialog's own `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTreeTable,\n inputs: ['columns', 'density', 'emptyFilterMessage', 'emptyMessage', 'expanded', 'filterDisplay', 'filterMode', 'filterModel', 'globalFilter', 'globalFilterFields', 'gridlines', 'loading', 'nodes', 'nullOrder', 'selection', 'selectionMode', 'sortIndicator', 'sortMode', 'sorts', 'striped'],\n methods: ['setFocus', 'expandAll', 'collapseAll', 'setFilter']\n})\n@Component({\n selector: 'sui-tree-table',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columns', 'density', 'emptyFilterMessage', 'emptyMessage', 'expanded', 'filterDisplay', 'filterMode', 'filterModel', 'globalFilter', 'globalFilterFields', 'gridlines', 'loading', 'nodes', 'nullOrder', 'selection', 'selectionMode', 'sortIndicator', 'sortMode', 'sorts', 'striped'],\n outputs: ['suiExpandedChange', 'suiSelectionChange', 'suiLoad', 'suiSort', 'suiFilter'],\n})\nexport class SuiTreeTable {\n protected el: HTMLSuiTreeTableElement;\n @Output() suiExpandedChange = new EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiKey[]>>();\n @Output() suiSelectionChange = new EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiKey[]>>();\n @Output() suiLoad = new EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiGridTreeNode>>();\n @Output() suiSort = new EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiGridSort[]>>();\n @Output() suiFilter = new EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiGridFilterModel>>();\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiTreeTableCustomEvent<ISuiTreeTableSuiKey[]>>(this, 'suiExpandedChange');\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiTreeTableCustomEvent<ISuiTreeTableSuiKey[]>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTreeTableCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiTreeTableSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiGridTreeNode as ISuiTreeTableSuiGridTreeNode } from '@shineuix/core/dist/components';\nimport type { SuiGridSort as ISuiTreeTableSuiGridSort } from '@shineuix/core/dist/components';\nimport type { SuiGridFilterModel as ISuiTreeTableSuiGridFilterModel } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTreeTable extends Components.SuiTreeTable {\n /**\n * Fires when a branch opens or closes; detail is the array of open keys. Does not bubble.\n */\n suiExpandedChange: EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiKey[]>>;\n /**\n * Fires when the selection changes; detail is the new `selection`, the checked keys. Does not\nbubble.\n */\n suiSelectionChange: EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiKey[]>>;\n /**\n * Asks the host for a branch's children: fires when a node marked `leaf: false` that has none\nyet and is not already `loading` opens. Detail is the node. Answer by setting its `loading`,\nthen its `children`, and assigning a new `nodes` array. Writing `expanded` from outside opens a\nbranch without asking, since the caller already knows which.\n */\n suiLoad: EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiGridTreeNode>>;\n /**\n * Fires when a header click changes the sort; detail is the new ordered term list. Does not\nbubble.\n */\n suiSort: EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiGridSort[]>>;\n /**\n * Fires when the filter row or the filter menu changes the filter; detail is the whole model.\nDoes not bubble.\n */\n suiFilter: EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiGridFilterModel>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTrend,\n inputs: ['direction', 'note', 'severity', 'value']\n})\n@Component({\n selector: 'sui-trend',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['direction', 'note', 'severity', 'value'],\n})\nexport class SuiTrend {\n protected el: HTMLSuiTrendElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiTrend extends Components.SuiTrend {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiVirtualScroller,\n inputs: ['columns', 'height', 'itemCount', 'itemHeight', 'itemWidth', 'orientation', 'overscan', 'renderItem', 'showIndex', 'width'],\n methods: ['setFocus', 'scrollToIndex', 'refresh']\n})\n@Component({\n selector: 'sui-virtual-scroller',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columns', 'height', 'itemCount', 'itemHeight', 'itemWidth', 'orientation', 'overscan', 'renderItem', 'showIndex', 'width'],\n outputs: ['suiRange'],\n})\nexport class SuiVirtualScroller {\n protected el: HTMLSuiVirtualScrollerElement;\n @Output() suiRange = new EventEmitter<SuiVirtualScrollerCustomEvent<ISuiVirtualScrollerSuiVirtualScrollerRangeDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiVirtualScrollerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiVirtualScrollerRangeDetail as ISuiVirtualScrollerSuiVirtualScrollerRangeDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiVirtualScroller extends Components.SuiVirtualScroller {\n /**\n * Fires when the mounted window changes, and once on the first render; detail is `{ start, end }`\nwith `end` exclusive, plus `colStart` and `colEnd` in a grid. Fetch `start`..`end` here to page\na list from a server, then call `refresh()` when the rows arrive: props in, events out, no\nlazy flag. Does not bubble.\n */\n suiRange: EventEmitter<SuiVirtualScrollerCustomEvent<ISuiVirtualScrollerSuiVirtualScrollerRangeDetail>>;\n}\n\n\n","\nimport * as d from './proxies';\n\nexport const DIRECTIVES = [\n d.SuiAccordion,\n d.SuiAccordionItem,\n d.SuiAnchor,\n d.SuiAutoComplete,\n d.SuiAvatar,\n d.SuiAvatarGroup,\n d.SuiBadge,\n d.SuiBlockUi,\n d.SuiBoard,\n d.SuiBottomNav,\n d.SuiBreadcrumb,\n d.SuiButton,\n d.SuiButtonGroup,\n d.SuiCalendar,\n d.SuiCard,\n d.SuiCarousel,\n d.SuiCascadeSelect,\n d.SuiChartBar,\n d.SuiChartCandlestick,\n d.SuiChartCombo,\n d.SuiChartGauge,\n d.SuiChartHeatmap,\n d.SuiChartLine,\n d.SuiChartNavigator,\n d.SuiChartPie,\n d.SuiChartRadar,\n d.SuiChartScatter,\n d.SuiChartSynced,\n d.SuiChartTreemap,\n d.SuiChartWaterfall,\n d.SuiCheckbox,\n d.SuiCheckboxGroup,\n d.SuiChip,\n d.SuiChoiceCards,\n d.SuiCodeBlock,\n d.SuiColorEditor,\n d.SuiColorPicker,\n d.SuiCommandPalette,\n d.SuiConfigList,\n d.SuiConfigRow,\n d.SuiConfirmDialog,\n d.SuiConfirmPopup,\n d.SuiContextMenu,\n d.SuiCopyButton,\n d.SuiDataGrid,\n d.SuiDataTable,\n d.SuiDataView,\n d.SuiDatePicker,\n d.SuiDescriptionList,\n d.SuiDialog,\n d.SuiDivider,\n d.SuiDock,\n d.SuiDrawer,\n d.SuiEditBox,\n d.SuiEmptyState,\n d.SuiFieldset,\n d.SuiFileUpload,\n d.SuiFilterBuilder,\n d.SuiFilterPanel,\n d.SuiFloatLabel,\n d.SuiFluid,\n d.SuiForm,\n d.SuiFormActions,\n d.SuiFormLayout,\n d.SuiGalleria,\n d.SuiIconButton,\n d.SuiIconField,\n d.SuiIftaLabel,\n d.SuiImage,\n d.SuiImageCompare,\n d.SuiInplace,\n d.SuiInputGroup,\n d.SuiInputGroupAddon,\n d.SuiInputMask,\n d.SuiInputNumber,\n d.SuiInputOtp,\n d.SuiInputTags,\n d.SuiInputText,\n d.SuiKbd,\n d.SuiKnob,\n d.SuiList,\n d.SuiListbox,\n d.SuiMegaMenu,\n d.SuiMenu,\n d.SuiMenubar,\n d.SuiMessage,\n d.SuiMeterGroup,\n d.SuiMiniToolbar,\n d.SuiMultiSelect,\n d.SuiNotificationCenter,\n d.SuiOrderList,\n d.SuiOrgChart,\n d.SuiOverlayBadge,\n d.SuiPageHeader,\n d.SuiPaginator,\n d.SuiPanel,\n d.SuiPanelMenu,\n d.SuiPassword,\n d.SuiPersona,\n d.SuiPickList,\n d.SuiPopover,\n d.SuiProgressBar,\n d.SuiProgressRing,\n d.SuiProgressSpinner,\n d.SuiQrCode,\n d.SuiRadioButton,\n d.SuiRadioGroup,\n d.SuiRating,\n d.SuiRichTextEditor,\n d.SuiSaveStatus,\n d.SuiSchedulerBuilder,\n d.SuiScrollPanel,\n d.SuiScrollTop,\n d.SuiSelect,\n d.SuiSelectButton,\n d.SuiSideNav,\n d.SuiSkeleton,\n d.SuiSkeletonCard,\n d.SuiSlider,\n d.SuiSparkline,\n d.SuiSpeedDial,\n d.SuiSplitButton,\n d.SuiSplitter,\n d.SuiSpoiler,\n d.SuiStatCard,\n d.SuiStepper,\n d.SuiTab,\n d.SuiTabs,\n d.SuiTag,\n d.SuiTerminal,\n d.SuiTextarea,\n d.SuiThemePicker,\n d.SuiTieredMenu,\n d.SuiTimePicker,\n d.SuiTimeline,\n d.SuiToastHost,\n d.SuiToggleButton,\n d.SuiToggleSwitch,\n d.SuiToolbar,\n d.SuiTooltip,\n d.SuiTour,\n d.SuiTree,\n d.SuiTreeSelect,\n d.SuiTreeTable,\n d.SuiTrend,\n d.SuiVirtualScroller\n];\n","import { Directive, ElementRef, HostListener } from '@angular/core';\nimport { ControlValueAccessor } from '@angular/forms';\n\n@Directive({})\nexport class ValueAccessor implements ControlValueAccessor {\n\n private onChange: (value: any) => void = () => {/**/};\n private onTouched: () => void = () => {/**/};\n protected lastValue: any;\n\n constructor(protected el: ElementRef) {}\n\n writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value == null ? '' : value;\n }\n\n handleChangeEvent(value: any) {\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: any) => 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, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './value-accessor';\n\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-checkbox, sui-toggle-switch, sui-toggle-button, sui-radio-button',\n host: {\n '(suiChange)': 'handleChangeEvent($event.target?.[\"checked\"])'\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => BooleanValueAccessor),\n multi: true\n }\n ]\n})\nexport class BooleanValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n override writeValue(value: any) {\n this.el.nativeElement.checked = this.lastValue = value == null ? false : value;\n }\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './value-accessor';\n\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-input-text, sui-textarea, sui-input-mask, sui-password, sui-icon-field, sui-float-label, sui-ifta-label, sui-auto-complete, sui-inplace',\n host: {\n '(suiInput)': 'handleChangeEvent($event.target?.[\"value\"])',\n '(suiChange)': 'handleChangeEvent($event.target?.[\"value\"])'\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TextValueAccessor),\n multi: true\n }\n ]\n})\nexport class TextValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './directives/value-accessor';\n\n/**\n * Binds `[(ngModel)]` and reactive forms to `sui-filter-panel`, whose value is the applied set in\n * `values` and commits on `suiChange` (apply, clear all, a chip's removal). A null model clears\n * the set. Written by hand because the generated accessors write `value`. Keep the selector equal\n * to `FILTER_VALUES_ELEMENTS` in `packages/core/form-bindings.ts`.\n */\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-filter-panel',\n host: {\n '(suiChange)': 'handleChangeEvent($event.target?.[\"values\"])',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SuiFilterPanelValueAccessor),\n multi: true,\n },\n ],\n})\nexport class SuiFilterPanelValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.values = this.lastValue = value == null ? {} : value;\n }\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './directives/value-accessor';\n\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-rich-text-editor, sui-edit-box',\n host: {\n '(suiChange)': 'handleChangeEvent($event.target?.[\"html\"])',\n '(suiSave)': 'handleChangeEvent($event.target?.[\"html\"])',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SuiHtmlValueAccessor),\n multi: true,\n },\n ],\n})\nexport class SuiHtmlValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.html = this.lastValue = value == null ? '' : value;\n }\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './directives/value-accessor';\n\n/** The model a numeric element's value stands for: a finite number, a range slider's\n * `[low, high]` pair, or null for no value. A cleared `sui-input-number` emits null, and\n * parseFloat(null) is NaN, which Validators.required counts as a value: a required amount the user\n * had just emptied passed. */\nconst toModel = (value: unknown): number | [number, number] | null => {\n if (Array.isArray(value)) {\n const pair = [Number(value[0]), Number(value[1])];\n return value.length >= 2 && pair.every(Number.isFinite) ? (pair as [number, number]) : null;\n }\n if (value == null || value === '') return null;\n const n = typeof value === 'number' ? value : Number(value);\n return Number.isFinite(n) ? n : null;\n};\n\n/** What a null model writes: an empty value, which `sui-input-number`, `sui-slider` and `sui-knob`\n * hold as null (a required one then fails), and no stars in `sui-rating`. */\nconst emptyNumber = (el: HTMLElement): number | null => (el.tagName === 'SUI-RATING' ? 0 : null);\n\n/**\n * Binds `[(ngModel)]` and reactive forms to the numeric elements. Written by hand, not generated\n * from `packages/core/form-bindings.ts`, because the generated accessor parsed the value with\n * parseFloat. The model is a number, a range slider's `[low, high]` pair, or null: null, an empty\n * string and NaN all report null, so a cleared required field is invalid. Keep the selector equal\n * to `NUMBER_ELEMENTS` there; `scripts/check-value-accessors.mjs` fails when they differ.\n */\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-input-number, sui-slider, sui-rating, sui-knob',\n host: {\n '(suiChange)': 'handleChangeEvent($event.target?.[\"value\"])',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NumericValueAccessor),\n multi: true,\n },\n ],\n})\nexport class NumericValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n override writeValue(value: any) {\n const model = toModel(value);\n this.lastValue = model;\n this.el.nativeElement.value = model !== null ? model : emptyNumber(this.el.nativeElement);\n }\n\n override registerOnChange(fn: (_: number | [number, number] | null) => void) {\n super.registerOnChange((value) => fn(toModel(value)));\n }\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './directives/value-accessor';\n\n/**\n * Binds `[(ngModel)]` and reactive forms to `sui-scheduler-builder`, whose value is the schedule\n * in `config` (the seed form, which the element writes back after every edit) and commits on\n * `suiChange`. A null model gives the element's default schedule. Written by hand because the\n * generated accessors write `value`. Keep the selector equal to `SCHEDULE_CONFIG_ELEMENTS` in\n * `packages/core/form-bindings.ts`.\n */\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-scheduler-builder',\n host: {\n '(suiChange)': 'handleChangeEvent($event.target?.[\"config\"])',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SuiSchedulerBuilderValueAccessor),\n multi: true,\n },\n ],\n})\nexport class SuiSchedulerBuilderValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.config = this.lastValue = value == null ? undefined : value;\n }\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './directives/value-accessor';\n\n/** Elements whose value is always a list. */\nconst LISTS = new Set(['SUI-MULTI-SELECT', 'SUI-CHECKBOX-GROUP', 'SUI-INPUT-TAGS']);\n/** Elements whose value is a list while `multiple` is set. */\nconst MULTIPLE = new Set(['SUI-LISTBOX', 'SUI-SELECT-BUTTON', 'SUI-TREE-SELECT', 'SUI-CHOICE-CARDS']);\n/** Elements whose value is an object, with no object meaning \"none\". */\nconst OBJECTS = new Set(['SUI-FILTER-BUILDER']);\n\n/** What a null model writes: an empty list where the value is a list, nothing where it is an\n * object, and an empty string elsewhere. An empty string in a list-valued element read back as a\n * string, not the empty array the element itself holds. */\nconst emptyValue = (el: HTMLElement & { multiple?: boolean }): unknown => {\n if (LISTS.has(el.tagName)) return [];\n if (MULTIPLE.has(el.tagName) && (el.multiple || el.hasAttribute('multiple'))) return [];\n if (OBJECTS.has(el.tagName)) return undefined;\n return '';\n};\n\n/**\n * Binds `[(ngModel)]` and reactive forms to the elements that commit a `value` on `suiChange`: the\n * select family, the choice groups, the pickers, OTP, tags and the filter builder. Written by hand,\n * not generated from `packages/core/form-bindings.ts`, so that a null model, which a form's\n * `reset()` writes, gives each element its own empty value. Keep the selector equal to\n * `SELECT_ELEMENTS` there; `scripts/check-value-accessors.mjs` fails when they differ.\n */\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-select, sui-multi-select, sui-cascade-select, sui-tree-select, sui-listbox, sui-select-button, sui-radio-group, sui-checkbox-group, sui-choice-cards, sui-date-picker, sui-time-picker, sui-color-picker, sui-color-editor, sui-input-otp, sui-input-tags, sui-filter-builder',\n host: {\n '(suiChange)': 'handleChangeEvent($event.target?.[\"value\"])',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SelectValueAccessor),\n multi: true,\n },\n ],\n})\nexport class SelectValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value == null ? emptyValue(this.el.nativeElement) : value;\n }\n}\n","export * from './directives';\nexport { DIRECTIVES } from './directives/index';\nexport * from './directives/proxies';\nimport { BooleanValueAccessor } from './directives/boolean-value-accessor';\nimport { TextValueAccessor } from './directives/text-value-accessor';\nimport { SuiFilterPanelValueAccessor } from './filter-panel-value-accessor';\nimport { SuiHtmlValueAccessor } from './html-value-accessor';\nimport { NumericValueAccessor } from './numeric-value-accessor';\nimport { SuiSchedulerBuilderValueAccessor } from './scheduler-builder-value-accessor';\nimport { SelectValueAccessor } from './select-value-accessor';\n\nexport { ValueAccessor } from './directives/value-accessor';\nexport {\n BooleanValueAccessor, NumericValueAccessor, SelectValueAccessor, SuiFilterPanelValueAccessor, SuiHtmlValueAccessor,\n SuiSchedulerBuilderValueAccessor, TextValueAccessor,\n};\n\nexport const VALUE_ACCESSORS = [\n TextValueAccessor,\n NumericValueAccessor,\n BooleanValueAccessor,\n SelectValueAccessor,\n SuiHtmlValueAccessor,\n SuiFilterPanelValueAccessor,\n SuiSchedulerBuilderValueAccessor,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["defineSuiAccordion","defineSuiAccordionItem","defineSuiAnchor","defineSuiAutoComplete","defineSuiAvatar","defineSuiAvatarGroup","defineSuiBadge","defineSuiBlockUi","defineSuiBoard","defineSuiBottomNav","defineSuiBreadcrumb","defineSuiButton","defineSuiButtonGroup","defineSuiCalendar","defineSuiCard","defineSuiCarousel","defineSuiCascadeSelect","defineSuiChartBar","defineSuiChartCandlestick","defineSuiChartCombo","defineSuiChartGauge","defineSuiChartHeatmap","defineSuiChartLine","defineSuiChartNavigator","defineSuiChartPie","defineSuiChartRadar","defineSuiChartScatter","defineSuiChartSynced","defineSuiChartTreemap","defineSuiChartWaterfall","defineSuiCheckbox","defineSuiCheckboxGroup","defineSuiChip","defineSuiChoiceCards","defineSuiCodeBlock","defineSuiColorEditor","defineSuiColorPicker","defineSuiCommandPalette","defineSuiConfigList","defineSuiConfigRow","defineSuiConfirmDialog","defineSuiConfirmPopup","defineSuiContextMenu","defineSuiCopyButton","defineSuiDataGrid","defineSuiDataTable","defineSuiDataView","defineSuiDatePicker","defineSuiDescriptionList","defineSuiDialog","defineSuiDivider","defineSuiDock","defineSuiDrawer","defineSuiEditBox","defineSuiEmptyState","defineSuiFieldset","defineSuiFileUpload","defineSuiFilterBuilder","defineSuiFilterPanel","defineSuiFloatLabel","defineSuiFluid","defineSuiForm","defineSuiFormActions","defineSuiFormLayout","defineSuiGalleria","defineSuiIconButton","defineSuiIconField","defineSuiIftaLabel","defineSuiImage","defineSuiImageCompare","defineSuiInplace","defineSuiInputGroup","defineSuiInputGroupAddon","defineSuiInputMask","defineSuiInputNumber","defineSuiInputOtp","defineSuiInputTags","defineSuiInputText","defineSuiKbd","defineSuiKnob","defineSuiList","defineSuiListbox","defineSuiMegaMenu","defineSuiMenu","defineSuiMenubar","defineSuiMessage","defineSuiMeterGroup","defineSuiMiniToolbar","defineSuiMultiSelect","defineSuiNotificationCenter","defineSuiOrderList","defineSuiOrgChart","defineSuiOverlayBadge","defineSuiPageHeader","defineSuiPaginator","defineSuiPanel","defineSuiPanelMenu","defineSuiPassword","defineSuiPersona","defineSuiPickList","defineSuiPopover","defineSuiProgressBar","defineSuiProgressRing","defineSuiProgressSpinner","defineSuiQrCode","defineSuiRadioButton","defineSuiRadioGroup","defineSuiRating","defineSuiRichTextEditor","defineSuiSaveStatus","defineSuiSchedulerBuilder","defineSuiScrollPanel","defineSuiScrollTop","defineSuiSelect","defineSuiSelectButton","defineSuiSideNav","defineSuiSkeleton","defineSuiSkeletonCard","defineSuiSlider","defineSuiSparkline","defineSuiSpeedDial","defineSuiSplitButton","defineSuiSplitter","defineSuiSpoiler","defineSuiStatCard","defineSuiStepper","defineSuiTab","defineSuiTabs","defineSuiTag","defineSuiTerminal","defineSuiTextarea","defineSuiThemePicker","defineSuiTieredMenu","defineSuiTimePicker","defineSuiTimeline","defineSuiToastHost","defineSuiToggleButton","defineSuiToggleSwitch","defineSuiToolbar","defineSuiTooltip","defineSuiTour","defineSuiTree","defineSuiTreeSelect","defineSuiTreeTable","defineSuiTrend","defineSuiVirtualScroller","d.SuiAccordion","d.SuiAccordionItem","d.SuiAnchor","d.SuiAutoComplete","d.SuiAvatar","d.SuiAvatarGroup","d.SuiBadge","d.SuiBlockUi","d.SuiBoard","d.SuiBottomNav","d.SuiBreadcrumb","d.SuiButton","d.SuiButtonGroup","d.SuiCalendar","d.SuiCard","d.SuiCarousel","d.SuiCascadeSelect","d.SuiChartBar","d.SuiChartCandlestick","d.SuiChartCombo","d.SuiChartGauge","d.SuiChartHeatmap","d.SuiChartLine","d.SuiChartNavigator","d.SuiChartPie","d.SuiChartRadar","d.SuiChartScatter","d.SuiChartSynced","d.SuiChartTreemap","d.SuiChartWaterfall","d.SuiCheckbox","d.SuiCheckboxGroup","d.SuiChip","d.SuiChoiceCards","d.SuiCodeBlock","d.SuiColorEditor","d.SuiColorPicker","d.SuiCommandPalette","d.SuiConfigList","d.SuiConfigRow","d.SuiConfirmDialog","d.SuiConfirmPopup","d.SuiContextMenu","d.SuiCopyButton","d.SuiDataGrid","d.SuiDataTable","d.SuiDataView","d.SuiDatePicker","d.SuiDescriptionList","d.SuiDialog","d.SuiDivider","d.SuiDock","d.SuiDrawer","d.SuiEditBox","d.SuiEmptyState","d.SuiFieldset","d.SuiFileUpload","d.SuiFilterBuilder","d.SuiFilterPanel","d.SuiFloatLabel","d.SuiFluid","d.SuiForm","d.SuiFormActions","d.SuiFormLayout","d.SuiGalleria","d.SuiIconButton","d.SuiIconField","d.SuiIftaLabel","d.SuiImage","d.SuiImageCompare","d.SuiInplace","d.SuiInputGroup","d.SuiInputGroupAddon","d.SuiInputMask","d.SuiInputNumber","d.SuiInputOtp","d.SuiInputTags","d.SuiInputText","d.SuiKbd","d.SuiKnob","d.SuiList","d.SuiListbox","d.SuiMegaMenu","d.SuiMenu","d.SuiMenubar","d.SuiMessage","d.SuiMeterGroup","d.SuiMiniToolbar","d.SuiMultiSelect","d.SuiNotificationCenter","d.SuiOrderList","d.SuiOrgChart","d.SuiOverlayBadge","d.SuiPageHeader","d.SuiPaginator","d.SuiPanel","d.SuiPanelMenu","d.SuiPassword","d.SuiPersona","d.SuiPickList","d.SuiPopover","d.SuiProgressBar","d.SuiProgressRing","d.SuiProgressSpinner","d.SuiQrCode","d.SuiRadioButton","d.SuiRadioGroup","d.SuiRating","d.SuiRichTextEditor","d.SuiSaveStatus","d.SuiSchedulerBuilder","d.SuiScrollPanel","d.SuiScrollTop","d.SuiSelect","d.SuiSelectButton","d.SuiSideNav","d.SuiSkeleton","d.SuiSkeletonCard","d.SuiSlider","d.SuiSparkline","d.SuiSpeedDial","d.SuiSplitButton","d.SuiSplitter","d.SuiSpoiler","d.SuiStatCard","d.SuiStepper","d.SuiTab","d.SuiTabs","d.SuiTag","d.SuiTerminal","d.SuiTextarea","d.SuiThemePicker","d.SuiTieredMenu","d.SuiTimePicker","d.SuiTimeline","d.SuiToastHost","d.SuiToggleButton","d.SuiToggleSwitch","d.SuiToolbar","d.SuiTooltip","d.SuiTour","d.SuiTree","d.SuiTreeSelect","d.SuiTreeTable","d.SuiTrend","d.SuiVirtualScroller"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shineuix-angular.mjs","sources":["../../src/directives/angular-component-lib/utils.ts","../../src/two-way.ts","../../src/directives/proxies.ts","../../src/directives/index.ts","../../src/directives/value-accessor.ts","../../src/directives/boolean-value-accessor.ts","../../src/directives/text-value-accessor.ts","../../src/filter-panel-value-accessor.ts","../../src/html-value-accessor.ts","../../src/numeric-value-accessor.ts","../../src/scheduler-builder-value-accessor.ts","../../src/select-value-accessor.ts","../../src/index.ts","../../src/shineuix-angular.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","import { Observable } from 'rxjs';\n\n/** The element a generated proxy wraps, read when a binding subscribes, after the proxy's constructor stored it. */\nconst elementOf = (proxy: object): HTMLElement => (proxy as { el: HTMLElement }).el;\n\n/**\n * The `<prop>Change` output behind `[(prop)]` for a prop the element reports with\n * `sui<Prop>Change`: it emits the event's detail, which is the prop's new value.\n * scripts/two-way-outputs.mjs gives every generated proxy one per such prop, from the core's\n * component metadata. Lazy: nothing listens to the element until a template binds the output, and\n * the listener goes when the binding does.\n */\nexport function propChange<E extends CustomEvent>(proxy: object, event: string): Observable<E['detail']> {\n return new Observable<E['detail']>((subscriber) => {\n const el = elementOf(proxy);\n const listener = (e: Event) => subscriber.next((e as E).detail);\n el.addEventListener(event, listener);\n return () => el.removeEventListener(event, listener);\n });\n}\n\n/**\n * The `<prop>Change` output behind `[(prop)]` for a prop the element reports with the open-state\n * pair: `suiOpen` after it opens itself, and the cancelable `suiClose` before it closes itself\n * (`open` on an overlay, `collapsed` on a panel). It emits the prop's value once the event has\n * reached every listener: after `suiOpen` always, after `suiClose` only when the element did\n * close, so a close that a `(suiClose)` handler vetoed with `preventDefault()` leaves the model\n * alone. Lazy, as {@link propChange} is.\n */\nexport function openStateChange<T>(proxy: object, prop: string): Observable<T> {\n return new Observable<T>((subscriber) => {\n const el = elementOf(proxy) as HTMLElement & Record<string, unknown>;\n const read = () => el[prop] as T;\n const opened = () => queueMicrotask(() => subscriber.next(read()));\n const closing = () => {\n const before = read();\n queueMicrotask(() => {\n const after = read();\n if (after !== before) subscriber.next(after);\n });\n };\n el.addEventListener('suiOpen', opened);\n el.addEventListener('suiClose', closing);\n return () => {\n el.removeEventListener('suiOpen', opened);\n el.removeEventListener('suiClose', closing);\n };\n });\n}\n","/* two-way outputs: written by scripts/two-way-outputs.mjs */\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';\nimport { openStateChange, propChange } from '../two-way';\n\nimport type { Components } from '@shineuix/core/dist/components';\n\nimport { defineCustomElement as defineSuiAccordion } from '@shineuix/core/dist/components/sui-accordion.js';\nimport { defineCustomElement as defineSuiAccordionItem } from '@shineuix/core/dist/components/sui-accordion-item.js';\nimport { defineCustomElement as defineSuiAnchor } from '@shineuix/core/dist/components/sui-anchor.js';\nimport { defineCustomElement as defineSuiAutoComplete } from '@shineuix/core/dist/components/sui-auto-complete.js';\nimport { defineCustomElement as defineSuiAvatar } from '@shineuix/core/dist/components/sui-avatar.js';\nimport { defineCustomElement as defineSuiAvatarGroup } from '@shineuix/core/dist/components/sui-avatar-group.js';\nimport { defineCustomElement as defineSuiBadge } from '@shineuix/core/dist/components/sui-badge.js';\nimport { defineCustomElement as defineSuiBlockUi } from '@shineuix/core/dist/components/sui-block-ui.js';\nimport { defineCustomElement as defineSuiBoard } from '@shineuix/core/dist/components/sui-board.js';\nimport { defineCustomElement as defineSuiBottomNav } from '@shineuix/core/dist/components/sui-bottom-nav.js';\nimport { defineCustomElement as defineSuiBreadcrumb } from '@shineuix/core/dist/components/sui-breadcrumb.js';\nimport { defineCustomElement as defineSuiButton } from '@shineuix/core/dist/components/sui-button.js';\nimport { defineCustomElement as defineSuiButtonGroup } from '@shineuix/core/dist/components/sui-button-group.js';\nimport { defineCustomElement as defineSuiCalendar } from '@shineuix/core/dist/components/sui-calendar.js';\nimport { defineCustomElement as defineSuiCard } from '@shineuix/core/dist/components/sui-card.js';\nimport { defineCustomElement as defineSuiCarousel } from '@shineuix/core/dist/components/sui-carousel.js';\nimport { defineCustomElement as defineSuiCascadeSelect } from '@shineuix/core/dist/components/sui-cascade-select.js';\nimport { defineCustomElement as defineSuiChartBar } from '@shineuix/core/dist/components/sui-chart-bar.js';\nimport { defineCustomElement as defineSuiChartCandlestick } from '@shineuix/core/dist/components/sui-chart-candlestick.js';\nimport { defineCustomElement as defineSuiChartCombo } from '@shineuix/core/dist/components/sui-chart-combo.js';\nimport { defineCustomElement as defineSuiChartGauge } from '@shineuix/core/dist/components/sui-chart-gauge.js';\nimport { defineCustomElement as defineSuiChartHeatmap } from '@shineuix/core/dist/components/sui-chart-heatmap.js';\nimport { defineCustomElement as defineSuiChartLine } from '@shineuix/core/dist/components/sui-chart-line.js';\nimport { defineCustomElement as defineSuiChartNavigator } from '@shineuix/core/dist/components/sui-chart-navigator.js';\nimport { defineCustomElement as defineSuiChartPie } from '@shineuix/core/dist/components/sui-chart-pie.js';\nimport { defineCustomElement as defineSuiChartRadar } from '@shineuix/core/dist/components/sui-chart-radar.js';\nimport { defineCustomElement as defineSuiChartScatter } from '@shineuix/core/dist/components/sui-chart-scatter.js';\nimport { defineCustomElement as defineSuiChartSynced } from '@shineuix/core/dist/components/sui-chart-synced.js';\nimport { defineCustomElement as defineSuiChartTreemap } from '@shineuix/core/dist/components/sui-chart-treemap.js';\nimport { defineCustomElement as defineSuiChartWaterfall } from '@shineuix/core/dist/components/sui-chart-waterfall.js';\nimport { defineCustomElement as defineSuiCheckbox } from '@shineuix/core/dist/components/sui-checkbox.js';\nimport { defineCustomElement as defineSuiCheckboxGroup } from '@shineuix/core/dist/components/sui-checkbox-group.js';\nimport { defineCustomElement as defineSuiChip } from '@shineuix/core/dist/components/sui-chip.js';\nimport { defineCustomElement as defineSuiChoiceCards } from '@shineuix/core/dist/components/sui-choice-cards.js';\nimport { defineCustomElement as defineSuiCodeBlock } from '@shineuix/core/dist/components/sui-code-block.js';\nimport { defineCustomElement as defineSuiColorEditor } from '@shineuix/core/dist/components/sui-color-editor.js';\nimport { defineCustomElement as defineSuiColorPicker } from '@shineuix/core/dist/components/sui-color-picker.js';\nimport { defineCustomElement as defineSuiCommandPalette } from '@shineuix/core/dist/components/sui-command-palette.js';\nimport { defineCustomElement as defineSuiConfigList } from '@shineuix/core/dist/components/sui-config-list.js';\nimport { defineCustomElement as defineSuiConfigRow } from '@shineuix/core/dist/components/sui-config-row.js';\nimport { defineCustomElement as defineSuiConfirmDialog } from '@shineuix/core/dist/components/sui-confirm-dialog.js';\nimport { defineCustomElement as defineSuiConfirmPopup } from '@shineuix/core/dist/components/sui-confirm-popup.js';\nimport { defineCustomElement as defineSuiContextMenu } from '@shineuix/core/dist/components/sui-context-menu.js';\nimport { defineCustomElement as defineSuiCopyButton } from '@shineuix/core/dist/components/sui-copy-button.js';\nimport { defineCustomElement as defineSuiDataGrid } from '@shineuix/core/dist/components/sui-data-grid.js';\nimport { defineCustomElement as defineSuiDataTable } from '@shineuix/core/dist/components/sui-data-table.js';\nimport { defineCustomElement as defineSuiDataView } from '@shineuix/core/dist/components/sui-data-view.js';\nimport { defineCustomElement as defineSuiDatePicker } from '@shineuix/core/dist/components/sui-date-picker.js';\nimport { defineCustomElement as defineSuiDescriptionList } from '@shineuix/core/dist/components/sui-description-list.js';\nimport { defineCustomElement as defineSuiDialog } from '@shineuix/core/dist/components/sui-dialog.js';\nimport { defineCustomElement as defineSuiDivider } from '@shineuix/core/dist/components/sui-divider.js';\nimport { defineCustomElement as defineSuiDock } from '@shineuix/core/dist/components/sui-dock.js';\nimport { defineCustomElement as defineSuiDrawer } from '@shineuix/core/dist/components/sui-drawer.js';\nimport { defineCustomElement as defineSuiEditBox } from '@shineuix/core/dist/components/sui-edit-box.js';\nimport { defineCustomElement as defineSuiEmptyState } from '@shineuix/core/dist/components/sui-empty-state.js';\nimport { defineCustomElement as defineSuiFieldset } from '@shineuix/core/dist/components/sui-fieldset.js';\nimport { defineCustomElement as defineSuiFileUpload } from '@shineuix/core/dist/components/sui-file-upload.js';\nimport { defineCustomElement as defineSuiFilterBuilder } from '@shineuix/core/dist/components/sui-filter-builder.js';\nimport { defineCustomElement as defineSuiFilterPanel } from '@shineuix/core/dist/components/sui-filter-panel.js';\nimport { defineCustomElement as defineSuiFloatLabel } from '@shineuix/core/dist/components/sui-float-label.js';\nimport { defineCustomElement as defineSuiFluid } from '@shineuix/core/dist/components/sui-fluid.js';\nimport { defineCustomElement as defineSuiForm } from '@shineuix/core/dist/components/sui-form.js';\nimport { defineCustomElement as defineSuiFormActions } from '@shineuix/core/dist/components/sui-form-actions.js';\nimport { defineCustomElement as defineSuiFormLayout } from '@shineuix/core/dist/components/sui-form-layout.js';\nimport { defineCustomElement as defineSuiGalleria } from '@shineuix/core/dist/components/sui-galleria.js';\nimport { defineCustomElement as defineSuiIconButton } from '@shineuix/core/dist/components/sui-icon-button.js';\nimport { defineCustomElement as defineSuiIconField } from '@shineuix/core/dist/components/sui-icon-field.js';\nimport { defineCustomElement as defineSuiIftaLabel } from '@shineuix/core/dist/components/sui-ifta-label.js';\nimport { defineCustomElement as defineSuiImage } from '@shineuix/core/dist/components/sui-image.js';\nimport { defineCustomElement as defineSuiImageCompare } from '@shineuix/core/dist/components/sui-image-compare.js';\nimport { defineCustomElement as defineSuiInplace } from '@shineuix/core/dist/components/sui-inplace.js';\nimport { defineCustomElement as defineSuiInputGroup } from '@shineuix/core/dist/components/sui-input-group.js';\nimport { defineCustomElement as defineSuiInputGroupAddon } from '@shineuix/core/dist/components/sui-input-group-addon.js';\nimport { defineCustomElement as defineSuiInputMask } from '@shineuix/core/dist/components/sui-input-mask.js';\nimport { defineCustomElement as defineSuiInputNumber } from '@shineuix/core/dist/components/sui-input-number.js';\nimport { defineCustomElement as defineSuiInputOtp } from '@shineuix/core/dist/components/sui-input-otp.js';\nimport { defineCustomElement as defineSuiInputTags } from '@shineuix/core/dist/components/sui-input-tags.js';\nimport { defineCustomElement as defineSuiInputText } from '@shineuix/core/dist/components/sui-input-text.js';\nimport { defineCustomElement as defineSuiKbd } from '@shineuix/core/dist/components/sui-kbd.js';\nimport { defineCustomElement as defineSuiKnob } from '@shineuix/core/dist/components/sui-knob.js';\nimport { defineCustomElement as defineSuiList } from '@shineuix/core/dist/components/sui-list.js';\nimport { defineCustomElement as defineSuiListbox } from '@shineuix/core/dist/components/sui-listbox.js';\nimport { defineCustomElement as defineSuiMegaMenu } from '@shineuix/core/dist/components/sui-mega-menu.js';\nimport { defineCustomElement as defineSuiMenu } from '@shineuix/core/dist/components/sui-menu.js';\nimport { defineCustomElement as defineSuiMenubar } from '@shineuix/core/dist/components/sui-menubar.js';\nimport { defineCustomElement as defineSuiMessage } from '@shineuix/core/dist/components/sui-message.js';\nimport { defineCustomElement as defineSuiMeterGroup } from '@shineuix/core/dist/components/sui-meter-group.js';\nimport { defineCustomElement as defineSuiMiniToolbar } from '@shineuix/core/dist/components/sui-mini-toolbar.js';\nimport { defineCustomElement as defineSuiMultiSelect } from '@shineuix/core/dist/components/sui-multi-select.js';\nimport { defineCustomElement as defineSuiNotificationCenter } from '@shineuix/core/dist/components/sui-notification-center.js';\nimport { defineCustomElement as defineSuiOrderList } from '@shineuix/core/dist/components/sui-order-list.js';\nimport { defineCustomElement as defineSuiOrgChart } from '@shineuix/core/dist/components/sui-org-chart.js';\nimport { defineCustomElement as defineSuiOverlayBadge } from '@shineuix/core/dist/components/sui-overlay-badge.js';\nimport { defineCustomElement as defineSuiPageHeader } from '@shineuix/core/dist/components/sui-page-header.js';\nimport { defineCustomElement as defineSuiPaginator } from '@shineuix/core/dist/components/sui-paginator.js';\nimport { defineCustomElement as defineSuiPanel } from '@shineuix/core/dist/components/sui-panel.js';\nimport { defineCustomElement as defineSuiPanelMenu } from '@shineuix/core/dist/components/sui-panel-menu.js';\nimport { defineCustomElement as defineSuiPassword } from '@shineuix/core/dist/components/sui-password.js';\nimport { defineCustomElement as defineSuiPersona } from '@shineuix/core/dist/components/sui-persona.js';\nimport { defineCustomElement as defineSuiPickList } from '@shineuix/core/dist/components/sui-pick-list.js';\nimport { defineCustomElement as defineSuiPopover } from '@shineuix/core/dist/components/sui-popover.js';\nimport { defineCustomElement as defineSuiProgressBar } from '@shineuix/core/dist/components/sui-progress-bar.js';\nimport { defineCustomElement as defineSuiProgressRing } from '@shineuix/core/dist/components/sui-progress-ring.js';\nimport { defineCustomElement as defineSuiProgressSpinner } from '@shineuix/core/dist/components/sui-progress-spinner.js';\nimport { defineCustomElement as defineSuiQrCode } from '@shineuix/core/dist/components/sui-qr-code.js';\nimport { defineCustomElement as defineSuiRadioButton } from '@shineuix/core/dist/components/sui-radio-button.js';\nimport { defineCustomElement as defineSuiRadioGroup } from '@shineuix/core/dist/components/sui-radio-group.js';\nimport { defineCustomElement as defineSuiRating } from '@shineuix/core/dist/components/sui-rating.js';\nimport { defineCustomElement as defineSuiRichTextEditor } from '@shineuix/core/dist/components/sui-rich-text-editor.js';\nimport { defineCustomElement as defineSuiSaveStatus } from '@shineuix/core/dist/components/sui-save-status.js';\nimport { defineCustomElement as defineSuiSchedulerBuilder } from '@shineuix/core/dist/components/sui-scheduler-builder.js';\nimport { defineCustomElement as defineSuiScrollPanel } from '@shineuix/core/dist/components/sui-scroll-panel.js';\nimport { defineCustomElement as defineSuiScrollTop } from '@shineuix/core/dist/components/sui-scroll-top.js';\nimport { defineCustomElement as defineSuiSelect } from '@shineuix/core/dist/components/sui-select.js';\nimport { defineCustomElement as defineSuiSelectButton } from '@shineuix/core/dist/components/sui-select-button.js';\nimport { defineCustomElement as defineSuiSideNav } from '@shineuix/core/dist/components/sui-side-nav.js';\nimport { defineCustomElement as defineSuiSkeleton } from '@shineuix/core/dist/components/sui-skeleton.js';\nimport { defineCustomElement as defineSuiSkeletonCard } from '@shineuix/core/dist/components/sui-skeleton-card.js';\nimport { defineCustomElement as defineSuiSlider } from '@shineuix/core/dist/components/sui-slider.js';\nimport { defineCustomElement as defineSuiSparkline } from '@shineuix/core/dist/components/sui-sparkline.js';\nimport { defineCustomElement as defineSuiSpeedDial } from '@shineuix/core/dist/components/sui-speed-dial.js';\nimport { defineCustomElement as defineSuiSplitButton } from '@shineuix/core/dist/components/sui-split-button.js';\nimport { defineCustomElement as defineSuiSplitter } from '@shineuix/core/dist/components/sui-splitter.js';\nimport { defineCustomElement as defineSuiSpoiler } from '@shineuix/core/dist/components/sui-spoiler.js';\nimport { defineCustomElement as defineSuiStatCard } from '@shineuix/core/dist/components/sui-stat-card.js';\nimport { defineCustomElement as defineSuiStepper } from '@shineuix/core/dist/components/sui-stepper.js';\nimport { defineCustomElement as defineSuiTab } from '@shineuix/core/dist/components/sui-tab.js';\nimport { defineCustomElement as defineSuiTabs } from '@shineuix/core/dist/components/sui-tabs.js';\nimport { defineCustomElement as defineSuiTag } from '@shineuix/core/dist/components/sui-tag.js';\nimport { defineCustomElement as defineSuiTerminal } from '@shineuix/core/dist/components/sui-terminal.js';\nimport { defineCustomElement as defineSuiTextarea } from '@shineuix/core/dist/components/sui-textarea.js';\nimport { defineCustomElement as defineSuiThemePicker } from '@shineuix/core/dist/components/sui-theme-picker.js';\nimport { defineCustomElement as defineSuiTieredMenu } from '@shineuix/core/dist/components/sui-tiered-menu.js';\nimport { defineCustomElement as defineSuiTimePicker } from '@shineuix/core/dist/components/sui-time-picker.js';\nimport { defineCustomElement as defineSuiTimeline } from '@shineuix/core/dist/components/sui-timeline.js';\nimport { defineCustomElement as defineSuiToastHost } from '@shineuix/core/dist/components/sui-toast-host.js';\nimport { defineCustomElement as defineSuiToggleButton } from '@shineuix/core/dist/components/sui-toggle-button.js';\nimport { defineCustomElement as defineSuiToggleSwitch } from '@shineuix/core/dist/components/sui-toggle-switch.js';\nimport { defineCustomElement as defineSuiToolbar } from '@shineuix/core/dist/components/sui-toolbar.js';\nimport { defineCustomElement as defineSuiTooltip } from '@shineuix/core/dist/components/sui-tooltip.js';\nimport { defineCustomElement as defineSuiTour } from '@shineuix/core/dist/components/sui-tour.js';\nimport { defineCustomElement as defineSuiTree } from '@shineuix/core/dist/components/sui-tree.js';\nimport { defineCustomElement as defineSuiTreeSelect } from '@shineuix/core/dist/components/sui-tree-select.js';\nimport { defineCustomElement as defineSuiTreeTable } from '@shineuix/core/dist/components/sui-tree-table.js';\nimport { defineCustomElement as defineSuiTrend } from '@shineuix/core/dist/components/sui-trend.js';\nimport { defineCustomElement as defineSuiVirtualScroller } from '@shineuix/core/dist/components/sui-virtual-scroller.js';\n@ProxyCmp({\n defineCustomElementFn: defineSuiAccordion,\n inputs: ['expanded', 'multiple'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-accordion',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['expanded', 'multiple'],\n outputs: ['suiExpandedChange'],\n})\nexport class SuiAccordion {\n protected el: HTMLSuiAccordionElement;\n @Output() suiExpandedChange = new EventEmitter<SuiAccordionCustomEvent<number[]>>();\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiAccordionCustomEvent<number[]>>(this, 'suiExpandedChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiAccordionCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiAccordion extends Components.SuiAccordion {\n /**\n * Fires after a header toggles, or when sections come or go and the open indexes move or drop;\ndetail is the new `expanded` index list. Does not bubble, so an accordion inside a section\nnever reports as the outer one.\n */\n suiExpandedChange: EventEmitter<SuiAccordionCustomEvent<number[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiAccordionItem,\n inputs: ['disabled', 'expanded', 'heading', 'meta', 'subtitle'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-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', 'expanded', 'heading', 'meta', 'subtitle'],\n})\nexport class SuiAccordionItem {\n protected el: HTMLSuiAccordionItemElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiAccordionItem extends Components.SuiAccordionItem {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiAnchor,\n inputs: ['active', 'heading', 'items', 'scrollPad', 'spyOffset', 'target'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-anchor',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'heading', 'items', 'scrollPad', 'spyOffset', 'target'],\n outputs: ['suiNavigate', 'suiActiveChange'],\n})\nexport class SuiAnchor {\n protected el: HTMLSuiAnchorElement;\n @Output() suiNavigate = new EventEmitter<SuiAnchorCustomEvent<string>>();\n @Output() suiActiveChange = new EventEmitter<SuiAnchorCustomEvent<string>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiAnchorCustomEvent<string>>(this, 'suiActiveChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiAnchorCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiAnchor extends Components.SuiAnchor {\n /**\n * Fires when a link is chosen; detail is the section id.\n */\n suiNavigate: EventEmitter<SuiAnchorCustomEvent<string>>;\n /**\n * Fires whenever `active` changes, including when the scroll-spy moves it; detail is the\nsection id. A click on a link that is not already current emits this before `suiNavigate`.\nDoes not bubble.\n */\n suiActiveChange: EventEmitter<SuiAnchorCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiAutoComplete,\n inputs: ['allowCustom', 'clearable', 'disabled', 'dropdown', 'emptyFilterMessage', 'emptyMessage', 'error', 'externalFilter', 'forceSelection', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'max', 'multiple', 'name', 'open', 'openOnFocus', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-auto-complete',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['allowCustom', 'clearable', 'disabled', 'dropdown', 'emptyFilterMessage', 'emptyMessage', 'error', 'externalFilter', 'forceSelection', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'max', 'multiple', 'name', 'open', 'openOnFocus', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n outputs: ['suiInput', 'suiSelect', 'suiChange', 'suiSearch', 'suiOpen', 'suiFocus', 'suiBlur', 'suiClose'],\n})\nexport class SuiAutoComplete {\n protected el: HTMLSuiAutoCompleteElement;\n @Output() suiInput = new EventEmitter<SuiAutoCompleteCustomEvent<string>>();\n @Output() suiSelect = new EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiKey>>();\n @Output() suiChange = new EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiAutoCompleteValue>>();\n @Output() suiSearch = new EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiAutoCompleteSearchDetail>>();\n @Output() suiOpen = new EventEmitter<SuiAutoCompleteCustomEvent<void>>();\n @Output() suiFocus = new EventEmitter<SuiAutoCompleteCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiAutoCompleteCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiAutoComplete['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiAutoCompleteCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiAutoCompleteSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiAutoCompleteValue as ISuiAutoCompleteSuiAutoCompleteValue } from '@shineuix/core/dist/components';\nimport type { SuiAutoCompleteSearchDetail as ISuiAutoCompleteSuiAutoCompleteSearchDetail } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiAutoCompleteSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiAutoComplete extends Components.SuiAutoComplete {\n /**\n * Fires when the text changes; detail is the text. On a multiple field the text is the query, and\nthe values travel on `suiChange`. The element's own edits count as well as keystrokes: a pick\nthat writes or empties the text, Clear, and a `forceSelection` wipe.\n */\n suiInput: EventEmitter<SuiAutoCompleteCustomEvent<string>>;\n /**\n * Fires when a suggestion is picked (click, Enter, or a label match when the text commits); detail\nis the option's value: the string itself, or `value` of an object option, as given. A multiple\nfield fires it for each value added from the suggestions, not for one removed or added as typed.\n */\n suiSelect: EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiKey>>;\n /**\n * Fires when the value commits; detail is the new `value`. Single field: the text, when it\ncommits (pick, Enter, or leaving the field with a changed value). Multiple field: the full\narray of values, on every value added or removed.\n */\n suiChange: EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiAutoCompleteValue>>;\n /**\n * Fires when the field asks for suggestions; detail is `{ query, reason }`. `reason` is `input`\non each keystroke, with the typed text (a multiple field's query), and `dropdown` when the Show\noptions button, or ArrowDown on an empty field, asks for every option, with the text in the\nfield. A host that fetches answers it by setting `options`, usually with `externalFilter` set\nso the answer shows as given. The element's own edits (a pick, Clear) do not ask.\n */\n suiSearch: EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiAutoCompleteSearchDetail>>;\n /**\n * Fires after the element opens the panel itself (typing, ArrowDown, the dropdown button, or focus\nunder `openOnFocus`).\nDoes not bubble, so a dialog around the field never takes it for its own.\n */\n suiOpen: EventEmitter<SuiAutoCompleteCustomEvent<void>>;\n /**\n * Fires when the input takes focus; no detail. Every text field carries the same pair, so a\nhost arms a hint or a launcher the same way on each without listening for the native `focusin`.\nDoes not bubble, like the native `focus`.\n */\n suiFocus: EventEmitter<SuiAutoCompleteCustomEvent<void>>;\n /**\n * Fires when the input loses focus; no detail. Does not bubble, like the native `blur`.\n */\n suiBlur: EventEmitter<SuiAutoCompleteCustomEvent<void>>;\n /**\n * Fires before the element closes the panel itself; detail is\n`'pick' | 'escape' | 'outside' | 'trigger' | 'cancel'` (`'pick'` covers both picking a\nsuggestion and committing the typed text with Enter, `'trigger'` the dropdown button on an\nopen panel, `'cancel'` a form reset, a clear or an emptied field, `'outside'` an outside\npointer and Tab). Cancelable: `preventDefault()` keeps it open. Does not bubble: a\n`preventDefault()` in a dialog's own `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiAutoCompleteCustomEvent<ISuiAutoCompleteSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiAvatar,\n inputs: ['accent', 'badge', 'badgeTone', 'initials', 'name', 'size', 'square', 'src']\n})\n@Component({\n selector: 'sui-avatar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'badge', 'badgeTone', 'initials', 'name', 'size', 'square', 'src'],\n})\nexport class SuiAvatar {\n protected el: HTMLSuiAvatarElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiAvatar extends Components.SuiAvatar {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiAvatarGroup,\n inputs: ['max', 'size', 'users']\n})\n@Component({\n selector: 'sui-avatar-group',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['max', 'size', 'users'],\n})\nexport class SuiAvatarGroup {\n protected el: HTMLSuiAvatarGroupElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiAvatarGroup extends Components.SuiAvatarGroup {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiBadge,\n inputs: ['dot', 'severity', 'size', 'value']\n})\n@Component({\n selector: 'sui-badge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dot', 'severity', 'size', 'value'],\n})\nexport class SuiBadge {\n protected el: HTMLSuiBadgeElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiBadge extends Components.SuiBadge {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiBlockUi,\n inputs: ['blocked', 'message']\n})\n@Component({\n selector: 'sui-block-ui',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['blocked', 'message'],\n})\nexport class SuiBlockUi {\n protected el: HTMLSuiBlockUiElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiBlockUi extends Components.SuiBlockUi {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiBoard,\n inputs: ['cardRender', 'cards', 'collapsed', 'columns', 'density', 'emptyMessage', 'groupBy', 'loading', 'noDrag', 'variant'],\n methods: ['move', 'setFocus']\n})\n@Component({\n selector: 'sui-board',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['cardRender', 'cards', 'collapsed', 'columns', 'density', 'emptyMessage', 'groupBy', 'loading', 'noDrag', 'variant'],\n outputs: ['suiMove', 'suiCollapsedChange', 'suiCardClick'],\n})\nexport class SuiBoard {\n protected el: HTMLSuiBoardElement;\n @Output() suiMove = new EventEmitter<SuiBoardCustomEvent<ISuiBoardSuiBoardMoveDetail>>();\n @Output() suiCollapsedChange = new EventEmitter<SuiBoardCustomEvent<ISuiBoardSuiKey[]>>();\n @Output() suiCardClick = new EventEmitter<SuiBoardCustomEvent<ISuiBoardSuiBoardCardClickDetail>>();\n /** Emits the new `collapsed` when the element changes it (`suiCollapsedChange`), so `[(collapsed)]` binds both ways. */\n @Output() collapsedChange = propChange<SuiBoardCustomEvent<ISuiBoardSuiKey[]>>(this, 'suiCollapsedChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiBoardCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiBoardMoveDetail as ISuiBoardSuiBoardMoveDetail } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiBoardSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiBoardCardClickDetail as ISuiBoardSuiBoardCardClickDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiBoard extends Components.SuiBoard {\n /**\n * Fires before a card moves, from a drop, a keyboard lift or `move()` alike; detail is\n`{ id, from, fromIndex, to, index, collapsed }`, where `collapsed` says the card is landing in\na strip. Cancelable: `preventDefault()` refuses the move and the card stays where it was.\nOtherwise the board writes `cards` and moves the card.\n */\n suiMove: EventEmitter<SuiBoardCustomEvent<ISuiBoardSuiBoardMoveDetail>>;\n /**\n * Fires when a column collapses or expands; detail is the new `collapsed`. Does not bubble.\n */\n suiCollapsedChange: EventEmitter<SuiBoardCustomEvent<ISuiBoardSuiKey[]>>;\n /**\n * Fires on a click or Enter on a card that is not lifted; detail is `{ id, card }`.\n */\n suiCardClick: EventEmitter<SuiBoardCustomEvent<ISuiBoardSuiBoardCardClickDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiBottomNav,\n inputs: ['active', 'fixed', 'items'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-bottom-nav',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'fixed', 'items'],\n outputs: ['suiNavigate', 'suiActiveChange'],\n})\nexport class SuiBottomNav {\n protected el: HTMLSuiBottomNavElement;\n @Output() suiNavigate = new EventEmitter<SuiBottomNavCustomEvent<string>>();\n @Output() suiActiveChange = new EventEmitter<SuiBottomNavCustomEvent<string>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiBottomNavCustomEvent<string>>(this, 'suiActiveChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiBottomNavCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiBottomNav extends Components.SuiBottomNav {\n /**\n * Fires when a tab is activated; detail is the tab key, its own `key` or its label.\n */\n suiNavigate: EventEmitter<SuiBottomNavCustomEvent<string>>;\n /**\n * Fires whenever the element writes `active`, a tap on a tab that was not active, before\n`suiNavigate`; detail is the new `active`. Writing `active` from script emits nothing. Does\nnot bubble.\n */\n suiActiveChange: EventEmitter<SuiBottomNavCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiBreadcrumb,\n inputs: ['items', 'maxItems'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-breadcrumb',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['items', 'maxItems'],\n outputs: ['suiNavigate'],\n})\nexport class SuiBreadcrumb {\n protected el: HTMLSuiBreadcrumbElement;\n @Output() suiNavigate = new EventEmitter<SuiBreadcrumbCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiBreadcrumbCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiBreadcrumb extends Components.SuiBreadcrumb {\n /**\n * Fires when a non-last crumb is clicked; detail is the destination, a string as on every\nnavigation element: the crumb's `href`, or for a crumb without one its `key`, else its label.\nA link still follows its `href`.\n */\n suiNavigate: EventEmitter<SuiBreadcrumbCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiButton,\n inputs: ['block', 'disabled', 'form', 'href', 'icon', 'iconPos', 'label', 'loading', 'name', 'pill', 'rel', 'size', 'target', 'tone', 'type', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['block', 'disabled', 'form', 'href', 'icon', 'iconPos', 'label', 'loading', 'name', 'pill', 'rel', 'size', 'target', 'tone', 'type', 'value', 'variant'],\n})\nexport class SuiButton {\n protected el: HTMLSuiButtonElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiButton extends Components.SuiButton {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiButtonGroup,\n inputs: ['active', 'disabled', 'items', 'orientation', 'selectable', 'size'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-button-group',\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', 'items', 'orientation', 'selectable', 'size'],\n outputs: ['suiActiveChange', 'suiPick'],\n})\nexport class SuiButtonGroup {\n protected el: HTMLSuiButtonGroupElement;\n @Output() suiActiveChange = new EventEmitter<SuiButtonGroupCustomEvent<number>>();\n @Output() suiPick = new EventEmitter<SuiButtonGroupCustomEvent<ISuiButtonGroupSuiButtonGroupItem>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiButtonGroupCustomEvent<number>>(this, 'suiActiveChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiButtonGroupCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiButtonGroupItem as ISuiButtonGroupSuiButtonGroupItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiButtonGroup extends Components.SuiButtonGroup {\n /**\n * Fires when the pick moves (selectable only); detail is the new `active` index. A state\nreport, not a field's value, so a form around the group never hears it. Does not bubble.\n */\n suiActiveChange: EventEmitter<SuiButtonGroupCustomEvent<number>>;\n /**\n * Fires on every press of an enabled item; detail is the item. `item.command()` also runs.\n */\n suiPick: EventEmitter<SuiButtonGroupCustomEvent<ISuiButtonGroupSuiButtonGroupItem>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCalendar,\n inputs: ['agendaRender', 'breakpoint', 'chipRender', 'chipSubtitle', 'date', 'emptyMessage', 'events', 'firstDayOfWeek', 'hideToolbar', 'hideWeekends', 'loading', 'locale', 'maxPerDay', 'noDrag', 'todayDate', 'view'],\n methods: ['next', 'previous', 'today', 'move', 'setFocus']\n})\n@Component({\n selector: 'sui-calendar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['agendaRender', 'breakpoint', 'chipRender', 'chipSubtitle', 'date', 'emptyMessage', 'events', 'firstDayOfWeek', 'hideToolbar', 'hideWeekends', 'loading', 'locale', 'maxPerDay', 'noDrag', 'todayDate', 'view'],\n outputs: ['suiMove', 'suiDayClick', 'suiEventClick', 'suiDateChange', 'suiViewChange', 'suiOverflow'],\n})\nexport class SuiCalendar {\n protected el: HTMLSuiCalendarElement;\n @Output() suiMove = new EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarMoveDetail>>();\n @Output() suiDayClick = new EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarDayDetail>>();\n @Output() suiEventClick = new EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarEventClickDetail>>();\n @Output() suiDateChange = new EventEmitter<SuiCalendarCustomEvent<string>>();\n @Output() suiViewChange = new EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarView>>();\n @Output() suiOverflow = new EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarOverflowDetail>>();\n /** Emits the new `date` when the element changes it (`suiDateChange`), so `[(date)]` binds both ways. */\n @Output() dateChange = propChange<SuiCalendarCustomEvent<string>>(this, 'suiDateChange');\n /** Emits the new `view` when the element changes it (`suiViewChange`), so `[(view)]` binds both ways. */\n @Output() viewChange = propChange<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarView>>(this, 'suiViewChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCalendarCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCalendarMoveDetail as ISuiCalendarSuiCalendarMoveDetail } from '@shineuix/core/dist/components';\nimport type { SuiCalendarDayDetail as ISuiCalendarSuiCalendarDayDetail } from '@shineuix/core/dist/components';\nimport type { SuiCalendarEventClickDetail as ISuiCalendarSuiCalendarEventClickDetail } from '@shineuix/core/dist/components';\nimport type { SuiCalendarView as ISuiCalendarSuiCalendarView } from '@shineuix/core/dist/components';\nimport type { SuiCalendarOverflowDetail as ISuiCalendarSuiCalendarOverflowDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCalendar extends Components.SuiCalendar {\n /**\n * Fires before a record moves, from a drop, a keyboard lift or `move()` alike; detail is\n`{ id, from, to }` with both days ISO. Cancelable: `preventDefault()` refuses the move and\nthe chip stays where it was. Otherwise the calendar writes `events` and moves the chip.\n */\n suiMove: EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarMoveDetail>>;\n /**\n * Fires on a click, Enter or Space on a day cell away from its chips; detail is `{ date }`.\n */\n suiDayClick: EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarDayDetail>>;\n /**\n * Fires on a click or Enter on a chip that is not lifted, and on a click, Enter or Space on an\nagenda row; detail is `{ id, event }`.\n */\n suiEventClick: EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarEventClickDetail>>;\n /**\n * Fires after the calendar moves its own anchor, from the toolbar, the methods or the\nkeyboard; detail is the new `date`, ISO. A host write to `date` does not echo. A page that\nloads the records on show listens to this and `suiViewChange`. Does not bubble.\n */\n suiDateChange: EventEmitter<SuiCalendarCustomEvent<string>>;\n /**\n * Fires after the toolbar switches the view; detail is the new `view`. A week drawn as the\nagenda under `breakpoint` keeps `week`, so a change of width does not fire it, and neither\ndoes a host write. Does not bubble.\n */\n suiViewChange: EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarView>>;\n /**\n * Fires before the \"more\" link opens the calendar's own list of a day's records; detail is\n`{ date, events }`. Cancelable: `preventDefault()` keeps that list closed so the host can\nopen its own surface.\n */\n suiOverflow: EventEmitter<SuiCalendarCustomEvent<ISuiCalendarSuiCalendarOverflowDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCard,\n inputs: ['flush', 'heading', 'hoverable', 'subtitle']\n})\n@Component({\n selector: 'sui-card',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['flush', 'heading', 'hoverable', 'subtitle'],\n})\nexport class SuiCard {\n protected el: HTMLSuiCardElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiCard extends Components.SuiCard {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCarousel,\n inputs: ['autoplay', 'circular', 'height', 'hideArrows', 'hideDots', 'index', 'orientation', 'perPage', 'step'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-carousel',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autoplay', 'circular', 'height', 'hideArrows', 'hideDots', 'index', 'orientation', 'perPage', 'step'],\n outputs: ['suiIndexChange'],\n})\nexport class SuiCarousel {\n protected el: HTMLSuiCarouselElement;\n @Output() suiIndexChange = new EventEmitter<SuiCarouselCustomEvent<number>>();\n /** Emits the new `index` when the element changes it (`suiIndexChange`), so `[(index)]` binds both ways. */\n @Output() indexChange = propChange<SuiCarouselCustomEvent<number>>(this, 'suiIndexChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCarouselCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCarousel extends Components.SuiCarousel {\n /**\n * Fires after navigation by the user or by autoplay; detail is the new page index. Does not\nbubble.\n */\n suiIndexChange: EventEmitter<SuiCarouselCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCascadeSelect,\n inputs: ['clearable', 'disabled', 'emptyMessage', 'error', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'name', 'open', 'openPath', 'options', 'placeholder', 'readOnly', 'required', 'showPath', 'size', 'tone', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-cascade-select',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['clearable', 'disabled', 'emptyMessage', 'error', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'name', 'open', 'openPath', 'options', 'placeholder', 'readOnly', 'required', 'showPath', 'size', 'tone', 'value', 'variant'],\n outputs: ['suiChange', 'suiOpen', 'suiOpenPathChange', 'suiClose'],\n})\nexport class SuiCascadeSelect {\n protected el: HTMLSuiCascadeSelectElement;\n @Output() suiChange = new EventEmitter<SuiCascadeSelectCustomEvent<ISuiCascadeSelectSuiKey>>();\n @Output() suiOpen = new EventEmitter<SuiCascadeSelectCustomEvent<void>>();\n @Output() suiOpenPathChange = new EventEmitter<SuiCascadeSelectCustomEvent<number[]>>();\n @Output() suiClose = new EventEmitter<SuiCascadeSelectCustomEvent<ISuiCascadeSelectSuiCloseReason>>();\n /** Emits the new `openPath` when the element changes it (`suiOpenPathChange`), so `[(openPath)]` binds both ways. */\n @Output() openPathChange = propChange<SuiCascadeSelectCustomEvent<number[]>>(this, 'suiOpenPathChange');\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiCascadeSelect['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCascadeSelectCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiCascadeSelectSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiCascadeSelectSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCascadeSelect extends Components.SuiCascadeSelect {\n /**\n * Fires when a leaf is picked; detail is the new `value`: the leaf's value as given, or `''`\nafter a clear.\n */\n suiChange: EventEmitter<SuiCascadeSelectCustomEvent<ISuiCascadeSelectSuiKey>>;\n /**\n * Fires after the element opens the menu itself (trigger click, ArrowDown, Enter, Space). Does\nnot bubble, so a dialog around the control never takes it for its own.\n */\n suiOpen: EventEmitter<SuiCascadeSelectCustomEvent<void>>;\n /**\n * Fires after the element moves `openPath` itself (hover, click or an arrow key over a branch, the\nback row, or an open from the trigger); detail is the new path. The prop is written first, so a\nframework binding stays in step. It reports a cursor move inside the menu, not a destination,\nwhich is why it is not `suiNavigate`. Does not bubble: it reports the panel's state, not the\nvalue, like `suiOpen` and `suiClose`.\n */\n suiOpenPathChange: EventEmitter<SuiCascadeSelectCustomEvent<number[]>>;\n /**\n * Fires before the element closes the menu itself; detail is\n`'pick' | 'escape' | 'outside' | 'trigger'`. Cancelable: `preventDefault()` keeps it open.\nTab reports `'outside'`, because focus left the control and `SuiCloseReason` has no member\nfor that. Does not bubble: a `preventDefault()` in a dialog's own `suiClose` listener cannot\nveto this one.\n */\n suiClose: EventEmitter<SuiCascadeSelectCustomEvent<ISuiCascadeSelectSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartBar,\n inputs: ['caption', 'currency', 'emptyMessage', 'every', 'fixedSize', 'heading', 'height', 'hoverIndex', 'labels', 'loading', 'money', 'orientation', 'refLine', 'series', 'stacked', 'subtitle', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-bar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'currency', 'emptyMessage', 'every', 'fixedSize', 'heading', 'height', 'hoverIndex', 'labels', 'loading', 'money', 'orientation', 'refLine', 'series', 'stacked', 'subtitle', 'width'],\n outputs: ['suiHover'],\n})\nexport class SuiChartBar {\n protected el: HTMLSuiChartBarElement;\n @Output() suiHover = new EventEmitter<SuiChartBarCustomEvent<ISuiChartBarSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartBarCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartBarSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartBar extends Components.SuiChartBar {\n /**\n * Fires when the pointer or the keyboard moves the hover to another category; `{ index: -1 }`\nwhen the pointer leaves, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartBarCustomEvent<ISuiChartBarSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartCandlestick,\n inputs: ['caption', 'currency', 'emptyMessage', 'every', 'fixedSize', 'heading', 'height', 'hoverIndex', 'items', 'kind', 'loading', 'money', 'subtitle', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-candlestick',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'currency', 'emptyMessage', 'every', 'fixedSize', 'heading', 'height', 'hoverIndex', 'items', 'kind', 'loading', 'money', 'subtitle', 'width'],\n outputs: ['suiHover'],\n})\nexport class SuiChartCandlestick {\n protected el: HTMLSuiChartCandlestickElement;\n @Output() suiHover = new EventEmitter<SuiChartCandlestickCustomEvent<ISuiChartCandlestickSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartCandlestickCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartCandlestickSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartCandlestick extends Components.SuiChartCandlestick {\n /**\n * Fires when the pointer or the keyboard moves the hover to another period; `{ index: -1 }`\nwhen the pointer leaves, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartCandlestickCustomEvent<ISuiChartCandlestickSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartCombo,\n inputs: ['bars', 'caption', 'currency', 'curve', 'emptyMessage', 'every', 'fixedSize', 'formatEnd', 'heading', 'height', 'hoverIndex', 'labels', 'line', 'loading', 'money', 'subtitle', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-combo',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['bars', 'caption', 'currency', 'curve', 'emptyMessage', 'every', 'fixedSize', 'formatEnd', 'heading', 'height', 'hoverIndex', 'labels', 'line', 'loading', 'money', 'subtitle', 'width'],\n outputs: ['suiHover'],\n})\nexport class SuiChartCombo {\n protected el: HTMLSuiChartComboElement;\n @Output() suiHover = new EventEmitter<SuiChartComboCustomEvent<ISuiChartComboSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartComboCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartComboSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartCombo extends Components.SuiChartCombo {\n /**\n * Fires when the pointer or the keyboard moves the hover to another period; `{ index: -1 }`\nwhen the pointer leaves, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartComboCustomEvent<ISuiChartComboSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartGauge,\n inputs: ['band', 'caption', 'diameter', 'format', 'heading', 'label', 'loading', 'max', 'min', 'subtitle', 'target', 'value']\n})\n@Component({\n selector: 'sui-chart-gauge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['band', 'caption', 'diameter', 'format', 'heading', 'label', 'loading', 'max', 'min', 'subtitle', 'target', 'value'],\n})\nexport class SuiChartGauge {\n protected el: HTMLSuiChartGaugeElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiChartGauge extends Components.SuiChartGauge {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartHeatmap,\n inputs: ['caption', 'cell', 'cols', 'currency', 'emptyMessage', 'heading', 'hideMax', 'hoverIndex', 'loading', 'money', 'rows', 'subtitle', 'values'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-heatmap',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'cell', 'cols', 'currency', 'emptyMessage', 'heading', 'hideMax', 'hoverIndex', 'loading', 'money', 'rows', 'subtitle', 'values'],\n outputs: ['suiHover'],\n})\nexport class SuiChartHeatmap {\n protected el: HTMLSuiChartHeatmapElement;\n @Output() suiHover = new EventEmitter<SuiChartHeatmapCustomEvent<ISuiChartHeatmapSuiChartHeatmapHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartHeatmapCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHeatmapHoverDetail as ISuiChartHeatmapSuiChartHeatmapHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartHeatmap extends Components.SuiChartHeatmap {\n /**\n * Fires when the pointer or the keyboard moves the hover to another cell: `{ index, row, col }`,\nall -1 when the pointer leaves the matrix, or Escape or a blur takes the keyboard's cell\naway.\n */\n suiHover: EventEmitter<SuiChartHeatmapCustomEvent<ISuiChartHeatmapSuiChartHeatmapHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartLine,\n inputs: ['caption', 'currency', 'curve', 'emptyMessage', 'every', 'fixedSize', 'formatEnd', 'heading', 'height', 'hoverIndex', 'kind', 'labels', 'loading', 'markers', 'money', 'plain', 'refLine', 'series', 'subtitle', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-line',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'currency', 'curve', 'emptyMessage', 'every', 'fixedSize', 'formatEnd', 'heading', 'height', 'hoverIndex', 'kind', 'labels', 'loading', 'markers', 'money', 'plain', 'refLine', 'series', 'subtitle', 'width'],\n outputs: ['suiHover'],\n})\nexport class SuiChartLine {\n protected el: HTMLSuiChartLineElement;\n @Output() suiHover = new EventEmitter<SuiChartLineCustomEvent<ISuiChartLineSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartLineCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartLineSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartLine extends Components.SuiChartLine {\n /**\n * Fires when the pointer or the keyboard moves the hover to another index; `{ index: -1 }` when\nthe pointer leaves the plot, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartLineCustomEvent<ISuiChartLineSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartNavigator,\n inputs: ['caption', 'curve', 'data', 'emptyMessage', 'heading', 'loading', 'subtitle', 'width', 'window', 'zoom'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-navigator',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'curve', 'data', 'emptyMessage', 'heading', 'loading', 'subtitle', 'width', 'window', 'zoom'],\n outputs: ['suiWindowChange'],\n})\nexport class SuiChartNavigator {\n protected el: HTMLSuiChartNavigatorElement;\n @Output() suiWindowChange = new EventEmitter<SuiChartNavigatorCustomEvent<ISuiChartNavigatorSuiChartWindow>>();\n /** Emits the new `window` when the element changes it (`suiWindowChange`), so `[(window)]` binds both ways. */\n @Output() windowChange = propChange<SuiChartNavigatorCustomEvent<ISuiChartNavigatorSuiChartWindow>>(this, 'suiWindowChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartNavigatorCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartWindow as ISuiChartNavigatorSuiChartWindow } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartNavigator extends Components.SuiChartNavigator {\n /**\n * Fires when the element writes a new `window`, the detail the new `[start, end]`: on a drag,\na key, the wheel or a pinch, and when new `data` moves the range. Re-slice the detail chart's\n`labels` and `series` from `start` to `end` on every event. It does not fire for a drag that\nstays on the same points. Does not bubble.\n */\n suiWindowChange: EventEmitter<SuiChartNavigatorCustomEvent<ISuiChartNavigatorSuiChartWindow>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartPie,\n inputs: ['caption', 'centerLabel', 'currency', 'diameter', 'emptyMessage', 'heading', 'hoverIndex', 'items', 'kind', 'loading', 'money', 'subtitle'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-pie',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'centerLabel', 'currency', 'diameter', 'emptyMessage', 'heading', 'hoverIndex', 'items', 'kind', 'loading', 'money', 'subtitle'],\n outputs: ['suiHover'],\n})\nexport class SuiChartPie {\n protected el: HTMLSuiChartPieElement;\n @Output() suiHover = new EventEmitter<SuiChartPieCustomEvent<ISuiChartPieSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartPieCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartPieSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartPie extends Components.SuiChartPie {\n /**\n * Fires when the hovered item changes; `index` is the item position, or -1 when nothing is hovered.\nHovering a slice or a legend row, reaching a slice with the arrow keys and focusing a legend\nrow all count as hover.\n */\n suiHover: EventEmitter<SuiChartPieCustomEvent<ISuiChartPieSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartRadar,\n inputs: ['axes', 'caption', 'currency', 'diameter', 'emptyMessage', 'heading', 'hoverIndex', 'loading', 'max', 'money', 'rings', 'series', 'subtitle'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-radar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['axes', 'caption', 'currency', 'diameter', 'emptyMessage', 'heading', 'hoverIndex', 'loading', 'max', 'money', 'rings', 'series', 'subtitle'],\n outputs: ['suiHover'],\n})\nexport class SuiChartRadar {\n protected el: HTMLSuiChartRadarElement;\n @Output() suiHover = new EventEmitter<SuiChartRadarCustomEvent<ISuiChartRadarSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartRadarCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartRadarSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartRadar extends Components.SuiChartRadar {\n /**\n * Fires when the pointer or the keyboard moves the hover to another axis; `{ index: -1 }` when\nthe pointer leaves the plot, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartRadarCustomEvent<ISuiChartRadarSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartScatter,\n inputs: ['caption', 'emptyMessage', 'every', 'fixedSize', 'formatX', 'formatY', 'heading', 'height', 'hoverIndex', 'loading', 'series', 'subtitle', 'width', 'xLabel', 'yLabel'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-scatter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'emptyMessage', 'every', 'fixedSize', 'formatX', 'formatY', 'heading', 'height', 'hoverIndex', 'loading', 'series', 'subtitle', 'width', 'xLabel', 'yLabel'],\n outputs: ['suiHover'],\n})\nexport class SuiChartScatter {\n protected el: HTMLSuiChartScatterElement;\n @Output() suiHover = new EventEmitter<SuiChartScatterCustomEvent<ISuiChartScatterSuiChartScatterHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartScatterCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartScatterHoverDetail as ISuiChartScatterSuiChartScatterHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartScatter extends Components.SuiChartScatter {\n /**\n * Fires when the pointer or the keyboard moves the hover to another point:\n`{ index, series, point }`, all -1 when the pointer leaves the marks, or Escape or a blur\ntakes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartScatterCustomEvent<ISuiChartScatterSuiChartScatterHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartSynced,\n inputs: ['hoverIndex']\n})\n@Component({\n selector: 'sui-chart-synced',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['hoverIndex'],\n outputs: ['suiHover'],\n})\nexport class SuiChartSynced {\n protected el: HTMLSuiChartSyncedElement;\n @Output() suiHover = new EventEmitter<SuiChartSyncedCustomEvent<ISuiChartSyncedSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartSyncedCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartSyncedSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartSynced extends Components.SuiChartSynced {\n /**\n * Fires once per change of the shared index; detail is `{ index }`. A panel's own `suiHover`\nstops at the panel, so a listener on the container, or above it, hears this event alone. A\npanel inside a nested `sui-chart-synced` belongs to that group, not to this one.\n */\n suiHover: EventEmitter<SuiChartSyncedCustomEvent<ISuiChartSyncedSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartTreemap,\n inputs: ['caption', 'currency', 'emptyMessage', 'fixedSize', 'heading', 'height', 'hoverIndex', 'items', 'loading', 'money', 'subtitle', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-treemap',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'currency', 'emptyMessage', 'fixedSize', 'heading', 'height', 'hoverIndex', 'items', 'loading', 'money', 'subtitle', 'width'],\n outputs: ['suiHover'],\n})\nexport class SuiChartTreemap {\n protected el: HTMLSuiChartTreemapElement;\n @Output() suiHover = new EventEmitter<SuiChartTreemapCustomEvent<ISuiChartTreemapSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartTreemapCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartTreemapSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartTreemap extends Components.SuiChartTreemap {\n /**\n * Fires when the pointer or the keyboard moves the hover to another item; `{ index: -1 }` when\nthe pointer leaves the tiles, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartTreemapCustomEvent<ISuiChartTreemapSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChartWaterfall,\n inputs: ['caption', 'currency', 'emptyMessage', 'every', 'fixedSize', 'heading', 'height', 'hoverIndex', 'items', 'loading', 'money', 'subtitle', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chart-waterfall',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'currency', 'emptyMessage', 'every', 'fixedSize', 'heading', 'height', 'hoverIndex', 'items', 'loading', 'money', 'subtitle', 'width'],\n outputs: ['suiHover'],\n})\nexport class SuiChartWaterfall {\n protected el: HTMLSuiChartWaterfallElement;\n @Output() suiHover = new EventEmitter<SuiChartWaterfallCustomEvent<ISuiChartWaterfallSuiChartHoverDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChartWaterfallCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChartHoverDetail as ISuiChartWaterfallSuiChartHoverDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChartWaterfall extends Components.SuiChartWaterfall {\n /**\n * Fires when the pointer or the keyboard moves the hover to another step; `{ index: -1 }` when\nthe pointer leaves, or Escape or a blur takes the keyboard's point away.\n */\n suiHover: EventEmitter<SuiChartWaterfallCustomEvent<ISuiChartWaterfallSuiChartHoverDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCheckbox,\n inputs: ['checked', 'description', 'disabled', 'error', 'help', 'indeterminate', 'invalid', 'label', 'name', 'readOnly', 'required', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-checkbox',\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', 'error', 'help', 'indeterminate', 'invalid', 'label', 'name', 'readOnly', 'required', 'size', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiCheckbox {\n protected el: HTMLSuiCheckboxElement;\n @Output() suiChange = new EventEmitter<SuiCheckboxCustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCheckboxCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCheckbox extends Components.SuiCheckbox {\n /**\n * Fires on toggle; detail is the new checked state.\n */\n suiChange: EventEmitter<SuiCheckboxCustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCheckboxGroup,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'name', 'options', 'orientation', 'readOnly', 'required', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-checkbox-group',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'name', 'options', 'orientation', 'readOnly', 'required', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiCheckboxGroup {\n protected el: HTMLSuiCheckboxGroupElement;\n @Output() suiChange = new EventEmitter<SuiCheckboxGroupCustomEvent<ISuiCheckboxGroupSuiKey[]>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCheckboxGroupCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiCheckboxGroupSuiKey } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCheckboxGroup extends Components.SuiCheckboxGroup {\n /**\n * Fires when an option toggles; detail is the new `value`, the full array of checked values.\n */\n suiChange: EventEmitter<SuiCheckboxGroupCustomEvent<ISuiCheckboxGroupSuiKey[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChip,\n inputs: ['clickable', 'disabled', 'icon', 'image', 'initial', 'label', 'removable', 'selected', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-chip',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['clickable', 'disabled', 'icon', 'image', 'initial', 'label', 'removable', 'selected', 'size', 'value'],\n outputs: ['suiRemove'],\n})\nexport class SuiChip {\n protected el: HTMLSuiChipElement;\n @Output() suiRemove = new EventEmitter<SuiChipCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChipCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChip extends Components.SuiChip {\n /**\n * Fires when the remove control is activated: a click on the X, or Backspace or Delete while\nthe X or a clickable chip holds focus. Detail is the chip's `value`, or its `label` when it\nhas none, as every `suiRemove` in the library carries the item that went. The control stops\npropagation, so removing never counts as a chip click, and a disabled chip does not emit.\n */\n suiRemove: EventEmitter<SuiChipCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiChoiceCards,\n inputs: ['columns', 'disabled', 'error', 'help', 'invalid', 'label', 'multiple', 'name', 'options', 'readOnly', 'required', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-choice-cards',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columns', 'disabled', 'error', 'help', 'invalid', 'label', 'multiple', 'name', 'options', 'readOnly', 'required', 'value', 'variant'],\n outputs: ['suiChange'],\n})\nexport class SuiChoiceCards {\n protected el: HTMLSuiChoiceCardsElement;\n @Output() suiChange = new EventEmitter<SuiChoiceCardsCustomEvent<ISuiChoiceCardsSuiChoiceValue>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiChoiceCardsCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChoiceValue as ISuiChoiceCardsSuiChoiceValue } from '@shineuix/core/dist/components';\n\nexport declare interface SuiChoiceCards extends Components.SuiChoiceCards {\n /**\n * Fires when the selection changes; detail is the new `value`: the picked card's value, or the\narray of picked values when `multiple`.\n */\n suiChange: EventEmitter<SuiChoiceCardsCustomEvent<ISuiChoiceCardsSuiChoiceValue>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCodeBlock,\n inputs: ['code', 'label', 'language', 'lines', 'maxHeight', 'noCopy', 'size', 'wrap', 'wrapToggle'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-code-block',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['code', 'label', 'language', 'lines', 'maxHeight', 'noCopy', 'size', 'wrap', 'wrapToggle'],\n outputs: ['suiCopy', 'suiCopyError'],\n})\nexport class SuiCodeBlock {\n protected el: HTMLSuiCodeBlockElement;\n @Output() suiCopy = new EventEmitter<SuiCodeBlockCustomEvent<string>>();\n @Output() suiCopyError = new EventEmitter<SuiCodeBlockCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCodeBlockCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCodeBlock extends Components.SuiCodeBlock {\n /**\n * Fires after the source reaches the clipboard; detail is the copied text. Copy falls back to a\nhidden textarea where `navigator.clipboard` is absent, so plain http still works.\n */\n suiCopy: EventEmitter<SuiCodeBlockCustomEvent<string>>;\n /**\n * Fires when the clipboard refused the write. No Copied state shows; detail is the text that\nwas not copied, which is where your own toast belongs.\n */\n suiCopyError: EventEmitter<SuiCodeBlockCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiColorEditor,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'name', 'noAlpha', 'presets', 'readOnly', 'recentsKey', 'required', 'showContrast', 'value', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-color-editor',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'name', 'noAlpha', 'presets', 'readOnly', 'recentsKey', 'required', 'showContrast', 'value', 'width'],\n outputs: ['suiInput', 'suiChange'],\n})\nexport class SuiColorEditor {\n protected el: HTMLSuiColorEditorElement;\n @Output() suiInput = new EventEmitter<SuiColorEditorCustomEvent<ISuiColorEditorSuiColorEditorValueDetail>>();\n @Output() suiChange = new EventEmitter<SuiColorEditorCustomEvent<ISuiColorEditorSuiColorEditorValueDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiColorEditorCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiColorEditorValueDetail as ISuiColorEditorSuiColorEditorValueDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiColorEditor extends Components.SuiColorEditor {\n /**\n * Fires on every color change, drag frames included; detail is `{ hex, alpha, rgb, hsl, css }`.\n */\n suiInput: EventEmitter<SuiColorEditorCustomEvent<ISuiColorEditorSuiColorEditorValueDetail>>;\n /**\n * Fires when a color is committed: a drag released, a key, a swatch, the eyedropper or a field entry. Same detail as `suiInput`.\n */\n suiChange: EventEmitter<SuiColorEditorCustomEvent<ISuiColorEditorSuiColorEditorValueDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiColorPicker,\n inputs: ['disabled', 'error', 'help', 'inline', 'invalid', 'label', 'name', 'open', 'readOnly', 'required', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-color-picker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'inline', 'invalid', 'label', 'name', 'open', 'readOnly', 'required', 'value'],\n outputs: ['suiChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiColorPicker {\n protected el: HTMLSuiColorPickerElement;\n @Output() suiChange = new EventEmitter<SuiColorPickerCustomEvent<string>>();\n @Output() suiOpen = new EventEmitter<SuiColorPickerCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiColorPickerCustomEvent<ISuiColorPickerSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiColorPicker['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiColorPickerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiColorPickerSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiColorPicker extends Components.SuiColorPicker {\n /**\n * Fires when a swatch is picked; detail is the hex string.\n */\n suiChange: EventEmitter<SuiColorPickerCustomEvent<string>>;\n /**\n * Fires after the element opens the palette itself. Does not bubble, so a dialog around the picker\nnever takes it for its own.\n */\n suiOpen: EventEmitter<SuiColorPickerCustomEvent<void>>;\n /**\n * Fires before the element closes the palette itself; detail is `'escape' | 'outside' | 'trigger'`\n(Tab reports `'outside'`, as the select family does, because focus left the control).\nPicking deliberately leaves the panel open, so there is no `'pick'` reason here.\nCancelable: `preventDefault()` keeps it open. Does not bubble: a `preventDefault()` in a dialog's\nown `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiColorPickerCustomEvent<ISuiColorPickerSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCommandPalette,\n inputs: ['brand', 'emptyFilterMessage', 'emptyMessage', 'externalFilter', 'groups', 'open', 'placeholder', 'query']\n})\n@Component({\n selector: 'sui-command-palette',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['brand', 'emptyFilterMessage', 'emptyMessage', 'externalFilter', 'groups', 'open', 'placeholder', 'query'],\n outputs: ['suiClose', 'suiPick', 'suiQueryChange'],\n})\nexport class SuiCommandPalette {\n protected el: HTMLSuiCommandPaletteElement;\n @Output() suiClose = new EventEmitter<SuiCommandPaletteCustomEvent<ISuiCommandPaletteSuiCloseReason>>();\n @Output() suiPick = new EventEmitter<SuiCommandPaletteCustomEvent<ISuiCommandPaletteSuiCommandItem>>();\n @Output() suiQueryChange = new EventEmitter<SuiCommandPaletteCustomEvent<string>>();\n /** Emits the new `query` when the element changes it (`suiQueryChange`), so `[(query)]` binds both ways. */\n @Output() queryChange = propChange<SuiCommandPaletteCustomEvent<string>>(this, 'suiQueryChange');\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiCommandPalette['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCommandPaletteCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiCommandPaletteSuiCloseReason } from '@shineuix/core/dist/components';\nimport type { SuiCommandItem as ISuiCommandPaletteSuiCommandItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCommandPalette extends Components.SuiCommandPalette {\n /**\n * Fires before the palette closes itself; detail is `'escape' | 'scrim' | 'pick'`.\nCancelable: `preventDefault()` keeps it open. It does not bubble.\n */\n suiClose: EventEmitter<SuiCommandPaletteCustomEvent<ISuiCommandPaletteSuiCloseReason>>;\n /**\n * Fires when a row is chosen (click or Enter); detail is the item. `suiClose` follows with reason `'pick'`.\n */\n suiPick: EventEmitter<SuiCommandPaletteCustomEvent<ISuiCommandPaletteSuiCommandItem>>;\n /**\n * Fires on every keystroke in the search field; detail is the new `query`, so a host can run a\nremote or fuzzy search. Assigning `query` from code does not emit, so a host can feed the\nfield back without a loop. Does not bubble.\n */\n suiQueryChange: EventEmitter<SuiCommandPaletteCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiConfigList,\n inputs: ['breakpoint', 'controlAlign', 'controlWidth', 'heading', 'headingLevel', 'subtitle', 'variant']\n})\n@Component({\n selector: 'sui-config-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['breakpoint', 'controlAlign', 'controlWidth', 'heading', 'headingLevel', 'subtitle', 'variant'],\n})\nexport class SuiConfigList {\n protected el: HTMLSuiConfigListElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiConfigList extends Components.SuiConfigList {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiConfigRow,\n inputs: ['breakpoint', 'controlAlign', 'controlWidth', 'description', 'previewColumn', 'term', 'variant']\n})\n@Component({\n selector: 'sui-config-row',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['breakpoint', 'controlAlign', 'controlWidth', 'description', 'previewColumn', 'term', 'variant'],\n})\nexport class SuiConfigRow {\n protected el: HTMLSuiConfigRowElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiConfigRow extends Components.SuiConfigRow {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiConfirmDialog,\n inputs: ['cancelLabel', 'confirmDisabled', 'confirmLabel', 'confirmVariant', 'detail', 'heading', 'message', 'open', 'pending', 'returnFocus']\n})\n@Component({\n selector: 'sui-confirm-dialog',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['cancelLabel', 'confirmDisabled', 'confirmLabel', 'confirmVariant', 'detail', 'heading', 'message', 'open', 'pending', 'returnFocus'],\n outputs: ['suiConfirm', 'suiClose'],\n})\nexport class SuiConfirmDialog {\n protected el: HTMLSuiConfirmDialogElement;\n @Output() suiConfirm = new EventEmitter<SuiConfirmDialogCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiConfirmDialogCustomEvent<ISuiConfirmDialogSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiConfirmDialog['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiConfirmDialogCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiConfirmDialogSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiConfirmDialog extends Components.SuiConfirmDialog {\n /**\n * Fires when the confirm button is pressed. Cancelable: `preventDefault()` keeps the dialog\nopen, which is how a server-backed confirmation works: refuse it, set `pending`, and clear\n`open` when the request resolves.\n */\n suiConfirm: EventEmitter<SuiConfirmDialogCustomEvent<void>>;\n /**\n * Fires when Cancel, Escape or the scrim asks to close; detail is `'cancel' | 'escape' | 'scrim'`.\nCancelable: `preventDefault()` keeps it open and keeps focus inside. It does not bubble, as\non every dismissible surface.\n */\n suiClose: EventEmitter<SuiConfirmDialogCustomEvent<ISuiConfirmDialogSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiConfirmPopup,\n inputs: ['cancelLabel', 'confirmLabel', 'confirmVariant', 'message', 'open', 'position']\n})\n@Component({\n selector: 'sui-confirm-popup',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['cancelLabel', 'confirmLabel', 'confirmVariant', 'message', 'open', 'position'],\n outputs: ['suiOpen', 'suiConfirm', 'suiClose'],\n})\nexport class SuiConfirmPopup {\n protected el: HTMLSuiConfirmPopupElement;\n @Output() suiOpen = new EventEmitter<SuiConfirmPopupCustomEvent<void>>();\n @Output() suiConfirm = new EventEmitter<SuiConfirmPopupCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiConfirmPopupCustomEvent<ISuiConfirmPopupSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiConfirmPopup['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiConfirmPopupCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiConfirmPopupSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiConfirmPopup extends Components.SuiConfirmPopup {\n /**\n * Fires when the trigger opens the panel. It does not bubble.\n */\n suiOpen: EventEmitter<SuiConfirmPopupCustomEvent<void>>;\n /**\n * Fires when the confirm button is pressed. Cancelable, as on sui-confirm-dialog: unless a\nlistener calls `preventDefault()`, the panel closes itself and focus returns to the trigger.\n */\n suiConfirm: EventEmitter<SuiConfirmPopupCustomEvent<void>>;\n /**\n * Fires before the panel closes itself; detail is `'cancel' | 'escape' | 'outside' | 'trigger'`.\nCancel and Escape return focus to the trigger. Cancelable: `preventDefault()` keeps it open.\nIt does not bubble, so a dialog around the trigger never hears it.\n */\n suiClose: EventEmitter<SuiConfirmPopupCustomEvent<ISuiConfirmPopupSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiContextMenu,\n inputs: ['global', 'items', 'open', 'width', 'x', 'y']\n})\n@Component({\n selector: 'sui-context-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['global', 'items', 'open', 'width', 'x', 'y'],\n outputs: ['suiPick', 'suiOpen', 'suiClose'],\n})\nexport class SuiContextMenu {\n protected el: HTMLSuiContextMenuElement;\n @Output() suiPick = new EventEmitter<SuiContextMenuCustomEvent<ISuiContextMenuSuiMenuItem>>();\n @Output() suiOpen = new EventEmitter<SuiContextMenuCustomEvent<ISuiContextMenuSuiContextMenuOpenDetail>>();\n @Output() suiClose = new EventEmitter<SuiContextMenuCustomEvent<ISuiContextMenuSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiContextMenu['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiContextMenuCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiMenuItem as ISuiContextMenuSuiMenuItem } from '@shineuix/core/dist/components';\nimport type { SuiContextMenuOpenDetail as ISuiContextMenuSuiContextMenuOpenDetail } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiContextMenuSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiContextMenu extends Components.SuiContextMenu {\n /**\n * Fires when a row is picked; detail is the item. `item.command()` also runs, then the menu closes.\n */\n suiPick: EventEmitter<SuiContextMenuCustomEvent<ISuiContextMenuSuiMenuItem>>;\n /**\n * Fires when a right-click opens the menu; detail is where it opened, the\n`SuiContextMenuOpenDetail` offset. It does not bubble.\n */\n suiOpen: EventEmitter<SuiContextMenuCustomEvent<ISuiContextMenuSuiContextMenuOpenDetail>>;\n /**\n * Fires before the menu closes itself; detail is `'pick' | 'outside' | 'escape'`\n(`'outside'` covers a pointer outside the menu, a press in the region, and Tab, which hands\nfocus back to what had it when the menu opened and carries on from there).\nCancelable: `preventDefault()` keeps it open. It does not bubble.\n */\n suiClose: EventEmitter<SuiContextMenuCustomEvent<ISuiContextMenuSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiCopyButton,\n inputs: ['copied', 'copiedLabel', 'disabled', 'errorLabel', 'feedback', 'from', 'label', 'size', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-copy-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['copied', 'copiedLabel', 'disabled', 'errorLabel', 'feedback', 'from', 'label', 'size', 'value', 'variant'],\n outputs: ['suiCopy', 'suiCopyError'],\n})\nexport class SuiCopyButton {\n protected el: HTMLSuiCopyButtonElement;\n @Output() suiCopy = new EventEmitter<SuiCopyButtonCustomEvent<string>>();\n @Output() suiCopyError = new EventEmitter<SuiCopyButtonCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiCopyButtonCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiCopyButton extends Components.SuiCopyButton {\n /**\n * Fires after the value reaches the clipboard; detail is the copied text. The event and the\ncheck state follow the confirmed write, not the press. The write goes through\n`navigator.clipboard.writeText`, with a hidden textarea and `execCommand('copy')` as the\nfallback in insecure contexts.\n */\n suiCopy: EventEmitter<SuiCopyButtonCustomEvent<string>>;\n /**\n * Fires when the write failed. The button shows `errorLabel` for 1.6 s and announces it; the\nevent is for a host that wants to offer its own recovery. Detail is the value that was not\ncopied.\n */\n suiCopyError: EventEmitter<SuiCopyButtonCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDataGrid,\n inputs: ['columnLayout', 'columns', 'copyFormulas', 'density', 'editMode', 'emptyFilterMessage', 'emptyMessage', 'filterDisplay', 'filterModel', 'focusedCell', 'footerTotals', 'hideSelectionBar', 'loading', 'nullOrder', 'overscan', 'pinnedBottom', 'pinnedTop', 'rangeSelection', 'reorderableColumns', 'rowClass', 'rowHeights', 'rowKey', 'rowNumbers', 'rows', 'selection', 'selectionMode', 'showColumnToggle', 'sortIndicator', 'sortMode', 'sorts', 'stateKey', 'stateStorage'],\n methods: ['scrollToRow', 'focusCell', 'setFocus', 'exportCsv', 'getViewport', 'autosizeColumn', 'setFilter', 'paste', 'copy', 'undo', 'redo', 'cut']\n})\n@Component({\n selector: 'sui-data-grid',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columnLayout', 'columns', 'copyFormulas', 'density', 'editMode', 'emptyFilterMessage', 'emptyMessage', 'filterDisplay', 'filterModel', 'focusedCell', 'footerTotals', 'hideSelectionBar', 'loading', 'nullOrder', 'overscan', 'pinnedBottom', 'pinnedTop', 'rangeSelection', 'reorderableColumns', 'rowClass', 'rowHeights', 'rowKey', 'rowNumbers', 'rows', 'selection', 'selectionMode', 'showColumnToggle', 'sortIndicator', 'sortMode', 'sorts', 'stateKey', 'stateStorage'],\n outputs: ['suiViewport', 'suiCellFocus', 'suiCellActivate', 'suiSort', 'suiRangeChange', 'suiCellEdit', 'suiSelectionChange', 'suiColumnLayoutChange', 'suiFilter', 'suiCellContextMenu', 'suiCut', 'suiCopy', 'suiCopyError', 'suiFill', 'suiPaste'],\n})\nexport class SuiDataGrid {\n protected el: HTMLSuiDataGridElement;\n @Output() suiViewport = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridViewportDetail>>();\n @Output() suiCellFocus = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridCell>>();\n @Output() suiCellActivate = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridCell>>();\n @Output() suiSort = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridSort[]>>();\n @Output() suiRangeChange = new EventEmitter<SuiDataGridCustomEvent<number>>();\n @Output() suiCellEdit = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridCellEditDetail>>();\n @Output() suiSelectionChange = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridRowSelection>>();\n @Output() suiColumnLayoutChange = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridLayout>>();\n @Output() suiFilter = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridFilterModel>>();\n @Output() suiCellContextMenu = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridContextMenuDetail>>();\n @Output() suiCut = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridFillDetail>>();\n @Output() suiCopy = new EventEmitter<SuiDataGridCustomEvent<string>>();\n @Output() suiCopyError = new EventEmitter<SuiDataGridCustomEvent<string>>();\n @Output() suiFill = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridFillDetail>>();\n @Output() suiPaste = new EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridPasteDetail>>();\n /** Emits the new `columnLayout` when the element changes it (`suiColumnLayoutChange`), so `[(columnLayout)]` binds both ways. */\n @Output() columnLayoutChange = propChange<SuiDataGridCustomEvent<ISuiDataGridSuiGridLayout>>(this, 'suiColumnLayoutChange');\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiDataGridCustomEvent<ISuiDataGridSuiGridRowSelection>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDataGridCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiGridViewportDetail as ISuiDataGridSuiGridViewportDetail } from '@shineuix/core/dist/components';\nimport type { SuiGridCell as ISuiDataGridSuiGridCell } from '@shineuix/core/dist/components';\nimport type { SuiGridSort as ISuiDataGridSuiGridSort } from '@shineuix/core/dist/components';\nimport type { SuiGridCellEditDetail as ISuiDataGridSuiGridCellEditDetail } from '@shineuix/core/dist/components';\nimport type { SuiGridRowSelection as ISuiDataGridSuiGridRowSelection } from '@shineuix/core/dist/components';\nimport type { SuiGridLayout as ISuiDataGridSuiGridLayout } from '@shineuix/core/dist/components';\nimport type { SuiGridFilterModel as ISuiDataGridSuiGridFilterModel } from '@shineuix/core/dist/components';\nimport type { SuiGridContextMenuDetail as ISuiDataGridSuiGridContextMenuDetail } from '@shineuix/core/dist/components';\nimport type { SuiGridFillDetail as ISuiDataGridSuiGridFillDetail } from '@shineuix/core/dist/components';\nimport type { SuiGridPasteDetail as ISuiDataGridSuiGridPasteDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDataGrid extends Components.SuiDataGrid {\n /**\n * Fires when the mounted window changes, and once after the first render. Fetch the rows the\nwindow asks for here to page a grid from a server. Does not bubble.\n */\n suiViewport: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridViewportDetail>>;\n /**\n * Fires when the focused cell moves, by key or by pointer; detail is `{ row, col }`. Does not\nbubble.\n */\n suiCellFocus: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridCell>>;\n /**\n * Fires when a cell is activated with Enter or a double click; detail is `{ row, col }`.\n */\n suiCellActivate: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridCell>>;\n /**\n * Fires when a header click changes the sort; detail is the new ordered term list. Does not\nbubble.\n */\n suiSort: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridSort[]>>;\n /**\n * Fires when the selected range changes; detail is the number of cells now selected. Does not\nbubble.\n */\n suiRangeChange: EventEmitter<SuiDataGridCustomEvent<number>>;\n /**\n * Fires when an editor commits and the value actually changed, and again for each cell an undo\nor a redo puts back, with `source` set. Detail is a `SuiGridCellEditDetail`, the shape\n`sui-data-table` reports too: apply it to your own rows through `rowKey` or `sourceIndex`.\n */\n suiCellEdit: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridCellEditDetail>>;\n /**\n * Fires when the row selection changes; detail is the new `selection`. Under `mode: 'include'`\nits `keys` are the selected rows; under `mode: 'exclude'` every row is selected except its\n`keys`, so read the mode before treating `keys` as the selected rows. Does not bubble.\n */\n suiSelectionChange: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridRowSelection>>;\n /**\n * Fires after a column resize, reorder or toggle; detail is the whole `columnLayout`, ready to\npersist. Does not bubble.\n */\n suiColumnLayoutChange: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridLayout>>;\n /**\n * Fires after the filter row or the filter menu rewrites a rule; detail is the whole model.\nDoes not bubble.\n */\n suiFilter: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridFilterModel>>;\n /**\n * Fires on a right click or the context-menu key over a cell, after focus has moved there. The\ngrid suppresses the browser menu and opens nothing itself: what a menu should contain is the\nhost's business, and `sui-context-menu` is the element to open with it.\n */\n suiCellContextMenu: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridContextMenuDetail>>;\n /**\n * Fires when a cut takes the selection to the clipboard, after its `suiCopy`. The rectangle is\nreported and the rows are not written, exactly as with a fill or a paste: the host owns the\ndata.\n */\n suiCut: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridFillDetail>>;\n /**\n * Fires after a copy or a cut reaches the clipboard; detail is the copied text, the tab-separated\nrows another application reads, with a formula cell escaped unless `copyFormulas` is set.\n */\n suiCopy: EventEmitter<SuiDataGridCustomEvent<string>>;\n /**\n * Fires when the browser refused a copy or a cut, so nothing reached the clipboard and a cut\ncleared nothing; detail is the text that was not copied.\n */\n suiCopyError: EventEmitter<SuiDataGridCustomEvent<string>>;\n /**\n * Fires when the fill handle is released; detail carries the rectangle to write and the values\nthe series inference produced for it.\n */\n suiFill: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridFillDetail>>;\n /**\n * Fires when a block is pasted over the focused cell. The grid parses the clipboard and reports\nthe rectangle; writing it is the host's, since only the host knows whether the dataset may\ngrow.\n */\n suiPaste: EventEmitter<SuiDataGridCustomEvent<ISuiDataGridSuiGridPasteDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDataTable,\n inputs: ['bare', 'breakpoint', 'columnLayout', 'columns', 'density', 'editMode', 'emptyFilterMessage', 'emptyMessage', 'expandedRows', 'filterDisplay', 'filterModel', 'footerMeta', 'footerTotals', 'globalFilter', 'globalFilterFields', 'gridlines', 'groupBy', 'groupSummary', 'hideSelectionBar', 'lazy', 'loading', 'nullOrder', 'overscan', 'page', 'pageSize', 'reorderableColumns', 'rowDetail', 'rowKey', 'rowPartial', 'rowTree', 'rows', 'selection', 'selectionMode', 'showColumnToggle', 'sortIndicator', 'sortMode', 'sorts', 'stateKey', 'stateStorage', 'striped', 'totalRecords', 'viewHeight', 'virtual', 'virtualRowHeight'],\n methods: ['exportCsv', 'getViewWidth', 'setFocus', 'scrollToRow', 'setFilter']\n})\n@Component({\n selector: 'sui-data-table',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['bare', 'breakpoint', 'columnLayout', 'columns', 'density', 'editMode', 'emptyFilterMessage', 'emptyMessage', 'expandedRows', 'filterDisplay', 'filterModel', 'footerMeta', 'footerTotals', 'globalFilter', 'globalFilterFields', 'gridlines', 'groupBy', 'groupSummary', 'hideSelectionBar', 'lazy', 'loading', 'nullOrder', 'overscan', 'page', 'pageSize', 'reorderableColumns', 'rowDetail', 'rowKey', 'rowPartial', 'rowTree', 'rows', 'selection', 'selectionMode', 'showColumnToggle', 'sortIndicator', 'sortMode', 'sorts', 'stateKey', 'stateStorage', 'striped', 'totalRecords', 'viewHeight', 'virtual', 'virtualRowHeight'],\n outputs: ['suiSort', 'suiFilter', 'suiSelectionChange', 'suiRowClick', 'suiRowContextMenu', 'suiRowFocus', 'suiExpandedRowsChange', 'suiCellEdit', 'suiPageChange', 'suiPageSizeChange', 'suiColumnLayoutChange', 'suiViewWidthChange'],\n})\nexport class SuiDataTable {\n protected el: HTMLSuiDataTableElement;\n @Output() suiSort = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridSort[]>>();\n @Output() suiFilter = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridFilterModel>>();\n @Output() suiSelectionChange = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridRowSelection>>();\n @Output() suiRowClick = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiDataTableRowEventDetail>>();\n @Output() suiRowContextMenu = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiDataTableRowEventDetail>>();\n @Output() suiRowFocus = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiDataTableRowEventDetail>>();\n @Output() suiExpandedRowsChange = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiKey[]>>();\n @Output() suiCellEdit = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridCellEditDetail>>();\n @Output() suiPageChange = new EventEmitter<SuiDataTableCustomEvent<number>>();\n @Output() suiPageSizeChange = new EventEmitter<SuiDataTableCustomEvent<number>>();\n @Output() suiColumnLayoutChange = new EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridLayout>>();\n @Output() suiViewWidthChange = new EventEmitter<SuiDataTableCustomEvent<number>>();\n /** Emits the new `columnLayout` when the element changes it (`suiColumnLayoutChange`), so `[(columnLayout)]` binds both ways. */\n @Output() columnLayoutChange = propChange<SuiDataTableCustomEvent<ISuiDataTableSuiGridLayout>>(this, 'suiColumnLayoutChange');\n /** Emits the new `expandedRows` when the element changes it (`suiExpandedRowsChange`), so `[(expandedRows)]` binds both ways. */\n @Output() expandedRowsChange = propChange<SuiDataTableCustomEvent<ISuiDataTableSuiKey[]>>(this, 'suiExpandedRowsChange');\n /** Emits the new `page` when the element changes it (`suiPageChange`), so `[(page)]` binds both ways. */\n @Output() pageChange = propChange<SuiDataTableCustomEvent<number>>(this, 'suiPageChange');\n /** Emits the new `pageSize` when the element changes it (`suiPageSizeChange`), so `[(pageSize)]` binds both ways. */\n @Output() pageSizeChange = propChange<SuiDataTableCustomEvent<number>>(this, 'suiPageSizeChange');\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiDataTableCustomEvent<ISuiDataTableSuiGridRowSelection>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDataTableCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiGridSort as ISuiDataTableSuiGridSort } from '@shineuix/core/dist/components';\nimport type { SuiGridFilterModel as ISuiDataTableSuiGridFilterModel } from '@shineuix/core/dist/components';\nimport type { SuiGridRowSelection as ISuiDataTableSuiGridRowSelection } from '@shineuix/core/dist/components';\nimport type { SuiDataTableRowEventDetail as ISuiDataTableSuiDataTableRowEventDetail } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiDataTableSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiGridCellEditDetail as ISuiDataTableSuiGridCellEditDetail } from '@shineuix/core/dist/components';\nimport type { SuiGridLayout as ISuiDataTableSuiGridLayout } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDataTable extends Components.SuiDataTable {\n /**\n * Fires when a header click changes the sort; detail is the new ordered term list. Does not\nbubble.\n */\n suiSort: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridSort[]>>;\n /**\n * Fires when the filter row, the filter menu or the global term changes the filter; detail is\nthe whole model. Does not bubble.\n */\n suiFilter: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridFilterModel>>;\n /**\n * Fires when the selection changes; detail is the new `selection`. Under `mode: 'include'` its\n`keys` are the selected rows; under `mode: 'exclude'` every row is selected except its `keys`,\nwhich is how select-all reads over rows the page does not hold. Does not bubble.\n */\n suiSelectionChange: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridRowSelection>>;\n /**\n * Fires when a row is clicked or activated with Enter; detail is `{ row, key, index, x, y }`. A\nclick or Enter on a button, a link or a field drawn in a cell is that control's own, and does not\nfire this.\n */\n suiRowClick: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiDataTableRowEventDetail>>;\n /**\n * Fires on a right click over a row; detail carries the pointer position so a `sui-context-menu`\ncan open there. The browser's own menu is suppressed.\n */\n suiRowContextMenu: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiDataTableRowEventDetail>>;\n /**\n * Fires when a row, or a control inside it such as its checkbox, receives focus; detail is\n`{ row, key, index, x, y }` with `x` and `y` zero. Focus moving between a row and its own\ncontrols does not fire it again. A host opens a menu or runs a shortcut for the focused row\nfrom this rather than by reading a cell. Does not bubble.\n */\n suiRowFocus: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiDataTableRowEventDetail>>;\n /**\n * Fires when a row opens or closes; detail is the new `expandedRows`. Does not bubble.\n */\n suiExpandedRowsChange: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiKey[]>>;\n /**\n * Fires once per changed column when an edit commits. Detail is a `SuiGridCellEditDetail`, the shape\n`sui-data-grid` reports too: `{ data, rowKey, sourceIndex, rowIndex, columnKey, value,\nprevious }`. The table does not write the row, so apply the value through `rowKey` and hand\nback a new `rows` array.\n */\n suiCellEdit: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridCellEditDetail>>;\n /**\n * Fires when the page changes, by the paginator or by a page size that moved it; detail is the\nnew `page`. `pageSize` is already written, so a lazy host reads both here. Does not bubble.\n */\n suiPageChange: EventEmitter<SuiDataTableCustomEvent<number>>;\n /**\n * Fires when the paginator's rows-per-page control changes the page size; detail is the new\n`pageSize`. A page size that moves the page writes both props, then fires this and\n`suiPageChange`. Does not bubble.\n */\n suiPageSizeChange: EventEmitter<SuiDataTableCustomEvent<number>>;\n /**\n * Fires after a column resize, reorder or toggle; detail is the whole `columnLayout`. Does not\nbubble.\n */\n suiColumnLayoutChange: EventEmitter<SuiDataTableCustomEvent<ISuiDataTableSuiGridLayout>>;\n /**\n * Fires when the scroller's client width changes, the first measurement after load included;\ndetail is the width in px, what `getViewWidth()` answers. It comes through the table's own ResizeObserver, so it is at most one\nper frame, and a host that hides or sizes columns from it writes `columnLayout` in the frame the\nwidth changed, which the table already allows for. Does not bubble.\n */\n suiViewWidthChange: EventEmitter<SuiDataTableCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDataView,\n inputs: ['columns', 'emptyMessage', 'hideToggle', 'itemRender', 'items', 'layout', 'loading', 'page', 'pageSize', 'pageSizes', 'paginator', 'totalRecords'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-data-view',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columns', 'emptyMessage', 'hideToggle', 'itemRender', 'items', 'layout', 'loading', 'page', 'pageSize', 'pageSizes', 'paginator', 'totalRecords'],\n outputs: ['suiLayoutChange', 'suiPageChange', 'suiPageSizeChange'],\n})\nexport class SuiDataView {\n protected el: HTMLSuiDataViewElement;\n @Output() suiLayoutChange = new EventEmitter<SuiDataViewCustomEvent<ISuiDataViewSuiDataViewLayout>>();\n @Output() suiPageChange = new EventEmitter<SuiDataViewCustomEvent<number>>();\n @Output() suiPageSizeChange = new EventEmitter<SuiDataViewCustomEvent<number>>();\n /** Emits the new `layout` when the element changes it (`suiLayoutChange`), so `[(layout)]` binds both ways. */\n @Output() layoutChange = propChange<SuiDataViewCustomEvent<ISuiDataViewSuiDataViewLayout>>(this, 'suiLayoutChange');\n /** Emits the new `page` when the element changes it (`suiPageChange`), so `[(page)]` binds both ways. */\n @Output() pageChange = propChange<SuiDataViewCustomEvent<number>>(this, 'suiPageChange');\n /** Emits the new `pageSize` when the element changes it (`suiPageSizeChange`), so `[(pageSize)]` binds both ways. */\n @Output() pageSizeChange = propChange<SuiDataViewCustomEvent<number>>(this, 'suiPageSizeChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDataViewCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiDataViewLayout as ISuiDataViewSuiDataViewLayout } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDataView extends Components.SuiDataView {\n /**\n * Fires when the layout toggle changes; detail is `'grid' | 'list'`. Does not bubble.\n */\n suiLayoutChange: EventEmitter<SuiDataViewCustomEvent<ISuiDataViewSuiDataViewLayout>>;\n /**\n * Fires when the page changes, including a page the view clamps after the record count\nshrinks; detail is the new `page`. `pageSize` is already written, so a host that fetches one\npage at a time reads both here. Does not bubble.\n */\n suiPageChange: EventEmitter<SuiDataViewCustomEvent<number>>;\n /**\n * Fires when the paginator's rows-per-page control changes the page size; detail is the new\n`pageSize`. The view writes both props, then fires this and, when the page moved,\n`suiPageChange`. Does not bubble.\n */\n suiPageSizeChange: EventEmitter<SuiDataViewCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDatePicker,\n inputs: ['dateFormat', 'disabled', 'disabledDates', 'disabledDays', 'error', 'firstDayOfWeek', 'help', 'hourFormat', 'inline', 'invalid', 'label', 'locale', 'maxDate', 'maxTime', 'minDate', 'minTime', 'name', 'open', 'placeholder', 'presets', 'range', 'readOnly', 'required', 'showTime', 'size', 'timeStep', 'todayDate', 'tone', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-date-picker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dateFormat', 'disabled', 'disabledDates', 'disabledDays', 'error', 'firstDayOfWeek', 'help', 'hourFormat', 'inline', 'invalid', 'label', 'locale', 'maxDate', 'maxTime', 'minDate', 'minTime', 'name', 'open', 'placeholder', 'presets', 'range', 'readOnly', 'required', 'showTime', 'size', 'timeStep', 'todayDate', 'tone', 'value', 'variant'],\n outputs: ['suiChange', 'suiMonthChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiDatePicker {\n protected el: HTMLSuiDatePickerElement;\n @Output() suiChange = new EventEmitter<SuiDatePickerCustomEvent<string | string[]>>();\n @Output() suiMonthChange = new EventEmitter<SuiDatePickerCustomEvent<ISuiDatePickerSuiDateViewDetail>>();\n @Output() suiOpen = new EventEmitter<SuiDatePickerCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiDatePickerCustomEvent<ISuiDatePickerSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiDatePicker['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDatePickerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiDateViewDetail as ISuiDatePickerSuiDateViewDetail } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiDatePickerSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDatePicker extends Components.SuiDatePicker {\n /**\n * Fires when a date commits, by pick or by typed entry on Enter or blur; detail is the ISO string (`YYYY-MM-DDTHH:mm` with `showTime`; `\"\"` after clear or an entry that does not parse), or `[start, end]` ISO strings in range mode (`[]` after clear).\n */\n suiChange: EventEmitter<SuiDatePickerCustomEvent<string | string[]>>;\n /**\n * Fires when the calendar shows a different month, so a host can fetch that month's\navailability. Does not bubble: it reports the calendar's view, not the value.\n */\n suiMonthChange: EventEmitter<SuiDatePickerCustomEvent<ISuiDatePickerSuiDateViewDetail>>;\n /**\n * Fires after the element opens the panel itself. Does not bubble, so a dialog around the picker\nnever takes it for its own.\n */\n suiOpen: EventEmitter<SuiDatePickerCustomEvent<void>>;\n /**\n * Fires before the element closes the panel itself; detail is `'escape' | 'outside' | 'trigger' | 'pick'`.\nTab out of the calendar reports `'outside'`, because focus left the control.\nCancelable: `preventDefault()` keeps it open. Does not bubble: a `preventDefault()` in a dialog's\nown `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiDatePickerCustomEvent<ISuiDatePickerSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDescriptionList,\n inputs: ['align', 'columns', 'items', 'layout', 'termWidth']\n})\n@Component({\n selector: 'sui-description-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['align', 'columns', 'items', 'layout', 'termWidth'],\n outputs: ['suiCopy', 'suiCopyError'],\n})\nexport class SuiDescriptionList {\n protected el: HTMLSuiDescriptionListElement;\n @Output() suiCopy = new EventEmitter<SuiDescriptionListCustomEvent<string>>();\n @Output() suiCopyError = new EventEmitter<SuiDescriptionListCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDescriptionListCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDescriptionList extends Components.SuiDescriptionList {\n /**\n * Fires after a value reaches the clipboard, together with the short \"Copied\" state on the\ncontrol; detail is the copied text, as on every element that copies.\n */\n suiCopy: EventEmitter<SuiDescriptionListCustomEvent<string>>;\n /**\n * Fires when the write failed and no \"Copied\" state was shown; detail is the text that was not\ncopied.\n */\n suiCopyError: EventEmitter<SuiDescriptionListCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDialog,\n inputs: ['heading', 'hideClose', 'initialFocus', 'maximizable', 'maximized', 'movable', 'open', 'returnFocus', 'size', 'subtitle']\n})\n@Component({\n selector: 'sui-dialog',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['heading', 'hideClose', 'initialFocus', 'maximizable', 'maximized', 'movable', 'open', 'returnFocus', 'size', 'subtitle'],\n outputs: ['suiClose', 'suiMaximizedChange'],\n})\nexport class SuiDialog {\n protected el: HTMLSuiDialogElement;\n @Output() suiClose = new EventEmitter<SuiDialogCustomEvent<ISuiDialogSuiCloseReason>>();\n @Output() suiMaximizedChange = new EventEmitter<SuiDialogCustomEvent<boolean>>();\n /** Emits the new `maximized` when the element changes it (`suiMaximizedChange`), so `[(maximized)]` binds both ways. */\n @Output() maximizedChange = propChange<SuiDialogCustomEvent<boolean>>(this, 'suiMaximizedChange');\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiDialog['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDialogCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiDialogSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDialog extends Components.SuiDialog {\n /**\n * Fires before the dialog closes itself; detail is `'escape' | 'scrim' | 'close-button'`.\nCancelable: `preventDefault()` keeps it open. Refusing one reason, such as `scrim` while a\nform is dirty, leaves the others working; there is no prop for it. It does not bubble, so a\nlistener on the dialog never hears a select or a popover closing inside it.\n */\n suiClose: EventEmitter<SuiDialogCustomEvent<ISuiDialogSuiCloseReason>>;\n /**\n * Fires after the maximize control toggles `maximized`; detail is the new state. A host write\nto the prop does not echo it. Does not bubble.\n */\n suiMaximizedChange: EventEmitter<SuiDialogCustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDivider,\n inputs: ['dashed', 'height', 'label', 'orientation', 'spacing', 'strong']\n})\n@Component({\n selector: 'sui-divider',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dashed', 'height', 'label', 'orientation', 'spacing', 'strong'],\n})\nexport class SuiDivider {\n protected el: HTMLSuiDividerElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiDivider extends Components.SuiDivider {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDock,\n inputs: ['active', 'arc', 'collapsed', 'direction', 'items', 'noCollapse', 'orientation', 'position', 'radius'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-dock',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'arc', 'collapsed', 'direction', 'items', 'noCollapse', 'orientation', 'position', 'radius'],\n outputs: ['suiNavigate', 'suiActiveChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiDock {\n protected el: HTMLSuiDockElement;\n @Output() suiNavigate = new EventEmitter<SuiDockCustomEvent<string>>();\n @Output() suiActiveChange = new EventEmitter<SuiDockCustomEvent<string>>();\n @Output() suiOpen = new EventEmitter<SuiDockCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiDockCustomEvent<ISuiDockSuiCloseReason>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiDockCustomEvent<string>>(this, 'suiActiveChange');\n /** Emits `collapsed` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(collapsed)]` binds both ways. */\n @Output() collapsedChange = openStateChange<Components.SuiDock['collapsed']>(this, 'collapsed');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDockCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiDockSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDock extends Components.SuiDock {\n /**\n * Fires when a tile is activated; detail is the tile key, its own `key` or its label.\n */\n suiNavigate: EventEmitter<SuiDockCustomEvent<string>>;\n /**\n * Fires whenever the element writes `active`, a press on a tile that was not active, before\n`suiNavigate`; detail is the new `active`. Writing `active` from script emits nothing. Does\nnot bubble.\n */\n suiActiveChange: EventEmitter<SuiDockCustomEvent<string>>;\n /**\n * Fires after the dock expands itself. It does not bubble.\n */\n suiOpen: EventEmitter<SuiDockCustomEvent<void>>;\n /**\n * Fires before the dock collapses itself; detail is `'trigger'` (its own control is the only way\nit collapses). Cancelable: `preventDefault()` keeps the dock open. It does not bubble.\n */\n suiClose: EventEmitter<SuiDockCustomEvent<ISuiDockSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiDrawer,\n inputs: ['heading', 'height', 'initialFocus', 'open', 'position', 'returnFocus', 'subtitle', 'width']\n})\n@Component({\n selector: 'sui-drawer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['heading', 'height', 'initialFocus', 'open', 'position', 'returnFocus', 'subtitle', 'width'],\n outputs: ['suiClose'],\n})\nexport class SuiDrawer {\n protected el: HTMLSuiDrawerElement;\n @Output() suiClose = new EventEmitter<SuiDrawerCustomEvent<ISuiDrawerSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiDrawer['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiDrawerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiDrawerSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiDrawer extends Components.SuiDrawer {\n /**\n * Fires before the drawer closes itself; detail is `'escape' | 'scrim' | 'close-button'`.\nCancelable: `preventDefault()` keeps it open. Refusing one reason, such as `scrim` while a\nform is dirty, leaves the others working. The corner X is always there: unlike sui-dialog\nthere is no `hide-close`. It does not bubble, so a listener on the drawer never hears a select\nor a popover closing inside it.\n */\n suiClose: EventEmitter<SuiDrawerCustomEvent<ISuiDrawerSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiEditBox,\n inputs: ['disabled', 'error', 'help', 'html', 'invalid', 'label', 'minHeight', 'name', 'placeholder', 'readOnly', 'required', 'toolbar'],\n methods: ['edit', 'setFocus', 'save', 'cancel', 'exec']\n})\n@Component({\n selector: 'sui-edit-box',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'html', 'invalid', 'label', 'minHeight', 'name', 'placeholder', 'readOnly', 'required', 'toolbar'],\n outputs: ['suiSave', 'suiCancel'],\n})\nexport class SuiEditBox {\n protected el: HTMLSuiEditBoxElement;\n @Output() suiSave = new EventEmitter<SuiEditBoxCustomEvent<string>>();\n @Output() suiCancel = new EventEmitter<SuiEditBoxCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiEditBoxCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiEditBox extends Components.SuiEditBox {\n /**\n * Fires when Done commits an edit; detail is the serialized HTML.\n */\n suiSave: EventEmitter<SuiEditBoxCustomEvent<string>>;\n /**\n * Fires when an edit is discarded (Cancel or Escape).\n */\n suiCancel: EventEmitter<SuiEditBoxCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiEmptyState,\n inputs: ['bare', 'compact', 'description', 'heading', 'headingLevel', 'icon', 'variant']\n})\n@Component({\n selector: 'sui-empty-state',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['bare', 'compact', 'description', 'heading', 'headingLevel', 'icon', 'variant'],\n})\nexport class SuiEmptyState {\n protected el: HTMLSuiEmptyStateElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiEmptyState extends Components.SuiEmptyState {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFieldset,\n inputs: ['collapsed', 'collapsible', 'disabled', 'legend'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-fieldset',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['collapsed', 'collapsible', 'disabled', 'legend'],\n outputs: ['suiOpen', 'suiClose'],\n})\nexport class SuiFieldset {\n protected el: HTMLSuiFieldsetElement;\n @Output() suiOpen = new EventEmitter<SuiFieldsetCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiFieldsetCustomEvent<ISuiFieldsetSuiCloseReason>>();\n /** Emits `collapsed` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(collapsed)]` binds both ways. */\n @Output() collapsedChange = openStateChange<Components.SuiFieldset['collapsed']>(this, 'collapsed');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFieldsetCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiFieldsetSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiFieldset extends Components.SuiFieldset {\n /**\n * Fires after the legend expands the body. It does not bubble, as no open-state event does.\n */\n suiOpen: EventEmitter<SuiFieldsetCustomEvent<void>>;\n /**\n * Fires before the legend collapses the body; detail is `'trigger'` (the legend is the only way\nthis element closes itself). Cancelable: `preventDefault()` leaves the group open. A group of\nfields is the case that most needs the veto, because collapsing unmounts the body and takes\nthe user's typing with it. It does not bubble.\n */\n suiClose: EventEmitter<SuiFieldsetCustomEvent<ISuiFieldsetSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFileUpload,\n inputs: ['accept', 'compact', 'disabled', 'error', 'fileLimit', 'files', 'help', 'label', 'maxFileSize', 'multiple', 'name', 'required', 'url'],\n methods: ['showPicker', 'setFocus', 'upload']\n})\n@Component({\n selector: 'sui-file-upload',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accept', 'compact', 'disabled', 'error', 'fileLimit', 'files', 'help', 'label', 'maxFileSize', 'multiple', 'name', 'required', 'url'],\n outputs: ['suiSelect', 'suiRemove', 'suiReject', 'suiBeforeUpload', 'suiProgress', 'suiUpload', 'suiUploadError'],\n})\nexport class SuiFileUpload {\n protected el: HTMLSuiFileUploadElement;\n @Output() suiSelect = new EventEmitter<SuiFileUploadCustomEvent<File[]>>();\n @Output() suiRemove = new EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiFileRow>>();\n @Output() suiReject = new EventEmitter<SuiFileUploadCustomEvent<File[]>>();\n @Output() suiBeforeUpload = new EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadRequestDetail>>();\n @Output() suiProgress = new EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadProgressDetail>>();\n @Output() suiUpload = new EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadResultDetail>>();\n @Output() suiUploadError = new EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadResultDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFileUploadCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiFileRow as ISuiFileUploadSuiFileRow } from '@shineuix/core/dist/components';\nimport type { SuiUploadRequestDetail as ISuiFileUploadSuiUploadRequestDetail } from '@shineuix/core/dist/components';\nimport type { SuiUploadProgressDetail as ISuiFileUploadSuiUploadProgressDetail } from '@shineuix/core/dist/components';\nimport type { SuiUploadResultDetail as ISuiFileUploadSuiUploadResultDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiFileUpload extends Components.SuiFileUpload {\n /**\n * Fires when files are chosen or dropped and pass every rule; detail is the accepted native\n`File` objects. Fires in `url` mode too, before the requests go out.\n */\n suiSelect: EventEmitter<SuiFileUploadCustomEvent<File[]>>;\n /**\n * Fires when a row's remove control is used; detail is the removed row.\n */\n suiRemove: EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiFileRow>>;\n /**\n * Fires when `accept`, `multiple`, `maxFileSize` or `fileLimit` refuses files; detail is the\nrefused `File` objects. A refused file never enters the queue, so the host decides how to\nsay so.\n */\n suiReject: EventEmitter<SuiFileUploadCustomEvent<File[]>>;\n /**\n * Fires in `url` mode once per file, with the request open and unsent. Set headers on `xhr` or\nadd fields to `body`.\n */\n suiBeforeUpload: EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadRequestDetail>>;\n /**\n * Fires in `url` mode as a file goes up, at each whole percent. The row carries the same\nnumber, so listen only if something outside the queue shows it.\n */\n suiProgress: EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadProgressDetail>>;\n /**\n * Fires in `url` mode when a file lands, with the server's status and body text.\n */\n suiUpload: EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadResultDetail>>;\n /**\n * Fires in `url` mode when a file fails to upload. The row turns to error with a retry control;\n`status` is 0 when the request never reached the server.\n */\n suiUploadError: EventEmitter<SuiFileUploadCustomEvent<ISuiFileUploadSuiUploadResultDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFilterBuilder,\n inputs: ['columns', 'inline', 'label', 'maxDepth', 'open', 'size', 'target', 'value'],\n methods: ['setFocus', 'refresh']\n})\n@Component({\n selector: 'sui-filter-builder',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columns', 'inline', 'label', 'maxDepth', 'open', 'size', 'target', 'value'],\n outputs: ['suiChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiFilterBuilder {\n protected el: HTMLSuiFilterBuilderElement;\n @Output() suiChange = new EventEmitter<SuiFilterBuilderCustomEvent<ISuiFilterBuilderSuiGridFilterModel>>();\n @Output() suiOpen = new EventEmitter<SuiFilterBuilderCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiFilterBuilderCustomEvent<ISuiFilterBuilderSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiFilterBuilder['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFilterBuilderCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiGridFilterModel as ISuiFilterBuilderSuiGridFilterModel } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiFilterBuilderSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiFilterBuilder extends Components.SuiFilterBuilder {\n /**\n * Fires on Apply and on Clear all; detail is the whole filter model now applied.\n */\n suiChange: EventEmitter<SuiFilterBuilderCustomEvent<ISuiFilterBuilderSuiGridFilterModel>>;\n /**\n * Fires when the popover opens.\n */\n suiOpen: EventEmitter<SuiFilterBuilderCustomEvent<void>>;\n /**\n * Fires before the popover closes; detail is why. Cancel it to keep the popover open.\n */\n suiClose: EventEmitter<SuiFilterBuilderCustomEvent<ISuiFilterBuilderSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFilterPanel,\n inputs: ['filters', 'open', 'values'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-filter-panel',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['filters', 'open', 'values'],\n outputs: ['suiApply', 'suiChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiFilterPanel {\n protected el: HTMLSuiFilterPanelElement;\n @Output() suiApply = new EventEmitter<SuiFilterPanelCustomEvent<ISuiFilterPanelSuiFilterValues>>();\n @Output() suiChange = new EventEmitter<SuiFilterPanelCustomEvent<ISuiFilterPanelSuiFilterValues>>();\n @Output() suiOpen = new EventEmitter<SuiFilterPanelCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiFilterPanelCustomEvent<ISuiFilterPanelSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiFilterPanel['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFilterPanelCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiFilterValues as ISuiFilterPanelSuiFilterValues } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiFilterPanelSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiFilterPanel extends Components.SuiFilterPanel {\n /**\n * Fires on every apply, clear all and chip removal, whether or not anything changed; detail is the applied set.\n */\n suiApply: EventEmitter<SuiFilterPanelCustomEvent<ISuiFilterPanelSuiFilterValues>>;\n /**\n * Fires only when the applied set actually differs from before; detail is the applied set.\n */\n suiChange: EventEmitter<SuiFilterPanelCustomEvent<ISuiFilterPanelSuiFilterValues>>;\n /**\n * Fires after the panel opens itself. It does not bubble.\n */\n suiOpen: EventEmitter<SuiFilterPanelCustomEvent<void>>;\n /**\n * Fires before the panel closes itself; detail is `'trigger' | 'pick' | 'outside' | 'escape'`\n(`'pick'` is the close from \"Apply filters\"; `'escape'` also returns focus to the trigger;\n`'outside'` covers a pointer elsewhere and Tab past either end of the panel, which hands focus\nto the trigger first).\nCancelable: `preventDefault()` keeps it open. It does not bubble, so a listener on the\nfilter panel never hears a select closing inside it.\n */\n suiClose: EventEmitter<SuiFilterPanelCustomEvent<ISuiFilterPanelSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFloatLabel,\n inputs: ['autocomplete', 'disabled', 'error', 'help', 'invalid', 'label', 'maxLength', 'minLength', 'name', 'pattern', 'readOnly', 'required', 'type', 'value'],\n methods: ['select', 'setFocus']\n})\n@Component({\n selector: 'sui-float-label',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autocomplete', 'disabled', 'error', 'help', 'invalid', { name: 'label', required: true }, 'maxLength', 'minLength', 'name', 'pattern', 'readOnly', 'required', 'type', 'value'],\n outputs: ['suiInput', 'suiChange', 'suiFocus', 'suiBlur'],\n})\nexport class SuiFloatLabel {\n protected el: HTMLSuiFloatLabelElement;\n @Output() suiInput = new EventEmitter<SuiFloatLabelCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiFloatLabelCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiFloatLabelCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiFloatLabelCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFloatLabelCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiFloatLabel extends Components.SuiFloatLabel {\n /**\n * Fires on every keystroke; detail is the current value.\n */\n suiInput: EventEmitter<SuiFloatLabelCustomEvent<string>>;\n /**\n * Fires on commit (blur or Enter, native change); detail is the final value.\n */\n suiChange: EventEmitter<SuiFloatLabelCustomEvent<string>>;\n /**\n * Fires when the input takes focus, as the label floats up; no detail. The same pair is on every text field. Does not bubble.\n */\n suiFocus: EventEmitter<SuiFloatLabelCustomEvent<void>>;\n /**\n * Fires when the input loses focus; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiFloatLabelCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFluid,\n inputs: ['gap']\n})\n@Component({\n selector: 'sui-fluid',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['gap'],\n})\nexport class SuiFluid {\n protected el: HTMLSuiFluidElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiFluid extends Components.SuiFluid {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiForm,\n inputs: ['noFocusOnInvalid', 'novalidate', 'resolver', 'validateOn'],\n methods: ['validate', 'clearErrors']\n})\n@Component({\n selector: 'sui-form',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['noFocusOnInvalid', 'novalidate', 'resolver', 'validateOn'],\n outputs: ['suiSubmit', 'suiInvalid'],\n})\nexport class SuiForm {\n protected el: HTMLSuiFormElement;\n @Output() suiSubmit = new EventEmitter<SuiFormCustomEvent<FormData>>();\n @Output() suiInvalid = new EventEmitter<SuiFormCustomEvent<ISuiFormSuiFormErrors>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFormCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiFormErrors as ISuiFormSuiFormErrors } from '@shineuix/core/dist/components';\n\nexport declare interface SuiForm extends Components.SuiForm {\n /**\n * Fires with the `FormData` once the form is valid. Cancelable: call `preventDefault()` in every\nhandler that sends the data itself, because without it the native form submits and the page\nnavigates to its `action`, the way a plain form does; that is the usual case for a fetch.\n */\n suiSubmit: EventEmitter<SuiFormCustomEvent<FormData>>;\n /**\n * Fires when a submit was refused, with the messages keyed by control name: the browser's own\nmessage for each control that fails its constraints (`required` and the rest), or the resolver's\nwhen the native pass is clean. Each named message is also written to that control's `error` prop\nand cleared on the next submit; a bare native control keeps the browser's bubble instead. A\nmessage under the empty-string key is form-level and belongs to no single control.\n */\n suiInvalid: EventEmitter<SuiFormCustomEvent<ISuiFormSuiFormErrors>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFormActions,\n inputs: ['form', 'hideSecondary', 'primaryDisabled', 'primaryLabel', 'primaryLoading', 'primaryType', 'secondaryLabel', 'secondaryType', 'sticky']\n})\n@Component({\n selector: 'sui-form-actions',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['form', 'hideSecondary', 'primaryDisabled', 'primaryLabel', 'primaryLoading', 'primaryType', 'secondaryLabel', 'secondaryType', 'sticky'],\n outputs: ['suiPrimary', 'suiSecondary'],\n})\nexport class SuiFormActions {\n protected el: HTMLSuiFormActionsElement;\n @Output() suiPrimary = new EventEmitter<SuiFormActionsCustomEvent<void>>();\n @Output() suiSecondary = new EventEmitter<SuiFormActionsCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiFormActionsCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiFormActions extends Components.SuiFormActions {\n /**\n * Fires when the primary button is clicked, even when the browser then refuses the submit as\ninvalid. Listen to the form's own `submit` event for the validated path.\n */\n suiPrimary: EventEmitter<SuiFormActionsCustomEvent<void>>;\n /**\n * Fires when the secondary button is clicked.\n */\n suiSecondary: EventEmitter<SuiFormActionsCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiFormLayout,\n inputs: ['columns', 'heading', 'subtitle']\n})\n@Component({\n selector: 'sui-form-layout',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columns', 'heading', 'subtitle'],\n})\nexport class SuiFormLayout {\n protected el: HTMLSuiFormLayoutElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiFormLayout extends Components.SuiFormLayout {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiGalleria,\n inputs: ['autoplay', 'circular', 'fullScreen', 'height', 'hideArrows', 'index', 'items', 'open'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-galleria',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autoplay', 'circular', 'fullScreen', 'height', 'hideArrows', 'index', 'items', 'open'],\n outputs: ['suiIndexChange', 'suiOpen', 'suiClose', 'suiError'],\n})\nexport class SuiGalleria {\n protected el: HTMLSuiGalleriaElement;\n @Output() suiIndexChange = new EventEmitter<SuiGalleriaCustomEvent<number>>();\n @Output() suiOpen = new EventEmitter<SuiGalleriaCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiGalleriaCustomEvent<ISuiGalleriaSuiCloseReason>>();\n @Output() suiError = new EventEmitter<SuiGalleriaCustomEvent<string>>();\n /** Emits the new `index` when the element changes it (`suiIndexChange`), so `[(index)]` binds both ways. */\n @Output() indexChange = propChange<SuiGalleriaCustomEvent<number>>(this, 'suiIndexChange');\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiGalleria['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiGalleriaCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiGalleriaSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiGalleria extends Components.SuiGalleria {\n /**\n * Fires after navigation by the user or by autoplay; detail is the new index. Does not\nbubble.\n */\n suiIndexChange: EventEmitter<SuiGalleriaCustomEvent<number>>;\n /**\n * Fires when the user opens the full-screen viewer. It does not bubble.\n */\n suiOpen: EventEmitter<SuiGalleriaCustomEvent<void>>;\n /**\n * Fires before the full-screen viewer closes itself; detail is `'escape' | 'scrim' | 'close-button'`.\nCancelable: `preventDefault()` keeps it open. It does not bubble.\n\nThe corner X is always there: unlike sui-dialog there is no `hide-close`, and that is a\ndecision rather than a gap. A dialog may force a choice and a message may be permanent, so\nthose two let the page leave the control out (`hide-close`, and `closable` left unset).\nThis is a full-screen viewer over the whole page, so a copy of it with no visible way out is\na trap and not a configuration. Cancel the event instead if a close has to be refused.\n */\n suiClose: EventEmitter<SuiGalleriaCustomEvent<ISuiGalleriaSuiCloseReason>>;\n /**\n * Fires when a picture fails to load, once per source; detail is the source that failed. The\npicture's place shows the image glyph and \"Image unavailable\" on the frame's well, and a failed\nthumbnail the glyph alone, as `sui-image` draws its own. Does not bubble.\n */\n suiError: EventEmitter<SuiGalleriaCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiIconButton,\n inputs: ['disabled', 'form', 'href', 'icon', 'loading', 'name', 'noTabStop', 'noTooltip', 'pill', 'rel', 'size', 'target', 'tone', 'type', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-icon-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'form', 'href', 'icon', 'loading', 'name', 'noTabStop', 'noTooltip', 'pill', 'rel', 'size', 'target', 'tone', 'type', 'value', 'variant'],\n})\nexport class SuiIconButton {\n protected el: HTMLSuiIconButtonElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiIconButton extends Components.SuiIconButton {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiIconField,\n inputs: ['autocomplete', 'clearable', 'disabled', 'endIcon', 'error', 'help', 'icon', 'invalid', 'label', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'size', 'type', 'value', 'width'],\n methods: ['select', 'setFocus']\n})\n@Component({\n selector: 'sui-icon-field',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autocomplete', 'clearable', 'disabled', 'endIcon', 'error', 'help', 'icon', 'invalid', 'label', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'size', 'type', 'value', 'width'],\n outputs: ['suiInput', 'suiChange', 'suiClear', 'suiFocus', 'suiBlur'],\n})\nexport class SuiIconField {\n protected el: HTMLSuiIconFieldElement;\n @Output() suiInput = new EventEmitter<SuiIconFieldCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiIconFieldCustomEvent<string>>();\n @Output() suiClear = new EventEmitter<SuiIconFieldCustomEvent<void>>();\n @Output() suiFocus = new EventEmitter<SuiIconFieldCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiIconFieldCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiIconFieldCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiIconField extends Components.SuiIconField {\n /**\n * Fires on every keystroke; detail is the current value.\n */\n suiInput: EventEmitter<SuiIconFieldCustomEvent<string>>;\n /**\n * Fires on commit (blur or Enter, native change) and after a clear; detail is the value.\n */\n suiChange: EventEmitter<SuiIconFieldCustomEvent<string>>;\n /**\n * Fires when the clear control empties the field.\n */\n suiClear: EventEmitter<SuiIconFieldCustomEvent<void>>;\n /**\n * Fires when the input takes focus, so a host can arm a launcher or a shortcut hint without\nlistening for the native `focusin` on the element. Does not bubble.\n */\n suiFocus: EventEmitter<SuiIconFieldCustomEvent<void>>;\n /**\n * Fires when the input loses focus, to the clear control and the end slot included. Does not bubble.\n */\n suiBlur: EventEmitter<SuiIconFieldCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiIftaLabel,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'type', 'value'],\n methods: ['select', 'setFocus']\n})\n@Component({\n selector: 'sui-ifta-label',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', { name: 'label', required: true }, 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'type', 'value'],\n outputs: ['suiInput', 'suiChange', 'suiFocus', 'suiBlur'],\n})\nexport class SuiIftaLabel {\n protected el: HTMLSuiIftaLabelElement;\n @Output() suiInput = new EventEmitter<SuiIftaLabelCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiIftaLabelCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiIftaLabelCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiIftaLabelCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiIftaLabelCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiIftaLabel extends Components.SuiIftaLabel {\n /**\n * Fires on every keystroke; detail is the current value.\n */\n suiInput: EventEmitter<SuiIftaLabelCustomEvent<string>>;\n /**\n * Fires on commit (blur or Enter, native change); detail is the final value.\n */\n suiChange: EventEmitter<SuiIftaLabelCustomEvent<string>>;\n /**\n * Fires when the input takes focus; no detail. The same pair is on every text field. Does not bubble.\n */\n suiFocus: EventEmitter<SuiIftaLabelCustomEvent<void>>;\n /**\n * Fires when the input loses focus; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiIftaLabelCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiImage,\n inputs: ['alt', 'caption', 'fit', 'height', 'loading', 'noPreview', 'open', 'previewSrc', 'radius', 'src', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-image',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['alt', 'caption', 'fit', 'height', 'loading', 'noPreview', 'open', 'previewSrc', 'radius', { name: 'src', required: true }, 'width'],\n outputs: ['suiOpen', 'suiClose', 'suiError'],\n})\nexport class SuiImage {\n protected el: HTMLSuiImageElement;\n @Output() suiOpen = new EventEmitter<SuiImageCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiImageCustomEvent<ISuiImageSuiCloseReason>>();\n @Output() suiError = new EventEmitter<SuiImageCustomEvent<string>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiImage['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiImageCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiImageSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiImage extends Components.SuiImage {\n /**\n * Fires when the user opens the lightbox. It does not bubble.\n */\n suiOpen: EventEmitter<SuiImageCustomEvent<void>>;\n /**\n * Fires before the lightbox closes itself; detail is `'escape' | 'scrim' | 'close-button'`, or\n`'cancel'` when the source failed while the preview was open.\nCancelable: `preventDefault()` keeps it open. It does not bubble.\n\nThe corner X is always there: unlike sui-dialog there is no `hide-close`, and that is a\ndecision rather than a gap. A dialog may force a choice and a message may be permanent, so\nthose two let the page leave the control out (`hide-close`, and `closable` left unset).\nA lightbox covers the page, so a copy of it with no visible way out is a trap and not a\nconfiguration. Cancel the event instead if a close has to be refused.\n */\n suiClose: EventEmitter<SuiImageCustomEvent<ISuiImageSuiCloseReason>>;\n /**\n * Fires when `src` or `previewSrc` fails to load; detail is the source that failed. A failed\n`src` is replaced by the `error` slot, or, with nothing in it, by the image glyph and \"Image\nunavailable\" on the frame's well, as the galleria and the image compare draw theirs. Either\nfailure leaves the frame a plain picture rather than a preview button, because there is nothing\nto enlarge. Does not bubble.\n */\n suiError: EventEmitter<SuiImageCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiImageCompare,\n inputs: ['afterAlt', 'afterLabel', 'afterSrc', 'beforeAlt', 'beforeFilter', 'beforeLabel', 'beforeSrc', 'height', 'ratio'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-image-compare',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['afterAlt', 'afterLabel', 'afterSrc', 'beforeAlt', 'beforeFilter', 'beforeLabel', { name: 'beforeSrc', required: true }, 'height', 'ratio'],\n outputs: ['suiResize', 'suiResizeEnd', 'suiError'],\n})\nexport class SuiImageCompare {\n protected el: HTMLSuiImageCompareElement;\n @Output() suiResize = new EventEmitter<SuiImageCompareCustomEvent<number>>();\n @Output() suiResizeEnd = new EventEmitter<SuiImageCompareCustomEvent<number>>();\n @Output() suiError = new EventEmitter<SuiImageCompareCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiImageCompareCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiImageCompare extends Components.SuiImageCompare {\n /**\n * Fires while the divider moves (every drag step and every key press); detail is the new ratio\n(0.04..0.96). The pair is `sui-splitter`'s for the same ratio: a state report, not a field's\nvalue. Does not bubble.\n */\n suiResize: EventEmitter<SuiImageCompareCustomEvent<number>>;\n /**\n * Fires when a move commits: on pointer release, or straight away on a key press. Detail is the\nratio (0.04..0.96). Do the expensive work here. Does not bubble.\n */\n suiResizeEnd: EventEmitter<SuiImageCompareCustomEvent<number>>;\n /**\n * Fires when the before or the after picture fails to load, once per source; detail is the\nsource. With either lost there is nothing to compare, so the frame shows the image glyph and a\nquiet line and drops its divider and labels. Does not bubble.\n */\n suiError: EventEmitter<SuiImageCompareCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInplace,\n inputs: ['disabled', 'editing', 'label', 'name', 'placeholder', 'readOnly', 'value'],\n methods: ['edit', 'setFocus']\n})\n@Component({\n selector: 'sui-inplace',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'editing', 'label', 'name', 'placeholder', 'readOnly', 'value'],\n outputs: ['suiInput', 'suiSave', 'suiOpen', 'suiClose'],\n})\nexport class SuiInplace {\n protected el: HTMLSuiInplaceElement;\n @Output() suiInput = new EventEmitter<SuiInplaceCustomEvent<string>>();\n @Output() suiSave = new EventEmitter<SuiInplaceCustomEvent<string>>();\n @Output() suiOpen = new EventEmitter<SuiInplaceCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiInplaceCustomEvent<ISuiInplaceSuiCloseReason>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInplaceCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiInplaceSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInplace extends Components.SuiInplace {\n /**\n * Fires on every keystroke while editing; detail is the live value.\n */\n suiInput: EventEmitter<SuiInplaceCustomEvent<string>>;\n /**\n * Fires when an edit commits (Enter or blur); detail is the saved value. Emitted after the\nmatching `suiClose('pick')` is accepted.\n */\n suiSave: EventEmitter<SuiInplaceCustomEvent<string>>;\n /**\n * Fires after the element enters edit mode itself (a click, Enter or Space, or `edit()`). It\ndoes not bubble, as no open-state event does.\n */\n suiOpen: EventEmitter<SuiInplaceCustomEvent<void>>;\n /**\n * Fires before the element leaves edit mode itself; detail is `'pick'` for a commit and\n`'escape'` for an abandoned edit. Cancelable: `preventDefault()` keeps the editor open and\nrefocuses it, which is how a parent holds a failed validation on screen. It does not bubble.\n */\n suiClose: EventEmitter<SuiInplaceCustomEvent<ISuiInplaceSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputGroup,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'required', 'size']\n})\n@Component({\n selector: 'sui-input-group',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'required', 'size'],\n outputs: ['suiFocus', 'suiBlur'],\n})\nexport class SuiInputGroup {\n protected el: HTMLSuiInputGroupElement;\n @Output() suiFocus = new EventEmitter<SuiInputGroupCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiInputGroupCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInputGroupCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInputGroup extends Components.SuiInputGroup {\n /**\n * Fires when a control in the group takes focus, as the group paints its focus border; no\ndetail. The same pair is on every text field. Focus coming back to a control from the list or\ncalendar it opened is not a new focus. Does not bubble.\n */\n suiFocus: EventEmitter<SuiInputGroupCustomEvent<void>>;\n /**\n * Fires when a control in the group loses focus, a move to the next control in the group\nincluded; no detail. Focus moving into the list or calendar a control opened is not a blur,\nwherever that panel sits: the group keeps its focus border, and fires once focus has left the\ncontrol and its panel. Does not bubble.\n */\n suiBlur: EventEmitter<SuiInputGroupCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputGroupAddon\n})\n@Component({\n selector: 'sui-input-group-addon',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: [],\n})\nexport class SuiInputGroupAddon {\n protected el: HTMLSuiInputGroupAddonElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiInputGroupAddon extends Components.SuiInputGroupAddon {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputMask,\n inputs: ['autoClear', 'autocomplete', 'concealed', 'disabled', 'error', 'help', 'hideLabel', 'invalid', 'label', 'mask', 'name', 'placeholder', 'readOnly', 'required', 'showLabel', 'size', 'unmask', 'value'],\n methods: ['select', 'setFocus', 'getUnmasked']\n})\n@Component({\n selector: 'sui-input-mask',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autoClear', 'autocomplete', 'concealed', 'disabled', 'error', 'help', 'hideLabel', 'invalid', 'label', 'mask', 'name', 'placeholder', 'readOnly', 'required', 'showLabel', 'size', 'unmask', 'value'],\n outputs: ['suiInput', 'suiChange', 'suiComplete', 'suiFocus', 'suiBlur'],\n})\nexport class SuiInputMask {\n protected el: HTMLSuiInputMaskElement;\n @Output() suiInput = new EventEmitter<SuiInputMaskCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiInputMaskCustomEvent<string>>();\n @Output() suiComplete = new EventEmitter<SuiInputMaskCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiInputMaskCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiInputMaskCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInputMaskCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInputMask extends Components.SuiInputMask {\n /**\n * Fires on every keystroke; detail is the formatted value.\n */\n suiInput: EventEmitter<SuiInputMaskCustomEvent<string>>;\n /**\n * Fires on commit (blur or Enter, native change); detail is the formatted value.\n */\n suiChange: EventEmitter<SuiInputMaskCustomEvent<string>>;\n /**\n * Fires once when the required slots fill: every slot, or those before a `?`. Detail is the formatted value.\n */\n suiComplete: EventEmitter<SuiInputMaskCustomEvent<string>>;\n /**\n * Fires when the input takes focus; no detail. The same pair is on every text field. Does not bubble.\n */\n suiFocus: EventEmitter<SuiInputMaskCustomEvent<void>>;\n /**\n * Fires when the input loses focus; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiInputMaskCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputNumber,\n inputs: ['align', 'autocomplete', 'currency', 'decimals', 'disabled', 'error', 'help', 'hideButtons', 'invalid', 'label', 'locale', 'max', 'min', 'money', 'name', 'placeholder', 'prefixText', 'readOnly', 'required', 'size', 'step', 'suffixText', 'tone', 'value', 'variant'],\n methods: ['select', 'setFocus']\n})\n@Component({\n selector: 'sui-input-number',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['align', 'autocomplete', 'currency', 'decimals', 'disabled', 'error', 'help', 'hideButtons', 'invalid', 'label', 'locale', 'max', 'min', 'money', 'name', 'placeholder', 'prefixText', 'readOnly', 'required', 'size', 'step', 'suffixText', 'tone', 'value', 'variant'],\n outputs: ['suiChange', 'suiInput', 'suiFocus', 'suiBlur'],\n})\nexport class SuiInputNumber {\n protected el: HTMLSuiInputNumberElement;\n @Output() suiChange = new EventEmitter<SuiInputNumberCustomEvent<number | null>>();\n @Output() suiInput = new EventEmitter<SuiInputNumberCustomEvent<number | null>>();\n @Output() suiFocus = new EventEmitter<SuiInputNumberCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiInputNumberCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInputNumberCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInputNumber extends Components.SuiInputNumber {\n /**\n * Fires on commit (blur, Enter, arrows, stepper); detail is the committed number or `null`.\n */\n suiChange: EventEmitter<SuiInputNumberCustomEvent<number | null>>;\n /**\n * Fires on every keystroke; detail is the parsed, unclamped number, or `null` while the text\ndoes not parse: an empty field, or a lone `-` or `.`.\n */\n suiInput: EventEmitter<SuiInputNumberCustomEvent<number | null>>;\n /**\n * Fires when the input takes focus; no detail. Every text field carries the same pair, so a\nhost arms a hint or a launcher the same way on each without listening for the native `focusin`. Does not bubble.\n */\n suiFocus: EventEmitter<SuiInputNumberCustomEvent<void>>;\n /**\n * Fires when the input loses focus; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiInputNumberCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputOtp,\n inputs: ['alphanumeric', 'disabled', 'error', 'help', 'invalid', 'label', 'length', 'masked', 'name', 'readOnly', 'required', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-input-otp',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['alphanumeric', 'disabled', 'error', 'help', 'invalid', 'label', 'length', 'masked', 'name', 'readOnly', 'required', 'size', 'value'],\n outputs: ['suiInput', 'suiChange', 'suiComplete', 'suiFocus', 'suiBlur'],\n})\nexport class SuiInputOtp {\n protected el: HTMLSuiInputOtpElement;\n @Output() suiInput = new EventEmitter<SuiInputOtpCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiInputOtpCustomEvent<string>>();\n @Output() suiComplete = new EventEmitter<SuiInputOtpCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiInputOtpCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiInputOtpCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInputOtpCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInputOtp extends Components.SuiInputOtp {\n /**\n * Fires on every edit; detail is the code typed so far.\n */\n suiInput: EventEmitter<SuiInputOtpCustomEvent<string>>;\n /**\n * Fires on commit (Enter, or focus leaving the boxes after an edit); detail is the code. The\nsplit matches `sui-input-text` and `sui-input-mask`, so a host that saves on `suiChange`\nsaves once, not once per character.\n */\n suiChange: EventEmitter<SuiInputOtpCustomEvent<string>>;\n /**\n * Fires when every box is filled; detail is the full code.\n */\n suiComplete: EventEmitter<SuiInputOtpCustomEvent<string>>;\n /**\n * Fires when focus enters the boxes from outside them; no detail. A move from one box to the\nnext fires nothing, so the boxes read as one field, the way `suiChange` treats them. Does not bubble.\n */\n suiFocus: EventEmitter<SuiInputOtpCustomEvent<void>>;\n /**\n * Fires when focus leaves the boxes, after the `suiChange` an edit owes; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiInputOtpCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputTags,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'max', 'name', 'placeholder', 'readOnly', 'required', 'separator', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-input-tags',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'max', 'name', 'placeholder', 'readOnly', 'required', 'separator', 'size', 'value'],\n outputs: ['suiChange', 'suiInput', 'suiFocus', 'suiBlur'],\n})\nexport class SuiInputTags {\n protected el: HTMLSuiInputTagsElement;\n @Output() suiChange = new EventEmitter<SuiInputTagsCustomEvent<ISuiInputTagsSuiInputTagsValue[]>>();\n @Output() suiInput = new EventEmitter<SuiInputTagsCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiInputTagsCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiInputTagsCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInputTagsCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiInputTagsValue as ISuiInputTagsSuiInputTagsValue } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInputTags extends Components.SuiInputTags {\n /**\n * Fires when a chip is added or removed; detail is the new `value`, the full array in the shape\nit was given (strings, tags, or both).\n */\n suiChange: EventEmitter<SuiInputTagsCustomEvent<ISuiInputTagsSuiInputTagsValue[]>>;\n /**\n * Fires when the pending text changes: on each keystroke, and with the remainder after a\ncommit. Does not fire when a chip is removed.\n */\n suiInput: EventEmitter<SuiInputTagsCustomEvent<string>>;\n /**\n * Fires when the entry box takes focus; no detail. The same pair is on every text field. Does not bubble.\n */\n suiFocus: EventEmitter<SuiInputTagsCustomEvent<void>>;\n /**\n * Fires when the entry box loses focus, a move to a chip's remove control included, after the\npending text is committed; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiInputTagsCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiInputText,\n inputs: ['autocomplete', 'disabled', 'error', 'help', 'invalid', 'label', 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'size', 'type', 'value'],\n methods: ['setFocus', 'select']\n})\n@Component({\n selector: 'sui-input-text',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autocomplete', 'disabled', 'error', 'help', 'invalid', 'label', 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'size', 'type', 'value'],\n outputs: ['suiInput', 'suiChange', 'suiFocus', 'suiBlur'],\n})\nexport class SuiInputText {\n protected el: HTMLSuiInputTextElement;\n @Output() suiInput = new EventEmitter<SuiInputTextCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiInputTextCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiInputTextCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiInputTextCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiInputTextCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiInputText extends Components.SuiInputText {\n /**\n * Fires on every keystroke; detail is the current value.\n */\n suiInput: EventEmitter<SuiInputTextCustomEvent<string>>;\n /**\n * Fires on commit (blur or Enter, native change); detail is the final value.\n */\n suiChange: EventEmitter<SuiInputTextCustomEvent<string>>;\n /**\n * Fires when the input takes focus; no detail. Every text field carries the same pair, so a\nhost arms a hint or a launcher the same way on each without listening for the native `focusin`. Does not bubble.\n */\n suiFocus: EventEmitter<SuiInputTextCustomEvent<void>>;\n /**\n * Fires when the input loses focus; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiInputTextCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiKbd,\n inputs: ['quiet', 'size', 'tone']\n})\n@Component({\n selector: 'sui-kbd',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['quiet', 'size', 'tone'],\n})\nexport class SuiKbd {\n protected el: HTMLSuiKbdElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiKbd extends Components.SuiKbd {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiKnob,\n inputs: ['diameter', 'disabled', 'error', 'format', 'help', 'label', 'max', 'min', 'name', 'readOnly', 'required', 'step', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-knob',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['diameter', 'disabled', 'error', 'format', 'help', 'label', 'max', 'min', 'name', 'readOnly', 'required', 'step', 'value'],\n outputs: ['suiInput', 'suiChange'],\n})\nexport class SuiKnob {\n protected el: HTMLSuiKnobElement;\n @Output() suiInput = new EventEmitter<SuiKnobCustomEvent<number>>();\n @Output() suiChange = new EventEmitter<SuiKnobCustomEvent<number>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiKnobCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiKnob extends Components.SuiKnob {\n /**\n * Fires continuously while dragging; detail is the value.\n */\n suiInput: EventEmitter<SuiKnobCustomEvent<number>>;\n /**\n * Fires when a drag ends or a keyboard step lands; detail is the value.\n */\n suiChange: EventEmitter<SuiKnobCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiList,\n inputs: ['density', 'emptyFilterMessage', 'emptyMessage', 'filter', 'filterPlaceholder', 'itemRender', 'items', 'loading', 'maxHeight', 'selection', 'wrap'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['density', 'emptyFilterMessage', 'emptyMessage', 'filter', 'filterPlaceholder', 'itemRender', 'items', 'loading', 'maxHeight', 'selection', 'wrap'],\n outputs: ['suiItemPick', 'suiSelectionChange'],\n})\nexport class SuiList {\n protected el: HTMLSuiListElement;\n @Output() suiItemPick = new EventEmitter<SuiListCustomEvent<ISuiListSuiListItemPickDetail>>();\n @Output() suiSelectionChange = new EventEmitter<SuiListCustomEvent<ISuiListSuiKey | undefined>>();\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiListCustomEvent<ISuiListSuiKey | undefined>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiListCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiListItemPickDetail as ISuiListSuiListItemPickDetail } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiListSuiKey } from '@shineuix/core/dist/components';\n\nexport declare interface SuiList extends Components.SuiList {\n /**\n * Fires when a row is picked by click, Enter or Space; detail is `{ id, item }`. It fires on\nevery pick, so picking the selected row again reports again. On a linked row it fires on the\nclick, before the browser follows the `href`; on a `command` row it fires once and writes\nnothing, since the host is about to navigate.\n */\n suiItemPick: EventEmitter<SuiListCustomEvent<ISuiListSuiListItemPickDetail>>;\n /**\n * Fires when a pick changes `selection`, before `suiItemPick`; detail is the new\n`selection`. A command row and a second pick of the selected row leave it unchanged and do\nnot fire it. Does not bubble.\n */\n suiSelectionChange: EventEmitter<SuiListCustomEvent<ISuiListSuiKey | undefined>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiListbox,\n inputs: ['disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'filter', 'height', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'multiple', 'name', 'options', 'readOnly', 'required', 'value', 'virtualScrollThreshold'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-listbox',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'filter', 'height', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'multiple', 'name', 'options', 'readOnly', 'required', 'value', 'virtualScrollThreshold'],\n outputs: ['suiChange'],\n})\nexport class SuiListbox {\n protected el: HTMLSuiListboxElement;\n @Output() suiChange = new EventEmitter<SuiListboxCustomEvent<ISuiListboxSuiChoiceValue>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiListboxCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChoiceValue as ISuiListboxSuiChoiceValue } from '@shineuix/core/dist/components';\n\nexport declare interface SuiListbox extends Components.SuiListbox {\n /**\n * Fires when the selection changes; detail is the new `value`: the picked option's value, or\nthe array of picked values when `multiple`.\n */\n suiChange: EventEmitter<SuiListboxCustomEvent<ISuiListboxSuiChoiceValue>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMegaMenu,\n inputs: ['items', 'noFold', 'openIndex', 'orientation'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-mega-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['items', 'noFold', 'openIndex', 'orientation'],\n outputs: ['suiPick', 'suiOpen', 'suiClose'],\n})\nexport class SuiMegaMenu {\n protected el: HTMLSuiMegaMenuElement;\n @Output() suiPick = new EventEmitter<SuiMegaMenuCustomEvent<ISuiMegaMenuSuiMegaMenuLink>>();\n @Output() suiOpen = new EventEmitter<SuiMegaMenuCustomEvent<number>>();\n @Output() suiClose = new EventEmitter<SuiMegaMenuCustomEvent<ISuiMegaMenuSuiCloseReason>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiMegaMenuCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiMegaMenuLink as ISuiMegaMenuSuiMegaMenuLink } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiMegaMenuSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiMegaMenu extends Components.SuiMegaMenu {\n /**\n * Fires when a panel link, or a top item without a panel, is picked; detail is the link. `command()` also runs.\n */\n suiPick: EventEmitter<SuiMegaMenuCustomEvent<ISuiMegaMenuSuiMegaMenuLink>>;\n /**\n * Fires after the element opens a panel; detail is the top-item index it opened, or\n`items.length` for More. It does not bubble.\n */\n suiOpen: EventEmitter<SuiMegaMenuCustomEvent<number>>;\n /**\n * Fires before the element closes the open panel; detail is `'trigger' | 'outside' | 'escape' | 'pick'`.\nCancelable: `preventDefault()` keeps it open (and cancels a switch to another panel). It\ndoes not bubble.\n */\n suiClose: EventEmitter<SuiMegaMenuCustomEvent<ISuiMegaMenuSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMenu,\n inputs: ['items', 'variant', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['items', 'variant', 'width'],\n outputs: ['suiPick'],\n})\nexport class SuiMenu {\n protected el: HTMLSuiMenuElement;\n @Output() suiPick = new EventEmitter<SuiMenuCustomEvent<ISuiMenuSuiMenuItem>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiMenuCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiMenuItem as ISuiMenuSuiMenuItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiMenu extends Components.SuiMenu {\n /**\n * Fires when an enabled row is picked; detail is the item. `item.command()` also runs. On a\nlink row both happen on the click, before the browser follows the `href`.\n */\n suiPick: EventEmitter<SuiMenuCustomEvent<ISuiMenuSuiMenuItem>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMenubar,\n inputs: ['items', 'noFold', 'openIndex'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-menubar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['items', 'noFold', 'openIndex'],\n outputs: ['suiPick', 'suiOpen', 'suiClose'],\n})\nexport class SuiMenubar {\n protected el: HTMLSuiMenubarElement;\n @Output() suiPick = new EventEmitter<SuiMenubarCustomEvent<ISuiMenubarSuiMenuItem>>();\n @Output() suiOpen = new EventEmitter<SuiMenubarCustomEvent<number>>();\n @Output() suiClose = new EventEmitter<SuiMenubarCustomEvent<ISuiMenubarSuiCloseReason>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiMenubarCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiMenuItem as ISuiMenubarSuiMenuItem } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiMenubarSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiMenubar extends Components.SuiMenubar {\n /**\n * Fires when a dropdown row (or a top item without a dropdown) is picked; detail is the item. `item.command()` also runs.\n */\n suiPick: EventEmitter<SuiMenubarCustomEvent<ISuiMenubarSuiMenuItem>>;\n /**\n * Fires after the element opens a dropdown; detail is the top-item index it opened, or\n`items.length` for More. It does not bubble.\n */\n suiOpen: EventEmitter<SuiMenubarCustomEvent<number>>;\n /**\n * Fires before the element closes the open dropdown; detail is `'trigger' | 'outside' | 'escape' | 'pick'`.\nCancelable: `preventDefault()` keeps it open (and cancels a switch to another dropdown). It\ndoes not bubble.\n */\n suiClose: EventEmitter<SuiMenubarCustomEvent<ISuiMenubarSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMessage,\n inputs: ['closable', 'heading', 'icon', 'severity']\n})\n@Component({\n selector: 'sui-message',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['closable', 'heading', 'icon', 'severity'],\n outputs: ['suiClose'],\n})\nexport class SuiMessage {\n protected el: HTMLSuiMessageElement;\n @Output() suiClose = new EventEmitter<SuiMessageCustomEvent<ISuiMessageSuiCloseReason>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiMessageCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiMessageSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiMessage extends Components.SuiMessage {\n /**\n * Fires before the dismiss control hides the message; detail is `'close-button'`.\nCancelable: `preventDefault()` keeps it shown (confirm first, then set `hidden` yourself). It\ndoes not bubble, as no `suiClose` in the library does.\n */\n suiClose: EventEmitter<SuiMessageCustomEvent<ISuiMessageSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMeterGroup,\n inputs: ['height', 'hideLegend', 'orientation', 'segments', 'totalLabel']\n})\n@Component({\n selector: 'sui-meter-group',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['height', 'hideLegend', 'orientation', 'segments', 'totalLabel'],\n})\nexport class SuiMeterGroup {\n protected el: HTMLSuiMeterGroupElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiMeterGroup extends Components.SuiMeterGroup {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMiniToolbar,\n inputs: ['open', 'x', 'y'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-mini-toolbar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['open', 'x', 'y'],\n})\nexport class SuiMiniToolbar {\n protected el: HTMLSuiMiniToolbarElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiMiniToolbar extends Components.SuiMiniToolbar {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiMultiSelect,\n inputs: ['clearable', 'disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'filter', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'maxChips', 'name', 'open', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-multi-select',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['clearable', 'disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'filter', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'maxChips', 'name', 'open', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n outputs: ['suiChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiMultiSelect {\n protected el: HTMLSuiMultiSelectElement;\n @Output() suiChange = new EventEmitter<SuiMultiSelectCustomEvent<ISuiMultiSelectSuiKey[]>>();\n @Output() suiOpen = new EventEmitter<SuiMultiSelectCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiMultiSelectCustomEvent<ISuiMultiSelectSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiMultiSelect['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiMultiSelectCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiMultiSelectSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiMultiSelectSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiMultiSelect extends Components.SuiMultiSelect {\n /**\n * Fires when the picks change; detail is the new `value`, the full array of picked values as\ntheir options give them (empty after a clear).\n */\n suiChange: EventEmitter<SuiMultiSelectCustomEvent<ISuiMultiSelectSuiKey[]>>;\n /**\n * Fires after the element opens the panel itself (trigger click, ArrowDown, Enter, Space). Does\nnot bubble, so a dialog around the control never takes it for its own.\n */\n suiOpen: EventEmitter<SuiMultiSelectCustomEvent<void>>;\n /**\n * Fires before the element closes the panel itself; detail is `'escape' | 'outside' | 'trigger'`.\nCancelable: `preventDefault()` keeps it open. Tab reports `'outside'`, because focus left the\ncontrol and `SuiCloseReason` has no member for that. Picking never closes a multi-select. Does\nnot bubble: a `preventDefault()` in a dialog's own `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiMultiSelectCustomEvent<ISuiMultiSelectSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiNotificationCenter,\n inputs: ['align', 'listMaxHeight', 'notifications', 'open', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-notification-center',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['align', 'listMaxHeight', 'notifications', 'open', 'width'],\n outputs: ['suiViewAll', 'suiItemPick', 'suiRead', 'suiRemove', 'suiOpen', 'suiClose'],\n})\nexport class SuiNotificationCenter {\n protected el: HTMLSuiNotificationCenterElement;\n @Output() suiViewAll = new EventEmitter<SuiNotificationCenterCustomEvent<void>>();\n @Output() suiItemPick = new EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiNotificationItem>>();\n @Output() suiRead = new EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiNotificationItem>>();\n @Output() suiRemove = new EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiNotificationItem>>();\n @Output() suiOpen = new EventEmitter<SuiNotificationCenterCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiNotificationCenter['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiNotificationCenterCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiNotificationItem as ISuiNotificationCenterSuiNotificationItem } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiNotificationCenterSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiNotificationCenter extends Components.SuiNotificationCenter {\n /**\n * Fires when \"View all notifications\" is activated. No detail.\n */\n suiViewAll: EventEmitter<SuiNotificationCenterCustomEvent<void>>;\n /**\n * Fires every time a row is activated, whatever its read state; detail is the item as the user\nsaw it (so an unread row still reads `read: false`). This is the navigate signal, and\nactivating also marks the row read. `suiRead` only reports that state change, and says\nnothing on an already-read row.\n */\n suiItemPick: EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiNotificationItem>>;\n /**\n * Fires when a row becomes read (row activation or \"Mark all read\"); detail is the item.\n */\n suiRead: EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiNotificationItem>>;\n /**\n * Fires when a row's remove control is used; detail is the removed item. Focus moves to the\nsame control on the row that takes its place, so Enter clears an inbox row by row, and to\nthe bell once the list is empty.\n\nNamed `suiRemove` because that is what the library calls this everywhere else. Dismissal has\ntwo shapes here and only two: `suiClose` carries a `SuiCloseReason` and says why something\nshut, and `suiRemove` carries the thing that went. This used to be `suiDismiss`, which was\nthe only third name in the library, on an event that takes a row out of a list and hands you\nthe row: the `suiRemove` shape exactly, as on `sui-file-upload`.\n */\n suiRemove: EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiNotificationItem>>;\n /**\n * Fires when an interaction opens the panel. It does not bubble.\n */\n suiOpen: EventEmitter<SuiNotificationCenterCustomEvent<void>>;\n /**\n * Fires before the panel closes itself; detail is `'trigger' | 'outside' | 'escape'`.\nCancelable: `preventDefault()` keeps it open. It does not bubble.\n */\n suiClose: EventEmitter<SuiNotificationCenterCustomEvent<ISuiNotificationCenterSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiOrderList,\n inputs: ['dragOnly', 'emptyFilterMessage', 'emptyMessage', 'filter', 'heading', 'height', 'items', 'loading', 'noDrag', 'selection', 'selectionMode'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-order-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dragOnly', 'emptyFilterMessage', 'emptyMessage', 'filter', 'heading', 'height', 'items', 'loading', 'noDrag', 'selection', 'selectionMode'],\n outputs: ['suiItemsChange', 'suiSelectionChange'],\n})\nexport class SuiOrderList {\n protected el: HTMLSuiOrderListElement;\n @Output() suiItemsChange = new EventEmitter<SuiOrderListCustomEvent<ISuiOrderListSuiReorderItem[]>>();\n @Output() suiSelectionChange = new EventEmitter<SuiOrderListCustomEvent<ISuiOrderListSuiKey[]>>();\n /** Emits the new `items` when the element changes it (`suiItemsChange`), so `[(items)]` binds both ways. */\n @Output() itemsChange = propChange<SuiOrderListCustomEvent<ISuiOrderListSuiReorderItem[]>>(this, 'suiItemsChange');\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiOrderListCustomEvent<ISuiOrderListSuiKey[]>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiOrderListCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiReorderItem as ISuiOrderListSuiReorderItem } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiOrderListSuiKey } from '@shineuix/core/dist/components';\n\nexport declare interface SuiOrderList extends Components.SuiOrderList {\n /**\n * Fires after every reorder (control click, drop, keyboard move); detail is the new `items`\narray. A state report: the list is not a form field, so a form around it never hears it.\nDoes not bubble.\n */\n suiItemsChange: EventEmitter<SuiOrderListCustomEvent<ISuiOrderListSuiReorderItem[]>>;\n /**\n * Fires when the selection changes; detail is the new `selection`, the selected rows' values\nin list order. Does not bubble.\n */\n suiSelectionChange: EventEmitter<SuiOrderListCustomEvent<ISuiOrderListSuiKey[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiOrgChart,\n inputs: ['collapsible', 'emptyMessage', 'expanded', 'loading', 'root', 'selection', 'selectionMode'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-org-chart',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['collapsible', 'emptyMessage', 'expanded', 'loading', 'root', 'selection', 'selectionMode'],\n outputs: ['suiExpandedChange', 'suiSelectionChange'],\n})\nexport class SuiOrgChart {\n protected el: HTMLSuiOrgChartElement;\n @Output() suiExpandedChange = new EventEmitter<SuiOrgChartCustomEvent<ISuiOrgChartSuiKey[]>>();\n @Output() suiSelectionChange = new EventEmitter<SuiOrgChartCustomEvent<ISuiOrgChartSuiKey[]>>();\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiOrgChartCustomEvent<ISuiOrgChartSuiKey[]>>(this, 'suiExpandedChange');\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiOrgChartCustomEvent<ISuiOrgChartSuiKey[]>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiOrgChartCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiOrgChartSuiKey } from '@shineuix/core/dist/components';\n\nexport declare interface SuiOrgChart extends Components.SuiOrgChart {\n /**\n * Fires when a branch opens or closes; detail is the array of expanded keys. Does not\nbubble.\n */\n suiExpandedChange: EventEmitter<SuiOrgChartCustomEvent<ISuiOrgChartSuiKey[]>>;\n /**\n * Fires when the selection changes; detail is the new `selection`. Does not bubble.\n */\n suiSelectionChange: EventEmitter<SuiOrgChartCustomEvent<ISuiOrgChartSuiKey[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiOverlayBadge,\n inputs: ['dot', 'position', 'severity', 'value']\n})\n@Component({\n selector: 'sui-overlay-badge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dot', 'position', 'severity', 'value'],\n})\nexport class SuiOverlayBadge {\n protected el: HTMLSuiOverlayBadgeElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiOverlayBadge extends Components.SuiOverlayBadge {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPageHeader,\n inputs: ['back', 'heading', 'headingLevel'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-page-header',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['back', 'heading', 'headingLevel'],\n outputs: ['suiBack'],\n})\nexport class SuiPageHeader {\n protected el: HTMLSuiPageHeaderElement;\n @Output() suiBack = new EventEmitter<SuiPageHeaderCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPageHeaderCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPageHeader extends Components.SuiPageHeader {\n /**\n * Fires when the back control is clicked, before the browser follows `back`. Cancelable:\n`preventDefault()` keeps the page where it is, for a host that navigates in memory.\n */\n suiBack: EventEmitter<SuiPageHeaderCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPaginator,\n inputs: ['hidePageSize', 'page', 'pageSize', 'pageSizes', 'showOnSinglePage', 'totalRecords'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-paginator',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['hidePageSize', 'page', 'pageSize', 'pageSizes', 'showOnSinglePage', 'totalRecords'],\n outputs: ['suiPageChange', 'suiPageSizeChange'],\n})\nexport class SuiPaginator {\n protected el: HTMLSuiPaginatorElement;\n @Output() suiPageChange = new EventEmitter<SuiPaginatorCustomEvent<number>>();\n @Output() suiPageSizeChange = new EventEmitter<SuiPaginatorCustomEvent<number>>();\n /** Emits the new `page` when the element changes it (`suiPageChange`), so `[(page)]` binds both ways. */\n @Output() pageChange = propChange<SuiPaginatorCustomEvent<number>>(this, 'suiPageChange');\n /** Emits the new `pageSize` when the element changes it (`suiPageSizeChange`), so `[(pageSize)]` binds both ways. */\n @Output() pageSizeChange = propChange<SuiPaginatorCustomEvent<number>>(this, 'suiPageSizeChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPaginatorCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPaginator extends Components.SuiPaginator {\n /**\n * Fires when the page changes, by a page control or by a clamp after `totalRecords` or\n`pageSize` shrank the page count; detail is the new `page`. Does not bubble, so a table or a\nview the paginator sits in never hears it as its own.\n */\n suiPageChange: EventEmitter<SuiPaginatorCustomEvent<number>>;\n /**\n * Fires when the rows-per-page select changes the page size; detail is the new `pageSize`. The\npaginator writes `pageSize` and returns to page 1 first, then fires this and, when the page\nmoved, `suiPageChange`. Does not bubble.\n */\n suiPageSizeChange: EventEmitter<SuiPaginatorCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPanel,\n inputs: ['collapsed', 'collapsible', 'headerTone', 'heading', 'meta'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-panel',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['collapsed', 'collapsible', 'headerTone', 'heading', 'meta'],\n outputs: ['suiOpen', 'suiClose'],\n})\nexport class SuiPanel {\n protected el: HTMLSuiPanelElement;\n @Output() suiOpen = new EventEmitter<SuiPanelCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiPanelCustomEvent<ISuiPanelSuiCloseReason>>();\n /** Emits `collapsed` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(collapsed)]` binds both ways. */\n @Output() collapsedChange = openStateChange<Components.SuiPanel['collapsed']>(this, 'collapsed');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPanelCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiPanelSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPanel extends Components.SuiPanel {\n /**\n * Fires after the header expands the body. It does not bubble.\n */\n suiOpen: EventEmitter<SuiPanelCustomEvent<void>>;\n /**\n * Fires before the header collapses the body; detail is `'trigger'` (the header is the only way\nthis element closes itself). Cancelable: `preventDefault()` leaves the panel open, so a host\ncan keep unsaved edits on screen that unmounting would throw away. It does not bubble.\n */\n suiClose: EventEmitter<SuiPanelCustomEvent<ISuiPanelSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPanelMenu,\n inputs: ['expanded', 'groups', 'multiple', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-panel-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['expanded', 'groups', 'multiple', 'width'],\n outputs: ['suiExpandedChange', 'suiPick'],\n})\nexport class SuiPanelMenu {\n protected el: HTMLSuiPanelMenuElement;\n @Output() suiExpandedChange = new EventEmitter<SuiPanelMenuCustomEvent<number[]>>();\n @Output() suiPick = new EventEmitter<SuiPanelMenuCustomEvent<ISuiPanelMenuSuiPanelMenuItem>>();\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiPanelMenuCustomEvent<number[]>>(this, 'suiExpandedChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPanelMenuCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiPanelMenuItem as ISuiPanelMenuSuiPanelMenuItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPanelMenu extends Components.SuiPanelMenu {\n /**\n * Fires after a group header toggles; detail is the new `expanded` list of open group indexes.\nIndexed expansion is not open state, so this is not the `suiOpen` and `suiClose` pair, as in\n`sui-accordion`. Does not bubble.\n */\n suiExpandedChange: EventEmitter<SuiPanelMenuCustomEvent<number[]>>;\n /**\n * Fires when a row is chosen; detail is the item object, as every menu reports a pick.\n`item.command()` also runs.\n */\n suiPick: EventEmitter<SuiPanelMenuCustomEvent<ISuiPanelMenuSuiPanelMenuItem>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPassword,\n inputs: ['autocomplete', 'disabled', 'error', 'fairLabel', 'goodLabel', 'help', 'hideLabel', 'invalid', 'label', 'locale', 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'showLabel', 'showStrength', 'size', 'strongLabel', 'value', 'weakLabel'],\n methods: ['select', 'setFocus']\n})\n@Component({\n selector: 'sui-password',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autocomplete', 'disabled', 'error', 'fairLabel', 'goodLabel', 'help', 'hideLabel', 'invalid', 'label', 'locale', 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'showLabel', 'showStrength', 'size', 'strongLabel', 'value', 'weakLabel'],\n outputs: ['suiInput', 'suiChange', 'suiFocus', 'suiBlur'],\n})\nexport class SuiPassword {\n protected el: HTMLSuiPasswordElement;\n @Output() suiInput = new EventEmitter<SuiPasswordCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiPasswordCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiPasswordCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiPasswordCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPasswordCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPassword extends Components.SuiPassword {\n /**\n * Fires on every keystroke; detail is the current value.\n */\n suiInput: EventEmitter<SuiPasswordCustomEvent<string>>;\n /**\n * Fires on commit (blur or Enter, native change); detail is the final value.\n */\n suiChange: EventEmitter<SuiPasswordCustomEvent<string>>;\n /**\n * Fires when the input takes focus; no detail. The same pair is on every text field. Does not bubble.\n */\n suiFocus: EventEmitter<SuiPasswordCustomEvent<void>>;\n /**\n * Fires when the input loses focus, to the eye included; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiPasswordCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPersona,\n inputs: ['accent', 'initials', 'inverse', 'meta', 'name', 'secondary', 'size', 'src', 'weight']\n})\n@Component({\n selector: 'sui-persona',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'initials', 'inverse', 'meta', 'name', 'secondary', 'size', 'src', 'weight'],\n})\nexport class SuiPersona {\n protected el: HTMLSuiPersonaElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiPersona extends Components.SuiPersona {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPickList,\n inputs: ['breakpoint', 'dragOnly', 'emptyFilterMessage', 'emptyMessage', 'filter', 'height', 'loading', 'noDrag', 'selection', 'selectionMode', 'source', 'sourceHeading', 'target', 'targetHeading'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-pick-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['breakpoint', 'dragOnly', 'emptyFilterMessage', 'emptyMessage', 'filter', 'height', 'loading', 'noDrag', 'selection', 'selectionMode', 'source', 'sourceHeading', 'target', 'targetHeading'],\n outputs: ['suiSourceChange', 'suiTargetChange', 'suiSelectionChange'],\n})\nexport class SuiPickList {\n protected el: HTMLSuiPickListElement;\n @Output() suiSourceChange = new EventEmitter<SuiPickListCustomEvent<ISuiPickListSuiReorderItem[]>>();\n @Output() suiTargetChange = new EventEmitter<SuiPickListCustomEvent<ISuiPickListSuiReorderItem[]>>();\n @Output() suiSelectionChange = new EventEmitter<SuiPickListCustomEvent<ISuiPickListSuiKey[]>>();\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiPickListCustomEvent<ISuiPickListSuiKey[]>>(this, 'suiSelectionChange');\n /** Emits the new `source` when the element changes it (`suiSourceChange`), so `[(source)]` binds both ways. */\n @Output() sourceChange = propChange<SuiPickListCustomEvent<ISuiPickListSuiReorderItem[]>>(this, 'suiSourceChange');\n /** Emits the new `target` when the element changes it (`suiTargetChange`), so `[(target)]` binds both ways. */\n @Output() targetChange = propChange<SuiPickListCustomEvent<ISuiPickListSuiReorderItem[]>>(this, 'suiTargetChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPickListCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiReorderItem as ISuiPickListSuiReorderItem } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiPickListSuiKey } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPickList extends Components.SuiPickList {\n /**\n * Fires after a transfer or a reorder that changed the available pane; detail is the new\n`source`. A transfer changes both panes and fires this, then `suiTargetChange`. A state\nreport: the pick list is not a form field, so a form around it never hears it. Does not\nbubble.\n */\n suiSourceChange: EventEmitter<SuiPickListCustomEvent<ISuiPickListSuiReorderItem[]>>;\n /**\n * Fires after a transfer or a reorder that changed the chosen pane; detail is the new `target`.\nDoes not bubble.\n */\n suiTargetChange: EventEmitter<SuiPickListCustomEvent<ISuiPickListSuiReorderItem[]>>;\n /**\n * Fires when the selection changes; detail is the new `selection`, the picked rows' values in\npane order. A transfer carries the picks with their rows and does not fire it. Does not\nbubble.\n */\n suiSelectionChange: EventEmitter<SuiPickListCustomEvent<ISuiPickListSuiKey[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiPopover,\n inputs: ['align', 'closeDelay', 'flush', 'hoverPersist', 'menu', 'open', 'openDelay', 'position', 'triggerOn', 'width']\n})\n@Component({\n selector: 'sui-popover',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['align', 'closeDelay', 'flush', 'hoverPersist', 'menu', 'open', 'openDelay', 'position', 'triggerOn', 'width'],\n outputs: ['suiOpen', 'suiClose'],\n})\nexport class SuiPopover {\n protected el: HTMLSuiPopoverElement;\n @Output() suiOpen = new EventEmitter<SuiPopoverCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiPopoverCustomEvent<ISuiPopoverSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiPopover['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiPopoverCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiPopoverSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiPopover extends Components.SuiPopover {\n /**\n * Fires when an interaction opens the panel. It does not bubble.\n */\n suiOpen: EventEmitter<SuiPopoverCustomEvent<void>>;\n /**\n * Fires before the panel closes itself; detail is `'escape' | 'outside' | 'trigger'`\n(`'trigger'` covers both a trigger click and a hover card's mouse-out or blur; `'outside'`\ncovers an outside pointer and focus leaving a click panel on Tab).\nCancelable: `preventDefault()` keeps it open. It does not bubble, so a dialog around the\npopover never hears it.\n */\n suiClose: EventEmitter<SuiPopoverCustomEvent<ISuiPopoverSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiProgressBar,\n inputs: ['accent', 'height', 'indeterminate', 'label', 'showValue', 'value']\n})\n@Component({\n selector: 'sui-progress-bar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'height', 'indeterminate', 'label', 'showValue', 'value'],\n})\nexport class SuiProgressBar {\n protected el: HTMLSuiProgressBarElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiProgressBar extends Components.SuiProgressBar {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiProgressRing,\n inputs: ['accent', 'diameter', 'label', 'showValue', 'thickness', 'value']\n})\n@Component({\n selector: 'sui-progress-ring',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'diameter', 'label', 'showValue', 'thickness', 'value'],\n})\nexport class SuiProgressRing {\n protected el: HTMLSuiProgressRingElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiProgressRing extends Components.SuiProgressRing {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiProgressSpinner,\n inputs: ['accent', 'diameter', 'label', 'thickness']\n})\n@Component({\n selector: 'sui-progress-spinner',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'diameter', 'label', 'thickness'],\n})\nexport class SuiProgressSpinner {\n protected el: HTMLSuiProgressSpinnerElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiProgressSpinner extends Components.SuiProgressSpinner {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiQrCode,\n inputs: ['caption', 'downloadable', 'ecLevel', 'fileName', 'label', 'value', 'width'],\n methods: ['setFocus', 'download']\n})\n@Component({\n selector: 'sui-qr-code',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['caption', 'downloadable', 'ecLevel', 'fileName', 'label', 'value', 'width'],\n outputs: ['suiRender'],\n})\nexport class SuiQrCode {\n protected el: HTMLSuiQrCodeElement;\n @Output() suiRender = new EventEmitter<SuiQrCodeCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiQrCodeCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiQrCode extends Components.SuiQrCode {\n /**\n * Fires after each successful draw, including the redraw a new `value`, `width` or `ecLevel`\ntriggers. No detail: read the element for the state you need.\n */\n suiRender: EventEmitter<SuiQrCodeCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiRadioButton,\n inputs: ['checked', 'description', 'disabled', 'invalid', 'label', 'name', 'readOnly', 'required', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-radio-button',\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', 'invalid', 'label', 'name', 'readOnly', 'required', 'size', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiRadioButton {\n protected el: HTMLSuiRadioButtonElement;\n @Output() suiChange = new EventEmitter<SuiRadioButtonCustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiRadioButtonCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiRadioButton extends Components.SuiRadioButton {\n /**\n * Fires when this radio becomes checked by user input; detail is the new checked state, as on\n`sui-checkbox`, `sui-toggle-switch` and `sui-toggle-button`. A radio only ever reports itself\nbecoming checked, so the detail is always `true`.\n */\n suiChange: EventEmitter<SuiRadioButtonCustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiRadioGroup,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'name', 'options', 'orientation', 'readOnly', 'required', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-radio-group',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'name', 'options', 'orientation', 'readOnly', 'required', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiRadioGroup {\n protected el: HTMLSuiRadioGroupElement;\n @Output() suiChange = new EventEmitter<SuiRadioGroupCustomEvent<ISuiRadioGroupSuiKey>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiRadioGroupCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiRadioGroupSuiKey } from '@shineuix/core/dist/components';\n\nexport declare interface SuiRadioGroup extends Components.SuiRadioGroup {\n /**\n * Fires when the selection changes; detail is the new `value`, the picked option's value.\n */\n suiChange: EventEmitter<SuiRadioGroupCustomEvent<ISuiRadioGroupSuiKey>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiRating,\n inputs: ['allowHalf', 'count', 'disabled', 'error', 'help', 'label', 'name', 'readOnly', 'required', 'showCount', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-rating',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['allowHalf', 'count', 'disabled', 'error', 'help', 'label', 'name', 'readOnly', 'required', 'showCount', 'size', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiRating {\n protected el: HTMLSuiRatingElement;\n @Output() suiChange = new EventEmitter<SuiRatingCustomEvent<number>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiRatingCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiRating extends Components.SuiRating {\n /**\n * Fires when the rating changes; detail is the new value (0 after clearing, `n.5` for a half star).\n */\n suiChange: EventEmitter<SuiRatingCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiRichTextEditor,\n inputs: ['disabled', 'error', 'help', 'html', 'invalid', 'label', 'mergeFields', 'minHeight', 'name', 'placeholder', 'readOnly', 'required', 'variant'],\n methods: ['getSnapshot', 'setFocus', 'exec']\n})\n@Component({\n selector: 'sui-rich-text-editor',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'html', 'invalid', 'label', 'mergeFields', 'minHeight', 'name', 'placeholder', 'readOnly', 'required', 'variant'],\n outputs: ['suiChange', 'suiSelection'],\n})\nexport class SuiRichTextEditor {\n protected el: HTMLSuiRichTextEditorElement;\n @Output() suiChange = new EventEmitter<SuiRichTextEditorCustomEvent<ISuiRichTextEditorSuiRichTextChangeDetail>>();\n @Output() suiSelection = new EventEmitter<SuiRichTextEditorCustomEvent<ISuiRichTextEditorSuiEditorSnapshot>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiRichTextEditorCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiRichTextChangeDetail as ISuiRichTextEditorSuiRichTextChangeDetail } from '@shineuix/core/dist/components';\nimport type { SuiEditorSnapshot as ISuiRichTextEditorSuiEditorSnapshot } from '@shineuix/core/dist/components';\n\nexport declare interface SuiRichTextEditor extends Components.SuiRichTextEditor {\n /**\n * Fires on every document change with the serialized HTML, plain text and counters.\n */\n suiChange: EventEmitter<SuiRichTextEditorCustomEvent<ISuiRichTextEditorSuiRichTextChangeDetail>>;\n /**\n * Fires after every transaction (selection or document) with the fresh snapshot. A state\nreport, not a value: it fires on every caret move. Does not bubble.\n */\n suiSelection: EventEmitter<SuiRichTextEditorCustomEvent<ISuiRichTextEditorSuiEditorSnapshot>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSaveStatus,\n inputs: ['state', 'time']\n})\n@Component({\n selector: 'sui-save-status',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['state', 'time'],\n})\nexport class SuiSaveStatus {\n protected el: HTMLSuiSaveStatusElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiSaveStatus extends Components.SuiSaveStatus {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSchedulerBuilder,\n inputs: ['config', 'disabled', 'hideJson', 'label', 'timezone', 'todayDate', 'variant'],\n methods: ['getConfig', 'setFocus']\n})\n@Component({\n selector: 'sui-scheduler-builder',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['config', 'disabled', 'hideJson', 'label', 'timezone', 'todayDate', 'variant'],\n outputs: ['suiChange'],\n})\nexport class SuiSchedulerBuilder {\n protected el: HTMLSuiSchedulerBuilderElement;\n @Output() suiChange = new EventEmitter<SuiSchedulerBuilderCustomEvent<ISuiSchedulerBuilderSuiScheduleChangeDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSchedulerBuilderCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiScheduleChangeDetail as ISuiSchedulerBuilderSuiScheduleChangeDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSchedulerBuilder extends Components.SuiSchedulerBuilder {\n /**\n * Fires after every edit (and once after load) with `{ config, sentence }`: the version-2\ncontract and its restatement in the page's language. The composed inputs' own `suiChange` and\n`suiInput` events stop at this element, so this is the only change event a consumer sees. The\nbuilder is a value control: Vue's `v-model` and Angular's `ngModel` bind the `config` prop\nthrough this event, so the model holds the seed form the element writes back.\n */\n suiChange: EventEmitter<SuiSchedulerBuilderCustomEvent<ISuiSchedulerBuilderSuiScheduleChangeDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiScrollPanel,\n inputs: ['height'],\n methods: ['setFocus', 'scrollToBottom']\n})\n@Component({\n selector: 'sui-scroll-panel',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['height'],\n})\nexport class SuiScrollPanel {\n protected el: HTMLSuiScrollPanelElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiScrollPanel extends Components.SuiScrollPanel {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiScrollTop,\n inputs: ['target', 'threshold', 'visible'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-scroll-top',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['target', 'threshold', 'visible'],\n outputs: ['suiVisibleChange'],\n})\nexport class SuiScrollTop {\n protected el: HTMLSuiScrollTopElement;\n @Output() suiVisibleChange = new EventEmitter<SuiScrollTopCustomEvent<boolean>>();\n /** Emits the new `visible` when the element changes it (`suiVisibleChange`), so `[(visible)]` binds both ways. */\n @Output() visibleChange = propChange<SuiScrollTopCustomEvent<boolean>>(this, 'suiVisibleChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiScrollTopCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiScrollTop extends Components.SuiScrollTop {\n /**\n * Fires when the element shows or hides itself from the scroll position; detail is the new\n`visible`. Only a flip emits, so a scroll does not produce an event storm. Not cancelable:\nnothing opened this and there is no trigger to hand focus back to. Does not bubble.\n */\n suiVisibleChange: EventEmitter<SuiScrollTopCustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSelect,\n inputs: ['clearable', 'disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'filter', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'name', 'open', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-select',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['clearable', 'disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'filter', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'name', 'open', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n outputs: ['suiChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiSelect {\n protected el: HTMLSuiSelectElement;\n @Output() suiChange = new EventEmitter<SuiSelectCustomEvent<ISuiSelectSuiKey>>();\n @Output() suiOpen = new EventEmitter<SuiSelectCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiSelectCustomEvent<ISuiSelectSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiSelect['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSelectCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiSelectSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiSelectSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSelect extends Components.SuiSelect {\n /**\n * Fires when a value commits; detail is the new `value`: the option's value as given, or `''`\nafter a clear.\n */\n suiChange: EventEmitter<SuiSelectCustomEvent<ISuiSelectSuiKey>>;\n /**\n * Fires after the element opens the panel itself (trigger click, ArrowDown, Enter, Space). Does\nnot bubble, so a dialog around the select never takes it for its own.\n */\n suiOpen: EventEmitter<SuiSelectCustomEvent<void>>;\n /**\n * Fires before the element closes the panel itself; detail is\n`'pick' | 'escape' | 'outside' | 'trigger'`. Cancelable: `preventDefault()` keeps it open, so\n`detail === 'pick'` is how a consumer keeps the panel up after a choice. Tab reports\n`'outside'`, because focus left the control and `SuiCloseReason` has no member for that. Does\nnot bubble: a `preventDefault()` in a dialog's own `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiSelectCustomEvent<ISuiSelectSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSelectButton,\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'multiple', 'name', 'options', 'pill', 'readOnly', 'required', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-select-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'invalid', 'label', 'multiple', 'name', 'options', 'pill', 'readOnly', 'required', 'size', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiSelectButton {\n protected el: HTMLSuiSelectButtonElement;\n @Output() suiChange = new EventEmitter<SuiSelectButtonCustomEvent<ISuiSelectButtonSuiChoiceValue>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSelectButtonCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChoiceValue as ISuiSelectButtonSuiChoiceValue } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSelectButton extends Components.SuiSelectButton {\n /**\n * Fires when the selection changes; detail is the new `value`: the picked option's value, or the\narray of picked values when `multiple`. On a linked segment it fires before the browser follows\nthe link; a host that routes itself cancels the segment's `click` instead.\n */\n suiChange: EventEmitter<SuiSelectButtonCustomEvent<ISuiSelectButtonSuiChoiceValue>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSideNav,\n inputs: ['active', 'collapseControl', 'collapsed', 'collapsedBadges', 'collapsedWidth', 'expanded', 'height', 'sections', 'tone', 'variant', 'width'],\n methods: ['setFocus', 'toggle']\n})\n@Component({\n selector: 'sui-side-nav',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'collapseControl', 'collapsed', 'collapsedBadges', 'collapsedWidth', 'expanded', 'height', 'sections', 'tone', 'variant', 'width'],\n outputs: ['suiNavigate', 'suiActiveChange', 'suiExpandedChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiSideNav {\n protected el: HTMLSuiSideNavElement;\n @Output() suiNavigate = new EventEmitter<SuiSideNavCustomEvent<string>>();\n @Output() suiActiveChange = new EventEmitter<SuiSideNavCustomEvent<string>>();\n @Output() suiExpandedChange = new EventEmitter<SuiSideNavCustomEvent<string[]>>();\n @Output() suiOpen = new EventEmitter<SuiSideNavCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiSideNavCustomEvent<ISuiSideNavSuiCloseReason>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiSideNavCustomEvent<string>>(this, 'suiActiveChange');\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiSideNavCustomEvent<string[]>>(this, 'suiExpandedChange');\n /** Emits `collapsed` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(collapsed)]` binds both ways. */\n @Output() collapsedChange = openStateChange<Components.SuiSideNav['collapsed']>(this, 'collapsed');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSideNavCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiSideNavSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSideNav extends Components.SuiSideNav {\n /**\n * Fires when an item is activated; detail is the item key, its own `key` or its label.\n */\n suiNavigate: EventEmitter<SuiSideNavCustomEvent<string>>;\n /**\n * Fires whenever the element writes `active`, a choice of an item that was not active, before\n`suiNavigate`; detail is the new `active`. Writing `active` from script emits nothing. Does\nnot bubble.\n */\n suiActiveChange: EventEmitter<SuiSideNavCustomEvent<string>>;\n /**\n * Fires after a group parent opens or closes, or when a script write moves `active` into a\nclosed group and the element opens it; detail is the new `expanded` array of open keys. Group expansion is\nindexed state, not open state, so it reports the way `sui-accordion` and `sui-panel-menu` do.\nDoes not bubble.\n */\n suiExpandedChange: EventEmitter<SuiSideNavCustomEvent<string[]>>;\n /**\n * Fires after the rail expands itself. It does not bubble, as no open-state event does.\n */\n suiOpen: EventEmitter<SuiSideNavCustomEvent<void>>;\n /**\n * Fires before the rail collapses itself; detail is `'trigger'` (its own control and `toggle()`\nare the only ways it collapses). Cancelable: `preventDefault()` keeps the rail expanded. It\ndoes not bubble.\n */\n suiClose: EventEmitter<SuiSideNavCustomEvent<ISuiSideNavSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSkeleton,\n inputs: ['animation', 'height', 'shape', 'width']\n})\n@Component({\n selector: 'sui-skeleton',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['animation', 'height', 'shape', 'width'],\n})\nexport class SuiSkeleton {\n protected el: HTMLSuiSkeletonElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiSkeleton extends Components.SuiSkeleton {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSkeletonCard,\n inputs: ['animation']\n})\n@Component({\n selector: 'sui-skeleton-card',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['animation'],\n})\nexport class SuiSkeletonCard {\n protected el: HTMLSuiSkeletonCardElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiSkeletonCard extends Components.SuiSkeletonCard {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSlider,\n inputs: ['disabled', 'error', 'format', 'help', 'label', 'max', 'min', 'minGap', 'name', 'orientation', 'range', 'readOnly', 'required', 'showValue', 'step', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-slider',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'format', 'help', 'label', 'max', 'min', 'minGap', 'name', 'orientation', 'range', 'readOnly', 'required', 'showValue', 'step', 'value'],\n outputs: ['suiInput', 'suiChange'],\n})\nexport class SuiSlider {\n protected el: HTMLSuiSliderElement;\n @Output() suiInput = new EventEmitter<SuiSliderCustomEvent<ISuiSliderSuiSliderValue>>();\n @Output() suiChange = new EventEmitter<SuiSliderCustomEvent<ISuiSliderSuiSliderValue>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSliderCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiSliderValue as ISuiSliderSuiSliderValue } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSlider extends Components.SuiSlider {\n /**\n * Fires continuously while a handle moves; detail is the number, or `[low, high]` in range mode.\n */\n suiInput: EventEmitter<SuiSliderCustomEvent<ISuiSliderSuiSliderValue>>;\n /**\n * Fires when a drag ends or a keyboard step lands; detail is the number, or `[low, high]` in range mode.\n */\n suiChange: EventEmitter<SuiSliderCustomEvent<ISuiSliderSuiSliderValue>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSparkline,\n inputs: ['accent', 'data', 'height', 'max', 'min', 'width']\n})\n@Component({\n selector: 'sui-sparkline',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'data', 'height', 'max', 'min', 'width'],\n})\nexport class SuiSparkline {\n protected el: HTMLSuiSparklineElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiSparkline extends Components.SuiSparkline {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSpeedDial,\n inputs: ['direction', 'disabled', 'icon', 'iconOpen', 'items', 'open'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-speed-dial',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['direction', 'disabled', 'icon', 'iconOpen', 'items', 'open'],\n outputs: ['suiOpen', 'suiClose', 'suiPick'],\n})\nexport class SuiSpeedDial {\n protected el: HTMLSuiSpeedDialElement;\n @Output() suiOpen = new EventEmitter<SuiSpeedDialCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiSpeedDialCustomEvent<ISuiSpeedDialSuiCloseReason>>();\n @Output() suiPick = new EventEmitter<SuiSpeedDialCustomEvent<ISuiSpeedDialSuiSpeedDialItem>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiSpeedDial['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSpeedDialCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiSpeedDialSuiCloseReason } from '@shineuix/core/dist/components';\nimport type { SuiSpeedDialItem as ISuiSpeedDialSuiSpeedDialItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSpeedDial extends Components.SuiSpeedDial {\n /**\n * Fires after the element fans the dial out itself (a launcher press, or an arrow key on the\nlauncher). An external `open` write does not echo it. It does not bubble.\n */\n suiOpen: EventEmitter<SuiSpeedDialCustomEvent<void>>;\n /**\n * Fires before the element closes the dial itself; detail is why: `'pick'` (a satellite ran),\n`'trigger'` (the launcher was pressed again), `'outside'` (a pointer landed elsewhere, or Tab\nmoved focus out of the dial), `'escape'`, or `'cancel'` (the dial went `disabled` while it was\nfanned out). Cancelable: `preventDefault()` keeps it open, so a parent that binds `open` never\ngoes stale and \"a stray click outside must not close this\" needs no prop of its own. On\n`'cancel'` a veto means the satellites stay hidden while the dial is disabled and fan back out\nwhen it is enabled again, because `open && !disabled` and not `open` alone decides what renders.\nIt does not bubble.\n */\n suiClose: EventEmitter<SuiSpeedDialCustomEvent<ISuiSpeedDialSuiCloseReason>>;\n /**\n * Fires when a satellite is pressed; detail is the item. `item.command()` also runs.\n */\n suiPick: EventEmitter<SuiSpeedDialCustomEvent<ISuiSpeedDialSuiSpeedDialItem>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSplitButton,\n inputs: ['disabled', 'form', 'icon', 'items', 'label', 'loading', 'menuAlign', 'menuWidth', 'name', 'open', 'size', 'type', 'value', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-split-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'form', 'icon', 'items', { name: 'label', required: true }, 'loading', 'menuAlign', 'menuWidth', 'name', 'open', 'size', 'type', 'value', 'variant'],\n outputs: ['suiPick', 'suiOpen', 'suiClose'],\n})\nexport class SuiSplitButton {\n protected el: HTMLSuiSplitButtonElement;\n @Output() suiPick = new EventEmitter<SuiSplitButtonCustomEvent<ISuiSplitButtonSuiMenuItem>>();\n @Output() suiOpen = new EventEmitter<SuiSplitButtonCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiSplitButtonCustomEvent<ISuiSplitButtonSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiSplitButton['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSplitButtonCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiMenuItem as ISuiSplitButtonSuiMenuItem } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiSplitButtonSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSplitButton extends Components.SuiSplitButton {\n /**\n * Fires when a menu row is picked; detail is the item. `item.command()` also runs. The main\nhalf's click is the native host `click`; the chevron's click never reaches the host, so a\n`click` listener means the primary action ran and nothing else.\n */\n suiPick: EventEmitter<SuiSplitButtonCustomEvent<ISuiSplitButtonSuiMenuItem>>;\n /**\n * Fires after the element opens the menu itself (a chevron press, or ArrowDown/ArrowUp on\neither half). An external `open` write does not echo it. It does not bubble.\n */\n suiOpen: EventEmitter<SuiSplitButtonCustomEvent<void>>;\n /**\n * Fires before the element closes the menu itself; detail is why: `'pick'` (a row ran),\n`'trigger'` (the chevron was pressed again), `'outside'` (a pointer landed elsewhere, or Tab\nleft the menu: focus goes back to the chevron, and Tab carries on to whatever follows the\ncontrol while Shift+Tab stops on the chevron), `'escape'`, or `'cancel'` (the control went\n`disabled` or `loading` under an open menu). Cancelable: `preventDefault()` keeps it open, so a parent that\nbinds `open` never goes stale and \"a stray click outside must not close this\" needs no prop\nof its own. On `'cancel'` a veto means the menu is hidden while the control is inert and\ncomes back when it settles, because `menuOpen` and not `open` alone decides what renders. It\ndoes not bubble.\n */\n suiClose: EventEmitter<SuiSplitButtonCustomEvent<ISuiSplitButtonSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSplitter,\n inputs: ['collapsible', 'flush', 'height', 'minRatio', 'orientation', 'ratio'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-splitter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['collapsible', 'flush', 'height', 'minRatio', 'orientation', 'ratio'],\n outputs: ['suiResize', 'suiResizeEnd'],\n})\nexport class SuiSplitter {\n protected el: HTMLSuiSplitterElement;\n @Output() suiResize = new EventEmitter<SuiSplitterCustomEvent<number>>();\n @Output() suiResizeEnd = new EventEmitter<SuiSplitterCustomEvent<number>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSplitterCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSplitter extends Components.SuiSplitter {\n /**\n * Fires while the gutter moves (every drag step and every key press); detail is the new ratio.\nDoes not bubble, so a splitter inside a pane never reports as the outer one.\n */\n suiResize: EventEmitter<SuiSplitterCustomEvent<number>>;\n /**\n * Fires when a resize commits: on pointer release, or straight away on a key press. Detail is\nthe new ratio. Do the expensive work, such as re-laying out a chart or a virtualized table,\nhere. Does not bubble.\n */\n suiResizeEnd: EventEmitter<SuiSplitterCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiSpoiler,\n inputs: ['lessLabel', 'lines', 'moreLabel', 'open'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-spoiler',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['lessLabel', 'lines', 'moreLabel', 'open'],\n outputs: ['suiOpen', 'suiClose'],\n})\nexport class SuiSpoiler {\n protected el: HTMLSuiSpoilerElement;\n @Output() suiOpen = new EventEmitter<SuiSpoilerCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiSpoilerCustomEvent<ISuiSpoilerSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiSpoiler['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiSpoilerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiSpoilerSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiSpoiler extends Components.SuiSpoiler {\n /**\n * Fires after the toggle expands the content, so a parent binding `open` stays current. It does\nnot bubble, as no open-state event does.\n */\n suiOpen: EventEmitter<SuiSpoilerCustomEvent<void>>;\n /**\n * Fires before the toggle collapses the content; detail is `'trigger'`, the only way this\nelement closes itself. Cancelable: `preventDefault()` keeps it expanded. It does not bubble.\n */\n suiClose: EventEmitter<SuiSpoilerCustomEvent<ISuiSpoilerSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiStatCard,\n inputs: ['accent', 'command', 'data', 'delta', 'deltaDirection', 'href', 'label', 'linkLabel', 'note', 'scaleMax', 'scaleMin', 'severity', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-stat-card',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accent', 'command', 'data', 'delta', 'deltaDirection', 'href', 'label', 'linkLabel', 'note', 'scaleMax', 'scaleMin', 'severity', 'size', 'value'],\n outputs: ['suiLink'],\n})\nexport class SuiStatCard {\n protected el: HTMLSuiStatCardElement;\n @Output() suiLink = new EventEmitter<SuiStatCardCustomEvent<ISuiStatCardSuiStatCardLinkDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiStatCardCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiStatCardLinkDetail as ISuiStatCardSuiStatCardLinkDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiStatCard extends Components.SuiStatCard {\n /**\n * Fires when the card is activated by click, Enter or Space, before the browser follows `href`;\ndetail is `{ href }`. Cancelable: `preventDefault()` keeps the page where it is, for a host\nwith in-memory navigation.\n */\n suiLink: EventEmitter<SuiStatCardCustomEvent<ISuiStatCardSuiStatCardLinkDetail>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiStepper,\n inputs: ['active', 'linear', 'orientation', 'readOnly', 'steps'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-stepper',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'linear', 'orientation', 'readOnly', 'steps'],\n outputs: ['suiActiveChange'],\n})\nexport class SuiStepper {\n protected el: HTMLSuiStepperElement;\n @Output() suiActiveChange = new EventEmitter<SuiStepperCustomEvent<number>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiStepperCustomEvent<number>>(this, 'suiActiveChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiStepperCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiStepper extends Components.SuiStepper {\n /**\n * Fires when a step is picked; detail is the new `active` index. Does not bubble.\n */\n suiActiveChange: EventEmitter<SuiStepperCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTab,\n inputs: ['badge', 'disabled', 'icon', 'label']\n})\n@Component({\n selector: 'sui-tab',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['badge', 'disabled', 'icon', 'label'],\n})\nexport class SuiTab {\n protected el: HTMLSuiTabElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiTab extends Components.SuiTab {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTabs,\n inputs: ['active', 'stretch', 'variant'],\n methods: ['refresh', 'setFocus']\n})\n@Component({\n selector: 'sui-tabs',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['active', 'stretch', 'variant'],\n outputs: ['suiActiveChange'],\n})\nexport class SuiTabs {\n protected el: HTMLSuiTabsElement;\n @Output() suiActiveChange = new EventEmitter<SuiTabsCustomEvent<number>>();\n /** Emits the new `active` when the element changes it (`suiActiveChange`), so `[(active)]` binds both ways. */\n @Output() activeChange = propChange<SuiTabsCustomEvent<number>>(this, 'suiActiveChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTabsCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTabs extends Components.SuiTabs {\n /**\n * Fires when the user picks another tab, or when tabs are removed and the element moves\n`active` back inside the count; detail is the new `active` index. Writing `active` from script\nemits nothing. Does not bubble, so tabs inside a panel never report as the outer tabs.\n */\n suiActiveChange: EventEmitter<SuiTabsCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTag,\n inputs: ['icon', 'label', 'severity', 'size']\n})\n@Component({\n selector: 'sui-tag',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['icon', 'label', 'severity', 'size'],\n})\nexport class SuiTag {\n protected el: HTMLSuiTagElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiTag extends Components.SuiTag {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTerminal,\n inputs: ['commands', 'height', 'prompt', 'welcome'],\n methods: ['setFocus', 'print', 'clear']\n})\n@Component({\n selector: 'sui-terminal',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['commands', 'height', 'prompt', 'welcome'],\n outputs: ['suiCommand'],\n})\nexport class SuiTerminal {\n protected el: HTMLSuiTerminalElement;\n @Output() suiCommand = new EventEmitter<SuiTerminalCustomEvent<string>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTerminalCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTerminal extends Components.SuiTerminal {\n /**\n * Fires for every line the operator submits, before it runs; detail is the raw line. Built-ins\nand unknown input included, so a host can audit-log the session or watch for input its map\ndoes not cover.\n */\n suiCommand: EventEmitter<SuiTerminalCustomEvent<string>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTextarea,\n inputs: ['autoResize', 'autocomplete', 'disabled', 'error', 'help', 'invalid', 'label', 'maxLength', 'minLength', 'name', 'placeholder', 'readOnly', 'required', 'rows', 'showCount', 'size', 'value'],\n methods: ['setFocus', 'select']\n})\n@Component({\n selector: 'sui-textarea',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['autoResize', 'autocomplete', 'disabled', 'error', 'help', 'invalid', 'label', 'maxLength', 'minLength', 'name', 'placeholder', 'readOnly', 'required', 'rows', 'showCount', 'size', 'value'],\n outputs: ['suiInput', 'suiChange', 'suiFocus', 'suiBlur'],\n})\nexport class SuiTextarea {\n protected el: HTMLSuiTextareaElement;\n @Output() suiInput = new EventEmitter<SuiTextareaCustomEvent<string>>();\n @Output() suiChange = new EventEmitter<SuiTextareaCustomEvent<string>>();\n @Output() suiFocus = new EventEmitter<SuiTextareaCustomEvent<void>>();\n @Output() suiBlur = new EventEmitter<SuiTextareaCustomEvent<void>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTextareaCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTextarea extends Components.SuiTextarea {\n /**\n * Fires on every keystroke; detail is the current value.\n */\n suiInput: EventEmitter<SuiTextareaCustomEvent<string>>;\n /**\n * Fires on commit (blur, native change); detail is the final value.\n */\n suiChange: EventEmitter<SuiTextareaCustomEvent<string>>;\n /**\n * Fires when the box takes focus; no detail. The same pair is on every text field. Does not bubble.\n */\n suiFocus: EventEmitter<SuiTextareaCustomEvent<void>>;\n /**\n * Fires when the box loses focus; no detail. Does not bubble.\n */\n suiBlur: EventEmitter<SuiTextareaCustomEvent<void>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiThemePicker,\n inputs: ['accentColor', 'accentMode', 'appearance', 'code', 'disabled', 'mode', 'neutral', 'persist', 'preset', 'primary', 'showPresetName', 'status', 'target'],\n methods: ['setTheme', 'reset', 'setFocus']\n})\n@Component({\n selector: 'sui-theme-picker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['accentColor', 'accentMode', 'appearance', 'code', 'disabled', 'mode', 'neutral', 'persist', 'preset', 'primary', 'showPresetName', 'status', 'target'],\n outputs: ['suiThemeChange'],\n})\nexport class SuiThemePicker {\n protected el: HTMLSuiThemePickerElement;\n @Output() suiThemeChange = new EventEmitter<SuiThemePickerCustomEvent<ISuiThemePickerSuiThemeChoice>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiThemePickerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiThemeChoice as ISuiThemePickerSuiThemeChoice } from '@shineuix/core/dist/components';\n\nexport declare interface SuiThemePicker extends Components.SuiThemePicker {\n /**\n * Fires after attributes and any custom sheet are applied, from a user pick, `setTheme()`,\n`reset()`, or the operating system's color scheme changing under `mode=\"system\"`; detail is\n`{ preset, mode, resolvedMode, status, code, primary, accent, neutral }`. The only\nevent: there is no `suiClick`. A state report, not a field's value: the picker applies the\ntheme itself and posts nothing, so a form around it never hears it. Does not bubble; listen\non the picker, or on the document in the capture phase.\n */\n suiThemeChange: EventEmitter<SuiThemePickerCustomEvent<ISuiThemePickerSuiThemeChoice>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTieredMenu,\n inputs: ['items', 'openPath', 'variant', 'width'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-tiered-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['items', 'openPath', 'variant', 'width'],\n outputs: ['suiPick', 'suiOpenPathChange'],\n})\nexport class SuiTieredMenu {\n protected el: HTMLSuiTieredMenuElement;\n @Output() suiPick = new EventEmitter<SuiTieredMenuCustomEvent<ISuiTieredMenuSuiMenuItem>>();\n @Output() suiOpenPathChange = new EventEmitter<SuiTieredMenuCustomEvent<number[]>>();\n /** Emits the new `openPath` when the element changes it (`suiOpenPathChange`), so `[(openPath)]` binds both ways. */\n @Output() openPathChange = propChange<SuiTieredMenuCustomEvent<number[]>>(this, 'suiOpenPathChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTieredMenuCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiMenuItem as ISuiTieredMenuSuiMenuItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTieredMenu extends Components.SuiTieredMenu {\n /**\n * Fires when a leaf row is picked; detail is the item. `item.command()` also runs, then the open\npath collapses to empty.\n */\n suiPick: EventEmitter<SuiTieredMenuCustomEvent<ISuiTieredMenuSuiMenuItem>>;\n /**\n * Fires whenever the element changes `openPath`; detail is the new path. Several flyouts can be\nopen at once, so this is indexed expansion as in `sui-accordion`, not the `suiOpen` and\n`suiClose` pair: the menu is inline, with no trigger and nothing to dismiss. Does not\nbubble.\n */\n suiOpenPathChange: EventEmitter<SuiTieredMenuCustomEvent<number[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTimePicker,\n inputs: ['disabled', 'error', 'help', 'hourFormat', 'invalid', 'label', 'locale', 'max', 'min', 'name', 'open', 'placeholder', 'readOnly', 'required', 'seconds', 'size', 'step', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-time-picker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['disabled', 'error', 'help', 'hourFormat', 'invalid', 'label', 'locale', 'max', 'min', 'name', 'open', 'placeholder', 'readOnly', 'required', 'seconds', 'size', 'step', 'value'],\n outputs: ['suiChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiTimePicker {\n protected el: HTMLSuiTimePickerElement;\n @Output() suiChange = new EventEmitter<SuiTimePickerCustomEvent<string>>();\n @Output() suiOpen = new EventEmitter<SuiTimePickerCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiTimePickerCustomEvent<ISuiTimePickerSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiTimePicker['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTimePickerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiTimePickerSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTimePicker extends Components.SuiTimePicker {\n /**\n * Fires when a time commits; detail is the `HH:mm` value, e.g. `\"14:30\"` (`\"14:30:15\"` with `seconds`).\n */\n suiChange: EventEmitter<SuiTimePickerCustomEvent<string>>;\n /**\n * Fires after the element opens the panel itself. Does not bubble, so a dialog around the picker\nnever takes it for its own.\n */\n suiOpen: EventEmitter<SuiTimePickerCustomEvent<void>>;\n /**\n * Fires before the element closes the panel itself; detail is `'escape' | 'outside' | 'trigger' | 'pick'`.\nCancelable: `preventDefault()` keeps it open. Does not bubble: a `preventDefault()` in a dialog's\nown `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiTimePickerCustomEvent<ISuiTimePickerSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTimeline,\n inputs: ['align', 'items', 'orientation', 'severityFill', 'variant']\n})\n@Component({\n selector: 'sui-timeline',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['align', 'items', 'orientation', 'severityFill', 'variant'],\n})\nexport class SuiTimeline {\n protected el: HTMLSuiTimelineElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiTimeline extends Components.SuiTimeline {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiToastHost,\n inputs: ['max', 'name', 'position'],\n methods: ['push', 'dismiss', 'clear']\n})\n@Component({\n selector: 'sui-toast-host',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['max', 'name', 'position'],\n outputs: ['suiRemove', 'suiAction'],\n})\nexport class SuiToastHost {\n protected el: HTMLSuiToastHostElement;\n @Output() suiRemove = new EventEmitter<SuiToastHostCustomEvent<ISuiToastHostSuiToastItem>>();\n @Output() suiAction = new EventEmitter<SuiToastHostCustomEvent<ISuiToastHostSuiToastItem>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiToastHostCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiToastItem as ISuiToastHostSuiToastItem } from '@shineuix/core/dist/components';\n\nexport declare interface SuiToastHost extends Components.SuiToastHost {\n /**\n * Fires when a toast leaves the stack (timer, the X, `dismiss()` or `clear()`); detail is the\ntoast. It fires as the toast starts its short fade out, so a listener that reads the stack\nsees the toast gone from `items` one fade later. It is `suiRemove`, as on `sui-chip` and\n`sui-file-upload`, because one item leaving a collection is what it reports; the stack itself\nnever closes, and every `suiClose` in the library carries a `SuiCloseReason`.\n */\n suiRemove: EventEmitter<SuiToastHostCustomEvent<ISuiToastHostSuiToastItem>>;\n /**\n * Fires when a toast's action link is clicked. Detail is the toast; the toast stays until dismissed.\n */\n suiAction: EventEmitter<SuiToastHostCustomEvent<ISuiToastHostSuiToastItem>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiToggleButton,\n inputs: ['checked', 'disabled', 'error', 'help', 'iconOff', 'iconOn', 'invalid', 'labelOff', 'labelOn', 'name', 'readOnly', 'required', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-toggle-button',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['checked', 'disabled', 'error', 'help', 'iconOff', 'iconOn', 'invalid', 'labelOff', 'labelOn', 'name', 'readOnly', 'required', 'size', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiToggleButton {\n protected el: HTMLSuiToggleButtonElement;\n @Output() suiChange = new EventEmitter<SuiToggleButtonCustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiToggleButtonCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiToggleButton extends Components.SuiToggleButton {\n /**\n * Fires on toggle; detail is the new pressed state.\n */\n suiChange: EventEmitter<SuiToggleButtonCustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiToggleSwitch,\n inputs: ['checked', 'description', 'disabled', 'error', 'help', 'iconOff', 'iconOn', 'invalid', 'label', 'labelPos', 'name', 'readOnly', 'required', 'size', 'value'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-toggle-switch',\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', 'error', 'help', 'iconOff', 'iconOn', 'invalid', 'label', 'labelPos', 'name', 'readOnly', 'required', 'size', 'value'],\n outputs: ['suiChange'],\n})\nexport class SuiToggleSwitch {\n protected el: HTMLSuiToggleSwitchElement;\n @Output() suiChange = new EventEmitter<SuiToggleSwitchCustomEvent<boolean>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiToggleSwitchCustomEvent } from '@shineuix/core/dist/components';\n\nexport declare interface SuiToggleSwitch extends Components.SuiToggleSwitch {\n /**\n * Fires on toggle; detail is the new on state.\n */\n suiChange: EventEmitter<SuiToggleSwitchCustomEvent<boolean>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiToolbar,\n inputs: ['elevated', 'landmark', 'sticky', 'tone', 'variant'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-toolbar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['elevated', 'landmark', 'sticky', 'tone', 'variant'],\n})\nexport class SuiToolbar {\n protected el: HTMLSuiToolbarElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiToolbar extends Components.SuiToolbar {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTooltip,\n inputs: ['closeDelay', 'content', 'disabled', 'open', 'openDelay', 'position', 'tone']\n})\n@Component({\n selector: 'sui-tooltip',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['closeDelay', 'content', 'disabled', 'open', 'openDelay', 'position', 'tone'],\n outputs: ['suiClose'],\n})\nexport class SuiTooltip {\n protected el: HTMLSuiTooltipElement;\n @Output() suiClose = new EventEmitter<SuiTooltipCustomEvent<ISuiTooltipSuiCloseReason>>();\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiTooltip['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTooltipCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiTooltipSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTooltip extends Components.SuiTooltip {\n /**\n * Fires before Escape unpins the capsule; detail is always `'escape'`, the only path on which\nthis element writes `open` itself. Cancelable: `preventDefault()` keeps the capsule pinned.\nIt does not bubble.\n */\n suiClose: EventEmitter<SuiTooltipCustomEvent<ISuiTooltipSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTour,\n inputs: ['open', 'step', 'steps', 'target']\n})\n@Component({\n selector: 'sui-tour',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['open', 'step', 'steps', 'target'],\n outputs: ['suiClose', 'suiStepChange'],\n})\nexport class SuiTour {\n protected el: HTMLSuiTourElement;\n @Output() suiClose = new EventEmitter<SuiTourCustomEvent<ISuiTourSuiCloseReason>>();\n @Output() suiStepChange = new EventEmitter<SuiTourCustomEvent<number>>();\n /** Emits the new `step` when the element changes it (`suiStepChange`), so `[(step)]` binds both ways. */\n @Output() stepChange = propChange<SuiTourCustomEvent<number>>(this, 'suiStepChange');\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiTour['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTourCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiTourSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTour extends Components.SuiTour {\n /**\n * Fires before the tour ends itself. Detail is why: `'pick'` for Finish (the tour was completed),\n`'cancel'` for Skip, `'close-button'` for the X, `'escape'` for Escape. Cancelable:\n`preventDefault()` keeps the tour open. It does not bubble.\n */\n suiClose: EventEmitter<SuiTourCustomEvent<ISuiTourSuiCloseReason>>;\n /**\n * Fires after Next or Back; detail is the new step index. Does not bubble.\n */\n suiStepChange: EventEmitter<SuiTourCustomEvent<number>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTree,\n inputs: ['dragDrop', 'emptyFilterMessage', 'emptyMessage', 'expanded', 'filter', 'loading', 'loadingMessage', 'nodes', 'selection', 'selectionMode'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-tree',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['dragDrop', 'emptyFilterMessage', 'emptyMessage', 'expanded', 'filter', 'loading', 'loadingMessage', 'nodes', 'selection', 'selectionMode'],\n outputs: ['suiExpandedChange', 'suiSelectionChange', 'suiLoad', 'suiNodesChange'],\n})\nexport class SuiTree {\n protected el: HTMLSuiTreeElement;\n @Output() suiExpandedChange = new EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiKey[]>>();\n @Output() suiSelectionChange = new EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiKey[]>>();\n @Output() suiLoad = new EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiTreeNode>>();\n @Output() suiNodesChange = new EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiTreeNode[]>>();\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiTreeCustomEvent<ISuiTreeSuiKey[]>>(this, 'suiExpandedChange');\n /** Emits the new `nodes` when the element changes it (`suiNodesChange`), so `[(nodes)]` binds both ways. */\n @Output() nodesChange = propChange<SuiTreeCustomEvent<ISuiTreeSuiTreeNode[]>>(this, 'suiNodesChange');\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiTreeCustomEvent<ISuiTreeSuiKey[]>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTreeCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiTreeSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiTreeNode as ISuiTreeSuiTreeNode } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTree extends Components.SuiTree {\n /**\n * Fires when a branch opens or closes; detail is the array of expanded keys. Does not\nbubble.\n */\n suiExpandedChange: EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiKey[]>>;\n /**\n * Fires when the selection changes; detail is the new `selection`. Does not bubble.\n */\n suiSelectionChange: EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiKey[]>>;\n /**\n * Asks the host for a branch's children: fires when the element opens a node marked\n`leaf: false` that has none yet and is not already `loading`. Detail is the node. Answer by\nsetting its `loading`, then its `children`, and assigning a new `nodes` array. Writing\n`expanded` from outside opens a branch without asking, since the caller already knows which.\n */\n suiLoad: EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiTreeNode>>;\n /**\n * Fires after a row moves; detail is the new `nodes` tree, which is written back first. Does\nnot bubble.\n */\n suiNodesChange: EventEmitter<SuiTreeCustomEvent<ISuiTreeSuiTreeNode[]>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTreeSelect,\n inputs: ['clearable', 'disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'expanded', 'filter', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'multiple', 'name', 'open', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n methods: ['setFocus']\n})\n@Component({\n selector: 'sui-tree-select',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['clearable', 'disabled', 'emptyFilterMessage', 'emptyMessage', 'error', 'expanded', 'filter', 'help', 'invalid', 'label', 'loading', 'loadingMessage', 'multiple', 'name', 'open', 'options', 'placeholder', 'readOnly', 'required', 'size', 'tone', 'value', 'variant', 'virtualScrollThreshold'],\n outputs: ['suiChange', 'suiExpandedChange', 'suiOpen', 'suiClose'],\n})\nexport class SuiTreeSelect {\n protected el: HTMLSuiTreeSelectElement;\n @Output() suiChange = new EventEmitter<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiChoiceValue>>();\n @Output() suiExpandedChange = new EventEmitter<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiKey[]>>();\n @Output() suiOpen = new EventEmitter<SuiTreeSelectCustomEvent<void>>();\n @Output() suiClose = new EventEmitter<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiCloseReason>>();\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiKey[]>>(this, 'suiExpandedChange');\n /** Emits `open` when the element changes it itself (`suiOpen`, or a `suiClose` nobody vetoed), so `[(open)]` binds both ways. */\n @Output() openChange = openStateChange<Components.SuiTreeSelect['open']>(this, 'open');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTreeSelectCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiChoiceValue as ISuiTreeSelectSuiChoiceValue } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiTreeSelectSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiCloseReason as ISuiTreeSelectSuiCloseReason } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTreeSelect extends Components.SuiTreeSelect {\n /**\n * Fires when the pick changes; detail is the new `value`: the node's key (single, `''` after a\nclear) or the array of keys (multiple).\n */\n suiChange: EventEmitter<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiChoiceValue>>;\n /**\n * Fires when a branch in the panel opens or closes; detail is the array of expanded keys. Does\nnot bubble: it reports the panel's state, not the value, like `suiOpen` and `suiClose`.\n */\n suiExpandedChange: EventEmitter<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiKey[]>>;\n /**\n * Fires after the element opens the panel itself (trigger click, ArrowDown, Enter, Space). Does\nnot bubble, so a dialog around the control never takes it for its own.\n */\n suiOpen: EventEmitter<SuiTreeSelectCustomEvent<void>>;\n /**\n * Fires before the element closes the panel itself; detail is\n`'pick' | 'escape' | 'outside' | 'trigger'`. Cancelable: `preventDefault()` keeps it open, so\n`detail === 'pick'` is how a consumer keeps a single-mode panel up after a choice. Tab reports\n`'outside'`, because focus left the control and `SuiCloseReason` has no member for that. Does\nnot bubble: a `preventDefault()` in a dialog's own `suiClose` listener cannot veto this one.\n */\n suiClose: EventEmitter<SuiTreeSelectCustomEvent<ISuiTreeSelectSuiCloseReason>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTreeTable,\n inputs: ['columns', 'density', 'emptyFilterMessage', 'emptyMessage', 'expanded', 'filterDisplay', 'filterMode', 'filterModel', 'globalFilter', 'globalFilterFields', 'gridlines', 'loading', 'nodes', 'nullOrder', 'selection', 'selectionMode', 'sortIndicator', 'sortMode', 'sorts', 'striped'],\n methods: ['setFocus', 'expandAll', 'collapseAll', 'setFilter']\n})\n@Component({\n selector: 'sui-tree-table',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columns', 'density', 'emptyFilterMessage', 'emptyMessage', 'expanded', 'filterDisplay', 'filterMode', 'filterModel', 'globalFilter', 'globalFilterFields', 'gridlines', 'loading', 'nodes', 'nullOrder', 'selection', 'selectionMode', 'sortIndicator', 'sortMode', 'sorts', 'striped'],\n outputs: ['suiExpandedChange', 'suiSelectionChange', 'suiLoad', 'suiSort', 'suiFilter'],\n})\nexport class SuiTreeTable {\n protected el: HTMLSuiTreeTableElement;\n @Output() suiExpandedChange = new EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiKey[]>>();\n @Output() suiSelectionChange = new EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiKey[]>>();\n @Output() suiLoad = new EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiGridTreeNode>>();\n @Output() suiSort = new EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiGridSort[]>>();\n @Output() suiFilter = new EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiGridFilterModel>>();\n /** Emits the new `expanded` when the element changes it (`suiExpandedChange`), so `[(expanded)]` binds both ways. */\n @Output() expandedChange = propChange<SuiTreeTableCustomEvent<ISuiTreeTableSuiKey[]>>(this, 'suiExpandedChange');\n /** Emits the new `selection` when the element changes it (`suiSelectionChange`), so `[(selection)]` binds both ways. */\n @Output() selectionChange = propChange<SuiTreeTableCustomEvent<ISuiTreeTableSuiKey[]>>(this, 'suiSelectionChange');\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiTreeTableCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiKey as ISuiTreeTableSuiKey } from '@shineuix/core/dist/components';\nimport type { SuiGridTreeNode as ISuiTreeTableSuiGridTreeNode } from '@shineuix/core/dist/components';\nimport type { SuiGridSort as ISuiTreeTableSuiGridSort } from '@shineuix/core/dist/components';\nimport type { SuiGridFilterModel as ISuiTreeTableSuiGridFilterModel } from '@shineuix/core/dist/components';\n\nexport declare interface SuiTreeTable extends Components.SuiTreeTable {\n /**\n * Fires when a branch opens or closes; detail is the array of open keys. Does not bubble.\n */\n suiExpandedChange: EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiKey[]>>;\n /**\n * Fires when the selection changes; detail is the new `selection`, the checked keys. Does not\nbubble.\n */\n suiSelectionChange: EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiKey[]>>;\n /**\n * Asks the host for a branch's children: fires when a node marked `leaf: false` that has none\nyet and is not already `loading` opens. Detail is the node. Answer by setting its `loading`,\nthen its `children`, and assigning a new `nodes` array. Writing `expanded` from outside opens a\nbranch without asking, since the caller already knows which.\n */\n suiLoad: EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiGridTreeNode>>;\n /**\n * Fires when a header click changes the sort; detail is the new ordered term list. Does not\nbubble.\n */\n suiSort: EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiGridSort[]>>;\n /**\n * Fires when the filter row or the filter menu changes the filter; detail is the whole model.\nDoes not bubble.\n */\n suiFilter: EventEmitter<SuiTreeTableCustomEvent<ISuiTreeTableSuiGridFilterModel>>;\n}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiTrend,\n inputs: ['direction', 'note', 'severity', 'value']\n})\n@Component({\n selector: 'sui-trend',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['direction', 'note', 'severity', 'value'],\n})\nexport class SuiTrend {\n protected el: HTMLSuiTrendElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nexport declare interface SuiTrend extends Components.SuiTrend {}\n\n\n@ProxyCmp({\n defineCustomElementFn: defineSuiVirtualScroller,\n inputs: ['columns', 'height', 'itemCount', 'itemHeight', 'itemWidth', 'orientation', 'overscan', 'renderItem', 'showIndex', 'width'],\n methods: ['setFocus', 'scrollToIndex', 'refresh']\n})\n@Component({\n selector: 'sui-virtual-scroller',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['columns', 'height', 'itemCount', 'itemHeight', 'itemWidth', 'orientation', 'overscan', 'renderItem', 'showIndex', 'width'],\n outputs: ['suiRange'],\n})\nexport class SuiVirtualScroller {\n protected el: HTMLSuiVirtualScrollerElement;\n @Output() suiRange = new EventEmitter<SuiVirtualScrollerCustomEvent<ISuiVirtualScrollerSuiVirtualScrollerRangeDetail>>();\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n\n\nimport type { SuiVirtualScrollerCustomEvent } from '@shineuix/core/dist/components';\nimport type { SuiVirtualScrollerRangeDetail as ISuiVirtualScrollerSuiVirtualScrollerRangeDetail } from '@shineuix/core/dist/components';\n\nexport declare interface SuiVirtualScroller extends Components.SuiVirtualScroller {\n /**\n * Fires when the mounted window changes, and once on the first render; detail is `{ start, end }`\nwith `end` exclusive, plus `colStart` and `colEnd` in a grid. Fetch `start`..`end` here to page\na list from a server, then call `refresh()` when the rows arrive: props in, events out, no\nlazy flag. Does not bubble.\n */\n suiRange: EventEmitter<SuiVirtualScrollerCustomEvent<ISuiVirtualScrollerSuiVirtualScrollerRangeDetail>>;\n}\n\n\n","\nimport * as d from './proxies';\n\nexport const DIRECTIVES = [\n d.SuiAccordion,\n d.SuiAccordionItem,\n d.SuiAnchor,\n d.SuiAutoComplete,\n d.SuiAvatar,\n d.SuiAvatarGroup,\n d.SuiBadge,\n d.SuiBlockUi,\n d.SuiBoard,\n d.SuiBottomNav,\n d.SuiBreadcrumb,\n d.SuiButton,\n d.SuiButtonGroup,\n d.SuiCalendar,\n d.SuiCard,\n d.SuiCarousel,\n d.SuiCascadeSelect,\n d.SuiChartBar,\n d.SuiChartCandlestick,\n d.SuiChartCombo,\n d.SuiChartGauge,\n d.SuiChartHeatmap,\n d.SuiChartLine,\n d.SuiChartNavigator,\n d.SuiChartPie,\n d.SuiChartRadar,\n d.SuiChartScatter,\n d.SuiChartSynced,\n d.SuiChartTreemap,\n d.SuiChartWaterfall,\n d.SuiCheckbox,\n d.SuiCheckboxGroup,\n d.SuiChip,\n d.SuiChoiceCards,\n d.SuiCodeBlock,\n d.SuiColorEditor,\n d.SuiColorPicker,\n d.SuiCommandPalette,\n d.SuiConfigList,\n d.SuiConfigRow,\n d.SuiConfirmDialog,\n d.SuiConfirmPopup,\n d.SuiContextMenu,\n d.SuiCopyButton,\n d.SuiDataGrid,\n d.SuiDataTable,\n d.SuiDataView,\n d.SuiDatePicker,\n d.SuiDescriptionList,\n d.SuiDialog,\n d.SuiDivider,\n d.SuiDock,\n d.SuiDrawer,\n d.SuiEditBox,\n d.SuiEmptyState,\n d.SuiFieldset,\n d.SuiFileUpload,\n d.SuiFilterBuilder,\n d.SuiFilterPanel,\n d.SuiFloatLabel,\n d.SuiFluid,\n d.SuiForm,\n d.SuiFormActions,\n d.SuiFormLayout,\n d.SuiGalleria,\n d.SuiIconButton,\n d.SuiIconField,\n d.SuiIftaLabel,\n d.SuiImage,\n d.SuiImageCompare,\n d.SuiInplace,\n d.SuiInputGroup,\n d.SuiInputGroupAddon,\n d.SuiInputMask,\n d.SuiInputNumber,\n d.SuiInputOtp,\n d.SuiInputTags,\n d.SuiInputText,\n d.SuiKbd,\n d.SuiKnob,\n d.SuiList,\n d.SuiListbox,\n d.SuiMegaMenu,\n d.SuiMenu,\n d.SuiMenubar,\n d.SuiMessage,\n d.SuiMeterGroup,\n d.SuiMiniToolbar,\n d.SuiMultiSelect,\n d.SuiNotificationCenter,\n d.SuiOrderList,\n d.SuiOrgChart,\n d.SuiOverlayBadge,\n d.SuiPageHeader,\n d.SuiPaginator,\n d.SuiPanel,\n d.SuiPanelMenu,\n d.SuiPassword,\n d.SuiPersona,\n d.SuiPickList,\n d.SuiPopover,\n d.SuiProgressBar,\n d.SuiProgressRing,\n d.SuiProgressSpinner,\n d.SuiQrCode,\n d.SuiRadioButton,\n d.SuiRadioGroup,\n d.SuiRating,\n d.SuiRichTextEditor,\n d.SuiSaveStatus,\n d.SuiSchedulerBuilder,\n d.SuiScrollPanel,\n d.SuiScrollTop,\n d.SuiSelect,\n d.SuiSelectButton,\n d.SuiSideNav,\n d.SuiSkeleton,\n d.SuiSkeletonCard,\n d.SuiSlider,\n d.SuiSparkline,\n d.SuiSpeedDial,\n d.SuiSplitButton,\n d.SuiSplitter,\n d.SuiSpoiler,\n d.SuiStatCard,\n d.SuiStepper,\n d.SuiTab,\n d.SuiTabs,\n d.SuiTag,\n d.SuiTerminal,\n d.SuiTextarea,\n d.SuiThemePicker,\n d.SuiTieredMenu,\n d.SuiTimePicker,\n d.SuiTimeline,\n d.SuiToastHost,\n d.SuiToggleButton,\n d.SuiToggleSwitch,\n d.SuiToolbar,\n d.SuiTooltip,\n d.SuiTour,\n d.SuiTree,\n d.SuiTreeSelect,\n d.SuiTreeTable,\n d.SuiTrend,\n d.SuiVirtualScroller\n];\n","import { Directive, ElementRef, HostListener } from '@angular/core';\nimport { ControlValueAccessor } from '@angular/forms';\n\n@Directive({})\nexport class ValueAccessor implements ControlValueAccessor {\n\n private onChange: (value: any) => void = () => {/**/};\n private onTouched: () => void = () => {/**/};\n protected lastValue: any;\n\n constructor(protected el: ElementRef) {}\n\n writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value == null ? '' : value;\n }\n\n handleChangeEvent(value: any) {\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: any) => 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, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './value-accessor';\n\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-checkbox, sui-toggle-switch, sui-toggle-button, sui-radio-button',\n host: {\n '(suiChange)': 'handleChangeEvent($event.target?.[\"checked\"])'\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => BooleanValueAccessor),\n multi: true\n }\n ]\n})\nexport class BooleanValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n override writeValue(value: any) {\n this.el.nativeElement.checked = this.lastValue = value == null ? false : value;\n }\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './value-accessor';\n\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-input-text, sui-textarea, sui-input-mask, sui-password, sui-icon-field, sui-float-label, sui-ifta-label, sui-auto-complete, sui-inplace',\n host: {\n '(suiInput)': 'handleChangeEvent($event.target?.[\"value\"])',\n '(suiChange)': 'handleChangeEvent($event.target?.[\"value\"])'\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TextValueAccessor),\n multi: true\n }\n ]\n})\nexport class TextValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './directives/value-accessor';\n\n/**\n * Binds `[(ngModel)]` and reactive forms to `sui-filter-panel`, whose value is the applied set in\n * `values` and commits on `suiChange` (apply, clear all, a chip's removal). A null model clears\n * the set. Written by hand because the generated accessors write `value`. Keep the selector equal\n * to `FILTER_VALUES_ELEMENTS` in `packages/core/form-bindings.ts`.\n */\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-filter-panel',\n host: {\n '(suiChange)': 'handleChangeEvent($event.target?.[\"values\"])',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SuiFilterPanelValueAccessor),\n multi: true,\n },\n ],\n})\nexport class SuiFilterPanelValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.values = this.lastValue = value == null ? {} : value;\n }\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './directives/value-accessor';\n\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-rich-text-editor, sui-edit-box',\n host: {\n '(suiChange)': 'handleChangeEvent($event.target?.[\"html\"])',\n '(suiSave)': 'handleChangeEvent($event.target?.[\"html\"])',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SuiHtmlValueAccessor),\n multi: true,\n },\n ],\n})\nexport class SuiHtmlValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.html = this.lastValue = value == null ? '' : value;\n }\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './directives/value-accessor';\n\n/** The model a numeric element's value stands for: a finite number, a range slider's\n * `[low, high]` pair, or null for no value. A cleared `sui-input-number` emits null, and\n * parseFloat(null) is NaN, which Validators.required counts as a value: a required amount the user\n * had just emptied passed. */\nconst toModel = (value: unknown): number | [number, number] | null => {\n if (Array.isArray(value)) {\n const pair = [Number(value[0]), Number(value[1])];\n return value.length >= 2 && pair.every(Number.isFinite) ? (pair as [number, number]) : null;\n }\n if (value == null || value === '') return null;\n const n = typeof value === 'number' ? value : Number(value);\n return Number.isFinite(n) ? n : null;\n};\n\n/** What a null model writes: an empty value, which `sui-input-number`, `sui-slider` and `sui-knob`\n * hold as null (a required one then fails), and no stars in `sui-rating`. */\nconst emptyNumber = (el: HTMLElement): number | null => (el.tagName === 'SUI-RATING' ? 0 : null);\n\n/**\n * Binds `[(ngModel)]` and reactive forms to the numeric elements. Written by hand, not generated\n * from `packages/core/form-bindings.ts`, because the generated accessor parsed the value with\n * parseFloat. The model is a number, a range slider's `[low, high]` pair, or null: null, an empty\n * string and NaN all report null, so a cleared required field is invalid. Keep the selector equal\n * to `NUMBER_ELEMENTS` there; `scripts/check-value-accessors.mjs` fails when they differ.\n */\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-input-number, sui-slider, sui-rating, sui-knob',\n host: {\n '(suiChange)': 'handleChangeEvent($event.target?.[\"value\"])',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NumericValueAccessor),\n multi: true,\n },\n ],\n})\nexport class NumericValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n override writeValue(value: any) {\n const model = toModel(value);\n this.lastValue = model;\n this.el.nativeElement.value = model !== null ? model : emptyNumber(this.el.nativeElement);\n }\n\n override registerOnChange(fn: (_: number | [number, number] | null) => void) {\n super.registerOnChange((value) => fn(toModel(value)));\n }\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './directives/value-accessor';\n\n/**\n * Binds `[(ngModel)]` and reactive forms to `sui-scheduler-builder`, whose value is the schedule\n * in `config` (the seed form, which the element writes back after every edit) and commits on\n * `suiChange`. A null model gives the element's default schedule. Written by hand because the\n * generated accessors write `value`. Keep the selector equal to `SCHEDULE_CONFIG_ELEMENTS` in\n * `packages/core/form-bindings.ts`.\n */\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-scheduler-builder',\n host: {\n '(suiChange)': 'handleChangeEvent($event.target?.[\"config\"])',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SuiSchedulerBuilderValueAccessor),\n multi: true,\n },\n ],\n})\nexport class SuiSchedulerBuilderValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.config = this.lastValue = value == null ? undefined : value;\n }\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { ValueAccessor } from './directives/value-accessor';\n\n/** Elements whose value is always a list. */\nconst LISTS = new Set(['SUI-MULTI-SELECT', 'SUI-CHECKBOX-GROUP', 'SUI-INPUT-TAGS']);\n/** Elements whose value is a list while `multiple` is set. */\nconst MULTIPLE = new Set(['SUI-LISTBOX', 'SUI-SELECT-BUTTON', 'SUI-TREE-SELECT', 'SUI-CHOICE-CARDS']);\n/** Elements whose value is an object, with no object meaning \"none\". */\nconst OBJECTS = new Set(['SUI-FILTER-BUILDER']);\n\n/** What a null model writes: an empty list where the value is a list, nothing where it is an\n * object, and an empty string elsewhere. An empty string in a list-valued element read back as a\n * string, not the empty array the element itself holds. */\nconst emptyValue = (el: HTMLElement & { multiple?: boolean }): unknown => {\n if (LISTS.has(el.tagName)) return [];\n if (MULTIPLE.has(el.tagName) && (el.multiple || el.hasAttribute('multiple'))) return [];\n if (OBJECTS.has(el.tagName)) return undefined;\n return '';\n};\n\n/**\n * Binds `[(ngModel)]` and reactive forms to the elements that commit a `value` on `suiChange`: the\n * select family, the choice groups, the pickers, OTP, tags and the filter builder. Written by hand,\n * not generated from `packages/core/form-bindings.ts`, so that a null model, which a form's\n * `reset()` writes, gives each element its own empty value. Keep the selector equal to\n * `SELECT_ELEMENTS` there; `scripts/check-value-accessors.mjs` fails when they differ.\n */\n@Directive({\n /* tslint:disable-next-line:directive-selector */\n selector: 'sui-select, sui-multi-select, sui-cascade-select, sui-tree-select, sui-listbox, sui-select-button, sui-radio-group, sui-checkbox-group, sui-choice-cards, sui-date-picker, sui-time-picker, sui-color-picker, sui-color-editor, sui-input-otp, sui-input-tags, sui-filter-builder',\n host: {\n '(suiChange)': 'handleChangeEvent($event.target?.[\"value\"])',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SelectValueAccessor),\n multi: true,\n },\n ],\n})\nexport class SelectValueAccessor extends ValueAccessor {\n constructor(el: ElementRef) {\n super(el);\n }\n\n override writeValue(value: any) {\n this.el.nativeElement.value = this.lastValue = value == null ? emptyValue(this.el.nativeElement) : value;\n }\n}\n","export * from './directives';\nexport { DIRECTIVES } from './directives/index';\nexport * from './directives/proxies';\nimport { BooleanValueAccessor } from './directives/boolean-value-accessor';\nimport { TextValueAccessor } from './directives/text-value-accessor';\nimport { SuiFilterPanelValueAccessor } from './filter-panel-value-accessor';\nimport { SuiHtmlValueAccessor } from './html-value-accessor';\nimport { NumericValueAccessor } from './numeric-value-accessor';\nimport { SuiSchedulerBuilderValueAccessor } from './scheduler-builder-value-accessor';\nimport { SelectValueAccessor } from './select-value-accessor';\n\nexport { ValueAccessor } from './directives/value-accessor';\nexport {\n BooleanValueAccessor, NumericValueAccessor, SelectValueAccessor, SuiFilterPanelValueAccessor, SuiHtmlValueAccessor,\n SuiSchedulerBuilderValueAccessor, TextValueAccessor,\n};\n\nexport const VALUE_ACCESSORS = [\n TextValueAccessor,\n NumericValueAccessor,\n BooleanValueAccessor,\n SelectValueAccessor,\n SuiHtmlValueAccessor,\n SuiFilterPanelValueAccessor,\n SuiSchedulerBuilderValueAccessor,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["defineSuiAccordion","defineSuiAccordionItem","defineSuiAnchor","defineSuiAutoComplete","defineSuiAvatar","defineSuiAvatarGroup","defineSuiBadge","defineSuiBlockUi","defineSuiBoard","defineSuiBottomNav","defineSuiBreadcrumb","defineSuiButton","defineSuiButtonGroup","defineSuiCalendar","defineSuiCard","defineSuiCarousel","defineSuiCascadeSelect","defineSuiChartBar","defineSuiChartCandlestick","defineSuiChartCombo","defineSuiChartGauge","defineSuiChartHeatmap","defineSuiChartLine","defineSuiChartNavigator","defineSuiChartPie","defineSuiChartRadar","defineSuiChartScatter","defineSuiChartSynced","defineSuiChartTreemap","defineSuiChartWaterfall","defineSuiCheckbox","defineSuiCheckboxGroup","defineSuiChip","defineSuiChoiceCards","defineSuiCodeBlock","defineSuiColorEditor","defineSuiColorPicker","defineSuiCommandPalette","defineSuiConfigList","defineSuiConfigRow","defineSuiConfirmDialog","defineSuiConfirmPopup","defineSuiContextMenu","defineSuiCopyButton","defineSuiDataGrid","defineSuiDataTable","defineSuiDataView","defineSuiDatePicker","defineSuiDescriptionList","defineSuiDialog","defineSuiDivider","defineSuiDock","defineSuiDrawer","defineSuiEditBox","defineSuiEmptyState","defineSuiFieldset","defineSuiFileUpload","defineSuiFilterBuilder","defineSuiFilterPanel","defineSuiFloatLabel","defineSuiFluid","defineSuiForm","defineSuiFormActions","defineSuiFormLayout","defineSuiGalleria","defineSuiIconButton","defineSuiIconField","defineSuiIftaLabel","defineSuiImage","defineSuiImageCompare","defineSuiInplace","defineSuiInputGroup","defineSuiInputGroupAddon","defineSuiInputMask","defineSuiInputNumber","defineSuiInputOtp","defineSuiInputTags","defineSuiInputText","defineSuiKbd","defineSuiKnob","defineSuiList","defineSuiListbox","defineSuiMegaMenu","defineSuiMenu","defineSuiMenubar","defineSuiMessage","defineSuiMeterGroup","defineSuiMiniToolbar","defineSuiMultiSelect","defineSuiNotificationCenter","defineSuiOrderList","defineSuiOrgChart","defineSuiOverlayBadge","defineSuiPageHeader","defineSuiPaginator","defineSuiPanel","defineSuiPanelMenu","defineSuiPassword","defineSuiPersona","defineSuiPickList","defineSuiPopover","defineSuiProgressBar","defineSuiProgressRing","defineSuiProgressSpinner","defineSuiQrCode","defineSuiRadioButton","defineSuiRadioGroup","defineSuiRating","defineSuiRichTextEditor","defineSuiSaveStatus","defineSuiSchedulerBuilder","defineSuiScrollPanel","defineSuiScrollTop","defineSuiSelect","defineSuiSelectButton","defineSuiSideNav","defineSuiSkeleton","defineSuiSkeletonCard","defineSuiSlider","defineSuiSparkline","defineSuiSpeedDial","defineSuiSplitButton","defineSuiSplitter","defineSuiSpoiler","defineSuiStatCard","defineSuiStepper","defineSuiTab","defineSuiTabs","defineSuiTag","defineSuiTerminal","defineSuiTextarea","defineSuiThemePicker","defineSuiTieredMenu","defineSuiTimePicker","defineSuiTimeline","defineSuiToastHost","defineSuiToggleButton","defineSuiToggleSwitch","defineSuiToolbar","defineSuiTooltip","defineSuiTour","defineSuiTree","defineSuiTreeSelect","defineSuiTreeTable","defineSuiTrend","defineSuiVirtualScroller","d.SuiAccordion","d.SuiAccordionItem","d.SuiAnchor","d.SuiAutoComplete","d.SuiAvatar","d.SuiAvatarGroup","d.SuiBadge","d.SuiBlockUi","d.SuiBoard","d.SuiBottomNav","d.SuiBreadcrumb","d.SuiButton","d.SuiButtonGroup","d.SuiCalendar","d.SuiCard","d.SuiCarousel","d.SuiCascadeSelect","d.SuiChartBar","d.SuiChartCandlestick","d.SuiChartCombo","d.SuiChartGauge","d.SuiChartHeatmap","d.SuiChartLine","d.SuiChartNavigator","d.SuiChartPie","d.SuiChartRadar","d.SuiChartScatter","d.SuiChartSynced","d.SuiChartTreemap","d.SuiChartWaterfall","d.SuiCheckbox","d.SuiCheckboxGroup","d.SuiChip","d.SuiChoiceCards","d.SuiCodeBlock","d.SuiColorEditor","d.SuiColorPicker","d.SuiCommandPalette","d.SuiConfigList","d.SuiConfigRow","d.SuiConfirmDialog","d.SuiConfirmPopup","d.SuiContextMenu","d.SuiCopyButton","d.SuiDataGrid","d.SuiDataTable","d.SuiDataView","d.SuiDatePicker","d.SuiDescriptionList","d.SuiDialog","d.SuiDivider","d.SuiDock","d.SuiDrawer","d.SuiEditBox","d.SuiEmptyState","d.SuiFieldset","d.SuiFileUpload","d.SuiFilterBuilder","d.SuiFilterPanel","d.SuiFloatLabel","d.SuiFluid","d.SuiForm","d.SuiFormActions","d.SuiFormLayout","d.SuiGalleria","d.SuiIconButton","d.SuiIconField","d.SuiIftaLabel","d.SuiImage","d.SuiImageCompare","d.SuiInplace","d.SuiInputGroup","d.SuiInputGroupAddon","d.SuiInputMask","d.SuiInputNumber","d.SuiInputOtp","d.SuiInputTags","d.SuiInputText","d.SuiKbd","d.SuiKnob","d.SuiList","d.SuiListbox","d.SuiMegaMenu","d.SuiMenu","d.SuiMenubar","d.SuiMessage","d.SuiMeterGroup","d.SuiMiniToolbar","d.SuiMultiSelect","d.SuiNotificationCenter","d.SuiOrderList","d.SuiOrgChart","d.SuiOverlayBadge","d.SuiPageHeader","d.SuiPaginator","d.SuiPanel","d.SuiPanelMenu","d.SuiPassword","d.SuiPersona","d.SuiPickList","d.SuiPopover","d.SuiProgressBar","d.SuiProgressRing","d.SuiProgressSpinner","d.SuiQrCode","d.SuiRadioButton","d.SuiRadioGroup","d.SuiRating","d.SuiRichTextEditor","d.SuiSaveStatus","d.SuiSchedulerBuilder","d.SuiScrollPanel","d.SuiScrollTop","d.SuiSelect","d.SuiSelectButton","d.SuiSideNav","d.SuiSkeleton","d.SuiSkeletonCard","d.SuiSlider","d.SuiSparkline","d.SuiSpeedDial","d.SuiSplitButton","d.SuiSplitter","d.SuiSpoiler","d.SuiStatCard","d.SuiStepper","d.SuiTab","d.SuiTabs","d.SuiTag","d.SuiTerminal","d.SuiTextarea","d.SuiThemePicker","d.SuiTieredMenu","d.SuiTimePicker","d.SuiTimeline","d.SuiToastHost","d.SuiToggleButton","d.SuiToggleSwitch","d.SuiToolbar","d.SuiTooltip","d.SuiTour","d.SuiTree","d.SuiTreeSelect","d.SuiTreeTable","d.SuiTrend","d.SuiVirtualScroller"],"mappings":"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"}
|