@truenas/ui-components 0.3.14 → 0.3.16

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@truenas/ui-components",
3
- "version": "0.3.14",
3
+ "version": "0.3.16",
4
4
  "publishConfig": {
5
5
  "registry": "https://registry.npmjs.org",
6
6
  "access": "public"
@@ -657,3 +657,102 @@ tn-dialog-shell {
657
657
  box-shadow: none;
658
658
  margin: 0;
659
659
  }
660
+
661
+ /* ================================
662
+ CDK Overlay base styles
663
+ ================================
664
+ Mirrors @angular/cdk/overlay-prebuilt.css. These structural rules are
665
+ REQUIRED for any component built on the CDK connected-position overlay
666
+ (tn-select, tn-autocomplete, tn-tooltip, tn-file-picker, tn-date-input…).
667
+ Consuming apps that only import this themes.css would otherwise never load
668
+ them, with two visible symptoms:
669
+
670
+ 1. pointer-events: none on the overlay container is INHERITED by the
671
+ connected-position bounding box (a flex column anchored to the trigger
672
+ that is typically far wider/taller than the visible panel). Without it
673
+ the bounding box keeps the default `auto` and silently eats clicks in
674
+ the empty area around the panel — so a no-backdrop dropdown like
675
+ tn-select can't be dismissed by clicking "outside" it (the click lands
676
+ on the bounding box, which is technically inside the overlay, so CDK's
677
+ outsidePointerEvents() never fires).
678
+ 2. .cdk-overlay-pane { max-height: 100% } keeps panels constrained to the
679
+ viewport so their internal `overflow-y: auto` regions actually scroll.
680
+
681
+ Only .cdk-overlay-pane re-enables pointer-events: auto, so the panel itself
682
+ stays interactive while everything around it is click-through. */
683
+ .cdk-overlay-container,
684
+ .cdk-global-overlay-wrapper {
685
+ pointer-events: none;
686
+ top: 0;
687
+ left: 0;
688
+ height: 100%;
689
+ width: 100%;
690
+ }
691
+
692
+ .cdk-overlay-container {
693
+ position: fixed;
694
+ z-index: 1000;
695
+ }
696
+
697
+ .cdk-overlay-container:empty {
698
+ display: none;
699
+ }
700
+
701
+ .cdk-global-overlay-wrapper {
702
+ display: flex;
703
+ position: absolute;
704
+ z-index: 1000;
705
+ }
706
+
707
+ .cdk-overlay-pane {
708
+ position: absolute;
709
+ pointer-events: auto;
710
+ box-sizing: border-box;
711
+ display: flex;
712
+ max-width: 100%;
713
+ max-height: 100%;
714
+ z-index: 1000;
715
+ }
716
+
717
+ .cdk-overlay-connected-position-bounding-box {
718
+ position: absolute;
719
+ display: flex;
720
+ flex-direction: column;
721
+ min-width: 1px;
722
+ min-height: 1px;
723
+ z-index: 1000;
724
+ }
725
+
726
+ .cdk-overlay-backdrop {
727
+ position: absolute;
728
+ top: 0;
729
+ bottom: 0;
730
+ left: 0;
731
+ right: 0;
732
+ pointer-events: auto;
733
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
734
+ opacity: 0;
735
+ z-index: 1000;
736
+ transition: opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1);
737
+ }
738
+
739
+ .cdk-overlay-backdrop-showing {
740
+ opacity: 1;
741
+ }
742
+
743
+ .cdk-overlay-transparent-backdrop {
744
+ transition: visibility 1ms linear, opacity 1ms linear;
745
+ visibility: hidden;
746
+ opacity: 1;
747
+ }
748
+
749
+ .cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing {
750
+ opacity: 0;
751
+ visibility: visible;
752
+ }
753
+
754
+ .cdk-global-scrollblock {
755
+ position: fixed;
756
+ width: 100%;
757
+ overflow-y: scroll;
758
+ }
@@ -1,5 +1,5 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { InjectionToken, Renderer2, OnDestroy, ElementRef, AfterViewInit, OnInit, TemplateRef, AfterContentInit, Provider, ChangeDetectorRef, Signal, PipeTransform, ViewContainerRef, AfterViewChecked, ComponentRef } from '@angular/core';
2
+ import { Signal, InjectionToken, Renderer2, OnDestroy, ElementRef, AfterViewInit, OnInit, TemplateRef, AfterContentInit, Provider, ChangeDetectorRef, PipeTransform, ViewContainerRef, AfterViewChecked, ComponentRef } from '@angular/core';
3
3
  import { ControlValueAccessor, NgControl, AbstractControl } from '@angular/forms';
