@agimon-ai/doompi-web-components 0.0.1-alpha.37 → 0.0.1-alpha.39

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 (339) hide show
  1. package/dist/index.cjs +1 -1
  2. package/dist/index.d.mts +2 -1
  3. package/dist/index.mjs +1 -1
  4. package/dist/src/components/Accordion.cjs +1 -1
  5. package/dist/src/components/Accordion.cjs.map +1 -1
  6. package/dist/src/components/Accordion.mjs +1 -1
  7. package/dist/src/components/Accordion.mjs.map +1 -1
  8. package/dist/src/components/AnsiText.cjs +3 -3
  9. package/dist/src/components/AnsiText.cjs.map +1 -1
  10. package/dist/src/components/AnsiText.mjs +3 -3
  11. package/dist/src/components/AnsiText.mjs.map +1 -1
  12. package/dist/src/components/Avatar.cjs +1 -1
  13. package/dist/src/components/Avatar.cjs.map +1 -1
  14. package/dist/src/components/Avatar.mjs +1 -1
  15. package/dist/src/components/Avatar.mjs.map +1 -1
  16. package/dist/src/components/Badge.cjs +1 -1
  17. package/dist/src/components/Badge.cjs.map +1 -1
  18. package/dist/src/components/Badge.mjs +1 -1
  19. package/dist/src/components/Badge.mjs.map +1 -1
  20. package/dist/src/components/Breadcrumb.cjs +1 -1
  21. package/dist/src/components/Breadcrumb.cjs.map +1 -1
  22. package/dist/src/components/Breadcrumb.mjs +1 -1
  23. package/dist/src/components/Breadcrumb.mjs.map +1 -1
  24. package/dist/src/components/Button.cjs +1 -1
  25. package/dist/src/components/Button.cjs.map +1 -1
  26. package/dist/src/components/Button.mjs +1 -1
  27. package/dist/src/components/Button.mjs.map +1 -1
  28. package/dist/src/components/Checkbox.cjs +1 -1
  29. package/dist/src/components/Checkbox.cjs.map +1 -1
  30. package/dist/src/components/Checkbox.mjs +1 -1
  31. package/dist/src/components/Checkbox.mjs.map +1 -1
  32. package/dist/src/components/CodeBlock.cjs +1 -1
  33. package/dist/src/components/CodeBlock.cjs.map +1 -1
  34. package/dist/src/components/CodeBlock.mjs +1 -1
  35. package/dist/src/components/CodeBlock.mjs.map +1 -1
  36. package/dist/src/components/CodeEditor.cjs +1 -1
  37. package/dist/src/components/CodeEditor.cjs.map +1 -1
  38. package/dist/src/components/CodeEditor.mjs +1 -1
  39. package/dist/src/components/CodeEditor.mjs.map +1 -1
  40. package/dist/src/components/CodeEditorView.cjs +1 -1
  41. package/dist/src/components/CodeEditorView.cjs.map +1 -1
  42. package/dist/src/components/CodeEditorView.mjs +1 -1
  43. package/dist/src/components/CodeEditorView.mjs.map +1 -1
  44. package/dist/src/components/Collapsible.cjs +1 -1
  45. package/dist/src/components/Collapsible.cjs.map +1 -1
  46. package/dist/src/components/Collapsible.mjs +1 -1
  47. package/dist/src/components/Collapsible.mjs.map +1 -1
  48. package/dist/src/components/Command.cjs +1 -1
  49. package/dist/src/components/Command.cjs.map +1 -1
  50. package/dist/src/components/Command.mjs +1 -1
  51. package/dist/src/components/Command.mjs.map +1 -1
  52. package/dist/src/components/CopyButton.cjs +1 -1
  53. package/dist/src/components/CopyButton.cjs.map +1 -1
  54. package/dist/src/components/CopyButton.mjs +1 -1
  55. package/dist/src/components/CopyButton.mjs.map +1 -1
  56. package/dist/src/components/Dialog.cjs +1 -1
  57. package/dist/src/components/Dialog.cjs.map +1 -1
  58. package/dist/src/components/Dialog.mjs +1 -1
  59. package/dist/src/components/Dialog.mjs.map +1 -1
  60. package/dist/src/components/Dot.cjs +1 -1
  61. package/dist/src/components/Dot.cjs.map +1 -1
  62. package/dist/src/components/Dot.mjs +1 -1
  63. package/dist/src/components/Dot.mjs.map +1 -1
  64. package/dist/src/components/Drawer.cjs +2 -0
  65. package/dist/src/components/Drawer.cjs.map +1 -0
  66. package/dist/src/components/Drawer.d.mts +17 -0
  67. package/dist/src/components/Drawer.d.mts.map +1 -0
  68. package/dist/src/components/Drawer.mjs +2 -0
  69. package/dist/src/components/Drawer.mjs.map +1 -0
  70. package/dist/src/components/DropdownMenu.cjs +1 -1
  71. package/dist/src/components/DropdownMenu.cjs.map +1 -1
  72. package/dist/src/components/DropdownMenu.mjs +1 -1
  73. package/dist/src/components/DropdownMenu.mjs.map +1 -1
  74. package/dist/src/components/EmptyState.cjs +1 -1
  75. package/dist/src/components/EmptyState.cjs.map +1 -1
  76. package/dist/src/components/EmptyState.mjs +1 -1
  77. package/dist/src/components/EmptyState.mjs.map +1 -1
  78. package/dist/src/components/HashlineLines.cjs +1 -1
  79. package/dist/src/components/HashlineLines.cjs.map +1 -1
  80. package/dist/src/components/HashlineLines.mjs +1 -1
  81. package/dist/src/components/HashlineLines.mjs.map +1 -1
  82. package/dist/src/components/Input.cjs +1 -1
  83. package/dist/src/components/Input.cjs.map +1 -1
  84. package/dist/src/components/Input.mjs +1 -1
  85. package/dist/src/components/Input.mjs.map +1 -1
  86. package/dist/src/components/Kbd.cjs +1 -1
  87. package/dist/src/components/Kbd.cjs.map +1 -1
  88. package/dist/src/components/Kbd.mjs +1 -1
  89. package/dist/src/components/Kbd.mjs.map +1 -1
  90. package/dist/src/components/Label.cjs +1 -1
  91. package/dist/src/components/Label.cjs.map +1 -1
  92. package/dist/src/components/Label.mjs +1 -1
  93. package/dist/src/components/Label.mjs.map +1 -1
  94. package/dist/src/components/Markdown.cjs +1 -1
  95. package/dist/src/components/Markdown.cjs.map +1 -1
  96. package/dist/src/components/Markdown.mjs +1 -1
  97. package/dist/src/components/Markdown.mjs.map +1 -1
  98. package/dist/src/components/MediaPreview.cjs +1 -1
  99. package/dist/src/components/MediaPreview.cjs.map +1 -1
  100. package/dist/src/components/MediaPreview.mjs +1 -1
  101. package/dist/src/components/MediaPreview.mjs.map +1 -1
  102. package/dist/src/components/MermaidDiagram.cjs +1 -1
  103. package/dist/src/components/MermaidDiagram.cjs.map +1 -1
  104. package/dist/src/components/MermaidDiagram.mjs +1 -1
  105. package/dist/src/components/MermaidDiagram.mjs.map +1 -1
  106. package/dist/src/components/MessageItem.cjs +1 -1
  107. package/dist/src/components/MessageItem.cjs.map +1 -1
  108. package/dist/src/components/MessageItem.mjs +1 -1
  109. package/dist/src/components/MessageItem.mjs.map +1 -1
  110. package/dist/src/components/MessageLines.cjs +1 -1
  111. package/dist/src/components/MessageLines.cjs.map +1 -1
  112. package/dist/src/components/MessageLines.mjs +1 -1
  113. package/dist/src/components/MessageLines.mjs.map +1 -1
  114. package/dist/src/components/OptionList.cjs +1 -1
  115. package/dist/src/components/OptionList.cjs.map +1 -1
  116. package/dist/src/components/OptionList.mjs +1 -1
  117. package/dist/src/components/OptionList.mjs.map +1 -1
  118. package/dist/src/components/Panel.cjs +1 -1
  119. package/dist/src/components/Panel.cjs.map +1 -1
  120. package/dist/src/components/Panel.mjs +1 -1
  121. package/dist/src/components/Panel.mjs.map +1 -1
  122. package/dist/src/components/PdfPreview.cjs +1 -1
  123. package/dist/src/components/PdfPreview.cjs.map +1 -1
  124. package/dist/src/components/PdfPreview.mjs +1 -1
  125. package/dist/src/components/PdfPreview.mjs.map +1 -1
  126. package/dist/src/components/Popover.cjs +1 -1
  127. package/dist/src/components/Popover.cjs.map +1 -1
  128. package/dist/src/components/Popover.mjs +1 -1
  129. package/dist/src/components/Popover.mjs.map +1 -1
  130. package/dist/src/components/Progress.cjs +1 -1
  131. package/dist/src/components/Progress.cjs.map +1 -1
  132. package/dist/src/components/Progress.mjs +1 -1
  133. package/dist/src/components/Progress.mjs.map +1 -1
  134. package/dist/src/components/RadioGroup.cjs +1 -1
  135. package/dist/src/components/RadioGroup.cjs.map +1 -1
  136. package/dist/src/components/RadioGroup.mjs +1 -1
  137. package/dist/src/components/RadioGroup.mjs.map +1 -1
  138. package/dist/src/components/ScrollArea.cjs +1 -1
  139. package/dist/src/components/ScrollArea.cjs.map +1 -1
  140. package/dist/src/components/ScrollArea.mjs +1 -1
  141. package/dist/src/components/ScrollArea.mjs.map +1 -1
  142. package/dist/src/components/SectionLabel.cjs +1 -1
  143. package/dist/src/components/SectionLabel.cjs.map +1 -1
  144. package/dist/src/components/SectionLabel.mjs +1 -1
  145. package/dist/src/components/SectionLabel.mjs.map +1 -1
  146. package/dist/src/components/Select.cjs +1 -1
  147. package/dist/src/components/Select.cjs.map +1 -1
  148. package/dist/src/components/Select.mjs +1 -1
  149. package/dist/src/components/Select.mjs.map +1 -1
  150. package/dist/src/components/Separator.cjs +1 -1
  151. package/dist/src/components/Separator.cjs.map +1 -1
  152. package/dist/src/components/Separator.mjs +1 -1
  153. package/dist/src/components/Separator.mjs.map +1 -1
  154. package/dist/src/components/Sheet.cjs +1 -1
  155. package/dist/src/components/Sheet.cjs.map +1 -1
  156. package/dist/src/components/Sheet.mjs +1 -1
  157. package/dist/src/components/Sheet.mjs.map +1 -1
  158. package/dist/src/components/Skeleton.cjs +1 -1
  159. package/dist/src/components/Skeleton.cjs.map +1 -1
  160. package/dist/src/components/Skeleton.mjs +1 -1
  161. package/dist/src/components/Skeleton.mjs.map +1 -1
  162. package/dist/src/components/Spinner.cjs +1 -1
  163. package/dist/src/components/Spinner.cjs.map +1 -1
  164. package/dist/src/components/Spinner.mjs +1 -1
  165. package/dist/src/components/Spinner.mjs.map +1 -1
  166. package/dist/src/components/StatusBadge.cjs +1 -1
  167. package/dist/src/components/StatusBadge.cjs.map +1 -1
  168. package/dist/src/components/StatusBadge.mjs +1 -1
  169. package/dist/src/components/StatusBadge.mjs.map +1 -1
  170. package/dist/src/components/StreamCursor.cjs +1 -1
  171. package/dist/src/components/StreamCursor.cjs.map +1 -1
  172. package/dist/src/components/StreamCursor.mjs +1 -1
  173. package/dist/src/components/StreamCursor.mjs.map +1 -1
  174. package/dist/src/components/Switch.cjs +1 -1
  175. package/dist/src/components/Switch.cjs.map +1 -1
  176. package/dist/src/components/Switch.mjs +1 -1
  177. package/dist/src/components/Switch.mjs.map +1 -1
  178. package/dist/src/components/SyntaxText.cjs +3 -3
  179. package/dist/src/components/SyntaxText.cjs.map +1 -1
  180. package/dist/src/components/SyntaxText.mjs +3 -3
  181. package/dist/src/components/SyntaxText.mjs.map +1 -1
  182. package/dist/src/components/Tabs.cjs +1 -1
  183. package/dist/src/components/Tabs.cjs.map +1 -1
  184. package/dist/src/components/Tabs.mjs +1 -1
  185. package/dist/src/components/Tabs.mjs.map +1 -1
  186. package/dist/src/components/TerminalView.cjs +1 -1
  187. package/dist/src/components/TerminalView.cjs.map +1 -1
  188. package/dist/src/components/TerminalView.mjs +1 -1
  189. package/dist/src/components/TerminalView.mjs.map +1 -1
  190. package/dist/src/components/Textarea.cjs +1 -1
  191. package/dist/src/components/Textarea.cjs.map +1 -1
  192. package/dist/src/components/Textarea.mjs +1 -1
  193. package/dist/src/components/Textarea.mjs.map +1 -1
  194. package/dist/src/components/Toast.cjs +1 -1
  195. package/dist/src/components/Toast.cjs.map +1 -1
  196. package/dist/src/components/Toast.mjs +1 -1
  197. package/dist/src/components/Toast.mjs.map +1 -1
  198. package/dist/src/components/ToolPathLink.cjs +1 -1
  199. package/dist/src/components/ToolPathLink.cjs.map +1 -1
  200. package/dist/src/components/ToolPathLink.mjs +1 -1
  201. package/dist/src/components/ToolPathLink.mjs.map +1 -1
  202. package/dist/src/components/Tooltip.cjs +1 -1
  203. package/dist/src/components/Tooltip.cjs.map +1 -1
  204. package/dist/src/components/Tooltip.mjs +1 -1
  205. package/dist/src/components/Tooltip.mjs.map +1 -1
  206. package/package.json +11 -11
  207. package/dist/components/Accordion.d.cts +0 -11
  208. package/dist/components/Accordion.d.cts.map +0 -1
  209. package/dist/components/AnsiText.d.cts +0 -16
  210. package/dist/components/AnsiText.d.cts.map +0 -1
  211. package/dist/components/Avatar.d.cts +0 -10
  212. package/dist/components/Avatar.d.cts.map +0 -1
  213. package/dist/components/Badge.d.cts +0 -17
  214. package/dist/components/Badge.d.cts.map +0 -1
  215. package/dist/components/Breadcrumb.d.cts +0 -36
  216. package/dist/components/Breadcrumb.d.cts.map +0 -1
  217. package/dist/components/Button.d.cts +0 -24
  218. package/dist/components/Button.d.cts.map +0 -1
  219. package/dist/components/Checkbox.d.cts +0 -8
  220. package/dist/components/Checkbox.d.cts.map +0 -1
  221. package/dist/components/CodeEditor.d.cts +0 -5
  222. package/dist/components/CodeEditor.d.cts.map +0 -1
  223. package/dist/components/Collapsible.d.cts +0 -10
  224. package/dist/components/Collapsible.d.cts.map +0 -1
  225. package/dist/components/Command.d.cts +0 -41
  226. package/dist/components/Command.d.cts.map +0 -1
  227. package/dist/components/Dialog.d.cts +0 -39
  228. package/dist/components/Dialog.d.cts.map +0 -1
  229. package/dist/components/Dot.d.cts +0 -15
  230. package/dist/components/Dot.d.cts.map +0 -1
  231. package/dist/components/DropdownMenu.d.cts +0 -34
  232. package/dist/components/DropdownMenu.d.cts.map +0 -1
  233. package/dist/components/EmptyState.d.cts +0 -17
  234. package/dist/components/EmptyState.d.cts.map +0 -1
  235. package/dist/components/HashlineLines.d.cts +0 -23
  236. package/dist/components/HashlineLines.d.cts.map +0 -1
  237. package/dist/components/Input.d.cts +0 -19
  238. package/dist/components/Input.d.cts.map +0 -1
  239. package/dist/components/Kbd.d.cts +0 -6
  240. package/dist/components/Kbd.d.cts.map +0 -1
  241. package/dist/components/Label.d.cts +0 -8
  242. package/dist/components/Label.d.cts.map +0 -1
  243. package/dist/components/Markdown.d.cts +0 -17
  244. package/dist/components/Markdown.d.cts.map +0 -1
  245. package/dist/components/MediaPreview.d.cts +0 -61
  246. package/dist/components/MediaPreview.d.cts.map +0 -1
  247. package/dist/components/MessageItem.d.cts +0 -102
  248. package/dist/components/MessageItem.d.cts.map +0 -1
  249. package/dist/components/MessageLines.d.cts +0 -23
  250. package/dist/components/MessageLines.d.cts.map +0 -1
  251. package/dist/components/OptionList.d.cts +0 -49
  252. package/dist/components/OptionList.d.cts.map +0 -1
  253. package/dist/components/Panel.d.cts +0 -14
  254. package/dist/components/Panel.d.cts.map +0 -1
  255. package/dist/components/PdfPreview.d.cts +0 -52
  256. package/dist/components/PdfPreview.d.cts.map +0 -1
  257. package/dist/components/Popover.d.cts +0 -19
  258. package/dist/components/Popover.d.cts.map +0 -1
  259. package/dist/components/Progress.d.cts +0 -8
  260. package/dist/components/Progress.d.cts.map +0 -1
  261. package/dist/components/RadioGroup.d.cts +0 -15
  262. package/dist/components/RadioGroup.d.cts.map +0 -1
  263. package/dist/components/ScrollArea.d.cts +0 -13
  264. package/dist/components/ScrollArea.d.cts.map +0 -1
  265. package/dist/components/SectionLabel.d.cts +0 -6
  266. package/dist/components/SectionLabel.d.cts.map +0 -1
  267. package/dist/components/Select.d.cts +0 -19
  268. package/dist/components/Select.d.cts.map +0 -1
  269. package/dist/components/Separator.d.cts +0 -13
  270. package/dist/components/Separator.d.cts.map +0 -1
  271. package/dist/components/Sheet.d.cts +0 -35
  272. package/dist/components/Sheet.d.cts.map +0 -1
  273. package/dist/components/Skeleton.d.cts +0 -10
  274. package/dist/components/Skeleton.d.cts.map +0 -1
  275. package/dist/components/Spinner.d.cts +0 -14
  276. package/dist/components/Spinner.d.cts.map +0 -1
  277. package/dist/components/StatusBadge.d.cts +0 -23
  278. package/dist/components/StatusBadge.d.cts.map +0 -1
  279. package/dist/components/StreamCursor.d.cts +0 -6
  280. package/dist/components/StreamCursor.d.cts.map +0 -1
  281. package/dist/components/Switch.d.cts +0 -8
  282. package/dist/components/Switch.d.cts.map +0 -1
  283. package/dist/components/SyntaxText.d.cts +0 -50
  284. package/dist/components/SyntaxText.d.cts.map +0 -1
  285. package/dist/components/Tabs.d.cts +0 -36
  286. package/dist/components/Tabs.d.cts.map +0 -1
  287. package/dist/components/TerminalView.d.cts +0 -31
  288. package/dist/components/TerminalView.d.cts.map +0 -1
  289. package/dist/components/Textarea.d.cts +0 -9
  290. package/dist/components/Textarea.d.cts.map +0 -1
  291. package/dist/components/Toast.d.cts +0 -24
  292. package/dist/components/Toast.d.cts.map +0 -1
  293. package/dist/components/ToolPathLink.d.cts +0 -22
  294. package/dist/components/ToolPathLink.d.cts.map +0 -1
  295. package/dist/components/Tooltip.d.cts +0 -11
  296. package/dist/components/Tooltip.d.cts.map +0 -1
  297. package/dist/icons/icons.d.cts +0 -2
  298. package/dist/index.d.cts +0 -59
  299. package/dist/lib/ansiSpans.d.cts +0 -42
  300. package/dist/lib/ansiSpans.d.cts.map +0 -1
  301. package/dist/lib/cn.d.cts +0 -6
  302. package/dist/lib/cn.d.cts.map +0 -1
  303. package/dist/lib/collapse.d.cts +0 -14
  304. package/dist/lib/collapse.d.cts.map +0 -1
  305. package/dist/lib/editorLanguage.d.cts +0 -21
  306. package/dist/lib/editorLanguage.d.cts.map +0 -1
  307. package/dist/lib/editorTheme.d.cts +0 -76
  308. package/dist/lib/editorTheme.d.cts.map +0 -1
  309. package/dist/lib/hashlineHighlight.d.cts +0 -30
  310. package/dist/lib/hashlineHighlight.d.cts.map +0 -1
  311. package/dist/lib/hashlineView.d.cts +0 -60
  312. package/dist/lib/hashlineView.d.cts.map +0 -1
  313. package/dist/lib/media.d.cts +0 -11
  314. package/dist/lib/media.d.cts.map +0 -1
  315. package/dist/lib/optionList.d.cts +0 -21
  316. package/dist/lib/optionList.d.cts.map +0 -1
  317. package/dist/lib/syntaxHighlight.d.cts +0 -54
  318. package/dist/lib/syntaxHighlight.d.cts.map +0 -1
  319. package/dist/lib/tone.d.cts +0 -25
  320. package/dist/lib/tone.d.cts.map +0 -1
  321. package/dist/theme/apply.d.cts +0 -25
  322. package/dist/theme/apply.d.cts.map +0 -1
  323. package/dist/theme/builtinThemes.d.cts +0 -11
  324. package/dist/theme/builtinThemes.d.cts.map +0 -1
  325. package/dist/theme/derive.d.cts +0 -14
  326. package/dist/theme/derive.d.cts.map +0 -1
  327. package/dist/theme/parse.d.cts +0 -10
  328. package/dist/theme/parse.d.cts.map +0 -1
  329. package/dist/theme/piTheme.d.cts +0 -19
  330. package/dist/theme/piTheme.d.cts.map +0 -1
  331. package/dist/theme/preference.d.cts +0 -15
  332. package/dist/theme/preference.d.cts.map +0 -1
  333. package/dist/theme.d.cts +0 -8
  334. package/dist/types/editor.d.cts +0 -78
  335. package/dist/types/editor.d.cts.map +0 -1
  336. package/dist/types/theme.d.cts +0 -38
  337. package/dist/types/theme.d.cts.map +0 -1
  338. package/dist/types/tone.d.cts +0 -28
  339. package/dist/types/tone.d.cts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.cjs","names":["PopoverPrimitive","cn"],"sources":["../../../src/components/Popover.tsx"],"sourcesContent":["import { Popover as PopoverPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * shadcn's Popover on Radix: anchored to its trigger, closes on outside\n * click and Escape, and the trigger toggles it rather than reopening it.\n */\nexport function Popover(props: ComponentProps<typeof PopoverPrimitive.Root>) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />;\n}\n\nexport function PopoverTrigger(props: ComponentProps<typeof PopoverPrimitive.Trigger>) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />;\n}\n\nexport function PopoverAnchor(props: ComponentProps<typeof PopoverPrimitive.Anchor>) {\n return <PopoverPrimitive.Anchor data-slot=\"popover-anchor\" {...props} />;\n}\n\n/** Dismisses the popover from inside it: the row that acts and closes in one click. */\nexport function PopoverClose(props: ComponentProps<typeof PopoverPrimitive.Close>) {\n return <PopoverPrimitive.Close data-slot=\"popover-close\" {...props} />;\n}\n\nexport function PopoverContent({\n className,\n align = 'start',\n sideOffset = 6,\n ...props\n}: ComponentProps<typeof PopoverPrimitive.Content>) {\n return (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n data-slot=\"popover-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden rounded-lg border border-doom-border bg-doom-panel font-mono shadow-2xl outline-none data-[state=open]:animate-doom-rise',\n className,\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n );\n}\n\n/** The strip a popover's title sits in; tone colours the title. */\nexport function PopoverHeader({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"popover-header\"\n className={cn(\n 'flex h-[34px] shrink-0 items-center justify-between gap-3 border-b border-doom-border-soft bg-doom-deep px-3',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport function PopoverFooter({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"popover-footer\"\n className={cn(\n 'flex min-h-[30px] shrink-0 items-center justify-between gap-3 border-t border-doom-border-soft bg-doom-deep px-3 text-2xs text-doom-faint',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"0FASA,SAAgB,EAAQ,EAAqD,CAC3E,OAAO,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAiB,KAAlB,CAAuB,YAAU,UAAU,GAAI,CAAQ,CAAA,CAChE,CAEA,SAAgB,EAAe,EAAwD,CACrF,OAAO,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAiB,QAAlB,CAA0B,YAAU,kBAAkB,GAAI,CAAQ,CAAA,CAC3E,CAEA,SAAgB,EAAc,EAAuD,CACnF,OAAO,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAiB,OAAlB,CAAyB,YAAU,iBAAiB,GAAI,CAAQ,CAAA,CACzE,CAGA,SAAgB,EAAa,EAAsD,CACjF,OAAO,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAiB,MAAlB,CAAwB,YAAU,gBAAgB,GAAI,CAAQ,CAAA,CACvE,CAEA,SAAgB,EAAe,CAC7B,YACA,QAAQ,QACR,aAAa,EACb,GAAG,GAC+C,CAClD,OACE,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAiB,OAAlB,CAAA,UACE,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAiB,QAAlB,CACE,YAAU,kBACH,QACK,aACZ,UAAWC,EAAAA,GACT,uLACA,CACF,EACA,GAAI,CACL,CAAA,CACsB,CAAA,CAE7B,CAGA,SAAgB,EAAc,CAAE,YAAW,GAAG,GAAgC,CAC5E,OACE,EAAA,EAAA,IAAA,CAAC,MAAD,CACE,YAAU,iBACV,UAAWA,EAAAA,GACT,+GACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAc,CAAE,YAAW,GAAG,GAAgC,CAC5E,OACE,EAAA,EAAA,IAAA,CAAC,MAAD,CACE,YAAU,iBACV,UAAWA,EAAAA,GACT,4IACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"Popover.cjs","names":["PopoverPrimitive","cn"],"sources":["../../../src/components/Popover.tsx"],"sourcesContent":["import { Popover as PopoverPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * shadcn's Popover on Radix: anchored to its trigger, closes on outside\n * click and Escape, and the trigger toggles it rather than reopening it.\n */\nexport function Popover(props: ComponentProps<typeof PopoverPrimitive.Root>) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />;\n}\n\nexport function PopoverTrigger(props: ComponentProps<typeof PopoverPrimitive.Trigger>) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />;\n}\n\nexport function PopoverAnchor(props: ComponentProps<typeof PopoverPrimitive.Anchor>) {\n return <PopoverPrimitive.Anchor data-slot=\"popover-anchor\" {...props} />;\n}\n\n/** Dismisses the popover from inside it: the row that acts and closes in one click. */\nexport function PopoverClose(props: ComponentProps<typeof PopoverPrimitive.Close>) {\n return <PopoverPrimitive.Close data-slot=\"popover-close\" {...props} />;\n}\n\nexport function PopoverContent({\n className,\n align = 'start',\n sideOffset = 6,\n ...props\n}: ComponentProps<typeof PopoverPrimitive.Content>) {\n return (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n data-slot=\"popover-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden rounded-lg border border-doom-border bg-doom-panel font-mono shadow-2xl outline-none data-[state=open]:animate-doom-rise',\n className,\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n );\n}\n\n/** The strip a popover's title sits in; tone colours the title. */\nexport function PopoverHeader({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"popover-header\"\n className={cn(\n 'flex h-[34px] shrink-0 items-center justify-between gap-3 border-b border-doom-border-soft bg-doom-deep px-3',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport function PopoverFooter({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"popover-footer\"\n className={cn(\n 'flex min-h-[30px] shrink-0 items-center justify-between gap-3 border-t border-doom-border-soft bg-doom-deep px-3 text-2xs text-doom-faint',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"0FASA,SAAgB,EAAQ,EAAqD,CAC3E,MAAO,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAiB,KAAlB,CAAuB,YAAU,UAAU,GAAI,CAAQ,CAAA,CAChE,CAEA,SAAgB,EAAe,EAAwD,CACrF,MAAO,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAiB,QAAlB,CAA0B,YAAU,kBAAkB,GAAI,CAAQ,CAAA,CAC3E,CAEA,SAAgB,EAAc,EAAuD,CACnF,MAAO,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAiB,OAAlB,CAAyB,YAAU,iBAAiB,GAAI,CAAQ,CAAA,CACzE,CAGA,SAAgB,EAAa,EAAsD,CACjF,MAAO,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAiB,MAAlB,CAAwB,YAAU,gBAAgB,GAAI,CAAQ,CAAA,CACvE,CAEA,SAAgB,EAAe,CAC7B,YACA,QAAQ,QACR,aAAa,EACb,GAAG,GAC+C,CAClD,MACE,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAiB,OAAlB,CAAA,SACE,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAiB,QAAlB,CACE,YAAU,kBACH,QACK,aACZ,UAAWC,EAAAA,GACT,uLACA,CACF,EACA,GAAI,CACL,CAAA,CACsB,CAAA,CAE7B,CAGA,SAAgB,EAAc,CAAE,YAAW,GAAG,GAAgC,CAC5E,MACE,iBAAA,EAAA,EAAA,IAAA,CAAC,MAAD,CACE,YAAU,iBACV,UAAWA,EAAAA,GACT,+GACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAc,CAAE,YAAW,GAAG,GAAgC,CAC5E,MACE,iBAAA,EAAA,EAAA,IAAA,CAAC,MAAD,CACE,YAAU,iBACV,UAAWA,EAAAA,GACT,4IACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- import{cn as e}from"../lib/cn.mjs";import{Popover as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";function r(e){return n(t.Root,{"data-slot":`popover`,...e})}function i(e){return n(t.Trigger,{"data-slot":`popover-trigger`,...e})}function a(e){return n(t.Anchor,{"data-slot":`popover-anchor`,...e})}function o(e){return n(t.Close,{"data-slot":`popover-close`,...e})}function s({className:r,align:i=`start`,sideOffset:a=6,...o}){return n(t.Portal,{children:n(t.Content,{"data-slot":`popover-content`,align:i,sideOffset:a,className:e(`z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden rounded-lg border border-doom-border bg-doom-panel font-mono shadow-2xl outline-none data-[state=open]:animate-doom-rise`,r),...o})})}function c({className:t,...r}){return n(`div`,{"data-slot":`popover-header`,className:e(`flex h-[34px] shrink-0 items-center justify-between gap-3 border-b border-doom-border-soft bg-doom-deep px-3`,t),...r})}function l({className:t,...r}){return n(`div`,{"data-slot":`popover-footer`,className:e(`flex min-h-[30px] shrink-0 items-center justify-between gap-3 border-t border-doom-border-soft bg-doom-deep px-3 text-2xs text-doom-faint`,t),...r})}export{r as Popover,a as PopoverAnchor,o as PopoverClose,s as PopoverContent,l as PopoverFooter,c as PopoverHeader,i as PopoverTrigger};
1
+ import{cn as e}from"../lib/cn.mjs";import{Popover as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";function r(e){return/* @__PURE__ */ n(t.Root,{"data-slot":`popover`,...e})}function i(e){return/* @__PURE__ */ n(t.Trigger,{"data-slot":`popover-trigger`,...e})}function a(e){return/* @__PURE__ */ n(t.Anchor,{"data-slot":`popover-anchor`,...e})}function o(e){return/* @__PURE__ */ n(t.Close,{"data-slot":`popover-close`,...e})}function s({className:r,align:i=`start`,sideOffset:a=6,...o}){return/* @__PURE__ */ n(t.Portal,{children:/* @__PURE__ */ n(t.Content,{"data-slot":`popover-content`,align:i,sideOffset:a,className:e(`z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden rounded-lg border border-doom-border bg-doom-panel font-mono shadow-2xl outline-none data-[state=open]:animate-doom-rise`,r),...o})})}function c({className:t,...r}){return/* @__PURE__ */ n(`div`,{"data-slot":`popover-header`,className:e(`flex h-[34px] shrink-0 items-center justify-between gap-3 border-b border-doom-border-soft bg-doom-deep px-3`,t),...r})}function l({className:t,...r}){return/* @__PURE__ */ n(`div`,{"data-slot":`popover-footer`,className:e(`flex min-h-[30px] shrink-0 items-center justify-between gap-3 border-t border-doom-border-soft bg-doom-deep px-3 text-2xs text-doom-faint`,t),...r})}export{r as Popover,a as PopoverAnchor,o as PopoverClose,s as PopoverContent,l as PopoverFooter,c as PopoverHeader,i as PopoverTrigger};
2
2
  //# sourceMappingURL=Popover.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.mjs","names":["Popover","PopoverPrimitive"],"sources":["../../../src/components/Popover.tsx"],"sourcesContent":["import { Popover as PopoverPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * shadcn's Popover on Radix: anchored to its trigger, closes on outside\n * click and Escape, and the trigger toggles it rather than reopening it.\n */\nexport function Popover(props: ComponentProps<typeof PopoverPrimitive.Root>) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />;\n}\n\nexport function PopoverTrigger(props: ComponentProps<typeof PopoverPrimitive.Trigger>) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />;\n}\n\nexport function PopoverAnchor(props: ComponentProps<typeof PopoverPrimitive.Anchor>) {\n return <PopoverPrimitive.Anchor data-slot=\"popover-anchor\" {...props} />;\n}\n\n/** Dismisses the popover from inside it: the row that acts and closes in one click. */\nexport function PopoverClose(props: ComponentProps<typeof PopoverPrimitive.Close>) {\n return <PopoverPrimitive.Close data-slot=\"popover-close\" {...props} />;\n}\n\nexport function PopoverContent({\n className,\n align = 'start',\n sideOffset = 6,\n ...props\n}: ComponentProps<typeof PopoverPrimitive.Content>) {\n return (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n data-slot=\"popover-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden rounded-lg border border-doom-border bg-doom-panel font-mono shadow-2xl outline-none data-[state=open]:animate-doom-rise',\n className,\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n );\n}\n\n/** The strip a popover's title sits in; tone colours the title. */\nexport function PopoverHeader({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"popover-header\"\n className={cn(\n 'flex h-[34px] shrink-0 items-center justify-between gap-3 border-b border-doom-border-soft bg-doom-deep px-3',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport function PopoverFooter({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"popover-footer\"\n className={cn(\n 'flex min-h-[30px] shrink-0 items-center justify-between gap-3 border-t border-doom-border-soft bg-doom-deep px-3 text-2xs text-doom-faint',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"8GASA,SAAgBA,EAAQ,EAAqD,CAC3E,OAAO,EAACC,EAAiB,KAAlB,CAAuB,YAAU,UAAU,GAAI,CAAQ,CAAA,CAChE,CAEA,SAAgB,EAAe,EAAwD,CACrF,OAAO,EAACA,EAAiB,QAAlB,CAA0B,YAAU,kBAAkB,GAAI,CAAQ,CAAA,CAC3E,CAEA,SAAgB,EAAc,EAAuD,CACnF,OAAO,EAACA,EAAiB,OAAlB,CAAyB,YAAU,iBAAiB,GAAI,CAAQ,CAAA,CACzE,CAGA,SAAgB,EAAa,EAAsD,CACjF,OAAO,EAACA,EAAiB,MAAlB,CAAwB,YAAU,gBAAgB,GAAI,CAAQ,CAAA,CACvE,CAEA,SAAgB,EAAe,CAC7B,YACA,QAAQ,QACR,aAAa,EACb,GAAG,GAC+C,CAClD,OACE,EAACA,EAAiB,OAAlB,CAAA,SACE,EAACA,EAAiB,QAAlB,CACE,YAAU,kBACH,QACK,aACZ,UAAW,EACT,uLACA,CACF,EACA,GAAI,CACL,CAAA,CACsB,CAAA,CAE7B,CAGA,SAAgB,EAAc,CAAE,YAAW,GAAG,GAAgC,CAC5E,OACE,EAAC,MAAD,CACE,YAAU,iBACV,UAAW,EACT,+GACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAc,CAAE,YAAW,GAAG,GAAgC,CAC5E,OACE,EAAC,MAAD,CACE,YAAU,iBACV,UAAW,EACT,4IACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"Popover.mjs","names":["Popover","PopoverPrimitive"],"sources":["../../../src/components/Popover.tsx"],"sourcesContent":["import { Popover as PopoverPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * shadcn's Popover on Radix: anchored to its trigger, closes on outside\n * click and Escape, and the trigger toggles it rather than reopening it.\n */\nexport function Popover(props: ComponentProps<typeof PopoverPrimitive.Root>) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />;\n}\n\nexport function PopoverTrigger(props: ComponentProps<typeof PopoverPrimitive.Trigger>) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />;\n}\n\nexport function PopoverAnchor(props: ComponentProps<typeof PopoverPrimitive.Anchor>) {\n return <PopoverPrimitive.Anchor data-slot=\"popover-anchor\" {...props} />;\n}\n\n/** Dismisses the popover from inside it: the row that acts and closes in one click. */\nexport function PopoverClose(props: ComponentProps<typeof PopoverPrimitive.Close>) {\n return <PopoverPrimitive.Close data-slot=\"popover-close\" {...props} />;\n}\n\nexport function PopoverContent({\n className,\n align = 'start',\n sideOffset = 6,\n ...props\n}: ComponentProps<typeof PopoverPrimitive.Content>) {\n return (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n data-slot=\"popover-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden rounded-lg border border-doom-border bg-doom-panel font-mono shadow-2xl outline-none data-[state=open]:animate-doom-rise',\n className,\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n );\n}\n\n/** The strip a popover's title sits in; tone colours the title. */\nexport function PopoverHeader({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"popover-header\"\n className={cn(\n 'flex h-[34px] shrink-0 items-center justify-between gap-3 border-b border-doom-border-soft bg-doom-deep px-3',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport function PopoverFooter({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"popover-footer\"\n className={cn(\n 'flex min-h-[30px] shrink-0 items-center justify-between gap-3 border-t border-doom-border-soft bg-doom-deep px-3 text-2xs text-doom-faint',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"8GASA,SAAgBA,EAAQ,EAAqD,CAC3E,MAAO,kBAACC,EAAiB,KAAlB,CAAuB,YAAU,UAAU,GAAI,CAAQ,CAAA,CAChE,CAEA,SAAgB,EAAe,EAAwD,CACrF,MAAO,kBAACA,EAAiB,QAAlB,CAA0B,YAAU,kBAAkB,GAAI,CAAQ,CAAA,CAC3E,CAEA,SAAgB,EAAc,EAAuD,CACnF,MAAO,kBAACA,EAAiB,OAAlB,CAAyB,YAAU,iBAAiB,GAAI,CAAQ,CAAA,CACzE,CAGA,SAAgB,EAAa,EAAsD,CACjF,MAAO,kBAACA,EAAiB,MAAlB,CAAwB,YAAU,gBAAgB,GAAI,CAAQ,CAAA,CACvE,CAEA,SAAgB,EAAe,CAC7B,YACA,QAAQ,QACR,aAAa,EACb,GAAG,GAC+C,CAClD,MACE,kBAACA,EAAiB,OAAlB,CAAA,SACE,kBAACA,EAAiB,QAAlB,CACE,YAAU,kBACH,QACK,aACZ,UAAW,EACT,uLACA,CACF,EACA,GAAI,CACL,CAAA,CACsB,CAAA,CAE7B,CAGA,SAAgB,EAAc,CAAE,YAAW,GAAG,GAAgC,CAC5E,MACE,kBAAC,MAAD,CACE,YAAU,iBACV,UAAW,EACT,+GACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAc,CAAE,YAAW,GAAG,GAAgC,CAC5E,MACE,kBAAC,MAAD,CACE,YAAU,iBACV,UAAW,EACT,4IACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime");function r({className:r,value:i,...a}){return(0,n.jsx)(t.Progress.Root,{"data-slot":`progress`,value:i,className:e.cn(`relative h-1 w-full overflow-hidden rounded-full bg-doom-deep`,r),...a,children:(0,n.jsx)(t.Progress.Indicator,{"data-slot":`progress-indicator`,className:`h-full w-full flex-1 bg-doom-blue transition-transform`,style:{transform:`translateX(-${String(100-(i??0))}%)`}})})}exports.Progress=r;
1
+ const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime");function r({className:r,value:i,...a}){return/* @__PURE__ */ (0,n.jsx)(t.Progress.Root,{"data-slot":`progress`,value:i,className:e.cn(`relative h-1 w-full overflow-hidden rounded-full bg-doom-deep`,r),...a,children:/* @__PURE__ */ (0,n.jsx)(t.Progress.Indicator,{"data-slot":`progress-indicator`,className:`h-full w-full flex-1 bg-doom-blue transition-transform`,style:{transform:`translateX(-${String(100-(i??0))}%)`}})})}exports.Progress=r;
2
2
  //# sourceMappingURL=Progress.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Progress.cjs","names":["ProgressPrimitive","cn"],"sources":["../../../src/components/Progress.tsx"],"sourcesContent":["import { Progress as ProgressPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/** A determinate bar; leave `value` undefined and Radix reports it as indeterminate. */\nexport function Progress({ className, value, ...props }: ComponentProps<typeof ProgressPrimitive.Root>) {\n return (\n <ProgressPrimitive.Root\n data-slot=\"progress\"\n value={value}\n className={cn('relative h-1 w-full overflow-hidden rounded-full bg-doom-deep', className)}\n {...props}\n >\n <ProgressPrimitive.Indicator\n data-slot=\"progress-indicator\"\n className=\"h-full w-full flex-1 bg-doom-blue transition-transform\"\n style={{ transform: `translateX(-${String(100 - (value ?? 0))}%)` }}\n />\n </ProgressPrimitive.Root>\n );\n}\n"],"mappings":"0FAMA,SAAgB,EAAS,CAAE,YAAW,QAAO,GAAG,GAAwD,CACtG,OACE,EAAA,EAAA,IAAA,CAACA,EAAAA,SAAkB,KAAnB,CACE,YAAU,WACH,QACP,UAAWC,EAAAA,GAAG,gEAAiE,CAAS,EACxF,GAAI,EAEJ,UAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,SAAkB,UAAnB,CACE,YAAU,qBACV,UAAU,yDACV,MAAO,CAAE,UAAW,eAAe,OAAO,KAAO,GAAS,EAAE,EAAE,GAAI,CACnE,CAAA,CACqB,CAAA,CAE5B"}
1
+ {"version":3,"file":"Progress.cjs","names":["ProgressPrimitive","cn"],"sources":["../../../src/components/Progress.tsx"],"sourcesContent":["import { Progress as ProgressPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/** A determinate bar; leave `value` undefined and Radix reports it as indeterminate. */\nexport function Progress({ className, value, ...props }: ComponentProps<typeof ProgressPrimitive.Root>) {\n return (\n <ProgressPrimitive.Root\n data-slot=\"progress\"\n value={value}\n className={cn('relative h-1 w-full overflow-hidden rounded-full bg-doom-deep', className)}\n {...props}\n >\n <ProgressPrimitive.Indicator\n data-slot=\"progress-indicator\"\n className=\"h-full w-full flex-1 bg-doom-blue transition-transform\"\n style={{ transform: `translateX(-${String(100 - (value ?? 0))}%)` }}\n />\n </ProgressPrimitive.Root>\n );\n}\n"],"mappings":"0FAMA,SAAgB,EAAS,CAAE,YAAW,QAAO,GAAG,GAAwD,CACtG,MACE,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,SAAkB,KAAnB,CACE,YAAU,WACH,QACP,UAAWC,EAAAA,GAAG,gEAAiE,CAAS,EACxF,GAAI,EAEJ,SAAA,iBAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,SAAkB,UAAnB,CACE,YAAU,qBACV,UAAU,yDACV,MAAO,CAAE,UAAW,eAAe,OAAO,KAAO,GAAS,EAAE,EAAE,GAAI,CACnE,CAAA,CACqB,CAAA,CAE5B"}
@@ -1,2 +1,2 @@
1
- import{cn as e}from"../lib/cn.mjs";import{Progress as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";function r({className:r,value:i,...a}){return n(t.Root,{"data-slot":`progress`,value:i,className:e(`relative h-1 w-full overflow-hidden rounded-full bg-doom-deep`,r),...a,children:n(t.Indicator,{"data-slot":`progress-indicator`,className:`h-full w-full flex-1 bg-doom-blue transition-transform`,style:{transform:`translateX(-${String(100-(i??0))}%)`}})})}export{r as Progress};
1
+ import{cn as e}from"../lib/cn.mjs";import{Progress as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";function r({className:r,value:i,...a}){return/* @__PURE__ */ n(t.Root,{"data-slot":`progress`,value:i,className:e(`relative h-1 w-full overflow-hidden rounded-full bg-doom-deep`,r),...a,children:/* @__PURE__ */ n(t.Indicator,{"data-slot":`progress-indicator`,className:`h-full w-full flex-1 bg-doom-blue transition-transform`,style:{transform:`translateX(-${String(100-(i??0))}%)`}})})}export{r as Progress};
2
2
  //# sourceMappingURL=Progress.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Progress.mjs","names":["Progress","ProgressPrimitive"],"sources":["../../../src/components/Progress.tsx"],"sourcesContent":["import { Progress as ProgressPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/** A determinate bar; leave `value` undefined and Radix reports it as indeterminate. */\nexport function Progress({ className, value, ...props }: ComponentProps<typeof ProgressPrimitive.Root>) {\n return (\n <ProgressPrimitive.Root\n data-slot=\"progress\"\n value={value}\n className={cn('relative h-1 w-full overflow-hidden rounded-full bg-doom-deep', className)}\n {...props}\n >\n <ProgressPrimitive.Indicator\n data-slot=\"progress-indicator\"\n className=\"h-full w-full flex-1 bg-doom-blue transition-transform\"\n style={{ transform: `translateX(-${String(100 - (value ?? 0))}%)` }}\n />\n </ProgressPrimitive.Root>\n );\n}\n"],"mappings":"+GAMA,SAAgBA,EAAS,CAAE,YAAW,QAAO,GAAG,GAAwD,CACtG,OACE,EAACC,EAAkB,KAAnB,CACE,YAAU,WACH,QACP,UAAW,EAAG,gEAAiE,CAAS,EACxF,GAAI,EAEJ,SAAA,EAACA,EAAkB,UAAnB,CACE,YAAU,qBACV,UAAU,yDACV,MAAO,CAAE,UAAW,eAAe,OAAO,KAAO,GAAS,EAAE,EAAE,GAAI,CACnE,CAAA,CACqB,CAAA,CAE5B"}
1
+ {"version":3,"file":"Progress.mjs","names":["Progress","ProgressPrimitive"],"sources":["../../../src/components/Progress.tsx"],"sourcesContent":["import { Progress as ProgressPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/** A determinate bar; leave `value` undefined and Radix reports it as indeterminate. */\nexport function Progress({ className, value, ...props }: ComponentProps<typeof ProgressPrimitive.Root>) {\n return (\n <ProgressPrimitive.Root\n data-slot=\"progress\"\n value={value}\n className={cn('relative h-1 w-full overflow-hidden rounded-full bg-doom-deep', className)}\n {...props}\n >\n <ProgressPrimitive.Indicator\n data-slot=\"progress-indicator\"\n className=\"h-full w-full flex-1 bg-doom-blue transition-transform\"\n style={{ transform: `translateX(-${String(100 - (value ?? 0))}%)` }}\n />\n </ProgressPrimitive.Root>\n );\n}\n"],"mappings":"+GAMA,SAAgBA,EAAS,CAAE,YAAW,QAAO,GAAG,GAAwD,CACtG,MACE,kBAACC,EAAkB,KAAnB,CACE,YAAU,WACH,QACP,UAAW,EAAG,gEAAiE,CAAS,EACxF,GAAI,EAEJ,SAAA,kBAACA,EAAkB,UAAnB,CACE,YAAU,qBACV,UAAU,yDACV,MAAO,CAAE,UAAW,eAAe,OAAO,KAAO,GAAS,EAAE,EAAE,GAAI,CACnE,CAAA,CACqB,CAAA,CAE5B"}
@@ -1,2 +1,2 @@
1
- const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime");function r({className:r,...i}){return(0,n.jsx)(t.RadioGroup.Root,{"data-slot":`radio-group`,className:e.cn(`flex flex-col gap-2`,r),...i})}function i({className:r,...i}){return(0,n.jsx)(t.RadioGroup.Item,{"data-slot":`radio-group-item`,className:e.cn(`flex h-3.5 w-3.5 shrink-0 cursor-pointer items-center justify-center rounded-full border border-doom-border bg-doom-deep outline-none transition-colors focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[state=checked]:border-doom-blue`,r),...i,children:(0,n.jsx)(t.RadioGroup.Indicator,{"data-slot":`radio-group-indicator`,className:`block h-1.5 w-1.5 rounded-full bg-doom-blue`})})}function a({className:r,...i}){return(0,n.jsx)(t.RadioGroup.Item,{"data-slot":`radio-group-card`,className:e.cn(`cursor-pointer rounded-md border border-doom-border bg-doom-panel p-2 text-left outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 data-[state=checked]:border-doom-blue data-[state=checked]:bg-doom-tint-blue`,r),...i})}exports.RadioGroup=r,exports.RadioGroupCard=a,exports.RadioGroupItem=i;
1
+ const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime");function r({className:r,...i}){return/* @__PURE__ */ (0,n.jsx)(t.RadioGroup.Root,{"data-slot":`radio-group`,className:e.cn(`flex flex-col gap-2`,r),...i})}function i({className:r,...i}){return/* @__PURE__ */ (0,n.jsx)(t.RadioGroup.Item,{"data-slot":`radio-group-item`,className:e.cn(`flex h-3.5 w-3.5 shrink-0 cursor-pointer items-center justify-center rounded-full border border-doom-border bg-doom-deep outline-none transition-colors focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[state=checked]:border-doom-blue`,r),...i,children:/* @__PURE__ */ (0,n.jsx)(t.RadioGroup.Indicator,{"data-slot":`radio-group-indicator`,className:`block h-1.5 w-1.5 rounded-full bg-doom-blue`})})}function a({className:r,...i}){return/* @__PURE__ */ (0,n.jsx)(t.RadioGroup.Item,{"data-slot":`radio-group-card`,className:e.cn(`cursor-pointer rounded-md border border-doom-border bg-doom-panel p-2 text-left outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 data-[state=checked]:border-doom-blue data-[state=checked]:bg-doom-tint-blue`,r),...i})}exports.RadioGroup=r,exports.RadioGroupCard=a,exports.RadioGroupItem=i;
2
2
  //# sourceMappingURL=RadioGroup.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"RadioGroup.cjs","names":["RadioGroupPrimitive","cn"],"sources":["../../../src/components/RadioGroup.tsx"],"sourcesContent":["import { RadioGroup as RadioGroupPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/** One choice out of several; Radix owns the arrow-key roving focus a native group has. */\nexport function RadioGroup({ className, ...props }: ComponentProps<typeof RadioGroupPrimitive.Root>) {\n return (\n <RadioGroupPrimitive.Root data-slot=\"radio-group\" className={cn('flex flex-col gap-2', className)} {...props} />\n );\n}\n\nexport function RadioGroupItem({ className, ...props }: ComponentProps<typeof RadioGroupPrimitive.Item>) {\n return (\n <RadioGroupPrimitive.Item\n data-slot=\"radio-group-item\"\n className={cn(\n 'flex h-3.5 w-3.5 shrink-0 cursor-pointer items-center justify-center rounded-full border border-doom-border bg-doom-deep outline-none transition-colors focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[state=checked]:border-doom-blue',\n className,\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator\n data-slot=\"radio-group-indicator\"\n className=\"block h-1.5 w-1.5 rounded-full bg-doom-blue\"\n />\n </RadioGroupPrimitive.Item>\n );\n}\n\n/**\n * A whole card that is one radio choice: the theme picker, where the target is\n * the preview rather than a dot. Radix keeps the roving focus and the checked\n * state; the card supplies the frame.\n */\nexport function RadioGroupCard({ className, ...props }: ComponentProps<typeof RadioGroupPrimitive.Item>) {\n return (\n <RadioGroupPrimitive.Item\n data-slot=\"radio-group-card\"\n className={cn(\n 'cursor-pointer rounded-md border border-doom-border bg-doom-panel p-2 text-left outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 data-[state=checked]:border-doom-blue data-[state=checked]:bg-doom-tint-blue',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"0FAMA,SAAgB,EAAW,CAAE,YAAW,GAAG,GAA0D,CACnG,OACE,EAAA,EAAA,IAAA,CAACA,EAAAA,WAAoB,KAArB,CAA0B,YAAU,cAAc,UAAWC,EAAAA,GAAG,sBAAuB,CAAS,EAAG,GAAI,CAAQ,CAAA,CAEnH,CAEA,SAAgB,EAAe,CAAE,YAAW,GAAG,GAA0D,CACvG,OACE,EAAA,EAAA,IAAA,CAACD,EAAAA,WAAoB,KAArB,CACE,YAAU,mBACV,UAAWC,EAAAA,GACT,sSACA,CACF,EACA,GAAI,EAEJ,UAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,WAAoB,UAArB,CACE,YAAU,wBACV,UAAU,6CACX,CAAA,CACuB,CAAA,CAE9B,CAOA,SAAgB,EAAe,CAAE,YAAW,GAAG,GAA0D,CACvG,OACE,EAAA,EAAA,IAAA,CAACA,EAAAA,WAAoB,KAArB,CACE,YAAU,mBACV,UAAWC,EAAAA,GACT,6QACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"RadioGroup.cjs","names":["RadioGroupPrimitive","cn"],"sources":["../../../src/components/RadioGroup.tsx"],"sourcesContent":["import { RadioGroup as RadioGroupPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/** One choice out of several; Radix owns the arrow-key roving focus a native group has. */\nexport function RadioGroup({ className, ...props }: ComponentProps<typeof RadioGroupPrimitive.Root>) {\n return (\n <RadioGroupPrimitive.Root data-slot=\"radio-group\" className={cn('flex flex-col gap-2', className)} {...props} />\n );\n}\n\nexport function RadioGroupItem({ className, ...props }: ComponentProps<typeof RadioGroupPrimitive.Item>) {\n return (\n <RadioGroupPrimitive.Item\n data-slot=\"radio-group-item\"\n className={cn(\n 'flex h-3.5 w-3.5 shrink-0 cursor-pointer items-center justify-center rounded-full border border-doom-border bg-doom-deep outline-none transition-colors focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[state=checked]:border-doom-blue',\n className,\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator\n data-slot=\"radio-group-indicator\"\n className=\"block h-1.5 w-1.5 rounded-full bg-doom-blue\"\n />\n </RadioGroupPrimitive.Item>\n );\n}\n\n/**\n * A whole card that is one radio choice: the theme picker, where the target is\n * the preview rather than a dot. Radix keeps the roving focus and the checked\n * state; the card supplies the frame.\n */\nexport function RadioGroupCard({ className, ...props }: ComponentProps<typeof RadioGroupPrimitive.Item>) {\n return (\n <RadioGroupPrimitive.Item\n data-slot=\"radio-group-card\"\n className={cn(\n 'cursor-pointer rounded-md border border-doom-border bg-doom-panel p-2 text-left outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 data-[state=checked]:border-doom-blue data-[state=checked]:bg-doom-tint-blue',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"0FAMA,SAAgB,EAAW,CAAE,YAAW,GAAG,GAA0D,CACnG,MACE,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,WAAoB,KAArB,CAA0B,YAAU,cAAc,UAAWC,EAAAA,GAAG,sBAAuB,CAAS,EAAG,GAAI,CAAQ,CAAA,CAEnH,CAEA,SAAgB,EAAe,CAAE,YAAW,GAAG,GAA0D,CACvG,MACE,iBAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,WAAoB,KAArB,CACE,YAAU,mBACV,UAAWC,EAAAA,GACT,sSACA,CACF,EACA,GAAI,EAEJ,SAAA,iBAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,WAAoB,UAArB,CACE,YAAU,wBACV,UAAU,6CACX,CAAA,CACuB,CAAA,CAE9B,CAOA,SAAgB,EAAe,CAAE,YAAW,GAAG,GAA0D,CACvG,MACE,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,WAAoB,KAArB,CACE,YAAU,mBACV,UAAWC,EAAAA,GACT,6QACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- import{cn as e}from"../lib/cn.mjs";import{RadioGroup as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";function r({className:r,...i}){return n(t.Root,{"data-slot":`radio-group`,className:e(`flex flex-col gap-2`,r),...i})}function i({className:r,...i}){return n(t.Item,{"data-slot":`radio-group-item`,className:e(`flex h-3.5 w-3.5 shrink-0 cursor-pointer items-center justify-center rounded-full border border-doom-border bg-doom-deep outline-none transition-colors focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[state=checked]:border-doom-blue`,r),...i,children:n(t.Indicator,{"data-slot":`radio-group-indicator`,className:`block h-1.5 w-1.5 rounded-full bg-doom-blue`})})}function a({className:r,...i}){return n(t.Item,{"data-slot":`radio-group-card`,className:e(`cursor-pointer rounded-md border border-doom-border bg-doom-panel p-2 text-left outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 data-[state=checked]:border-doom-blue data-[state=checked]:bg-doom-tint-blue`,r),...i})}export{r as RadioGroup,a as RadioGroupCard,i as RadioGroupItem};
1
+ import{cn as e}from"../lib/cn.mjs";import{RadioGroup as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";function r({className:r,...i}){return/* @__PURE__ */ n(t.Root,{"data-slot":`radio-group`,className:e(`flex flex-col gap-2`,r),...i})}function i({className:r,...i}){return/* @__PURE__ */ n(t.Item,{"data-slot":`radio-group-item`,className:e(`flex h-3.5 w-3.5 shrink-0 cursor-pointer items-center justify-center rounded-full border border-doom-border bg-doom-deep outline-none transition-colors focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[state=checked]:border-doom-blue`,r),...i,children:/* @__PURE__ */ n(t.Indicator,{"data-slot":`radio-group-indicator`,className:`block h-1.5 w-1.5 rounded-full bg-doom-blue`})})}function a({className:r,...i}){return/* @__PURE__ */ n(t.Item,{"data-slot":`radio-group-card`,className:e(`cursor-pointer rounded-md border border-doom-border bg-doom-panel p-2 text-left outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 data-[state=checked]:border-doom-blue data-[state=checked]:bg-doom-tint-blue`,r),...i})}export{r as RadioGroup,a as RadioGroupCard,i as RadioGroupItem};
2
2
  //# sourceMappingURL=RadioGroup.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"RadioGroup.mjs","names":["RadioGroup","RadioGroupPrimitive"],"sources":["../../../src/components/RadioGroup.tsx"],"sourcesContent":["import { RadioGroup as RadioGroupPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/** One choice out of several; Radix owns the arrow-key roving focus a native group has. */\nexport function RadioGroup({ className, ...props }: ComponentProps<typeof RadioGroupPrimitive.Root>) {\n return (\n <RadioGroupPrimitive.Root data-slot=\"radio-group\" className={cn('flex flex-col gap-2', className)} {...props} />\n );\n}\n\nexport function RadioGroupItem({ className, ...props }: ComponentProps<typeof RadioGroupPrimitive.Item>) {\n return (\n <RadioGroupPrimitive.Item\n data-slot=\"radio-group-item\"\n className={cn(\n 'flex h-3.5 w-3.5 shrink-0 cursor-pointer items-center justify-center rounded-full border border-doom-border bg-doom-deep outline-none transition-colors focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[state=checked]:border-doom-blue',\n className,\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator\n data-slot=\"radio-group-indicator\"\n className=\"block h-1.5 w-1.5 rounded-full bg-doom-blue\"\n />\n </RadioGroupPrimitive.Item>\n );\n}\n\n/**\n * A whole card that is one radio choice: the theme picker, where the target is\n * the preview rather than a dot. Radix keeps the roving focus and the checked\n * state; the card supplies the frame.\n */\nexport function RadioGroupCard({ className, ...props }: ComponentProps<typeof RadioGroupPrimitive.Item>) {\n return (\n <RadioGroupPrimitive.Item\n data-slot=\"radio-group-card\"\n className={cn(\n 'cursor-pointer rounded-md border border-doom-border bg-doom-panel p-2 text-left outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 data-[state=checked]:border-doom-blue data-[state=checked]:bg-doom-tint-blue',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"iHAMA,SAAgBA,EAAW,CAAE,YAAW,GAAG,GAA0D,CACnG,OACE,EAACC,EAAoB,KAArB,CAA0B,YAAU,cAAc,UAAW,EAAG,sBAAuB,CAAS,EAAG,GAAI,CAAQ,CAAA,CAEnH,CAEA,SAAgB,EAAe,CAAE,YAAW,GAAG,GAA0D,CACvG,OACE,EAACA,EAAoB,KAArB,CACE,YAAU,mBACV,UAAW,EACT,sSACA,CACF,EACA,GAAI,EAEJ,SAAA,EAACA,EAAoB,UAArB,CACE,YAAU,wBACV,UAAU,6CACX,CAAA,CACuB,CAAA,CAE9B,CAOA,SAAgB,EAAe,CAAE,YAAW,GAAG,GAA0D,CACvG,OACE,EAACA,EAAoB,KAArB,CACE,YAAU,mBACV,UAAW,EACT,6QACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"RadioGroup.mjs","names":["RadioGroup","RadioGroupPrimitive"],"sources":["../../../src/components/RadioGroup.tsx"],"sourcesContent":["import { RadioGroup as RadioGroupPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/** One choice out of several; Radix owns the arrow-key roving focus a native group has. */\nexport function RadioGroup({ className, ...props }: ComponentProps<typeof RadioGroupPrimitive.Root>) {\n return (\n <RadioGroupPrimitive.Root data-slot=\"radio-group\" className={cn('flex flex-col gap-2', className)} {...props} />\n );\n}\n\nexport function RadioGroupItem({ className, ...props }: ComponentProps<typeof RadioGroupPrimitive.Item>) {\n return (\n <RadioGroupPrimitive.Item\n data-slot=\"radio-group-item\"\n className={cn(\n 'flex h-3.5 w-3.5 shrink-0 cursor-pointer items-center justify-center rounded-full border border-doom-border bg-doom-deep outline-none transition-colors focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[state=checked]:border-doom-blue',\n className,\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator\n data-slot=\"radio-group-indicator\"\n className=\"block h-1.5 w-1.5 rounded-full bg-doom-blue\"\n />\n </RadioGroupPrimitive.Item>\n );\n}\n\n/**\n * A whole card that is one radio choice: the theme picker, where the target is\n * the preview rather than a dot. Radix keeps the roving focus and the checked\n * state; the card supplies the frame.\n */\nexport function RadioGroupCard({ className, ...props }: ComponentProps<typeof RadioGroupPrimitive.Item>) {\n return (\n <RadioGroupPrimitive.Item\n data-slot=\"radio-group-card\"\n className={cn(\n 'cursor-pointer rounded-md border border-doom-border bg-doom-panel p-2 text-left outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 data-[state=checked]:border-doom-blue data-[state=checked]:bg-doom-tint-blue',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"iHAMA,SAAgBA,EAAW,CAAE,YAAW,GAAG,GAA0D,CACnG,MACE,kBAACC,EAAoB,KAArB,CAA0B,YAAU,cAAc,UAAW,EAAG,sBAAuB,CAAS,EAAG,GAAI,CAAQ,CAAA,CAEnH,CAEA,SAAgB,EAAe,CAAE,YAAW,GAAG,GAA0D,CACvG,MACE,kBAACA,EAAoB,KAArB,CACE,YAAU,mBACV,UAAW,EACT,sSACA,CACF,EACA,GAAI,EAEJ,SAAA,kBAACA,EAAoB,UAArB,CACE,YAAU,wBACV,UAAU,6CACX,CAAA,CACuB,CAAA,CAE9B,CAOA,SAAgB,EAAe,CAAE,YAAW,GAAG,GAA0D,CACvG,MACE,kBAACA,EAAoB,KAArB,CACE,YAAU,mBACV,UAAW,EACT,6QACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime");function r({className:r,children:a,...o}){return(0,n.jsxs)(t.ScrollArea.Root,{"data-slot":`scroll-area`,className:e.cn(`relative overflow-hidden`,r),...o,children:[(0,n.jsx)(t.ScrollArea.Viewport,{"data-slot":`scroll-area-viewport`,className:`h-full w-full rounded-[inherit]`,children:a}),(0,n.jsx)(i,{}),(0,n.jsx)(t.ScrollArea.Corner,{})]})}function i({className:r,orientation:i=`vertical`,...a}){return(0,n.jsx)(t.ScrollArea.ScrollAreaScrollbar,{"data-slot":`scroll-area-scrollbar`,orientation:i,className:e.cn(`flex touch-none select-none`,i===`vertical`?`h-full w-2.5 p-px`:`h-2.5 flex-col p-px`,r),...a,children:(0,n.jsx)(t.ScrollArea.ScrollAreaThumb,{"data-slot":`scroll-area-thumb`,className:`relative flex-1 rounded-full bg-doom-border`})})}exports.ScrollArea=r,exports.ScrollBar=i;
1
+ const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime");function r({className:r,children:a,...o}){return/* @__PURE__ */ (0,n.jsxs)(t.ScrollArea.Root,{"data-slot":`scroll-area`,className:e.cn(`relative overflow-hidden`,r),...o,children:[/* @__PURE__ */ (0,n.jsx)(t.ScrollArea.Viewport,{"data-slot":`scroll-area-viewport`,className:`h-full w-full rounded-[inherit]`,children:a}),/* @__PURE__ */ (0,n.jsx)(i,{}),/* @__PURE__ */ (0,n.jsx)(t.ScrollArea.Corner,{})]})}function i({className:r,orientation:i=`vertical`,...a}){return/* @__PURE__ */ (0,n.jsx)(t.ScrollArea.ScrollAreaScrollbar,{"data-slot":`scroll-area-scrollbar`,orientation:i,className:e.cn(`flex touch-none select-none`,i===`vertical`?`h-full w-2.5 p-px`:`h-2.5 flex-col p-px`,r),...a,children:/* @__PURE__ */ (0,n.jsx)(t.ScrollArea.ScrollAreaThumb,{"data-slot":`scroll-area-thumb`,className:`relative flex-1 rounded-full bg-doom-border`})})}exports.ScrollArea=r,exports.ScrollBar=i;
2
2
  //# sourceMappingURL=ScrollArea.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollArea.cjs","names":["ScrollAreaPrimitive","cn"],"sources":["../../../src/components/ScrollArea.tsx"],"sourcesContent":["import { ScrollArea as ScrollAreaPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * A scroll container with a styled bar. The base stylesheet already themes\n * the native scrollbar, so reach for this only where the bar must overlay the\n * content or sit inside a rounded surface that clips it.\n */\nexport function ScrollArea({ className, children, ...props }: ComponentProps<typeof ScrollAreaPrimitive.Root>) {\n return (\n <ScrollAreaPrimitive.Root data-slot=\"scroll-area\" className={cn('relative overflow-hidden', className)} {...props}>\n <ScrollAreaPrimitive.Viewport data-slot=\"scroll-area-viewport\" className=\"h-full w-full rounded-[inherit]\">\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n );\n}\n\nexport function ScrollBar({\n className,\n orientation = 'vertical',\n ...props\n}: ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>) {\n return (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n data-slot=\"scroll-area-scrollbar\"\n orientation={orientation}\n className={cn(\n 'flex touch-none select-none',\n orientation === 'vertical' ? 'h-full w-2.5 p-px' : 'h-2.5 flex-col p-px',\n className,\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb\n data-slot=\"scroll-area-thumb\"\n className=\"relative flex-1 rounded-full bg-doom-border\"\n />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n );\n}\n"],"mappings":"0FAUA,SAAgB,EAAW,CAAE,YAAW,WAAU,GAAG,GAA0D,CAC7G,OACE,EAAA,EAAA,KAAA,CAACA,EAAAA,WAAoB,KAArB,CAA0B,YAAU,cAAc,UAAWC,EAAAA,GAAG,2BAA4B,CAAS,EAAG,GAAI,EAA5G,SAAA,EACE,EAAA,EAAA,IAAA,CAACD,EAAAA,WAAoB,SAArB,CAA8B,YAAU,uBAAuB,UAAU,kCACtE,UAC2B,CAAA,GAC9B,EAAA,EAAA,IAAA,CAAC,EAAD,CAAY,CAAA,GACZ,EAAA,EAAA,IAAA,CAACA,EAAAA,WAAoB,OAArB,CAA6B,CAAA,CACL,GAE9B,CAEA,SAAgB,EAAU,CACxB,YACA,cAAc,WACd,GAAG,GAC8D,CACjE,OACE,EAAA,EAAA,IAAA,CAACA,EAAAA,WAAoB,oBAArB,CACE,YAAU,wBACG,cACb,UAAWC,EAAAA,GACT,8BACA,IAAgB,WAAa,oBAAsB,sBACnD,CACF,EACA,GAAI,EAEJ,UAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,WAAoB,gBAArB,CACE,YAAU,oBACV,UAAU,6CACX,CAAA,CACsC,CAAA,CAE7C"}
1
+ {"version":3,"file":"ScrollArea.cjs","names":["ScrollAreaPrimitive","cn"],"sources":["../../../src/components/ScrollArea.tsx"],"sourcesContent":["import { ScrollArea as ScrollAreaPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * A scroll container with a styled bar. The base stylesheet already themes\n * the native scrollbar, so reach for this only where the bar must overlay the\n * content or sit inside a rounded surface that clips it.\n */\nexport function ScrollArea({ className, children, ...props }: ComponentProps<typeof ScrollAreaPrimitive.Root>) {\n return (\n <ScrollAreaPrimitive.Root data-slot=\"scroll-area\" className={cn('relative overflow-hidden', className)} {...props}>\n <ScrollAreaPrimitive.Viewport data-slot=\"scroll-area-viewport\" className=\"h-full w-full rounded-[inherit]\">\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n );\n}\n\nexport function ScrollBar({\n className,\n orientation = 'vertical',\n ...props\n}: ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>) {\n return (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n data-slot=\"scroll-area-scrollbar\"\n orientation={orientation}\n className={cn(\n 'flex touch-none select-none',\n orientation === 'vertical' ? 'h-full w-2.5 p-px' : 'h-2.5 flex-col p-px',\n className,\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb\n data-slot=\"scroll-area-thumb\"\n className=\"relative flex-1 rounded-full bg-doom-border\"\n />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n );\n}\n"],"mappings":"0FAUA,SAAgB,EAAW,CAAE,YAAW,WAAU,GAAG,GAA0D,CAC7G,MACE,iBAAA,EAAA,EAAA,KAAA,CAACA,EAAAA,WAAoB,KAArB,CAA0B,YAAU,cAAc,UAAWC,EAAAA,GAAG,2BAA4B,CAAS,EAAG,GAAI,EAA5G,SAAA,CACE,iBAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,WAAoB,SAArB,CAA8B,YAAU,uBAAuB,UAAU,kCACtE,UAC2B,CAAA,EAC9B,iBAAA,EAAA,EAAA,IAAA,CAAC,EAAD,CAAY,CAAA,EACZ,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,WAAoB,OAArB,CAA6B,CAAA,CACL,GAE9B,CAEA,SAAgB,EAAU,CACxB,YACA,cAAc,WACd,GAAG,GAC8D,CACjE,MACE,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,WAAoB,oBAArB,CACE,YAAU,wBACG,cACb,UAAWC,EAAAA,GACT,8BACA,IAAgB,WAAa,oBAAsB,sBACnD,CACF,EACA,GAAI,EAEJ,SAAA,iBAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,WAAoB,gBAArB,CACE,YAAU,oBACV,UAAU,6CACX,CAAA,CACsC,CAAA,CAE7C"}
@@ -1,2 +1,2 @@
1
- import{cn as e}from"../lib/cn.mjs";import{ScrollArea as t}from"radix-ui";import{jsx as n,jsxs as r}from"react/jsx-runtime";function i({className:i,children:o,...s}){return r(t.Root,{"data-slot":`scroll-area`,className:e(`relative overflow-hidden`,i),...s,children:[n(t.Viewport,{"data-slot":`scroll-area-viewport`,className:`h-full w-full rounded-[inherit]`,children:o}),n(a,{}),n(t.Corner,{})]})}function a({className:r,orientation:i=`vertical`,...a}){return n(t.ScrollAreaScrollbar,{"data-slot":`scroll-area-scrollbar`,orientation:i,className:e(`flex touch-none select-none`,i===`vertical`?`h-full w-2.5 p-px`:`h-2.5 flex-col p-px`,r),...a,children:n(t.ScrollAreaThumb,{"data-slot":`scroll-area-thumb`,className:`relative flex-1 rounded-full bg-doom-border`})})}export{i as ScrollArea,a as ScrollBar};
1
+ import{cn as e}from"../lib/cn.mjs";import{ScrollArea as t}from"radix-ui";import{jsx as n,jsxs as r}from"react/jsx-runtime";function i({className:i,children:o,...s}){return/* @__PURE__ */ r(t.Root,{"data-slot":`scroll-area`,className:e(`relative overflow-hidden`,i),...s,children:[/* @__PURE__ */ n(t.Viewport,{"data-slot":`scroll-area-viewport`,className:`h-full w-full rounded-[inherit]`,children:o}),/* @__PURE__ */ n(a,{}),/* @__PURE__ */ n(t.Corner,{})]})}function a({className:r,orientation:i=`vertical`,...a}){return/* @__PURE__ */ n(t.ScrollAreaScrollbar,{"data-slot":`scroll-area-scrollbar`,orientation:i,className:e(`flex touch-none select-none`,i===`vertical`?`h-full w-2.5 p-px`:`h-2.5 flex-col p-px`,r),...a,children:/* @__PURE__ */ n(t.ScrollAreaThumb,{"data-slot":`scroll-area-thumb`,className:`relative flex-1 rounded-full bg-doom-border`})})}export{i as ScrollArea,a as ScrollBar};
2
2
  //# sourceMappingURL=ScrollArea.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollArea.mjs","names":["ScrollArea","ScrollAreaPrimitive"],"sources":["../../../src/components/ScrollArea.tsx"],"sourcesContent":["import { ScrollArea as ScrollAreaPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * A scroll container with a styled bar. The base stylesheet already themes\n * the native scrollbar, so reach for this only where the bar must overlay the\n * content or sit inside a rounded surface that clips it.\n */\nexport function ScrollArea({ className, children, ...props }: ComponentProps<typeof ScrollAreaPrimitive.Root>) {\n return (\n <ScrollAreaPrimitive.Root data-slot=\"scroll-area\" className={cn('relative overflow-hidden', className)} {...props}>\n <ScrollAreaPrimitive.Viewport data-slot=\"scroll-area-viewport\" className=\"h-full w-full rounded-[inherit]\">\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n );\n}\n\nexport function ScrollBar({\n className,\n orientation = 'vertical',\n ...props\n}: ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>) {\n return (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n data-slot=\"scroll-area-scrollbar\"\n orientation={orientation}\n className={cn(\n 'flex touch-none select-none',\n orientation === 'vertical' ? 'h-full w-2.5 p-px' : 'h-2.5 flex-col p-px',\n className,\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb\n data-slot=\"scroll-area-thumb\"\n className=\"relative flex-1 rounded-full bg-doom-border\"\n />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n );\n}\n"],"mappings":"2HAUA,SAAgBA,EAAW,CAAE,YAAW,WAAU,GAAG,GAA0D,CAC7G,OACE,EAACC,EAAoB,KAArB,CAA0B,YAAU,cAAc,UAAW,EAAG,2BAA4B,CAAS,EAAG,GAAI,EAA5G,SAAA,CACE,EAACA,EAAoB,SAArB,CAA8B,YAAU,uBAAuB,UAAU,kCACtE,UAC2B,CAAA,EAC9B,EAAC,EAAD,CAAY,CAAA,EACZ,EAACA,EAAoB,OAArB,CAA6B,CAAA,CACL,GAE9B,CAEA,SAAgB,EAAU,CACxB,YACA,cAAc,WACd,GAAG,GAC8D,CACjE,OACE,EAACA,EAAoB,oBAArB,CACE,YAAU,wBACG,cACb,UAAW,EACT,8BACA,IAAgB,WAAa,oBAAsB,sBACnD,CACF,EACA,GAAI,EAEJ,SAAA,EAACA,EAAoB,gBAArB,CACE,YAAU,oBACV,UAAU,6CACX,CAAA,CACsC,CAAA,CAE7C"}
1
+ {"version":3,"file":"ScrollArea.mjs","names":["ScrollArea","ScrollAreaPrimitive"],"sources":["../../../src/components/ScrollArea.tsx"],"sourcesContent":["import { ScrollArea as ScrollAreaPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * A scroll container with a styled bar. The base stylesheet already themes\n * the native scrollbar, so reach for this only where the bar must overlay the\n * content or sit inside a rounded surface that clips it.\n */\nexport function ScrollArea({ className, children, ...props }: ComponentProps<typeof ScrollAreaPrimitive.Root>) {\n return (\n <ScrollAreaPrimitive.Root data-slot=\"scroll-area\" className={cn('relative overflow-hidden', className)} {...props}>\n <ScrollAreaPrimitive.Viewport data-slot=\"scroll-area-viewport\" className=\"h-full w-full rounded-[inherit]\">\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n );\n}\n\nexport function ScrollBar({\n className,\n orientation = 'vertical',\n ...props\n}: ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>) {\n return (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n data-slot=\"scroll-area-scrollbar\"\n orientation={orientation}\n className={cn(\n 'flex touch-none select-none',\n orientation === 'vertical' ? 'h-full w-2.5 p-px' : 'h-2.5 flex-col p-px',\n className,\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb\n data-slot=\"scroll-area-thumb\"\n className=\"relative flex-1 rounded-full bg-doom-border\"\n />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n );\n}\n"],"mappings":"2HAUA,SAAgBA,EAAW,CAAE,YAAW,WAAU,GAAG,GAA0D,CAC7G,MACE,kBAACC,EAAoB,KAArB,CAA0B,YAAU,cAAc,UAAW,EAAG,2BAA4B,CAAS,EAAG,GAAI,EAA5G,SAAA,CACE,kBAACA,EAAoB,SAArB,CAA8B,YAAU,uBAAuB,UAAU,kCACtE,UAC2B,CAAA,EAC9B,kBAAC,EAAD,CAAY,CAAA,EACZ,kBAACA,EAAoB,OAArB,CAA6B,CAAA,CACL,GAE9B,CAEA,SAAgB,EAAU,CACxB,YACA,cAAc,WACd,GAAG,GAC8D,CACjE,MACE,kBAACA,EAAoB,oBAArB,CACE,YAAU,wBACG,cACb,UAAW,EACT,8BACA,IAAgB,WAAa,oBAAsB,sBACnD,CACF,EACA,GAAI,EAEJ,SAAA,kBAACA,EAAoB,gBAArB,CACE,YAAU,oBACV,UAAU,6CACX,CAAA,CACsC,CAAA,CAE7C"}
@@ -1,2 +1,2 @@
1
- const e=require("../lib/cn.cjs");let t=require("react/jsx-runtime");function n({className:n,...r}){return(0,t.jsx)(`span`,{"data-slot":`section-label`,className:e.cn(`font-mono text-2xs font-bold tracking-widest text-doom-faint uppercase`,n),...r})}exports.SectionLabel=n;
1
+ const e=require("../lib/cn.cjs");let t=require("react/jsx-runtime");function n({className:n,...r}){return/* @__PURE__ */ (0,t.jsx)(`span`,{"data-slot":`section-label`,className:e.cn(`font-mono text-2xs font-bold tracking-widest text-doom-faint uppercase`,n),...r})}exports.SectionLabel=n;
2
2
  //# sourceMappingURL=SectionLabel.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"SectionLabel.cjs","names":["cn"],"sources":["../../../src/components/SectionLabel.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/** The tiny tracked-out caps that head every cockpit section (SESSIONS, ACTIVITY, MINOR MODES). */\nexport function SectionLabel({ className, ...props }: ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"section-label\"\n className={cn('font-mono text-2xs font-bold tracking-widest text-doom-faint uppercase', className)}\n {...props}\n />\n );\n}\n"],"mappings":"oEAKA,SAAgB,EAAa,CAAE,YAAW,GAAG,GAAiC,CAC5E,OACE,EAAA,EAAA,IAAA,CAAC,OAAD,CACE,YAAU,gBACV,UAAWA,EAAAA,GAAG,yEAA0E,CAAS,EACjG,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"SectionLabel.cjs","names":["cn"],"sources":["../../../src/components/SectionLabel.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/** The tiny tracked-out caps that head every cockpit section (SESSIONS, ACTIVITY, MINOR MODES). */\nexport function SectionLabel({ className, ...props }: ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"section-label\"\n className={cn('font-mono text-2xs font-bold tracking-widest text-doom-faint uppercase', className)}\n {...props}\n />\n );\n}\n"],"mappings":"oEAKA,SAAgB,EAAa,CAAE,YAAW,GAAG,GAAiC,CAC5E,MACE,iBAAA,EAAA,EAAA,IAAA,CAAC,OAAD,CACE,YAAU,gBACV,UAAWA,EAAAA,GAAG,yEAA0E,CAAS,EACjG,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- import{cn as e}from"../lib/cn.mjs";import{jsx as t}from"react/jsx-runtime";function n({className:n,...r}){return t(`span`,{"data-slot":`section-label`,className:e(`font-mono text-2xs font-bold tracking-widest text-doom-faint uppercase`,n),...r})}export{n as SectionLabel};
1
+ import{cn as e}from"../lib/cn.mjs";import{jsx as t}from"react/jsx-runtime";function n({className:n,...r}){return/* @__PURE__ */ t(`span`,{"data-slot":`section-label`,className:e(`font-mono text-2xs font-bold tracking-widest text-doom-faint uppercase`,n),...r})}export{n as SectionLabel};
2
2
  //# sourceMappingURL=SectionLabel.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"SectionLabel.mjs","names":[],"sources":["../../../src/components/SectionLabel.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/** The tiny tracked-out caps that head every cockpit section (SESSIONS, ACTIVITY, MINOR MODES). */\nexport function SectionLabel({ className, ...props }: ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"section-label\"\n className={cn('font-mono text-2xs font-bold tracking-widest text-doom-faint uppercase', className)}\n {...props}\n />\n );\n}\n"],"mappings":"2EAKA,SAAgB,EAAa,CAAE,YAAW,GAAG,GAAiC,CAC5E,OACE,EAAC,OAAD,CACE,YAAU,gBACV,UAAW,EAAG,yEAA0E,CAAS,EACjG,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"SectionLabel.mjs","names":[],"sources":["../../../src/components/SectionLabel.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/** The tiny tracked-out caps that head every cockpit section (SESSIONS, ACTIVITY, MINOR MODES). */\nexport function SectionLabel({ className, ...props }: ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"section-label\"\n className={cn('font-mono text-2xs font-bold tracking-widest text-doom-faint uppercase', className)}\n {...props}\n />\n );\n}\n"],"mappings":"2EAKA,SAAgB,EAAa,CAAE,YAAW,GAAG,GAAiC,CAC5E,MACE,kBAAC,OAAD,CACE,YAAU,gBACV,UAAW,EAAG,yEAA0E,CAAS,EACjG,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- require("../icons/icons.cjs");const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime"),r=require("lucide-react");function i(e){return(0,n.jsx)(t.Select.Root,{"data-slot":`select`,...e})}function a(e){return(0,n.jsx)(t.Select.Group,{"data-slot":`select-group`,...e})}function o(e){return(0,n.jsx)(t.Select.Value,{"data-slot":`select-value`,...e})}function s({className:i,children:a,...o}){return(0,n.jsxs)(t.Select.Trigger,{"data-slot":`select-trigger`,className:e.cn(`flex h-7 cursor-pointer items-center justify-between gap-2 rounded border border-doom-border bg-doom-deep px-2.5 font-mono text-sm text-doom-hi outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[placeholder]:text-doom-faint`,i),...o,children:[a,(0,n.jsx)(t.Select.Icon,{asChild:!0,children:(0,n.jsx)(r.ChevronDown,{className:`h-3 w-3 shrink-0 text-doom-faint`})})]})}function c({className:r,position:i=`popper`,sideOffset:a=4,children:o,...s}){return(0,n.jsx)(t.Select.Portal,{children:(0,n.jsx)(t.Select.Content,{"data-slot":`select-content`,position:i,sideOffset:a,className:e.cn(`z-50 max-h-[320px] min-w-[var(--radix-select-trigger-width)] overflow-hidden rounded border border-doom-border bg-doom-panel font-mono shadow-xl outline-none data-[state=open]:animate-doom-rise`,r),...s,children:(0,n.jsx)(t.Select.Viewport,{className:`p-1`,children:o})})})}function l({className:r,...i}){return(0,n.jsx)(t.Select.Label,{"data-slot":`select-label`,className:e.cn(`px-2 py-1 text-2xs font-bold tracking-wider text-doom-faint uppercase`,r),...i})}function u({className:i,children:a,...o}){return(0,n.jsxs)(t.Select.Item,{"data-slot":`select-item`,className:e.cn(`relative flex cursor-pointer items-center gap-2 rounded-sm py-1.5 pr-2 pl-7 text-sm text-doom-hi outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-40 data-[highlighted]:bg-doom-deep`,i),...o,children:[(0,n.jsx)(`span`,{className:`pointer-events-none absolute left-2 flex h-3 w-3 items-center justify-center`,children:(0,n.jsx)(t.Select.ItemIndicator,{children:(0,n.jsx)(r.Check,{className:`h-3 w-3 text-doom-blue`})})}),(0,n.jsx)(t.Select.ItemText,{children:a})]})}function d({className:r,...i}){return(0,n.jsx)(t.Select.Separator,{"data-slot":`select-separator`,className:e.cn(`my-1 h-px bg-doom-border-soft`,r),...i})}exports.Select=i,exports.SelectContent=c,exports.SelectGroup=a,exports.SelectItem=u,exports.SelectLabel=l,exports.SelectSeparator=d,exports.SelectTrigger=s,exports.SelectValue=o;
1
+ require("../icons/icons.cjs");const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime"),r=require("lucide-react");function i(e){return/* @__PURE__ */ (0,n.jsx)(t.Select.Root,{"data-slot":`select`,...e})}function a(e){return/* @__PURE__ */ (0,n.jsx)(t.Select.Group,{"data-slot":`select-group`,...e})}function o(e){return/* @__PURE__ */ (0,n.jsx)(t.Select.Value,{"data-slot":`select-value`,...e})}function s({className:i,children:a,...o}){return/* @__PURE__ */ (0,n.jsxs)(t.Select.Trigger,{"data-slot":`select-trigger`,className:e.cn(`flex h-7 cursor-pointer items-center justify-between gap-2 rounded border border-doom-border bg-doom-deep px-2.5 font-mono text-sm text-doom-hi outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[placeholder]:text-doom-faint`,i),...o,children:[a,/* @__PURE__ */ (0,n.jsx)(t.Select.Icon,{asChild:!0,children:/* @__PURE__ */ (0,n.jsx)(r.ChevronDown,{className:`h-3 w-3 shrink-0 text-doom-faint`})})]})}function c({className:r,position:i=`popper`,sideOffset:a=4,children:o,...s}){return/* @__PURE__ */ (0,n.jsx)(t.Select.Portal,{children:/* @__PURE__ */ (0,n.jsx)(t.Select.Content,{"data-slot":`select-content`,position:i,sideOffset:a,className:e.cn(`z-50 max-h-[320px] min-w-[var(--radix-select-trigger-width)] overflow-hidden rounded border border-doom-border bg-doom-panel font-mono shadow-xl outline-none data-[state=open]:animate-doom-rise`,r),...s,children:/* @__PURE__ */ (0,n.jsx)(t.Select.Viewport,{className:`p-1`,children:o})})})}function l({className:r,...i}){return/* @__PURE__ */ (0,n.jsx)(t.Select.Label,{"data-slot":`select-label`,className:e.cn(`px-2 py-1 text-2xs font-bold tracking-wider text-doom-faint uppercase`,r),...i})}function u({className:i,children:a,...o}){return/* @__PURE__ */ (0,n.jsxs)(t.Select.Item,{"data-slot":`select-item`,className:e.cn(`relative flex cursor-pointer items-center gap-2 rounded-sm py-1.5 pr-2 pl-7 text-sm text-doom-hi outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-40 data-[highlighted]:bg-doom-deep`,i),...o,children:[/* @__PURE__ */ (0,n.jsx)(`span`,{className:`pointer-events-none absolute left-2 flex h-3 w-3 items-center justify-center`,children:/* @__PURE__ */ (0,n.jsx)(t.Select.ItemIndicator,{children:/* @__PURE__ */ (0,n.jsx)(r.Check,{className:`h-3 w-3 text-doom-blue`})})}),/* @__PURE__ */ (0,n.jsx)(t.Select.ItemText,{children:a})]})}function d({className:r,...i}){return/* @__PURE__ */ (0,n.jsx)(t.Select.Separator,{"data-slot":`select-separator`,className:e.cn(`my-1 h-px bg-doom-border-soft`,r),...i})}exports.Select=i,exports.SelectContent=c,exports.SelectGroup=a,exports.SelectItem=u,exports.SelectLabel=l,exports.SelectSeparator=d,exports.SelectTrigger=s,exports.SelectValue=o;
2
2
  //# sourceMappingURL=Select.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.cjs","names":["SelectPrimitive","cn","ChevronDownIcon","CheckIcon"],"sources":["../../../src/components/Select.tsx"],"sourcesContent":["import { Select as SelectPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { CheckIcon, ChevronDownIcon } from '../icons/icons';\nimport { cn } from '../lib/cn';\n\n/**\n * A single choice from a list, on Radix rather than a native <select>: a\n * native one cannot be styled to the palette on every platform, and the\n * cockpit's model and mode pickers need the same surface a popover has.\n */\nexport function Select(props: ComponentProps<typeof SelectPrimitive.Root>) {\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />;\n}\n\nexport function SelectGroup(props: ComponentProps<typeof SelectPrimitive.Group>) {\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />;\n}\n\nexport function SelectValue(props: ComponentProps<typeof SelectPrimitive.Value>) {\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />;\n}\n\nexport function SelectTrigger({ className, children, ...props }: ComponentProps<typeof SelectPrimitive.Trigger>) {\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n className={cn(\n 'flex h-7 cursor-pointer items-center justify-between gap-2 rounded border border-doom-border bg-doom-deep px-2.5 font-mono text-sm text-doom-hi outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[placeholder]:text-doom-faint',\n className,\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDownIcon className=\"h-3 w-3 shrink-0 text-doom-faint\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n );\n}\n\nexport function SelectContent({\n className,\n position = 'popper',\n sideOffset = 4,\n children,\n ...props\n}: ComponentProps<typeof SelectPrimitive.Content>) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n position={position}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 max-h-[320px] min-w-[var(--radix-select-trigger-width)] overflow-hidden rounded border border-doom-border bg-doom-panel font-mono shadow-xl outline-none data-[state=open]:animate-doom-rise',\n className,\n )}\n {...props}\n >\n <SelectPrimitive.Viewport className=\"p-1\">{children}</SelectPrimitive.Viewport>\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n );\n}\n\nexport function SelectLabel({ className, ...props }: ComponentProps<typeof SelectPrimitive.Label>) {\n return (\n <SelectPrimitive.Label\n data-slot=\"select-label\"\n className={cn('px-2 py-1 text-2xs font-bold tracking-wider text-doom-faint uppercase', className)}\n {...props}\n />\n );\n}\n\nexport function SelectItem({ className, children, ...props }: ComponentProps<typeof SelectPrimitive.Item>) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n 'relative flex cursor-pointer items-center gap-2 rounded-sm py-1.5 pr-2 pl-7 text-sm text-doom-hi outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-40 data-[highlighted]:bg-doom-deep',\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex h-3 w-3 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <CheckIcon className=\"h-3 w-3 text-doom-blue\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n );\n}\n\nexport function SelectSeparator({ className, ...props }: ComponentProps<typeof SelectPrimitive.Separator>) {\n return (\n <SelectPrimitive.Separator\n data-slot=\"select-separator\"\n className={cn('my-1 h-px bg-doom-border-soft', className)}\n {...props}\n />\n );\n}\n"],"mappings":"kJAWA,SAAgB,EAAO,EAAoD,CACzE,OAAO,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAgB,KAAjB,CAAsB,YAAU,SAAS,GAAI,CAAQ,CAAA,CAC9D,CAEA,SAAgB,EAAY,EAAqD,CAC/E,OAAO,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAgB,MAAjB,CAAuB,YAAU,eAAe,GAAI,CAAQ,CAAA,CACrE,CAEA,SAAgB,EAAY,EAAqD,CAC/E,OAAO,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAgB,MAAjB,CAAuB,YAAU,eAAe,GAAI,CAAQ,CAAA,CACrE,CAEA,SAAgB,EAAc,CAAE,YAAW,WAAU,GAAG,GAAyD,CAC/G,OACE,EAAA,EAAA,KAAA,CAACA,EAAAA,OAAgB,QAAjB,CACE,YAAU,iBACV,UAAWC,EAAAA,GACT,oVACA,CACF,EACA,GAAI,EANN,SAAA,CAQG,GACD,EAAA,EAAA,IAAA,CAACD,EAAAA,OAAgB,KAAjB,CAAsB,QAAA,GACpB,UAAA,EAAA,EAAA,IAAA,CAACE,EAAAA,YAAD,CAAiB,UAAU,kCAAoC,CAAA,CAC3C,CAAA,CACC,GAE7B,CAEA,SAAgB,EAAc,CAC5B,YACA,WAAW,SACX,aAAa,EACb,WACA,GAAG,GAC8C,CACjD,OACE,EAAA,EAAA,IAAA,CAACF,EAAAA,OAAgB,OAAjB,CAAA,UACE,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAgB,QAAjB,CACE,YAAU,iBACA,WACE,aACZ,UAAWC,EAAAA,GACT,oMACA,CACF,EACA,GAAI,EAEJ,UAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,OAAgB,SAAjB,CAA0B,UAAU,MAAO,UAAmC,CAAA,CACvD,CAAA,CACH,CAAA,CAE5B,CAEA,SAAgB,EAAY,CAAE,YAAW,GAAG,GAAuD,CACjG,OACE,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAgB,MAAjB,CACE,YAAU,eACV,UAAWC,EAAAA,GAAG,wEAAyE,CAAS,EAChG,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAW,CAAE,YAAW,WAAU,GAAG,GAAsD,CACzG,OACE,EAAA,EAAA,KAAA,CAACD,EAAAA,OAAgB,KAAjB,CACE,YAAU,cACV,UAAWC,EAAAA,GACT,2NACA,CACF,EACA,GAAI,EANN,SAAA,EAQE,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,+EACd,UAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,OAAgB,cAAjB,CAAA,UACE,EAAA,EAAA,IAAA,CAACG,EAAAA,MAAD,CAAW,UAAU,wBAA0B,CAAA,CAClB,CAAA,CAC3B,CAAA,GACN,EAAA,EAAA,IAAA,CAACH,EAAAA,OAAgB,SAAjB,CAA2B,UAAmC,CAAA,CAC1C,GAE1B,CAEA,SAAgB,EAAgB,CAAE,YAAW,GAAG,GAA2D,CACzG,OACE,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAgB,UAAjB,CACE,YAAU,mBACV,UAAWC,EAAAA,GAAG,gCAAiC,CAAS,EACxD,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"Select.cjs","names":["SelectPrimitive","cn","ChevronDownIcon","CheckIcon"],"sources":["../../../src/components/Select.tsx"],"sourcesContent":["import { Select as SelectPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { CheckIcon, ChevronDownIcon } from '../icons/icons';\nimport { cn } from '../lib/cn';\n\n/**\n * A single choice from a list, on Radix rather than a native <select>: a\n * native one cannot be styled to the palette on every platform, and the\n * cockpit's model and mode pickers need the same surface a popover has.\n */\nexport function Select(props: ComponentProps<typeof SelectPrimitive.Root>) {\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />;\n}\n\nexport function SelectGroup(props: ComponentProps<typeof SelectPrimitive.Group>) {\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />;\n}\n\nexport function SelectValue(props: ComponentProps<typeof SelectPrimitive.Value>) {\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />;\n}\n\nexport function SelectTrigger({ className, children, ...props }: ComponentProps<typeof SelectPrimitive.Trigger>) {\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n className={cn(\n 'flex h-7 cursor-pointer items-center justify-between gap-2 rounded border border-doom-border bg-doom-deep px-2.5 font-mono text-sm text-doom-hi outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[placeholder]:text-doom-faint',\n className,\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDownIcon className=\"h-3 w-3 shrink-0 text-doom-faint\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n );\n}\n\nexport function SelectContent({\n className,\n position = 'popper',\n sideOffset = 4,\n children,\n ...props\n}: ComponentProps<typeof SelectPrimitive.Content>) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n position={position}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 max-h-[320px] min-w-[var(--radix-select-trigger-width)] overflow-hidden rounded border border-doom-border bg-doom-panel font-mono shadow-xl outline-none data-[state=open]:animate-doom-rise',\n className,\n )}\n {...props}\n >\n <SelectPrimitive.Viewport className=\"p-1\">{children}</SelectPrimitive.Viewport>\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n );\n}\n\nexport function SelectLabel({ className, ...props }: ComponentProps<typeof SelectPrimitive.Label>) {\n return (\n <SelectPrimitive.Label\n data-slot=\"select-label\"\n className={cn('px-2 py-1 text-2xs font-bold tracking-wider text-doom-faint uppercase', className)}\n {...props}\n />\n );\n}\n\nexport function SelectItem({ className, children, ...props }: ComponentProps<typeof SelectPrimitive.Item>) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n 'relative flex cursor-pointer items-center gap-2 rounded-sm py-1.5 pr-2 pl-7 text-sm text-doom-hi outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-40 data-[highlighted]:bg-doom-deep',\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex h-3 w-3 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <CheckIcon className=\"h-3 w-3 text-doom-blue\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n );\n}\n\nexport function SelectSeparator({ className, ...props }: ComponentProps<typeof SelectPrimitive.Separator>) {\n return (\n <SelectPrimitive.Separator\n data-slot=\"select-separator\"\n className={cn('my-1 h-px bg-doom-border-soft', className)}\n {...props}\n />\n );\n}\n"],"mappings":"kJAWA,SAAgB,EAAO,EAAoD,CACzE,MAAO,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAgB,KAAjB,CAAsB,YAAU,SAAS,GAAI,CAAQ,CAAA,CAC9D,CAEA,SAAgB,EAAY,EAAqD,CAC/E,MAAO,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAgB,MAAjB,CAAuB,YAAU,eAAe,GAAI,CAAQ,CAAA,CACrE,CAEA,SAAgB,EAAY,EAAqD,CAC/E,MAAO,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAgB,MAAjB,CAAuB,YAAU,eAAe,GAAI,CAAQ,CAAA,CACrE,CAEA,SAAgB,EAAc,CAAE,YAAW,WAAU,GAAG,GAAyD,CAC/G,MACE,iBAAA,EAAA,EAAA,KAAA,CAACA,EAAAA,OAAgB,QAAjB,CACE,YAAU,iBACV,UAAWC,EAAAA,GACT,oVACA,CACF,EACA,GAAI,EANN,SAAA,CAQG,EACD,iBAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,OAAgB,KAAjB,CAAsB,QAAA,GACpB,SAAA,iBAAA,EAAA,EAAA,IAAA,CAACE,EAAAA,YAAD,CAAiB,UAAU,kCAAoC,CAAA,CAC3C,CAAA,CACC,GAE7B,CAEA,SAAgB,EAAc,CAC5B,YACA,WAAW,SACX,aAAa,EACb,WACA,GAAG,GAC8C,CACjD,MACE,iBAAA,EAAA,EAAA,IAAA,CAACF,EAAAA,OAAgB,OAAjB,CAAA,SACE,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAgB,QAAjB,CACE,YAAU,iBACA,WACE,aACZ,UAAWC,EAAAA,GACT,oMACA,CACF,EACA,GAAI,EAEJ,SAAA,iBAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,OAAgB,SAAjB,CAA0B,UAAU,MAAO,UAAmC,CAAA,CACvD,CAAA,CACH,CAAA,CAE5B,CAEA,SAAgB,EAAY,CAAE,YAAW,GAAG,GAAuD,CACjG,MACE,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAgB,MAAjB,CACE,YAAU,eACV,UAAWC,EAAAA,GAAG,wEAAyE,CAAS,EAChG,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAW,CAAE,YAAW,WAAU,GAAG,GAAsD,CACzG,MACE,iBAAA,EAAA,EAAA,KAAA,CAACD,EAAAA,OAAgB,KAAjB,CACE,YAAU,cACV,UAAWC,EAAAA,GACT,2NACA,CACF,EACA,GAAI,EANN,SAAA,CAQE,iBAAA,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,+EACd,SAAA,iBAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,OAAgB,cAAjB,CAAA,SACE,iBAAA,EAAA,EAAA,IAAA,CAACG,EAAAA,MAAD,CAAW,UAAU,wBAA0B,CAAA,CAClB,CAAA,CAC3B,CAAA,EACN,iBAAA,EAAA,EAAA,IAAA,CAACH,EAAAA,OAAgB,SAAjB,CAA2B,UAAmC,CAAA,CAC1C,GAE1B,CAEA,SAAgB,EAAgB,CAAE,YAAW,GAAG,GAA2D,CACzG,MACE,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAgB,UAAjB,CACE,YAAU,mBACV,UAAWC,EAAAA,GAAG,gCAAiC,CAAS,EACxD,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- import{CheckIcon as e,ChevronDownIcon as t}from"../icons/icons.mjs";import{cn as n}from"../lib/cn.mjs";import{Select as r}from"radix-ui";import{jsx as i,jsxs as a}from"react/jsx-runtime";function o(e){return i(r.Root,{"data-slot":`select`,...e})}function s(e){return i(r.Group,{"data-slot":`select-group`,...e})}function c(e){return i(r.Value,{"data-slot":`select-value`,...e})}function l({className:e,children:o,...s}){return a(r.Trigger,{"data-slot":`select-trigger`,className:n(`flex h-7 cursor-pointer items-center justify-between gap-2 rounded border border-doom-border bg-doom-deep px-2.5 font-mono text-sm text-doom-hi outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[placeholder]:text-doom-faint`,e),...s,children:[o,i(r.Icon,{asChild:!0,children:i(t,{className:`h-3 w-3 shrink-0 text-doom-faint`})})]})}function u({className:e,position:t=`popper`,sideOffset:a=4,children:o,...s}){return i(r.Portal,{children:i(r.Content,{"data-slot":`select-content`,position:t,sideOffset:a,className:n(`z-50 max-h-[320px] min-w-[var(--radix-select-trigger-width)] overflow-hidden rounded border border-doom-border bg-doom-panel font-mono shadow-xl outline-none data-[state=open]:animate-doom-rise`,e),...s,children:i(r.Viewport,{className:`p-1`,children:o})})})}function d({className:e,...t}){return i(r.Label,{"data-slot":`select-label`,className:n(`px-2 py-1 text-2xs font-bold tracking-wider text-doom-faint uppercase`,e),...t})}function f({className:t,children:o,...s}){return a(r.Item,{"data-slot":`select-item`,className:n(`relative flex cursor-pointer items-center gap-2 rounded-sm py-1.5 pr-2 pl-7 text-sm text-doom-hi outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-40 data-[highlighted]:bg-doom-deep`,t),...s,children:[i(`span`,{className:`pointer-events-none absolute left-2 flex h-3 w-3 items-center justify-center`,children:i(r.ItemIndicator,{children:i(e,{className:`h-3 w-3 text-doom-blue`})})}),i(r.ItemText,{children:o})]})}function p({className:e,...t}){return i(r.Separator,{"data-slot":`select-separator`,className:n(`my-1 h-px bg-doom-border-soft`,e),...t})}export{o as Select,u as SelectContent,s as SelectGroup,f as SelectItem,d as SelectLabel,p as SelectSeparator,l as SelectTrigger,c as SelectValue};
1
+ import{CheckIcon as e,ChevronDownIcon as t}from"../icons/icons.mjs";import{cn as n}from"../lib/cn.mjs";import{Select as r}from"radix-ui";import{jsx as i,jsxs as a}from"react/jsx-runtime";function o(e){return/* @__PURE__ */ i(r.Root,{"data-slot":`select`,...e})}function s(e){return/* @__PURE__ */ i(r.Group,{"data-slot":`select-group`,...e})}function c(e){return/* @__PURE__ */ i(r.Value,{"data-slot":`select-value`,...e})}function l({className:e,children:o,...s}){return/* @__PURE__ */ a(r.Trigger,{"data-slot":`select-trigger`,className:n(`flex h-7 cursor-pointer items-center justify-between gap-2 rounded border border-doom-border bg-doom-deep px-2.5 font-mono text-sm text-doom-hi outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[placeholder]:text-doom-faint`,e),...s,children:[o,/* @__PURE__ */ i(r.Icon,{asChild:!0,children:/* @__PURE__ */ i(t,{className:`h-3 w-3 shrink-0 text-doom-faint`})})]})}function u({className:e,position:t=`popper`,sideOffset:a=4,children:o,...s}){return/* @__PURE__ */ i(r.Portal,{children:/* @__PURE__ */ i(r.Content,{"data-slot":`select-content`,position:t,sideOffset:a,className:n(`z-50 max-h-[320px] min-w-[var(--radix-select-trigger-width)] overflow-hidden rounded border border-doom-border bg-doom-panel font-mono shadow-xl outline-none data-[state=open]:animate-doom-rise`,e),...s,children:/* @__PURE__ */ i(r.Viewport,{className:`p-1`,children:o})})})}function d({className:e,...t}){return/* @__PURE__ */ i(r.Label,{"data-slot":`select-label`,className:n(`px-2 py-1 text-2xs font-bold tracking-wider text-doom-faint uppercase`,e),...t})}function f({className:t,children:o,...s}){return/* @__PURE__ */ a(r.Item,{"data-slot":`select-item`,className:n(`relative flex cursor-pointer items-center gap-2 rounded-sm py-1.5 pr-2 pl-7 text-sm text-doom-hi outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-40 data-[highlighted]:bg-doom-deep`,t),...s,children:[/* @__PURE__ */ i(`span`,{className:`pointer-events-none absolute left-2 flex h-3 w-3 items-center justify-center`,children:/* @__PURE__ */ i(r.ItemIndicator,{children:/* @__PURE__ */ i(e,{className:`h-3 w-3 text-doom-blue`})})}),/* @__PURE__ */ i(r.ItemText,{children:o})]})}function p({className:e,...t}){return/* @__PURE__ */ i(r.Separator,{"data-slot":`select-separator`,className:n(`my-1 h-px bg-doom-border-soft`,e),...t})}export{o as Select,u as SelectContent,s as SelectGroup,f as SelectItem,d as SelectLabel,p as SelectSeparator,l as SelectTrigger,c as SelectValue};
2
2
  //# sourceMappingURL=Select.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.mjs","names":["Select","SelectPrimitive"],"sources":["../../../src/components/Select.tsx"],"sourcesContent":["import { Select as SelectPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { CheckIcon, ChevronDownIcon } from '../icons/icons';\nimport { cn } from '../lib/cn';\n\n/**\n * A single choice from a list, on Radix rather than a native <select>: a\n * native one cannot be styled to the palette on every platform, and the\n * cockpit's model and mode pickers need the same surface a popover has.\n */\nexport function Select(props: ComponentProps<typeof SelectPrimitive.Root>) {\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />;\n}\n\nexport function SelectGroup(props: ComponentProps<typeof SelectPrimitive.Group>) {\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />;\n}\n\nexport function SelectValue(props: ComponentProps<typeof SelectPrimitive.Value>) {\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />;\n}\n\nexport function SelectTrigger({ className, children, ...props }: ComponentProps<typeof SelectPrimitive.Trigger>) {\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n className={cn(\n 'flex h-7 cursor-pointer items-center justify-between gap-2 rounded border border-doom-border bg-doom-deep px-2.5 font-mono text-sm text-doom-hi outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[placeholder]:text-doom-faint',\n className,\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDownIcon className=\"h-3 w-3 shrink-0 text-doom-faint\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n );\n}\n\nexport function SelectContent({\n className,\n position = 'popper',\n sideOffset = 4,\n children,\n ...props\n}: ComponentProps<typeof SelectPrimitive.Content>) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n position={position}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 max-h-[320px] min-w-[var(--radix-select-trigger-width)] overflow-hidden rounded border border-doom-border bg-doom-panel font-mono shadow-xl outline-none data-[state=open]:animate-doom-rise',\n className,\n )}\n {...props}\n >\n <SelectPrimitive.Viewport className=\"p-1\">{children}</SelectPrimitive.Viewport>\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n );\n}\n\nexport function SelectLabel({ className, ...props }: ComponentProps<typeof SelectPrimitive.Label>) {\n return (\n <SelectPrimitive.Label\n data-slot=\"select-label\"\n className={cn('px-2 py-1 text-2xs font-bold tracking-wider text-doom-faint uppercase', className)}\n {...props}\n />\n );\n}\n\nexport function SelectItem({ className, children, ...props }: ComponentProps<typeof SelectPrimitive.Item>) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n 'relative flex cursor-pointer items-center gap-2 rounded-sm py-1.5 pr-2 pl-7 text-sm text-doom-hi outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-40 data-[highlighted]:bg-doom-deep',\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex h-3 w-3 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <CheckIcon className=\"h-3 w-3 text-doom-blue\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n );\n}\n\nexport function SelectSeparator({ className, ...props }: ComponentProps<typeof SelectPrimitive.Separator>) {\n return (\n <SelectPrimitive.Separator\n data-slot=\"select-separator\"\n className={cn('my-1 h-px bg-doom-border-soft', className)}\n {...props}\n />\n );\n}\n"],"mappings":"2LAWA,SAAgBA,EAAO,EAAoD,CACzE,OAAO,EAACC,EAAgB,KAAjB,CAAsB,YAAU,SAAS,GAAI,CAAQ,CAAA,CAC9D,CAEA,SAAgB,EAAY,EAAqD,CAC/E,OAAO,EAACA,EAAgB,MAAjB,CAAuB,YAAU,eAAe,GAAI,CAAQ,CAAA,CACrE,CAEA,SAAgB,EAAY,EAAqD,CAC/E,OAAO,EAACA,EAAgB,MAAjB,CAAuB,YAAU,eAAe,GAAI,CAAQ,CAAA,CACrE,CAEA,SAAgB,EAAc,CAAE,YAAW,WAAU,GAAG,GAAyD,CAC/G,OACE,EAACA,EAAgB,QAAjB,CACE,YAAU,iBACV,UAAW,EACT,oVACA,CACF,EACA,GAAI,EANN,SAAA,CAQG,EACD,EAACA,EAAgB,KAAjB,CAAsB,QAAA,GACpB,SAAA,EAAC,EAAD,CAAiB,UAAU,kCAAoC,CAAA,CAC3C,CAAA,CACC,GAE7B,CAEA,SAAgB,EAAc,CAC5B,YACA,WAAW,SACX,aAAa,EACb,WACA,GAAG,GAC8C,CACjD,OACE,EAACA,EAAgB,OAAjB,CAAA,SACE,EAACA,EAAgB,QAAjB,CACE,YAAU,iBACA,WACE,aACZ,UAAW,EACT,oMACA,CACF,EACA,GAAI,EAEJ,SAAA,EAACA,EAAgB,SAAjB,CAA0B,UAAU,MAAO,UAAmC,CAAA,CACvD,CAAA,CACH,CAAA,CAE5B,CAEA,SAAgB,EAAY,CAAE,YAAW,GAAG,GAAuD,CACjG,OACE,EAACA,EAAgB,MAAjB,CACE,YAAU,eACV,UAAW,EAAG,wEAAyE,CAAS,EAChG,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAW,CAAE,YAAW,WAAU,GAAG,GAAsD,CACzG,OACE,EAACA,EAAgB,KAAjB,CACE,YAAU,cACV,UAAW,EACT,2NACA,CACF,EACA,GAAI,EANN,SAAA,CAQE,EAAC,OAAD,CAAM,UAAU,+EACd,SAAA,EAACA,EAAgB,cAAjB,CAAA,SACE,EAAC,EAAD,CAAW,UAAU,wBAA0B,CAAA,CAClB,CAAA,CAC3B,CAAA,EACN,EAACA,EAAgB,SAAjB,CAA2B,UAAmC,CAAA,CAC1C,GAE1B,CAEA,SAAgB,EAAgB,CAAE,YAAW,GAAG,GAA2D,CACzG,OACE,EAACA,EAAgB,UAAjB,CACE,YAAU,mBACV,UAAW,EAAG,gCAAiC,CAAS,EACxD,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"Select.mjs","names":["Select","SelectPrimitive"],"sources":["../../../src/components/Select.tsx"],"sourcesContent":["import { Select as SelectPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { CheckIcon, ChevronDownIcon } from '../icons/icons';\nimport { cn } from '../lib/cn';\n\n/**\n * A single choice from a list, on Radix rather than a native <select>: a\n * native one cannot be styled to the palette on every platform, and the\n * cockpit's model and mode pickers need the same surface a popover has.\n */\nexport function Select(props: ComponentProps<typeof SelectPrimitive.Root>) {\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />;\n}\n\nexport function SelectGroup(props: ComponentProps<typeof SelectPrimitive.Group>) {\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />;\n}\n\nexport function SelectValue(props: ComponentProps<typeof SelectPrimitive.Value>) {\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />;\n}\n\nexport function SelectTrigger({ className, children, ...props }: ComponentProps<typeof SelectPrimitive.Trigger>) {\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n className={cn(\n 'flex h-7 cursor-pointer items-center justify-between gap-2 rounded border border-doom-border bg-doom-deep px-2.5 font-mono text-sm text-doom-hi outline-none transition-colors hover:border-doom-blue/50 focus-visible:ring-2 focus-visible:ring-doom-blue/50 disabled:pointer-events-none disabled:opacity-40 data-[placeholder]:text-doom-faint',\n className,\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDownIcon className=\"h-3 w-3 shrink-0 text-doom-faint\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n );\n}\n\nexport function SelectContent({\n className,\n position = 'popper',\n sideOffset = 4,\n children,\n ...props\n}: ComponentProps<typeof SelectPrimitive.Content>) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n position={position}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 max-h-[320px] min-w-[var(--radix-select-trigger-width)] overflow-hidden rounded border border-doom-border bg-doom-panel font-mono shadow-xl outline-none data-[state=open]:animate-doom-rise',\n className,\n )}\n {...props}\n >\n <SelectPrimitive.Viewport className=\"p-1\">{children}</SelectPrimitive.Viewport>\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n );\n}\n\nexport function SelectLabel({ className, ...props }: ComponentProps<typeof SelectPrimitive.Label>) {\n return (\n <SelectPrimitive.Label\n data-slot=\"select-label\"\n className={cn('px-2 py-1 text-2xs font-bold tracking-wider text-doom-faint uppercase', className)}\n {...props}\n />\n );\n}\n\nexport function SelectItem({ className, children, ...props }: ComponentProps<typeof SelectPrimitive.Item>) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n 'relative flex cursor-pointer items-center gap-2 rounded-sm py-1.5 pr-2 pl-7 text-sm text-doom-hi outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-40 data-[highlighted]:bg-doom-deep',\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex h-3 w-3 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <CheckIcon className=\"h-3 w-3 text-doom-blue\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n );\n}\n\nexport function SelectSeparator({ className, ...props }: ComponentProps<typeof SelectPrimitive.Separator>) {\n return (\n <SelectPrimitive.Separator\n data-slot=\"select-separator\"\n className={cn('my-1 h-px bg-doom-border-soft', className)}\n {...props}\n />\n );\n}\n"],"mappings":"2LAWA,SAAgBA,EAAO,EAAoD,CACzE,MAAO,kBAACC,EAAgB,KAAjB,CAAsB,YAAU,SAAS,GAAI,CAAQ,CAAA,CAC9D,CAEA,SAAgB,EAAY,EAAqD,CAC/E,MAAO,kBAACA,EAAgB,MAAjB,CAAuB,YAAU,eAAe,GAAI,CAAQ,CAAA,CACrE,CAEA,SAAgB,EAAY,EAAqD,CAC/E,MAAO,kBAACA,EAAgB,MAAjB,CAAuB,YAAU,eAAe,GAAI,CAAQ,CAAA,CACrE,CAEA,SAAgB,EAAc,CAAE,YAAW,WAAU,GAAG,GAAyD,CAC/G,MACE,kBAACA,EAAgB,QAAjB,CACE,YAAU,iBACV,UAAW,EACT,oVACA,CACF,EACA,GAAI,EANN,SAAA,CAQG,EACD,kBAACA,EAAgB,KAAjB,CAAsB,QAAA,GACpB,SAAA,kBAAC,EAAD,CAAiB,UAAU,kCAAoC,CAAA,CAC3C,CAAA,CACC,GAE7B,CAEA,SAAgB,EAAc,CAC5B,YACA,WAAW,SACX,aAAa,EACb,WACA,GAAG,GAC8C,CACjD,MACE,kBAACA,EAAgB,OAAjB,CAAA,SACE,kBAACA,EAAgB,QAAjB,CACE,YAAU,iBACA,WACE,aACZ,UAAW,EACT,oMACA,CACF,EACA,GAAI,EAEJ,SAAA,kBAACA,EAAgB,SAAjB,CAA0B,UAAU,MAAO,UAAmC,CAAA,CACvD,CAAA,CACH,CAAA,CAE5B,CAEA,SAAgB,EAAY,CAAE,YAAW,GAAG,GAAuD,CACjG,MACE,kBAACA,EAAgB,MAAjB,CACE,YAAU,eACV,UAAW,EAAG,wEAAyE,CAAS,EAChG,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAW,CAAE,YAAW,WAAU,GAAG,GAAsD,CACzG,MACE,kBAACA,EAAgB,KAAjB,CACE,YAAU,cACV,UAAW,EACT,2NACA,CACF,EACA,GAAI,EANN,SAAA,CAQE,kBAAC,OAAD,CAAM,UAAU,+EACd,SAAA,kBAACA,EAAgB,cAAjB,CAAA,SACE,kBAAC,EAAD,CAAW,UAAU,wBAA0B,CAAA,CAClB,CAAA,CAC3B,CAAA,EACN,kBAACA,EAAgB,SAAjB,CAA2B,UAAmC,CAAA,CAC1C,GAE1B,CAEA,SAAgB,EAAgB,CAAE,YAAW,GAAG,GAA2D,CACzG,MACE,kBAACA,EAAgB,UAAjB,CACE,YAAU,mBACV,UAAW,EAAG,gCAAiC,CAAS,EACxD,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime");function r({className:r,orientation:i=`horizontal`,decorative:a=!0,...o}){return(0,n.jsx)(t.Separator.Root,{"data-slot":`separator`,orientation:i,decorative:a,className:e.cn(`shrink-0 bg-doom-border-soft`,i===`vertical`?`h-full w-px`:`h-px w-full`,r),...o})}exports.Separator=r;
1
+ const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime");function r({className:r,orientation:i=`horizontal`,decorative:a=!0,...o}){return/* @__PURE__ */ (0,n.jsx)(t.Separator.Root,{"data-slot":`separator`,orientation:i,decorative:a,className:e.cn(`shrink-0 bg-doom-border-soft`,i===`vertical`?`h-full w-px`:`h-px w-full`,r),...o})}exports.Separator=r;
2
2
  //# sourceMappingURL=Separator.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Separator.cjs","names":["SeparatorPrimitive","cn"],"sources":["../../../src/components/Separator.tsx"],"sourcesContent":["import { Separator as SeparatorPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * A hairline in the soft border colour. Radix decides the semantics: a\n * decorative rule is hidden from assistive tech, a meaningful one keeps its\n * separator role, and either way the element carries `data-orientation` so a\n * consumer can style around it the way it does every other primitive.\n */\nexport function Separator({\n className,\n orientation = 'horizontal',\n decorative = true,\n ...props\n}: ComponentProps<typeof SeparatorPrimitive.Root>) {\n return (\n <SeparatorPrimitive.Root\n data-slot=\"separator\"\n orientation={orientation}\n decorative={decorative}\n className={cn(\n 'shrink-0 bg-doom-border-soft',\n orientation === 'vertical' ? 'h-full w-px' : 'h-px w-full',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"0FAWA,SAAgB,EAAU,CACxB,YACA,cAAc,aACd,aAAa,GACb,GAAG,GAC8C,CACjD,OACE,EAAA,EAAA,IAAA,CAACA,EAAAA,UAAmB,KAApB,CACE,YAAU,YACG,cACD,aACZ,UAAWC,EAAAA,GACT,+BACA,IAAgB,WAAa,cAAgB,cAC7C,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"Separator.cjs","names":["SeparatorPrimitive","cn"],"sources":["../../../src/components/Separator.tsx"],"sourcesContent":["import { Separator as SeparatorPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * A hairline in the soft border colour. Radix decides the semantics: a\n * decorative rule is hidden from assistive tech, a meaningful one keeps its\n * separator role, and either way the element carries `data-orientation` so a\n * consumer can style around it the way it does every other primitive.\n */\nexport function Separator({\n className,\n orientation = 'horizontal',\n decorative = true,\n ...props\n}: ComponentProps<typeof SeparatorPrimitive.Root>) {\n return (\n <SeparatorPrimitive.Root\n data-slot=\"separator\"\n orientation={orientation}\n decorative={decorative}\n className={cn(\n 'shrink-0 bg-doom-border-soft',\n orientation === 'vertical' ? 'h-full w-px' : 'h-px w-full',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"0FAWA,SAAgB,EAAU,CACxB,YACA,cAAc,aACd,aAAa,GACb,GAAG,GAC8C,CACjD,MACE,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,UAAmB,KAApB,CACE,YAAU,YACG,cACD,aACZ,UAAWC,EAAAA,GACT,+BACA,IAAgB,WAAa,cAAgB,cAC7C,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- import{cn as e}from"../lib/cn.mjs";import{Separator as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";function r({className:r,orientation:i=`horizontal`,decorative:a=!0,...o}){return n(t.Root,{"data-slot":`separator`,orientation:i,decorative:a,className:e(`shrink-0 bg-doom-border-soft`,i===`vertical`?`h-full w-px`:`h-px w-full`,r),...o})}export{r as Separator};
1
+ import{cn as e}from"../lib/cn.mjs";import{Separator as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";function r({className:r,orientation:i=`horizontal`,decorative:a=!0,...o}){return/* @__PURE__ */ n(t.Root,{"data-slot":`separator`,orientation:i,decorative:a,className:e(`shrink-0 bg-doom-border-soft`,i===`vertical`?`h-full w-px`:`h-px w-full`,r),...o})}export{r as Separator};
2
2
  //# sourceMappingURL=Separator.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Separator.mjs","names":["Separator","SeparatorPrimitive"],"sources":["../../../src/components/Separator.tsx"],"sourcesContent":["import { Separator as SeparatorPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * A hairline in the soft border colour. Radix decides the semantics: a\n * decorative rule is hidden from assistive tech, a meaningful one keeps its\n * separator role, and either way the element carries `data-orientation` so a\n * consumer can style around it the way it does every other primitive.\n */\nexport function Separator({\n className,\n orientation = 'horizontal',\n decorative = true,\n ...props\n}: ComponentProps<typeof SeparatorPrimitive.Root>) {\n return (\n <SeparatorPrimitive.Root\n data-slot=\"separator\"\n orientation={orientation}\n decorative={decorative}\n className={cn(\n 'shrink-0 bg-doom-border-soft',\n orientation === 'vertical' ? 'h-full w-px' : 'h-px w-full',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"gHAWA,SAAgBA,EAAU,CACxB,YACA,cAAc,aACd,aAAa,GACb,GAAG,GAC8C,CACjD,OACE,EAACC,EAAmB,KAApB,CACE,YAAU,YACG,cACD,aACZ,UAAW,EACT,+BACA,IAAgB,WAAa,cAAgB,cAC7C,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"Separator.mjs","names":["Separator","SeparatorPrimitive"],"sources":["../../../src/components/Separator.tsx"],"sourcesContent":["import { Separator as SeparatorPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * A hairline in the soft border colour. Radix decides the semantics: a\n * decorative rule is hidden from assistive tech, a meaningful one keeps its\n * separator role, and either way the element carries `data-orientation` so a\n * consumer can style around it the way it does every other primitive.\n */\nexport function Separator({\n className,\n orientation = 'horizontal',\n decorative = true,\n ...props\n}: ComponentProps<typeof SeparatorPrimitive.Root>) {\n return (\n <SeparatorPrimitive.Root\n data-slot=\"separator\"\n orientation={orientation}\n decorative={decorative}\n className={cn(\n 'shrink-0 bg-doom-border-soft',\n orientation === 'vertical' ? 'h-full w-px' : 'h-px w-full',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"gHAWA,SAAgBA,EAAU,CACxB,YACA,cAAc,aACd,aAAa,GACb,GAAG,GAC8C,CACjD,MACE,kBAACC,EAAmB,KAApB,CACE,YAAU,YACG,cACD,aACZ,UAAW,EACT,+BACA,IAAgB,WAAa,cAAgB,cAC7C,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- require("../icons/icons.cjs");const e=require("../lib/cn.cjs"),t=require("./Button.cjs");let n=require("radix-ui"),r=require("react/jsx-runtime"),i=require("lucide-react");function a(e){return(0,r.jsx)(n.Dialog.Root,{"data-slot":`sheet`,...e})}function o(e){return(0,r.jsx)(n.Dialog.Trigger,{"data-slot":`sheet-trigger`,...e})}function s(e){return(0,r.jsx)(n.Dialog.Close,{"data-slot":`sheet-close`,...e})}function c({className:t,...i}){return(0,r.jsx)(n.Dialog.Overlay,{"data-slot":`sheet-overlay`,className:e.cn(`fixed inset-0 z-40 bg-doom-deep/70 data-[state=open]:animate-doom-fade`,t),...i})}const l={right:`inset-y-0 right-0 border-l data-[state=open]:animate-doom-slide-right`,left:`inset-y-0 left-0 border-r data-[state=open]:animate-doom-slide-left`},u={sm:`w-[360px]`,md:`w-[440px]`,lg:`w-[560px]`};function d({className:t,children:i,side:a=`right`,width:o=`md`,...s}){return(0,r.jsxs)(n.Dialog.Portal,{children:[(0,r.jsx)(c,{}),(0,r.jsx)(n.Dialog.Content,{"data-slot":`sheet-content`,"data-side":a,className:e.cn(`fixed z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden border-doom-border bg-doom-rail font-mono shadow-2xl outline-none`,l[a],u[o],t),...s,children:i})]})}function f({className:a,dismissible:o=!0,closeLabel:s=`close`,children:c,...l}){return(0,r.jsxs)(`div`,{"data-slot":`sheet-header`,className:e.cn(`flex h-11 min-w-0 shrink-0 items-center gap-2.5 border-b border-doom-border px-4`,a),...l,children:[c,o?(0,r.jsx)(n.Dialog.Close,{asChild:!0,children:(0,r.jsx)(t.Button,{variant:`ghost`,size:`icon`,"aria-label":s,className:`text-doom-faint hover:text-doom-hi`,children:(0,r.jsx)(i.X,{className:`h-3 w-3`})})}):null]})}function p({className:t,...i}){return(0,r.jsx)(n.Dialog.Title,{"data-slot":`sheet-title`,className:e.cn(`truncate text-base font-bold text-doom-hi`,t),...i})}function m({className:t,...i}){return(0,r.jsx)(n.Dialog.Description,{"data-slot":`sheet-description`,className:e.cn(`text-sm leading-relaxed text-doom-dim`,t),...i})}function h({className:t,...n}){return(0,r.jsx)(`div`,{"data-slot":`sheet-body`,className:e.cn(`flex min-h-0 flex-1 flex-col gap-3 overflow-y-auto px-4 py-3`,t),...n})}function g({className:t,...n}){return(0,r.jsx)(`div`,{"data-slot":`sheet-footer`,className:e.cn(`flex min-h-[34px] shrink-0 flex-wrap items-center justify-between gap-2 border-t border-doom-border-soft bg-doom-deep px-4 py-1.5`,t),...n})}exports.Sheet=a,exports.SheetBody=h,exports.SheetClose=s,exports.SheetContent=d,exports.SheetDescription=m,exports.SheetFooter=g,exports.SheetHeader=f,exports.SheetOverlay=c,exports.SheetTitle=p,exports.SheetTrigger=o;
1
+ require("../icons/icons.cjs");const e=require("../lib/cn.cjs"),t=require("./Button.cjs");let n=require("radix-ui"),r=require("react/jsx-runtime"),i=require("lucide-react");function a(e){return/* @__PURE__ */ (0,r.jsx)(n.Dialog.Root,{"data-slot":`sheet`,...e})}function o(e){return/* @__PURE__ */ (0,r.jsx)(n.Dialog.Trigger,{"data-slot":`sheet-trigger`,...e})}function s(e){return/* @__PURE__ */ (0,r.jsx)(n.Dialog.Close,{"data-slot":`sheet-close`,...e})}function c({className:t,...i}){return/* @__PURE__ */ (0,r.jsx)(n.Dialog.Overlay,{"data-slot":`sheet-overlay`,className:e.cn(`fixed inset-0 z-40 bg-doom-deep/70 data-[state=open]:animate-doom-fade`,t),...i})}const l={right:`inset-y-0 right-0 border-l data-[state=open]:animate-doom-slide-right`,left:`inset-y-0 left-0 border-r data-[state=open]:animate-doom-slide-left`},u={sm:`w-[360px]`,md:`w-[440px]`,lg:`w-[560px]`};function d({className:t,children:i,side:a=`right`,width:o=`md`,...s}){return/* @__PURE__ */ (0,r.jsxs)(n.Dialog.Portal,{children:[/* @__PURE__ */ (0,r.jsx)(c,{}),/* @__PURE__ */ (0,r.jsx)(n.Dialog.Content,{"data-slot":`sheet-content`,"data-side":a,className:e.cn(`fixed z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden border-doom-border bg-doom-rail font-mono shadow-2xl outline-none`,l[a],u[o],t),...s,children:i})]})}function f({className:a,dismissible:o=!0,closeLabel:s=`close`,children:c,...l}){return/* @__PURE__ */ (0,r.jsxs)(`div`,{"data-slot":`sheet-header`,className:e.cn(`flex h-11 min-w-0 shrink-0 items-center gap-2.5 border-b border-doom-border px-4`,a),...l,children:[c,o?/* @__PURE__ */ (0,r.jsx)(n.Dialog.Close,{asChild:!0,children:/* @__PURE__ */ (0,r.jsx)(t.Button,{variant:`ghost`,size:`icon`,"aria-label":s,className:`text-doom-faint hover:text-doom-hi`,children:/* @__PURE__ */ (0,r.jsx)(i.X,{className:`h-3 w-3`})})}):null]})}function p({className:t,...i}){return/* @__PURE__ */ (0,r.jsx)(n.Dialog.Title,{"data-slot":`sheet-title`,className:e.cn(`truncate text-base font-bold text-doom-hi`,t),...i})}function m({className:t,...i}){return/* @__PURE__ */ (0,r.jsx)(n.Dialog.Description,{"data-slot":`sheet-description`,className:e.cn(`text-sm leading-relaxed text-doom-dim`,t),...i})}function h({className:t,...n}){return/* @__PURE__ */ (0,r.jsx)(`div`,{"data-slot":`sheet-body`,className:e.cn(`flex min-h-0 flex-1 flex-col gap-3 overflow-y-auto px-4 py-3`,t),...n})}function g({className:t,...n}){return/* @__PURE__ */ (0,r.jsx)(`div`,{"data-slot":`sheet-footer`,className:e.cn(`flex min-h-[34px] shrink-0 flex-wrap items-center justify-between gap-2 border-t border-doom-border-soft bg-doom-deep px-4 py-1.5`,t),...n})}exports.Sheet=a,exports.SheetBody=h,exports.SheetClose=s,exports.SheetContent=d,exports.SheetDescription=m,exports.SheetFooter=g,exports.SheetHeader=f,exports.SheetOverlay=c,exports.SheetTitle=p,exports.SheetTrigger=o;
2
2
  //# sourceMappingURL=Sheet.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Sheet.cjs","names":["SheetPrimitive","cn","Button","CloseIcon"],"sources":["../../../src/components/Sheet.tsx"],"sourcesContent":["import { Dialog as SheetPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { CloseIcon } from '../icons/icons';\nimport { cn } from '../lib/cn';\nimport { Button } from './Button';\n\n/**\n * A side panel on Radix's Dialog: an overlay that slides in from an edge,\n * with the focus trap, Escape, outside click and scroll lock a dialog has.\n *\n * It is the Dialog for content that reads as a column rather than a form: a\n * detail view beside what the reader was looking at. An inline aside cannot\n * do this, because it takes width from the surface underneath it.\n */\nexport function Sheet(props: ComponentProps<typeof SheetPrimitive.Root>) {\n return <SheetPrimitive.Root data-slot=\"sheet\" {...props} />;\n}\n\nexport function SheetTrigger(props: ComponentProps<typeof SheetPrimitive.Trigger>) {\n return <SheetPrimitive.Trigger data-slot=\"sheet-trigger\" {...props} />;\n}\n\nexport function SheetClose(props: ComponentProps<typeof SheetPrimitive.Close>) {\n return <SheetPrimitive.Close data-slot=\"sheet-close\" {...props} />;\n}\n\nexport function SheetOverlay({ className, ...props }: ComponentProps<typeof SheetPrimitive.Overlay>) {\n return (\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn('fixed inset-0 z-40 bg-doom-deep/70 data-[state=open]:animate-doom-fade', className)}\n {...props}\n />\n );\n}\n\nconst SIDE_POSITION = {\n right: 'inset-y-0 right-0 border-l data-[state=open]:animate-doom-slide-right',\n left: 'inset-y-0 left-0 border-r data-[state=open]:animate-doom-slide-left',\n} as const;\n\nexport interface SheetContentProps extends ComponentProps<typeof SheetPrimitive.Content> {\n /** Which edge it comes from. */\n side?: 'right' | 'left';\n /** Width preset; `className` may still override. */\n width?: 'sm' | 'md' | 'lg';\n}\n\nconst CONTENT_WIDTH = { sm: 'w-[360px]', md: 'w-[440px]', lg: 'w-[560px]' } as const;\n\nexport function SheetContent({ className, children, side = 'right', width = 'md', ...props }: SheetContentProps) {\n return (\n <SheetPrimitive.Portal>\n <SheetOverlay />\n <SheetPrimitive.Content\n data-slot=\"sheet-content\"\n data-side={side}\n className={cn(\n 'fixed z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden border-doom-border bg-doom-rail font-mono shadow-2xl outline-none',\n SIDE_POSITION[side],\n CONTENT_WIDTH[width],\n className,\n )}\n {...props}\n >\n {children}\n </SheetPrimitive.Content>\n </SheetPrimitive.Portal>\n );\n}\n\nexport interface SheetHeaderProps extends ComponentProps<'div'> {\n /** Show the close control at the right of the strip. On by default: a sheet is dismissed, not answered. */\n dismissible?: boolean;\n /** What the close control announces. */\n closeLabel?: string;\n}\n\nexport function SheetHeader({\n className,\n dismissible = true,\n closeLabel = 'close',\n children,\n ...props\n}: SheetHeaderProps) {\n return (\n <div\n data-slot=\"sheet-header\"\n className={cn('flex h-11 min-w-0 shrink-0 items-center gap-2.5 border-b border-doom-border px-4', className)}\n {...props}\n >\n {children}\n {dismissible ? (\n <SheetPrimitive.Close asChild>\n <Button variant=\"ghost\" size=\"icon\" aria-label={closeLabel} className=\"text-doom-faint hover:text-doom-hi\">\n <CloseIcon className=\"h-3 w-3\" />\n </Button>\n </SheetPrimitive.Close>\n ) : null}\n </div>\n );\n}\n\nexport function SheetTitle({ className, ...props }: ComponentProps<typeof SheetPrimitive.Title>) {\n return (\n <SheetPrimitive.Title\n data-slot=\"sheet-title\"\n className={cn('truncate text-base font-bold text-doom-hi', className)}\n {...props}\n />\n );\n}\n\nexport function SheetDescription({ className, ...props }: ComponentProps<typeof SheetPrimitive.Description>) {\n return (\n <SheetPrimitive.Description\n data-slot=\"sheet-description\"\n className={cn('text-sm leading-relaxed text-doom-dim', className)}\n {...props}\n />\n );\n}\n\nexport function SheetBody({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"sheet-body\"\n className={cn('flex min-h-0 flex-1 flex-col gap-3 overflow-y-auto px-4 py-3', className)}\n {...props}\n />\n );\n}\n\nexport function SheetFooter({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"sheet-footer\"\n className={cn(\n 'flex min-h-[34px] shrink-0 flex-wrap items-center justify-between gap-2 border-t border-doom-border-soft bg-doom-deep px-4 py-1.5',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"4KAeA,SAAgB,EAAM,EAAmD,CACvE,OAAO,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAe,KAAhB,CAAqB,YAAU,QAAQ,GAAI,CAAQ,CAAA,CAC5D,CAEA,SAAgB,EAAa,EAAsD,CACjF,OAAO,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAe,QAAhB,CAAwB,YAAU,gBAAgB,GAAI,CAAQ,CAAA,CACvE,CAEA,SAAgB,EAAW,EAAoD,CAC7E,OAAO,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAe,MAAhB,CAAsB,YAAU,cAAc,GAAI,CAAQ,CAAA,CACnE,CAEA,SAAgB,EAAa,CAAE,YAAW,GAAG,GAAwD,CACnG,OACE,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAe,QAAhB,CACE,YAAU,gBACV,UAAWC,EAAAA,GAAG,yEAA0E,CAAS,EACjG,GAAI,CACL,CAAA,CAEL,CAEA,MAAM,EAAgB,CACpB,MAAO,wEACP,KAAM,qEACR,EASM,EAAgB,CAAE,GAAI,YAAa,GAAI,YAAa,GAAI,WAAY,EAE1E,SAAgB,EAAa,CAAE,YAAW,WAAU,OAAO,QAAS,QAAQ,KAAM,GAAG,GAA4B,CAC/G,OACE,EAAA,EAAA,KAAA,CAACD,EAAAA,OAAe,OAAhB,CAAA,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,EAAD,CAAe,CAAA,GACf,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAe,QAAhB,CACE,YAAU,gBACV,YAAW,EACX,UAAWC,EAAAA,GACT,sIACA,EAAc,GACd,EAAc,GACd,CACF,EACA,GAAI,EAEH,UACqB,CAAA,CACH,CAAA,CAAA,CAE3B,CASA,SAAgB,EAAY,CAC1B,YACA,cAAc,GACd,aAAa,QACb,WACA,GAAG,GACgB,CACnB,OACE,EAAA,EAAA,KAAA,CAAC,MAAD,CACE,YAAU,eACV,UAAWA,EAAAA,GAAG,mFAAoF,CAAS,EAC3G,GAAI,EAHN,SAAA,CAKG,EACA,GACC,EAAA,EAAA,IAAA,CAACD,EAAAA,OAAe,MAAhB,CAAsB,QAAA,GACpB,UAAA,EAAA,EAAA,IAAA,CAACE,EAAAA,OAAD,CAAQ,QAAQ,QAAQ,KAAK,OAAO,aAAY,EAAY,UAAU,qCACpE,UAAA,EAAA,EAAA,IAAA,CAACC,EAAAA,EAAD,CAAW,UAAU,SAAW,CAAA,CAC1B,CAAA,CACY,CAAA,EACpB,IACD,GAET,CAEA,SAAgB,EAAW,CAAE,YAAW,GAAG,GAAsD,CAC/F,OACE,EAAA,EAAA,IAAA,CAACH,EAAAA,OAAe,MAAhB,CACE,YAAU,cACV,UAAWC,EAAAA,GAAG,4CAA6C,CAAS,EACpE,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAiB,CAAE,YAAW,GAAG,GAA4D,CAC3G,OACE,EAAA,EAAA,IAAA,CAACD,EAAAA,OAAe,YAAhB,CACE,YAAU,oBACV,UAAWC,EAAAA,GAAG,wCAAyC,CAAS,EAChE,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAU,CAAE,YAAW,GAAG,GAAgC,CACxE,OACE,EAAA,EAAA,IAAA,CAAC,MAAD,CACE,YAAU,aACV,UAAWA,EAAAA,GAAG,+DAAgE,CAAS,EACvF,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAY,CAAE,YAAW,GAAG,GAAgC,CAC1E,OACE,EAAA,EAAA,IAAA,CAAC,MAAD,CACE,YAAU,eACV,UAAWA,EAAAA,GACT,oIACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"Sheet.cjs","names":["SheetPrimitive","cn","Button","CloseIcon"],"sources":["../../../src/components/Sheet.tsx"],"sourcesContent":["import { Dialog as SheetPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { CloseIcon } from '../icons/icons';\nimport { cn } from '../lib/cn';\nimport { Button } from './Button';\n\n/**\n * A side panel on Radix's Dialog: an overlay that slides in from an edge,\n * with the focus trap, Escape, outside click and scroll lock a dialog has.\n *\n * It is the Dialog for content that reads as a column rather than a form: a\n * detail view beside what the reader was looking at. An inline aside cannot\n * do this, because it takes width from the surface underneath it.\n */\nexport function Sheet(props: ComponentProps<typeof SheetPrimitive.Root>) {\n return <SheetPrimitive.Root data-slot=\"sheet\" {...props} />;\n}\n\nexport function SheetTrigger(props: ComponentProps<typeof SheetPrimitive.Trigger>) {\n return <SheetPrimitive.Trigger data-slot=\"sheet-trigger\" {...props} />;\n}\n\nexport function SheetClose(props: ComponentProps<typeof SheetPrimitive.Close>) {\n return <SheetPrimitive.Close data-slot=\"sheet-close\" {...props} />;\n}\n\nexport function SheetOverlay({ className, ...props }: ComponentProps<typeof SheetPrimitive.Overlay>) {\n return (\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn('fixed inset-0 z-40 bg-doom-deep/70 data-[state=open]:animate-doom-fade', className)}\n {...props}\n />\n );\n}\n\nconst SIDE_POSITION = {\n right: 'inset-y-0 right-0 border-l data-[state=open]:animate-doom-slide-right',\n left: 'inset-y-0 left-0 border-r data-[state=open]:animate-doom-slide-left',\n} as const;\n\nexport interface SheetContentProps extends ComponentProps<typeof SheetPrimitive.Content> {\n /** Which edge it comes from. */\n side?: 'right' | 'left';\n /** Width preset; `className` may still override. */\n width?: 'sm' | 'md' | 'lg';\n}\n\nconst CONTENT_WIDTH = { sm: 'w-[360px]', md: 'w-[440px]', lg: 'w-[560px]' } as const;\n\nexport function SheetContent({ className, children, side = 'right', width = 'md', ...props }: SheetContentProps) {\n return (\n <SheetPrimitive.Portal>\n <SheetOverlay />\n <SheetPrimitive.Content\n data-slot=\"sheet-content\"\n data-side={side}\n className={cn(\n 'fixed z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden border-doom-border bg-doom-rail font-mono shadow-2xl outline-none',\n SIDE_POSITION[side],\n CONTENT_WIDTH[width],\n className,\n )}\n {...props}\n >\n {children}\n </SheetPrimitive.Content>\n </SheetPrimitive.Portal>\n );\n}\n\nexport interface SheetHeaderProps extends ComponentProps<'div'> {\n /** Show the close control at the right of the strip. On by default: a sheet is dismissed, not answered. */\n dismissible?: boolean;\n /** What the close control announces. */\n closeLabel?: string;\n}\n\nexport function SheetHeader({\n className,\n dismissible = true,\n closeLabel = 'close',\n children,\n ...props\n}: SheetHeaderProps) {\n return (\n <div\n data-slot=\"sheet-header\"\n className={cn('flex h-11 min-w-0 shrink-0 items-center gap-2.5 border-b border-doom-border px-4', className)}\n {...props}\n >\n {children}\n {dismissible ? (\n <SheetPrimitive.Close asChild>\n <Button variant=\"ghost\" size=\"icon\" aria-label={closeLabel} className=\"text-doom-faint hover:text-doom-hi\">\n <CloseIcon className=\"h-3 w-3\" />\n </Button>\n </SheetPrimitive.Close>\n ) : null}\n </div>\n );\n}\n\nexport function SheetTitle({ className, ...props }: ComponentProps<typeof SheetPrimitive.Title>) {\n return (\n <SheetPrimitive.Title\n data-slot=\"sheet-title\"\n className={cn('truncate text-base font-bold text-doom-hi', className)}\n {...props}\n />\n );\n}\n\nexport function SheetDescription({ className, ...props }: ComponentProps<typeof SheetPrimitive.Description>) {\n return (\n <SheetPrimitive.Description\n data-slot=\"sheet-description\"\n className={cn('text-sm leading-relaxed text-doom-dim', className)}\n {...props}\n />\n );\n}\n\nexport function SheetBody({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"sheet-body\"\n className={cn('flex min-h-0 flex-1 flex-col gap-3 overflow-y-auto px-4 py-3', className)}\n {...props}\n />\n );\n}\n\nexport function SheetFooter({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"sheet-footer\"\n className={cn(\n 'flex min-h-[34px] shrink-0 flex-wrap items-center justify-between gap-2 border-t border-doom-border-soft bg-doom-deep px-4 py-1.5',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"4KAeA,SAAgB,EAAM,EAAmD,CACvE,MAAO,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAe,KAAhB,CAAqB,YAAU,QAAQ,GAAI,CAAQ,CAAA,CAC5D,CAEA,SAAgB,EAAa,EAAsD,CACjF,MAAO,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAe,QAAhB,CAAwB,YAAU,gBAAgB,GAAI,CAAQ,CAAA,CACvE,CAEA,SAAgB,EAAW,EAAoD,CAC7E,MAAO,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAe,MAAhB,CAAsB,YAAU,cAAc,GAAI,CAAQ,CAAA,CACnE,CAEA,SAAgB,EAAa,CAAE,YAAW,GAAG,GAAwD,CACnG,MACE,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAe,QAAhB,CACE,YAAU,gBACV,UAAWC,EAAAA,GAAG,yEAA0E,CAAS,EACjG,GAAI,CACL,CAAA,CAEL,CAEA,MAAM,EAAgB,CACpB,MAAO,wEACP,KAAM,qEACR,EASM,EAAgB,CAAE,GAAI,YAAa,GAAI,YAAa,GAAI,WAAY,EAE1E,SAAgB,EAAa,CAAE,YAAW,WAAU,OAAO,QAAS,QAAQ,KAAM,GAAG,GAA4B,CAC/G,MACE,iBAAA,EAAA,EAAA,KAAA,CAACD,EAAAA,OAAe,OAAhB,CAAA,SAAA,CACE,iBAAA,EAAA,EAAA,IAAA,CAAC,EAAD,CAAe,CAAA,EACf,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,OAAe,QAAhB,CACE,YAAU,gBACV,YAAW,EACX,UAAWC,EAAAA,GACT,sIACA,EAAc,GACd,EAAc,GACd,CACF,EACA,GAAI,EAEH,UACqB,CAAA,CACH,CAAA,CAAA,CAE3B,CASA,SAAgB,EAAY,CAC1B,YACA,cAAc,GACd,aAAa,QACb,WACA,GAAG,GACgB,CACnB,MACE,iBAAA,EAAA,EAAA,KAAA,CAAC,MAAD,CACE,YAAU,eACV,UAAWA,EAAAA,GAAG,mFAAoF,CAAS,EAC3G,GAAI,EAHN,SAAA,CAKG,EACA,EACC,iBAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,OAAe,MAAhB,CAAsB,QAAA,GACpB,SAAA,iBAAA,EAAA,EAAA,IAAA,CAACE,EAAAA,OAAD,CAAQ,QAAQ,QAAQ,KAAK,OAAO,aAAY,EAAY,UAAU,qCACpE,SAAA,iBAAA,EAAA,EAAA,IAAA,CAACC,EAAAA,EAAD,CAAW,UAAU,SAAW,CAAA,CAC1B,CAAA,CACY,CAAA,EACpB,IACD,GAET,CAEA,SAAgB,EAAW,CAAE,YAAW,GAAG,GAAsD,CAC/F,MACE,iBAAA,EAAA,EAAA,IAAA,CAACH,EAAAA,OAAe,MAAhB,CACE,YAAU,cACV,UAAWC,EAAAA,GAAG,4CAA6C,CAAS,EACpE,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAiB,CAAE,YAAW,GAAG,GAA4D,CAC3G,MACE,iBAAA,EAAA,EAAA,IAAA,CAACD,EAAAA,OAAe,YAAhB,CACE,YAAU,oBACV,UAAWC,EAAAA,GAAG,wCAAyC,CAAS,EAChE,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAU,CAAE,YAAW,GAAG,GAAgC,CACxE,MACE,iBAAA,EAAA,EAAA,IAAA,CAAC,MAAD,CACE,YAAU,aACV,UAAWA,EAAAA,GAAG,+DAAgE,CAAS,EACvF,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAY,CAAE,YAAW,GAAG,GAAgC,CAC1E,MACE,iBAAA,EAAA,EAAA,IAAA,CAAC,MAAD,CACE,YAAU,eACV,UAAWA,EAAAA,GACT,oIACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- import{CloseIcon as e}from"../icons/icons.mjs";import{cn as t}from"../lib/cn.mjs";import{Button as n}from"./Button.mjs";import{Dialog as r}from"radix-ui";import{jsx as i,jsxs as a}from"react/jsx-runtime";function o(e){return i(r.Root,{"data-slot":`sheet`,...e})}function s(e){return i(r.Trigger,{"data-slot":`sheet-trigger`,...e})}function c(e){return i(r.Close,{"data-slot":`sheet-close`,...e})}function l({className:e,...n}){return i(r.Overlay,{"data-slot":`sheet-overlay`,className:t(`fixed inset-0 z-40 bg-doom-deep/70 data-[state=open]:animate-doom-fade`,e),...n})}const u={right:`inset-y-0 right-0 border-l data-[state=open]:animate-doom-slide-right`,left:`inset-y-0 left-0 border-r data-[state=open]:animate-doom-slide-left`},d={sm:`w-[360px]`,md:`w-[440px]`,lg:`w-[560px]`};function f({className:e,children:n,side:o=`right`,width:s=`md`,...c}){return a(r.Portal,{children:[i(l,{}),i(r.Content,{"data-slot":`sheet-content`,"data-side":o,className:t(`fixed z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden border-doom-border bg-doom-rail font-mono shadow-2xl outline-none`,u[o],d[s],e),...c,children:n})]})}function p({className:o,dismissible:s=!0,closeLabel:c=`close`,children:l,...u}){return a(`div`,{"data-slot":`sheet-header`,className:t(`flex h-11 min-w-0 shrink-0 items-center gap-2.5 border-b border-doom-border px-4`,o),...u,children:[l,s?i(r.Close,{asChild:!0,children:i(n,{variant:`ghost`,size:`icon`,"aria-label":c,className:`text-doom-faint hover:text-doom-hi`,children:i(e,{className:`h-3 w-3`})})}):null]})}function m({className:e,...n}){return i(r.Title,{"data-slot":`sheet-title`,className:t(`truncate text-base font-bold text-doom-hi`,e),...n})}function h({className:e,...n}){return i(r.Description,{"data-slot":`sheet-description`,className:t(`text-sm leading-relaxed text-doom-dim`,e),...n})}function g({className:e,...n}){return i(`div`,{"data-slot":`sheet-body`,className:t(`flex min-h-0 flex-1 flex-col gap-3 overflow-y-auto px-4 py-3`,e),...n})}function _({className:e,...n}){return i(`div`,{"data-slot":`sheet-footer`,className:t(`flex min-h-[34px] shrink-0 flex-wrap items-center justify-between gap-2 border-t border-doom-border-soft bg-doom-deep px-4 py-1.5`,e),...n})}export{o as Sheet,g as SheetBody,c as SheetClose,f as SheetContent,h as SheetDescription,_ as SheetFooter,p as SheetHeader,l as SheetOverlay,m as SheetTitle,s as SheetTrigger};
1
+ import{CloseIcon as e}from"../icons/icons.mjs";import{cn as t}from"../lib/cn.mjs";import{Button as n}from"./Button.mjs";import{Dialog as r}from"radix-ui";import{jsx as i,jsxs as a}from"react/jsx-runtime";function o(e){return/* @__PURE__ */ i(r.Root,{"data-slot":`sheet`,...e})}function s(e){return/* @__PURE__ */ i(r.Trigger,{"data-slot":`sheet-trigger`,...e})}function c(e){return/* @__PURE__ */ i(r.Close,{"data-slot":`sheet-close`,...e})}function l({className:e,...n}){return/* @__PURE__ */ i(r.Overlay,{"data-slot":`sheet-overlay`,className:t(`fixed inset-0 z-40 bg-doom-deep/70 data-[state=open]:animate-doom-fade`,e),...n})}const u={right:`inset-y-0 right-0 border-l data-[state=open]:animate-doom-slide-right`,left:`inset-y-0 left-0 border-r data-[state=open]:animate-doom-slide-left`},d={sm:`w-[360px]`,md:`w-[440px]`,lg:`w-[560px]`};function f({className:e,children:n,side:o=`right`,width:s=`md`,...c}){return/* @__PURE__ */ a(r.Portal,{children:[/* @__PURE__ */ i(l,{}),/* @__PURE__ */ i(r.Content,{"data-slot":`sheet-content`,"data-side":o,className:t(`fixed z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden border-doom-border bg-doom-rail font-mono shadow-2xl outline-none`,u[o],d[s],e),...c,children:n})]})}function p({className:o,dismissible:s=!0,closeLabel:c=`close`,children:l,...u}){return/* @__PURE__ */ a(`div`,{"data-slot":`sheet-header`,className:t(`flex h-11 min-w-0 shrink-0 items-center gap-2.5 border-b border-doom-border px-4`,o),...u,children:[l,s?/* @__PURE__ */ i(r.Close,{asChild:!0,children:/* @__PURE__ */ i(n,{variant:`ghost`,size:`icon`,"aria-label":c,className:`text-doom-faint hover:text-doom-hi`,children:/* @__PURE__ */ i(e,{className:`h-3 w-3`})})}):null]})}function m({className:e,...n}){return/* @__PURE__ */ i(r.Title,{"data-slot":`sheet-title`,className:t(`truncate text-base font-bold text-doom-hi`,e),...n})}function h({className:e,...n}){return/* @__PURE__ */ i(r.Description,{"data-slot":`sheet-description`,className:t(`text-sm leading-relaxed text-doom-dim`,e),...n})}function g({className:e,...n}){return/* @__PURE__ */ i(`div`,{"data-slot":`sheet-body`,className:t(`flex min-h-0 flex-1 flex-col gap-3 overflow-y-auto px-4 py-3`,e),...n})}function _({className:e,...n}){return/* @__PURE__ */ i(`div`,{"data-slot":`sheet-footer`,className:t(`flex min-h-[34px] shrink-0 flex-wrap items-center justify-between gap-2 border-t border-doom-border-soft bg-doom-deep px-4 py-1.5`,e),...n})}export{o as Sheet,g as SheetBody,c as SheetClose,f as SheetContent,h as SheetDescription,_ as SheetFooter,p as SheetHeader,l as SheetOverlay,m as SheetTitle,s as SheetTrigger};
2
2
  //# sourceMappingURL=Sheet.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Sheet.mjs","names":["SheetPrimitive"],"sources":["../../../src/components/Sheet.tsx"],"sourcesContent":["import { Dialog as SheetPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { CloseIcon } from '../icons/icons';\nimport { cn } from '../lib/cn';\nimport { Button } from './Button';\n\n/**\n * A side panel on Radix's Dialog: an overlay that slides in from an edge,\n * with the focus trap, Escape, outside click and scroll lock a dialog has.\n *\n * It is the Dialog for content that reads as a column rather than a form: a\n * detail view beside what the reader was looking at. An inline aside cannot\n * do this, because it takes width from the surface underneath it.\n */\nexport function Sheet(props: ComponentProps<typeof SheetPrimitive.Root>) {\n return <SheetPrimitive.Root data-slot=\"sheet\" {...props} />;\n}\n\nexport function SheetTrigger(props: ComponentProps<typeof SheetPrimitive.Trigger>) {\n return <SheetPrimitive.Trigger data-slot=\"sheet-trigger\" {...props} />;\n}\n\nexport function SheetClose(props: ComponentProps<typeof SheetPrimitive.Close>) {\n return <SheetPrimitive.Close data-slot=\"sheet-close\" {...props} />;\n}\n\nexport function SheetOverlay({ className, ...props }: ComponentProps<typeof SheetPrimitive.Overlay>) {\n return (\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn('fixed inset-0 z-40 bg-doom-deep/70 data-[state=open]:animate-doom-fade', className)}\n {...props}\n />\n );\n}\n\nconst SIDE_POSITION = {\n right: 'inset-y-0 right-0 border-l data-[state=open]:animate-doom-slide-right',\n left: 'inset-y-0 left-0 border-r data-[state=open]:animate-doom-slide-left',\n} as const;\n\nexport interface SheetContentProps extends ComponentProps<typeof SheetPrimitive.Content> {\n /** Which edge it comes from. */\n side?: 'right' | 'left';\n /** Width preset; `className` may still override. */\n width?: 'sm' | 'md' | 'lg';\n}\n\nconst CONTENT_WIDTH = { sm: 'w-[360px]', md: 'w-[440px]', lg: 'w-[560px]' } as const;\n\nexport function SheetContent({ className, children, side = 'right', width = 'md', ...props }: SheetContentProps) {\n return (\n <SheetPrimitive.Portal>\n <SheetOverlay />\n <SheetPrimitive.Content\n data-slot=\"sheet-content\"\n data-side={side}\n className={cn(\n 'fixed z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden border-doom-border bg-doom-rail font-mono shadow-2xl outline-none',\n SIDE_POSITION[side],\n CONTENT_WIDTH[width],\n className,\n )}\n {...props}\n >\n {children}\n </SheetPrimitive.Content>\n </SheetPrimitive.Portal>\n );\n}\n\nexport interface SheetHeaderProps extends ComponentProps<'div'> {\n /** Show the close control at the right of the strip. On by default: a sheet is dismissed, not answered. */\n dismissible?: boolean;\n /** What the close control announces. */\n closeLabel?: string;\n}\n\nexport function SheetHeader({\n className,\n dismissible = true,\n closeLabel = 'close',\n children,\n ...props\n}: SheetHeaderProps) {\n return (\n <div\n data-slot=\"sheet-header\"\n className={cn('flex h-11 min-w-0 shrink-0 items-center gap-2.5 border-b border-doom-border px-4', className)}\n {...props}\n >\n {children}\n {dismissible ? (\n <SheetPrimitive.Close asChild>\n <Button variant=\"ghost\" size=\"icon\" aria-label={closeLabel} className=\"text-doom-faint hover:text-doom-hi\">\n <CloseIcon className=\"h-3 w-3\" />\n </Button>\n </SheetPrimitive.Close>\n ) : null}\n </div>\n );\n}\n\nexport function SheetTitle({ className, ...props }: ComponentProps<typeof SheetPrimitive.Title>) {\n return (\n <SheetPrimitive.Title\n data-slot=\"sheet-title\"\n className={cn('truncate text-base font-bold text-doom-hi', className)}\n {...props}\n />\n );\n}\n\nexport function SheetDescription({ className, ...props }: ComponentProps<typeof SheetPrimitive.Description>) {\n return (\n <SheetPrimitive.Description\n data-slot=\"sheet-description\"\n className={cn('text-sm leading-relaxed text-doom-dim', className)}\n {...props}\n />\n );\n}\n\nexport function SheetBody({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"sheet-body\"\n className={cn('flex min-h-0 flex-1 flex-col gap-3 overflow-y-auto px-4 py-3', className)}\n {...props}\n />\n );\n}\n\nexport function SheetFooter({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"sheet-footer\"\n className={cn(\n 'flex min-h-[34px] shrink-0 flex-wrap items-center justify-between gap-2 border-t border-doom-border-soft bg-doom-deep px-4 py-1.5',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"4MAeA,SAAgB,EAAM,EAAmD,CACvE,OAAO,EAACA,EAAe,KAAhB,CAAqB,YAAU,QAAQ,GAAI,CAAQ,CAAA,CAC5D,CAEA,SAAgB,EAAa,EAAsD,CACjF,OAAO,EAACA,EAAe,QAAhB,CAAwB,YAAU,gBAAgB,GAAI,CAAQ,CAAA,CACvE,CAEA,SAAgB,EAAW,EAAoD,CAC7E,OAAO,EAACA,EAAe,MAAhB,CAAsB,YAAU,cAAc,GAAI,CAAQ,CAAA,CACnE,CAEA,SAAgB,EAAa,CAAE,YAAW,GAAG,GAAwD,CACnG,OACE,EAACA,EAAe,QAAhB,CACE,YAAU,gBACV,UAAW,EAAG,yEAA0E,CAAS,EACjG,GAAI,CACL,CAAA,CAEL,CAEA,MAAM,EAAgB,CACpB,MAAO,wEACP,KAAM,qEACR,EASM,EAAgB,CAAE,GAAI,YAAa,GAAI,YAAa,GAAI,WAAY,EAE1E,SAAgB,EAAa,CAAE,YAAW,WAAU,OAAO,QAAS,QAAQ,KAAM,GAAG,GAA4B,CAC/G,OACE,EAACA,EAAe,OAAhB,CAAA,SAAA,CACE,EAAC,EAAD,CAAe,CAAA,EACf,EAACA,EAAe,QAAhB,CACE,YAAU,gBACV,YAAW,EACX,UAAW,EACT,sIACA,EAAc,GACd,EAAc,GACd,CACF,EACA,GAAI,EAEH,UACqB,CAAA,CACH,CAAA,CAAA,CAE3B,CASA,SAAgB,EAAY,CAC1B,YACA,cAAc,GACd,aAAa,QACb,WACA,GAAG,GACgB,CACnB,OACE,EAAC,MAAD,CACE,YAAU,eACV,UAAW,EAAG,mFAAoF,CAAS,EAC3G,GAAI,EAHN,SAAA,CAKG,EACA,EACC,EAACA,EAAe,MAAhB,CAAsB,QAAA,GACpB,SAAA,EAAC,EAAD,CAAQ,QAAQ,QAAQ,KAAK,OAAO,aAAY,EAAY,UAAU,qCACpE,SAAA,EAAC,EAAD,CAAW,UAAU,SAAW,CAAA,CAC1B,CAAA,CACY,CAAA,EACpB,IACD,GAET,CAEA,SAAgB,EAAW,CAAE,YAAW,GAAG,GAAsD,CAC/F,OACE,EAACA,EAAe,MAAhB,CACE,YAAU,cACV,UAAW,EAAG,4CAA6C,CAAS,EACpE,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAiB,CAAE,YAAW,GAAG,GAA4D,CAC3G,OACE,EAACA,EAAe,YAAhB,CACE,YAAU,oBACV,UAAW,EAAG,wCAAyC,CAAS,EAChE,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAU,CAAE,YAAW,GAAG,GAAgC,CACxE,OACE,EAAC,MAAD,CACE,YAAU,aACV,UAAW,EAAG,+DAAgE,CAAS,EACvF,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAY,CAAE,YAAW,GAAG,GAAgC,CAC1E,OACE,EAAC,MAAD,CACE,YAAU,eACV,UAAW,EACT,oIACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"Sheet.mjs","names":["SheetPrimitive"],"sources":["../../../src/components/Sheet.tsx"],"sourcesContent":["import { Dialog as SheetPrimitive } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { CloseIcon } from '../icons/icons';\nimport { cn } from '../lib/cn';\nimport { Button } from './Button';\n\n/**\n * A side panel on Radix's Dialog: an overlay that slides in from an edge,\n * with the focus trap, Escape, outside click and scroll lock a dialog has.\n *\n * It is the Dialog for content that reads as a column rather than a form: a\n * detail view beside what the reader was looking at. An inline aside cannot\n * do this, because it takes width from the surface underneath it.\n */\nexport function Sheet(props: ComponentProps<typeof SheetPrimitive.Root>) {\n return <SheetPrimitive.Root data-slot=\"sheet\" {...props} />;\n}\n\nexport function SheetTrigger(props: ComponentProps<typeof SheetPrimitive.Trigger>) {\n return <SheetPrimitive.Trigger data-slot=\"sheet-trigger\" {...props} />;\n}\n\nexport function SheetClose(props: ComponentProps<typeof SheetPrimitive.Close>) {\n return <SheetPrimitive.Close data-slot=\"sheet-close\" {...props} />;\n}\n\nexport function SheetOverlay({ className, ...props }: ComponentProps<typeof SheetPrimitive.Overlay>) {\n return (\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn('fixed inset-0 z-40 bg-doom-deep/70 data-[state=open]:animate-doom-fade', className)}\n {...props}\n />\n );\n}\n\nconst SIDE_POSITION = {\n right: 'inset-y-0 right-0 border-l data-[state=open]:animate-doom-slide-right',\n left: 'inset-y-0 left-0 border-r data-[state=open]:animate-doom-slide-left',\n} as const;\n\nexport interface SheetContentProps extends ComponentProps<typeof SheetPrimitive.Content> {\n /** Which edge it comes from. */\n side?: 'right' | 'left';\n /** Width preset; `className` may still override. */\n width?: 'sm' | 'md' | 'lg';\n}\n\nconst CONTENT_WIDTH = { sm: 'w-[360px]', md: 'w-[440px]', lg: 'w-[560px]' } as const;\n\nexport function SheetContent({ className, children, side = 'right', width = 'md', ...props }: SheetContentProps) {\n return (\n <SheetPrimitive.Portal>\n <SheetOverlay />\n <SheetPrimitive.Content\n data-slot=\"sheet-content\"\n data-side={side}\n className={cn(\n 'fixed z-50 flex max-w-[calc(100vw-24px)] flex-col overflow-hidden border-doom-border bg-doom-rail font-mono shadow-2xl outline-none',\n SIDE_POSITION[side],\n CONTENT_WIDTH[width],\n className,\n )}\n {...props}\n >\n {children}\n </SheetPrimitive.Content>\n </SheetPrimitive.Portal>\n );\n}\n\nexport interface SheetHeaderProps extends ComponentProps<'div'> {\n /** Show the close control at the right of the strip. On by default: a sheet is dismissed, not answered. */\n dismissible?: boolean;\n /** What the close control announces. */\n closeLabel?: string;\n}\n\nexport function SheetHeader({\n className,\n dismissible = true,\n closeLabel = 'close',\n children,\n ...props\n}: SheetHeaderProps) {\n return (\n <div\n data-slot=\"sheet-header\"\n className={cn('flex h-11 min-w-0 shrink-0 items-center gap-2.5 border-b border-doom-border px-4', className)}\n {...props}\n >\n {children}\n {dismissible ? (\n <SheetPrimitive.Close asChild>\n <Button variant=\"ghost\" size=\"icon\" aria-label={closeLabel} className=\"text-doom-faint hover:text-doom-hi\">\n <CloseIcon className=\"h-3 w-3\" />\n </Button>\n </SheetPrimitive.Close>\n ) : null}\n </div>\n );\n}\n\nexport function SheetTitle({ className, ...props }: ComponentProps<typeof SheetPrimitive.Title>) {\n return (\n <SheetPrimitive.Title\n data-slot=\"sheet-title\"\n className={cn('truncate text-base font-bold text-doom-hi', className)}\n {...props}\n />\n );\n}\n\nexport function SheetDescription({ className, ...props }: ComponentProps<typeof SheetPrimitive.Description>) {\n return (\n <SheetPrimitive.Description\n data-slot=\"sheet-description\"\n className={cn('text-sm leading-relaxed text-doom-dim', className)}\n {...props}\n />\n );\n}\n\nexport function SheetBody({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"sheet-body\"\n className={cn('flex min-h-0 flex-1 flex-col gap-3 overflow-y-auto px-4 py-3', className)}\n {...props}\n />\n );\n}\n\nexport function SheetFooter({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"sheet-footer\"\n className={cn(\n 'flex min-h-[34px] shrink-0 flex-wrap items-center justify-between gap-2 border-t border-doom-border-soft bg-doom-deep px-4 py-1.5',\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":"4MAeA,SAAgB,EAAM,EAAmD,CACvE,MAAO,kBAACA,EAAe,KAAhB,CAAqB,YAAU,QAAQ,GAAI,CAAQ,CAAA,CAC5D,CAEA,SAAgB,EAAa,EAAsD,CACjF,MAAO,kBAACA,EAAe,QAAhB,CAAwB,YAAU,gBAAgB,GAAI,CAAQ,CAAA,CACvE,CAEA,SAAgB,EAAW,EAAoD,CAC7E,MAAO,kBAACA,EAAe,MAAhB,CAAsB,YAAU,cAAc,GAAI,CAAQ,CAAA,CACnE,CAEA,SAAgB,EAAa,CAAE,YAAW,GAAG,GAAwD,CACnG,MACE,kBAACA,EAAe,QAAhB,CACE,YAAU,gBACV,UAAW,EAAG,yEAA0E,CAAS,EACjG,GAAI,CACL,CAAA,CAEL,CAEA,MAAM,EAAgB,CACpB,MAAO,wEACP,KAAM,qEACR,EASM,EAAgB,CAAE,GAAI,YAAa,GAAI,YAAa,GAAI,WAAY,EAE1E,SAAgB,EAAa,CAAE,YAAW,WAAU,OAAO,QAAS,QAAQ,KAAM,GAAG,GAA4B,CAC/G,MACE,kBAACA,EAAe,OAAhB,CAAA,SAAA,CACE,kBAAC,EAAD,CAAe,CAAA,EACf,kBAACA,EAAe,QAAhB,CACE,YAAU,gBACV,YAAW,EACX,UAAW,EACT,sIACA,EAAc,GACd,EAAc,GACd,CACF,EACA,GAAI,EAEH,UACqB,CAAA,CACH,CAAA,CAAA,CAE3B,CASA,SAAgB,EAAY,CAC1B,YACA,cAAc,GACd,aAAa,QACb,WACA,GAAG,GACgB,CACnB,MACE,kBAAC,MAAD,CACE,YAAU,eACV,UAAW,EAAG,mFAAoF,CAAS,EAC3G,GAAI,EAHN,SAAA,CAKG,EACA,EACC,kBAACA,EAAe,MAAhB,CAAsB,QAAA,GACpB,SAAA,kBAAC,EAAD,CAAQ,QAAQ,QAAQ,KAAK,OAAO,aAAY,EAAY,UAAU,qCACpE,SAAA,kBAAC,EAAD,CAAW,UAAU,SAAW,CAAA,CAC1B,CAAA,CACY,CAAA,EACpB,IACD,GAET,CAEA,SAAgB,EAAW,CAAE,YAAW,GAAG,GAAsD,CAC/F,MACE,kBAACA,EAAe,MAAhB,CACE,YAAU,cACV,UAAW,EAAG,4CAA6C,CAAS,EACpE,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAiB,CAAE,YAAW,GAAG,GAA4D,CAC3G,MACE,kBAACA,EAAe,YAAhB,CACE,YAAU,oBACV,UAAW,EAAG,wCAAyC,CAAS,EAChE,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAU,CAAE,YAAW,GAAG,GAAgC,CACxE,MACE,kBAAC,MAAD,CACE,YAAU,aACV,UAAW,EAAG,+DAAgE,CAAS,EACvF,GAAI,CACL,CAAA,CAEL,CAEA,SAAgB,EAAY,CAAE,YAAW,GAAG,GAAgC,CAC1E,MACE,kBAAC,MAAD,CACE,YAAU,eACV,UAAW,EACT,oIACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- const e=require("../lib/cn.cjs");let t=require("react/jsx-runtime");function n({className:n,...r}){return(0,t.jsx)(`div`,{"data-slot":`skeleton`,"aria-hidden":!0,className:e.cn(`animate-pulse rounded bg-doom-border-soft`,n),...r})}exports.Skeleton=n;
1
+ const e=require("../lib/cn.cjs");let t=require("react/jsx-runtime");function n({className:n,...r}){return/* @__PURE__ */ (0,t.jsx)(`div`,{"data-slot":`skeleton`,"aria-hidden":!0,className:e.cn(`animate-pulse rounded bg-doom-border-soft`,n),...r})}exports.Skeleton=n;
2
2
  //# sourceMappingURL=Skeleton.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton.cjs","names":["cn"],"sources":["../../../src/components/Skeleton.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * The shape of content that has not arrived. It has no Radix counterpart; it\n * is a pulsing block, and it is aria-hidden because the live region that\n * announces the wait belongs to the surface, not to each placeholder.\n */\nexport function Skeleton({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"skeleton\"\n aria-hidden\n className={cn('animate-pulse rounded bg-doom-border-soft', className)}\n {...props}\n />\n );\n}\n"],"mappings":"oEASA,SAAgB,EAAS,CAAE,YAAW,GAAG,GAAgC,CACvE,OACE,EAAA,EAAA,IAAA,CAAC,MAAD,CACE,YAAU,WACV,cAAA,GACA,UAAWA,EAAAA,GAAG,4CAA6C,CAAS,EACpE,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"Skeleton.cjs","names":["cn"],"sources":["../../../src/components/Skeleton.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * The shape of content that has not arrived. It has no Radix counterpart; it\n * is a pulsing block, and it is aria-hidden because the live region that\n * announces the wait belongs to the surface, not to each placeholder.\n */\nexport function Skeleton({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"skeleton\"\n aria-hidden\n className={cn('animate-pulse rounded bg-doom-border-soft', className)}\n {...props}\n />\n );\n}\n"],"mappings":"oEASA,SAAgB,EAAS,CAAE,YAAW,GAAG,GAAgC,CACvE,MACE,iBAAA,EAAA,EAAA,IAAA,CAAC,MAAD,CACE,YAAU,WACV,cAAA,GACA,UAAWA,EAAAA,GAAG,4CAA6C,CAAS,EACpE,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- import{cn as e}from"../lib/cn.mjs";import{jsx as t}from"react/jsx-runtime";function n({className:n,...r}){return t(`div`,{"data-slot":`skeleton`,"aria-hidden":!0,className:e(`animate-pulse rounded bg-doom-border-soft`,n),...r})}export{n as Skeleton};
1
+ import{cn as e}from"../lib/cn.mjs";import{jsx as t}from"react/jsx-runtime";function n({className:n,...r}){return/* @__PURE__ */ t(`div`,{"data-slot":`skeleton`,"aria-hidden":!0,className:e(`animate-pulse rounded bg-doom-border-soft`,n),...r})}export{n as Skeleton};
2
2
  //# sourceMappingURL=Skeleton.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton.mjs","names":[],"sources":["../../../src/components/Skeleton.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * The shape of content that has not arrived. It has no Radix counterpart; it\n * is a pulsing block, and it is aria-hidden because the live region that\n * announces the wait belongs to the surface, not to each placeholder.\n */\nexport function Skeleton({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"skeleton\"\n aria-hidden\n className={cn('animate-pulse rounded bg-doom-border-soft', className)}\n {...props}\n />\n );\n}\n"],"mappings":"2EASA,SAAgB,EAAS,CAAE,YAAW,GAAG,GAAgC,CACvE,OACE,EAAC,MAAD,CACE,YAAU,WACV,cAAA,GACA,UAAW,EAAG,4CAA6C,CAAS,EACpE,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"Skeleton.mjs","names":[],"sources":["../../../src/components/Skeleton.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\n/**\n * The shape of content that has not arrived. It has no Radix counterpart; it\n * is a pulsing block, and it is aria-hidden because the live region that\n * announces the wait belongs to the surface, not to each placeholder.\n */\nexport function Skeleton({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"skeleton\"\n aria-hidden\n className={cn('animate-pulse rounded bg-doom-border-soft', className)}\n {...props}\n />\n );\n}\n"],"mappings":"2EASA,SAAgB,EAAS,CAAE,YAAW,GAAG,GAAgC,CACvE,MACE,kBAAC,MAAD,CACE,YAAU,WACV,cAAA,GACA,UAAW,EAAG,4CAA6C,CAAS,EACpE,GAAI,CACL,CAAA,CAEL"}
@@ -1,2 +1,2 @@
1
- require("../icons/icons.cjs");const e=require("../lib/cn.cjs");let t=require("react/jsx-runtime"),n=require("lucide-react");function r({className:r,label:i,...a}){let o=(0,t.jsx)(n.Loader2,{"data-slot":`spinner`,"aria-hidden":!0,className:e.cn(`h-3 w-3 animate-spin`,r),...a});return i===void 0?o:(0,t.jsxs)(`output`,{"data-slot":`spinner-status`,className:`inline-flex items-center`,children:[o,(0,t.jsx)(`span`,{className:`sr-only`,children:i})]})}exports.Spinner=r;
1
+ require("../icons/icons.cjs");const e=require("../lib/cn.cjs");let t=require("react/jsx-runtime"),n=require("lucide-react");function r({className:r,label:i,...a}){let o=/* @__PURE__ */ (0,t.jsx)(n.Loader2,{"data-slot":`spinner`,"aria-hidden":!0,className:e.cn(`h-3 w-3 animate-spin`,r),...a});return i===void 0?o:/* @__PURE__ */ (0,t.jsxs)(`output`,{"data-slot":`spinner-status`,className:`inline-flex items-center`,children:[o,/* @__PURE__ */ (0,t.jsx)(`span`,{className:`sr-only`,children:i})]})}exports.Spinner=r;
2
2
  //# sourceMappingURL=Spinner.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Spinner.cjs","names":["LoaderIcon","cn"],"sources":["../../../src/components/Spinner.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { LoaderIcon } from '../icons/icons';\nimport { cn } from '../lib/cn';\n\nexport interface SpinnerProps extends ComponentProps<'svg'> {\n /**\n * What the wait is for. Given one, the spinner announces itself as a live\n * status instead of staying silent, which is the difference between a\n * screen reader saying \"loading providers\" and saying nothing at all.\n */\n label?: string;\n}\n\n/** A turning loader in the current text colour; decorative unless it is given a label. */\nexport function Spinner({ className, label, ...props }: SpinnerProps) {\n const icon = (\n <LoaderIcon data-slot=\"spinner\" aria-hidden className={cn('h-3 w-3 animate-spin', className)} {...props} />\n );\n if (label === undefined) return icon;\n return (\n <output data-slot=\"spinner-status\" className=\"inline-flex items-center\">\n {icon}\n <span className=\"sr-only\">{label}</span>\n </output>\n );\n}\n"],"mappings":"4HAeA,SAAgB,EAAQ,CAAE,YAAW,QAAO,GAAG,GAAuB,CACpE,IAAM,GACJ,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAD,CAAY,YAAU,UAAU,cAAA,GAAY,UAAWC,EAAAA,GAAG,uBAAwB,CAAS,EAAG,GAAI,CAAQ,CAAA,EAG5G,OADI,IAAU,IAAA,GAAkB,GAE9B,EAAA,EAAA,KAAA,CAAC,SAAD,CAAQ,YAAU,iBAAiB,UAAU,2BAA7C,SAAA,CACG,GACD,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,UAAW,SAAA,CAAY,CAAA,CACjC,GAEZ"}
1
+ {"version":3,"file":"Spinner.cjs","names":["LoaderIcon","cn"],"sources":["../../../src/components/Spinner.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { LoaderIcon } from '../icons/icons';\nimport { cn } from '../lib/cn';\n\nexport interface SpinnerProps extends ComponentProps<'svg'> {\n /**\n * What the wait is for. Given one, the spinner announces itself as a live\n * status instead of staying silent, which is the difference between a\n * screen reader saying \"loading providers\" and saying nothing at all.\n */\n label?: string;\n}\n\n/** A turning loader in the current text colour; decorative unless it is given a label. */\nexport function Spinner({ className, label, ...props }: SpinnerProps) {\n const icon = (\n <LoaderIcon data-slot=\"spinner\" aria-hidden className={cn('h-3 w-3 animate-spin', className)} {...props} />\n );\n if (label === undefined) return icon;\n return (\n <output data-slot=\"spinner-status\" className=\"inline-flex items-center\">\n {icon}\n <span className=\"sr-only\">{label}</span>\n </output>\n );\n}\n"],"mappings":"4HAeA,SAAgB,EAAQ,CAAE,YAAW,QAAO,GAAG,GAAuB,CACpE,IAAM,EACJ,iBAAA,EAAA,EAAA,IAAA,CAACA,EAAAA,QAAD,CAAY,YAAU,UAAU,cAAA,GAAY,UAAWC,EAAAA,GAAG,uBAAwB,CAAS,EAAG,GAAI,CAAQ,CAAA,EAG5G,OADI,IAAU,IAAA,GAAkB,EAE9B,iBAAA,EAAA,EAAA,KAAA,CAAC,SAAD,CAAQ,YAAU,iBAAiB,UAAU,2BAA7C,SAAA,CACG,EACD,iBAAA,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,UAAW,SAAA,CAAY,CAAA,CACjC,GAEZ"}
@@ -1,2 +1,2 @@
1
- import{LoaderIcon as e}from"../icons/icons.mjs";import{cn as t}from"../lib/cn.mjs";import{jsx as n,jsxs as r}from"react/jsx-runtime";function i({className:i,label:a,...o}){let s=n(e,{"data-slot":`spinner`,"aria-hidden":!0,className:t(`h-3 w-3 animate-spin`,i),...o});return a===void 0?s:r(`output`,{"data-slot":`spinner-status`,className:`inline-flex items-center`,children:[s,n(`span`,{className:`sr-only`,children:a})]})}export{i as Spinner};
1
+ import{LoaderIcon as e}from"../icons/icons.mjs";import{cn as t}from"../lib/cn.mjs";import{jsx as n,jsxs as r}from"react/jsx-runtime";function i({className:i,label:a,...o}){let s=/* @__PURE__ */ n(e,{"data-slot":`spinner`,"aria-hidden":!0,className:t(`h-3 w-3 animate-spin`,i),...o});return a===void 0?s:/* @__PURE__ */ r(`output`,{"data-slot":`spinner-status`,className:`inline-flex items-center`,children:[s,/* @__PURE__ */ n(`span`,{className:`sr-only`,children:a})]})}export{i as Spinner};
2
2
  //# sourceMappingURL=Spinner.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Spinner.mjs","names":[],"sources":["../../../src/components/Spinner.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { LoaderIcon } from '../icons/icons';\nimport { cn } from '../lib/cn';\n\nexport interface SpinnerProps extends ComponentProps<'svg'> {\n /**\n * What the wait is for. Given one, the spinner announces itself as a live\n * status instead of staying silent, which is the difference between a\n * screen reader saying \"loading providers\" and saying nothing at all.\n */\n label?: string;\n}\n\n/** A turning loader in the current text colour; decorative unless it is given a label. */\nexport function Spinner({ className, label, ...props }: SpinnerProps) {\n const icon = (\n <LoaderIcon data-slot=\"spinner\" aria-hidden className={cn('h-3 w-3 animate-spin', className)} {...props} />\n );\n if (label === undefined) return icon;\n return (\n <output data-slot=\"spinner-status\" className=\"inline-flex items-center\">\n {icon}\n <span className=\"sr-only\">{label}</span>\n </output>\n );\n}\n"],"mappings":"qIAeA,SAAgB,EAAQ,CAAE,YAAW,QAAO,GAAG,GAAuB,CACpE,IAAM,EACJ,EAAC,EAAD,CAAY,YAAU,UAAU,cAAA,GAAY,UAAW,EAAG,uBAAwB,CAAS,EAAG,GAAI,CAAQ,CAAA,EAG5G,OADI,IAAU,IAAA,GAAkB,EAE9B,EAAC,SAAD,CAAQ,YAAU,iBAAiB,UAAU,2BAA7C,SAAA,CACG,EACD,EAAC,OAAD,CAAM,UAAU,UAAW,SAAA,CAAY,CAAA,CACjC,GAEZ"}
1
+ {"version":3,"file":"Spinner.mjs","names":[],"sources":["../../../src/components/Spinner.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { LoaderIcon } from '../icons/icons';\nimport { cn } from '../lib/cn';\n\nexport interface SpinnerProps extends ComponentProps<'svg'> {\n /**\n * What the wait is for. Given one, the spinner announces itself as a live\n * status instead of staying silent, which is the difference between a\n * screen reader saying \"loading providers\" and saying nothing at all.\n */\n label?: string;\n}\n\n/** A turning loader in the current text colour; decorative unless it is given a label. */\nexport function Spinner({ className, label, ...props }: SpinnerProps) {\n const icon = (\n <LoaderIcon data-slot=\"spinner\" aria-hidden className={cn('h-3 w-3 animate-spin', className)} {...props} />\n );\n if (label === undefined) return icon;\n return (\n <output data-slot=\"spinner-status\" className=\"inline-flex items-center\">\n {icon}\n <span className=\"sr-only\">{label}</span>\n </output>\n );\n}\n"],"mappings":"qIAeA,SAAgB,EAAQ,CAAE,YAAW,QAAO,GAAG,GAAuB,CACpE,IAAM,EACJ,kBAAC,EAAD,CAAY,YAAU,UAAU,cAAA,GAAY,UAAW,EAAG,uBAAwB,CAAS,EAAG,GAAI,CAAQ,CAAA,EAG5G,OADI,IAAU,IAAA,GAAkB,EAE9B,kBAAC,SAAD,CAAQ,YAAU,iBAAiB,UAAU,2BAA7C,SAAA,CACG,EACD,kBAAC,OAAD,CAAM,UAAU,UAAW,SAAA,CAAY,CAAA,CACjC,GAEZ"}
@@ -1,2 +1,2 @@
1
- const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime");const r=(0,require("class-variance-authority").cva)(`inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-sm font-mono font-bold uppercase`,{variants:{tone:{neutral:`bg-doom-panel text-doom-faint`,running:`bg-doom-tint-yellow text-doom-yellow`,ok:`bg-doom-tint-green text-doom-green`,error:`bg-doom-tint-red text-doom-red`,info:`bg-doom-tint-blue text-doom-blue`,accent:`bg-doom-tint-magenta text-doom-magenta`},size:{xs:`px-1.5 py-0.5 text-2xs`,sm:`px-[7px] py-[3px] text-xs`,md:`h-[21px] px-2 text-sm normal-case`,lg:`h-6 px-2.5 text-base normal-case`}},defaultVariants:{tone:`neutral`,size:`sm`}}),i={neutral:`border-doom-border`,running:`border-doom-edge-yellow`,ok:`border-doom-edge-green`,error:`border-doom-edge-red`,info:`border-doom-edge-blue`,accent:`border-doom-edge-magenta`};function a({className:i,tone:a,size:o,asChild:s=!1,...c}){let l=s?t.Slot.Root:`span`;return(0,n.jsx)(l,{"data-slot":`status-badge`,className:e.cn(r({tone:a,size:o}),i),...c})}exports.STATUS_EDGE=i,exports.StatusBadge=a,exports.statusBadgeVariants=r;
1
+ const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime");const r=(0,require("class-variance-authority").cva)(`inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-sm font-mono font-bold uppercase`,{variants:{tone:{neutral:`bg-doom-panel text-doom-faint`,running:`bg-doom-tint-yellow text-doom-yellow`,ok:`bg-doom-tint-green text-doom-green`,error:`bg-doom-tint-red text-doom-red`,info:`bg-doom-tint-blue text-doom-blue`,accent:`bg-doom-tint-magenta text-doom-magenta`},size:{xs:`px-1.5 py-0.5 text-2xs`,sm:`px-[7px] py-[3px] text-xs`,md:`h-[21px] px-2 text-sm normal-case`,lg:`h-6 px-2.5 text-base normal-case`}},defaultVariants:{tone:`neutral`,size:`sm`}}),i={neutral:`border-doom-border`,running:`border-doom-edge-yellow`,ok:`border-doom-edge-green`,error:`border-doom-edge-red`,info:`border-doom-edge-blue`,accent:`border-doom-edge-magenta`};function a({className:i,tone:a,size:o,asChild:s=!1,...c}){let l=s?t.Slot.Root:`span`;return/* @__PURE__ */ (0,n.jsx)(l,{"data-slot":`status-badge`,className:e.cn(r({tone:a,size:o}),i),...c})}exports.STATUS_EDGE=i,exports.StatusBadge=a,exports.statusBadgeVariants=r;
2
2
  //# sourceMappingURL=StatusBadge.cjs.map