@kouji-ui/components 0.7.1 → 0.8.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kouji-ui/components",
3
- "version": "0.7.1",
3
+ "version": "0.8.0",
4
4
  "description": "Opinionated styled Angular components built on @kouji-ui/core directives. Themed at runtime via @kouji-ui/themes.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -1,5 +1,5 @@
1
1
  import * as i1 from '@kouji-ui/core';
2
- import { KjAlertMode, KjAvatarShape, KjBadgeVariant, KjButtonGroupOrientation, KjCarousel, KjLiveRegion, KjCarouselSlide, KjCarouselAlign, KjChatStore, KjChatAnnouncer, KjChatMessageData, KjSlashCommand, KjColorFormat, KjColorPreset, KjColorValue, KjColorPicker, KjCombobox, KjOverlayTriggerLike, KjDatePicker, KjDateRange, KjDateRangePreset, KjEditorLanguage, KjEditorLineNumbers, KjEditorWordWrap, KjEditorInstance, KjFileRejection, KjUploadableFile, KjFileUpload, KjInput, KjDividerOrientation, KjDividerAlign, KjListAs, KjListOrientation, KjPasswordAutocomplete, KjPasswordScore, KjRichTextFeature, KjRichTextEditor, KjRteToolbarItem, KjActiveOverlay, KjSkeletonShape, KjSkeletonAnimation, KjSpinnerAnimation, KjResourceResult, KjStorageAdapter, KjTableState, KjTable, KjNumberFilterType, KjTabPanel, KjTextareaResize, KjTextareaAutoresize, KjHourCycle, TimeParts, KjToastVariant, KjCascadeSelectOption, KjTreeSelect, KjTreeNode } from '@kouji-ui/core';
2
+ import { KjAlertMode, KjAvatarShape, KjOverflowContent, KjBadgeVariant, KjButtonGroupOrientation, KjCarousel, KjLiveRegion, KjCarouselSlide, KjCarouselAlign, KjChatStore, KjChatAnnouncer, KjChatMessageData, KjSlashCommand, KjColorFormat, KjColorPreset, KjColorValue, KjColorPicker, KjCombobox, KjOverlayTriggerLike, KjDatePicker, KjDateRange, KjDateRangePreset, KjEditorLanguage, KjEditorLineNumbers, KjEditorWordWrap, KjEditorInstance, KjFileRejection, KjUploadableFile, KjFileUpload, KjInput, KjDividerOrientation, KjDividerAlign, KjListAs, KjListOrientation, KjPasswordAutocomplete, KjPasswordScore, KjOverflowContext, KjRichTextFeature, KjRichTextEditor, KjRteToolbarItem, KjActiveOverlay, KjSkeletonShape, KjSkeletonAnimation, KjSpinnerAnimation, KjResourceResult, KjStorageAdapter, KjTableState, KjTable, KjNumberFilterType, KjTabPanel, KjTagList, KjTextareaResize, KjTextareaAutoresize, KjHourCycle, TimeParts, KjToastVariant, KjCascadeSelectOption, KjTreeSelect, KjTreeNode } from '@kouji-ui/core';
3
3
  export { KJ_DROPDOWN_MENU, KjActiveOverlay, KjAlertMode, KjAvatarGroupAriaLabelFormat, KjAvatarShape, KjBadgeVariant, KjBlockquote, KjButtonGroupOrientation, KjCarousel, KjCarouselAlign, KjCarouselControlPattern, KjCarouselOrientation, KjCarouselSlide, KjCascadeSelectOption, KjChatAnnouncer, KjChatMessageData, KjChatRole, KjChatSide, KjChatState, KjChatStore, KjCode, KjColorFormat, KjColorPicker, KjColorPreset, KjColorValue, KjCombobox, KjDatePicker, KjDateRange, KjDateRangePreset, KjDialog, KjDialogOpenOptions, KjDialogRef, KjDialogService, KjDividerAlign, KjDividerOrientation, KjDrawer, KjDrawerOpenOptions, KjDrawerRef, KjDrawerService, KjDrawerSide, KjDropdownMenuCloseReason, KjDropdownMenuContent, KjDropdownMenuContext, KjDropdownMenuGroup, KjDropdownMenuItem, KjDropdownMenuLabel, KjDropdownMenuMount, KjDropdownMenuSeparator, KjDropdownMenuTrigger, KjDropdownMenuTriggerKind, KjEditorInstance, KjEditorLanguage, KjEditorLineNumbers, KjEditorWordWrap, KjFileRejection, KjFileUpload, KjHourCycle, KjInput, KjLead, KjListAs, KjListOrientation, KjLiveRegion, KjMuted, KjNumberFilterType, KjOverlayPanel, KjOverlayTriggerLike, KjPasswordAutocomplete, KjPasswordScore, KjPopoverArrow, KjPopoverClose, KjPopoverContent, KjPopoverTitle, KjPopoverTrigger, KjResourceResult, KjRichTextEditor, KjRichTextFeature, KjRteToolbarItem, KjSheet, KjSheetDetent, KjSheetOpenOptions, KjSheetRef, KjSheetService, KjSkeletonAnimation, KjSkeletonShape, KjSlashCommand, KjSpeedDialDirection, KjSpinnerAnimation, KjStorageAdapter, KjTabPanel, KjTable, KjTableState, KjTextareaAutoresize, KjTextareaResize, KjToastVariant, KjTooltipArrow, KjTooltipContent, KjTooltipGroup, KjTooltipTrigger, KjTreeNode, KjTreeSelect, KjTruncate, KjUploadableFile, SHEET_ARIA_LABEL, SHEET_DATA, SHEET_DETENT, SHEET_DISMISSIBLE } from '@kouji-ui/core';
