@juspay/blend-design-system 0.0.36-beta.1 → 0.0.36

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.
Files changed (97) hide show
  1. package/dist/components/ChartsV2/chartV2.types.d.ts +9 -11
  2. package/dist/components/DataTable/dataTable.tokens.d.ts +11 -0
  3. package/dist/components/DataTable/types.d.ts +1 -0
  4. package/dist/components/KeyValuePairV2/KeyValuePairLayout.d.ts +24 -0
  5. package/dist/components/KeyValuePairV2/KeyValuePairV2.d.ts +23 -0
  6. package/dist/components/KeyValuePairV2/ResponsiveText.d.ts +20 -0
  7. package/dist/components/KeyValuePairV2/index.d.ts +3 -0
  8. package/dist/components/KeyValuePairV2/keyValuePairV2.dark.tokens.d.ts +3 -0
  9. package/dist/components/KeyValuePairV2/keyValuePairV2.light.tokens.d.ts +3 -0
  10. package/dist/components/KeyValuePairV2/keyValuePairV2.tokens.d.ts +28 -0
  11. package/dist/components/KeyValuePairV2/keyValuePairV2.types.d.ts +28 -0
  12. package/dist/components/KeyValuePairV2/responsiveTextStyles.d.ts +4 -0
  13. package/dist/components/KeyValuePairV2/utils.d.ts +15 -0
  14. package/dist/components/MultiSelectV2/MobileMultiSelectV2.d.ts +1 -0
  15. package/dist/components/MultiSelectV2/MultiSelectV2.d.ts +6 -0
  16. package/dist/components/MultiSelectV2/MultiSelectV2Menu.d.ts +6 -0
  17. package/dist/components/MultiSelectV2/MultiSelectV2MenuActions.d.ts +23 -0
  18. package/dist/components/MultiSelectV2/MultiSelectV2MenuHeader.d.ts +25 -0
  19. package/dist/components/MultiSelectV2/MultiSelectV2MenuItem.d.ts +11 -0
  20. package/dist/components/MultiSelectV2/MultiSelectV2MenuItems.d.ts +17 -0
  21. package/dist/components/MultiSelectV2/MultiSelectV2MenuSearch.d.ts +14 -0
  22. package/dist/components/MultiSelectV2/MultiSelectV2MenuVirtualList.d.ts +22 -0
  23. package/dist/components/MultiSelectV2/MultiSelectV2SelectAllItem.d.ts +9 -0
  24. package/dist/components/MultiSelectV2/MultiSelectV2Skeleton.d.ts +8 -0
  25. package/dist/components/MultiSelectV2/MultiSelectV2SubMenu.d.ts +9 -0
  26. package/dist/components/MultiSelectV2/MultiSelectV2Trigger.d.ts +30 -0
  27. package/dist/components/MultiSelectV2/index.d.ts +14 -0
  28. package/dist/components/MultiSelectV2/mobile/MobileMultiSelectV2.d.ts +3 -0
  29. package/dist/components/MultiSelectV2/mobile/mobileMultiSelectV2.utils.d.ts +8 -0
  30. package/dist/components/MultiSelectV2/multiSelectV2.dark.tokens.d.ts +3 -0
  31. package/dist/components/MultiSelectV2/multiSelectV2.light.tokens.d.ts +3 -0
  32. package/dist/components/MultiSelectV2/multiSelectV2.tokens.d.ts +216 -0
  33. package/dist/components/MultiSelectV2/multiSelectV2.types.d.ts +124 -0
  34. package/dist/components/MultiSelectV2/utils.d.ts +23 -0
  35. package/dist/components/PopoverV2/MobilePopoverV2.d.ts +7 -0
  36. package/dist/components/PopoverV2/PopoverV2.d.ts +23 -0
  37. package/dist/components/PopoverV2/PopoverV2Footer.d.ts +12 -0
  38. package/dist/components/PopoverV2/PopoverV2Header.d.ts +14 -0
  39. package/dist/components/PopoverV2/PopoverV2Skeleton.d.ts +21 -0
  40. package/dist/components/PopoverV2/index.d.ts +3 -0
  41. package/dist/components/PopoverV2/popoverV2.dark.tokens.d.ts +3 -0
  42. package/dist/components/PopoverV2/popoverV2.light.tokens.d.ts +3 -0
  43. package/dist/components/PopoverV2/popoverV2.token.d.ts +72 -0
  44. package/dist/components/PopoverV2/popoverV2.types.d.ts +59 -0
  45. package/dist/components/Select/SelectItem/types.d.ts +2 -0
  46. package/dist/components/SelectV2/SelectItemV2.d.ts +3 -0
  47. package/dist/components/SelectV2/index.d.ts +4 -0
  48. package/dist/components/SelectV2/selectV2.constants.d.ts +7 -0
  49. package/dist/components/SelectV2/selectV2.shared.types.d.ts +96 -0
  50. package/dist/components/SelectV2/selectV2.tokenStates.d.ts +2 -0
  51. package/dist/components/SelectV2/types.d.ts +89 -0
  52. package/dist/components/SelectV2/useSelectV2MenuBehavior.d.ts +24 -0
  53. package/dist/components/SelectorV2/RadioV2/RadioV2.d.ts +22 -0
  54. package/dist/components/SelectorV2/RadioV2/StyledRadioV2.d.ts +9 -0
  55. package/dist/components/SelectorV2/RadioV2/index.d.ts +3 -0
  56. package/dist/components/SelectorV2/RadioV2/radioV2.dark.tokens.d.ts +3 -0
  57. package/dist/components/SelectorV2/RadioV2/radioV2.light.tokens.d.ts +3 -0
  58. package/dist/components/SelectorV2/RadioV2/radioV2.tokens.d.ts +83 -0
  59. package/dist/components/SelectorV2/RadioV2/radioV2.types.d.ts +39 -0
  60. package/dist/components/SelectorV2/SwitchV2/SwitchV2.d.ts +1 -1
  61. package/dist/components/SelectorV2/SwitchV2/switchV2.tokens.d.ts +5 -5
  62. package/dist/components/SelectorV2/SwitchV2/switchV2.types.d.ts +1 -2
  63. package/dist/components/SelectorsContent/SelectorsContent.types.d.ts +3 -4
  64. package/dist/components/SingleSelectV2/MobileSingleSelectV2.d.ts +5 -0
  65. package/dist/components/SingleSelectV2/SingleSelectV2.d.ts +6 -0
  66. package/dist/components/SingleSelectV2/SingleSelectV2List.d.ts +3 -0
  67. package/dist/components/SingleSelectV2/SingleSelectV2Menu.d.ts +6 -0
  68. package/dist/components/SingleSelectV2/SingleSelectV2MenuItems.d.ts +17 -0
  69. package/dist/components/SingleSelectV2/SingleSelectV2Search.d.ts +3 -0
  70. package/dist/components/SingleSelectV2/SingleSelectV2Skeleton.d.ts +8 -0
  71. package/dist/components/SingleSelectV2/SingleSelectV2Trigger.d.ts +28 -0
  72. package/dist/components/SingleSelectV2/SingleSelectV2VirtualList.d.ts +3 -0
  73. package/dist/components/SingleSelectV2/index.d.ts +11 -0
  74. package/dist/components/SingleSelectV2/mobile/SingleSelectV2MobileItem.d.ts +10 -0
  75. package/dist/components/SingleSelectV2/mobile/singleSelectV2.mobile.utils.d.ts +3 -0
  76. package/dist/components/SingleSelectV2/singleSelectV2.animations.d.ts +3 -0
  77. package/dist/components/SingleSelectV2/singleSelectV2.dark.tokens.d.ts +3 -0
  78. package/dist/components/SingleSelectV2/singleSelectV2.light.tokens.d.ts +3 -0
  79. package/dist/components/SingleSelectV2/singleSelectV2.tokens.d.ts +162 -0
  80. package/dist/components/SingleSelectV2/singleSelectV2.types.d.ts +142 -0
  81. package/dist/components/SingleSelectV2/utils.d.ts +78 -0
  82. package/dist/components/TooltipV2/TooltipV2.d.ts +3 -0
  83. package/dist/components/TooltipV2/index.d.ts +3 -0
  84. package/dist/components/TooltipV2/tooltipV2.animation.d.ts +1 -0
  85. package/dist/components/TooltipV2/tooltipV2.dark.tokens.d.ts +3 -0
  86. package/dist/components/TooltipV2/tooltipV2.light.tokens.d.ts +3 -0
  87. package/dist/components/TooltipV2/tooltipV2.tokens.d.ts +37 -0
  88. package/dist/components/TooltipV2/tooltipV2.types.d.ts +38 -0
  89. package/dist/components/common/index.d.ts +3 -0
  90. package/dist/context/ThemeContext.d.ts +12 -0
  91. package/dist/context/useComponentToken.d.ts +6 -1
  92. package/dist/global-utils/GlobalUtils.d.ts +5 -0
  93. package/dist/main.d.ts +1 -0
  94. package/dist/main.js +35234 -31979
  95. package/dist/tokens/theme.token.d.ts +2 -0
  96. package/dist/tokens/zIndex.tokens.d.ts +11 -0
  97. package/package.json +2 -1
