cekat-ui 1.3.15 → 1.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/dist/index.d.mts CHANGED
@@ -450,6 +450,46 @@ export declare type CheckIconSize = 'xs' | 'sm' | 'md' | 'lg';
450
450
  /** 'filled' inverts the glyph color against a solid background. */
451
451
  export declare type CheckIconType = 'default' | 'line' | 'filled';
452
452
 
453
+ export declare const CollectionItem: <T extends object>(props: CollectionItemProps<T> & {
454
+ ref?: React_2.Ref<HTMLDivElement>;
455
+ }) => React_2.ReactElement;
456
+
457
+ export declare interface CollectionItemProps<T extends object = object> {
458
+ /** Collection identity. Required for dynamic collections. */
459
+ id?: Key;
460
+ /** Data value represented by this item. */
461
+ value?: T;
462
+ /** Typeahead/accessibility text when visible children are not plain text. */
463
+ textValue?: string;
464
+ /** Accessible name when visible content does not provide one. */
465
+ 'aria-label'?: string;
466
+ /** Disables action and selection. Default: false. */
467
+ isDisabled?: boolean;
468
+ /** Executes the item action where supported by the parent collection. */
469
+ onAction?: () => void;
470
+ /** Optional non-interactive leading content. */
471
+ leadingSlot?: CollectionItemSlot;
472
+ /** Required free main slot. */
473
+ children: CollectionItemSlot;
474
+ /** Optional non-interactive trailing content. */
475
+ trailingSlot?: CollectionItemSlot;
476
+ className?: ClassValue;
477
+ style?: React_2.CSSProperties;
478
+ }
479
+
480
+ export declare type CollectionItemSlot = Exclude<React_2.ReactNode, undefined> | ((state: CollectionItemState) => React_2.ReactNode);
481
+
482
+ export declare interface CollectionItemState {
483
+ isHovered: boolean;
484
+ isPressed: boolean;
485
+ isSelected: boolean;
486
+ isFocused: boolean;
487
+ isFocusVisible: boolean;
488
+ isDisabled: boolean;
489
+ selectionMode: 'none' | 'single' | 'multiple';
490
+ selectionBehavior: 'toggle' | 'replace';
491
+ }
492
+
453
493
  /**
454
494
  * Renders the sort indicator from `sortDirection`/`allowsSorting`, never a
455
495
  * plain boolean — the unsorted glyph stays visible at all times (not
@@ -494,9 +534,9 @@ export declare interface ComboBoxInputProps extends Omit<InputProps_2, 'classNam
494
534
  }
495
535
 
496
536
  /**
497
- * `ListBoxItem` with the same provisional selected-row treatment as `Select`'s `SelectItem` —
498
- * see `selectItemSelectedStyles` for why it's provisional. Reused directly rather than
499
- * re-declared, same as `Menu` does for its own items.
537
+ * Compatibility alias for existing `ComboBoxItem` consumers. It reaches the universal
538
+ * CollectionItem foundation through `ListBoxItem`; selected Neutral styling is shared with
539
+ * Select and ListBox rather than declared here.
500
540
  */
501
541
  export declare function ComboBoxItem<T extends object>({ className, ...props }: ListBoxItemProps<T>): JSX_2.Element;
502
542
 
@@ -1188,6 +1228,45 @@ export declare interface ModalProps extends Omit<ModalOverlayProps, 'className'
1188
1228
 
1189
1229
  export declare type ModalSize = 'sm' | 'md' | 'lg';
1190
1230
 
