@agimon-ai/doompi-web-components 0.0.1-alpha.4 → 0.0.1-alpha.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -7
- package/dist/index.cjs +1 -1
- package/dist/index.d.mts +18 -6
- package/dist/index.mjs +1 -1
- package/dist/src/components/Accordion.cjs +1 -1
- package/dist/src/components/Accordion.cjs.map +1 -1
- package/dist/src/components/Accordion.d.mts +5 -5
- package/dist/src/components/Accordion.d.mts.map +1 -1
- package/dist/src/components/Accordion.mjs +1 -1
- package/dist/src/components/Accordion.mjs.map +1 -1
- package/dist/src/components/AnsiText.cjs +4 -0
- package/dist/src/components/AnsiText.cjs.map +1 -0
- package/dist/src/components/AnsiText.d.mts +16 -0
- package/dist/src/components/AnsiText.d.mts.map +1 -0
- package/dist/src/components/AnsiText.mjs +4 -0
- package/dist/src/components/AnsiText.mjs.map +1 -0
- package/dist/src/components/Avatar.cjs +1 -1
- package/dist/src/components/Avatar.cjs.map +1 -1
- package/dist/src/components/Avatar.d.mts +4 -4
- package/dist/src/components/Avatar.d.mts.map +1 -1
- package/dist/src/components/Avatar.mjs +1 -1
- package/dist/src/components/Avatar.mjs.map +1 -1
- package/dist/src/components/Badge.cjs +1 -1
- package/dist/src/components/Badge.cjs.map +1 -1
- package/dist/src/components/Badge.d.mts +5 -6
- package/dist/src/components/Badge.d.mts.map +1 -1
- package/dist/src/components/Badge.mjs +1 -1
- package/dist/src/components/Badge.mjs.map +1 -1
- package/dist/src/components/Breadcrumb.cjs +1 -1
- package/dist/src/components/Breadcrumb.cjs.map +1 -1
- package/dist/src/components/Breadcrumb.d.mts +4 -5
- package/dist/src/components/Breadcrumb.d.mts.map +1 -1
- package/dist/src/components/Breadcrumb.mjs +1 -1
- package/dist/src/components/Breadcrumb.mjs.map +1 -1
- package/dist/src/components/Button.cjs +1 -1
- package/dist/src/components/Button.cjs.map +1 -1
- package/dist/src/components/Button.d.mts +6 -7
- package/dist/src/components/Button.d.mts.map +1 -1
- package/dist/src/components/Button.mjs +1 -1
- package/dist/src/components/Button.mjs.map +1 -1
- package/dist/src/components/Checkbox.cjs +1 -1
- package/dist/src/components/Checkbox.cjs.map +1 -1
- package/dist/src/components/Checkbox.d.mts +1 -1
- package/dist/src/components/Checkbox.d.mts.map +1 -1
- package/dist/src/components/Checkbox.mjs +1 -1
- package/dist/src/components/Checkbox.mjs.map +1 -1
- package/dist/src/components/CodeBlock.cjs +2 -0
- package/dist/src/components/CodeBlock.cjs.map +1 -0
- package/dist/src/components/CodeBlock.mjs +2 -0
- package/dist/src/components/CodeBlock.mjs.map +1 -0
- package/dist/src/components/CodeEditor.cjs +1 -1
- package/dist/src/components/CodeEditor.cjs.map +1 -1
- package/dist/src/components/CodeEditor.d.mts +1 -2
- package/dist/src/components/CodeEditor.d.mts.map +1 -1
- package/dist/src/components/CodeEditor.mjs +1 -1
- package/dist/src/components/CodeEditor.mjs.map +1 -1
- package/dist/src/components/CodeEditorView.cjs +1 -1
- package/dist/src/components/CodeEditorView.cjs.map +1 -1
- package/dist/src/components/CodeEditorView.mjs +1 -1
- package/dist/src/components/CodeEditorView.mjs.map +1 -1
- package/dist/src/components/Collapsible.cjs +1 -1
- package/dist/src/components/Collapsible.cjs.map +1 -1
- package/dist/src/components/Collapsible.d.mts +4 -4
- package/dist/src/components/Collapsible.d.mts.map +1 -1
- package/dist/src/components/Collapsible.mjs +1 -1
- package/dist/src/components/Collapsible.mjs.map +1 -1
- package/dist/src/components/Command.cjs +1 -1
- package/dist/src/components/Command.cjs.map +1 -1
- package/dist/src/components/Command.d.mts +11 -12
- package/dist/src/components/Command.d.mts.map +1 -1
- package/dist/src/components/Command.mjs +1 -1
- package/dist/src/components/Command.mjs.map +1 -1
- package/dist/src/components/CopyButton.cjs +2 -0
- package/dist/src/components/CopyButton.cjs.map +1 -0
- package/dist/src/components/CopyButton.mjs +2 -0
- package/dist/src/components/CopyButton.mjs.map +1 -0
- package/dist/src/components/Dialog.cjs +1 -1
- package/dist/src/components/Dialog.cjs.map +1 -1
- package/dist/src/components/Dialog.d.mts +15 -15
- package/dist/src/components/Dialog.d.mts.map +1 -1
- package/dist/src/components/Dialog.mjs +1 -1
- package/dist/src/components/Dialog.mjs.map +1 -1
- package/dist/src/components/Dot.cjs +1 -1
- package/dist/src/components/Dot.cjs.map +1 -1
- package/dist/src/components/Dot.d.mts +5 -6
- package/dist/src/components/Dot.d.mts.map +1 -1
- package/dist/src/components/Dot.mjs +1 -1
- package/dist/src/components/Dot.mjs.map +1 -1
- package/dist/src/components/Drawer.cjs +2 -0
- package/dist/src/components/Drawer.cjs.map +1 -0
- package/dist/src/components/Drawer.d.mts +17 -0
- package/dist/src/components/Drawer.d.mts.map +1 -0
- package/dist/src/components/Drawer.mjs +2 -0
- package/dist/src/components/Drawer.mjs.map +1 -0
- package/dist/src/components/DropdownMenu.cjs +1 -1
- package/dist/src/components/DropdownMenu.cjs.map +1 -1
- package/dist/src/components/DropdownMenu.d.mts +20 -20
- package/dist/src/components/DropdownMenu.d.mts.map +1 -1
- package/dist/src/components/DropdownMenu.mjs +1 -1
- package/dist/src/components/DropdownMenu.mjs.map +1 -1
- package/dist/src/components/EmptyState.cjs +1 -1
- package/dist/src/components/EmptyState.cjs.map +1 -1
- package/dist/src/components/EmptyState.d.mts +2 -3
- package/dist/src/components/EmptyState.d.mts.map +1 -1
- package/dist/src/components/EmptyState.mjs +1 -1
- package/dist/src/components/EmptyState.mjs.map +1 -1
- package/dist/src/components/HashlineLines.cjs +2 -0
- package/dist/src/components/HashlineLines.cjs.map +1 -0
- package/dist/src/components/HashlineLines.d.mts +23 -0
- package/dist/src/components/HashlineLines.d.mts.map +1 -0
- package/dist/src/components/HashlineLines.mjs +2 -0
- package/dist/src/components/HashlineLines.mjs.map +1 -0
- package/dist/src/components/Input.cjs +1 -1
- package/dist/src/components/Input.cjs.map +1 -1
- package/dist/src/components/Input.d.mts +6 -7
- package/dist/src/components/Input.d.mts.map +1 -1
- package/dist/src/components/Input.mjs +1 -1
- package/dist/src/components/Input.mjs.map +1 -1
- package/dist/src/components/Kbd.cjs +1 -1
- package/dist/src/components/Kbd.cjs.map +1 -1
- package/dist/src/components/Kbd.d.mts +1 -2
- package/dist/src/components/Kbd.d.mts.map +1 -1
- package/dist/src/components/Kbd.mjs +1 -1
- package/dist/src/components/Kbd.mjs.map +1 -1
- package/dist/src/components/Label.cjs +1 -1
- package/dist/src/components/Label.cjs.map +1 -1
- package/dist/src/components/Label.d.mts +1 -1
- package/dist/src/components/Label.d.mts.map +1 -1
- package/dist/src/components/Label.mjs +1 -1
- package/dist/src/components/Label.mjs.map +1 -1
- package/dist/src/components/Markdown.cjs +2 -1
- package/dist/src/components/Markdown.cjs.map +1 -1
- package/dist/src/components/Markdown.d.mts +12 -3
- package/dist/src/components/Markdown.d.mts.map +1 -1
- package/dist/src/components/Markdown.mjs +2 -1
- package/dist/src/components/Markdown.mjs.map +1 -1
- package/dist/src/components/MediaPreview.cjs +1 -1
- package/dist/src/components/MediaPreview.cjs.map +1 -1
- package/dist/src/components/MediaPreview.d.mts +39 -3
- package/dist/src/components/MediaPreview.d.mts.map +1 -1
- package/dist/src/components/MediaPreview.mjs +1 -1
- package/dist/src/components/MediaPreview.mjs.map +1 -1
- package/dist/src/components/MermaidDiagram.cjs +2 -0
- package/dist/src/components/MermaidDiagram.cjs.map +1 -0
- package/dist/src/components/MermaidDiagram.mjs +2 -0
- package/dist/src/components/MermaidDiagram.mjs.map +1 -0
- package/dist/src/components/MessageItem.cjs +1 -1
- package/dist/src/components/MessageItem.cjs.map +1 -1
- package/dist/src/components/MessageItem.d.mts +48 -17
- package/dist/src/components/MessageItem.d.mts.map +1 -1
- package/dist/src/components/MessageItem.mjs +1 -1
- package/dist/src/components/MessageItem.mjs.map +1 -1
- package/dist/src/components/MessageLines.cjs +1 -1
- package/dist/src/components/MessageLines.cjs.map +1 -1
- package/dist/src/components/MessageLines.d.mts +5 -6
- package/dist/src/components/MessageLines.d.mts.map +1 -1
- package/dist/src/components/MessageLines.mjs +1 -1
- package/dist/src/components/MessageLines.mjs.map +1 -1
- package/dist/src/components/OptionList.cjs +1 -1
- package/dist/src/components/OptionList.cjs.map +1 -1
- package/dist/src/components/OptionList.d.mts +9 -10
- package/dist/src/components/OptionList.d.mts.map +1 -1
- package/dist/src/components/OptionList.mjs +1 -1
- package/dist/src/components/OptionList.mjs.map +1 -1
- package/dist/src/components/Panel.cjs +1 -1
- package/dist/src/components/Panel.cjs.map +1 -1
- package/dist/src/components/Panel.d.mts +4 -5
- package/dist/src/components/Panel.d.mts.map +1 -1
- package/dist/src/components/Panel.mjs +1 -1
- package/dist/src/components/Panel.mjs.map +1 -1
- package/dist/src/components/PdfPreview.cjs +2 -0
- package/dist/src/components/PdfPreview.cjs.map +1 -0
- package/dist/src/components/PdfPreview.d.mts +52 -0
- package/dist/src/components/PdfPreview.d.mts.map +1 -0
- package/dist/src/components/PdfPreview.mjs +2 -0
- package/dist/src/components/PdfPreview.mjs.map +1 -0
- package/dist/src/components/Popover.cjs +1 -1
- package/dist/src/components/Popover.cjs.map +1 -1
- package/dist/src/components/Popover.d.mts +8 -8
- package/dist/src/components/Popover.d.mts.map +1 -1
- package/dist/src/components/Popover.mjs +1 -1
- package/dist/src/components/Popover.mjs.map +1 -1
- package/dist/src/components/Progress.cjs +1 -1
- package/dist/src/components/Progress.cjs.map +1 -1
- package/dist/src/components/Progress.d.mts +1 -1
- package/dist/src/components/Progress.d.mts.map +1 -1
- package/dist/src/components/Progress.mjs +1 -1
- package/dist/src/components/Progress.mjs.map +1 -1
- package/dist/src/components/RadioGroup.cjs +1 -1
- package/dist/src/components/RadioGroup.cjs.map +1 -1
- package/dist/src/components/RadioGroup.d.mts +4 -4
- package/dist/src/components/RadioGroup.d.mts.map +1 -1
- package/dist/src/components/RadioGroup.mjs +1 -1
- package/dist/src/components/RadioGroup.mjs.map +1 -1
- package/dist/src/components/ScrollArea.cjs +1 -1
- package/dist/src/components/ScrollArea.cjs.map +1 -1
- package/dist/src/components/ScrollArea.d.mts +3 -3
- package/dist/src/components/ScrollArea.d.mts.map +1 -1
- package/dist/src/components/ScrollArea.mjs +1 -1
- package/dist/src/components/ScrollArea.mjs.map +1 -1
- package/dist/src/components/SectionLabel.cjs +1 -1
- package/dist/src/components/SectionLabel.cjs.map +1 -1
- package/dist/src/components/SectionLabel.d.mts +1 -2
- package/dist/src/components/SectionLabel.d.mts.map +1 -1
- package/dist/src/components/SectionLabel.mjs +1 -1
- package/dist/src/components/SectionLabel.mjs.map +1 -1
- package/dist/src/components/Select.cjs +1 -1
- package/dist/src/components/Select.cjs.map +1 -1
- package/dist/src/components/Select.d.mts +9 -9
- package/dist/src/components/Select.d.mts.map +1 -1
- package/dist/src/components/Select.mjs +1 -1
- package/dist/src/components/Select.mjs.map +1 -1
- package/dist/src/components/Separator.cjs +1 -1
- package/dist/src/components/Separator.cjs.map +1 -1
- package/dist/src/components/Separator.d.mts +1 -1
- package/dist/src/components/Separator.d.mts.map +1 -1
- package/dist/src/components/Separator.mjs +1 -1
- package/dist/src/components/Separator.mjs.map +1 -1
- package/dist/src/components/Sheet.cjs +2 -0
- package/dist/src/components/Sheet.cjs.map +1 -0
- package/dist/src/components/Sheet.d.mts +35 -0
- package/dist/src/components/Sheet.d.mts.map +1 -0
- package/dist/src/components/Sheet.mjs +2 -0
- package/dist/src/components/Sheet.mjs.map +1 -0
- package/dist/src/components/Skeleton.cjs +1 -1
- package/dist/src/components/Skeleton.cjs.map +1 -1
- package/dist/src/components/Skeleton.d.mts +1 -2
- package/dist/src/components/Skeleton.d.mts.map +1 -1
- package/dist/src/components/Skeleton.mjs +1 -1
- package/dist/src/components/Skeleton.mjs.map +1 -1
- package/dist/src/components/Spinner.cjs +1 -1
- package/dist/src/components/Spinner.cjs.map +1 -1
- package/dist/src/components/Spinner.d.mts +2 -3
- package/dist/src/components/Spinner.d.mts.map +1 -1
- package/dist/src/components/Spinner.mjs +1 -1
- package/dist/src/components/Spinner.mjs.map +1 -1
- package/dist/src/components/StatusBadge.cjs +1 -1
- package/dist/src/components/StatusBadge.cjs.map +1 -1
- package/dist/src/components/StatusBadge.d.mts +6 -7
- package/dist/src/components/StatusBadge.d.mts.map +1 -1
- package/dist/src/components/StatusBadge.mjs +1 -1
- package/dist/src/components/StatusBadge.mjs.map +1 -1
- package/dist/src/components/StreamCursor.cjs +1 -1
- package/dist/src/components/StreamCursor.cjs.map +1 -1
- package/dist/src/components/StreamCursor.d.mts +1 -2
- package/dist/src/components/StreamCursor.d.mts.map +1 -1
- package/dist/src/components/StreamCursor.mjs +1 -1
- package/dist/src/components/StreamCursor.mjs.map +1 -1
- package/dist/src/components/Switch.cjs +1 -1
- package/dist/src/components/Switch.cjs.map +1 -1
- package/dist/src/components/Switch.d.mts +1 -1
- package/dist/src/components/Switch.d.mts.map +1 -1
- package/dist/src/components/Switch.mjs +1 -1
- package/dist/src/components/Switch.mjs.map +1 -1
- package/dist/src/components/SyntaxText.cjs +4 -0
- package/dist/src/components/SyntaxText.cjs.map +1 -0
- package/dist/src/components/SyntaxText.d.mts +50 -0
- package/dist/src/components/SyntaxText.d.mts.map +1 -0
- package/dist/src/components/SyntaxText.mjs +4 -0
- package/dist/src/components/SyntaxText.mjs.map +1 -0
- package/dist/src/components/Tabs.cjs +1 -1
- package/dist/src/components/Tabs.cjs.map +1 -1
- package/dist/src/components/Tabs.d.mts +11 -11
- package/dist/src/components/Tabs.d.mts.map +1 -1
- package/dist/src/components/Tabs.mjs +1 -1
- package/dist/src/components/Tabs.mjs.map +1 -1
- package/dist/src/components/TerminalView.cjs +2 -0
- package/dist/src/components/TerminalView.cjs.map +1 -0
- package/dist/src/components/TerminalView.d.mts +31 -0
- package/dist/src/components/TerminalView.d.mts.map +1 -0
- package/dist/src/components/TerminalView.mjs +2 -0
- package/dist/src/components/TerminalView.mjs.map +1 -0
- package/dist/src/components/Textarea.cjs +1 -1
- package/dist/src/components/Textarea.cjs.map +1 -1
- package/dist/src/components/Textarea.d.mts +3 -4
- package/dist/src/components/Textarea.d.mts.map +1 -1
- package/dist/src/components/Textarea.mjs +1 -1
- package/dist/src/components/Textarea.mjs.map +1 -1
- package/dist/src/components/Toast.cjs +1 -1
- package/dist/src/components/Toast.cjs.map +1 -1
- package/dist/src/components/Toast.d.mts +11 -11
- package/dist/src/components/Toast.d.mts.map +1 -1
- package/dist/src/components/Toast.mjs +1 -1
- package/dist/src/components/Toast.mjs.map +1 -1
- package/dist/src/components/ToolPathLink.cjs +2 -0
- package/dist/src/components/ToolPathLink.cjs.map +1 -0
- package/dist/src/components/ToolPathLink.d.mts +22 -0
- package/dist/src/components/ToolPathLink.d.mts.map +1 -0
- package/dist/src/components/ToolPathLink.mjs +2 -0
- package/dist/src/components/ToolPathLink.mjs.map +1 -0
- package/dist/src/components/Tooltip.cjs +1 -1
- package/dist/src/components/Tooltip.cjs.map +1 -1
- package/dist/src/components/Tooltip.d.mts +5 -5
- package/dist/src/components/Tooltip.d.mts.map +1 -1
- package/dist/src/components/Tooltip.mjs +1 -1
- package/dist/src/components/Tooltip.mjs.map +1 -1
- package/dist/src/icons/icons.cjs +1 -1
- package/dist/src/icons/icons.d.mts +2 -2
- package/dist/src/icons/icons.mjs +1 -1
- package/dist/src/lib/ansiSpans.cjs +2 -0
- package/dist/src/lib/ansiSpans.cjs.map +1 -0
- package/dist/src/lib/ansiSpans.d.mts +42 -0
- package/dist/src/lib/ansiSpans.d.mts.map +1 -0
- package/dist/src/lib/ansiSpans.mjs +2 -0
- package/dist/src/lib/ansiSpans.mjs.map +1 -0
- package/dist/src/lib/cn.d.mts +1 -2
- package/dist/src/lib/cn.d.mts.map +1 -1
- package/dist/src/lib/collapse.d.mts +2 -3
- package/dist/src/lib/collapse.d.mts.map +1 -1
- package/dist/src/lib/editorController.cjs +2 -0
- package/dist/src/lib/editorController.cjs.map +1 -0
- package/dist/src/lib/editorController.mjs +2 -0
- package/dist/src/lib/editorController.mjs.map +1 -0
- package/dist/src/lib/editorLanguage.d.mts +2 -3
- package/dist/src/lib/editorLanguage.d.mts.map +1 -1
- package/dist/src/lib/editorTheme.cjs +1 -1
- package/dist/src/lib/editorTheme.cjs.map +1 -1
- package/dist/src/lib/editorTheme.d.mts +76 -0
- package/dist/src/lib/editorTheme.d.mts.map +1 -0
- package/dist/src/lib/editorTheme.mjs +1 -1
- package/dist/src/lib/editorTheme.mjs.map +1 -1
- package/dist/src/lib/fenceGrammar.cjs +2 -0
- package/dist/src/lib/fenceGrammar.cjs.map +1 -0
- package/dist/src/lib/fenceGrammar.mjs +2 -0
- package/dist/src/lib/fenceGrammar.mjs.map +1 -0
- package/dist/src/lib/hashlineHighlight.cjs +3 -0
- package/dist/src/lib/hashlineHighlight.cjs.map +1 -0
- package/dist/src/lib/hashlineHighlight.d.mts +30 -0
- package/dist/src/lib/hashlineHighlight.d.mts.map +1 -0
- package/dist/src/lib/hashlineHighlight.mjs +3 -0
- package/dist/src/lib/hashlineHighlight.mjs.map +1 -0
- package/dist/src/lib/hashlineView.cjs +6 -0
- package/dist/src/lib/hashlineView.cjs.map +1 -0
- package/dist/src/lib/hashlineView.d.mts +60 -0
- package/dist/src/lib/hashlineView.d.mts.map +1 -0
- package/dist/src/lib/hashlineView.mjs +6 -0
- package/dist/src/lib/hashlineView.mjs.map +1 -0
- package/dist/src/lib/media.cjs.map +1 -1
- package/dist/src/lib/media.d.mts +1 -2
- package/dist/src/lib/media.d.mts.map +1 -1
- package/dist/src/lib/media.mjs.map +1 -1
- package/dist/src/lib/mediaPlayback.cjs +2 -0
- package/dist/src/lib/mediaPlayback.cjs.map +1 -0
- package/dist/src/lib/mediaPlayback.mjs +2 -0
- package/dist/src/lib/mediaPlayback.mjs.map +1 -0
- package/dist/src/lib/mermaidDiagram.cjs +2 -0
- package/dist/src/lib/mermaidDiagram.cjs.map +1 -0
- package/dist/src/lib/mermaidDiagram.mjs +2 -0
- package/dist/src/lib/mermaidDiagram.mjs.map +1 -0
- package/dist/src/lib/optionList.d.mts +4 -5
- package/dist/src/lib/optionList.d.mts.map +1 -1
- package/dist/src/lib/syntaxHighlight.cjs +3 -0
- package/dist/src/lib/syntaxHighlight.cjs.map +1 -0
- package/dist/src/lib/syntaxHighlight.d.mts +54 -0
- package/dist/src/lib/syntaxHighlight.d.mts.map +1 -0
- package/dist/src/lib/syntaxHighlight.mjs +3 -0
- package/dist/src/lib/syntaxHighlight.mjs.map +1 -0
- package/dist/src/lib/tone.cjs.map +1 -1
- package/dist/src/lib/tone.d.mts +4 -5
- package/dist/src/lib/tone.d.mts.map +1 -1
- package/dist/src/lib/tone.mjs.map +1 -1
- package/dist/src/theme/apply.cjs.map +1 -1
- package/dist/src/theme/apply.d.mts +5 -6
- package/dist/src/theme/apply.d.mts.map +1 -1
- package/dist/src/theme/apply.mjs.map +1 -1
- package/dist/src/theme/builtinThemes.cjs.map +1 -1
- package/dist/src/theme/builtinThemes.d.mts +4 -5
- package/dist/src/theme/builtinThemes.d.mts.map +1 -1
- package/dist/src/theme/builtinThemes.mjs.map +1 -1
- package/dist/src/theme/derive.cjs.map +1 -1
- package/dist/src/theme/derive.d.mts +4 -5
- package/dist/src/theme/derive.d.mts.map +1 -1
- package/dist/src/theme/derive.mjs.map +1 -1
- package/dist/src/theme/parse.cjs.map +1 -1
- package/dist/src/theme/parse.d.mts +1 -2
- package/dist/src/theme/parse.d.mts.map +1 -1
- package/dist/src/theme/parse.mjs.map +1 -1
- package/dist/src/theme/piTheme.cjs.map +1 -1
- package/dist/src/theme/piTheme.d.mts +2 -3
- package/dist/src/theme/piTheme.d.mts.map +1 -1
- package/dist/src/theme/piTheme.mjs.map +1 -1
- package/dist/src/theme/preference.d.mts +4 -5
- package/dist/src/theme/preference.d.mts.map +1 -1
- package/dist/src/types/editor.cjs.map +1 -1
- package/dist/src/types/editor.d.mts +39 -5
- package/dist/src/types/editor.d.mts.map +1 -1
- package/dist/src/types/editor.mjs.map +1 -1
- package/dist/src/types/theme.d.mts +11 -12
- package/dist/src/types/theme.d.mts.map +1 -1
- package/dist/src/types/tone.d.mts +10 -11
- package/dist/src/types/tone.d.mts.map +1 -1
- package/package.json +21 -17
- package/styles/preview.css +17 -0
- package/styles/tokens.css +72 -0
- package/dist/components/Accordion.d.cts +0 -11
- package/dist/components/Accordion.d.cts.map +0 -1
- package/dist/components/Avatar.d.cts +0 -10
- package/dist/components/Avatar.d.cts.map +0 -1
- package/dist/components/Badge.d.cts +0 -18
- package/dist/components/Badge.d.cts.map +0 -1
- package/dist/components/Breadcrumb.d.cts +0 -37
- package/dist/components/Breadcrumb.d.cts.map +0 -1
- package/dist/components/Button.d.cts +0 -25
- package/dist/components/Button.d.cts.map +0 -1
- package/dist/components/Checkbox.d.cts +0 -8
- package/dist/components/Checkbox.d.cts.map +0 -1
- package/dist/components/CodeEditor.d.cts +0 -6
- package/dist/components/CodeEditor.d.cts.map +0 -1
- package/dist/components/Collapsible.d.cts +0 -10
- package/dist/components/Collapsible.d.cts.map +0 -1
- package/dist/components/Command.d.cts +0 -42
- package/dist/components/Command.d.cts.map +0 -1
- package/dist/components/Dialog.d.cts +0 -39
- package/dist/components/Dialog.d.cts.map +0 -1
- package/dist/components/Dot.d.cts +0 -16
- package/dist/components/Dot.d.cts.map +0 -1
- package/dist/components/DropdownMenu.d.cts +0 -34
- package/dist/components/DropdownMenu.d.cts.map +0 -1
- package/dist/components/EmptyState.d.cts +0 -18
- package/dist/components/EmptyState.d.cts.map +0 -1
- package/dist/components/Input.d.cts +0 -20
- package/dist/components/Input.d.cts.map +0 -1
- package/dist/components/Kbd.d.cts +0 -7
- package/dist/components/Kbd.d.cts.map +0 -1
- package/dist/components/Label.d.cts +0 -8
- package/dist/components/Label.d.cts.map +0 -1
- package/dist/components/Markdown.d.cts +0 -8
- package/dist/components/Markdown.d.cts.map +0 -1
- package/dist/components/MediaPreview.d.cts +0 -25
- package/dist/components/MediaPreview.d.cts.map +0 -1
- package/dist/components/MessageItem.d.cts +0 -71
- package/dist/components/MessageItem.d.cts.map +0 -1
- package/dist/components/MessageLines.d.cts +0 -24
- package/dist/components/MessageLines.d.cts.map +0 -1
- package/dist/components/OptionList.d.cts +0 -50
- package/dist/components/OptionList.d.cts.map +0 -1
- package/dist/components/Panel.d.cts +0 -15
- package/dist/components/Panel.d.cts.map +0 -1
- package/dist/components/Popover.d.cts +0 -19
- package/dist/components/Popover.d.cts.map +0 -1
- package/dist/components/Progress.d.cts +0 -8
- package/dist/components/Progress.d.cts.map +0 -1
- package/dist/components/RadioGroup.d.cts +0 -15
- package/dist/components/RadioGroup.d.cts.map +0 -1
- package/dist/components/ScrollArea.d.cts +0 -13
- package/dist/components/ScrollArea.d.cts.map +0 -1
- package/dist/components/SectionLabel.d.cts +0 -7
- package/dist/components/SectionLabel.d.cts.map +0 -1
- package/dist/components/Select.d.cts +0 -19
- package/dist/components/Select.d.cts.map +0 -1
- package/dist/components/Separator.d.cts +0 -13
- package/dist/components/Separator.d.cts.map +0 -1
- package/dist/components/Skeleton.d.cts +0 -11
- package/dist/components/Skeleton.d.cts.map +0 -1
- package/dist/components/Spinner.d.cts +0 -15
- package/dist/components/Spinner.d.cts.map +0 -1
- package/dist/components/StatusBadge.d.cts +0 -24
- package/dist/components/StatusBadge.d.cts.map +0 -1
- package/dist/components/StreamCursor.d.cts +0 -7
- package/dist/components/StreamCursor.d.cts.map +0 -1
- package/dist/components/Switch.d.cts +0 -8
- package/dist/components/Switch.d.cts.map +0 -1
- package/dist/components/Tabs.d.cts +0 -36
- package/dist/components/Tabs.d.cts.map +0 -1
- package/dist/components/Textarea.d.cts +0 -10
- package/dist/components/Textarea.d.cts.map +0 -1
- package/dist/components/Toast.d.cts +0 -24
- package/dist/components/Toast.d.cts.map +0 -1
- package/dist/components/Tooltip.d.cts +0 -11
- package/dist/components/Tooltip.d.cts.map +0 -1
- package/dist/icons/icons.d.cts +0 -2
- package/dist/index.d.cts +0 -48
- package/dist/lib/cn.d.cts +0 -7
- package/dist/lib/cn.d.cts.map +0 -1
- package/dist/lib/collapse.d.cts +0 -15
- package/dist/lib/collapse.d.cts.map +0 -1
- package/dist/lib/editorLanguage.d.cts +0 -22
- package/dist/lib/editorLanguage.d.cts.map +0 -1
- package/dist/lib/media.d.cts +0 -12
- package/dist/lib/media.d.cts.map +0 -1
- package/dist/lib/optionList.d.cts +0 -22
- package/dist/lib/optionList.d.cts.map +0 -1
- package/dist/lib/tone.d.cts +0 -26
- package/dist/lib/tone.d.cts.map +0 -1
- package/dist/theme/apply.d.cts +0 -26
- package/dist/theme/apply.d.cts.map +0 -1
- package/dist/theme/builtinThemes.d.cts +0 -12
- package/dist/theme/builtinThemes.d.cts.map +0 -1
- package/dist/theme/derive.d.cts +0 -15
- package/dist/theme/derive.d.cts.map +0 -1
- package/dist/theme/parse.d.cts +0 -11
- package/dist/theme/parse.d.cts.map +0 -1
- package/dist/theme/piTheme.d.cts +0 -20
- package/dist/theme/piTheme.d.cts.map +0 -1
- package/dist/theme/preference.d.cts +0 -16
- package/dist/theme/preference.d.cts.map +0 -1
- package/dist/theme.d.cts +0 -8
- package/dist/types/editor.d.cts +0 -44
- package/dist/types/editor.d.cts.map +0 -1
- package/dist/types/theme.d.cts +0 -39
- package/dist/types/theme.d.cts.map +0 -1
- package/dist/types/tone.d.cts +0 -29
- package/dist/types/tone.d.cts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Panel.d.mts","names":[],"sources":["../../../src/components/Panel.tsx"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"Panel.d.mts","names":[],"sources":["../../../src/components/Panel.tsx"],"mappings":";;iBAKiB,mBAAmB;;EAElC;;;wBAIc,QAAQ,WAAW,YAAoB,SAAS,6BAAU,IAAA;;wBAY1D,cAAc,cAAc,SAAS,wCAAqB,IAAA;;wBAO1D,YAAY,cAAc,SAAS,wCAAqB,IAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{cn as e}from"../lib/cn.mjs";import{Slot as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";function r({className:r,asChild:i=!1,...a}){let o=i?t.Root:`div`;return n(o,{"data-slot":`panel`,className:e(`overflow-hidden rounded-md border border-doom-border bg-doom-panel`,r),...a})}function i({className:t,...r}){return n(`div`,{"data-slot":`panel-header`,className:e(`flex min-h-8 items-center gap-2 px-[11px]`,t),...r})}function a({className:t,...r}){return n(`div`,{"data-slot":`panel-body`,className:e(`border-t border-doom-border-soft bg-doom-deep px-3 py-2 text-
|
|
1
|
+
import{cn as e}from"../lib/cn.mjs";import{Slot as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";function r({className:r,asChild:i=!1,...a}){let o=i?t.Root:`div`;return/* @__PURE__ */ n(o,{"data-slot":`panel`,className:e(`overflow-hidden rounded-md border border-doom-border bg-doom-panel`,r),...a})}function i({className:t,...r}){return/* @__PURE__ */ n(`div`,{"data-slot":`panel-header`,className:e(`flex min-h-8 items-center gap-2 px-[11px]`,t),...r})}function a({className:t,...r}){return/* @__PURE__ */ n(`div`,{"data-slot":`panel-body`,className:e(`border-t border-doom-border-soft bg-doom-deep px-3 py-2 text-sm text-doom-dim`,t),...r})}export{r as Panel,a as PanelBody,i as PanelHeader};
|
|
2
2
|
//# sourceMappingURL=Panel.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Panel.mjs","names":[],"sources":["../../../src/components/Panel.tsx"],"sourcesContent":["import { Slot } from 'radix-ui';\nimport type { ComponentProps } from 'react';\nimport { cn } from '../lib/cn
|
|
1
|
+
{"version":3,"file":"Panel.mjs","names":[],"sources":["../../../src/components/Panel.tsx"],"sourcesContent":["import { Slot } from 'radix-ui';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '../lib/cn';\n\nexport interface PanelProps extends ComponentProps<'div'> {\n /** Render the child element instead of a <div>, so a list row can be a panel. */\n asChild?: boolean;\n}\n\n/** The bordered card surface: a tool card, a run card, a provider row. */\nexport function Panel({ className, asChild = false, ...props }: PanelProps) {\n const Component = asChild ? Slot.Root : 'div';\n return (\n <Component\n data-slot=\"panel\"\n className={cn('overflow-hidden rounded-md border border-doom-border bg-doom-panel', className)}\n {...props}\n />\n );\n}\n\n/** A panel's title row. */\nexport function PanelHeader({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div data-slot=\"panel-header\" className={cn('flex min-h-8 items-center gap-2 px-[11px]', className)} {...props} />\n );\n}\n\n/** A panel's recessed body: the deep well the header sits above. */\nexport function PanelBody({ className, ...props }: ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"panel-body\"\n className={cn('border-t border-doom-border-soft bg-doom-deep px-3 py-2 text-sm text-doom-dim', className)}\n {...props}\n />\n );\n}\n"],"mappings":"2GAWA,SAAgB,EAAM,CAAE,YAAW,UAAU,GAAO,GAAG,GAAqB,CAC1E,IAAM,EAAY,EAAU,EAAK,KAAO,MACxC,MACE,kBAAC,EAAD,CACE,YAAU,QACV,UAAW,EAAG,qEAAsE,CAAS,EAC7F,GAAI,CACL,CAAA,CAEL,CAGA,SAAgB,EAAY,CAAE,YAAW,GAAG,GAAgC,CAC1E,MACE,kBAAC,MAAD,CAAK,YAAU,eAAe,UAAW,EAAG,4CAA6C,CAAS,EAAG,GAAI,CAAQ,CAAA,CAErH,CAGA,SAAgB,EAAU,CAAE,YAAW,GAAG,GAAgC,CACxE,MACE,kBAAC,MAAD,CACE,YAAU,aACV,UAAW,EAAG,gFAAiF,CAAS,EACxG,GAAI,CACL,CAAA,CAEL"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require("../lib/cn.cjs"),t=require("./Button.cjs");let n=require("react/jsx-runtime"),r=require("react");const i={page:1,pageCount:0,sourceWidth:0,sourceHeight:0};function a(e,t){return!Number.isFinite(e)||t<=0?1:Math.min(t,Math.max(1,Math.trunc(e)))}function o(e,t,n){if(t.width<=0||t.height<=0)return null;let r=Math.max(t.left,Math.min(t.right,n.left)),i=Math.max(t.left,Math.min(t.right,n.right)),a=Math.max(t.top,Math.min(t.bottom,n.top)),o=Math.max(t.top,Math.min(t.bottom,n.bottom));return i<=r||o<=a?null:{page:e,rect:{x:(r-t.left)/t.width,y:(a-t.top)/t.height,width:(i-r)/t.width,height:(o-a)/t.height}}}function s(e,t,n){return new Promise(r=>e.toBlob(r,t,n))}function c({src:c,path:l,className:u,controllerRef:d,"data-testid":f}){let p=(0,r.useRef)(null),m=(0,r.useRef)(null),h=(0,r.useRef)(null),[g,_]=(0,r.useState)(1),[v,y]=(0,r.useState)(i),[b,x]=(0,r.useState)();return(0,r.useEffect)(()=>{let e=!1,t;return import(`pdfjs-dist/webpack.mjs`).then(({getDocument:n})=>{if(!e)return t=n({url:c}),t.promise.then(t=>{e||(m.current=t,x(void 0),_(1),y({...i,pageCount:t.numPages}))})}).catch(t=>{e||x(t instanceof Error?t.message:String(t))}),()=>{e=!0,t?.destroy(),h.current?.cancel(),h.current=null,m.current=null}},[c]),(0,r.useEffect)(()=>{let e=m.current,t=p.current;if(e===null||t===null)return;let n=!1;return e.getPage(g).then(r=>{if(n)return;let i=r.getViewport({scale:1}),a=r.getViewport({scale:1.5});t.width=Math.ceil(a.width),t.height=Math.ceil(a.height),y({page:g,pageCount:e.numPages,sourceWidth:i.width,sourceHeight:i.height});let o=t.getContext(`2d`);if(o===null)return;let s=r.render({canvas:t,canvasContext:o,viewport:a});return h.current=s,s.promise}).catch(e=>{!n&&e.name!==`RenderingCancelledException`&&x(e instanceof Error?e.message:String(e))}),()=>{n=!0,h.current?.cancel(),h.current=null}},[g,v.pageCount]),(0,r.useImperativeHandle)(d,()=>({getState:()=>v,setPage:e=>_(a(e,v.pageCount)),resolveViewportRegion:e=>{let t=p.current;return t===null||v.pageCount===0?null:o(v.page,t.getBoundingClientRect(),e)},capturePage:async(e=`image/png`,t)=>{let n=p.current;return n===null?null:await s(n,e,t)}}),[v]),/* @__PURE__ */ (0,n.jsxs)(`section`,{"data-testid":f,"data-kind":`pdf`,className:e.cn(`flex min-h-0 flex-col gap-2`,u),children:[/* @__PURE__ */ (0,n.jsxs)(`div`,{className:`flex items-center justify-between gap-2 text-xs text-doom-faint`,children:[/* @__PURE__ */ (0,n.jsx)(`span`,{children:l}),/* @__PURE__ */ (0,n.jsxs)(`div`,{className:`flex items-center gap-2`,children:[/* @__PURE__ */ (0,n.jsx)(t.Button,{size:`xs`,variant:`ghost`,disabled:g<=1,onClick:()=>_(e=>Math.max(1,e-1)),children:`previous`}),/* @__PURE__ */ (0,n.jsx)(`span`,{"data-testid":f===void 0?void 0:`${f}-page`,children:v.pageCount===0?`loading`:`${g} / ${v.pageCount}`}),/* @__PURE__ */ (0,n.jsx)(t.Button,{size:`xs`,variant:`ghost`,disabled:v.pageCount===0||g>=v.pageCount,onClick:()=>_(e=>a(e+1,v.pageCount)),children:`next`})]})]}),b===void 0?null:/* @__PURE__ */ (0,n.jsx)(`output`,{className:`text-xs text-doom-red`,children:b}),/* @__PURE__ */ (0,n.jsx)(`div`,{className:`min-h-0 overflow-auto rounded border border-doom-border bg-doom-deep`,children:/* @__PURE__ */ (0,n.jsx)(`canvas`,{ref:p,"aria-label":l,className:`mx-auto block max-w-full`})})]})}exports.PdfPreview=c,exports.resolvePdfViewportRegion=o;
|
|
2
|
+
//# sourceMappingURL=PdfPreview.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PdfPreview.cjs","names":["useRef","useState","cn","Button"],"sources":["../../../src/components/PdfPreview.tsx"],"sourcesContent":["import type { PDFDocumentProxy, PDFPageProxy } from 'pdfjs-dist/webpack.mjs';\nimport { useEffect, useImperativeHandle, useRef, useState } from 'react';\n\nimport { cn } from '../lib/cn';\nimport { Button } from './Button';\n\ntype PdfLoadingTask = ReturnType<typeof import('pdfjs-dist/webpack.mjs').getDocument>;\n\nexport interface PdfNormalizedRectangle {\n x: number;\n y: number;\n width: number;\n height: number;\n}\n\nexport interface PdfPageState {\n page: number;\n pageCount: number;\n sourceWidth: number;\n sourceHeight: number;\n}\n\nexport interface PdfPageRegion {\n page: number;\n rect: PdfNormalizedRectangle;\n}\n\nexport interface PdfPreviewController {\n getState: () => PdfPageState;\n setPage: (page: number) => void;\n resolveViewportRegion: (rectangle: {\n left: number;\n top: number;\n right: number;\n bottom: number;\n }) => PdfPageRegion | null;\n capturePage: (type?: 'image/png' | 'image/jpeg', quality?: number) => Promise<Blob | null>;\n}\n\nexport interface PdfPreviewProps {\n src: string;\n path: string;\n className?: string;\n 'data-testid'?: string;\n controllerRef?: import('react').Ref<PdfPreviewController>;\n}\n\nconst EMPTY_STATE: PdfPageState = { page: 1, pageCount: 0, sourceWidth: 0, sourceHeight: 0 };\n\nfunction boundedPage(page: number, pageCount: number): number {\n if (!Number.isFinite(page) || pageCount <= 0) return 1;\n return Math.min(pageCount, Math.max(1, Math.trunc(page)));\n}\n\nexport function resolvePdfViewportRegion(\n page: number,\n bounds: { left: number; top: number; right: number; bottom: number; width: number; height: number },\n rectangle: { left: number; top: number; right: number; bottom: number },\n): PdfPageRegion | null {\n if (bounds.width <= 0 || bounds.height <= 0) return null;\n const left = Math.max(bounds.left, Math.min(bounds.right, rectangle.left));\n const right = Math.max(bounds.left, Math.min(bounds.right, rectangle.right));\n const top = Math.max(bounds.top, Math.min(bounds.bottom, rectangle.top));\n const bottom = Math.max(bounds.top, Math.min(bounds.bottom, rectangle.bottom));\n if (right <= left || bottom <= top) return null;\n return {\n page,\n rect: {\n x: (left - bounds.left) / bounds.width,\n y: (top - bounds.top) / bounds.height,\n width: (right - left) / bounds.width,\n height: (bottom - top) / bounds.height,\n },\n };\n}\nfunction canvasBlob(\n canvas: HTMLCanvasElement,\n type: 'image/png' | 'image/jpeg',\n quality?: number,\n): Promise<Blob | null> {\n return new Promise((resolve) => canvas.toBlob(resolve, type, quality));\n}\n\n/** A page-aware PDF canvas. Coordinates resolve against PDF page geometry rather than an opaque browser iframe. */\nexport function PdfPreview({ src, path, className, controllerRef, 'data-testid': testId }: PdfPreviewProps) {\n const canvasRef = useRef<HTMLCanvasElement>(null);\n const documentRef = useRef<PDFDocumentProxy | null>(null);\n const renderTask = useRef<{ cancel(): void } | null>(null);\n const [page, setPage] = useState(1);\n const [pageState, setPageState] = useState<PdfPageState>(EMPTY_STATE);\n const [error, setError] = useState<string | undefined>();\n\n useEffect(() => {\n let disposed = false;\n let loading: PdfLoadingTask | undefined;\n // pdfjs is imported on demand: `pdfjs-dist/webpack.mjs` spins up its worker\n // at module scope, so a static import would make every consumer of this\n // package pay for the worker whether or not it ever shows a PDF.\n void import('pdfjs-dist/webpack.mjs')\n .then(({ getDocument }) => {\n if (disposed) return undefined;\n loading = getDocument({ url: src });\n return loading.promise.then((document) => {\n if (disposed) return;\n documentRef.current = document;\n setError(undefined);\n setPage(1);\n setPageState({ ...EMPTY_STATE, pageCount: document.numPages });\n });\n })\n .catch((reason: unknown) => {\n if (!disposed) setError(reason instanceof Error ? reason.message : String(reason));\n });\n return () => {\n disposed = true;\n void loading?.destroy();\n renderTask.current?.cancel();\n renderTask.current = null;\n documentRef.current = null;\n };\n }, [src]);\n\n useEffect(() => {\n const document = documentRef.current;\n const canvas = canvasRef.current;\n if (document === null || canvas === null) return;\n let disposed = false;\n void document\n .getPage(page)\n .then((pdfPage: PDFPageProxy) => {\n if (disposed) return;\n const source = pdfPage.getViewport({ scale: 1 });\n const viewport = pdfPage.getViewport({ scale: 1.5 });\n canvas.width = Math.ceil(viewport.width);\n canvas.height = Math.ceil(viewport.height);\n setPageState({ page, pageCount: document.numPages, sourceWidth: source.width, sourceHeight: source.height });\n const context = canvas.getContext('2d');\n if (context === null) return;\n const task = pdfPage.render({ canvas, canvasContext: context, viewport });\n renderTask.current = task;\n return task.promise;\n })\n .catch((reason: unknown) => {\n if (!disposed && (reason as { name?: unknown }).name !== 'RenderingCancelledException') {\n setError(reason instanceof Error ? reason.message : String(reason));\n }\n });\n return () => {\n disposed = true;\n renderTask.current?.cancel();\n renderTask.current = null;\n };\n }, [page, pageState.pageCount]);\n\n useImperativeHandle(\n controllerRef,\n () => ({\n getState: () => pageState,\n setPage: (next) => setPage(boundedPage(next, pageState.pageCount)),\n resolveViewportRegion: (rectangle) => {\n const canvas = canvasRef.current;\n if (canvas === null || pageState.pageCount === 0) return null;\n return resolvePdfViewportRegion(pageState.page, canvas.getBoundingClientRect(), rectangle);\n },\n capturePage: async (type = 'image/png', quality) => {\n const canvas = canvasRef.current;\n return canvas === null ? null : await canvasBlob(canvas, type, quality);\n },\n }),\n [pageState],\n );\n\n return (\n <section data-testid={testId} data-kind=\"pdf\" className={cn('flex min-h-0 flex-col gap-2', className)}>\n <div className=\"flex items-center justify-between gap-2 text-xs text-doom-faint\">\n <span>{path}</span>\n <div className=\"flex items-center gap-2\">\n <Button\n size=\"xs\"\n variant=\"ghost\"\n disabled={page <= 1}\n onClick={() => setPage((value) => Math.max(1, value - 1))}\n >\n previous\n </Button>\n <span data-testid={testId === undefined ? undefined : `${testId}-page`}>\n {pageState.pageCount === 0 ? 'loading' : `${page} / ${pageState.pageCount}`}\n </span>\n <Button\n size=\"xs\"\n variant=\"ghost\"\n disabled={pageState.pageCount === 0 || page >= pageState.pageCount}\n onClick={() => setPage((value) => boundedPage(value + 1, pageState.pageCount))}\n >\n next\n </Button>\n </div>\n </div>\n {error === undefined ? null : <output className=\"text-xs text-doom-red\">{error}</output>}\n <div className=\"min-h-0 overflow-auto rounded border border-doom-border bg-doom-deep\">\n <canvas ref={canvasRef} aria-label={path} className=\"mx-auto block max-w-full\" />\n </div>\n </section>\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
//#region src/components/PdfPreview.d.ts
|
|
2
|
+
export interface PdfNormalizedRectangle {
|
|
3
|
+
x: number;
|
|
4
|
+
y: number;
|
|
5
|
+
width: number;
|
|
6
|
+
height: number;
|
|
7
|
+
}
|
|
8
|
+
export interface PdfPageState {
|
|
9
|
+
page: number;
|
|
10
|
+
pageCount: number;
|
|
11
|
+
sourceWidth: number;
|
|
12
|
+
sourceHeight: number;
|
|
13
|
+
}
|
|
14
|
+
export interface PdfPageRegion {
|
|
15
|
+
page: number;
|
|
16
|
+
rect: PdfNormalizedRectangle;
|
|
17
|
+
}
|
|
18
|
+
export interface PdfPreviewController {
|
|
19
|
+
getState: () => PdfPageState;
|
|
20
|
+
setPage: (page: number) => void;
|
|
21
|
+
resolveViewportRegion: (rectangle: {
|
|
22
|
+
left: number;
|
|
23
|
+
top: number;
|
|
24
|
+
right: number;
|
|
25
|
+
bottom: number;
|
|
26
|
+
}) => PdfPageRegion | null;
|
|
27
|
+
capturePage: (type?: 'image/png' | 'image/jpeg', quality?: number) => Promise<Blob | null>;
|
|
28
|
+
}
|
|
29
|
+
export interface PdfPreviewProps {
|
|
30
|
+
src: string;
|
|
31
|
+
path: string;
|
|
32
|
+
className?: string;
|
|
33
|
+
'data-testid'?: string;
|
|
34
|
+
controllerRef?: import('react').Ref<PdfPreviewController>;
|
|
35
|
+
}
|
|
36
|
+
export declare function resolvePdfViewportRegion(page: number, bounds: {
|
|
37
|
+
left: number;
|
|
38
|
+
top: number;
|
|
39
|
+
right: number;
|
|
40
|
+
bottom: number;
|
|
41
|
+
width: number;
|
|
42
|
+
height: number;
|
|
43
|
+
}, rectangle: {
|
|
44
|
+
left: number;
|
|
45
|
+
top: number;
|
|
46
|
+
right: number;
|
|
47
|
+
bottom: number;
|
|
48
|
+
}): PdfPageRegion | null;
|
|
49
|
+
/** A page-aware PDF canvas. Coordinates resolve against PDF page geometry rather than an opaque browser iframe. */
|
|
50
|
+
export declare function PdfPreview({ src, path, className, controllerRef, 'data-testid': testId }: PdfPreviewProps): import("react").JSX.Element;
|
|
51
|
+
//#endregion
|
|
52
|
+
//# sourceMappingURL=PdfPreview.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PdfPreview.d.mts","names":[],"sources":["../../../src/components/PdfPreview.tsx"],"mappings":";iBAQiB;EACf;EACA;EACA;EACA;;iBAGe;EACf;EACA;EACA;EACA;;iBAGe;EACf;EACA,MAAM;;iBAGS;EACf,gBAAgB;EAChB,UAAU;EACV,wBAAwB;IACtB;IACA;IACA;IACA;QACI;EACN,cAAc,mCAAmC,qBAAqB,QAAQ;;iBAG/D;EACf;EACA;EACA;EACA;EACA,gCAAgC,IAAI;;wBAUtB,yBACd,cACA;EAAU;EAAc;EAAa;EAAe;EAAgB;EAAe;GACnF;EAAa;EAAc;EAAa;EAAe;IACtD;;wBA0Ba,aAAa,KAAK,MAAM,WAAW,8BAA8B,UAAU,kCAAe,IAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{cn as e}from"../lib/cn.mjs";import{Button as t}from"./Button.mjs";import{jsx as n,jsxs as r}from"react/jsx-runtime";import{useEffect as i,useImperativeHandle as a,useRef as o,useState as s}from"react";const c={page:1,pageCount:0,sourceWidth:0,sourceHeight:0};function l(e,t){return!Number.isFinite(e)||t<=0?1:Math.min(t,Math.max(1,Math.trunc(e)))}function u(e,t,n){if(t.width<=0||t.height<=0)return null;let r=Math.max(t.left,Math.min(t.right,n.left)),i=Math.max(t.left,Math.min(t.right,n.right)),a=Math.max(t.top,Math.min(t.bottom,n.top)),o=Math.max(t.top,Math.min(t.bottom,n.bottom));return i<=r||o<=a?null:{page:e,rect:{x:(r-t.left)/t.width,y:(a-t.top)/t.height,width:(i-r)/t.width,height:(o-a)/t.height}}}function d(e,t,n){return new Promise(r=>e.toBlob(r,t,n))}function f({src:f,path:p,className:m,controllerRef:h,"data-testid":g}){let _=o(null),v=o(null),y=o(null),[b,x]=s(1),[S,C]=s(c),[w,T]=s();return i(()=>{let e=!1,t;return import(`pdfjs-dist/webpack.mjs`).then(({getDocument:n})=>{if(!e)return t=n({url:f}),t.promise.then(t=>{e||(v.current=t,T(void 0),x(1),C({...c,pageCount:t.numPages}))})}).catch(t=>{e||T(t instanceof Error?t.message:String(t))}),()=>{e=!0,t?.destroy(),y.current?.cancel(),y.current=null,v.current=null}},[f]),i(()=>{let e=v.current,t=_.current;if(e===null||t===null)return;let n=!1;return e.getPage(b).then(r=>{if(n)return;let i=r.getViewport({scale:1}),a=r.getViewport({scale:1.5});t.width=Math.ceil(a.width),t.height=Math.ceil(a.height),C({page:b,pageCount:e.numPages,sourceWidth:i.width,sourceHeight:i.height});let o=t.getContext(`2d`);if(o===null)return;let s=r.render({canvas:t,canvasContext:o,viewport:a});return y.current=s,s.promise}).catch(e=>{!n&&e.name!==`RenderingCancelledException`&&T(e instanceof Error?e.message:String(e))}),()=>{n=!0,y.current?.cancel(),y.current=null}},[b,S.pageCount]),a(h,()=>({getState:()=>S,setPage:e=>x(l(e,S.pageCount)),resolveViewportRegion:e=>{let t=_.current;return t===null||S.pageCount===0?null:u(S.page,t.getBoundingClientRect(),e)},capturePage:async(e=`image/png`,t)=>{let n=_.current;return n===null?null:await d(n,e,t)}}),[S]),/* @__PURE__ */ r(`section`,{"data-testid":g,"data-kind":`pdf`,className:e(`flex min-h-0 flex-col gap-2`,m),children:[/* @__PURE__ */ r(`div`,{className:`flex items-center justify-between gap-2 text-xs text-doom-faint`,children:[/* @__PURE__ */ n(`span`,{children:p}),/* @__PURE__ */ r(`div`,{className:`flex items-center gap-2`,children:[/* @__PURE__ */ n(t,{size:`xs`,variant:`ghost`,disabled:b<=1,onClick:()=>x(e=>Math.max(1,e-1)),children:`previous`}),/* @__PURE__ */ n(`span`,{"data-testid":g===void 0?void 0:`${g}-page`,children:S.pageCount===0?`loading`:`${b} / ${S.pageCount}`}),/* @__PURE__ */ n(t,{size:`xs`,variant:`ghost`,disabled:S.pageCount===0||b>=S.pageCount,onClick:()=>x(e=>l(e+1,S.pageCount)),children:`next`})]})]}),w===void 0?null:/* @__PURE__ */ n(`output`,{className:`text-xs text-doom-red`,children:w}),/* @__PURE__ */ n(`div`,{className:`min-h-0 overflow-auto rounded border border-doom-border bg-doom-deep`,children:/* @__PURE__ */ n(`canvas`,{ref:_,"aria-label":p,className:`mx-auto block max-w-full`})})]})}export{f as PdfPreview,u as resolvePdfViewportRegion};
|
|
2
|
+
//# sourceMappingURL=PdfPreview.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PdfPreview.mjs","names":[],"sources":["../../../src/components/PdfPreview.tsx"],"sourcesContent":["import type { PDFDocumentProxy, PDFPageProxy } from 'pdfjs-dist/webpack.mjs';\nimport { useEffect, useImperativeHandle, useRef, useState } from 'react';\n\nimport { cn } from '../lib/cn';\nimport { Button } from './Button';\n\ntype PdfLoadingTask = ReturnType<typeof import('pdfjs-dist/webpack.mjs').getDocument>;\n\nexport interface PdfNormalizedRectangle {\n x: number;\n y: number;\n width: number;\n height: number;\n}\n\nexport interface PdfPageState {\n page: number;\n pageCount: number;\n sourceWidth: number;\n sourceHeight: number;\n}\n\nexport interface PdfPageRegion {\n page: number;\n rect: PdfNormalizedRectangle;\n}\n\nexport interface PdfPreviewController {\n getState: () => PdfPageState;\n setPage: (page: number) => void;\n resolveViewportRegion: (rectangle: {\n left: number;\n top: number;\n right: number;\n bottom: number;\n }) => PdfPageRegion | null;\n capturePage: (type?: 'image/png' | 'image/jpeg', quality?: number) => Promise<Blob | null>;\n}\n\nexport interface PdfPreviewProps {\n src: string;\n path: string;\n className?: string;\n 'data-testid'?: string;\n controllerRef?: import('react').Ref<PdfPreviewController>;\n}\n\nconst EMPTY_STATE: PdfPageState = { page: 1, pageCount: 0, sourceWidth: 0, sourceHeight: 0 };\n\nfunction boundedPage(page: number, pageCount: number): number {\n if (!Number.isFinite(page) || pageCount <= 0) return 1;\n return Math.min(pageCount, Math.max(1, Math.trunc(page)));\n}\n\nexport function resolvePdfViewportRegion(\n page: number,\n bounds: { left: number; top: number; right: number; bottom: number; width: number; height: number },\n rectangle: { left: number; top: number; right: number; bottom: number },\n): PdfPageRegion | null {\n if (bounds.width <= 0 || bounds.height <= 0) return null;\n const left = Math.max(bounds.left, Math.min(bounds.right, rectangle.left));\n const right = Math.max(bounds.left, Math.min(bounds.right, rectangle.right));\n const top = Math.max(bounds.top, Math.min(bounds.bottom, rectangle.top));\n const bottom = Math.max(bounds.top, Math.min(bounds.bottom, rectangle.bottom));\n if (right <= left || bottom <= top) return null;\n return {\n page,\n rect: {\n x: (left - bounds.left) / bounds.width,\n y: (top - bounds.top) / bounds.height,\n width: (right - left) / bounds.width,\n height: (bottom - top) / bounds.height,\n },\n };\n}\nfunction canvasBlob(\n canvas: HTMLCanvasElement,\n type: 'image/png' | 'image/jpeg',\n quality?: number,\n): Promise<Blob | null> {\n return new Promise((resolve) => canvas.toBlob(resolve, type, quality));\n}\n\n/** A page-aware PDF canvas. Coordinates resolve against PDF page geometry rather than an opaque browser iframe. */\nexport function PdfPreview({ src, path, className, controllerRef, 'data-testid': testId }: PdfPreviewProps) {\n const canvasRef = useRef<HTMLCanvasElement>(null);\n const documentRef = useRef<PDFDocumentProxy | null>(null);\n const renderTask = useRef<{ cancel(): void } | null>(null);\n const [page, setPage] = useState(1);\n const [pageState, setPageState] = useState<PdfPageState>(EMPTY_STATE);\n const [error, setError] = useState<string | undefined>();\n\n useEffect(() => {\n let disposed = false;\n let loading: PdfLoadingTask | undefined;\n // pdfjs is imported on demand: `pdfjs-dist/webpack.mjs` spins up its worker\n // at module scope, so a static import would make every consumer of this\n // package pay for the worker whether or not it ever shows a PDF.\n void import('pdfjs-dist/webpack.mjs')\n .then(({ getDocument }) => {\n if (disposed) return undefined;\n loading = getDocument({ url: src });\n return loading.promise.then((document) => {\n if (disposed) return;\n documentRef.current = document;\n setError(undefined);\n setPage(1);\n setPageState({ ...EMPTY_STATE, pageCount: document.numPages });\n });\n })\n .catch((reason: unknown) => {\n if (!disposed) setError(reason instanceof Error ? reason.message : String(reason));\n });\n return () => {\n disposed = true;\n void loading?.destroy();\n renderTask.current?.cancel();\n renderTask.current = null;\n documentRef.current = null;\n };\n }, [src]);\n\n useEffect(() => {\n const document = documentRef.current;\n const canvas = canvasRef.current;\n if (document === null || canvas === null) return;\n let disposed = false;\n void document\n .getPage(page)\n .then((pdfPage: PDFPageProxy) => {\n if (disposed) return;\n const source = pdfPage.getViewport({ scale: 1 });\n const viewport = pdfPage.getViewport({ scale: 1.5 });\n canvas.width = Math.ceil(viewport.width);\n canvas.height = Math.ceil(viewport.height);\n setPageState({ page, pageCount: document.numPages, sourceWidth: source.width, sourceHeight: source.height });\n const context = canvas.getContext('2d');\n if (context === null) return;\n const task = pdfPage.render({ canvas, canvasContext: context, viewport });\n renderTask.current = task;\n return task.promise;\n })\n .catch((reason: unknown) => {\n if (!disposed && (reason as { name?: unknown }).name !== 'RenderingCancelledException') {\n setError(reason instanceof Error ? reason.message : String(reason));\n }\n });\n return () => {\n disposed = true;\n renderTask.current?.cancel();\n renderTask.current = null;\n };\n }, [page, pageState.pageCount]);\n\n useImperativeHandle(\n controllerRef,\n () => ({\n getState: () => pageState,\n setPage: (next) => setPage(boundedPage(next, pageState.pageCount)),\n resolveViewportRegion: (rectangle) => {\n const canvas = canvasRef.current;\n if (canvas === null || pageState.pageCount === 0) return null;\n return resolvePdfViewportRegion(pageState.page, canvas.getBoundingClientRect(), rectangle);\n },\n capturePage: async (type = 'image/png', quality) => {\n const canvas = canvasRef.current;\n return canvas === null ? null : await canvasBlob(canvas, type, quality);\n },\n }),\n [pageState],\n );\n\n return (\n <section data-testid={testId} data-kind=\"pdf\" className={cn('flex min-h-0 flex-col gap-2', className)}>\n <div className=\"flex items-center justify-between gap-2 text-xs text-doom-faint\">\n <span>{path}</span>\n <div className=\"flex items-center gap-2\">\n <Button\n size=\"xs\"\n variant=\"ghost\"\n disabled={page <= 1}\n onClick={() => setPage((value) => Math.max(1, value - 1))}\n >\n previous\n </Button>\n <span data-testid={testId === undefined ? undefined : `${testId}-page`}>\n {pageState.pageCount === 0 ? 'loading' : `${page} / ${pageState.pageCount}`}\n </span>\n <Button\n size=\"xs\"\n variant=\"ghost\"\n disabled={pageState.pageCount === 0 || page >= pageState.pageCount}\n onClick={() => setPage((value) => boundedPage(value + 1, pageState.pageCount))}\n >\n next\n </Button>\n </div>\n </div>\n {error === undefined ? null : <output className=\"text-xs text-doom-red\">{error}</output>}\n <div className=\"min-h-0 overflow-auto rounded border border-doom-border bg-doom-deep\">\n <canvas ref={canvasRef} aria-label={path} className=\"mx-auto block max-w-full\" />\n </div>\n </section>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime");function r(e){return(0,n.jsx)(t.Popover.Root,{"data-slot":`popover`,...e})}function i(e){return(0,n.jsx)(t.Popover.Trigger,{"data-slot":`popover-trigger`,...e})}function a(e){return(0,n.jsx)(t.Popover.Anchor,{"data-slot":`popover-anchor`,...e})}function o(e){return(0,n.jsx)(t.Popover.Close,{"data-slot":`popover-close`,...e})}function s({className:r,align:i=`start`,sideOffset:a=6,...o}){return(0,n.jsx)(t.Popover.Portal,{children
|
|
1
|
+
const e=require("../lib/cn.cjs");let t=require("radix-ui"),n=require("react/jsx-runtime");function r(e){return/* @__PURE__ */ (0,n.jsx)(t.Popover.Root,{"data-slot":`popover`,...e})}function i(e){return/* @__PURE__ */ (0,n.jsx)(t.Popover.Trigger,{"data-slot":`popover-trigger`,...e})}function a(e){return/* @__PURE__ */ (0,n.jsx)(t.Popover.Anchor,{"data-slot":`popover-anchor`,...e})}function o(e){return/* @__PURE__ */ (0,n.jsx)(t.Popover.Close,{"data-slot":`popover-close`,...e})}function s({className:r,align:i=`start`,sideOffset:a=6,...o}){return/* @__PURE__ */ (0,n.jsx)(t.Popover.Portal,{children:/* @__PURE__ */ (0,n.jsx)(t.Popover.Content,{"data-slot":`popover-content`,align:i,sideOffset:a,className:e.cn(`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__ */ (0,n.jsx)(`div`,{"data-slot":`popover-header`,className:e.cn(`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__ */ (0,n.jsx)(`div`,{"data-slot":`popover-footer`,className:e.cn(`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})}exports.Popover=r,exports.PopoverAnchor=a,exports.PopoverClose=o,exports.PopoverContent=s,exports.PopoverFooter=l,exports.PopoverHeader=c,exports.PopoverTrigger=i;
|
|
2
2
|
//# sourceMappingURL=Popover.cjs.map
|
|
@@ -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';\nimport { cn } from '../lib/cn
|
|
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"}
|
|
@@ -5,15 +5,15 @@ import { ComponentProps } from "react";
|
|
|
5
5
|
* shadcn's Popover on Radix: anchored to its trigger, closes on outside
|
|
6
6
|
* click and Escape, and the trigger toggles it rather than reopening it.
|
|
7
7
|
*/
|
|
8
|
-
declare function Popover$1(props: ComponentProps<typeof Popover.Root>): import("react
|
|
9
|
-
declare function PopoverTrigger(props: ComponentProps<typeof Popover.Trigger>): import("react
|
|
10
|
-
declare function PopoverAnchor(props: ComponentProps<typeof Popover.Anchor>): import("react
|
|
8
|
+
declare function Popover$1(props: ComponentProps<typeof Popover.Root>): import("react").JSX.Element;
|
|
9
|
+
export declare function PopoverTrigger(props: ComponentProps<typeof Popover.Trigger>): import("react").JSX.Element;
|
|
10
|
+
export declare function PopoverAnchor(props: ComponentProps<typeof Popover.Anchor>): import("react").JSX.Element;
|
|
11
11
|
/** Dismisses the popover from inside it: the row that acts and closes in one click. */
|
|
12
|
-
declare function PopoverClose(props: ComponentProps<typeof Popover.Close>): import("react
|
|
13
|
-
declare function PopoverContent({ className, align, sideOffset, ...props }: ComponentProps<typeof Popover.Content>): import("react
|
|
12
|
+
export declare function PopoverClose(props: ComponentProps<typeof Popover.Close>): import("react").JSX.Element;
|
|
13
|
+
export declare function PopoverContent({ className, align, sideOffset, ...props }: ComponentProps<typeof Popover.Content>): import("react").JSX.Element;
|
|
14
14
|
/** The strip a popover's title sits in; tone colours the title. */
|
|
15
|
-
declare function PopoverHeader({ className, ...props }: ComponentProps<'div'>): import("react
|
|
16
|
-
declare function PopoverFooter({ className, ...props }: ComponentProps<'div'>): import("react
|
|
15
|
+
export declare function PopoverHeader({ className, ...props }: ComponentProps<'div'>): import("react").JSX.Element;
|
|
16
|
+
export declare function PopoverFooter({ className, ...props }: ComponentProps<'div'>): import("react").JSX.Element;
|
|
17
17
|
//#endregion
|
|
18
|
-
export { Popover$1 as Popover
|
|
18
|
+
export { Popover$1 as Popover };
|
|
19
19
|
//# sourceMappingURL=Popover.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popover.d.mts","names":[],"sources":["../../../src/components/Popover.tsx"],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"file":"Popover.d.mts","names":[],"sources":["../../../src/components/Popover.tsx"],"mappings":";;;;;;;iBASgB,UAAQ,OAAO,sBAAsB,QAAiB,wBAAK,IAAA;wBAI3D,eAAe,OAAO,sBAAsB,QAAiB,2BAAQ,IAAA;wBAIrE,cAAc,OAAO,sBAAsB,QAAiB,0BAAO,IAAA;;wBAKnE,aAAa,OAAO,sBAAsB,QAAiB,yBAAM,IAAA;wBAIjE,iBACd,WACA,OACA,eACG,SACF,sBAAsB,QAAiB,2BAAQ,IAAA;;wBAkBlC,gBAAgB,cAAc,SAAS,wCAAqB,IAAA;wBAa5D,gBAAgB,cAAc,SAAS,wCAAqB,IAAA"}
|
|
@@ -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
|
|
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';\nimport { cn } from '../lib/cn
|
|
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
|
|
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';\nimport { cn } from '../lib/cn
|
|
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"}
|
|
@@ -2,7 +2,7 @@ import { Progress } from "radix-ui";
|
|
|
2
2
|
import { ComponentProps } from "react";
|
|
3
3
|
//#region src/components/Progress.d.ts
|
|
4
4
|
/** A determinate bar; leave `value` undefined and Radix reports it as indeterminate. */
|
|
5
|
-
declare function Progress$1({ className, value, ...props }: ComponentProps<typeof Progress.Root>): import("react
|
|
5
|
+
declare function Progress$1({ className, value, ...props }: ComponentProps<typeof Progress.Root>): import("react").JSX.Element;
|
|
6
6
|
//#endregion
|
|
7
7
|
export { Progress$1 as Progress };
|
|
8
8
|
//# sourceMappingURL=Progress.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Progress.d.mts","names":[],"sources":["../../../src/components/Progress.tsx"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"Progress.d.mts","names":[],"sources":["../../../src/components/Progress.tsx"],"mappings":";;;;iBAMgB,aAAW,WAAW,UAAU,SAAS,sBAAsB,SAAkB,wBAAK,IAAA"}
|
|
@@ -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
|
|
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';\nimport { cn } from '../lib/cn
|
|
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
|
|
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';\nimport { cn } from '../lib/cn
|
|
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"}
|
|
@@ -2,14 +2,14 @@ import { RadioGroup } from "radix-ui";
|
|
|
2
2
|
import { ComponentProps } from "react";
|
|
3
3
|
//#region src/components/RadioGroup.d.ts
|
|
4
4
|
/** One choice out of several; Radix owns the arrow-key roving focus a native group has. */
|
|
5
|
-
declare function RadioGroup$1({ className, ...props }: ComponentProps<typeof RadioGroup.Root>): import("react
|
|
6
|
-
declare function RadioGroupItem({ className, ...props }: ComponentProps<typeof RadioGroup.Item>): import("react
|
|
5
|
+
declare function RadioGroup$1({ className, ...props }: ComponentProps<typeof RadioGroup.Root>): import("react").JSX.Element;
|
|
6
|
+
export declare function RadioGroupItem({ className, ...props }: ComponentProps<typeof RadioGroup.Item>): import("react").JSX.Element;
|
|
7
7
|
/**
|
|
8
8
|
* A whole card that is one radio choice: the theme picker, where the target is
|
|
9
9
|
* the preview rather than a dot. Radix keeps the roving focus and the checked
|
|
10
10
|
* state; the card supplies the frame.
|
|
11
11
|
*/
|
|
12
|
-
declare function RadioGroupCard({ className, ...props }: ComponentProps<typeof RadioGroup.Item>): import("react
|
|
12
|
+
export declare function RadioGroupCard({ className, ...props }: ComponentProps<typeof RadioGroup.Item>): import("react").JSX.Element;
|
|
13
13
|
//#endregion
|
|
14
|
-
export { RadioGroup$1 as RadioGroup
|
|
14
|
+
export { RadioGroup$1 as RadioGroup };
|
|
15
15
|
//# sourceMappingURL=RadioGroup.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RadioGroup.d.mts","names":[],"sources":["../../../src/components/RadioGroup.tsx"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"RadioGroup.d.mts","names":[],"sources":["../../../src/components/RadioGroup.tsx"],"mappings":";;;;iBAMgB,eAAa,cAAc,SAAS,sBAAsB,WAAoB,wBAAK,IAAA;wBAMnF,iBAAiB,cAAc,SAAS,sBAAsB,WAAoB,wBAAK,IAAA;;;;;;wBAuBvF,iBAAiB,cAAc,SAAS,sBAAsB,WAAoB,wBAAK,IAAA"}
|
|
@@ -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
|
|
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';\nimport { cn } from '../lib/cn
|
|
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})
|
|
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';\nimport { cn } from '../lib/cn
|
|
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"}
|
|
@@ -6,8 +6,8 @@ import { ComponentProps } from "react";
|
|
|
6
6
|
* the native scrollbar, so reach for this only where the bar must overlay the
|
|
7
7
|
* content or sit inside a rounded surface that clips it.
|
|
8
8
|
*/
|
|
9
|
-
declare function ScrollArea$1({ className, children, ...props }: ComponentProps<typeof ScrollArea.Root>): import("react
|
|
10
|
-
declare function ScrollBar({ className, orientation, ...props }: ComponentProps<typeof ScrollArea.ScrollAreaScrollbar>): import("react
|
|
9
|
+
declare function ScrollArea$1({ className, children, ...props }: ComponentProps<typeof ScrollArea.Root>): import("react").JSX.Element;
|
|
10
|
+
export declare function ScrollBar({ className, orientation, ...props }: ComponentProps<typeof ScrollArea.ScrollAreaScrollbar>): import("react").JSX.Element;
|
|
11
11
|
//#endregion
|
|
12
|
-
export { ScrollArea$1 as ScrollArea
|
|
12
|
+
export { ScrollArea$1 as ScrollArea };
|
|
13
13
|
//# sourceMappingURL=ScrollArea.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollArea.d.mts","names":[],"sources":["../../../src/components/ScrollArea.tsx"],"mappings":";;;;;;;;
|
|
1
|
+
{"version":3,"file":"ScrollArea.d.mts","names":[],"sources":["../../../src/components/ScrollArea.tsx"],"mappings":";;;;;;;;iBAUgB,eAAa,WAAW,aAAa,SAAS,sBAAsB,WAAoB,wBAAK,IAAA;wBAY7F,YACd,WACA,gBACG,SACF,sBAAsB,WAAoB,uCAAoB,IAAA"}
|
|
@@ -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})
|
|
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';\nimport { cn } from '../lib/cn
|
|
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-
|
|
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';\nimport { cn } from '../lib/cn
|
|
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,7 +1,6 @@
|
|
|
1
1
|
import { ComponentProps } from "react";
|
|
2
2
|
//#region src/components/SectionLabel.d.ts
|
|
3
3
|
/** The tiny tracked-out caps that head every cockpit section (SESSIONS, ACTIVITY, MINOR MODES). */
|
|
4
|
-
declare function SectionLabel({ className, ...props }: ComponentProps<'span'>): import("react
|
|
4
|
+
export declare function SectionLabel({ className, ...props }: ComponentProps<'span'>): import("react").JSX.Element;
|
|
5
5
|
//#endregion
|
|
6
|
-
export { SectionLabel };
|
|
7
6
|
//# sourceMappingURL=SectionLabel.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SectionLabel.d.mts","names":[],"sources":["../../../src/components/SectionLabel.tsx"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"SectionLabel.d.mts","names":[],"sources":["../../../src/components/SectionLabel.tsx"],"mappings":";;;wBAKgB,eAAe,cAAc,SAAS,yCAAsB,IAAA"}
|
|
@@ -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-
|
|
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';\nimport { cn } from '../lib/cn
|
|
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-
|
|
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';\nimport { CheckIcon, ChevronDownIcon } from '../icons/icons
|
|
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"}
|