@@ -1,4 +1,4 @@
1
- import { RefObject, ReactNode } from 'react';
1
+ import { RefObject, ReactNode, HTMLAttributes } from 'react';
2
2
  import { HighchartsReactProps, HighchartsReactRefObject } from 'highcharts-react-official';
3
3
  import { default as Highcharts } from 'highcharts';
4
4
  import { ButtonProps } from '../Button';
@@ -41,23 +41,21 @@ export type ChartV2Axis = Highcharts.Axis;
41
41
  export type ChartV2Series = Highcharts.Series;
42
42
  export type ChartV2SeriesZonesOptionsObject = Highcharts.SeriesZonesOptionsObject;
43
43
  export type ChartV2ReactRefObject = HighchartsReactRefObject;
44
- export interface ChartV2ContainerProps {
44
+ export type ChartV2ContainerProps = {
45
45
  children: ReactNode;
46
- }
47
- export interface ChartV2HeaderProps {
46
+ } & Omit<HTMLAttributes<HTMLDivElement>, 'children' | 'style' | 'className'>;
47
+ export type ChartV2HeaderProps = {
48
48
  children: ReactNode;
49
- }
49
+ } & Omit<HTMLAttributes<HTMLDivElement>, 'children' | 'style' | 'className'>;
50
50
  export type ChartV2LegendItem = Highcharts.Series | Highcharts.Point;