1231
+ export declare function MultiSelect<T extends object>({ 'aria-label': ariaLabel, items, children, selectedKeys: controlledSelectedKeys, defaultSelectedKeys, onSelectionChange, disabledKeys, getTextValue, filter, searchValue, defaultSearchValue, onSearchChange, isDisabled, className, }: MultiSelectProps<T>): JSX_2.Element;
1232
+
1233
+ export declare function MultiSelectPopover<T extends object>({ children, searchPlaceholder, emptyState, className, }: MultiSelectPopoverProps<T>): JSX_2.Element;
1234
+
1235
+ export declare interface MultiSelectPopoverProps<T extends object> {
1236
+ children: (item: T) => React_2.ReactElement;
1237
+ searchPlaceholder?: string;
1238
+ emptyState?: React_2.ReactNode;
1239
+ className?: ClassValue;
1240
+ }
1241
+
1242
+ export declare interface MultiSelectProps<T extends object> {
1243
+ 'aria-label': string;
1244
+ items: Iterable<T>;
1245
+ children: React_2.ReactNode;
1246
+ selectedKeys?: Iterable<Key>;
1247
+ defaultSelectedKeys?: Iterable<Key>;
1248
+ onSelectionChange?: (keys: Set<Key>) => void;
1249
+ disabledKeys?: Iterable<Key>;
1250
+ getTextValue: (item: T) => string;
1251
+ filter?: (item: T, query: string) => boolean;
1252
+ searchValue?: string;
1253
+ defaultSearchValue?: string;
1254
+ onSearchChange?: (value: string) => void;
1255
+ isDisabled?: boolean;
1256
+ className?: ClassValue;
1257
+ }
1258
+
1259
+ export declare type MultiSelectSize = 'xs' | 'sm' | 'md';
1260
+
1261
+ export declare const MultiSelectTrigger: React_2.ForwardRefExoticComponent<MultiSelectTriggerProps & React_2.RefAttributes<HTMLButtonElement>>;
1262
+
1263
+ export declare interface MultiSelectTriggerProps extends Omit<ButtonProps_2, 'children' | 'className' | 'style' | 'isDisabled'> {
1264
+ children: React_2.ReactNode;
1265
+ size?: MultiSelectSize;
1266
+ className?: ClassValue;
1267
+ style?: React_2.CSSProperties;
1268
+ }
1269
+
1191
1270
  declare type NativeButtonProps = Omit<React_2.ButtonHTMLAttributes<HTMLButtonElement>, 'children' | 'className' | 'style'>;
1192
1271
 
1193
1272
  /**
@@ -1313,10 +1392,9 @@ export declare const Select: <T extends object>(props: SelectProps<T> & {
1313
1392
  export { SelectionIndicator }
1314
1393
 
1315
1394
  /**
1316
- * `ListBoxItem` with the selected-row treatment baked in see `selectItemSelectedStyles` for
1317
- * why it's a placeholder. This lives on `Select`'s own item rather than on the shared `ListBox`
1318
- * because `Menu` doesn't have a Selected state to render at all. `content="selection"` reuses
1319
- * `ListBox`'s leading-checkmark rendering unchanged.
1395
+ * Compatibility alias for existing `SelectItem` consumers. It now reaches the universal
1396
+ * CollectionItem foundation through `ListBoxItem`; selected Neutral styling is owned by that
1397
+ * foundation rather than a Select-specific class.
1320
1398
  */
1321
1399
  export declare function SelectItem<T extends object>({ className, ...props }: ListBoxItemProps<T>): JSX_2.Element;
1322
1400
 
package/dist/index.d.ts CHANGED
@@ -450,6 +450,46 @@ export declare type CheckIconSize = 'xs' | 'sm' | 'md' | 'lg';
450
450
  /** 'filled' inverts the glyph color against a solid background. */
451
451
  export declare type CheckIconType = 'default' | 'line' | 'filled';
452
452
 
453
+ export declare const CollectionItem: <T extends object>(props: CollectionItemProps<T> & {
454
+ ref?: React_2.Ref<HTMLDivElement>;
455
+ }) => React_2.ReactElement;
456
+
457
+ export declare interface CollectionItemProps<T extends object = object> {
458
+ /** Collection identity. Required for dynamic collections. */
459
+ id?: Key;
460
+ /** Data value represented by this item. */
461
+ value?: T;
462
+ /** Typeahead/accessibility text when visible children are not plain text. */
463
+ textValue?: string;
464
+ /** Accessible name when visible content does not provide one. */
465
+ 'aria-label'?: string;
466
+ /** Disables action and selection. Default: false. */
467
+ isDisabled?: boolean;
468
+ /** Executes the item action where supported by the parent collection. */
469
+ onAction?: () => void;
470
+ /** Optional non-interactive leading content. */
471
+ leadingSlot?: CollectionItemSlot;
472
+ /** Required free main slot. */
473
+ children: CollectionItemSlot;
474
+ /** Optional non-interactive trailing content. */
475
+ trailingSlot?: CollectionItemSlot;
476
+ className?: ClassValue;
477
+ style?: React_2.CSSProperties;
478
+ }
479
+
480
+ export declare type CollectionItemSlot = Exclude<React_2.ReactNode, undefined> | ((state: CollectionItemState) => React_2.ReactNode);
481
+
482
+ export declare interface CollectionItemState {
483
+ isHovered: boolean;
484
+ isPressed: boolean;
485
+ isSelected: boolean;
486
+ isFocused: boolean;
487
+ isFocusVisible: boolean;
488
+ isDisabled: boolean;
489
+ selectionMode: 'none' | 'single' | 'multiple';
490
+ selectionBehavior: 'toggle' | 'replace';
491
+ }
492
+
453
493
  /**
454
494
  * Renders the sort indicator from `sortDirection`/`allowsSorting`, never a
455
495
  * plain boolean — the unsorted glyph stays visible at all times (not
@@ -494,9 +534,9 @@ export declare interface ComboBoxInputProps extends Omit<InputProps_2, 'classNam
494
534
  }
495
535
 
496
536
  /**
497
- * `ListBoxItem` with the same provisional selected-row treatment as `Select`'s `SelectItem` —
498
- * see `selectItemSelectedStyles` for why it's provisional. Reused directly rather than
499
- * re-declared, same as `Menu` does for its own items.
537
+ * Compatibility alias for existing `ComboBoxItem` consumers. It reaches the universal
538
+ * CollectionItem foundation through `ListBoxItem`; selected Neutral styling is shared with
539
+ * Select and ListBox rather than declared here.
500
540
  */