4
4
  import * as _angular_core from '@angular/core';
5
5
  import { TemplateRef, ModelSignal, AfterViewInit, ElementRef, OnDestroy, EventEmitter, EnvironmentProviders, OnInit, Injector, ResourceRef, Type, InjectionToken } from '@angular/core';
@@ -497,10 +497,15 @@ declare class KjAvatarComponent {
497
497
  * core directive. The wrapper supplies the chip element and the host
498
498
  * `<ng-content/>` slot.
499
499
  *
500
- * The overflow chip is a regular `<kj-avatar>` rendering `'+N'` text; it is
501
- * `aria-hidden` because the group's count-aware label already conveys
502
- * totality (e.g. `"3 of 8 collaborators"`), so exposing the chip again would
503
- * duplicate the announcement.
500
+ * The overflow chip is a button: hovering, focusing or tapping it opens a
501
+ * panel listing the collapsed avatars (their `alt`, else their text content).
502
+ * Project an `<ng-template kjOverflowContent>` to render that panel yourself
503
+ * the context carries the collapsed range (`start`/`end`) so the consumer
504
+ * slices its own data and adds actions (remove, open a profile…).
505
+ *
506
+ * The `<kj-avatar>` inside the chip renders `'+N'` and is `aria-hidden`
507
+ * because the group's count-aware label already conveys totality (e.g.
508
+ * `"3 of 8 collaborators"`); the button itself is named "Show N more".
504
509
  *
505
510
  * @doc-example Default
506
511
  * The default playground — five stacked avatars with the group's defaults.