51
- export interface ChartV2CustomLegendItem {
51
+ export type ChartV2CustomLegendItem = {
52
52
  key: string;
53
53
  name: string;
54
54
  color?: string;
55
55
  value?: string | number;
56
- }
57
- export interface ChartV2LegendProps {
58
- /** Single chart ref (use when legend controls one chart). */
56
+ };
57
+ export type ChartV2LegendProps = {
59
58
  chartRef?: RefObject<ChartV2ReactRefObject | null>;
60
- /** Multiple chart refs (use for shared legend; visibility and hover sync across all). */
61
59
  chartRefs?: ReadonlyArray<RefObject<ChartV2ReactRefObject | null>>;
62
60
  customLegendItems?: ChartV2CustomLegendItem[];
63
61
  renderItem?: (params: {
@@ -69,4 +67,4 @@ export interface ChartV2LegendProps {
69
67
  onClick: () => void;
70
68
  }) => ReactNode;
71
69
  layout?: 'horizontal' | 'vertical';
72
- }
70
+ } & Omit<HTMLAttributes<HTMLDivElement>, 'style' | 'className'>;
@@ -88,6 +88,17 @@ type HeaderType = {
88
88
  columnManagerIcon: {
89
89
  width: CSSObject['width'];
90
90
  height: CSSObject['height'];
91
+ color: CSSObject['color'];
92
+ };
93
+ columnManagerTrigger?: {
94
+ backgroundColor: CSSObject['backgroundColor'];
95
+ opacity: CSSObject['disabledOpacity'];
96
+ focusVisible: {
97
+ outline: CSSObject['outline'];
98
+ outlineOffset: CSSObject['outlineOffset'];
99
+ borderRadius: CSSObject['borderRadius'];
100
+ boxShadow: CSSObject['boxShadow'];
101
+ };
91
102
  };
92
103
  };
93
104
  };