501
541
  export declare function ComboBoxItem<T extends object>({ className, ...props }: ListBoxItemProps<T>): JSX_2.Element;
502
542
 
@@ -1188,6 +1228,45 @@ export declare interface ModalProps extends Omit<ModalOverlayProps, 'className'
1188
1228
 
1189
1229
  export declare type ModalSize = 'sm' | 'md' | 'lg';
1190
1230
 
1231
+ export declare function MultiSelect<T extends object>({ 'aria-label': ariaLabel, items, children, selectedKeys: controlledSelectedKeys, defaultSelectedKeys, onSelectionChange, disabledKeys, getTextValue, filter, searchValue, defaultSearchValue, onSearchChange, isDisabled, className, }: MultiSelectProps<T>): JSX_2.Element;
1232
+
1233
+ export declare function MultiSelectPopover<T extends object>({ children, searchPlaceholder, emptyState, className, }: MultiSelectPopoverProps<T>): JSX_2.Element;
1234
+
1235
+ export declare interface MultiSelectPopoverProps<T extends object> {
1236
+ children: (item: T) => React_2.ReactElement;
1237
+ searchPlaceholder?: string;
1238
+ emptyState?: React_2.ReactNode;
1239
+ className?: ClassValue;
1240
+ }
1241
+
1242
+ export declare interface MultiSelectProps<T extends object> {
1243
+ 'aria-label': string;
1244
+ items: Iterable<T>;
1245
+ children: React_2.ReactNode;
1246
+ selectedKeys?: Iterable<Key>;
1247
+ defaultSelectedKeys?: Iterable<Key>;
1248
+ onSelectionChange?: (keys: Set<Key>) => void;
1249
+ disabledKeys?: Iterable<Key>;
1250
+ getTextValue: (item: T) => string;
1251
+ filter?: (item: T, query: string) => boolean;
1252
+ searchValue?: string;
1253
+ defaultSearchValue?: string;
1254
+ onSearchChange?: (value: string) => void;
1255
+ isDisabled?: boolean;
1256
+ className?: ClassValue;
1257
+ }
1258
+
1259
+ export declare type MultiSelectSize = 'xs' | 'sm' | 'md';
1260
+
1261
+ export declare const MultiSelectTrigger: React_2.ForwardRefExoticComponent<MultiSelectTriggerProps & React_2.RefAttributes<HTMLButtonElement>>;
1262
+
1263
+ export declare interface MultiSelectTriggerProps extends Omit<ButtonProps_2, 'children' | 'className' | 'style' | 'isDisabled'> {
1264
+ children: React_2.ReactNode;
1265
+ size?: MultiSelectSize;
1266
+ className?: ClassValue;
1267
+ style?: React_2.CSSProperties;
1268
+ }
1269
+
1191
1270
  declare type NativeButtonProps = Omit<React_2.ButtonHTMLAttributes<HTMLButtonElement>, 'children' | 'className' | 'style'>;
1192
1271
 
1193
1272
  /**
@@ -1313,10 +1392,9 @@ export declare const Select: <T extends object>(props: SelectProps<T> & {
1313
1392
  export { SelectionIndicator }
1314
1393
 
1315
1394
  /**
1316
- * `ListBoxItem` with the selected-row treatment baked in see `selectItemSelectedStyles` for
1317
- * why it's a placeholder. This lives on `Select`'s own item rather than on the shared `ListBox`
1318
- * because `Menu` doesn't have a Selected state to render at all. `content="selection"` reuses
1319
- * `ListBox`'s leading-checkmark rendering unchanged.
1395
+ * Compatibility alias for existing `SelectItem` consumers. It now reaches the universal
1396
+ * CollectionItem foundation through `ListBoxItem`; selected Neutral styling is owned by that
1397
+ * foundation rather than a Select-specific class.
1320
1398
  */
1321
1399
  export declare function SelectItem<T extends object>({ className, ...props }: ListBoxItemProps<T>): JSX_2.Element;
1322
1400