@usefragments/ui 1.5.4 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/dist/assets/fragments-wordmark.cjs +2 -2
- package/dist/assets/fragments-wordmark.d.ts.map +1 -1
- package/dist/assets/fragments-wordmark.js +2 -2
- package/dist/assets/ui.css +10468 -6909
- package/dist/chart.cjs +31 -26
- package/dist/chart.js +31 -26
- package/dist/codeblock.cjs +55 -29
- package/dist/codeblock.js +55 -29
- package/dist/colorpicker.cjs +5 -2
- package/dist/colorpicker.js +5 -2
- package/dist/components/Accordion/Accordion.module.scss.cjs +8 -8
- package/dist/components/Accordion/Accordion.module.scss.js +8 -8
- package/dist/components/Alert/Alert.module.scss.cjs +15 -12
- package/dist/components/Alert/Alert.module.scss.js +15 -12
- package/dist/components/Alert/index.cjs +7 -1
- package/dist/components/Alert/index.d.ts +12 -6
- package/dist/components/Alert/index.d.ts.map +1 -1
- package/dist/components/Alert/index.js +7 -1
- package/dist/components/AppShell/AppShell.module.scss.cjs +14 -14
- package/dist/components/AppShell/AppShell.module.scss.js +14 -14
- package/dist/components/AppShell/index.cjs +5 -3
- package/dist/components/AppShell/index.d.ts +4 -2
- package/dist/components/AppShell/index.d.ts.map +1 -1
- package/dist/components/AppShell/index.js +5 -3
- package/dist/components/Avatar/Avatar.module.scss.cjs +17 -14
- package/dist/components/Avatar/Avatar.module.scss.js +17 -14
- package/dist/components/Avatar/index.cjs +100 -118
- package/dist/components/Avatar/index.d.ts +7 -5
- package/dist/components/Avatar/index.d.ts.map +1 -1
- package/dist/components/Avatar/index.js +100 -118
- package/dist/components/Badge/Badge.module.scss.cjs +19 -19
- package/dist/components/Badge/Badge.module.scss.js +19 -19
- package/dist/components/BentoGrid/BentoGrid.module.scss.cjs +14 -14
- package/dist/components/BentoGrid/BentoGrid.module.scss.js +14 -14
- package/dist/components/Box/Box.module.scss.cjs +152 -152
- package/dist/components/Box/Box.module.scss.js +152 -152
- package/dist/components/Box/index.cjs +64 -75
- package/dist/components/Box/index.d.ts +16 -16
- package/dist/components/Box/index.d.ts.map +1 -1
- package/dist/components/Box/index.js +64 -75
- package/dist/components/Breadcrumbs/Breadcrumbs.module.scss.cjs +8 -8
- package/dist/components/Breadcrumbs/Breadcrumbs.module.scss.js +8 -8
- package/dist/components/Button/Button.module.scss.cjs +14 -14
- package/dist/components/Button/Button.module.scss.js +14 -14
- package/dist/components/ButtonGroup/ButtonGroup.module.scss.cjs +15 -15
- package/dist/components/ButtonGroup/ButtonGroup.module.scss.js +15 -15
- package/dist/components/Card/Card.module.scss.cjs +30 -18
- package/dist/components/Card/Card.module.scss.js +31 -19
- package/dist/components/Card/index.cjs +8 -0
- package/dist/components/Card/index.d.ts +12 -2
- package/dist/components/Card/index.d.ts.map +1 -1
- package/dist/components/Card/index.js +8 -0
- package/dist/components/Chart/Chart.module.scss.cjs +15 -15
- package/dist/components/Chart/Chart.module.scss.js +15 -15
- package/dist/components/Chart/index.d.ts +7 -7
- package/dist/components/Chart/index.d.ts.map +1 -1
- package/dist/components/Checkbox/Checkbox.module.scss.cjs +9 -15
- package/dist/components/Checkbox/Checkbox.module.scss.js +9 -15
- package/dist/components/Checkbox/index.cjs +6 -8
- package/dist/components/Checkbox/index.d.ts.map +1 -1
- package/dist/components/Checkbox/index.js +6 -8
- package/dist/components/Chip/Chip.module.scss.cjs +15 -15
- package/dist/components/Chip/Chip.module.scss.js +15 -15
- package/dist/components/Chip/index.cjs +6 -6
- package/dist/components/Chip/index.d.ts +1 -1
- package/dist/components/Chip/index.js +4 -4
- package/dist/components/CodeBlock/CodeBlock.module.scss.cjs +27 -24
- package/dist/components/CodeBlock/CodeBlock.module.scss.js +27 -24
- package/dist/components/CodeBlock/css-variables-theme.cjs +98 -0
- package/dist/components/CodeBlock/css-variables-theme.d.ts +27 -0
- package/dist/components/CodeBlock/css-variables-theme.d.ts.map +1 -0
- package/dist/components/CodeBlock/css-variables-theme.js +98 -0
- package/dist/components/CodeBlock/index.d.ts +17 -3
- package/dist/components/CodeBlock/index.d.ts.map +1 -1
- package/dist/components/Collapsible/Collapsible.module.scss.cjs +9 -12
- package/dist/components/Collapsible/Collapsible.module.scss.js +9 -12
- package/dist/components/Collapsible/index.cjs +3 -2
- package/dist/components/Collapsible/index.d.ts +3 -3
- package/dist/components/Collapsible/index.d.ts.map +1 -1
- package/dist/components/Collapsible/index.js +3 -2
- package/dist/components/ColorPicker/ColorPicker.module.scss.cjs +16 -16
- package/dist/components/ColorPicker/ColorPicker.module.scss.js +16 -16
- package/dist/components/ColorPicker/index.d.ts.map +1 -1
- package/dist/components/Combobox/Combobox.module.scss.cjs +21 -27
- package/dist/components/Combobox/Combobox.module.scss.js +21 -27
- package/dist/components/Combobox/index.cjs +21 -5
- package/dist/components/Combobox/index.d.ts.map +1 -1
- package/dist/components/Combobox/index.js +21 -5
- package/dist/components/Command/Command.module.scss.cjs +11 -11
- package/dist/components/Command/Command.module.scss.js +11 -11
- package/dist/components/Command/index.cjs +26 -15
- package/dist/components/Command/index.d.ts +2 -2
- package/dist/components/Command/index.d.ts.map +1 -1
- package/dist/components/Command/index.js +26 -15
- package/dist/components/ConversationList/ConversationList.module.scss.cjs +11 -14
- package/dist/components/ConversationList/ConversationList.module.scss.js +11 -14
- package/dist/components/ConversationList/index.cjs +40 -44
- package/dist/components/ConversationList/index.d.ts +3 -3
- package/dist/components/ConversationList/index.d.ts.map +1 -1
- package/dist/components/ConversationList/index.js +40 -44
- package/dist/components/DataTable/DataTable.icons.cjs +6 -33
- package/dist/components/DataTable/DataTable.icons.d.ts.map +1 -1
- package/dist/components/DataTable/DataTable.icons.js +6 -33
- package/dist/components/DataTable/DataTable.module.scss.cjs +32 -56
- package/dist/components/DataTable/DataTable.module.scss.js +32 -56
- package/dist/components/DataTable/index.d.ts +5 -4
- package/dist/components/DataTable/index.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePicker.module.scss.cjs +33 -33
- package/dist/components/DatePicker/DatePicker.module.scss.js +33 -33
- package/dist/components/DatePicker/index.d.ts.map +1 -1
- package/dist/components/Dialog/Dialog.module.scss.cjs +14 -14
- package/dist/components/Dialog/Dialog.module.scss.js +14 -14
- package/dist/components/Dialog/index.cjs +11 -14
- package/dist/components/Dialog/index.d.ts +7 -7
- package/dist/components/Dialog/index.d.ts.map +1 -1
- package/dist/components/Dialog/index.js +11 -14
- package/dist/components/Drawer/Drawer.module.scss.cjs +31 -28
- package/dist/components/Drawer/Drawer.module.scss.js +31 -28
- package/dist/components/Drawer/index.cjs +1 -1
- package/dist/components/Drawer/index.js +1 -1
- package/dist/components/Editor/Editor.module.scss.cjs +23 -23
- package/dist/components/Editor/Editor.module.scss.js +23 -23
- package/dist/components/Editor/index.d.ts +10 -10
- package/dist/components/Editor/index.d.ts.map +1 -1
- package/dist/components/EmptyState/EmptyState.module.scss.cjs +15 -12
- package/dist/components/EmptyState/EmptyState.module.scss.js +15 -12
- package/dist/components/EmptyState/index.cjs +8 -6
- package/dist/components/EmptyState/index.d.ts +9 -4
- package/dist/components/EmptyState/index.d.ts.map +1 -1
- package/dist/components/EmptyState/index.js +8 -6
- package/dist/components/Field/Field.module.scss.cjs +8 -5
- package/dist/components/Field/Field.module.scss.js +8 -5
- package/dist/components/Field/index.cjs +18 -1
- package/dist/components/Field/index.d.ts +9 -2
- package/dist/components/Field/index.d.ts.map +1 -1
- package/dist/components/Field/index.js +18 -1
- package/dist/components/Fieldset/Fieldset.module.scss.cjs +3 -3
- package/dist/components/Fieldset/Fieldset.module.scss.js +3 -3
- package/dist/components/Form/Form.module.scss.cjs +5 -2
- package/dist/components/Form/Form.module.scss.js +5 -2
- package/dist/components/Form/index.cjs +6 -1
- package/dist/components/Form/index.d.ts +8 -3
- package/dist/components/Form/index.d.ts.map +1 -1
- package/dist/components/Form/index.js +6 -1
- package/dist/components/Grid/Grid.module.scss.cjs +54 -72
- package/dist/components/Grid/Grid.module.scss.js +54 -72
- package/dist/components/Grid/index.cjs +57 -77
- package/dist/components/Grid/index.d.ts +11 -11
- package/dist/components/Grid/index.d.ts.map +1 -1
- package/dist/components/Grid/index.js +57 -77
- package/dist/components/Header/Header.module.scss.cjs +33 -33
- package/dist/components/Header/Header.module.scss.js +33 -33
- package/dist/components/Header/index.cjs +18 -38
- package/dist/components/Header/index.d.ts +15 -11
- package/dist/components/Header/index.d.ts.map +1 -1
- package/dist/components/Header/index.js +18 -38
- package/dist/components/Icon/Icon.module.scss.cjs +29 -8
- package/dist/components/Icon/Icon.module.scss.js +30 -9
- package/dist/components/Icon/index.cjs +30 -48
- package/dist/components/Icon/index.d.ts +6 -6
- package/dist/components/Icon/index.d.ts.map +1 -1
- package/dist/components/Icon/index.js +30 -48
- package/dist/components/IconButton/IconButton.module.scss.cjs +8 -8
- package/dist/components/IconButton/IconButton.module.scss.js +8 -8
- package/dist/components/IconButton/index.cjs +2 -1
- package/dist/components/IconButton/index.d.ts.map +1 -1
- package/dist/components/IconButton/index.js +2 -1
- package/dist/components/Image/Image.module.scss.cjs +27 -27
- package/dist/components/Image/Image.module.scss.js +27 -27
- package/dist/components/Input/Input.module.scss.cjs +19 -25
- package/dist/components/Input/Input.module.scss.js +19 -25
- package/dist/components/Input/index.cjs +1 -2
- package/dist/components/Input/index.d.ts.map +1 -1
- package/dist/components/Input/index.js +1 -2
- package/dist/components/Link/Link.module.scss.cjs +14 -10
- package/dist/components/Link/Link.module.scss.js +14 -10
- package/dist/components/Link/index.d.ts +1 -1
- package/dist/components/Link/index.d.ts.map +1 -1
- package/dist/components/List/List.module.scss.cjs +19 -19
- package/dist/components/List/List.module.scss.js +19 -19
- package/dist/components/List/index.cjs +4 -7
- package/dist/components/List/index.d.ts.map +1 -1
- package/dist/components/List/index.js +4 -7
- package/dist/components/Listbox/Listbox.module.scss.cjs +9 -9
- package/dist/components/Listbox/Listbox.module.scss.js +9 -9
- package/dist/components/Loading/Loading.module.scss.cjs +34 -34
- package/dist/components/Loading/Loading.module.scss.js +34 -34
- package/dist/components/Loading/index.cjs +39 -67
- package/dist/components/Loading/index.d.ts +6 -6
- package/dist/components/Loading/index.d.ts.map +1 -1
- package/dist/components/Loading/index.js +39 -67
- package/dist/components/Main/Main.module.scss.cjs +7 -7
- package/dist/components/Main/Main.module.scss.js +7 -7
- package/dist/components/Markdown/Markdown.module.scss.cjs +1 -1
- package/dist/components/Markdown/Markdown.module.scss.js +1 -1
- package/dist/components/Markdown/index.d.ts +2 -2
- package/dist/components/Markdown/index.d.ts.map +1 -1
- package/dist/components/Menu/Menu.module.scss.cjs +16 -16
- package/dist/components/Menu/Menu.module.scss.js +16 -16
- package/dist/components/Menu/index.cjs +19 -61
- package/dist/components/Menu/index.d.ts +10 -10
- package/dist/components/Menu/index.d.ts.map +1 -1
- package/dist/components/Menu/index.js +19 -61
- package/dist/components/Message/Message.module.scss.cjs +18 -21
- package/dist/components/Message/Message.module.scss.js +18 -21
- package/dist/components/Message/index.cjs +15 -2
- package/dist/components/Message/index.d.ts.map +1 -1
- package/dist/components/Message/index.js +15 -2
- package/dist/components/NavigationMenu/NavigationMenu.module.scss.cjs +34 -31
- package/dist/components/NavigationMenu/NavigationMenu.module.scss.js +34 -31
- package/dist/components/NavigationMenu/index.cjs +32 -15
- package/dist/components/NavigationMenu/index.d.ts +12 -6
- package/dist/components/NavigationMenu/index.d.ts.map +1 -1
- package/dist/components/NavigationMenu/index.js +32 -15
- package/dist/components/Pagination/Pagination.module.scss.cjs +18 -9
- package/dist/components/Pagination/Pagination.module.scss.js +19 -10
- package/dist/components/Pagination/index.cjs +5 -2
- package/dist/components/Pagination/index.d.ts +3 -1
- package/dist/components/Pagination/index.d.ts.map +1 -1
- package/dist/components/Pagination/index.js +5 -2
- package/dist/components/Popover/Popover.module.scss.cjs +10 -10
- package/dist/components/Popover/Popover.module.scss.js +10 -10
- package/dist/components/Progress/Progress.module.scss.cjs +29 -32
- package/dist/components/Progress/Progress.module.scss.js +29 -32
- package/dist/components/Progress/geometry.cjs +30 -0
- package/dist/components/Progress/geometry.d.ts +8 -0
- package/dist/components/Progress/geometry.d.ts.map +1 -0
- package/dist/components/Progress/geometry.js +30 -0
- package/dist/components/Progress/index.cjs +40 -29
- package/dist/components/Progress/index.d.ts +4 -3
- package/dist/components/Progress/index.d.ts.map +1 -1
- package/dist/components/Progress/index.js +40 -29
- package/dist/components/Prompt/Prompt.module.scss.cjs +29 -29
- package/dist/components/Prompt/Prompt.module.scss.js +29 -29
- package/dist/components/Prompt/index.cjs +5 -4
- package/dist/components/Prompt/index.d.ts.map +1 -1
- package/dist/components/Prompt/index.js +5 -4
- package/dist/components/RadioGroup/RadioGroup.module.scss.cjs +15 -21
- package/dist/components/RadioGroup/RadioGroup.module.scss.js +15 -21
- package/dist/components/RadioGroup/index.cjs +7 -6
- package/dist/components/RadioGroup/index.d.ts.map +1 -1
- package/dist/components/RadioGroup/index.js +7 -6
- package/dist/components/ScrollArea/ScrollArea.module.scss.cjs +7 -22
- package/dist/components/ScrollArea/ScrollArea.module.scss.js +7 -22
- package/dist/components/ScrollArea/index.cjs +66 -42
- package/dist/components/ScrollArea/index.d.ts +6 -5
- package/dist/components/ScrollArea/index.d.ts.map +1 -1
- package/dist/components/ScrollArea/index.js +66 -42
- package/dist/components/ScrollArea/scroll-state.cjs +58 -0
- package/dist/components/ScrollArea/scroll-state.d.ts +16 -0
- package/dist/components/ScrollArea/scroll-state.d.ts.map +1 -0
- package/dist/components/ScrollArea/scroll-state.js +58 -0
- package/dist/components/Select/Select.module.scss.cjs +21 -21
- package/dist/components/Select/Select.module.scss.js +21 -21
- package/dist/components/Select/index.cjs +3 -2
- package/dist/components/Select/index.d.ts.map +1 -1
- package/dist/components/Select/index.js +3 -2
- package/dist/components/Separator/Separator.module.scss.cjs +13 -10
- package/dist/components/Separator/Separator.module.scss.js +13 -10
- package/dist/components/Separator/index.cjs +37 -38
- package/dist/components/Separator/index.d.ts +4 -4
- package/dist/components/Separator/index.d.ts.map +1 -1
- package/dist/components/Separator/index.js +37 -38
- package/dist/components/Sidebar/Sidebar.module.scss.cjs +43 -43
- package/dist/components/Sidebar/Sidebar.module.scss.js +43 -43
- package/dist/components/Sidebar/index.cjs +17 -38
- package/dist/components/Sidebar/index.d.ts +23 -18
- package/dist/components/Sidebar/index.d.ts.map +1 -1
- package/dist/components/Sidebar/index.js +17 -38
- package/dist/components/Skeleton/Skeleton.module.scss.cjs +56 -40
- package/dist/components/Skeleton/Skeleton.module.scss.js +56 -40
- package/dist/components/Skeleton/index.cjs +41 -55
- package/dist/components/Skeleton/index.d.ts +7 -7
- package/dist/components/Skeleton/index.d.ts.map +1 -1
- package/dist/components/Skeleton/index.js +41 -55
- package/dist/components/Slider/Slider.module.scss.cjs +12 -12
- package/dist/components/Slider/Slider.module.scss.js +12 -12
- package/dist/components/Stack/Stack.module.scss.cjs +25 -45
- package/dist/components/Stack/Stack.module.scss.js +25 -45
- package/dist/components/Stack/index.cjs +106 -101
- package/dist/components/Stack/index.d.ts +7 -7
- package/dist/components/Stack/index.d.ts.map +1 -1
- package/dist/components/Stack/index.js +106 -101
- package/dist/components/Switch/Switch.module.scss.cjs +32 -0
- package/dist/components/Switch/Switch.module.scss.js +32 -0
- package/dist/components/{Toggle → Switch}/index.cjs +9 -14
- package/dist/components/Switch/index.d.ts +37 -1
- package/dist/components/Switch/index.d.ts.map +1 -1
- package/dist/components/{Toggle → Switch}/index.js +5 -10
- package/dist/components/Table/Table.module.scss.cjs +21 -30
- package/dist/components/Table/Table.module.scss.js +21 -30
- package/dist/components/Table/index.d.ts +6 -5
- package/dist/components/Table/index.d.ts.map +1 -1
- package/dist/components/TableOfContents/TableOfContents.module.scss.cjs +15 -15
- package/dist/components/TableOfContents/TableOfContents.module.scss.js +15 -15
- package/dist/components/TableOfContents/index.cjs +13 -9
- package/dist/components/TableOfContents/index.d.ts +5 -3
- package/dist/components/TableOfContents/index.d.ts.map +1 -1
- package/dist/components/TableOfContents/index.js +13 -9
- package/dist/components/Tabs/Tabs.module.scss.cjs +12 -12
- package/dist/components/Tabs/Tabs.module.scss.js +12 -12
- package/dist/components/Tabs/index.cjs +28 -8
- package/dist/components/Tabs/index.d.ts.map +1 -1
- package/dist/components/Tabs/index.js +28 -8
- package/dist/components/Text/Text.module.scss.cjs +105 -57
- package/dist/components/Text/Text.module.scss.js +105 -57
- package/dist/components/Text/index.cjs +49 -33
- package/dist/components/Text/index.d.ts +30 -19
- package/dist/components/Text/index.d.ts.map +1 -1
- package/dist/components/Text/index.js +49 -33
- package/dist/components/Textarea/Textarea.module.scss.cjs +26 -23
- package/dist/components/Textarea/Textarea.module.scss.js +26 -23
- package/dist/components/Textarea/index.cjs +5 -10
- package/dist/components/Textarea/index.d.ts.map +1 -1
- package/dist/components/Textarea/index.js +5 -10
- package/dist/components/Theme/context.cjs +39 -0
- package/dist/components/Theme/context.d.ts +21 -0
- package/dist/components/Theme/context.d.ts.map +1 -0
- package/dist/components/Theme/context.js +22 -0
- package/dist/components/Theme/index.cjs +16 -210
- package/dist/components/Theme/index.d.ts +4 -37
- package/dist/components/Theme/index.d.ts.map +1 -1
- package/dist/components/Theme/index.js +11 -205
- package/dist/components/{Theme → ThemeToggle}/ThemeToggle.module.scss.cjs +9 -6
- package/dist/components/ThemeToggle/ThemeToggle.module.scss.js +26 -0
- package/dist/components/ThemeToggle/index.cjs +140 -0
- package/dist/components/ThemeToggle/index.d.ts +26 -0
- package/dist/components/ThemeToggle/index.d.ts.map +1 -0
- package/dist/components/ThemeToggle/index.js +140 -0
- package/dist/components/ThinkingIndicator/ThinkingIndicator.module.scss.cjs +13 -13
- package/dist/components/ThinkingIndicator/ThinkingIndicator.module.scss.js +13 -13
- package/dist/components/ThinkingIndicator/index.cjs +34 -41
- package/dist/components/ThinkingIndicator/index.d.ts +4 -4
- package/dist/components/ThinkingIndicator/index.d.ts.map +1 -1
- package/dist/components/ThinkingIndicator/index.js +34 -41
- package/dist/components/Toast/Toast.module.scss.cjs +20 -20
- package/dist/components/Toast/Toast.module.scss.js +20 -20
- package/dist/components/Toggle/index.d.ts +2 -42
- package/dist/components/Toggle/index.d.ts.map +1 -1
- package/dist/components/ToggleGroup/ToggleGroup.module.scss.cjs +20 -20
- package/dist/components/ToggleGroup/ToggleGroup.module.scss.js +20 -20
- package/dist/components/ToggleGroup/index.cjs +3 -2
- package/dist/components/ToggleGroup/index.d.ts +2 -1
- package/dist/components/ToggleGroup/index.d.ts.map +1 -1
- package/dist/components/ToggleGroup/index.js +3 -2
- package/dist/components/Tooltip/Tooltip.module.scss.cjs +3 -3
- package/dist/components/Tooltip/Tooltip.module.scss.js +3 -3
- package/dist/components/Tooltip/index.cjs +24 -40
- package/dist/components/Tooltip/index.d.ts +4 -4
- package/dist/components/Tooltip/index.d.ts.map +1 -1
- package/dist/components/Tooltip/index.js +24 -40
- package/dist/components/VisuallyHidden/VisuallyHidden.module.scss.cjs +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.module.scss.js +1 -1
- package/dist/components/VisuallyHidden/index.d.ts +2 -2
- package/dist/data-table.cjs +14 -10
- package/dist/data-table.js +14 -10
- package/dist/datepicker.cjs +5 -3
- package/dist/datepicker.js +5 -3
- package/dist/editor.cjs +68 -28
- package/dist/editor.js +68 -28
- package/dist/index.cjs +101 -99
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -4
- package/dist/markdown.cjs +21 -29
- package/dist/markdown.js +22 -30
- package/dist/measurements/generated.cjs +304 -0
- package/dist/measurements/generated.d.ts +268 -0
- package/dist/measurements/generated.d.ts.map +1 -0
- package/dist/measurements/generated.js +304 -0
- package/dist/measurements/index.d.ts +2 -0
- package/dist/measurements/index.d.ts.map +1 -0
- package/dist/measurements.cjs +6 -0
- package/dist/measurements.js +6 -0
- package/dist/recipes/popup.cjs +14 -0
- package/dist/recipes/popup.d.ts +4 -0
- package/dist/recipes/popup.d.ts.map +1 -0
- package/dist/recipes/popup.js +14 -0
- package/dist/recipes/table-chrome.cjs +18 -0
- package/dist/recipes/table-chrome.d.ts +10 -0
- package/dist/recipes/table-chrome.d.ts.map +1 -0
- package/dist/recipes/table-chrome.js +18 -0
- package/dist/table.cjs +5 -2
- package/dist/table.js +5 -2
- package/dist/utils/a11y.cjs +5 -2
- package/dist/utils/a11y.d.ts +5 -5
- package/dist/utils/a11y.d.ts.map +1 -1
- package/dist/utils/a11y.js +5 -2
- package/dist/utils/canonical-stamp.cjs +2 -8
- package/dist/utils/canonical-stamp.d.ts.map +1 -1
- package/dist/utils/canonical-stamp.js +1 -7
- package/dist/utils/css-warning.cjs +1 -1
- package/dist/utils/css-warning.js +1 -1
- package/dist/utils/env.cjs +17 -0
- package/dist/utils/env.d.ts +3 -0
- package/dist/utils/env.d.ts.map +1 -0
- package/dist/utils/env.js +17 -0
- package/dist/utils/keyboard-shortcuts.cjs +3 -10
- package/dist/utils/keyboard-shortcuts.d.ts +4 -4
- package/dist/utils/keyboard-shortcuts.d.ts.map +1 -1
- package/dist/utils/keyboard-shortcuts.js +3 -10
- package/dist/utils/layout-spacing.cjs +27 -0
- package/dist/utils/layout-spacing.d.ts +5 -0
- package/dist/utils/layout-spacing.d.ts.map +1 -0
- package/dist/utils/layout-spacing.js +27 -0
- package/dist/utils/seed-derivation.cjs +14 -48
- package/dist/utils/seed-derivation.d.ts +4 -3
- package/dist/utils/seed-derivation.d.ts.map +1 -1
- package/dist/utils/seed-derivation.js +14 -48
- package/dist/utils/theme-presets.cjs +1 -0
- package/dist/utils/theme-presets.d.ts +3 -2
- package/dist/utils/theme-presets.d.ts.map +1 -1
- package/dist/utils/theme-presets.js +1 -0
- package/fragments.json +1 -1
- package/package.json +25 -4
- package/src/assets/fragments-logo.tsx +2 -2
- package/src/assets/fragments-wordmark.tsx +4 -2
- package/src/components/Accordion/Accordion.contract.json +24 -48
- package/src/components/Accordion/Accordion.module.scss +31 -52
- package/src/components/Alert/Alert.contract.json +37 -53
- package/src/components/Alert/Alert.module.scss +52 -44
- package/src/components/Alert/index.tsx +55 -29
- package/src/components/AppShell/AppShell.contract.json +34 -51
- package/src/components/AppShell/AppShell.module.scss +59 -43
- package/src/components/AppShell/index.tsx +8 -4
- package/src/components/Avatar/Avatar.contract.json +31 -48
- package/src/components/Avatar/Avatar.module.scss +25 -60
- package/src/components/Avatar/index.tsx +152 -146
- package/src/components/Badge/Badge.contract.json +37 -42
- package/src/components/Badge/Badge.module.scss +59 -47
- package/src/components/BentoGrid/BentoGrid.contract.json +21 -45
- package/src/components/BentoGrid/BentoGrid.module.scss +11 -32
- package/src/components/Box/Box.contract.json +40 -148
- package/src/components/Box/Box.module.scss +253 -81
- package/src/components/Box/index.tsx +92 -99
- package/src/components/Breadcrumbs/Breadcrumbs.contract.json +21 -34
- package/src/components/Breadcrumbs/Breadcrumbs.module.scss +19 -15
- package/src/components/Button/Button.module.scss +60 -64
- package/src/components/ButtonGroup/ButtonGroup.contract.json +32 -47
- package/src/components/ButtonGroup/ButtonGroup.module.scss +5 -5
- package/src/components/Card/Card.consumer-fixture.module.scss +8 -0
- package/src/components/Card/Card.module.scss +284 -167
- package/src/components/Card/index.tsx +21 -2
- package/src/components/Chart/Chart.contract.json +21 -29
- package/src/components/Chart/Chart.module.scss +28 -29
- package/src/components/Chart/index.tsx +72 -55
- package/src/components/Checkbox/Checkbox.contract.json +24 -24
- package/src/components/Checkbox/Checkbox.module.scss +75 -87
- package/src/components/Checkbox/index.tsx +8 -11
- package/src/components/Chip/Chip.contract.json +36 -42
- package/src/components/Chip/Chip.module.scss +25 -36
- package/src/components/Chip/index.tsx +5 -5
- package/src/components/CodeBlock/CodeBlock.contract.json +46 -76
- package/src/components/CodeBlock/CodeBlock.module.scss +129 -217
- package/src/components/CodeBlock/css-variables-theme.ts +102 -0
- package/src/components/CodeBlock/index.tsx +91 -35
- package/src/components/Collapsible/Collapsible.contract.json +21 -36
- package/src/components/Collapsible/Collapsible.module.scss +29 -63
- package/src/components/Collapsible/index.tsx +22 -26
- package/src/components/ColorPicker/ColorPicker.contract.json +29 -48
- package/src/components/ColorPicker/ColorPicker.module.scss +54 -33
- package/src/components/ColorPicker/index.tsx +7 -2
- package/src/components/Combobox/Combobox.contract.json +36 -37
- package/src/components/Combobox/Combobox.module.scss +61 -74
- package/src/components/Combobox/index.tsx +34 -6
- package/src/components/Command/Command.contract.json +21 -43
- package/src/components/Command/Command.module.scss +47 -77
- package/src/components/Command/index.tsx +58 -47
- package/src/components/ConversationList/ConversationList.contract.json +27 -32
- package/src/components/ConversationList/ConversationList.module.scss +20 -78
- package/src/components/ConversationList/index.tsx +55 -59
- package/src/components/DataTable/DataTable.icons.tsx +4 -21
- package/src/components/DataTable/DataTable.module.scss +81 -217
- package/src/components/DataTable/index.tsx +28 -32
- package/src/components/DatePicker/DatePicker.contract.json +27 -28
- package/src/components/DatePicker/DatePicker.module.scss +66 -38
- package/src/components/DatePicker/index.tsx +7 -3
- package/src/components/Dialog/Dialog.module.scss +45 -69
- package/src/components/Dialog/index.tsx +47 -37
- package/src/components/Drawer/Drawer.contract.json +22 -36
- package/src/components/Drawer/Drawer.module.scss +93 -99
- package/src/components/Drawer/index.tsx +1 -1
- package/src/components/Editor/Editor.contract.json +31 -48
- package/src/components/Editor/Editor.module.scss +137 -220
- package/src/components/Editor/index.tsx +240 -179
- package/src/components/EmptyState/EmptyState.contract.json +31 -43
- package/src/components/EmptyState/EmptyState.module.scss +45 -84
- package/src/components/EmptyState/index.tsx +48 -23
- package/src/components/Field/Field.contract.json +28 -45
- package/src/components/Field/Field.module.scss +9 -11
- package/src/components/Field/index.tsx +31 -1
- package/src/components/Fieldset/Fieldset.contract.json +21 -38
- package/src/components/Fieldset/Fieldset.module.scss +23 -8
- package/src/components/Form/Form.contract.json +27 -40
- package/src/components/Form/Form.module.scss +9 -4
- package/src/components/Form/index.tsx +22 -7
- package/src/components/Grid/Grid.contract.json +28 -64
- package/src/components/Grid/Grid.module.scss +159 -63
- package/src/components/Grid/index.tsx +114 -133
- package/src/components/Header/Header.contract.json +31 -67
- package/src/components/Header/Header.module.scss +56 -48
- package/src/components/Header/index.tsx +134 -121
- package/src/components/Icon/Icon.contract.json +22 -62
- package/src/components/Icon/Icon.module.scss +16 -0
- package/src/components/Icon/index.tsx +74 -86
- package/src/components/IconButton/IconButton.contract.json +34 -18
- package/src/components/IconButton/IconButton.module.scss +15 -26
- package/src/components/IconButton/index.tsx +2 -1
- package/src/components/Image/Image.contract.json +23 -56
- package/src/components/Input/Input.contract.json +26 -32
- package/src/components/Input/Input.module.scss +69 -56
- package/src/components/Input/index.tsx +1 -2
- package/src/components/Link/Link.contract.json +32 -52
- package/src/components/Link/Link.module.scss +29 -13
- package/src/components/Link/index.tsx +1 -1
- package/src/components/List/List.contract.json +23 -52
- package/src/components/List/List.module.scss +16 -21
- package/src/components/List/index.tsx +4 -10
- package/src/components/Listbox/Listbox.contract.json +21 -37
- package/src/components/Listbox/Listbox.module.scss +26 -54
- package/src/components/Loading/Loading.contract.json +37 -61
- package/src/components/Loading/Loading.module.scss +33 -40
- package/src/components/Loading/index.tsx +68 -97
- package/src/components/Main/Main.contract.json +17 -9
- package/src/components/Main/Main.module.scss +3 -5
- package/src/components/Markdown/Markdown.contract.json +22 -43
- package/src/components/Markdown/Markdown.module.scss +72 -182
- package/src/components/Markdown/index.tsx +50 -51
- package/src/components/Menu/Menu.contract.json +25 -41
- package/src/components/Menu/Menu.module.scss +63 -133
- package/src/components/Menu/index.tsx +57 -89
- package/src/components/Message/Message.contract.json +29 -52
- package/src/components/Message/Message.module.scss +60 -143
- package/src/components/Message/index.tsx +16 -6
- package/src/components/NavigationMenu/NavigationMenu.contract.json +36 -45
- package/src/components/NavigationMenu/NavigationMenu.module.scss +123 -71
- package/src/components/NavigationMenu/index.tsx +105 -81
- package/src/components/Pagination/Pagination.contract.json +22 -40
- package/src/components/Pagination/Pagination.module.scss +34 -27
- package/src/components/Pagination/index.tsx +7 -2
- package/src/components/Popover/Popover.contract.json +24 -46
- package/src/components/Popover/Popover.module.scss +43 -78
- package/src/components/Progress/Progress.contract.json +32 -28
- package/src/components/Progress/Progress.module.scss +64 -43
- package/src/components/Progress/geometry.ts +41 -0
- package/src/components/Progress/index.tsx +44 -30
- package/src/components/Prompt/Prompt.contract.json +31 -47
- package/src/components/Prompt/Prompt.module.scss +58 -87
- package/src/components/Prompt/index.tsx +6 -5
- package/src/components/RadioGroup/RadioGroup.contract.json +23 -24
- package/src/components/RadioGroup/RadioGroup.module.scss +63 -83
- package/src/components/RadioGroup/index.tsx +7 -9
- package/src/components/ScrollArea/ScrollArea.contract.json +23 -40
- package/src/components/ScrollArea/ScrollArea.module.scss +123 -97
- package/src/components/ScrollArea/index.tsx +85 -67
- package/src/components/ScrollArea/scroll-state.ts +87 -0
- package/src/components/Select/Select.module.scss +55 -43
- package/src/components/Select/index.tsx +6 -2
- package/src/components/Separator/Separator.contract.json +24 -48
- package/src/components/Separator/Separator.module.scss +29 -19
- package/src/components/Separator/index.tsx +55 -51
- package/src/components/Sidebar/Sidebar.contract.json +42 -62
- package/src/components/Sidebar/Sidebar.module.scss +117 -106
- package/src/components/Sidebar/index.tsx +169 -162
- package/src/components/Skeleton/Skeleton.contract.json +28 -54
- package/src/components/Skeleton/Skeleton.module.scss +51 -34
- package/src/components/Skeleton/index.tsx +65 -72
- package/src/components/Slider/Slider.contract.json +27 -39
- package/src/components/Slider/Slider.module.scss +33 -27
- package/src/components/Stack/Stack.contract.json +29 -56
- package/src/components/Stack/Stack.module.scss +110 -38
- package/src/components/Stack/index.tsx +157 -127
- package/src/components/{Toggle/Toggle.contract.json → Switch/Switch.contract.json} +34 -47
- package/src/components/Switch/Switch.module.scss +255 -0
- package/src/components/{Toggle → Switch}/index.tsx +5 -21
- package/src/components/Table/Table.contract.json +28 -46
- package/src/components/Table/Table.module.scss +50 -129
- package/src/components/Table/index.tsx +13 -6
- package/src/components/TableOfContents/TableOfContents.contract.json +34 -21
- package/src/components/TableOfContents/TableOfContents.module.scss +35 -182
- package/src/components/TableOfContents/index.tsx +26 -9
- package/src/components/Tabs/Tabs.contract.json +24 -45
- package/src/components/Tabs/Tabs.module.scss +28 -23
- package/src/components/Tabs/index.tsx +17 -5
- package/src/components/Text/Text.contract.json +30 -72
- package/src/components/Text/Text.module.scss +43 -7
- package/src/components/Text/index.tsx +136 -63
- package/src/components/Textarea/Textarea.contract.json +25 -43
- package/src/components/Textarea/Textarea.module.scss +58 -40
- package/src/components/Textarea/index.tsx +5 -12
- package/src/components/Theme/Theme.contract.json +32 -51
- package/src/components/Theme/context.ts +42 -0
- package/src/components/Theme/index.tsx +16 -310
- package/src/components/ThemeToggle/ThemeToggle.module.scss +89 -0
- package/src/components/ThemeToggle/index.tsx +180 -0
- package/src/components/ThinkingIndicator/ThinkingIndicator.contract.json +23 -40
- package/src/components/ThinkingIndicator/ThinkingIndicator.module.scss +24 -19
- package/src/components/ThinkingIndicator/index.tsx +44 -54
- package/src/components/Toast/Toast.contract.json +35 -61
- package/src/components/Toast/Toast.module.scss +62 -139
- package/src/components/Toggle/index.ts +7 -0
- package/src/components/ToggleGroup/ToggleGroup.contract.json +40 -68
- package/src/components/ToggleGroup/ToggleGroup.module.scss +166 -89
- package/src/components/ToggleGroup/index.tsx +5 -3
- package/src/components/Tooltip/Tooltip.contract.json +31 -52
- package/src/components/Tooltip/Tooltip.module.scss +23 -39
- package/src/components/Tooltip/index.tsx +19 -24
- package/src/components/VisuallyHidden/VisuallyHidden.contract.json +22 -44
- package/src/components/VisuallyHidden/VisuallyHidden.module.scss +3 -0
- package/src/components/VisuallyHidden/index.tsx +5 -5
- package/src/index.ts +4 -3
- package/src/measurements/MeasurementTargets.module.scss +229 -0
- package/src/measurements/generated.ts +324 -0
- package/src/measurements/index.ts +8 -0
- package/src/measurements/measurements.json +368 -0
- package/src/recipes/_action.scss +138 -0
- package/src/recipes/_boolean-range.scss +116 -0
- package/src/recipes/_feedback.scss +171 -0
- package/src/recipes/_field.scss +102 -0
- package/src/recipes/_layout.scss +74 -0
- package/src/recipes/_navigation.scss +110 -0
- package/src/recipes/_overlay.scss +191 -0
- package/src/recipes/_popup.scss +102 -0
- package/src/recipes/_prose.scss +182 -0
- package/src/recipes/_representation.scss +193 -0
- package/src/recipes/_segmented.scss +26 -0
- package/src/recipes/_surface.scss +13 -0
- package/src/recipes/_table-chrome.scss +119 -0
- package/src/recipes/_target.scss +31 -0
- package/src/recipes/_typography.scss +38 -0
- package/src/recipes/popup.ts +12 -0
- package/src/recipes/table-chrome.ts +30 -0
- package/src/scss.d.ts +1 -1
- package/src/styles/globals.scss +21 -20
- package/src/tokens/_component-properties.scss +2 -2
- package/src/tokens/_computed.scss +14 -25
- package/src/tokens/_density.scss +41 -132
- package/src/tokens/_derive.scss +112 -210
- package/src/tokens/_measurements.catalog.generated.css +96 -0
- package/src/tokens/_measurements.generated.scss +617 -0
- package/src/tokens/_mixins.scss +7 -284
- package/src/tokens/_palettes.scss +39 -167
- package/src/tokens/_property-registrations.scss +96 -92
- package/src/tokens/_radius.scss +16 -70
- package/src/tokens/_seeds.scss +24 -23
- package/src/tokens/_variables.scss +338 -178
- package/src/utils/a11y.tsx +69 -69
- package/src/utils/aria.ts +3 -3
- package/src/utils/canonical-stamp.ts +2 -12
- package/src/utils/css-warning.ts +7 -7
- package/src/utils/env.ts +25 -0
- package/src/utils/keyboard-shortcuts.ts +131 -126
- package/src/utils/layout-spacing.ts +31 -0
- package/src/utils/seed-derivation.ts +144 -178
- package/src/utils/theme-presets.ts +58 -30
- package/dist/components/Theme/ThemeToggle.module.scss.js +0 -23
- package/dist/components/Toggle/Toggle.module.scss.cjs +0 -44
- package/dist/components/Toggle/Toggle.module.scss.js +0 -44
- package/src/components/Button/Button.contract.json +0 -218
- package/src/components/Card/Card.contract.json +0 -175
- package/src/components/DataTable/DataTable.contract.json +0 -302
- package/src/components/Dialog/Dialog.contract.json +0 -159
- package/src/components/Select/Select.contract.json +0 -259
- package/src/components/Switch/index.ts +0 -3
- package/src/components/Theme/ThemeToggle.module.scss +0 -91
- package/src/components/Toggle/Toggle.module.scss +0 -244
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
@use
|
|
2
|
-
@use
|
|
1
|
+
@use "../../tokens/variables" as *;
|
|
2
|
+
@use "../../tokens/mixins" as *;
|
|
3
|
+
@use "../../recipes/action" as action;
|
|
4
|
+
@use "../../recipes/layout" as layout;
|
|
5
|
+
@use "../../recipes/target" as target;
|
|
6
|
+
@use "../../recipes/typography" as typography;
|
|
3
7
|
|
|
4
8
|
// ============================================
|
|
5
9
|
// Prompt Root
|
|
@@ -16,7 +20,7 @@
|
|
|
16
20
|
// Beam border — rotating conic gradient clipped to a 1px border
|
|
17
21
|
&::before,
|
|
18
22
|
&::after {
|
|
19
|
-
content:
|
|
23
|
+
content: "";
|
|
20
24
|
position: absolute;
|
|
21
25
|
inset: 0;
|
|
22
26
|
border-radius: inherit;
|
|
@@ -25,7 +29,7 @@
|
|
|
25
29
|
|
|
26
30
|
// Gradient layer (behind everything)
|
|
27
31
|
&::before {
|
|
28
|
-
inset: -1px;
|
|
32
|
+
inset: calc(-1 * var(--fui-stroke-hairline, 1px));
|
|
29
33
|
z-index: 0;
|
|
30
34
|
background: conic-gradient(
|
|
31
35
|
from var(--beam-angle, 0deg) at 50% 50%,
|
|
@@ -38,14 +42,16 @@
|
|
|
38
42
|
transparent 75%,
|
|
39
43
|
transparent 100%
|
|
40
44
|
);
|
|
41
|
-
|
|
45
|
+
// Ambient loop: twice the shimmer beat, kept on the token scale.
|
|
46
|
+
animation: beam-rotate calc(var(--fui-duration-shimmer, #{$fui-duration-shimmer}) * 2) linear
|
|
47
|
+
infinite;
|
|
42
48
|
opacity: 0.6;
|
|
43
49
|
transition: opacity var(--fui-transition-normal, $fui-transition-normal);
|
|
44
50
|
}
|
|
45
51
|
|
|
46
52
|
// Mask layer — covers the interior, leaving only the 1px border visible
|
|
47
53
|
&::after {
|
|
48
|
-
inset: 1px;
|
|
54
|
+
inset: var(--fui-stroke-hairline, 1px);
|
|
49
55
|
z-index: 1;
|
|
50
56
|
background: var(--fui-bg-elevated, $fui-bg-elevated);
|
|
51
57
|
}
|
|
@@ -72,12 +78,16 @@
|
|
|
72
78
|
}
|
|
73
79
|
|
|
74
80
|
@keyframes beam-rotate {
|
|
75
|
-
from {
|
|
76
|
-
|
|
81
|
+
from {
|
|
82
|
+
--beam-angle: 0deg;
|
|
83
|
+
}
|
|
84
|
+
to {
|
|
85
|
+
--beam-angle: 360deg;
|
|
86
|
+
}
|
|
77
87
|
}
|
|
78
88
|
|
|
79
89
|
@property --beam-angle {
|
|
80
|
-
syntax:
|
|
90
|
+
syntax: "<angle>";
|
|
81
91
|
initial-value: 0deg;
|
|
82
92
|
inherits: false;
|
|
83
93
|
}
|
|
@@ -89,7 +99,7 @@
|
|
|
89
99
|
left: 50%;
|
|
90
100
|
transform: translateX(-50%);
|
|
91
101
|
width: calc(100% - var(--fui-space-8, $fui-space-8));
|
|
92
|
-
max-width:
|
|
102
|
+
max-width: layout.measure("page-narrow");
|
|
93
103
|
z-index: 100;
|
|
94
104
|
box-shadow: var(--fui-shadow-lg, $fui-shadow-lg);
|
|
95
105
|
}
|
|
@@ -104,7 +114,7 @@
|
|
|
104
114
|
margin-left: auto;
|
|
105
115
|
margin-right: auto;
|
|
106
116
|
width: calc(100% - var(--fui-prompt-inset-left, 0px) - var(--fui-space-8, $fui-space-8));
|
|
107
|
-
max-width:
|
|
117
|
+
max-width: layout.measure("page-narrow");
|
|
108
118
|
z-index: 100;
|
|
109
119
|
box-shadow: var(--fui-shadow-lg, $fui-shadow-lg);
|
|
110
120
|
|
|
@@ -140,15 +150,6 @@
|
|
|
140
150
|
--_control-padding: var(--fui-space-2, #{$fui-space-2});
|
|
141
151
|
--_chip-padding: var(--fui-space-1, #{$fui-space-1});
|
|
142
152
|
|
|
143
|
-
// Composer controls are compact, but still need enough visual weight to read
|
|
144
|
-
// as one deliberate toolbar. The xs button token is the dense 32px control
|
|
145
|
-
// height in every density preset; scoping all three inputs to it keeps
|
|
146
|
-
// selects, attach, action and submit controls on one optical grid without a
|
|
147
|
-
// one-off dimension.
|
|
148
|
-
--fui-target-size-min: var(--fui-button-height-xs, #{$fui-button-height-xs});
|
|
149
|
-
--fui-button-height-sm: var(--fui-button-height-xs, #{$fui-button-height-xs});
|
|
150
|
-
--fui-input-height-sm: var(--fui-button-height-xs, #{$fui-button-height-xs});
|
|
151
|
-
|
|
152
153
|
border-color: transparent;
|
|
153
154
|
border-radius: var(--fui-radius-xl, $fui-radius-xl);
|
|
154
155
|
|
|
@@ -284,19 +285,6 @@
|
|
|
284
285
|
}
|
|
285
286
|
}
|
|
286
287
|
|
|
287
|
-
// Round affordances track the scoped target size rather than the 2rem they
|
|
288
|
-
// are given for a form.
|
|
289
|
-
.submit,
|
|
290
|
-
.actionButton {
|
|
291
|
-
width: var(--fui-target-size-min);
|
|
292
|
-
height: var(--fui-target-size-min);
|
|
293
|
-
|
|
294
|
-
svg {
|
|
295
|
-
width: var(--fui-icon-md, $fui-icon-md);
|
|
296
|
-
height: var(--fui-icon-md, $fui-icon-md);
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
|
|
300
288
|
// Attach's glyph reaches the leading ink gutter through its own control
|
|
301
289
|
// padding. Give the filled Submit shape the same inset at the trailing edge
|
|
302
290
|
// so the two visible affordances balance across the toolbar.
|
|
@@ -311,8 +299,10 @@
|
|
|
311
299
|
|
|
312
300
|
.textarea {
|
|
313
301
|
@include button-reset;
|
|
314
|
-
@include
|
|
302
|
+
@include typography.role("body-compact");
|
|
315
303
|
|
|
304
|
+
// button-reset marks pressables select-none; typed text must stay selectable.
|
|
305
|
+
user-select: text;
|
|
316
306
|
display: block;
|
|
317
307
|
width: 100%;
|
|
318
308
|
min-height: var(--fui-input-height, $fui-input-height);
|
|
@@ -321,7 +311,6 @@
|
|
|
321
311
|
border: none;
|
|
322
312
|
resize: none;
|
|
323
313
|
overflow-y: auto;
|
|
324
|
-
line-height: var(--fui-line-height-normal, $fui-line-height-normal);
|
|
325
314
|
|
|
326
315
|
&::placeholder {
|
|
327
316
|
color: var(--fui-text-tertiary, $fui-text-tertiary);
|
|
@@ -357,20 +346,16 @@
|
|
|
357
346
|
background-color: var(--fui-bg-elevated, $fui-bg-elevated);
|
|
358
347
|
border-radius: var(--fui-radius-lg, $fui-radius-lg) var(--fui-radius-lg, $fui-radius-lg) 0 0;
|
|
359
348
|
padding: var(--fui-space-0-75, $fui-space-0-75) var(--fui-space-0-75, $fui-space-0-75) 0;
|
|
360
|
-
border: 1px solid var(--fui-border, $fui-border);
|
|
349
|
+
border: var(--fui-stroke-hairline, 1px) solid var(--fui-border, $fui-border);
|
|
361
350
|
border-bottom: none;
|
|
362
351
|
}
|
|
363
352
|
|
|
364
353
|
.tabButton {
|
|
365
354
|
@include button-reset;
|
|
355
|
+
@include action.base;
|
|
356
|
+
@include action.size("sm");
|
|
366
357
|
|
|
367
|
-
display: flex;
|
|
368
|
-
align-items: center;
|
|
369
|
-
justify-content: center;
|
|
370
|
-
padding: var(--fui-space-1, $fui-space-1) var(--fui-space-3, $fui-space-3);
|
|
371
358
|
border-radius: var(--fui-radius-md, $fui-radius-md) var(--fui-radius-md, $fui-radius-md) 0 0;
|
|
372
|
-
font-size: var(--fui-font-size-sm, $fui-font-size-sm);
|
|
373
|
-
font-weight: var(--fui-font-weight-medium, $fui-font-weight-medium);
|
|
374
359
|
color: var(--fui-text-tertiary, $fui-text-tertiary);
|
|
375
360
|
transition:
|
|
376
361
|
color var(--fui-transition-fast, $fui-transition-fast),
|
|
@@ -380,10 +365,14 @@
|
|
|
380
365
|
&:hover {
|
|
381
366
|
color: var(--fui-text-primary, $fui-text-primary);
|
|
382
367
|
}
|
|
368
|
+
|
|
369
|
+
&:focus-visible {
|
|
370
|
+
@include focus-ring;
|
|
371
|
+
}
|
|
383
372
|
}
|
|
384
373
|
|
|
385
374
|
.tabButtonActive {
|
|
386
|
-
background-color: var(--fui-bg
|
|
375
|
+
background-color: var(--fui-control-selected-bg, $fui-bg-active);
|
|
387
376
|
color: var(--fui-text-primary, $fui-text-primary);
|
|
388
377
|
}
|
|
389
378
|
|
|
@@ -398,7 +387,7 @@
|
|
|
398
387
|
gap: var(--fui-space-2, $fui-space-2);
|
|
399
388
|
padding: var(--fui-space-1, $fui-space-1) var(--fui-space-2, $fui-space-2);
|
|
400
389
|
background-color: var(--fui-bg-secondary, $fui-bg-secondary);
|
|
401
|
-
border-top: 1px solid var(--fui-border, $fui-border);
|
|
390
|
+
border-top: var(--fui-stroke-hairline, 1px) solid var(--fui-border, $fui-border);
|
|
402
391
|
}
|
|
403
392
|
|
|
404
393
|
// ============================================
|
|
@@ -426,16 +415,12 @@
|
|
|
426
415
|
.actionButton {
|
|
427
416
|
@include button-reset;
|
|
428
417
|
@include interactive-base;
|
|
418
|
+
@include action.base;
|
|
419
|
+
@include action.icon-only("md");
|
|
429
420
|
|
|
430
|
-
display: flex;
|
|
431
|
-
align-items: center;
|
|
432
|
-
justify-content: center;
|
|
433
|
-
width: 2rem;
|
|
434
|
-
height: 2rem;
|
|
435
421
|
border-radius: var(--fui-radius-full, $fui-radius-full);
|
|
436
422
|
background-color: var(--fui-bg-tertiary, $fui-bg-tertiary);
|
|
437
423
|
color: var(--fui-text-primary, $fui-text-primary);
|
|
438
|
-
font-size: var(--fui-font-size-sm, $fui-font-size-sm);
|
|
439
424
|
|
|
440
425
|
&:hover:not(:disabled) {
|
|
441
426
|
background-color: var(--fui-bg-hover, $fui-bg-hover);
|
|
@@ -446,8 +431,7 @@
|
|
|
446
431
|
}
|
|
447
432
|
|
|
448
433
|
svg {
|
|
449
|
-
|
|
450
|
-
height: 1rem;
|
|
434
|
+
@include action.glyph("md");
|
|
451
435
|
}
|
|
452
436
|
}
|
|
453
437
|
|
|
@@ -458,16 +442,13 @@
|
|
|
458
442
|
.modeButton {
|
|
459
443
|
@include button-reset;
|
|
460
444
|
@include interactive-base;
|
|
445
|
+
@include action.base;
|
|
446
|
+
@include action.size("sm");
|
|
447
|
+
@include target.hit-area("compact");
|
|
461
448
|
|
|
462
|
-
display: flex;
|
|
463
|
-
align-items: center;
|
|
464
|
-
gap: var(--fui-space-1, $fui-space-1);
|
|
465
|
-
padding: var(--fui-space-1, $fui-space-1) var(--fui-space-2, $fui-space-2);
|
|
466
449
|
border-radius: var(--fui-radius-md, $fui-radius-md);
|
|
467
450
|
background-color: transparent;
|
|
468
451
|
color: var(--fui-text-secondary, $fui-text-secondary);
|
|
469
|
-
font-size: var(--fui-font-size-xs, $fui-font-size-xs);
|
|
470
|
-
font-weight: var(--fui-font-weight-medium, $fui-font-weight-medium);
|
|
471
452
|
|
|
472
453
|
&:hover:not(:disabled) {
|
|
473
454
|
background-color: var(--fui-bg-hover, $fui-bg-hover);
|
|
@@ -481,7 +462,7 @@
|
|
|
481
462
|
|
|
482
463
|
.modeButtonActive {
|
|
483
464
|
color: var(--fui-text-primary, $fui-text-primary);
|
|
484
|
-
background-color: var(--fui-bg
|
|
465
|
+
background-color: var(--fui-control-selected-bg, $fui-bg-active);
|
|
485
466
|
}
|
|
486
467
|
|
|
487
468
|
// ============================================
|
|
@@ -495,15 +476,11 @@
|
|
|
495
476
|
.attach {
|
|
496
477
|
@include button-reset;
|
|
497
478
|
@include interactive-base;
|
|
479
|
+
@include action.base;
|
|
480
|
+
@include action.icon-only("sm");
|
|
481
|
+
@include target.hit-area("compact");
|
|
498
482
|
|
|
499
|
-
display: flex;
|
|
500
|
-
align-items: center;
|
|
501
|
-
justify-content: center;
|
|
502
483
|
flex-shrink: 0;
|
|
503
|
-
// The target size rather than a spacing step, so it tracks whatever scale
|
|
504
|
-
// the surface around it has established.
|
|
505
|
-
width: var(--fui-target-size-min, $fui-target-size-min);
|
|
506
|
-
height: var(--fui-target-size-min, $fui-target-size-min);
|
|
507
484
|
border-radius: var(--fui-radius-md, $fui-radius-md);
|
|
508
485
|
background-color: transparent;
|
|
509
486
|
color: var(--fui-text-secondary, $fui-text-secondary);
|
|
@@ -523,8 +500,7 @@
|
|
|
523
500
|
}
|
|
524
501
|
|
|
525
502
|
svg {
|
|
526
|
-
|
|
527
|
-
height: var(--fui-icon-sm, $fui-icon-sm);
|
|
503
|
+
@include action.glyph("sm");
|
|
528
504
|
}
|
|
529
505
|
}
|
|
530
506
|
|
|
@@ -547,19 +523,19 @@
|
|
|
547
523
|
// Sized off the same target as everything else in the bar, so a chip and a
|
|
548
524
|
// control are the same height and the card has one horizontal rhythm.
|
|
549
525
|
.attachment {
|
|
550
|
-
--_chip-height:
|
|
526
|
+
--_chip-height: #{action.track("sm")};
|
|
551
527
|
|
|
552
528
|
display: inline-flex;
|
|
553
529
|
align-items: center;
|
|
554
530
|
gap: var(--fui-space-1, $fui-space-1);
|
|
555
531
|
height: var(--_chip-height);
|
|
556
|
-
max-width:
|
|
532
|
+
max-width: layout.measure("composer-item");
|
|
557
533
|
padding-inline: var(--fui-space-1, $fui-space-1);
|
|
558
534
|
// Outlined rather than filled. A chip sits on whatever surface the prompt is
|
|
559
535
|
// using, and on an elevated card the raised fill is the same value as the
|
|
560
536
|
// card itself — so the object would disappear exactly where it is most
|
|
561
537
|
// likely to be used. An edge reads on any of them.
|
|
562
|
-
border: 1px solid var(--fui-border, $fui-border);
|
|
538
|
+
border: var(--fui-stroke-hairline, 1px) solid var(--fui-border, $fui-border);
|
|
563
539
|
border-radius: var(--fui-radius-md, $fui-radius-md);
|
|
564
540
|
background-color: var(--fui-bg-tertiary, $fui-bg-tertiary);
|
|
565
541
|
font-size: var(--fui-font-size-xs, $fui-font-size-xs);
|
|
@@ -597,13 +573,11 @@
|
|
|
597
573
|
.attachmentRemove {
|
|
598
574
|
@include button-reset;
|
|
599
575
|
@include interactive-base;
|
|
576
|
+
@include action.base;
|
|
577
|
+
@include action.icon-only("micro");
|
|
578
|
+
@include target.hit-area("compact");
|
|
600
579
|
|
|
601
|
-
display: flex;
|
|
602
|
-
align-items: center;
|
|
603
|
-
justify-content: center;
|
|
604
580
|
flex-shrink: 0;
|
|
605
|
-
width: calc(var(--_chip-height) - var(--fui-space-1, #{$fui-space-1}));
|
|
606
|
-
height: calc(var(--_chip-height) - var(--fui-space-1, #{$fui-space-1}));
|
|
607
581
|
border-radius: var(--fui-radius-sm, $fui-radius-sm);
|
|
608
582
|
background-color: transparent;
|
|
609
583
|
color: var(--fui-text-tertiary, $fui-text-tertiary);
|
|
@@ -614,8 +588,7 @@
|
|
|
614
588
|
}
|
|
615
589
|
|
|
616
590
|
svg {
|
|
617
|
-
|
|
618
|
-
height: var(--fui-icon-xs, $fui-icon-xs);
|
|
591
|
+
@include action.glyph("micro");
|
|
619
592
|
}
|
|
620
593
|
}
|
|
621
594
|
|
|
@@ -634,7 +607,7 @@
|
|
|
634
607
|
// must not push the submit button off the row. Select's ghost trigger already
|
|
635
608
|
// allows shrinking and ellipsises its value; this only caps how far it grows.
|
|
636
609
|
.select {
|
|
637
|
-
max-width:
|
|
610
|
+
max-width: layout.measure("composer-item");
|
|
638
611
|
}
|
|
639
612
|
|
|
640
613
|
// ============================================
|
|
@@ -642,7 +615,9 @@
|
|
|
642
615
|
// ============================================
|
|
643
616
|
|
|
644
617
|
.usage {
|
|
645
|
-
@include
|
|
618
|
+
@include typography.role("caption");
|
|
619
|
+
|
|
620
|
+
color: var(--fui-text-secondary, $fui-text-secondary);
|
|
646
621
|
white-space: nowrap;
|
|
647
622
|
}
|
|
648
623
|
|
|
@@ -653,12 +628,9 @@
|
|
|
653
628
|
.submit {
|
|
654
629
|
@include button-reset;
|
|
655
630
|
@include interactive-base;
|
|
631
|
+
@include action.base;
|
|
632
|
+
@include action.icon-only("md");
|
|
656
633
|
|
|
657
|
-
display: flex;
|
|
658
|
-
align-items: center;
|
|
659
|
-
justify-content: center;
|
|
660
|
-
width: 2rem;
|
|
661
|
-
height: 2rem;
|
|
662
634
|
border-radius: var(--fui-radius-full, $fui-radius-full);
|
|
663
635
|
// A neutral inverse keeps send visibly primary without spending the product
|
|
664
636
|
// accent, which may already encode agent state.
|
|
@@ -679,8 +651,7 @@
|
|
|
679
651
|
}
|
|
680
652
|
|
|
681
653
|
svg {
|
|
682
|
-
|
|
683
|
-
height: 1rem;
|
|
654
|
+
@include action.glyph("md");
|
|
684
655
|
}
|
|
685
656
|
}
|
|
686
657
|
|
|
@@ -437,9 +437,6 @@ function PromptTextarea({
|
|
|
437
437
|
onFiles,
|
|
438
438
|
} = usePromptContext();
|
|
439
439
|
|
|
440
|
-
const lineHeight = 1.5;
|
|
441
|
-
const padding = 12; // top + bottom padding in pixels
|
|
442
|
-
|
|
443
440
|
const adjustHeight = React.useCallback(() => {
|
|
444
441
|
const textarea = textareaRef.current;
|
|
445
442
|
if (!textarea || !autoResize) return;
|
|
@@ -450,8 +447,12 @@ function PromptTextarea({
|
|
|
450
447
|
// Calculate min and max heights based on rows
|
|
451
448
|
const computedStyle = window.getComputedStyle(textarea);
|
|
452
449
|
const fontSize = parseFloat(computedStyle.fontSize);
|
|
453
|
-
const
|
|
454
|
-
const
|
|
450
|
+
const computedLineHeight = parseFloat(computedStyle.lineHeight);
|
|
451
|
+
const lineHeight = Number.isFinite(computedLineHeight) ? computedLineHeight : fontSize * 1.5;
|
|
452
|
+
const paddingBlock =
|
|
453
|
+
parseFloat(computedStyle.paddingTop) + parseFloat(computedStyle.paddingBottom);
|
|
454
|
+
const minHeight = minRows * lineHeight + paddingBlock;
|
|
455
|
+
const maxHeight = maxRows * lineHeight + paddingBlock;
|
|
455
456
|
|
|
456
457
|
// Set the height, clamped to min/max
|
|
457
458
|
const newHeight = Math.min(Math.max(textarea.scrollHeight, minHeight), maxHeight);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://usefragments.com/schemas/contract.v1.json",
|
|
3
3
|
"name": "RadioGroup",
|
|
4
|
-
"description": "
|
|
5
|
-
"category": "
|
|
4
|
+
"description": "Selects one option from a mutually exclusive set.",
|
|
5
|
+
"category": "inputs",
|
|
6
6
|
"tags": ["form", "radio", "selection", "options"],
|
|
7
7
|
"status": "stable",
|
|
8
8
|
"sourcePath": "src/components/RadioGroup/index.tsx",
|
|
@@ -115,63 +115,62 @@
|
|
|
115
115
|
},
|
|
116
116
|
"usage": {
|
|
117
117
|
"when": [
|
|
118
|
-
"
|
|
119
|
-
"Options
|
|
120
|
-
"
|
|
121
|
-
"2-5 options available"
|
|
118
|
+
"Exactly one answer out of two to five",
|
|
119
|
+
"Options rule each other out",
|
|
120
|
+
"Every option should be visible without opening anything"
|
|
122
121
|
],
|
|
123
122
|
"whenNot": [
|
|
124
|
-
"
|
|
125
|
-
"
|
|
126
|
-
"
|
|
127
|
-
"Options need
|
|
123
|
+
"Several answers allowed (use a Checkbox group)",
|
|
124
|
+
"Long lists (use Select)",
|
|
125
|
+
"A single on/off (use Switch)",
|
|
126
|
+
"Options need searching (use Combobox)"
|
|
128
127
|
],
|
|
129
128
|
"guidelines": [
|
|
130
|
-
"
|
|
131
|
-
"Order options
|
|
132
|
-
"Keep
|
|
133
|
-
"
|
|
129
|
+
"Pre-select a sensible default whenever one exists",
|
|
130
|
+
"Order options predictably: alphabetical, by frequency, or by cost",
|
|
131
|
+
"Keep labels short",
|
|
132
|
+
"Put the trade-off in each item's helperText"
|
|
134
133
|
],
|
|
135
134
|
"accessibility": [
|
|
136
|
-
"
|
|
137
|
-
"
|
|
138
|
-
"
|
|
135
|
+
"The group carries its own label",
|
|
136
|
+
"Arrow keys move between options",
|
|
137
|
+
"The selected option reads as checked"
|
|
139
138
|
]
|
|
140
139
|
},
|
|
141
140
|
"examples": [
|
|
142
141
|
{
|
|
143
142
|
"name": "Default",
|
|
144
|
-
"description": "
|
|
143
|
+
"description": "Three options stacked, the first already chosen.",
|
|
145
144
|
"code": "<RadioGroup defaultValue=\"option1\" label=\"Select an option\">\n <RadioGroup.Item value=\"option1\" label=\"Option 1\" />\n <RadioGroup.Item value=\"option2\" label=\"Option 2\" />\n <RadioGroup.Item value=\"option3\" label=\"Option 3\" />\n</RadioGroup>"
|
|
146
145
|
},
|
|
147
146
|
{
|
|
148
147
|
"name": "With Helper Text",
|
|
149
|
-
"description": "
|
|
148
|
+
"description": "Each option carries the trade-off under its label.",
|
|
150
149
|
"code": "<RadioGroup defaultValue=\"standard\" label=\"Shipping Method\">\n <RadioGroup.Item\n value=\"standard\"\n label=\"Standard\"\n helperText=\"5-7 business days\"\n />\n <RadioGroup.Item\n value=\"express\"\n label=\"Express\"\n helperText=\"2-3 business days\"\n />\n <RadioGroup.Item\n value=\"overnight\"\n label=\"Overnight\"\n helperText=\"Next business day\"\n />\n</RadioGroup>"
|
|
151
150
|
},
|
|
152
151
|
{
|
|
153
152
|
"name": "Horizontal",
|
|
154
|
-
"description": "
|
|
153
|
+
"description": "One row — good for short labels like sizes.",
|
|
155
154
|
"code": "<RadioGroup orientation=\"horizontal\" defaultValue=\"small\" label=\"Size\">\n <RadioGroup.Item value=\"small\" label=\"S\" />\n <RadioGroup.Item value=\"medium\" label=\"M\" />\n <RadioGroup.Item value=\"large\" label=\"L\" />\n <RadioGroup.Item value=\"xlarge\" label=\"XL\" />\n</RadioGroup>"
|
|
156
155
|
},
|
|
157
156
|
{
|
|
158
157
|
"name": "With Group Helper Text",
|
|
159
|
-
"description": "
|
|
158
|
+
"description": "One note under the whole group instead of per option.",
|
|
160
159
|
"code": "<RadioGroup defaultValue=\"standard\" label=\"Plan\" helperText=\"You can change your plan at any time\">\n <RadioGroup.Item value=\"free\" label=\"Free\" />\n <RadioGroup.Item value=\"standard\" label=\"Standard\" />\n <RadioGroup.Item value=\"pro\" label=\"Pro\" />\n</RadioGroup>"
|
|
161
160
|
},
|
|
162
161
|
{
|
|
163
162
|
"name": "With Error",
|
|
164
|
-
"description": "
|
|
163
|
+
"description": "Passing a string to error tints the group and prints the reason.",
|
|
165
164
|
"code": "<RadioGroup label=\"Required selection\" error=\"Please select an option\">\n <RadioGroup.Item value=\"a\" label=\"Option A\" />\n <RadioGroup.Item value=\"b\" label=\"Option B\" />\n</RadioGroup>"
|
|
166
165
|
},
|
|
167
166
|
{
|
|
168
167
|
"name": "Disabled",
|
|
169
|
-
"description": "
|
|
168
|
+
"description": "The choice stays visible but nothing can change it.",
|
|
170
169
|
"code": "<RadioGroup disabled defaultValue=\"locked\" label=\"Locked selection\">\n <RadioGroup.Item value=\"locked\" label=\"This is locked\" />\n <RadioGroup.Item value=\"other\" label=\"Cannot select\" />\n</RadioGroup>"
|
|
171
170
|
},
|
|
172
171
|
{
|
|
173
172
|
"name": "Styling Targets",
|
|
174
|
-
"description": "
|
|
173
|
+
"description": "Named class hooks for the wrapper, the group, and each item.",
|
|
175
174
|
"code": "<RadioGroup\n defaultValue=\"a\"\n label=\"Display mode\"\n wrapperClassName=\"demo-radio-wrapper\"\n groupClassName=\"demo-radio-group\"\n>\n <RadioGroup.Item value=\"a\" label=\"Compact\" controlClassName=\"demo-radio-control\" contentClassName=\"demo-radio-content\" />\n <RadioGroup.Item value=\"b\" label=\"Comfortable\" />\n</RadioGroup>"
|
|
176
175
|
}
|
|
177
176
|
],
|