@@ -336,6 +336,7 @@ export type DataTableProps<T extends Record<string, unknown>> = {
336
336
  isRowExpandable?: (row: T, index: number) => boolean;
337
337
  onRowExpansionChange?: (rowId: unknown, isExpanded: boolean, rowData: T) => void;
338
338
  enableRowSelection?: boolean;
339
+ showBulkActionBar?: boolean;
339
340
  onRowSelectionChange?: (selectedRowIds: string[], isSelected: boolean, rowId: string, rowData: T) => void;
340
341
  bulkActions?: BulkActionsConfig;
341
342
  rowActions?: RowActionsConfig<T>;
@@ -0,0 +1,24 @@
1
+ import { default as React } from 'react';
2
+ export type KeyValuePairLayoutProps = {
3
+ containerStyle: React.CSSProperties;
4
+ keyContainerStyle: React.CSSProperties;
5
+ valueContainerStyle: React.CSSProperties;
6
+ keySlotStyle: React.CSSProperties;
7
+ keyContent: React.ReactNode;
8
+ valueContent: React.ReactNode;
9
+ keySlot?: React.ReactNode;
10
+ valueLeftSlot?: React.ReactNode;
11
+ valueRightSlot?: React.ReactNode;
12
+ dataKeyValuePair?: string;
13
+ ariaLabel?: string;
14
+ keyDataElement?: string;
15
+ keyDataId?: string;
16
+ valueDataElement?: string;
17
+ valueDataId?: string;
18
+ };
19
+ /**
20
+ * Layout-only presentational component for KeyValuePair.
21
+ * Renders the structure: container > key block (content + slot) | value block (left slot + content + right slot).
22
+ * No tokens or business logic; receives pre-computed styles and content.
23
+ */
24
+ export declare const KeyValuePairLayout: React.ForwardRefExoticComponent<KeyValuePairLayoutProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,23 @@
1
+ import { KeyValuePairV2Size, KeyValuePairV2StateType } from './keyValuePairV2.types';
2
+ /**
3
+ * Orchestrator: composes tokens, layout, and ResponsiveText.
4
+ * Computes styles and delegates structure to KeyValuePairLayout.
5
+ */
6
+ declare const KeyValuePairV2: import('react').ForwardRefExoticComponent<{
7
+ keyString: string;
8
+ size?: KeyValuePairV2Size;
9
+ value?: string;
10
+ slots?: {
11
+ key?: React.ReactNode;
12
+ value?: {
13
+ left?: React.ReactNode;
14
+ right?: React.ReactNode;
15
+ };
16
+ };
17
+ keyValuePairState?: KeyValuePairV2StateType;
18
+ maxWidth?: string;
19
+ textOverflow?: import('./keyValuePairV2.types').TextOverflowMode;
20
+ maxLines?: number;
21
+ showTooltipOnTruncate?: boolean;
22
+ } & Omit<import('react').HTMLAttributes<HTMLDivElement>, "style" | "className" | "slot" | "onChange"> & import('react').RefAttributes<HTMLDivElement>>;
23
+ export default KeyValuePairV2;
@@ -0,0 +1,20 @@
1
+ import { default as React } from 'react';
2
+ import { CSSObject } from 'styled-components';
3
+ import { TextOverflowMode } from './responsiveTextStyles';
4
+ export type ResponsiveTextProps = {
5
+ children: string;
6
+ fontSize: CSSObject['fontSize'];
7
+ color: CSSObject['color'];
8
+ className?: string;
9
+ fontWeight?: CSSObject['fontWeight'];
10
+ textOverflow?: TextOverflowMode;
11
+ maxLines?: number;
12
+ showTooltipOnTruncate?: boolean;
13
+ as?: React.ElementType;
14
+ id?: string;
15
+ role?: string;
16
+ slotPresent: boolean;
17
+ 'aria-label'?: string;
18
+ 'aria-labelledby'?: string;
19
+ };
20
+ export declare const ResponsiveText: ({ children, fontSize, color, className, fontWeight, textOverflow, maxLines, showTooltipOnTruncate, as: Component, id, role, slotPresent, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, }: ResponsiveTextProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export { default as KeyValuePairV2 } from './KeyValuePairV2';
2
+ export * from './keyValuePairV2.types';
3
+ export * from './keyValuePairV2.tokens';
@@ -0,0 +1,3 @@
1
+ import { FoundationTokenType } from '../../tokens/theme.token';
2
+ import { ResponsiveKeyValuePairV2Tokens } from './keyValuePairV2.tokens';
3
+ export declare const getKeyValuePairV2DarkTokens: (foundationToken: FoundationTokenType) => ResponsiveKeyValuePairV2Tokens;
@@ -0,0 +1,3 @@
1
+ import { FoundationTokenType } from '../../tokens/theme.token';
2
+ import { ResponsiveKeyValuePairV2Tokens } from './keyValuePairV2.tokens';
3
+ export declare const getKeyValuePairV2LightTokens: (foundationToken: FoundationTokenType) => ResponsiveKeyValuePairV2Tokens;
@@ -0,0 +1,28 @@
1
+ import { CSSObject } from 'styled-components';
2
+ import { KeyValuePairV2Size } from './keyValuePairV2.types';
3
+ import { BreakpointType } from '../../breakpoints/breakPoints';
4
+ import { FoundationTokenType } from '../../tokens/theme.token';
5
+ import { Theme } from '../../context/theme.enum';
6
+ export type KeyValuePairV2TokensType = {
7
+ gap: {
8
+ [key in 'vertical' | 'horizontal']: CSSObject['gap'];
9
+ };
10
+ key: {
11
+ color: CSSObject['color'];
12
+ fontSize: CSSObject['fontSize'];
13
+ fontWeight: CSSObject['fontWeight'];
14
+ gap: CSSObject['gap'];
15
+ };
16
+ value: {
17
+ color: CSSObject['color'];
18
+ fontSize: {
19
+ [key in KeyValuePairV2Size]: CSSObject['fontSize'];
20
+ };
21
+ fontWeight: CSSObject['fontWeight'];
22
+ gap: CSSObject['gap'];
23
+ };
24
+ };
25
+ export type ResponsiveKeyValuePairV2Tokens = {
26
+ [key in keyof BreakpointType]: KeyValuePairV2TokensType;
27
+ };
28
+ export declare const getKeyValuePairV2Tokens: (foundationToken: FoundationTokenType, theme?: Theme | string) => ResponsiveKeyValuePairV2Tokens;
@@ -0,0 +1,28 @@
1
+ import { HTMLAttributes } from 'react';
2
+ export declare enum KeyValuePairV2StateType {
3
+ vertical = 0,
4
+ horizontal = 1
5
+ }
6
+ export declare enum KeyValuePairV2Size {
7
+ SM = "sm",
8
+ MD = "md",
9
+ LG = "lg"
10
+ }
11
+ export type TextOverflowMode = 'truncate' | 'wrap' | 'wrap-clamp';
12
+ export type KeyValuePairV2PropTypes = {
13
+ keyString: string;
14
+ size?: KeyValuePairV2Size;
15
+ value?: string;
16
+ slots?: {
17
+ key?: React.ReactNode;
18
+ value?: {
19
+ left?: React.ReactNode;
20
+ right?: React.ReactNode;
21
+ };
22
+ };
23
+ keyValuePairState?: KeyValuePairV2StateType;
24
+ maxWidth?: string;
25
+ textOverflow?: TextOverflowMode;
26
+ maxLines?: number;
27
+ showTooltipOnTruncate?: boolean;
28
+ } & Omit<HTMLAttributes<HTMLDivElement>, 'className' | 'style' | 'slot' | 'onChange'>;
@@ -0,0 +1,4 @@
1
+ import { CSSObject } from 'styled-components';
2
+ export type TextOverflowMode = 'truncate' | 'wrap' | 'wrap-clamp';
3
+ export declare const getTextStyles: (textOverflow: TextOverflowMode, maxLines: number, slotPresent: boolean) => CSSObject;
4
+ export declare const getPrimitiveTextStyles: (textOverflow: TextOverflowMode) => CSSObject;
@@ -0,0 +1,15 @@
1
+ import { CSSObject } from 'styled-components';
2
+ import { TextOverflowMode, KeyValuePairV2StateType } from './keyValuePairV2.types';
3
+ import { KeyValuePairV2TokensType } from './keyValuePairV2.tokens';
4
+ /**
5
+ * Get container styles based on text overflow mode and max width
6
+ */
7
+ export declare const getContainerStyles: (textOverflow: TextOverflowMode, maxWidth: string) => CSSObject;
8
+ /**
9
+ * Get flex direction and gap based on layout state
10
+ */
11
+ export declare const getLayoutStyles: (keyValuePairState: KeyValuePairV2StateType, keyValuePairTokens: KeyValuePairV2TokensType) => CSSObject;
12
+ /**
13
+ * Get slot container styles
14
+ */
15
+ export declare const getSlotStyles: (keyValuePairTokens: KeyValuePairV2TokensType) => CSSObject;
@@ -0,0 +1 @@
1
+ export { default } from './mobile/MobileMultiSelectV2';
@@ -0,0 +1,6 @@
1
+ import { MultiSelectV2Props } from './multiSelectV2.types';
2
+ declare const MultiSelectV2: {
3
+ ({ selectedValues, onChange, items, label, subLabel, helpIconText, required, variant, selectionTagType, slot, hintText, placeholder, size, search, enableSelectAll, selectAllText, maxSelections, customTrigger, usePanelOnMobile, triggerDimensions, menuDimensions, menuPosition, inline, error, showActionButtons, primaryAction, secondaryAction, showItemDividers, showHeaderBorder, enableVirtualization, virtualListItemHeight, virtualListOverscan, onEndReached, endReachedThreshold, hasMore, loadingComponent, skeleton, allowCustomValue, customValueLabel, showClearButton, onClearAllClick, onOpenChange, multiSelectGroupPosition, ...rest }: MultiSelectV2Props): import("react/jsx-runtime").JSX.Element;
4
+ displayName: string;
5
+ };
6
+ export default MultiSelectV2;
@@ -0,0 +1,6 @@
1
+ import { MultiSelectV2MenuProps } from './multiSelectV2.types';
2
+ declare const MultiSelectV2Menu: {
3
+ ({ items, selected, onSelect, trigger, menuDimensions, disabled, search, enableSelectAll, selectAllText, maxSelections, onSelectAll, menuPosition, collisionBoundary, open, onOpenChange, showActionButtons, primaryAction, secondaryAction, enableVirtualization, virtualListItemHeight, virtualListOverscan, onEndReached, endReachedThreshold, hasMore, skeleton, size, variant, allowCustomValue, customValueLabel, menuId, }: MultiSelectV2MenuProps): import("react/jsx-runtime").JSX.Element;
4
+ displayName: string;
5
+ };
6
+ export default MultiSelectV2Menu;
@@ -0,0 +1,23 @@
1
+ import { MultiSelectV2TokensType } from './multiSelectV2.tokens';
2
+ export type MultiSelectV2MenuActionsProps = {
3
+ tokens: MultiSelectV2TokensType;
4
+ primaryAction?: {
5
+ text: string;
6
+ onClick: (selectedValues: string[]) => void;
7
+ disabled?: boolean;
8
+ loading?: boolean;
9
+ };
10
+ secondaryAction?: {
11
+ text: string;
12
+ onClick: () => void;
13
+ disabled?: boolean;
14
+ loading?: boolean;
15
+ };
16
+ selected: string[];
17
+ onClose: () => void;
18
+ };
19
+ declare const MultiSelectV2MenuActions: {
20
+ ({ tokens, primaryAction, secondaryAction, selected, onClose, }: MultiSelectV2MenuActionsProps): import("react/jsx-runtime").JSX.Element;
21
+ displayName: string;
22
+ };
23
+ export default MultiSelectV2MenuActions;
@@ -0,0 +1,25 @@
1
+ import { default as React } from 'react';
2
+ import { MultiSelectV2TokensType } from './multiSelectV2.tokens';
3
+ import { MultiSelectV2GroupType } from './multiSelectV2.types';
4
+ export type MultiSelectV2MenuHeaderProps = {
5
+ tokens: MultiSelectV2TokensType;
6
+ showSearch: boolean;
7
+ itemsCount: number;
8
+ searchValue: string;
9
+ searchPlaceholder?: string;
10
+ searchInputRef: React.RefObject<HTMLInputElement | null>;
11
+ onSearchChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
12
+ onSearchArrowKeyToFirst: () => void;
13
+ showSelectAll: boolean;
14
+ selected: string[];
15
+ availableValues: string[];
16
+ filteredItems: MultiSelectV2GroupType[];
17
+ onSelectAll?: (selectAll: boolean, filteredItems: MultiSelectV2GroupType[]) => void;
18
+ selectAllText?: string;
19
+ disabled?: boolean;
20
+ };
21
+ declare const MultiSelectV2MenuHeader: {
22
+ ({ tokens, showSearch, itemsCount, searchValue, searchPlaceholder, searchInputRef, onSearchChange, onSearchArrowKeyToFirst, showSelectAll, selected, availableValues, filteredItems, onSelectAll, selectAllText, disabled, }: MultiSelectV2MenuHeaderProps): import("react/jsx-runtime").JSX.Element;
23
+ displayName: string;
24
+ };
25
+ export default MultiSelectV2MenuHeader;
@@ -0,0 +1,11 @@
1
+ import { MultiSelectV2ItemType } from './multiSelectV2.types';
2
+ type MultiSelectV2MenuItemProps = {
3
+ item: MultiSelectV2ItemType;
4
+ onSelect: (value: string) => void;
5
+ selected: string[];
6
+ maxSelections?: number;
7
+ allItems?: MultiSelectV2ItemType[];
8
+ index?: number;
9
+ };
10
+ declare const MultiSelectV2MenuItem: ({ item, onSelect, selected, maxSelections, allItems, index, }: MultiSelectV2MenuItemProps) => import("react/jsx-runtime").JSX.Element;
11
+ export default MultiSelectV2MenuItem;
@@ -0,0 +1,17 @@
1
+ import { MultiSelectV2TokensType } from './multiSelectV2.tokens';
2
+ import { MultiSelectV2Size, MultiSelectV2Variant, MultiSelectV2GroupType, MultiSelectV2ItemType } from './multiSelectV2.types';
3
+ export type MultiSelectV2MenuItemsProps = {
4
+ filteredItems: MultiSelectV2GroupType[];
5
+ allItemsFlat: MultiSelectV2ItemType[];
6
+ selected: string[];
7
+ onSelect: (value: string) => void;
8
+ maxSelections?: number;
9
+ tokens: MultiSelectV2TokensType;
10
+ size: MultiSelectV2Size;
11
+ variant: MultiSelectV2Variant;
12
+ };
13
+ declare const MultiSelectV2MenuItems: {
14
+ ({ filteredItems, allItemsFlat, selected, onSelect, maxSelections, tokens, size, variant, }: MultiSelectV2MenuItemsProps): import("react/jsx-runtime").JSX.Element;
15
+ displayName: string;
16
+ };
17
+ export default MultiSelectV2MenuItems;
@@ -0,0 +1,14 @@
1
+ import { default as React, RefObject } from 'react';
2
+ export type MultiSelectV2MenuSearchProps = {
3
+ inputRef: RefObject<HTMLInputElement | null>;
4
+ value: string;
5
+ onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
6
+ placeholder?: string;
7
+ ariaLabel?: string;
8
+ onArrowKeyToFirstOption?: () => void;
9
+ };
10
+ declare const MultiSelectV2MenuSearch: {
11
+ ({ inputRef, value, onChange, placeholder, ariaLabel, onArrowKeyToFirstOption, }: MultiSelectV2MenuSearchProps): import("react/jsx-runtime").JSX.Element;
12
+ displayName: string;
13
+ };
14
+ export default MultiSelectV2MenuSearch;
@@ -0,0 +1,22 @@
1
+ import { MultiSelectV2TokensType } from './multiSelectV2.tokens';
2
+ import { FlattenedMultiSelectV2Item, MultiSelectV2ItemType } from './multiSelectV2.types';
3
+ export type MultiSelectV2MenuVirtualListProps = {
4
+ flattenedItems: FlattenedMultiSelectV2Item[];
5
+ itemIndexMap: Map<string, number>;
6
+ allItemsFlat: MultiSelectV2ItemType[];
7
+ selected: string[];
8
+ onSelect: (value: string) => void;
9
+ maxSelections?: number;
10
+ tokens: MultiSelectV2TokensType;
11
+ height: number;
12
+ itemHeight: number;
13
+ overscan?: number;
14
+ onEndReached?: () => void;
15
+ endReachedThreshold?: number;
16
+ hasMore?: boolean;
17
+ };
18
+ declare const MultiSelectV2MenuVirtualList: {
19
+ ({ flattenedItems, itemIndexMap, allItemsFlat, selected, onSelect, maxSelections, tokens, height, itemHeight, overscan, onEndReached, endReachedThreshold, hasMore, }: MultiSelectV2MenuVirtualListProps): import("react/jsx-runtime").JSX.Element;
20
+ displayName: string;
21
+ };
22
+ export default MultiSelectV2MenuVirtualList;
@@ -0,0 +1,9 @@
1
+ type MultiSelectV2SelectAllItemProps = {
2
+ selected: string[];
3
+ availableValues: string[];
4
+ onSelectAll: (selectAll: boolean) => void;
5
+ selectAllText: string;
6
+ disabled?: boolean;
7
+ };
8
+ declare const MultiSelectV2SelectAllItem: ({ selected, availableValues, onSelectAll, selectAllText, disabled, }: MultiSelectV2SelectAllItemProps) => import("react/jsx-runtime").JSX.Element;
9
+ export default MultiSelectV2SelectAllItem;
@@ -0,0 +1,8 @@
1
+ import { MultiSelectV2TokensType } from './multiSelectV2.tokens';
2
+ import { SelectV2SkeletonProps } from '../SelectV2/selectV2.shared.types';
3
+ export type MultiSelectV2SkeletonComponentProps = {
4
+ multiSelectTokens: MultiSelectV2TokensType;
5
+ skeleton: SelectV2SkeletonProps;
6
+ };
7
+ declare const MultiSelectV2Skeleton: import('react').ForwardRefExoticComponent<MultiSelectV2SkeletonComponentProps & import('react').RefAttributes<HTMLDivElement>>;
8
+ export default MultiSelectV2Skeleton;
@@ -0,0 +1,9 @@
1
+ import { MultiSelectV2ItemType } from './multiSelectV2.types';
2
+ type MultiSelectV2SubMenuProps = {
3
+ item: MultiSelectV2ItemType;
4
+ onSelect: (value: string) => void;
5
+ selected: string[];
6
+ maxSelections?: number;
7
+ };
8
+ declare const MultiSelectV2SubMenu: ({ item, onSelect, selected, maxSelections, }: MultiSelectV2SubMenuProps) => import("react/jsx-runtime").JSX.Element;
9
+ export default MultiSelectV2SubMenu;
@@ -0,0 +1,30 @@
1
+ import { default as React } from 'react';
2
+ import { MultiSelectV2SelectionTagType, MultiSelectV2Size, MultiSelectV2Variant, SelectV2TriggerDimensions } from './multiSelectV2.types';
3
+ import { MultiSelectV2TokensType } from './multiSelectV2.tokens';
4
+ export type MultiSelectV2TriggerProps = {
5
+ selectedValues: string[];
6
+ slot?: React.ReactNode;
7
+ variant: MultiSelectV2Variant;
8
+ size: MultiSelectV2Size;
9
+ isSmallScreen: boolean;
10
+ name: string;
11
+ label: string;
12
+ placeholder: string;
13
+ required: boolean;
14
+ selectionTagType: MultiSelectV2SelectionTagType;
15
+ valueLabelMap: Record<string, string>;
16
+ open: boolean;
17
+ multiSelectTokens: MultiSelectV2TokensType;
18
+ inline?: boolean;
19
+ error?: boolean;
20
+ disabled?: boolean;
21
+ triggerDimensions?: SelectV2TriggerDimensions;
22
+ borderRadius: string;
23
+ borderRight?: string;
24
+ [key: string]: unknown;
25
+ };
26
+ declare const MultiSelectV2Trigger: {
27
+ ({ selectedValues, slot, variant, size, isSmallScreen, name, label, placeholder, required, selectionTagType, valueLabelMap, open, multiSelectTokens, inline, error, disabled, triggerDimensions, borderRadius, borderRight, ...rest }: MultiSelectV2TriggerProps): import("react/jsx-runtime").JSX.Element;
28
+ displayName: string;
29
+ };
30
+ export default MultiSelectV2Trigger;
@@ -0,0 +1,14 @@
1
+ export { default as MultiSelectV2 } from './MultiSelectV2';
2
+ export { default as MultiSelectV2Skeleton } from './MultiSelectV2Skeleton';
3
+ export { default as MultiSelectV2Menu } from './MultiSelectV2Menu';
4
+ export { default as MultiSelectV2MenuHeader } from './MultiSelectV2MenuHeader';
5
+ export { default as MultiSelectV2MenuSearch } from './MultiSelectV2MenuSearch';
6
+ export { default as MultiSelectV2MenuVirtualList } from './MultiSelectV2MenuVirtualList';
7
+ export { default as MultiSelectV2MenuItems } from './MultiSelectV2MenuItems';
8
+ export { default as MultiSelectV2MenuActions } from './MultiSelectV2MenuActions';
9
+ export { default as MultiSelectV2Trigger } from './MultiSelectV2Trigger';
10
+ export { default as MobileMultiSelectV2 } from './MobileMultiSelectV2';
11
+ export type { MultiSelectV2Props } from './multiSelectV2.types';
12
+ export * from './multiSelectV2.types';
13
+ export * from './multiSelectV2.tokens';
14
+ export * from './utils';
@@ -0,0 +1,3 @@
1
+ import { MultiSelectV2Props } from '../multiSelectV2.types';
2
+ declare const MobileMultiSelectV2: ({ selectedValues, onChange, items, label, subLabel, helpIconText, required, variant, selectionTagType, slot, hintText, placeholder, size, search, enableSelectAll, selectAllText, maxSelections, customTrigger, error, showActionButtons, primaryAction, secondaryAction, showItemDividers, showHeaderBorder, enableVirtualization, virtualListItemHeight, virtualListOverscan, onEndReached, endReachedThreshold, hasMore, skeleton, allowCustomValue, customValueLabel, onOpenChange, triggerDimensions, inline, disabled, name, ...buttonRest }: MultiSelectV2Props) => import("react/jsx-runtime").JSX.Element;
3
+ export default MobileMultiSelectV2;
@@ -0,0 +1,8 @@
1
+ import { VirtualListItem } from '../../VirtualList/types';
2
+ import { FlattenedMultiSelectV2Item, MultiSelectV2GroupType } from '../multiSelectV2.types';
3
+ export type FlattenedMobileMultiSelectV2Item = Omit<FlattenedMultiSelectV2Item, 'type'> & {
4
+ type: FlattenedMultiSelectV2Item['type'] | 'selectAll';
5
+ };
6
+ export declare const flattenMobileMultiSelectV2Groups: (groups: MultiSelectV2GroupType[], enableSelectAll: boolean) => FlattenedMobileMultiSelectV2Item[];
7
+ export declare const isSelectableItem: (value: string, groups: MultiSelectV2GroupType[]) => boolean;
8
+ export declare const toVirtualListItems: (items: FlattenedMobileMultiSelectV2Item[]) => VirtualListItem[];
@@ -0,0 +1,3 @@
1
+ import { FoundationTokenType } from '../../tokens/theme.token';
2
+ import { ResponsiveMultiSelectV2Tokens } from './multiSelectV2.tokens';
3
+ export declare const getMultiSelectV2DarkTokens: (foundationToken: FoundationTokenType) => ResponsiveMultiSelectV2Tokens;
@@ -0,0 +1,3 @@
1
+ import { FoundationTokenType } from '../../tokens/theme.token';
2
+ import { ResponsiveMultiSelectV2Tokens } from './multiSelectV2.tokens';
3
+ export declare const getMultiSelectV2LightTokens: (foundationToken: FoundationTokenType) => ResponsiveMultiSelectV2Tokens;