@@ -510,8 +515,13 @@ declare class KjAvatarComponent {
510
515
  * and a list-mode variant for documents-shared screens.
511
516
  * @doc-file avatar-group.usage.example.ts
512
517
  * @doc-example Overflow
513
- * `kjMax` caps visible avatars; the remainder collapses into a "+N" chip.
518
+ * `kjMax` caps visible avatars; the remainder collapses into a "+N" chip whose
519
+ * hover panel lists the hidden names.
514
520
  * @doc-file avatar-group.overflow.example.ts
521
+ * @doc-example Overflow template
522
+ * `<ng-template kjOverflowContent>` renders the hidden avatars your way — here
523
+ * with a remove action per collaborator.
524
+ * @doc-file avatar-group.overflow-template.example.ts
515
525
  * @doc-example Sizes
516
526
  * Group `kjSize` cascades onto every projected `<kj-avatar>` for a uniform pile.
517
527
  * @doc-file avatar-group.sizes.example.ts
@@ -522,24 +532,30 @@ declare class KjAvatarComponent {
522
532
  * `kjRole="list"` switches to a list landmark — use for "shared by" rows in docs UIs.
523
533
  * @doc-file avatar-group.list.example.ts
524
534
  *
535
+ * @doc-keyboard
536
+ * Tab — Focuses the "+N" chip; the panel opens
537
+ * ArrowDown|Enter — Moves focus into the panel
538
+ * Escape — Closes the panel and returns focus to the chip
539
+ *
525
540
  * @doc-aria
526
541
  * aria-label — Count-aware label like "3 of 8 collaborators"; override via `kjAriaLabelOverride`
527
542
  * role — Defaults to `img` (face-pile); set `kjRole="list"` for a true list landmark
528
- * aria-hidden — Forced on the +N chip so the count isn't re-announced
543
+ * aria-hidden — Forced on the +N avatar so the count isn't re-announced; the chip button is named "Show N more"
544
+ * aria-expanded — Reflects the panel state on the chip button
529
545
  *
530
546
  * @doc-touch
531
- * Stacked avatars are decorative — they aren't tab stops. Pair the group
532
- * with an interactive trigger (button/link) sized 44×44 when clicking is
533
- * meaningful (e.g. opens a collaborator dialog).
547
+ * Stacked avatars are decorative — they aren't tab stops. The "+N" chip is
548
+ * a real button (tap opens the panel); pair the group with an interactive
549
+ * trigger sized 44×44 when clicking an avatar is meaningful.
534
550
  *
535
551
  * @doc-a11y
536
552
  * The face-pile is an `img` landmark with a count-aware accessible name so
537
553
  * AT users hear "3 of 8 collaborators" rather than every initial. Switch to
538
554
  * `role="list"` whenever the order/identity of each face matters
539
- * semantically. The overflow chip is always `aria-hidden` because the
540
- * group's name already conveys totality.
555
+ * semantically. The "+N" chip is a named button, so the collapsed names are
556
+ * one keystroke away for keyboard and screen-reader users.
541
557
  *
542
- * @doc-related avatar,badge,tag
558
+ * @doc-related avatar,badge,tag,overflow
543
559
  *
544
560
  * @doc-css-var
545
561
  * --kj-avatar-size — Avatar diameter. Sizes (xs/sm/md/lg/xl) override.
@@ -559,9 +575,20 @@ declare class KjAvatarGroupComponent {
559
575
  * `provide`s itself under `KJ_AVATAR_GROUP`, so injecting the token returns
560
576
  * the same instance and gives us access to `overflowCount`, `shape`, etc.
561
577
  */
562
- private readonly group;
578
+ protected readonly group: i1.KjAvatarGroupContext;
579
+ private readonly i18n;
580
+ /** Text of the "+N" chip. Defaults to the `overflow.more` translation (`+{count}`). */
581
+ readonly kjOverflowLabel: _angular_core.InputSignal<((count: number) => string) | undefined>;
582
+ /** Accessible name of the chip button. Defaults to the `overflow.show` translation (`Show {count} more`). */
583
+ readonly kjOverflowAriaLabel: _angular_core.InputSignal<((count: number) => string) | undefined>;
584
+ private readonly avatars;
585
+ protected readonly overflowTemplate: _angular_core.Signal<KjOverflowContent | undefined>;
586
+ private readonly panel;
563
587
  protected readonly overflowCount: _angular_core.Signal<number>;
564
588
  protected readonly overflowLabel: _angular_core.Signal<string>;
589
+ protected readonly overflowAriaLabel: _angular_core.Signal<string>;
590
+ /** Labels of the collapsed avatars: `alt`, else a string `content`. */
591
+ protected readonly hiddenLabels: _angular_core.Signal<readonly string[]>;
565
592
  /**
566
593
  * Chip shape mirrors the group's default shape so the chip visually
567
594
  * matches the avatars. `<kj-avatar>`'s own `shape` default is `'circle'`,
@@ -569,8 +596,9 @@ declare class KjAvatarGroupComponent {
569
596
  * collapses to `'circle'`.
570
597
  */
571
598
  protected readonly chipShape: _angular_core.Signal<"circle" | "rounded">;
599
+ protected focusPanel(event: Event): void;
572
600
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<KjAvatarGroupComponent, never>;
573
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<KjAvatarGroupComponent, "kj-avatar-group", never, {}, {}, never, ["*"], true, [{ directive: typeof i1.KjAvatarGroup; inputs: { "kjMax": "kjMax"; "kjTotal": "kjTotal"; "kjSize": "kjSize"; "kjShape": "kjShape"; "kjAriaLabel": "kjAriaLabel"; "kjAriaLabelFormat": "kjAriaLabelFormat"; "kjRole": "kjRole"; "kjAriaLabelOverride": "kjAriaLabelOverride"; }; outputs: {}; }]>;
601
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<KjAvatarGroupComponent, "kj-avatar-group", never, { "kjOverflowLabel": { "alias": "kjOverflowLabel"; "required": false; "isSignal": true; }; "kjOverflowAriaLabel": { "alias": "kjOverflowAriaLabel"; "required": false; "isSignal": true; }; }, {}, ["avatars", "overflowTemplate"], ["*"], true, [{ directive: typeof i1.KjAvatarGroup; inputs: { "kjMax": "kjMax"; "kjTotal": "kjTotal"; "kjSize": "kjSize"; "kjShape": "kjShape"; "kjAriaLabel": "kjAriaLabel"; "kjAriaLabelFormat": "kjAriaLabelFormat"; "kjRole": "kjRole"; "kjAriaLabelOverride": "kjAriaLabelOverride"; }; outputs: {}; }]>;
574
602
  }
575
603
 
576
604
  /**
@@ -5528,6 +5556,45 @@ declare class KjPopoverComponent {
5528
5556
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<KjPopoverComponent, "kj-popover", never, {}, {}, never, ["*"], true, never>;
5529
5557
  }
5530
5558
 
5559
+ /**
5560
+ * The panel a collapsing group (`kj-tag-list`, `kj-avatar-group`) opens from
5561
+ * its "+N" chip: the consumer's `kjOverflowContent` template when one is
5562
+ * projected, otherwise a plain list of the collapsed items' labels.
5563
+ *
5564
+ * Owns the keyboard story the hover trigger cannot: `focusFirst()` moves
5565
+ * focus into the panel (the chip calls it on ArrowDown / Enter), Escape
5566
+ * inside the panel returns focus to the chip, and focus leaving the panel
5567
+ * closes it.
5568
+ *
5569
+ * @doc-category Library/Data display
5570
+ * @doc
5571
+ * @doc-name overflow
5572
+ */
5573
+ declare class KjOverflowPanelComponent {
5574
+ /** The "+N" chip's popover trigger. */
5575
+ readonly kjFor: _angular_core.InputSignal<KjOverlayTriggerLike>;
5576
+ /** Number of collapsed items. */
5577
+ readonly kjCount: _angular_core.InputSignal<number>;
5578
+ /** Index of the first collapsed item in the consumer's collection. */
5579
+ readonly kjStart: _angular_core.InputSignal<number>;
5580
+ /** Exclusive end index of the collapsed range. */
5581
+ readonly kjEnd: _angular_core.InputSignal<number>;
5582
+ /** Labels of the collapsed items — the default panel content. */
5583
+ readonly kjLabels: _angular_core.InputSignal<readonly string[]>;
5584
+ /** Consumer template rendered instead of the label list. */
5585
+ readonly kjTemplate: _angular_core.InputSignal<KjOverflowContent | undefined>;
5586
+ readonly kjSide: _angular_core.InputSignal<"top" | "right" | "bottom" | "left">;
5587
+ readonly kjAlign: _angular_core.InputSignal<"start" | "center" | "end">;
5588
+ private readonly panel;
5589
+ protected readonly context: _angular_core.Signal<KjOverflowContext>;
5590
+ /** Moves focus to the first focusable element of the panel (or the panel itself). */
5591
+ focusFirst(): void;
5592
+ protected focusTrigger(): void;
5593
+ protected onFocusOut(event: FocusEvent): void;
5594
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<KjOverflowPanelComponent, never>;
5595
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<KjOverflowPanelComponent, "kj-overflow-panel", never, { "kjFor": { "alias": "kjFor"; "required": true; "isSignal": true; }; "kjCount": { "alias": "kjCount"; "required": true; "isSignal": true; }; "kjStart": { "alias": "kjStart"; "required": true; "isSignal": true; }; "kjEnd": { "alias": "kjEnd"; "required": true; "isSignal": true; }; "kjLabels": { "alias": "kjLabels"; "required": false; "isSignal": true; }; "kjTemplate": { "alias": "kjTemplate"; "required": false; "isSignal": true; }; "kjSide": { "alias": "kjSide"; "required": false; "isSignal": true; }; "kjAlign": { "alias": "kjAlign"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
5596
+ }
5597
+
5531
5598
  /**
5532
5599
  * Styled wrapper around the headless `KjProgressBar` directive. Composes the
5533
5600
  * core directive on an inner element and renders the inner
@@ -8127,6 +8194,14 @@ declare class KjTabPanelComponent {
8127
8194
  * @doc-example Tag list
8128
8195
  * Wrap chips in `<kj-tag-list>` for single-tab-stop + arrow-key navigation.
8129
8196
  * @doc-file tag.list.example.ts
8197
+ * @doc-example Overflow
8198
+ * `[kjMax]` on the list collapses the extra chips into a "+N" chip whose hover
8199
+ * panel lists them.
8200
+ * @doc-file tag.overflow.example.ts
8201
+ * @doc-example Overflow template
8202
+ * `<ng-template kjOverflowContent>` renders the collapsed chips your way — here
8203
+ * as rows with a remove action.
8204
+ * @doc-file tag.overflow-template.example.ts
8130
8205
  *
8131
8206
  * @doc-keyboard
8132
8207
  * Enter|Space — Activates a selectable tag; flips `aria-pressed`
@@ -8190,15 +8265,39 @@ declare class KjTagRemoveComponent {
8190
8265
  }
8191
8266
  /**
8192
8267
  * Optional chip-group container. Provides the listbox / grid / group ARIA
8193
- * wiring + roving tabindex via the headless `KjTagList` directive. Standalone
8194
- * tags work without it; wrap chips in `<kj-tag-list>` whenever the group
8195
- * needs a single tab stop and arrow-key navigation.
8268
+ * wiring + roving tabindex via the headless `KjTagList` directive, and — with
8269
+ * `[kjMax]` collapses the chips past the cap into a "+N" chip. Hovering,
8270
+ * focusing or tapping that chip opens a panel listing the collapsed chips;
8271
+ * project an `<ng-template kjOverflowContent>` to render the panel yourself
8272
+ * (the context carries the collapsed range, so you slice your own data and
8273
+ * add actions such as remove).
8274
+ *
8275
+ * Standalone tags work without it; wrap chips in `<kj-tag-list>` whenever the
8276
+ * group needs a single tab stop and arrow-key navigation.
8277
+ *
8278
+ * The "+N" chip is a button rendered inside the container: keep the container
8279
+ * on its default `group` role when using `kjMax` (a `listbox` / `grid` only
8280
+ * admits option / row children).
8196
8281
  * @doc
8197
8282
  * @doc-name tag
8198
8283
  */
8199
8284
  declare class KjTagListComponent {
8285
+ protected readonly list: KjTagList;
8286
+ private readonly i18n;
8287
+ /** Text of the "+N" chip. Defaults to the `overflow.more` translation (`+{count}`). */
8288
+ readonly kjOverflowLabel: _angular_core.InputSignal<((count: number) => string) | undefined>;
8289
+ /** Accessible name of the chip button. Defaults to the `overflow.show` translation (`Show {count} more`). */
8290
+ readonly kjOverflowAriaLabel: _angular_core.InputSignal<((count: number) => string) | undefined>;
8291
+ /** Variant of the "+N" chip. Default `secondary`. */
8292
+ readonly kjOverflowVariant: _angular_core.InputSignal<string>;
8293
+ protected readonly overflowTemplate: _angular_core.Signal<KjOverflowContent | undefined>;
8294
+ private readonly panel;
8295
+ protected readonly overflowCount: _angular_core.Signal<number>;
8296
+ protected readonly overflowLabel: _angular_core.Signal<string>;
8297
+ protected readonly overflowAriaLabel: _angular_core.Signal<string>;
8298
+ protected focusPanel(event: Event): void;
8200
8299
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<KjTagListComponent, never>;
8201
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<KjTagListComponent, "kj-tag-list", never, {}, {}, never, ["*"], true, [{ directive: typeof i1.KjTagList; inputs: { "kjTagListRole": "kjTagListRole"; "kjTagListOrientation": "kjTagListOrientation"; "kjTagListMultiple": "kjTagListMultiple"; "kjTagListDisabled": "kjTagListDisabled"; }; outputs: {}; }]>;
8300
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<KjTagListComponent, "kj-tag-list", never, { "kjOverflowLabel": { "alias": "kjOverflowLabel"; "required": false; "isSignal": true; }; "kjOverflowAriaLabel": { "alias": "kjOverflowAriaLabel"; "required": false; "isSignal": true; }; "kjOverflowVariant": { "alias": "kjOverflowVariant"; "required": false; "isSignal": true; }; }, {}, ["overflowTemplate"], ["*"], true, [{ directive: typeof i1.KjTagList; inputs: { "kjTagListRole": "kjTagListRole"; "kjTagListOrientation": "kjTagListOrientation"; "kjTagListMultiple": "kjTagListMultiple"; "kjTagListDisabled": "kjTagListDisabled"; "kjMax": "kjMax"; }; outputs: {}; }]>;
8202
8301
  }
8203
8302
 
8204
8303
  /**
@@ -9199,5 +9298,5 @@ declare class KjTreeSelectComponent {
9199
9298
 
9200
9299
  declare const KJ_COMPONENTS_VERSION = "0.0.1";
9201
9300
 
9202
- export { KJ_COMPONENTS_VERSION, KJ_EDITOR_CONTRACT, KJ_FILTER_CONTEXT, KjAccordionComponent, KjAccordionContentComponent, KjAccordionItemComponent, KjAccordionTriggerComponent, KjActionSheet, KjActionSheetComponent, KjActionSheetRef, KjActionSheetService, KjAlertActionsComponent, KjAlertComponent, KjAlertDescriptionComponent, KjAlertDismissComponent, KjAlertIconComponent, KjAlertTitleComponent, KjAvatarComponent, KjAvatarGroupComponent, KjBadgeComponent, KjBooleanEditor, KjBreadcrumbComponent, KjBreadcrumbCurrentComponent, KjBreadcrumbEllipsisComponent, KjBreadcrumbItemComponent, KjBreadcrumbLinkComponent, KjBreadcrumbListComponent, KjBreadcrumbSeparatorComponent, KjBulkAction, KjButtonComponent, KjButtonGroupComponent, KjCalendarComponent, KjCardComponent, KjCardContentComponent, KjCardCoverComponent, KjCardFooterComponent, KjCardHeaderComponent, KjCardSubtitleComponent, KjCardTitleComponent, KjCarouselAutoplayComponent, KjCarouselComponent, KjCarouselIndicatorsComponent, KjCarouselNextComponent, KjCarouselPauseComponent, KjCarouselPreviousComponent, KjCarouselSlideComponent, KjCarouselViewportComponent, KjCascadeOptionComponent, KjCascadeSelectComponent, KjCascadeSubPanelComponent, KjCellEditorOutlet, KjCellTemplateDirective, KjChartComponent, KjChatAvatarComponent, KjChatBubbleComponent, KjChatComponent, KjChatFooterComponent, KjChatHeaderComponent, KjChatLogComponent, KjChatMessage, KjChatThread, KjCheckboxComponent, KjColorPickerComponent, KjComboboxComponent, KjComboboxEmptyComponent, KjComboboxLoadingComponent, KjComboboxOptionComponent, KjCommandEmptyComponent, KjCommandGroupComponent, KjCommandInputComponent, KjCommandItemComponent, KjCommandPaletteComponent, KjCommandPaletteFooter, KjCommandPaletteItemTemplate, KjCommandSeparatorComponent, KjConfirmPopupActionComponent, KjConfirmPopupActionsComponent, KjConfirmPopupCancelComponent, KjConfirmPopupComponent, KjConfirmPopupContentComponent, KjConfirmPopupMessageComponent, KjConfirmPopupTriggerComponent, KjDateEditor, KjDateFilter, KjDatePickerComponent, KjDateRangePresetsComponent, KjDatetimePickerComponent, KjDialogComponent, KjDirectionToggle, KjDividerComponent, KjDrawerComponent, KjDropdownMenuComponent, KjEditorComponent, KjEmptyStateActionsComponent, KjEmptyStateComponent, KjEmptyStateDescriptionComponent, KjEmptyStateIconComponent, KjEmptyStateTitleComponent, KjFieldComponent, KjFieldErrorComponent, KjFieldGroupComponent, KjFieldHelpComponent, KjFieldLabelComponent, KjFileUploadComponent, KjFilterCellOutlet, KjFormActionsComponent, KjFormComponent, KjFormSummaryComponent, KjIconGalleryExample, KjIconUsageExample, KjInputComponent, KjInputGroupAddonComponent, KjInputGroupComponent, KjInputMaskComponent, KjInputMaskCreditCardExample, KjInputMaskCustomTokensExample, KjInputMaskDateExample, KjInputMaskExample, KjInputMaskUsageExample, KjInputMaskValidationExample, KjInputOtpComponent, KjKbdComponent, KjLinkComponent, KjListComponent, KjListItemComponent, KjMenubarComponent, KjMenubarItemComponent, KjNumberEditor, KjNumberFilter, KjNumberInputComponent, KjOptionComponent, KjOverlayBadgeComponent, KjOverlayBadgeContentComponent, KjPaginationComponent, KjPaginationDefaultComponent, KjPaginationEllipsisComponent, KjPaginationFirstComponent, KjPaginationInfoComponent, KjPaginationItemComponent, KjPaginationLastComponent, KjPaginationNextComponent, KjPaginationPreviousComponent, KjPasswordInputComponent, KjPopoverComponent, KjProgressBarComponent, KjPromptInput, KjRadioComponent, KjRadioGroupComponent, KjRichTextEditorComponent, KjSelectComponent, KjSelectEditor, KjSelectFilter, KjSheetComponent, KjSkeletonComponent, KjSkipLinkComponent, KjSliderComponent, KjSpeedDialActionComponent, KjSpeedDialActionsComponent, KjSpeedDialComponent, KjSpeedDialTriggerComponent, KjSpinnerComponent, KjStepComponent, KjStepContentComponent, KjStepLabelComponent, KjStepperComponent, KjStepperNextComponent, KjStepperPreviousComponent, KjStepperResetComponent, KjTabComponent, KjTabListComponent, KjTabPanelComponent, KjTableComponent, KjTableEmptyTemplate, KjTableErrorTemplate, KjTableLoadingTemplate, KjTablePaginationComponent, KjTableSidePanelComponent, KjTableSidePanelContent, KjTableStatusBarComponent, KjTableToolbarComponent, KjTableVirtual, KjTabsComponent, KjTagComponent, KjTagListComponent, KjTagRemoveComponent, KjTextEditor, KjTextFilter, KjTextareaComponent, KjTimePickerComponent, KjToastCloseComponent, KjToastComponent, KjToastViewportComponent, KjToastWrapperComponent, KjToggleComponent, KjTooltipComponent, KjTreeSelectComponent, KjTreeSelectNodeComponent, LUCIDE_ICON_NAMES, bold, bulletList, codeBlock, copyToClipboard, defaultFeatures, downloadString, exportCsv, exportJson, heading, history, image, inlineCode, italic, link, markdownShortcuts, orderedList, provideLucideIcons, quote, renderMarkdown, strike, toTsv, underline };
9301
+ export { KJ_COMPONENTS_VERSION, KJ_EDITOR_CONTRACT, KJ_FILTER_CONTEXT, KjAccordionComponent, KjAccordionContentComponent, KjAccordionItemComponent, KjAccordionTriggerComponent, KjActionSheet, KjActionSheetComponent, KjActionSheetRef, KjActionSheetService, KjAlertActionsComponent, KjAlertComponent, KjAlertDescriptionComponent, KjAlertDismissComponent, KjAlertIconComponent, KjAlertTitleComponent, KjAvatarComponent, KjAvatarGroupComponent, KjBadgeComponent, KjBooleanEditor, KjBreadcrumbComponent, KjBreadcrumbCurrentComponent, KjBreadcrumbEllipsisComponent, KjBreadcrumbItemComponent, KjBreadcrumbLinkComponent, KjBreadcrumbListComponent, KjBreadcrumbSeparatorComponent, KjBulkAction, KjButtonComponent, KjButtonGroupComponent, KjCalendarComponent, KjCardComponent, KjCardContentComponent, KjCardCoverComponent, KjCardFooterComponent, KjCardHeaderComponent, KjCardSubtitleComponent, KjCardTitleComponent, KjCarouselAutoplayComponent, KjCarouselComponent, KjCarouselIndicatorsComponent, KjCarouselNextComponent, KjCarouselPauseComponent, KjCarouselPreviousComponent, KjCarouselSlideComponent, KjCarouselViewportComponent, KjCascadeOptionComponent, KjCascadeSelectComponent, KjCascadeSubPanelComponent, KjCellEditorOutlet, KjCellTemplateDirective, KjChartComponent, KjChatAvatarComponent, KjChatBubbleComponent, KjChatComponent, KjChatFooterComponent, KjChatHeaderComponent, KjChatLogComponent, KjChatMessage, KjChatThread, KjCheckboxComponent, KjColorPickerComponent, KjComboboxComponent, KjComboboxEmptyComponent, KjComboboxLoadingComponent, KjComboboxOptionComponent, KjCommandEmptyComponent, KjCommandGroupComponent, KjCommandInputComponent, KjCommandItemComponent, KjCommandPaletteComponent, KjCommandPaletteFooter, KjCommandPaletteItemTemplate, KjCommandSeparatorComponent, KjConfirmPopupActionComponent, KjConfirmPopupActionsComponent, KjConfirmPopupCancelComponent, KjConfirmPopupComponent, KjConfirmPopupContentComponent, KjConfirmPopupMessageComponent, KjConfirmPopupTriggerComponent, KjDateEditor, KjDateFilter, KjDatePickerComponent, KjDateRangePresetsComponent, KjDatetimePickerComponent, KjDialogComponent, KjDirectionToggle, KjDividerComponent, KjDrawerComponent, KjDropdownMenuComponent, KjEditorComponent, KjEmptyStateActionsComponent, KjEmptyStateComponent, KjEmptyStateDescriptionComponent, KjEmptyStateIconComponent, KjEmptyStateTitleComponent, KjFieldComponent, KjFieldErrorComponent, KjFieldGroupComponent, KjFieldHelpComponent, KjFieldLabelComponent, KjFileUploadComponent, KjFilterCellOutlet, KjFormActionsComponent, KjFormComponent, KjFormSummaryComponent, KjIconGalleryExample, KjIconUsageExample, KjInputComponent, KjInputGroupAddonComponent, KjInputGroupComponent, KjInputMaskComponent, KjInputMaskCreditCardExample, KjInputMaskCustomTokensExample, KjInputMaskDateExample, KjInputMaskExample, KjInputMaskUsageExample, KjInputMaskValidationExample, KjInputOtpComponent, KjKbdComponent, KjLinkComponent, KjListComponent, KjListItemComponent, KjMenubarComponent, KjMenubarItemComponent, KjNumberEditor, KjNumberFilter, KjNumberInputComponent, KjOptionComponent, KjOverflowPanelComponent, KjOverlayBadgeComponent, KjOverlayBadgeContentComponent, KjPaginationComponent, KjPaginationDefaultComponent, KjPaginationEllipsisComponent, KjPaginationFirstComponent, KjPaginationInfoComponent, KjPaginationItemComponent, KjPaginationLastComponent, KjPaginationNextComponent, KjPaginationPreviousComponent, KjPasswordInputComponent, KjPopoverComponent, KjProgressBarComponent, KjPromptInput, KjRadioComponent, KjRadioGroupComponent, KjRichTextEditorComponent, KjSelectComponent, KjSelectEditor, KjSelectFilter, KjSheetComponent, KjSkeletonComponent, KjSkipLinkComponent, KjSliderComponent, KjSpeedDialActionComponent, KjSpeedDialActionsComponent, KjSpeedDialComponent, KjSpeedDialTriggerComponent, KjSpinnerComponent, KjStepComponent, KjStepContentComponent, KjStepLabelComponent, KjStepperComponent, KjStepperNextComponent, KjStepperPreviousComponent, KjStepperResetComponent, KjTabComponent, KjTabListComponent, KjTabPanelComponent, KjTableComponent, KjTableEmptyTemplate, KjTableErrorTemplate, KjTableLoadingTemplate, KjTablePaginationComponent, KjTableSidePanelComponent, KjTableSidePanelContent, KjTableStatusBarComponent, KjTableToolbarComponent, KjTableVirtual, KjTabsComponent, KjTagComponent, KjTagListComponent, KjTagRemoveComponent, KjTextEditor, KjTextFilter, KjTextareaComponent, KjTimePickerComponent, KjToastCloseComponent, KjToastComponent, KjToastViewportComponent, KjToastWrapperComponent, KjToggleComponent, KjTooltipComponent, KjTreeSelectComponent, KjTreeSelectNodeComponent, LUCIDE_ICON_NAMES, bold, bulletList, codeBlock, copyToClipboard, defaultFeatures, downloadString, exportCsv, exportJson, heading, history, image, inlineCode, italic, link, markdownShortcuts, orderedList, provideLucideIcons, quote, renderMarkdown, strike, toTsv, underline };
9203
9302
  export type { ExportOptions, KjActionSheetAction, KjActionSheetOptions, KjActionSheetRole, KjCellEditEvent, KjCellTemplateContext, KjChatBubbleSize, KjChatBubbleVariant, KjEditorContract, KjEmptyStateLevel, KjEmptyStateLive, KjEmptyStateVariant, KjFilterContext, KjHeadingLevel, KjInputSize, KjInputType, KjInputVariant, KjMdBlock, KjNumberRange, KjRowClickEvent, KjSelectEditorOption, KjSelectFilterOption, KjSpeedDialPosition, KjTableDensity, KjTableExportFormat };