@shipfox/react-ui 0.13.0 → 0.15.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 (268) hide show
  1. package/.storybook/preview.tsx +7 -0
  2. package/.turbo/turbo-build.log +7 -7
  3. package/.turbo/turbo-check.log +2 -2
  4. package/.turbo/turbo-type.log +1 -1
  5. package/CHANGELOG.md +16 -0
  6. package/dist/components/avatar/avatar.js +1 -1
  7. package/dist/components/avatar/avatar.js.map +1 -1
  8. package/dist/components/button-group/button-group.d.ts +17 -0
  9. package/dist/components/button-group/button-group.d.ts.map +1 -0
  10. package/dist/components/button-group/button-group.js +74 -0
  11. package/dist/components/button-group/button-group.js.map +1 -0
  12. package/dist/components/button-group/button-group.stories.js +644 -0
  13. package/dist/components/button-group/button-group.stories.js.map +1 -0
  14. package/dist/components/button-group/index.d.ts +2 -0
  15. package/dist/components/button-group/index.d.ts.map +1 -0
  16. package/dist/components/button-group/index.js +3 -0
  17. package/dist/components/button-group/index.js.map +1 -0
  18. package/dist/components/code-block/code-block-footer.d.ts.map +1 -1
  19. package/dist/components/code-block/code-block-footer.js +13 -5
  20. package/dist/components/code-block/code-block-footer.js.map +1 -1
  21. package/dist/components/command/command.d.ts +28 -0
  22. package/dist/components/command/command.d.ts.map +1 -0
  23. package/dist/components/command/command.js +190 -0
  24. package/dist/components/command/command.js.map +1 -0
  25. package/dist/components/command/command.stories.js +228 -0
  26. package/dist/components/command/command.stories.js.map +1 -0
  27. package/dist/components/command/index.d.ts +2 -0
  28. package/dist/components/command/index.d.ts.map +1 -0
  29. package/dist/components/command/index.js +3 -0
  30. package/dist/components/command/index.js.map +1 -0
  31. package/dist/components/confetti/confetti.d.ts +21 -0
  32. package/dist/components/confetti/confetti.d.ts.map +1 -0
  33. package/dist/components/confetti/confetti.js +101 -0
  34. package/dist/components/confetti/confetti.js.map +1 -0
  35. package/dist/components/confetti/confetti.stories.js +41 -0
  36. package/dist/components/confetti/confetti.stories.js.map +1 -0
  37. package/dist/components/confetti/index.d.ts +2 -0
  38. package/dist/components/confetti/index.d.ts.map +1 -0
  39. package/dist/components/confetti/index.js +3 -0
  40. package/dist/components/confetti/index.js.map +1 -0
  41. package/dist/components/dashboard/components/analytics-content.d.ts +2 -0
  42. package/dist/components/dashboard/components/analytics-content.d.ts.map +1 -0
  43. package/dist/components/dashboard/components/analytics-content.js +180 -0
  44. package/dist/components/dashboard/components/analytics-content.js.map +1 -0
  45. package/dist/components/dashboard/components/animated-logo.d.ts +4 -0
  46. package/dist/components/dashboard/components/animated-logo.d.ts.map +1 -0
  47. package/dist/components/dashboard/components/animated-logo.js +23 -0
  48. package/dist/components/dashboard/components/animated-logo.js.map +1 -0
  49. package/dist/components/dashboard/components/complete-setup-button.d.ts +4 -0
  50. package/dist/components/dashboard/components/complete-setup-button.d.ts.map +1 -0
  51. package/dist/components/dashboard/components/complete-setup-button.js +28 -0
  52. package/dist/components/dashboard/components/complete-setup-button.js.map +1 -0
  53. package/dist/components/dashboard/components/jobs-content.d.ts +2 -0
  54. package/dist/components/dashboard/components/jobs-content.d.ts.map +1 -0
  55. package/dist/components/dashboard/components/jobs-content.js +69 -0
  56. package/dist/components/dashboard/components/jobs-content.js.map +1 -0
  57. package/dist/components/dashboard/components/mobile-menu.d.ts +2 -0
  58. package/dist/components/dashboard/components/mobile-menu.d.ts.map +1 -0
  59. package/dist/components/dashboard/components/mobile-menu.js +65 -0
  60. package/dist/components/dashboard/components/mobile-menu.js.map +1 -0
  61. package/dist/components/dashboard/components/organization-selector.d.ts +2 -0
  62. package/dist/components/dashboard/components/organization-selector.d.ts.map +1 -0
  63. package/dist/components/dashboard/components/organization-selector.js +92 -0
  64. package/dist/components/dashboard/components/organization-selector.js.map +1 -0
  65. package/dist/components/dashboard/components/top-menu.d.ts +5 -0
  66. package/dist/components/dashboard/components/top-menu.d.ts.map +1 -0
  67. package/dist/components/dashboard/components/top-menu.js +31 -0
  68. package/dist/components/dashboard/components/top-menu.js.map +1 -0
  69. package/dist/components/dashboard/components/topbar-button.d.ts +7 -0
  70. package/dist/components/dashboard/components/topbar-button.d.ts.map +1 -0
  71. package/dist/components/dashboard/components/topbar-button.js +18 -0
  72. package/dist/components/dashboard/components/topbar-button.js.map +1 -0
  73. package/dist/components/dashboard/components/topbar.d.ts +4 -0
  74. package/dist/components/dashboard/components/topbar.d.ts.map +1 -0
  75. package/dist/components/dashboard/components/topbar.js +62 -0
  76. package/dist/components/dashboard/components/topbar.js.map +1 -0
  77. package/dist/components/dashboard/components/user-profile.d.ts +2 -0
  78. package/dist/components/dashboard/components/user-profile.d.ts.map +1 -0
  79. package/dist/components/dashboard/components/user-profile.js +146 -0
  80. package/dist/components/dashboard/components/user-profile.js.map +1 -0
  81. package/dist/components/dashboard/dashboard.d.ts +2 -0
  82. package/dist/components/dashboard/dashboard.d.ts.map +1 -0
  83. package/dist/components/dashboard/dashboard.js +70 -0
  84. package/dist/components/dashboard/dashboard.js.map +1 -0
  85. package/dist/components/dashboard/dashboard.stories.js +23 -0
  86. package/dist/components/dashboard/dashboard.stories.js.map +1 -0
  87. package/dist/components/dashboard/index.d.ts +2 -0
  88. package/dist/components/dashboard/index.d.ts.map +1 -0
  89. package/dist/components/dashboard/index.js +3 -0
  90. package/dist/components/dashboard/index.js.map +1 -0
  91. package/dist/components/form/form.stories.js +6 -1
  92. package/dist/components/form/form.stories.js.map +1 -1
  93. package/dist/components/icon/icon.d.ts +3 -2
  94. package/dist/components/icon/icon.d.ts.map +1 -1
  95. package/dist/components/icon/icon.js +7 -2
  96. package/dist/components/icon/icon.js.map +1 -1
  97. package/dist/components/index.d.ts +9 -0
  98. package/dist/components/index.d.ts.map +1 -1
  99. package/dist/components/index.js +9 -0
  100. package/dist/components/index.js.map +1 -1
  101. package/dist/components/kbd/index.d.ts +2 -0
  102. package/dist/components/kbd/index.d.ts.map +1 -0
  103. package/dist/components/kbd/index.js +3 -0
  104. package/dist/components/kbd/index.js.map +1 -0
  105. package/dist/components/kbd/kbd.d.ts +7 -0
  106. package/dist/components/kbd/kbd.d.ts.map +1 -0
  107. package/dist/components/kbd/kbd.js +18 -0
  108. package/dist/components/kbd/kbd.js.map +1 -0
  109. package/dist/components/kbd/kbd.stories.js +119 -0
  110. package/dist/components/kbd/kbd.stories.js.map +1 -0
  111. package/dist/components/modal/modal.stories.js +227 -168
  112. package/dist/components/modal/modal.stories.js.map +1 -1
  113. package/dist/components/search/index.d.ts +7 -0
  114. package/dist/components/search/index.d.ts.map +1 -0
  115. package/dist/components/search/index.js +8 -0
  116. package/dist/components/search/index.js.map +1 -0
  117. package/dist/components/search/search-context.d.ts +11 -0
  118. package/dist/components/search/search-context.d.ts.map +1 -0
  119. package/dist/components/search/search-context.js +56 -0
  120. package/dist/components/search/search-context.js.map +1 -0
  121. package/dist/components/search/search-inline.d.ts +9 -0
  122. package/dist/components/search/search-inline.d.ts.map +1 -0
  123. package/dist/components/search/search-inline.js +85 -0
  124. package/dist/components/search/search-inline.js.map +1 -0
  125. package/dist/components/search/search-modal.d.ts +25 -0
  126. package/dist/components/search/search-modal.d.ts.map +1 -0
  127. package/dist/components/search/search-modal.js +162 -0
  128. package/dist/components/search/search-modal.js.map +1 -0
  129. package/dist/components/search/search-trigger.d.ts +9 -0
  130. package/dist/components/search/search-trigger.d.ts.map +1 -0
  131. package/dist/components/search/search-trigger.js +37 -0
  132. package/dist/components/search/search-trigger.js.map +1 -0
  133. package/dist/components/search/search-variants.d.ts +14 -0
  134. package/dist/components/search/search-variants.d.ts.map +1 -0
  135. package/dist/components/search/search-variants.js +90 -0
  136. package/dist/components/search/search-variants.js.map +1 -0
  137. package/dist/components/search/search.d.ts +11 -0
  138. package/dist/components/search/search.d.ts.map +1 -0
  139. package/dist/components/search/search.js +35 -0
  140. package/dist/components/search/search.js.map +1 -0
  141. package/dist/components/search/search.stories.js +630 -0
  142. package/dist/components/search/search.stories.js.map +1 -0
  143. package/dist/components/select/index.d.ts +2 -0
  144. package/dist/components/select/index.d.ts.map +1 -0
  145. package/dist/components/select/index.js +3 -0
  146. package/dist/components/select/index.js.map +1 -0
  147. package/dist/components/select/select.d.ts +25 -0
  148. package/dist/components/select/select.d.ts.map +1 -0
  149. package/dist/components/select/select.js +153 -0
  150. package/dist/components/select/select.js.map +1 -0
  151. package/dist/components/select/select.stories.js +393 -0
  152. package/dist/components/select/select.stories.js.map +1 -0
  153. package/dist/components/shiny-text/index.d.ts +2 -0
  154. package/dist/components/shiny-text/index.d.ts.map +1 -0
  155. package/dist/components/shiny-text/index.js +3 -0
  156. package/dist/components/shiny-text/index.js.map +1 -0
  157. package/dist/components/shiny-text/shiny-text.d.ts +10 -0
  158. package/dist/components/shiny-text/shiny-text.d.ts.map +1 -0
  159. package/dist/components/shiny-text/shiny-text.js +17 -0
  160. package/dist/components/shiny-text/shiny-text.js.map +1 -0
  161. package/dist/components/skeleton/index.d.ts +2 -0
  162. package/dist/components/skeleton/index.d.ts.map +1 -0
  163. package/dist/components/skeleton/index.js +3 -0
  164. package/dist/components/skeleton/index.js.map +1 -0
  165. package/dist/components/skeleton/skeleton.d.ts +5 -0
  166. package/dist/components/skeleton/skeleton.d.ts.map +1 -0
  167. package/dist/components/skeleton/skeleton.js +11 -0
  168. package/dist/components/skeleton/skeleton.js.map +1 -0
  169. package/dist/components/skeleton/skeleton.stories.js +345 -0
  170. package/dist/components/skeleton/skeleton.stories.js.map +1 -0
  171. package/dist/components/table/data-table.d.ts +70 -0
  172. package/dist/components/table/data-table.d.ts.map +1 -0
  173. package/dist/components/table/data-table.js +159 -0
  174. package/dist/components/table/data-table.js.map +1 -0
  175. package/dist/components/table/index.d.ts +6 -0
  176. package/dist/components/table/index.d.ts.map +1 -0
  177. package/dist/components/table/index.js +6 -0
  178. package/dist/components/table/index.js.map +1 -0
  179. package/dist/components/table/table-column-header.d.ts +79 -0
  180. package/dist/components/table/table-column-header.d.ts.map +1 -0
  181. package/dist/components/table/table-column-header.js +99 -0
  182. package/dist/components/table/table-column-header.js.map +1 -0
  183. package/dist/components/table/table-pagination.d.ts +53 -0
  184. package/dist/components/table/table-pagination.d.ts.map +1 -0
  185. package/dist/components/table/table-pagination.js +139 -0
  186. package/dist/components/table/table-pagination.js.map +1 -0
  187. package/dist/components/table/table.d.ts +11 -0
  188. package/dist/components/table/table.d.ts.map +1 -0
  189. package/dist/components/table/table.js +64 -0
  190. package/dist/components/table/table.js.map +1 -0
  191. package/dist/components/table/table.stories.columns.d.ts +24 -0
  192. package/dist/components/table/table.stories.columns.d.ts.map +1 -0
  193. package/dist/components/table/table.stories.columns.js +310 -0
  194. package/dist/components/table/table.stories.columns.js.map +1 -0
  195. package/dist/components/table/table.stories.components.d.ts +14 -0
  196. package/dist/components/table/table.stories.components.d.ts.map +1 -0
  197. package/dist/components/table/table.stories.components.js +107 -0
  198. package/dist/components/table/table.stories.components.js.map +1 -0
  199. package/dist/components/table/table.stories.data.d.ts +54 -0
  200. package/dist/components/table/table.stories.data.d.ts.map +1 -0
  201. package/dist/components/table/table.stories.data.js +122 -0
  202. package/dist/components/table/table.stories.data.js.map +1 -0
  203. package/dist/components/table/table.stories.js +302 -0
  204. package/dist/components/table/table.stories.js.map +1 -0
  205. package/dist/index.d.ts +1 -0
  206. package/dist/index.d.ts.map +1 -1
  207. package/dist/index.js +1 -0
  208. package/dist/index.js.map +1 -1
  209. package/dist/styles.css +1 -1
  210. package/index.css +79 -0
  211. package/package.json +6 -2
  212. package/src/components/avatar/avatar.tsx +1 -1
  213. package/src/components/button-group/button-group.stories.tsx +361 -0
  214. package/src/components/button-group/button-group.tsx +111 -0
  215. package/src/components/button-group/index.ts +1 -0
  216. package/src/components/code-block/code-block-footer.tsx +19 -2
  217. package/src/components/command/command.stories.tsx +133 -0
  218. package/src/components/command/command.tsx +265 -0
  219. package/src/components/command/index.ts +1 -0
  220. package/src/components/confetti/confetti.stories.tsx +38 -0
  221. package/src/components/confetti/confetti.tsx +140 -0
  222. package/src/components/confetti/index.ts +1 -0
  223. package/src/components/dashboard/components/analytics-content.tsx +102 -0
  224. package/src/components/dashboard/components/animated-logo.tsx +25 -0
  225. package/src/components/dashboard/components/complete-setup-button.tsx +30 -0
  226. package/src/components/dashboard/components/jobs-content.tsx +51 -0
  227. package/src/components/dashboard/components/mobile-menu.tsx +50 -0
  228. package/src/components/dashboard/components/organization-selector.tsx +51 -0
  229. package/src/components/dashboard/components/top-menu.tsx +26 -0
  230. package/src/components/dashboard/components/topbar-button.tsx +27 -0
  231. package/src/components/dashboard/components/topbar.tsx +40 -0
  232. package/src/components/dashboard/components/user-profile.tsx +90 -0
  233. package/src/components/dashboard/dashboard.stories.tsx +25 -0
  234. package/src/components/dashboard/dashboard.tsx +61 -0
  235. package/src/components/dashboard/index.ts +1 -0
  236. package/src/components/form/form.stories.tsx +5 -0
  237. package/src/components/icon/icon.tsx +7 -3
  238. package/src/components/index.ts +9 -0
  239. package/src/components/kbd/index.ts +1 -0
  240. package/src/components/kbd/kbd.stories.tsx +64 -0
  241. package/src/components/kbd/kbd.tsx +32 -0
  242. package/src/components/modal/modal.stories.tsx +58 -4
  243. package/src/components/search/index.ts +28 -0
  244. package/src/components/search/search-context.tsx +78 -0
  245. package/src/components/search/search-inline.tsx +107 -0
  246. package/src/components/search/search-modal.tsx +198 -0
  247. package/src/components/search/search-trigger.tsx +47 -0
  248. package/src/components/search/search-variants.ts +88 -0
  249. package/src/components/search/search.stories.tsx +392 -0
  250. package/src/components/search/search.tsx +47 -0
  251. package/src/components/select/index.ts +1 -0
  252. package/src/components/select/select.stories.tsx +207 -0
  253. package/src/components/select/select.tsx +220 -0
  254. package/src/components/shiny-text/index.ts +1 -0
  255. package/src/components/shiny-text/shiny-text.tsx +21 -0
  256. package/src/components/skeleton/index.ts +1 -0
  257. package/src/components/skeleton/skeleton.stories.tsx +178 -0
  258. package/src/components/skeleton/skeleton.tsx +14 -0
  259. package/src/components/table/data-table.tsx +254 -0
  260. package/src/components/table/index.ts +5 -0
  261. package/src/components/table/table-column-header.tsx +141 -0
  262. package/src/components/table/table-pagination.tsx +161 -0
  263. package/src/components/table/table.stories.columns.tsx +198 -0
  264. package/src/components/table/table.stories.components.tsx +104 -0
  265. package/src/components/table/table.stories.data.ts +117 -0
  266. package/src/components/table/table.stories.tsx +256 -0
  267. package/src/components/table/table.tsx +95 -0
  268. package/src/index.ts +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/search/search.stories.tsx"],"sourcesContent":["import type {Meta, StoryObj} from '@storybook/react';\nimport {useState} from 'react';\nimport {Icon} from '../icon';\nimport {\n Search,\n SearchContent,\n SearchEmpty,\n SearchFooter,\n SearchGroup,\n SearchInline,\n SearchInput,\n SearchItem,\n SearchList,\n SearchSeparator,\n SearchTrigger,\n} from './index';\n\nconst meta: Meta = {\n title: 'Components/Search',\n tags: ['autodocs'],\n parameters: {\n docs: {\n description: {\n component:\n 'A search component with two types: inline (input-style) and modal (trigger + overlay). Supports primary/secondary variants, base/small sizes, and squared/rounded radius options.',\n },\n },\n },\n};\n\nexport default meta;\n\ntype Story = StoryObj;\n\nexport const Inline: Story = {\n render: () => {\n function InlineDemo() {\n const [value, setValue] = useState('');\n\n return (\n <div className=\"flex flex-col gap-16 max-w-400\">\n <SearchInline\n placeholder=\"Search...\"\n value={value}\n onChange={(e) => setValue(e.target.value)}\n onClear={() => setValue('')}\n />\n {value && (\n <p className=\"text-sm text-foreground-neutral-muted\">Searching for: \"{value}\"</p>\n )}\n </div>\n );\n }\n return <InlineDemo />;\n },\n};\n\nexport const InlineVariants: Story = {\n render: () => (\n <div className=\"flex flex-col gap-16\">\n <div className=\"flex flex-col gap-8\">\n <span className=\"text-xs text-foreground-neutral-muted\">Primary (default)</span>\n <div className=\"flex gap-8\">\n <SearchInline\n variant=\"primary\"\n radius=\"squared\"\n placeholder=\"Search...\"\n defaultValue=\"random\"\n className=\"w-200\"\n />\n <SearchInline\n variant=\"primary\"\n radius=\"rounded\"\n placeholder=\"Search...\"\n defaultValue=\"random\"\n className=\"w-200\"\n />\n </div>\n </div>\n <div className=\"flex flex-col gap-8\">\n <span className=\"text-xs text-foreground-neutral-muted\">Secondary</span>\n <div className=\"flex gap-8\">\n <SearchInline\n variant=\"secondary\"\n radius=\"squared\"\n placeholder=\"Search...\"\n defaultValue=\"random\"\n className=\"w-200\"\n />\n <SearchInline\n variant=\"secondary\"\n radius=\"rounded\"\n placeholder=\"Search...\"\n defaultValue=\"random\"\n className=\"w-200\"\n />\n </div>\n </div>\n </div>\n ),\n};\n\nexport const InlineSizes: Story = {\n render: () => (\n <div className=\"flex flex-col gap-16\">\n <div className=\"flex flex-col gap-8\">\n <span className=\"text-xs text-foreground-neutral-muted\">Base (32px)</span>\n <div className=\"flex gap-8\">\n <SearchInline\n size=\"base\"\n placeholder=\"Search...\"\n defaultValue=\"random\"\n className=\"w-200\"\n />\n </div>\n </div>\n <div className=\"flex flex-col gap-8\">\n <span className=\"text-xs text-foreground-neutral-muted\">Small (28px)</span>\n <div className=\"flex gap-8\">\n <SearchInline\n size=\"small\"\n placeholder=\"Search...\"\n defaultValue=\"random\"\n className=\"w-200\"\n />\n </div>\n </div>\n </div>\n ),\n};\n\nfunction ModalSearchDemo() {\n const [open, setOpen] = useState(false);\n\n return (\n <Search open={open} onOpenChange={setOpen} shortcutKey=\"meta+k\">\n <SearchTrigger placeholder=\"Find...\" className=\"w-full max-w-280\" />\n <SearchContent aria-describedby={undefined}>\n <SearchInput placeholder=\"Search for anything...\" />\n <SearchList>\n <SearchEmpty>No results found.</SearchEmpty>\n <SearchGroup heading=\"Recent\">\n <SearchItem\n icon={\n <Icon name=\"gitBranchLine\" className=\"size-16 text-foreground-neutral-subtle\" />\n }\n description=\"qr-attendance\"\n >\n feat/data-processing\n </SearchItem>\n <SearchItem\n icon={\n <Icon name=\"gitBranchLine\" className=\"size-16 text-foreground-neutral-subtle\" />\n }\n description=\"qr-attendance\"\n >\n feat/pagination-polling\n </SearchItem>\n </SearchGroup>\n <SearchSeparator />\n <SearchGroup heading=\"Team\">\n <SearchItem\n icon={<Icon name=\"rocketLine\" className=\"size-16 text-foreground-neutral-subtle\" />}\n description=\"Team\"\n >\n Deployments\n </SearchItem>\n <SearchItem\n icon={<Icon name=\"linksLine\" className=\"size-16 text-foreground-neutral-subtle\" />}\n description=\"Team\"\n >\n Integrations\n </SearchItem>\n </SearchGroup>\n </SearchList>\n <SearchFooter />\n </SearchContent>\n </Search>\n );\n}\n\nexport const Modal: Story = {\n render: () => <ModalSearchDemo />,\n};\n\nfunction TriggerPreview({\n variant,\n size,\n radius,\n className,\n}: {\n variant?: 'primary' | 'secondary';\n size?: 'base' | 'small';\n radius?: 'squared' | 'rounded';\n className?: string;\n}) {\n return (\n <Search>\n <SearchTrigger variant={variant} size={size} radius={radius} className={className} />\n </Search>\n );\n}\n\nexport const ModalTriggerVariants: Story = {\n render: () => (\n <div className=\"flex flex-col gap-16\">\n <div className=\"flex flex-col gap-8\">\n <span className=\"text-xs text-foreground-neutral-muted\">Primary (default)</span>\n <div className=\"flex gap-8\">\n <TriggerPreview variant=\"primary\" radius=\"squared\" className=\"w-200\" />\n <TriggerPreview variant=\"primary\" radius=\"rounded\" className=\"w-200\" />\n </div>\n </div>\n <div className=\"flex flex-col gap-8\">\n <span className=\"text-xs text-foreground-neutral-muted\">Secondary</span>\n <div className=\"flex gap-8\">\n <TriggerPreview variant=\"secondary\" radius=\"squared\" className=\"w-200\" />\n <TriggerPreview variant=\"secondary\" radius=\"rounded\" className=\"w-200\" />\n </div>\n </div>\n </div>\n ),\n};\n\nexport const ModalTriggerSizes: Story = {\n render: () => (\n <div className=\"flex flex-col gap-16\">\n <div className=\"flex flex-col gap-8\">\n <span className=\"text-xs text-foreground-neutral-muted\">Base (32px)</span>\n <div className=\"flex gap-8\">\n <TriggerPreview size=\"base\" variant=\"primary\" className=\"w-200\" />\n <TriggerPreview size=\"base\" variant=\"secondary\" className=\"w-200\" />\n </div>\n </div>\n <div className=\"flex flex-col gap-8\">\n <span className=\"text-xs text-foreground-neutral-muted\">Small (28px)</span>\n <div className=\"flex gap-8\">\n <TriggerPreview size=\"small\" variant=\"primary\" className=\"w-200\" />\n <TriggerPreview size=\"small\" variant=\"secondary\" className=\"w-200\" />\n </div>\n </div>\n </div>\n ),\n};\n\nexport const AllCombinations: Story = {\n render: () => (\n <div className=\"flex flex-col gap-24\">\n <div>\n <h3 className=\"text-sm font-medium text-foreground-neutral-base mb-12\">Inline Search</h3>\n <div className=\"grid grid-cols-4 gap-12\">\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">Primary / Squared / Base</span>\n <SearchInline\n variant=\"primary\"\n radius=\"squared\"\n size=\"base\"\n placeholder=\"Search...\"\n className=\"w-full\"\n />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">Primary / Squared / Small</span>\n <SearchInline\n variant=\"primary\"\n radius=\"squared\"\n size=\"small\"\n placeholder=\"Search...\"\n className=\"w-full\"\n />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">Primary / Rounded / Base</span>\n <SearchInline\n variant=\"primary\"\n radius=\"rounded\"\n size=\"base\"\n placeholder=\"Search...\"\n className=\"w-full\"\n />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">Primary / Rounded / Small</span>\n <SearchInline\n variant=\"primary\"\n radius=\"rounded\"\n size=\"small\"\n placeholder=\"Search...\"\n className=\"w-full\"\n />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">\n Secondary / Squared / Base\n </span>\n <SearchInline\n variant=\"secondary\"\n radius=\"squared\"\n size=\"base\"\n placeholder=\"Search...\"\n className=\"w-full\"\n />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">\n Secondary / Squared / Small\n </span>\n <SearchInline\n variant=\"secondary\"\n radius=\"squared\"\n size=\"small\"\n placeholder=\"Search...\"\n className=\"w-full\"\n />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">\n Secondary / Rounded / Base\n </span>\n <SearchInline\n variant=\"secondary\"\n radius=\"rounded\"\n size=\"base\"\n placeholder=\"Search...\"\n className=\"w-full\"\n />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">\n Secondary / Rounded / Small\n </span>\n <SearchInline\n variant=\"secondary\"\n radius=\"rounded\"\n size=\"small\"\n placeholder=\"Search...\"\n className=\"w-full\"\n />\n </div>\n </div>\n </div>\n\n <div>\n <h3 className=\"text-sm font-medium text-foreground-neutral-base mb-12\">\n Modal Search Triggers\n </h3>\n <div className=\"grid grid-cols-4 gap-12\">\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">Primary / Squared / Base</span>\n <TriggerPreview variant=\"primary\" radius=\"squared\" size=\"base\" className=\"w-full\" />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">Primary / Squared / Small</span>\n <TriggerPreview variant=\"primary\" radius=\"squared\" size=\"small\" className=\"w-full\" />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">Primary / Rounded / Base</span>\n <TriggerPreview variant=\"primary\" radius=\"rounded\" size=\"base\" className=\"w-full\" />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">Primary / Rounded / Small</span>\n <TriggerPreview variant=\"primary\" radius=\"rounded\" size=\"small\" className=\"w-full\" />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">\n Secondary / Squared / Base\n </span>\n <TriggerPreview variant=\"secondary\" radius=\"squared\" size=\"base\" className=\"w-full\" />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">\n Secondary / Squared / Small\n </span>\n <TriggerPreview variant=\"secondary\" radius=\"squared\" size=\"small\" className=\"w-full\" />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">\n Secondary / Rounded / Base\n </span>\n <TriggerPreview variant=\"secondary\" radius=\"rounded\" size=\"base\" className=\"w-full\" />\n </div>\n <div className=\"flex flex-col gap-4\">\n <span className=\"text-xs text-foreground-neutral-muted\">\n Secondary / Rounded / Small\n </span>\n <TriggerPreview variant=\"secondary\" radius=\"rounded\" size=\"small\" className=\"w-full\" />\n </div>\n </div>\n </div>\n </div>\n ),\n};\n"],"names":["useState","Icon","Search","SearchContent","SearchEmpty","SearchFooter","SearchGroup","SearchInline","SearchInput","SearchItem","SearchList","SearchSeparator","SearchTrigger","meta","title","tags","parameters","docs","description","component","Inline","render","InlineDemo","value","setValue","div","className","placeholder","onChange","e","target","onClear","p","InlineVariants","span","variant","radius","defaultValue","InlineSizes","size","ModalSearchDemo","open","setOpen","onOpenChange","shortcutKey","aria-describedby","undefined","heading","icon","name","Modal","TriggerPreview","ModalTriggerVariants","ModalTriggerSizes","AllCombinations","h3"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './select';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/select/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './select.js';
2
+
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/select/index.ts"],"sourcesContent":["export * from './select';\n"],"names":[],"mappings":"AAAA,cAAc,WAAW"}
@@ -0,0 +1,25 @@
1
+ import * as SelectPrimitive from '@radix-ui/react-select';
2
+ import { type VariantProps } from 'class-variance-authority';
3
+ import type { ComponentProps } from 'react';
4
+ import { type IconName } from '../icon';
5
+ declare function Select({ ...props }: ComponentProps<typeof SelectPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
6
+ declare function SelectGroup({ ...props }: ComponentProps<typeof SelectPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
7
+ declare function SelectValue({ ...props }: ComponentProps<typeof SelectPrimitive.Value>): import("react/jsx-runtime").JSX.Element;
8
+ declare const selectTriggerVariants: (props?: ({
9
+ variant?: "base" | "component" | null | undefined;
10
+ size?: "base" | "small" | null | undefined;
11
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
12
+ type SelectTriggerProps = ComponentProps<typeof SelectPrimitive.Trigger> & VariantProps<typeof selectTriggerVariants>;
13
+ declare function SelectTrigger({ className, variant, size, children, ...props }: SelectTriggerProps): import("react/jsx-runtime").JSX.Element;
14
+ declare function SelectScrollUpButton({ className, ...props }: ComponentProps<typeof SelectPrimitive.ScrollUpButton>): import("react/jsx-runtime").JSX.Element;
15
+ declare function SelectScrollDownButton({ className, ...props }: ComponentProps<typeof SelectPrimitive.ScrollDownButton>): import("react/jsx-runtime").JSX.Element;
16
+ declare function SelectContent({ className, children, position, sideOffset, align, ...props }: ComponentProps<typeof SelectPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
17
+ declare function SelectLabel({ className, ...props }: ComponentProps<typeof SelectPrimitive.Label>): import("react/jsx-runtime").JSX.Element;
18
+ type SelectItemProps = ComponentProps<typeof SelectPrimitive.Item> & {
19
+ icon?: IconName;
20
+ };
21
+ declare function SelectItem({ className, children, icon, ...props }: SelectItemProps): import("react/jsx-runtime").JSX.Element;
22
+ declare function SelectSeparator({ className, ...props }: ComponentProps<typeof SelectPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
23
+ export { Select, SelectGroup, SelectValue, SelectTrigger, SelectContent, SelectLabel, SelectItem, SelectSeparator, SelectScrollUpButton, SelectScrollDownButton, selectTriggerVariants, };
24
+ export type { SelectTriggerProps, SelectItemProps };
25
+ //# sourceMappingURL=select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../src/components/select/select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAM,KAAK,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,OAAO,CAAC;AAE1C,OAAO,EAAO,KAAK,QAAQ,EAAC,MAAM,SAAS,CAAC;AAE5C,iBAAS,MAAM,CAAC,EAAC,GAAG,KAAK,EAAC,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,2CAEtE;AAED,iBAAS,WAAW,CAAC,EAAC,GAAG,KAAK,EAAC,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAE5E;AAED,iBAAS,WAAW,CAAC,EAAC,GAAG,KAAK,EAAC,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAE5E;AAED,QAAA,MAAM,qBAAqB;;;8EA2B1B,CAAC;AAEF,KAAK,kBAAkB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GACtE,YAAY,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE7C,iBAAS,aAAa,CAAC,EAAC,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAC,EAAE,kBAAkB,2CAaxF;AAED,iBAAS,oBAAoB,CAAC,EAC5B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,cAAc,CAAC,2CAUvD;AAED,iBAAS,sBAAsB,CAAC,EAC9B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,gBAAgB,CAAC,2CAUzD;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,QAAmB,EACnB,UAAc,EACd,KAAgB,EAChB,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAqChD;AAED,iBAAS,WAAW,CAAC,EAAC,SAAS,EAAE,GAAG,KAAK,EAAC,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAWvF;AAED,KAAK,eAAe,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,GAAG;IACnE,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB,CAAC;AAEF,iBAAS,UAAU,CAAC,EAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,EAAC,EAAE,eAAe,2CA6BzE;AAED,iBAAS,eAAe,CAAC,EAAC,SAAS,EAAE,GAAG,KAAK,EAAC,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,SAAS,CAAC,2CAc/F;AAED,OAAO,EACL,MAAM,EACN,WAAW,EACX,WAAW,EACX,aAAa,EACb,aAAa,EACb,WAAW,EACX,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,GACtB,CAAC;AAEF,YAAY,EAAC,kBAAkB,EAAE,eAAe,EAAC,CAAC"}
@@ -0,0 +1,153 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import * as SelectPrimitive from '@radix-ui/react-select';
3
+ import { cva } from 'class-variance-authority';
4
+ import { cn } from '../../utils/cn.js';
5
+ import { Icon } from '../icon/index.js';
6
+ function Select({ ...props }) {
7
+ return /*#__PURE__*/ _jsx(SelectPrimitive.Root, {
8
+ "data-slot": "select",
9
+ ...props
10
+ });
11
+ }
12
+ function SelectGroup({ ...props }) {
13
+ return /*#__PURE__*/ _jsx(SelectPrimitive.Group, {
14
+ "data-slot": "select-group",
15
+ ...props
16
+ });
17
+ }
18
+ function SelectValue({ ...props }) {
19
+ return /*#__PURE__*/ _jsx(SelectPrimitive.Value, {
20
+ "data-slot": "select-value",
21
+ ...props
22
+ });
23
+ }
24
+ const selectTriggerVariants = cva([
25
+ 'flex items-center justify-between gap-8',
26
+ 'w-full rounded-6 px-8 text-sm leading-20',
27
+ 'bg-background-field-base text-foreground-neutral-subtle',
28
+ 'shadow-button-neutral transition-[color,box-shadow] outline-none',
29
+ 'hover:bg-background-field-hover',
30
+ 'focus-visible:shadow-border-interactive-with-active',
31
+ 'disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-background-neutral-disabled disabled:shadow-none disabled:text-foreground-neutral-disabled',
32
+ 'data-[placeholder]:text-foreground-neutral-muted'
33
+ ], {
34
+ variants: {
35
+ variant: {
36
+ base: 'bg-background-field-base',
37
+ component: 'bg-background-field-component'
38
+ },
39
+ size: {
40
+ small: 'h-28 py-4',
41
+ base: 'h-32 py-6'
42
+ }
43
+ },
44
+ defaultVariants: {
45
+ variant: 'base',
46
+ size: 'base'
47
+ }
48
+ });
49
+ function SelectTrigger({ className, variant, size, children, ...props }) {
50
+ return /*#__PURE__*/ _jsxs(SelectPrimitive.Trigger, {
51
+ "data-slot": "select-trigger",
52
+ className: cn(selectTriggerVariants({
53
+ variant,
54
+ size
55
+ }), className),
56
+ ...props,
57
+ children: [
58
+ children,
59
+ /*#__PURE__*/ _jsx(SelectPrimitive.Icon, {
60
+ asChild: true,
61
+ children: /*#__PURE__*/ _jsx(Icon, {
62
+ name: "expandUpDownLine",
63
+ className: "size-16 text-foreground-neutral-muted shrink-0"
64
+ })
65
+ })
66
+ ]
67
+ });
68
+ }
69
+ function SelectScrollUpButton({ className, ...props }) {
70
+ return /*#__PURE__*/ _jsx(SelectPrimitive.ScrollUpButton, {
71
+ "data-slot": "select-scroll-up-button",
72
+ className: cn('flex cursor-default items-center justify-center py-4', className),
73
+ ...props,
74
+ children: /*#__PURE__*/ _jsx(Icon, {
75
+ name: "arrowUpSLine",
76
+ className: "size-16 text-foreground-neutral-muted"
77
+ })
78
+ });
79
+ }
80
+ function SelectScrollDownButton({ className, ...props }) {
81
+ return /*#__PURE__*/ _jsx(SelectPrimitive.ScrollDownButton, {
82
+ "data-slot": "select-scroll-down-button",
83
+ className: cn('flex cursor-default items-center justify-center py-4', className),
84
+ ...props,
85
+ children: /*#__PURE__*/ _jsx(Icon, {
86
+ name: "arrowDownSLine",
87
+ className: "size-16 text-foreground-neutral-muted"
88
+ })
89
+ });
90
+ }
91
+ function SelectContent({ className, children, position = 'popper', sideOffset = 4, align = 'center', ...props }) {
92
+ return /*#__PURE__*/ _jsx(SelectPrimitive.Portal, {
93
+ children: /*#__PURE__*/ _jsxs(SelectPrimitive.Content, {
94
+ "data-slot": "select-content",
95
+ className: cn('relative z-50 max-h-300 min-w-180 overflow-hidden rounded-10 p-4', 'bg-background-neutral-overlay shadow-tooltip', 'data-[state=open]:animate-in data-[state=closed]:animate-out', 'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0', 'data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95', 'data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2', 'data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2', position === 'popper' && 'data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1', className),
96
+ position: position,
97
+ sideOffset: sideOffset,
98
+ align: align,
99
+ ...props,
100
+ children: [
101
+ /*#__PURE__*/ _jsx(SelectScrollUpButton, {}),
102
+ /*#__PURE__*/ _jsx(SelectPrimitive.Viewport, {
103
+ "data-slot": "select-viewport",
104
+ className: cn('p-0', position === 'popper' && 'h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]'),
105
+ children: children
106
+ }),
107
+ /*#__PURE__*/ _jsx(SelectScrollDownButton, {})
108
+ ]
109
+ })
110
+ });
111
+ }
112
+ function SelectLabel({ className, ...props }) {
113
+ return /*#__PURE__*/ _jsx(SelectPrimitive.Label, {
114
+ "data-slot": "select-label",
115
+ className: cn('px-8 py-4 text-xs leading-20 text-foreground-neutral-subtle select-none', className),
116
+ ...props
117
+ });
118
+ }
119
+ function SelectItem({ className, children, icon, ...props }) {
120
+ return /*#__PURE__*/ _jsxs(SelectPrimitive.Item, {
121
+ "data-slot": "select-item",
122
+ className: cn('relative flex cursor-pointer select-none items-center gap-8 rounded-6 py-6 pl-32 pr-8', 'text-sm leading-20 text-foreground-neutral-subtle outline-none transition-colors', 'focus:bg-background-components-hover', 'data-disabled:pointer-events-none data-disabled:text-foreground-neutral-disabled', 'data-[state=checked]:text-foreground-neutral-base', icon && 'pl-56', className),
123
+ ...props,
124
+ children: [
125
+ /*#__PURE__*/ _jsx("span", {
126
+ className: "absolute left-8 flex size-16 items-center justify-center",
127
+ children: /*#__PURE__*/ _jsx(SelectPrimitive.ItemIndicator, {
128
+ children: /*#__PURE__*/ _jsx(Icon, {
129
+ name: "check",
130
+ className: "size-14 text-foreground-neutral-base"
131
+ })
132
+ })
133
+ }),
134
+ icon && /*#__PURE__*/ _jsx(Icon, {
135
+ name: icon,
136
+ className: "size-16 shrink-0 text-foreground-neutral-subtle absolute left-32"
137
+ }),
138
+ /*#__PURE__*/ _jsx(SelectPrimitive.ItemText, {
139
+ children: children
140
+ })
141
+ ]
142
+ });
143
+ }
144
+ function SelectSeparator({ className, ...props }) {
145
+ return /*#__PURE__*/ _jsx(SelectPrimitive.Separator, {
146
+ "data-slot": "select-separator",
147
+ className: cn('relative -mx-4 my-4 h-px', 'bg-border-neutral-menu-top', 'after:absolute after:inset-x-0 after:top-px after:h-px', 'after:bg-border-neutral-menu-bottom', className),
148
+ ...props
149
+ });
150
+ }
151
+ export { Select, SelectGroup, SelectValue, SelectTrigger, SelectContent, SelectLabel, SelectItem, SelectSeparator, SelectScrollUpButton, SelectScrollDownButton, selectTriggerVariants };
152
+
153
+ //# sourceMappingURL=select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/select/select.tsx"],"sourcesContent":["import * as SelectPrimitive from '@radix-ui/react-select';\nimport {cva, type VariantProps} from 'class-variance-authority';\nimport type {ComponentProps} from 'react';\nimport {cn} from 'utils/cn';\nimport {Icon, type IconName} from '../icon';\n\nfunction Select({...props}: ComponentProps<typeof SelectPrimitive.Root>) {\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />;\n}\n\nfunction SelectGroup({...props}: ComponentProps<typeof SelectPrimitive.Group>) {\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />;\n}\n\nfunction SelectValue({...props}: ComponentProps<typeof SelectPrimitive.Value>) {\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />;\n}\n\nconst selectTriggerVariants = cva(\n [\n 'flex items-center justify-between gap-8',\n 'w-full rounded-6 px-8 text-sm leading-20',\n 'bg-background-field-base text-foreground-neutral-subtle',\n 'shadow-button-neutral transition-[color,box-shadow] outline-none',\n 'hover:bg-background-field-hover',\n 'focus-visible:shadow-border-interactive-with-active',\n 'disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-background-neutral-disabled disabled:shadow-none disabled:text-foreground-neutral-disabled',\n 'data-[placeholder]:text-foreground-neutral-muted',\n ],\n {\n variants: {\n variant: {\n base: 'bg-background-field-base',\n component: 'bg-background-field-component',\n },\n size: {\n small: 'h-28 py-4',\n base: 'h-32 py-6',\n },\n },\n defaultVariants: {\n variant: 'base',\n size: 'base',\n },\n },\n);\n\ntype SelectTriggerProps = ComponentProps<typeof SelectPrimitive.Trigger> &\n VariantProps<typeof selectTriggerVariants>;\n\nfunction SelectTrigger({className, variant, size, children, ...props}: SelectTriggerProps) {\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n className={cn(selectTriggerVariants({variant, size}), className)}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <Icon name=\"expandUpDownLine\" className=\"size-16 text-foreground-neutral-muted shrink-0\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n );\n}\n\nfunction SelectScrollUpButton({\n className,\n ...props\n}: ComponentProps<typeof SelectPrimitive.ScrollUpButton>) {\n return (\n <SelectPrimitive.ScrollUpButton\n data-slot=\"select-scroll-up-button\"\n className={cn('flex cursor-default items-center justify-center py-4', className)}\n {...props}\n >\n <Icon name=\"arrowUpSLine\" className=\"size-16 text-foreground-neutral-muted\" />\n </SelectPrimitive.ScrollUpButton>\n );\n}\n\nfunction SelectScrollDownButton({\n className,\n ...props\n}: ComponentProps<typeof SelectPrimitive.ScrollDownButton>) {\n return (\n <SelectPrimitive.ScrollDownButton\n data-slot=\"select-scroll-down-button\"\n className={cn('flex cursor-default items-center justify-center py-4', className)}\n {...props}\n >\n <Icon name=\"arrowDownSLine\" className=\"size-16 text-foreground-neutral-muted\" />\n </SelectPrimitive.ScrollDownButton>\n );\n}\n\nfunction SelectContent({\n className,\n children,\n position = 'popper',\n sideOffset = 4,\n align = 'center',\n ...props\n}: ComponentProps<typeof SelectPrimitive.Content>) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n className={cn(\n 'relative z-50 max-h-300 min-w-180 overflow-hidden rounded-10 p-4',\n 'bg-background-neutral-overlay shadow-tooltip',\n 'data-[state=open]:animate-in data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',\n 'data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95',\n 'data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n position === 'popper' &&\n 'data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1',\n className,\n )}\n position={position}\n sideOffset={sideOffset}\n align={align}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n data-slot=\"select-viewport\"\n className={cn(\n 'p-0',\n position === 'popper' &&\n 'h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]',\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n );\n}\n\nfunction SelectLabel({className, ...props}: ComponentProps<typeof SelectPrimitive.Label>) {\n return (\n <SelectPrimitive.Label\n data-slot=\"select-label\"\n className={cn(\n 'px-8 py-4 text-xs leading-20 text-foreground-neutral-subtle select-none',\n className,\n )}\n {...props}\n />\n );\n}\n\ntype SelectItemProps = ComponentProps<typeof SelectPrimitive.Item> & {\n icon?: IconName;\n};\n\nfunction SelectItem({className, children, icon, ...props}: SelectItemProps) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n 'relative flex cursor-pointer select-none items-center gap-8 rounded-6 py-6 pl-32 pr-8',\n 'text-sm leading-20 text-foreground-neutral-subtle outline-none transition-colors',\n 'focus:bg-background-components-hover',\n 'data-disabled:pointer-events-none data-disabled:text-foreground-neutral-disabled',\n 'data-[state=checked]:text-foreground-neutral-base',\n icon && 'pl-56',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-8 flex size-16 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <Icon name=\"check\" className=\"size-14 text-foreground-neutral-base\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n {icon && (\n <Icon\n name={icon}\n className=\"size-16 shrink-0 text-foreground-neutral-subtle absolute left-32\"\n />\n )}\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n );\n}\n\nfunction SelectSeparator({className, ...props}: ComponentProps<typeof SelectPrimitive.Separator>) {\n return (\n <SelectPrimitive.Separator\n data-slot=\"select-separator\"\n className={cn(\n 'relative -mx-4 my-4 h-px',\n 'bg-border-neutral-menu-top',\n 'after:absolute after:inset-x-0 after:top-px after:h-px',\n 'after:bg-border-neutral-menu-bottom',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Select,\n SelectGroup,\n SelectValue,\n SelectTrigger,\n SelectContent,\n SelectLabel,\n SelectItem,\n SelectSeparator,\n SelectScrollUpButton,\n SelectScrollDownButton,\n selectTriggerVariants,\n};\n\nexport type {SelectTriggerProps, SelectItemProps};\n"],"names":["SelectPrimitive","cva","cn","Icon","Select","props","Root","data-slot","SelectGroup","Group","SelectValue","Value","selectTriggerVariants","variants","variant","base","component","size","small","defaultVariants","SelectTrigger","className","children","Trigger","asChild","name","SelectScrollUpButton","ScrollUpButton","SelectScrollDownButton","ScrollDownButton","SelectContent","position","sideOffset","align","Portal","Content","Viewport","SelectLabel","Label","SelectItem","icon","Item","span","ItemIndicator","ItemText","SelectSeparator","Separator"],"mappings":"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"}