infinity-ui-elements 1.4.1-beta.3 → 1.5.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.
Files changed (137) hide show
  1. package/dist/components/Dropdown/Dropdown.d.ts +99 -0
  2. package/dist/components/Dropdown/Dropdown.d.ts.map +1 -0
  3. package/dist/components/Dropdown/Dropdown.stories.d.ts +342 -0
  4. package/dist/components/Dropdown/Dropdown.stories.d.ts.map +1 -0
  5. package/dist/components/Dropdown/DropdownMenu.d.ts +90 -0
  6. package/dist/components/Dropdown/DropdownMenu.d.ts.map +1 -0
  7. package/dist/components/Dropdown/index.d.ts +3 -0
  8. package/dist/components/Dropdown/index.d.ts.map +1 -0
  9. package/dist/components/Link/Link.d.ts.map +1 -1
  10. package/dist/components/SearchableDropdown/SearchableDropdown.d.ts +103 -0
  11. package/dist/components/SearchableDropdown/SearchableDropdown.d.ts.map +1 -0
  12. package/dist/components/SearchableDropdown/SearchableDropdown.stories.d.ts +407 -0
  13. package/dist/components/SearchableDropdown/SearchableDropdown.stories.d.ts.map +1 -0
  14. package/dist/components/SearchableDropdown/index.d.ts +2 -0
  15. package/dist/components/SearchableDropdown/index.d.ts.map +1 -0
  16. package/dist/index.css +82 -82
  17. package/dist/index.d.ts +2 -0
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.esm.js +510 -317
  20. package/dist/index.esm.js.map +1 -1
  21. package/dist/index.js +512 -315
  22. package/dist/index.js.map +1 -1
  23. package/package.json +2 -3
  24. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Bold.eot +0 -0
  25. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Bold.otf +0 -0
  26. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Bold.ttf +0 -0
  27. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Bold.woff +0 -0
  28. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Bold.woff2 +0 -0
  29. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Extralight.eot +0 -0
  30. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Extralight.otf +0 -0
  31. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Extralight.ttf +0 -0
  32. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Extralight.woff +0 -0
  33. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Extralight.woff2 +0 -0
  34. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Light.eot +0 -0
  35. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Light.otf +0 -0
  36. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Light.ttf +0 -0
  37. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Light.woff +0 -0
  38. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Light.woff2 +0 -0
  39. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Medium.eot +0 -0
  40. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Medium.otf +0 -0
  41. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Medium.ttf +0 -0
  42. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Medium.woff +0 -0
  43. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Medium.woff2 +0 -0
  44. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Regular.eot +0 -0
  45. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Regular.otf +0 -0
  46. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Regular.ttf +0 -0
  47. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Regular.woff +0 -0
  48. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Regular.woff2 +0 -0
  49. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Semibold.eot +0 -0
  50. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Semibold.otf +0 -0
  51. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Semibold.ttf +0 -0
  52. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Semibold.woff +0 -0
  53. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Semibold.woff2 +0 -0
  54. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Variable.eot +0 -0
  55. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Variable.ttf +0 -0
  56. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Variable.woff +0 -0
  57. package/src/assets/fonts/clash-grotesk/ClashGrotesk-Variable.woff2 +0 -0
  58. package/src/assets/fonts/switzer/Switzer-Black.eot +0 -0
  59. package/src/assets/fonts/switzer/Switzer-Black.ttf +0 -0
  60. package/src/assets/fonts/switzer/Switzer-Black.woff +0 -0
  61. package/src/assets/fonts/switzer/Switzer-Black.woff2 +0 -0
  62. package/src/assets/fonts/switzer/Switzer-BlackItalic.eot +0 -0
  63. package/src/assets/fonts/switzer/Switzer-BlackItalic.ttf +0 -0
  64. package/src/assets/fonts/switzer/Switzer-BlackItalic.woff +0 -0
  65. package/src/assets/fonts/switzer/Switzer-BlackItalic.woff2 +0 -0
  66. package/src/assets/fonts/switzer/Switzer-Bold.eot +0 -0
  67. package/src/assets/fonts/switzer/Switzer-Bold.ttf +0 -0
  68. package/src/assets/fonts/switzer/Switzer-Bold.woff +0 -0
  69. package/src/assets/fonts/switzer/Switzer-Bold.woff2 +0 -0
  70. package/src/assets/fonts/switzer/Switzer-BoldItalic.eot +0 -0
  71. package/src/assets/fonts/switzer/Switzer-BoldItalic.ttf +0 -0
  72. package/src/assets/fonts/switzer/Switzer-BoldItalic.woff +0 -0
  73. package/src/assets/fonts/switzer/Switzer-BoldItalic.woff2 +0 -0
  74. package/src/assets/fonts/switzer/Switzer-Extrabold.eot +0 -0
  75. package/src/assets/fonts/switzer/Switzer-Extrabold.ttf +0 -0
  76. package/src/assets/fonts/switzer/Switzer-Extrabold.woff +0 -0
  77. package/src/assets/fonts/switzer/Switzer-Extrabold.woff2 +0 -0
  78. package/src/assets/fonts/switzer/Switzer-ExtraboldItalic.eot +0 -0
  79. package/src/assets/fonts/switzer/Switzer-ExtraboldItalic.ttf +0 -0
  80. package/src/assets/fonts/switzer/Switzer-ExtraboldItalic.woff +0 -0
  81. package/src/assets/fonts/switzer/Switzer-ExtraboldItalic.woff2 +0 -0
  82. package/src/assets/fonts/switzer/Switzer-Extralight.eot +0 -0
  83. package/src/assets/fonts/switzer/Switzer-Extralight.ttf +0 -0
  84. package/src/assets/fonts/switzer/Switzer-Extralight.woff +0 -0
  85. package/src/assets/fonts/switzer/Switzer-Extralight.woff2 +0 -0
  86. package/src/assets/fonts/switzer/Switzer-ExtralightItalic.eot +0 -0
  87. package/src/assets/fonts/switzer/Switzer-ExtralightItalic.ttf +0 -0
  88. package/src/assets/fonts/switzer/Switzer-ExtralightItalic.woff +0 -0
  89. package/src/assets/fonts/switzer/Switzer-ExtralightItalic.woff2 +0 -0
  90. package/src/assets/fonts/switzer/Switzer-Italic.eot +0 -0
  91. package/src/assets/fonts/switzer/Switzer-Italic.ttf +0 -0
  92. package/src/assets/fonts/switzer/Switzer-Italic.woff +0 -0
  93. package/src/assets/fonts/switzer/Switzer-Italic.woff2 +0 -0
  94. package/src/assets/fonts/switzer/Switzer-Light.eot +0 -0
  95. package/src/assets/fonts/switzer/Switzer-Light.ttf +0 -0
  96. package/src/assets/fonts/switzer/Switzer-Light.woff +0 -0
  97. package/src/assets/fonts/switzer/Switzer-Light.woff2 +0 -0
  98. package/src/assets/fonts/switzer/Switzer-LightItalic.eot +0 -0
  99. package/src/assets/fonts/switzer/Switzer-LightItalic.ttf +0 -0
  100. package/src/assets/fonts/switzer/Switzer-LightItalic.woff +0 -0
  101. package/src/assets/fonts/switzer/Switzer-LightItalic.woff2 +0 -0
  102. package/src/assets/fonts/switzer/Switzer-Medium.eot +0 -0
  103. package/src/assets/fonts/switzer/Switzer-Medium.ttf +0 -0
  104. package/src/assets/fonts/switzer/Switzer-Medium.woff +0 -0
  105. package/src/assets/fonts/switzer/Switzer-Medium.woff2 +0 -0
  106. package/src/assets/fonts/switzer/Switzer-MediumItalic.eot +0 -0
  107. package/src/assets/fonts/switzer/Switzer-MediumItalic.ttf +0 -0
  108. package/src/assets/fonts/switzer/Switzer-MediumItalic.woff +0 -0
  109. package/src/assets/fonts/switzer/Switzer-MediumItalic.woff2 +0 -0
  110. package/src/assets/fonts/switzer/Switzer-Regular.eot +0 -0
  111. package/src/assets/fonts/switzer/Switzer-Regular.ttf +0 -0
  112. package/src/assets/fonts/switzer/Switzer-Regular.woff +0 -0
  113. package/src/assets/fonts/switzer/Switzer-Regular.woff2 +0 -0
  114. package/src/assets/fonts/switzer/Switzer-Semibold.eot +0 -0
  115. package/src/assets/fonts/switzer/Switzer-Semibold.ttf +0 -0
  116. package/src/assets/fonts/switzer/Switzer-Semibold.woff +0 -0
  117. package/src/assets/fonts/switzer/Switzer-Semibold.woff2 +0 -0
  118. package/src/assets/fonts/switzer/Switzer-SemiboldItalic.eot +0 -0
  119. package/src/assets/fonts/switzer/Switzer-SemiboldItalic.ttf +0 -0
  120. package/src/assets/fonts/switzer/Switzer-SemiboldItalic.woff +0 -0
  121. package/src/assets/fonts/switzer/Switzer-SemiboldItalic.woff2 +0 -0
  122. package/src/assets/fonts/switzer/Switzer-Thin.eot +0 -0
  123. package/src/assets/fonts/switzer/Switzer-Thin.ttf +0 -0
  124. package/src/assets/fonts/switzer/Switzer-Thin.woff +0 -0
  125. package/src/assets/fonts/switzer/Switzer-Thin.woff2 +0 -0
  126. package/src/assets/fonts/switzer/Switzer-ThinItalic.eot +0 -0
  127. package/src/assets/fonts/switzer/Switzer-ThinItalic.ttf +0 -0
  128. package/src/assets/fonts/switzer/Switzer-ThinItalic.woff +0 -0
  129. package/src/assets/fonts/switzer/Switzer-ThinItalic.woff2 +0 -0
  130. package/src/assets/fonts/switzer/Switzer-Variable.eot +0 -0
  131. package/src/assets/fonts/switzer/Switzer-Variable.ttf +0 -0
  132. package/src/assets/fonts/switzer/Switzer-Variable.woff +0 -0
  133. package/src/assets/fonts/switzer/Switzer-Variable.woff2 +0 -0
  134. package/src/assets/fonts/switzer/Switzer-VariableItalic.eot +0 -0
  135. package/src/assets/fonts/switzer/Switzer-VariableItalic.ttf +0 -0
  136. package/src/assets/fonts/switzer/Switzer-VariableItalic.woff +0 -0
  137. package/src/assets/fonts/switzer/Switzer-VariableItalic.woff2 +0 -0