4
4
  import { ComponentHarness, BaseHarnessFilters, HarnessPredicate, TestKey, HarnessLoader } from '@angular/cdk/testing';
5
5
  import { SafeHtml, SafeResourceUrl, DomSanitizer } from '@angular/platform-browser';
@@ -82,6 +82,42 @@ declare function scopeTestId(base: TnTestIdValue, ...suffix: (string | number |
82
82
  */
83
83
  declare function composeTestId(type: string | null | undefined, value: TnTestIdValue): string;
84
84
 
85
+ /**
86
+ * Resolve a form control's test-id base, falling back to the bound control's
87
+ * name (`formControlName`, a named `[formControl]`, or `ngModel`) when the
88
+ * consumer provides no explicit `testId`.
89
+ *
90
+ * Call from a form control's field initializer and bind the result on the
91
+ * element that represents the control:
92
+ *
93
+ * ```ts
94
+ * protected resolvedTestId = controlTestId(this.testId);
95
+ * ```
96
+ * ```html
97
+ * <input tnTestIdType="input" [tnTestId]="resolvedTestId()" />
98
+ * ```
99
+ *
100
+ * The element-type prefix (`tnTestIdType`) still applies, so a
101
+ * `<tn-input formControlName="sshPort">` with no `testId` emits
102
+ * `input-ssh-port` — exactly what a consumer would otherwise hand-write as
103
+ * `testId="ssh-port"`. An explicit `testId` always wins.
104
+ *
105
+ * Two deliberate constraints make this safe inside a `ControlValueAccessor`:
106
+ *
107
+ * - **`self`-scoped**: the lookup reads only the `NgControl` on the component's
108
+ * OWN host element, never an ancestor's. A composite control whose template
109
+ * embeds child controls therefore can't leak its own name onto those children
110
+ * (which would make their ids collide).
111
+ * - **lazy**: the `NgControl` is resolved on first read, not in the injection
112
+ * context. Eagerly injecting `NgControl` into a component that provides
113
+ * `NG_VALUE_ACCESSOR` is circular (the control needs the value accessor, the
114
+ * accessor would need the control); reading it after construction is not.
115
+ *
116
+ * Must be called within an injection context (a field initializer or
117
+ * constructor).
118
+ */
119
+ declare function controlTestId(testId: Signal<TnTestIdValue>): Signal<TnTestIdValue>;
120
+
85
121
  /**
86
122
  * Test-id attribute names supported by the library.
87
123
  *
@@ -118,6 +154,10 @@ declare const TN_TEST_ATTR: InjectionToken<TnTestAttrName>;
118
154
  * {@link composeTestId}). When no `tnTestIdType` is set the value is written
119
155
  * verbatim, so existing call sites are unaffected.
120
156
  *
157
+ * Form controls derive an unset base from the bound control's name via
158
+ * {@link controlTestId} before passing it here, so a control stays targetable by
159
+ * automation without the consumer repeating the name as a `testId`.
160
+ *
121
161
  * @example
122
162
  * ```html
123
163
  * <!-- component-owned prefix: emits data-testid="button-save" -->
@@ -200,6 +240,8 @@ declare class TnSelectComponent<T = unknown> implements ControlValueAccessor, On
200
240
  emptyLabel: _angular_core.InputSignal<string>;
201
241
  disabled: _angular_core.InputSignal<boolean>;
202
242
  testId: _angular_core.InputSignal<TnTestIdValue>;
243
+ /** Test-id base, falling back to the bound control name when `testId` is unset. */
244
+ protected resolvedTestId: _angular_core.Signal<TnTestIdValue>;
203
245
  multiple: _angular_core.InputSignal<boolean>;
204
246
  /**
205
247
  * Optional extractor for the per-option test-id discriminator. Defaults to
@@ -245,8 +287,9 @@ declare class TnSelectComponent<T = unknown> implements ControlValueAccessor, On
245
287
  private instanceId;
246
288
  /**
247
289
  * Id namespace used by all DOM ids the template emits (dropdown panel,
248
- * option rows, group labels). Prefers `testId` when set so tests can target
249
- * specific instances; otherwise falls back to a per-instance counter so two
290
+ * option rows, group labels). Prefers the resolved test-id base (explicit
291
+ * `testId`, else the bound control name) so tests can target specific
292
+ * instances; otherwise falls back to a per-instance counter so two
250
293
  * `<tn-select>`s on the same page never collide on `aria-controls`/group ids.
251
294
  */
252
295
  protected idNamespace: _angular_core.Signal<string>;
@@ -279,16 +322,15 @@ declare class TnSelectComponent<T = unknown> implements ControlValueAccessor, On
279
322
  isOptionFocused(option: TnSelectOption<T>): boolean;
280
323
  /**
281
324
  * Test-id segments for an option row, consumed by `[tnTestId]` with
282
- * `tnTestIdType="option"`. The select's `testId` scopes each option so ids
283
- * stay unique across selects: base `quick-filters` + option value `ssd`
284
- * `option-quick-filters-ssd`; with no base → `option-ssd`. The discriminator
285
- * comes from `optionTestIdKey` when provided, else the option's primitive
286
- * `value`, else its `label`.
325
+ * `tnTestIdType="option"`. The select's resolved base (explicit `testId`, else
326
+ * the bound control name) scopes each option so ids stay unique across selects:
327
+ * base `quick-filters` + option value `ssd` → `option-quick-filters-ssd`; with
328
+ * no base → `option-ssd`. The discriminator comes from `optionTestIdKey` when
329
+ * provided, else the option's primitive `value`, else its `label`.
287
330
  */
288
331
  protected optionTestIdParts(option: TnSelectOption<T>): (string | number | null | undefined)[];
289
332
  private onChange;
290
333
  private onTouched;
291
- private elementRef;
292
334
  private cdr;
293
335
  private overlay;
294
336
  private viewContainerRef;
@@ -307,11 +349,19 @@ declare class TnSelectComponent<T = unknown> implements ControlValueAccessor, On
307
349
  *
308
350
  * Why an overlay (vs. an inline absolutely-positioned panel):
309
351
  * - Escapes parent `overflow: hidden`/clipping in surrounding layouts.
310
- * - `outsidePointerEvents()` notifies on outside pointerdown WITHOUT
311
- * intercepting the click (no backdrop) — so the user's click reaches
312
- * the underlying target while the select closes silently.
313
352
  * - Position is recomputed on scroll so the panel stays attached.
314
- * - Width is matched to the trigger so the panel doesn't jump in size.
353
+ *
354
+ * Dismissal uses a transparent, full-viewport backdrop (`backdropClick()`).
355
+ * We previously ran backdrop-less with `outsidePointerEvents()`, but that
356
+ * only closes when the click lands strictly OUTSIDE the overlay pane — and
357
+ * the pane was sized to the (often full-width) trigger while the panel itself
358
+ * is only as wide as its content. The empty pane area to the right of the
359
+ * options stayed `pointer-events: auto`, so clicks there never counted as
360
+ * "outside" and the dropdown wouldn't close. A transparent backdrop closes on
361
+ * ANY click outside the panel regardless of pane geometry — the standard
362
+ * pattern used by native `<select>` and Material's `mat-select`. We therefore
363
+ * also drop the explicit `width`: the pane sizes to the panel content so the
364
+ * clickable surface matches what the user sees.
315
365
  */
316
366
  private attachOverlay;
317
367
  private detachOverlay;
@@ -1608,6 +1658,8 @@ declare class TnInputComponent implements AfterViewInit, OnDestroy, ControlValue
1608
1658
  inputType: _angular_core.InputSignal<InputType>;
1609
1659
  placeholder: _angular_core.InputSignal<string>;
1610
1660
  testId: _angular_core.InputSignal<TnTestIdValue>;
1661
+ /** Test-id base, falling back to the bound control name when `testId` is unset. */
1662
+ protected resolvedTestId: _angular_core.Signal<TnTestIdValue>;
1611
1663
  disabled: _angular_core.InputSignal<boolean>;
1612
1664
  multiline: _angular_core.InputSignal<boolean>;
1613
1665
  rows: _angular_core.InputSignal<number>;
@@ -3240,6 +3292,8 @@ declare class TnCheckboxComponent implements AfterViewInit, OnDestroy, ControlVa
3240
3292
  required: _angular_core.InputSignal<boolean>;
3241
3293
  indeterminate: _angular_core.InputSignal<boolean>;
3242
3294
  testId: _angular_core.InputSignal<TnTestIdValue>;
3295
+ /** Test-id base, falling back to the bound control name when `testId` is unset. */
3296
+ protected resolvedTestId: _angular_core.Signal<TnTestIdValue>;
3243
3297
  error: _angular_core.InputSignal<string | null>;
3244
3298
  checked: _angular_core.InputSignal<boolean>;
3245
3299
  change: _angular_core.OutputEmitterRef<boolean>;
@@ -3449,6 +3503,8 @@ declare class TnRadioComponent implements AfterViewInit, OnDestroy, ControlValue
3449
3503
  disabled: _angular_core.InputSignal<boolean>;
3450
3504
  required: _angular_core.InputSignal<boolean>;
3451
3505
  testId: _angular_core.InputSignal<TnTestIdValue>;
3506
+ /** Test-id base, falling back to the bound control name when `testId` is unset. */
3507
+ protected resolvedTestId: _angular_core.Signal<TnTestIdValue>;
3452
3508
  error: _angular_core.InputSignal<string | null>;
3453
3509
  change: _angular_core.OutputEmitterRef<unknown>;
3454
3510
  id: string;
@@ -3592,6 +3648,8 @@ declare class TnSlideToggleComponent implements AfterViewInit, OnDestroy, Contro
3592
3648
  required: _angular_core.InputSignal<boolean>;
3593
3649
  color: _angular_core.InputSignal<SlideToggleColor>;
3594
3650
  testId: _angular_core.InputSignal<TnTestIdValue>;
3651
+ /** Test-id base, falling back to the bound control name when `testId` is unset. */
3652
+ protected resolvedTestId: _angular_core.Signal<TnTestIdValue>;
3595
3653
  ariaLabel: _angular_core.InputSignal<string | undefined>;
3596
3654
  ariaLabelledby: _angular_core.InputSignal<string | undefined>;
3597
3655
  checked: _angular_core.InputSignal<boolean>;
@@ -8678,5 +8736,5 @@ declare const TN_THEME_DEFINITIONS: readonly TnThemeDefinition[];
8678
8736
  */
8679
8737
  declare const THEME_MAP: Map<TnTheme, TnThemeDefinition>;
8680
8738
 
8681
- export { CommonShortcuts, DEFAULT_THEME, DiskIconComponent, DiskType, FileSizePipe, InputType, LIGHT_THEME, LabelMarkupPipe, LabelTextPipe, LinuxModifierKeys, LinuxShortcuts, ModifierKeys, QuickShortcuts, ShortcutBuilder, StripMntPrefixPipe, THEME_MAP, THEME_STORAGE_KEY, TN_FORM_FIELD_ERRORS, TN_TABLE_PAGER_DEFAULT_LABELS, TN_TABLE_PAGER_LABELS, TN_TEST_ATTR, TN_THEME_DEFINITIONS, TnAutocompleteComponent, TnAutocompleteHarness, TnBannerActionDirective, TnBannerComponent, TnBannerHarness, TnBrandedSpinnerComponent, TnButtonComponent, TnButtonHarness, TnButtonToggleComponent, TnButtonToggleGroupComponent, TnButtonToggleGroupHarness, TnButtonToggleHarness, TnCalendarComponent, TnCalendarHeaderComponent, TnCardComponent, TnCardFooterActionsDirective, TnCardHeaderActionsDirective, TnCardHeaderDirective, TnCellDefDirective, TnCheckboxComponent, TnCheckboxHarness, TnCheckboxLabelDirective, TnChipComponent, TnChipHarness, TnChipInputComponent, TnChipInputHarness, TnConfirmDialogComponent, TnDateInputComponent, TnDateInputHarness, TnDateRangeInputComponent, TnDateRangeInputHarness, TnDetailRowDefDirective, TnDialog, TnDialogHarness, TnDialogShellComponent, TnDialogTesting, TnDividerComponent, TnDividerDirective, TnDrawerComponent, TnDrawerContainerComponent, TnDrawerContainerHarness, TnDrawerContentComponent, TnDrawerHarness, TnEmptyComponent, TnEmptyHarness, TnExpansionPanelComponent, TnExpansionPanelHarness, TnFileInputComponent, TnFileInputHarness, TnFilePickerComponent, TnFilePickerPopupComponent, TnFormFieldComponent, TnFormFieldHarness, TnFormSectionComponent, TnFormSectionHarness, TnHeaderCellDefDirective, TnIconButtonComponent, TnIconButtonHarness, TnIconComponent, TnIconHarness, TnIconRegistryService, TnIconTesting, TnInputComponent, TnInputDirective, TnInputHarness, TnKeyboardShortcutComponent, TnKeyboardShortcutService, TnListAvatarDirective, TnListComponent, TnListIconDirective, TnListItemComponent, TnListItemLineDirective, TnListItemPrimaryDirective, TnListItemSecondaryDirective, TnListItemTitleDirective, TnListItemTrailingDirective, TnListOptionComponent, TnListSubheaderComponent, TnMenuActivateHoverDirective, TnMenuComponent, TnMenuHarness, TnMenuItemComponent, TnMenuTesting, TnMenuTriggerDirective, TnMonthViewComponent, TnMultiYearViewComponent, TnNestedTreeNodeComponent, TnParticleProgressBarComponent, TnProgressBarComponent, TnRadioComponent, TnRadioHarness, TnSelectComponent, TnSelectHarness, TnSelectionListComponent, TnSidePanelActionDirective, TnSidePanelComponent, TnSidePanelHarness, TnSidePanelHeaderActionDirective, TnSlideToggleComponent, TnSlideToggleHarness, TnSliderComponent, TnSliderThumbDirective, TnSliderWithLabelDirective, TnSpinnerComponent, TnSpriteLoaderService, TnStepComponent, TnStepperComponent, TnTabComponent, TnTabHarness, TnTabPanelComponent, TnTabPanelHarness, TnTableColumnDirective, TnTableComponent, TnTableHarness, TnTablePagerComponent, TnTablePagerHarness, TnTabsComponent, TnTabsHarness, TnTestIdDirective, TnTheme, TnThemeService, TnTimeInputComponent, TnToastComponent, TnToastMock, TnToastPosition, TnToastRef, TnToastService, TnToastTesting, TnToastType, TnTooltipComponent, TnTooltipDirective, TnTreeComponent, TnTreeFlatDataSource, TnTreeFlattener, TnTreeNodeComponent, TnTreeNodeOutletDirective, TruncatePathPipe, WindowsModifierKeys, WindowsShortcuts, composeTestId, createLucideLibrary, createShortcut, defaultSpriteBasePath, defaultSpriteConfigPath, formatSize, kebabTestSegment, labelMarkupToHtml, labelMarkupToText, libIconMarker, parseLabelMarkup, parseSize, registerLucideIcons, scopeTestId, setupLucideIntegration, tnIconMarker, writeTestId };
8739
+ export { CommonShortcuts, DEFAULT_THEME, DiskIconComponent, DiskType, FileSizePipe, InputType, LIGHT_THEME, LabelMarkupPipe, LabelTextPipe, LinuxModifierKeys, LinuxShortcuts, ModifierKeys, QuickShortcuts, ShortcutBuilder, StripMntPrefixPipe, THEME_MAP, THEME_STORAGE_KEY, TN_FORM_FIELD_ERRORS, TN_TABLE_PAGER_DEFAULT_LABELS, TN_TABLE_PAGER_LABELS, TN_TEST_ATTR, TN_THEME_DEFINITIONS, TnAutocompleteComponent, TnAutocompleteHarness, TnBannerActionDirective, TnBannerComponent, TnBannerHarness, TnBrandedSpinnerComponent, TnButtonComponent, TnButtonHarness, TnButtonToggleComponent, TnButtonToggleGroupComponent, TnButtonToggleGroupHarness, TnButtonToggleHarness, TnCalendarComponent, TnCalendarHeaderComponent, TnCardComponent, TnCardFooterActionsDirective, TnCardHeaderActionsDirective, TnCardHeaderDirective, TnCellDefDirective, TnCheckboxComponent, TnCheckboxHarness, TnCheckboxLabelDirective, TnChipComponent, TnChipHarness, TnChipInputComponent, TnChipInputHarness, TnConfirmDialogComponent, TnDateInputComponent, TnDateInputHarness, TnDateRangeInputComponent, TnDateRangeInputHarness, TnDetailRowDefDirective, TnDialog, TnDialogHarness, TnDialogShellComponent, TnDialogTesting, TnDividerComponent, TnDividerDirective, TnDrawerComponent, TnDrawerContainerComponent, TnDrawerContainerHarness, TnDrawerContentComponent, TnDrawerHarness, TnEmptyComponent, TnEmptyHarness, TnExpansionPanelComponent, TnExpansionPanelHarness, TnFileInputComponent, TnFileInputHarness, TnFilePickerComponent, TnFilePickerPopupComponent, TnFormFieldComponent, TnFormFieldHarness, TnFormSectionComponent, TnFormSectionHarness, TnHeaderCellDefDirective, TnIconButtonComponent, TnIconButtonHarness, TnIconComponent, TnIconHarness, TnIconRegistryService, TnIconTesting, TnInputComponent, TnInputDirective, TnInputHarness, TnKeyboardShortcutComponent, TnKeyboardShortcutService, TnListAvatarDirective, TnListComponent, TnListIconDirective, TnListItemComponent, TnListItemLineDirective, TnListItemPrimaryDirective, TnListItemSecondaryDirective, TnListItemTitleDirective, TnListItemTrailingDirective, TnListOptionComponent, TnListSubheaderComponent, TnMenuActivateHoverDirective, TnMenuComponent, TnMenuHarness, TnMenuItemComponent, TnMenuTesting, TnMenuTriggerDirective, TnMonthViewComponent, TnMultiYearViewComponent, TnNestedTreeNodeComponent, TnParticleProgressBarComponent, TnProgressBarComponent, TnRadioComponent, TnRadioHarness, TnSelectComponent, TnSelectHarness, TnSelectionListComponent, TnSidePanelActionDirective, TnSidePanelComponent, TnSidePanelHarness, TnSidePanelHeaderActionDirective, TnSlideToggleComponent, TnSlideToggleHarness, TnSliderComponent, TnSliderThumbDirective, TnSliderWithLabelDirective, TnSpinnerComponent, TnSpriteLoaderService, TnStepComponent, TnStepperComponent, TnTabComponent, TnTabHarness, TnTabPanelComponent, TnTabPanelHarness, TnTableColumnDirective, TnTableComponent, TnTableHarness, TnTablePagerComponent, TnTablePagerHarness, TnTabsComponent, TnTabsHarness, TnTestIdDirective, TnTheme, TnThemeService, TnTimeInputComponent, TnToastComponent, TnToastMock, TnToastPosition, TnToastRef, TnToastService, TnToastTesting, TnToastType, TnTooltipComponent, TnTooltipDirective, TnTreeComponent, TnTreeFlatDataSource, TnTreeFlattener, TnTreeNodeComponent, TnTreeNodeOutletDirective, TruncatePathPipe, WindowsModifierKeys, WindowsShortcuts, composeTestId, controlTestId, createLucideLibrary, createShortcut, defaultSpriteBasePath, defaultSpriteConfigPath, formatSize, kebabTestSegment, labelMarkupToHtml, labelMarkupToText, libIconMarker, parseLabelMarkup, parseSize, registerLucideIcons, scopeTestId, setupLucideIntegration, tnIconMarker, writeTestId };
8682
8740
  export type { AutocompleteHarnessFilters, BannerHarnessFilters, ButtonHarnessFilters, ButtonToggleHarnessFilters, CalendarCell, CheckboxHarnessFilters, ChipColor, ChipHarnessFilters, CreateFolderEvent, DateInputHarnessFilters, DateRange, DateRangeInputHarnessFilters, DialogHarnessFilters, EmptyHarnessFilters, ExpansionPanelHarnessFilters, FileInputHarnessFilters, FilePickerCallbacks, FilePickerError, FilePickerMode, FileSystemItem, FormFieldHarnessFilters, FormSectionHarnessFilters, IconButtonHarnessFilters, IconHarnessFilters, IconLibrary, IconLibraryType, IconResult, IconSize, IconSource, IconTestingMockOverrides, InputHarnessFilters, KeyCombination, LabelMarkupSegment, LabelMarkupSegmentType, LabelType, LucideIconOptions, MenuHarnessFilters, MockIconRegistry, MockSpriteLoader, PathSegment, PlatformType, ProgressBarMode, RadioHarnessFilters, ResolvedIcon, SelectHarnessFilters, ShortcutHandler, SidePanelHarnessFilters, SizeStandard, SlideToggleColor, SlideToggleHarnessFilters, SpinnerMode, SpriteConfig, SubscriptSizing, TabChangeEvent, TabHarnessFilters, TabPanelHarnessFilters, TabsHarnessFilters, TnAutocompleteOption, TnBannerType, TnButtonToggleType, TnCardAction, TnCardControl, TnCardFooterLink, TnCardHeaderStatus, TnChipInputHarnessFilters, TnChipInputOption, TnConfirmDialogData, TnDialogDefaults, TnDialogOpenTarget, TnDrawerMode, TnDrawerPosition, TnEmptySize, TnFlatTreeNode, TnFormFieldErrorMessage, TnFormFieldErrorMessages, TnFormFieldErrorResolver, TnMenuItem, TnSelectOption, TnSelectOptionGroup, TnSelectionChange, TnSortEvent, TnTableDataProvider, TnTableDataSource, TnTableHarnessFilters, TnTablePagerHarnessFilters, TnTablePagerLabels, TnTablePagination, TnTestAttrName, TnTestIdValue, TnThemeDefinition, TnToastCall, TnToastConfig, TooltipPosition, YearCell };