@@ -0,0 +1,99 @@
1
+ import * as React from "react";
2
+ import { type DropdownMenuItem } from "./DropdownMenu";
3
+ declare const dropdownVariants: (props?: ({
4
+ size?: "small" | "medium" | "large" | null | undefined;
5
+ } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
6
+ export type DropdownItem = DropdownMenuItem;
7
+ export interface DropdownProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "children"> {
8
+ /**
9
+ * Trigger element that opens the dropdown
10
+ */
11
+ trigger?: React.ReactNode;
12
+ /**
13
+ * Items to display in the dropdown
14
+ */
15
+ items?: DropdownItem[];
16
+ /**
17
+ * Section heading text
18
+ */
19
+ sectionHeading?: string;
20
+ /**
21
+ * Whether the dropdown is in loading state
22
+ */
23
+ isLoading?: boolean;
24
+ /**
25
+ * Whether to show empty/no results state
26
+ */
27
+ isEmpty?: boolean;
28
+ /**
29
+ * Empty state title
30
+ */
31
+ emptyTitle?: string;
32
+ /**
33
+ * Empty state description
34
+ */
35
+ emptyDescription?: string;
36
+ /**
37
+ * Empty state link text
38
+ */
39
+ emptyLinkText?: string;
40
+ /**
41
+ * Empty state link click handler
42
+ */
43
+ onEmptyLinkClick?: () => void;
44
+ /**
45
+ * Primary button text
46
+ */
47
+ primaryButtonText?: string;
48
+ /**
49
+ * Secondary button text
50
+ */
51
+ secondaryButtonText?: string;
52
+ /**
53
+ * Primary button click handler
54
+ */
55
+ onPrimaryClick?: () => void;
56
+ /**
57
+ * Secondary button click handler
58
+ */
59
+ onSecondaryClick?: () => void;
60
+ /**
61
+ * Dropdown size
62
+ */
63
+ size?: "small" | "medium" | "large";
64
+ /**
65
+ * Whether dropdown is open (controlled)
66
+ */
67
+ open?: boolean;
68
+ /**
69
+ * Default open state (uncontrolled)
70
+ */
71
+ defaultOpen?: boolean;
72
+ /**
73
+ * Callback when open state changes
74
+ */
75
+ onOpenChange?: (open: boolean) => void;
76
+ /**
77
+ * Custom class for dropdown container
78
+ */
79
+ containerClassName?: string;
80
+ /**
81
+ * Custom class for dropdown menu
82
+ */
83
+ menuClassName?: string;
84
+ /**
85
+ * Show chevron on list items
86
+ */
87
+ showChevron?: boolean;
88
+ /**
89
+ * Custom empty state icon
90
+ */
91
+ emptyIcon?: React.ReactNode;
92
+ /**
93
+ * Disable footer buttons
94
+ */
95
+ disableFooter?: boolean;
96
+ }
97
+ export declare const Dropdown: React.ForwardRefExoticComponent<DropdownProps & React.RefAttributes<HTMLDivElement>>;
98
+ export { dropdownVariants };
99
+ //# sourceMappingURL=Dropdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dropdown.d.ts","sourceRoot":"","sources":["../../../src/components/Dropdown/Dropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAgB,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAErE,QAAA,MAAM,gBAAgB;;mFAcrB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAE5C,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC;IAC9D;;OAEG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;OAEG;IACH,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,eAAO,MAAM,QAAQ,sFA+HpB,CAAC;AAIF,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,342 @@
1
+ import type { StoryObj } from "@storybook/react";
2
+ import React from "react";
3
+ declare const meta: {
4
+ title: string;
5
+ component: React.ForwardRefExoticComponent<import("./Dropdown").DropdownProps & React.RefAttributes<HTMLDivElement>>;
6
+ parameters: {
7
+ layout: string;
8
+ viewport: {
9
+ defaultViewport: string;
10
+ };
11
+ };
12
+ decorators: ((Story: import("@storybook/core/csf").PartialStoryFn<import("@storybook/react").ReactRenderer, {
13
+ trigger?: React.ReactNode;
14
+ items?: import("./Dropdown").DropdownItem[] | undefined;
15
+ sectionHeading?: string | undefined;
16
+ isLoading?: boolean | undefined;
17
+ isEmpty?: boolean | undefined;
18
+ emptyTitle?: string | undefined;
19
+ emptyDescription?: string | undefined;
20
+ emptyLinkText?: string | undefined;
21
+ onEmptyLinkClick?: (() => void) | undefined;
22
+ primaryButtonText?: string | undefined;
23
+ secondaryButtonText?: string | undefined;
24
+ onPrimaryClick?: (() => void) | undefined;
25
+ onSecondaryClick?: (() => void) | undefined;
26
+ size?: "small" | "medium" | "large" | undefined;
27
+ open?: boolean | undefined;
28
+ defaultOpen?: boolean | undefined;
29
+ onOpenChange?: ((open: boolean) => void) | undefined;
30
+ containerClassName?: string | undefined;
31
+ menuClassName?: string | undefined;
32
+ showChevron?: boolean | undefined;
33
+ emptyIcon?: React.ReactNode;
34
+ disableFooter?: boolean | undefined;
35
+ color?: string | undefined | undefined;
36
+ className?: string | undefined | undefined;
37
+ defaultChecked?: boolean | undefined | undefined;
38
+ defaultValue?: string | number | readonly string[] | undefined;
39
+ suppressContentEditableWarning?: boolean | undefined | undefined;
40
+ suppressHydrationWarning?: boolean | undefined | undefined;
41
+ accessKey?: string | undefined | undefined;
42
+ autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | undefined | (string & {}) | undefined;
43
+ autoFocus?: boolean | undefined | undefined;
44
+ contentEditable?: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
45
+ contextMenu?: string | undefined | undefined;
46
+ dir?: string | undefined | undefined;
47
+ draggable?: (boolean | "true" | "false") | undefined;
48
+ enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
49
+ hidden?: boolean | undefined | undefined;
50
+ id?: string | undefined | undefined;
51
+ lang?: string | undefined | undefined;
52
+ nonce?: string | undefined | undefined;
53
+ slot?: string | undefined | undefined;
54
+ spellCheck?: (boolean | "true" | "false") | undefined;
55
+ style?: React.CSSProperties | undefined;
56
+ tabIndex?: number | undefined | undefined;
57
+ title?: string | undefined | undefined;
58
+ translate?: "yes" | "no" | undefined | undefined;
59
+ radioGroup?: string | undefined | undefined;
60
+ role?: React.AriaRole | undefined;
61
+ about?: string | undefined | undefined;
62
+ content?: string | undefined | undefined;
63
+ datatype?: string | undefined | undefined;
64
+ inlist?: any;
65
+ prefix?: string | undefined | undefined;
66
+ property?: string | undefined | undefined;
67
+ rel?: string | undefined | undefined;
68
+ resource?: string | undefined | undefined;
69
+ rev?: string | undefined | undefined;
70
+ typeof?: string | undefined | undefined;
71
+ vocab?: string | undefined | undefined;
72
+ autoCorrect?: string | undefined | undefined;
73
+ autoSave?: string | undefined | undefined;
74
+ itemProp?: string | undefined | undefined;
75
+ itemScope?: boolean | undefined | undefined;
76
+ itemType?: string | undefined | undefined;
77
+ itemID?: string | undefined | undefined;
78
+ itemRef?: string | undefined | undefined;
79
+ results?: number | undefined | undefined;
80
+ security?: string | undefined | undefined;
81
+ unselectable?: "on" | "off" | undefined | undefined;
82
+ inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined | undefined;
83
+ is?: string | undefined | undefined;
84
+ exportparts?: string | undefined | undefined;
85
+ part?: string | undefined | undefined;
86
+ "aria-activedescendant"?: string | undefined | undefined;
87
+ "aria-atomic"?: (boolean | "true" | "false") | undefined;
88
+ "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined | undefined;
89
+ "aria-braillelabel"?: string | undefined | undefined;
90
+ "aria-brailleroledescription"?: string | undefined | undefined;
91
+ "aria-busy"?: (boolean | "true" | "false") | undefined;
92
+ "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined | undefined;
93
+ "aria-colcount"?: number | undefined | undefined;
94
+ "aria-colindex"?: number | undefined | undefined;
95
+ "aria-colindextext"?: string | undefined | undefined;
96
+ "aria-colspan"?: number | undefined | undefined;
97
+ "aria-controls"?: string | undefined | undefined;
98
+ "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined | undefined;
99
+ "aria-describedby"?: string | undefined | undefined;
100
+ "aria-description"?: string | undefined | undefined;
101
+ "aria-details"?: string | undefined | undefined;
102
+ "aria-disabled"?: (boolean | "true" | "false") | undefined;
103
+ "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined | undefined;
104
+ "aria-errormessage"?: string | undefined | undefined;
105
+ "aria-expanded"?: (boolean | "true" | "false") | undefined;
106
+ "aria-flowto"?: string | undefined | undefined;
107
+ "aria-grabbed"?: (boolean | "true" | "false") | undefined;
108
+ "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined | undefined;
109
+ "aria-hidden"?: (boolean | "true" | "false") | undefined;
110
+ "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined | undefined;
111
+ "aria-keyshortcuts"?: string | undefined | undefined;
112
+ "aria-label"?: string | undefined | undefined;
113
+ "aria-labelledby"?: string | undefined | undefined;
114
+ "aria-level"?: number | undefined | undefined;
115
+ "aria-live"?: "off" | "assertive" | "polite" | undefined | undefined;
116
+ "aria-modal"?: (boolean | "true" | "false") | undefined;
117
+ "aria-multiline"?: (boolean | "true" | "false") | undefined;
118
+ "aria-multiselectable"?: (boolean | "true" | "false") | undefined;
119
+ "aria-orientation"?: "horizontal" | "vertical" | undefined | undefined;
120
+ "aria-owns"?: string | undefined | undefined;
121
+ "aria-placeholder"?: string | undefined | undefined;
122
+ "aria-posinset"?: number | undefined | undefined;
123
+ "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined | undefined;
124
+ "aria-readonly"?: (boolean | "true" | "false") | undefined;
125
+ "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined | undefined;
126
+ "aria-required"?: (boolean | "true" | "false") | undefined;
127
+ "aria-roledescription"?: string | undefined | undefined;
128
+ "aria-rowcount"?: number | undefined | undefined;
129
+ "aria-rowindex"?: number | undefined | undefined;
130
+ "aria-rowindextext"?: string | undefined | undefined;
131
+ "aria-rowspan"?: number | undefined | undefined;
132
+ "aria-selected"?: (boolean | "true" | "false") | undefined;
133
+ "aria-setsize"?: number | undefined | undefined;
134
+ "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined | undefined;
135
+ "aria-valuemax"?: number | undefined | undefined;
136
+ "aria-valuemin"?: number | undefined | undefined;
137
+ "aria-valuenow"?: number | undefined | undefined;
138
+ "aria-valuetext"?: string | undefined | undefined;
139
+ dangerouslySetInnerHTML?: {
140
+ __html: string | TrustedHTML;
141
+ } | undefined | undefined;
142
+ onCopy?: React.ClipboardEventHandler<HTMLDivElement> | undefined;
143
+ onCopyCapture?: React.ClipboardEventHandler<HTMLDivElement> | undefined;
144
+ onCut?: React.ClipboardEventHandler<HTMLDivElement> | undefined;
145
+ onCutCapture?: React.ClipboardEventHandler<HTMLDivElement> | undefined;
146
+ onPaste?: React.ClipboardEventHandler<HTMLDivElement> | undefined;
147
+ onPasteCapture?: React.ClipboardEventHandler<HTMLDivElement> | undefined;
148
+ onCompositionEnd?: React.CompositionEventHandler<HTMLDivElement> | undefined;
149
+ onCompositionEndCapture?: React.CompositionEventHandler<HTMLDivElement> | undefined;
150
+ onCompositionStart?: React.CompositionEventHandler<HTMLDivElement> | undefined;
151
+ onCompositionStartCapture?: React.CompositionEventHandler<HTMLDivElement> | undefined;
152
+ onCompositionUpdate?: React.CompositionEventHandler<HTMLDivElement> | undefined;
153
+ onCompositionUpdateCapture?: React.CompositionEventHandler<HTMLDivElement> | undefined;
154
+ onFocus?: React.FocusEventHandler<HTMLDivElement> | undefined;
155
+ onFocusCapture?: React.FocusEventHandler<HTMLDivElement> | undefined;
156
+ onBlur?: React.FocusEventHandler<HTMLDivElement> | undefined;
157
+ onBlurCapture?: React.FocusEventHandler<HTMLDivElement> | undefined;
158
+ onChange?: React.FormEventHandler<HTMLDivElement> | undefined;
159
+ onChangeCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
160
+ onBeforeInput?: React.InputEventHandler<HTMLDivElement> | undefined;
161
+ onBeforeInputCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
162
+ onInput?: React.FormEventHandler<HTMLDivElement> | undefined;
163
+ onInputCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
164
+ onReset?: React.FormEventHandler<HTMLDivElement> | undefined;
165
+ onResetCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
166
+ onSubmit?: React.FormEventHandler<HTMLDivElement> | undefined;
167
+ onSubmitCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
168
+ onInvalid?: React.FormEventHandler<HTMLDivElement> | undefined;
169
+ onInvalidCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
170
+ onLoad?: React.ReactEventHandler<HTMLDivElement> | undefined;
171
+ onLoadCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
172
+ onError?: React.ReactEventHandler<HTMLDivElement> | undefined;
173
+ onErrorCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
174
+ onKeyDown?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
175
+ onKeyDownCapture?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
176
+ onKeyPress?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
177
+ onKeyPressCapture?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
178
+ onKeyUp?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
179
+ onKeyUpCapture?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
180
+ onAbort?: React.ReactEventHandler<HTMLDivElement> | undefined;
181
+ onAbortCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
182
+ onCanPlay?: React.ReactEventHandler<HTMLDivElement> | undefined;
183
+ onCanPlayCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
184
+ onCanPlayThrough?: React.ReactEventHandler<HTMLDivElement> | undefined;
185
+ onCanPlayThroughCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
186
+ onDurationChange?: React.ReactEventHandler<HTMLDivElement> | undefined;
187
+ onDurationChangeCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
188
+ onEmptied?: React.ReactEventHandler<HTMLDivElement> | undefined;
189
+ onEmptiedCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
190
+ onEncrypted?: React.ReactEventHandler<HTMLDivElement> | undefined;
191
+ onEncryptedCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
192
+ onEnded?: React.ReactEventHandler<HTMLDivElement> | undefined;
193
+ onEndedCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
194
+ onLoadedData?: React.ReactEventHandler<HTMLDivElement> | undefined;
195
+ onLoadedDataCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
196
+ onLoadedMetadata?: React.ReactEventHandler<HTMLDivElement> | undefined;
197
+ onLoadedMetadataCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
198
+ onLoadStart?: React.ReactEventHandler<HTMLDivElement> | undefined;
199
+ onLoadStartCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
200
+ onPause?: React.ReactEventHandler<HTMLDivElement> | undefined;
201
+ onPauseCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
202
+ onPlay?: React.ReactEventHandler<HTMLDivElement> | undefined;
203
+ onPlayCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
204
+ onPlaying?: React.ReactEventHandler<HTMLDivElement> | undefined;
205
+ onPlayingCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
206
+ onProgress?: React.ReactEventHandler<HTMLDivElement> | undefined;
207
+ onProgressCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
208
+ onRateChange?: React.ReactEventHandler<HTMLDivElement> | undefined;
209
+ onRateChangeCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
210
+ onSeeked?: React.ReactEventHandler<HTMLDivElement> | undefined;
211
+ onSeekedCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
212
+ onSeeking?: React.ReactEventHandler<HTMLDivElement> | undefined;
213
+ onSeekingCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
214
+ onStalled?: React.ReactEventHandler<HTMLDivElement> | undefined;
215
+ onStalledCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
216
+ onSuspend?: React.ReactEventHandler<HTMLDivElement> | undefined;
217
+ onSuspendCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
218
+ onTimeUpdate?: React.ReactEventHandler<HTMLDivElement> | undefined;
219
+ onTimeUpdateCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
220
+ onVolumeChange?: React.ReactEventHandler<HTMLDivElement> | undefined;
221
+ onVolumeChangeCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
222
+ onWaiting?: React.ReactEventHandler<HTMLDivElement> | undefined;
223
+ onWaitingCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
224
+ onAuxClick?: React.MouseEventHandler<HTMLDivElement> | undefined;
225
+ onAuxClickCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
226
+ onClick?: React.MouseEventHandler<HTMLDivElement> | undefined;
227
+ onClickCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
228
+ onContextMenu?: React.MouseEventHandler<HTMLDivElement> | undefined;
229
+ onContextMenuCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
230
+ onDoubleClick?: React.MouseEventHandler<HTMLDivElement> | undefined;
231
+ onDoubleClickCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
232
+ onDrag?: React.DragEventHandler<HTMLDivElement> | undefined;
233
+ onDragCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
234
+ onDragEnd?: React.DragEventHandler<HTMLDivElement> | undefined;
235
+ onDragEndCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
236
+ onDragEnter?: React.DragEventHandler<HTMLDivElement> | undefined;
237
+ onDragEnterCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
238
+ onDragExit?: React.DragEventHandler<HTMLDivElement> | undefined;
239
+ onDragExitCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
240
+ onDragLeave?: React.DragEventHandler<HTMLDivElement> | undefined;
241
+ onDragLeaveCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
242
+ onDragOver?: React.DragEventHandler<HTMLDivElement> | undefined;
243
+ onDragOverCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
244
+ onDragStart?: React.DragEventHandler<HTMLDivElement> | undefined;
245
+ onDragStartCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
246
+ onDrop?: React.DragEventHandler<HTMLDivElement> | undefined;
247
+ onDropCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
248
+ onMouseDown?: React.MouseEventHandler<HTMLDivElement> | undefined;
249
+ onMouseDownCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
250
+ onMouseEnter?: React.MouseEventHandler<HTMLDivElement> | undefined;
251
+ onMouseLeave?: React.MouseEventHandler<HTMLDivElement> | undefined;
252
+ onMouseMove?: React.MouseEventHandler<HTMLDivElement> | undefined;
253
+ onMouseMoveCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
254
+ onMouseOut?: React.MouseEventHandler<HTMLDivElement> | undefined;
255
+ onMouseOutCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
256
+ onMouseOver?: React.MouseEventHandler<HTMLDivElement> | undefined;
257
+ onMouseOverCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
258
+ onMouseUp?: React.MouseEventHandler<HTMLDivElement> | undefined;
259
+ onMouseUpCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
260
+ onSelect?: React.ReactEventHandler<HTMLDivElement> | undefined;
261
+ onSelectCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
262
+ onTouchCancel?: React.TouchEventHandler<HTMLDivElement> | undefined;
263
+ onTouchCancelCapture?: React.TouchEventHandler<HTMLDivElement> | undefined;
264
+ onTouchEnd?: React.TouchEventHandler<HTMLDivElement> | undefined;
265
+ onTouchEndCapture?: React.TouchEventHandler<HTMLDivElement> | undefined;
266
+ onTouchMove?: React.TouchEventHandler<HTMLDivElement> | undefined;
267
+ onTouchMoveCapture?: React.TouchEventHandler<HTMLDivElement> | undefined;
268
+ onTouchStart?: React.TouchEventHandler<HTMLDivElement> | undefined;
269
+ onTouchStartCapture?: React.TouchEventHandler<HTMLDivElement> | undefined;
270
+ onPointerDown?: React.PointerEventHandler<HTMLDivElement> | undefined;
271
+ onPointerDownCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
272
+ onPointerMove?: React.PointerEventHandler<HTMLDivElement> | undefined;
273
+ onPointerMoveCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
274
+ onPointerUp?: React.PointerEventHandler<HTMLDivElement> | undefined;
275
+ onPointerUpCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
276
+ onPointerCancel?: React.PointerEventHandler<HTMLDivElement> | undefined;
277
+ onPointerCancelCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
278
+ onPointerEnter?: React.PointerEventHandler<HTMLDivElement> | undefined;
279
+ onPointerLeave?: React.PointerEventHandler<HTMLDivElement> | undefined;
280
+ onPointerOver?: React.PointerEventHandler<HTMLDivElement> | undefined;
281
+ onPointerOverCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
282
+ onPointerOut?: React.PointerEventHandler<HTMLDivElement> | undefined;
283
+ onPointerOutCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
284
+ onGotPointerCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
285
+ onGotPointerCaptureCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
286
+ onLostPointerCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
287
+ onLostPointerCaptureCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
288
+ onScroll?: React.UIEventHandler<HTMLDivElement> | undefined;
289
+ onScrollCapture?: React.UIEventHandler<HTMLDivElement> | undefined;
290
+ onWheel?: React.WheelEventHandler<HTMLDivElement> | undefined;
291
+ onWheelCapture?: React.WheelEventHandler<HTMLDivElement> | undefined;
292
+ onAnimationStart?: React.AnimationEventHandler<HTMLDivElement> | undefined;
293
+ onAnimationStartCapture?: React.AnimationEventHandler<HTMLDivElement> | undefined;
294
+ onAnimationEnd?: React.AnimationEventHandler<HTMLDivElement> | undefined;
295
+ onAnimationEndCapture?: React.AnimationEventHandler<HTMLDivElement> | undefined;
296
+ onAnimationIteration?: React.AnimationEventHandler<HTMLDivElement> | undefined;
297
+ onAnimationIterationCapture?: React.AnimationEventHandler<HTMLDivElement> | undefined;
298
+ onTransitionEnd?: React.TransitionEventHandler<HTMLDivElement> | undefined;
299
+ onTransitionEndCapture?: React.TransitionEventHandler<HTMLDivElement> | undefined;
300
+ ref?: React.LegacyRef<HTMLDivElement> | undefined;
301
+ key?: React.Key | null | undefined;
302
+ }>) => import("react/jsx-runtime").JSX.Element)[];
303
+ tags: string[];
304
+ argTypes: {
305
+ size: {
306
+ control: "select";
307
+ options: string[];
308
+ description: string;
309
+ };
310
+ isLoading: {
311
+ control: "boolean";
312
+ description: string;
313
+ };
314
+ isEmpty: {
315
+ control: "boolean";
316
+ description: string;
317
+ };
318
+ showChevron: {
319
+ control: "boolean";
320
+ description: string;
321
+ };
322
+ disableFooter: {
323
+ control: "boolean";
324
+ description: string;
325
+ };
326
+ };
327
+ };
328
+ export default meta;
329
+ type Story = StoryObj<typeof meta>;
330
+ export declare const Default: Story;
331
+ export declare const WithDescriptions: Story;
332
+ export declare const NoSearchResult: Story;
333
+ export declare const LoadingState: Story;
334
+ export declare const WithoutSectionHeading: Story;
335
+ export declare const WithoutFooter: Story;
336
+ export declare const SmallSize: Story;
337
+ export declare const LargeSize: Story;
338
+ export declare const WithChevrons: Story;
339
+ export declare const DisabledItems: Story;
340
+ export declare const Interactive: Story;
341
+ export declare const WithSearch: Story;
342
+ //# sourceMappingURL=Dropdown.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dropdown.stories.d.ts","sourceRoot":"","sources":["../../../src/components/Dropdown/Dropdown.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCuB,CAAC;AAElC,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AA0FnC,eAAO,MAAM,OAAO,EAAE,KASrB,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,KAgC9B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAW5B,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAQ1B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,KAQnC,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAQ3B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAQvB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAQvB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAQ1B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KA8B3B,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,KAyEzB,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE,KAwDxB,CAAC"}
@@ -0,0 +1,90 @@
1
+ import * as React from "react";
2
+ export interface DropdownMenuItem {
3
+ id: string | number;
4
+ title: string;
5
+ description?: string;
6
+ leadingIcon?: React.ReactNode;
7
+ trailingIcon?: React.ReactNode;
8
+ isDisabled?: boolean;
9
+ onClick?: () => void;
10
+ }
11
+ export interface DropdownMenuProps {
12
+ /**
13
+ * Items to display in the dropdown
14
+ */
15
+ items?: DropdownMenuItem[];
16
+ /**
17
+ * Section heading text
18
+ */
19
+ sectionHeading?: string;
20
+ /**
21
+ * Whether the dropdown is in loading state
22
+ */
23
+ isLoading?: boolean;
24
+ /**
25
+ * Whether to show empty/no results state
26
+ */
27
+ isEmpty?: boolean;
28
+ /**
29
+ * Empty state title
30
+ */
31
+ emptyTitle?: string;
32
+ /**
33
+ * Empty state description
34
+ */
35
+ emptyDescription?: string;
36
+ /**
37
+ * Empty state link text
38
+ */
39
+ emptyLinkText?: string;
40
+ /**
41
+ * Empty state link click handler
42
+ */
43
+ onEmptyLinkClick?: () => void;
44
+ /**
45
+ * Primary button text
46
+ */
47
+ primaryButtonText?: string;
48
+ /**
49
+ * Secondary button text
50
+ */
51
+ secondaryButtonText?: string;
52
+ /**
53
+ * Primary button click handler
54
+ */
55
+ onPrimaryClick?: () => void;
56
+ /**
57
+ * Secondary button click handler
58
+ */
59
+ onSecondaryClick?: () => void;
60
+ /**
61
+ * Show chevron on list items
62
+ */
63
+ showChevron?: boolean;
64
+ /**
65
+ * Custom empty state icon
66
+ */
67
+ emptyIcon?: React.ReactNode;
68
+ /**
69
+ * Disable footer buttons
70
+ */
71
+ disableFooter?: boolean;
72
+ /**
73
+ * Callback when menu should close
74
+ */
75
+ onClose?: () => void;
76
+ /**
77
+ * Focused item index (for keyboard navigation)
78
+ */
79
+ focusedIndex?: number;
80
+ /**
81
+ * Custom class name
82
+ */
83
+ className?: string;
84
+ /**
85
+ * Width of the dropdown menu
86
+ */
87
+ width?: "auto" | "full" | string;
88
+ }
89
+ export declare const DropdownMenu: React.ForwardRefExoticComponent<DropdownMenuProps & React.RefAttributes<HTMLDivElement>>;
90
+ //# sourceMappingURL=DropdownMenu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DropdownMenu.d.ts","sourceRoot":"","sources":["../../../src/components/Dropdown/DropdownMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAS/B,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,KAAK,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC3B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;CAClC;AAED,eAAO,MAAM,YAAY,0FA+JxB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Dropdown, dropdownVariants, type DropdownProps, type DropdownItem, } from "./Dropdown";
2
+ export { DropdownMenu, type DropdownMenuProps, type DropdownMenuItem, } from "./DropdownMenu";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Dropdown/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,gBAAgB,EAChB,KAAK,aAAa,EAClB,KAAK,YAAY,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,GACtB,MAAM,gBAAgB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../../src/components/Link/Link.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,QAAA,MAAM,YAAY;;;;;;mFAqGjB,CAAC;AAEF,MAAM,WAAW,SACf,SAAQ,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACpE,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;IAC5E,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;CAC5D;AAED,QAAA,MAAM,IAAI,qFAkFT,CAAC;AAGF,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../../src/components/Link/Link.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,QAAA,MAAM,YAAY;;;;;;mFA0GjB,CAAC;AAEF,MAAM,WAAW,SACf,SAAQ,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACpE,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;IAC5E,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;CAC5D;AAED,QAAA,MAAM,IAAI,qFAkFT,CAAC;AAGF,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,103 @@
1
+ import * as React from "react";
2
+ import { type TextFieldProps } from "../TextField";
3
+ import { type DropdownMenuItem } from "../Dropdown/DropdownMenu";
4
+ export interface SearchableDropdownItem extends DropdownMenuItem {
5
+ value?: string;
6
+ [key: string]: any;
7
+ }
8
+ export interface SearchableDropdownProps extends Omit<TextFieldProps, "onChange" | "value"> {
9
+ /**
10
+ * Items to display in the dropdown
11
+ */
12
+ items?: SearchableDropdownItem[];
13
+ /**
14
+ * Section heading text
15
+ */
16
+ sectionHeading?: string;
17
+ /**
18
+ * Whether the dropdown is in loading state
19
+ */
20
+ isLoading?: boolean;
21
+ /**
22
+ * Empty state title
23
+ */
24
+ emptyTitle?: string;
25
+ /**
26
+ * Empty state description
27
+ */
28
+ emptyDescription?: string;
29
+ /**
30
+ * Empty state link text
31
+ */
32
+ emptyLinkText?: string;
33
+ /**
34
+ * Empty state link click handler
35
+ */
36
+ onEmptyLinkClick?: () => void;
37
+ /**
38
+ * Primary button text
39
+ */
40
+ primaryButtonText?: string;
41
+ /**
42
+ * Secondary button text
43
+ */
44
+ secondaryButtonText?: string;
45
+ /**
46
+ * Primary button click handler
47
+ */
48
+ onPrimaryClick?: () => void;
49
+ /**
50
+ * Secondary button click handler
51
+ */
52
+ onSecondaryClick?: () => void;
53
+ /**
54
+ * Dropdown menu width
55
+ */
56
+ dropdownWidth?: "auto" | "full";
57
+ /**
58
+ * Show chevron on list items
59
+ */
60
+ showChevron?: boolean;
61
+ /**
62
+ * Custom empty state icon
63
+ */
64
+ emptyIcon?: React.ReactNode;
65
+ /**
66
+ * Disable footer buttons
67
+ */
68
+ disableFooter?: boolean;
69
+ /**
70
+ * Callback when search value changes
71
+ */
72
+ onSearchChange?: (value: string) => void;
73
+ /**
74
+ * Callback when item is selected
75
+ */
76
+ onItemSelect?: (item: SearchableDropdownItem) => void;
77
+ /**
78
+ * Custom filter function
79
+ */
80
+ filterFunction?: (item: SearchableDropdownItem, query: string) => boolean;
81
+ /**
82
+ * Search value (controlled)
83
+ */
84
+ searchValue?: string;
85
+ /**
86
+ * Default search value (uncontrolled)
87
+ */
88
+ defaultSearchValue?: string;
89
+ /**
90
+ * Custom class for dropdown menu
91
+ */
92
+ dropdownClassName?: string;
93
+ /**
94
+ * Minimum characters before showing dropdown
95
+ */
96
+ minSearchLength?: number;
97
+ /**
98
+ * Show dropdown on focus
99
+ */
100
+ showOnFocus?: boolean;
101
+ }
102
+ export declare const SearchableDropdown: React.ForwardRefExoticComponent<SearchableDropdownProps & React.RefAttributes<HTMLInputElement>>;
103
+ //# sourceMappingURL=SearchableDropdown.d.ts.map