@tempoxyz/ds 0.3.0 → 0.3.2
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/dist/web/components/Accordion.css +1 -1
- package/dist/web/components/Accordion.js.zyzz.json +1 -1
- package/dist/web/components/AddressCard.css +1 -0
- package/dist/web/components/AddressCard.d.ts +85 -0
- package/dist/web/components/AddressCard.d.ts.map +1 -0
- package/dist/web/components/AddressCard.js +79 -0
- package/dist/web/components/AddressCard.js.map +1 -0
- package/dist/web/components/AddressCard.js.zyzz.json +1 -0
- package/dist/web/components/AgentLogo.js +1 -1
- package/dist/web/components/AgentLogo.js.map +1 -1
- package/dist/web/components/AgentLogo.js.zyzz.json +1 -1
- package/dist/web/components/Alert.css +1 -1
- package/dist/web/components/Alert.d.ts +7 -2
- package/dist/web/components/Alert.d.ts.map +1 -1
- package/dist/web/components/Alert.js +12 -7
- package/dist/web/components/Alert.js.map +1 -1
- package/dist/web/components/Alert.js.zyzz.json +1 -1
- package/dist/web/components/AlertDialog.js.zyzz.json +1 -1
- package/dist/web/components/Amount.css +1 -1
- package/dist/web/components/Amount.js.zyzz.json +1 -1
- package/dist/web/components/AmountInput.css +1 -1
- package/dist/web/components/AmountInput.d.ts +1 -1
- package/dist/web/components/AmountInput.d.ts.map +1 -1
- package/dist/web/components/AmountInput.js.zyzz.json +1 -1
- package/dist/web/components/AppShell.css +1 -1
- package/dist/web/components/AppShell.d.ts +128 -2
- package/dist/web/components/AppShell.d.ts.map +1 -1
- package/dist/web/components/AppShell.js +122 -32
- package/dist/web/components/AppShell.js.map +1 -1
- package/dist/web/components/AppShell.js.zyzz.json +1 -1
- package/dist/web/components/AssetChip.css +1 -1
- package/dist/web/components/AssetChip.d.ts.map +1 -1
- package/dist/web/components/AssetChip.js.map +1 -1
- package/dist/web/components/AssetChip.js.zyzz.json +1 -1
- package/dist/web/components/Autocomplete.js.zyzz.json +1 -1
- package/dist/web/components/Avatar.css +1 -1
- package/dist/web/components/Avatar.d.ts +68 -6
- package/dist/web/components/Avatar.d.ts.map +1 -1
- package/dist/web/components/Avatar.js +27 -7
- package/dist/web/components/Avatar.js.map +1 -1
- package/dist/web/components/Avatar.js.zyzz.json +1 -1
- package/dist/web/components/Badge.css +1 -1
- package/dist/web/components/Badge.d.ts +49 -1
- package/dist/web/components/Badge.d.ts.map +1 -1
- package/dist/web/components/Badge.js +5 -3
- package/dist/web/components/Badge.js.map +1 -1
- package/dist/web/components/Badge.js.zyzz.json +1 -1
- package/dist/web/components/Banner.css +1 -1
- package/dist/web/components/Banner.js.zyzz.json +1 -1
- package/dist/web/components/BarChart.css +1 -1
- package/dist/web/components/BarChart.js.zyzz.json +1 -1
- package/dist/web/components/Breadcrumbs.css +1 -1
- package/dist/web/components/Breadcrumbs.js.zyzz.json +1 -1
- package/dist/web/components/Button.css +1 -1
- package/dist/web/components/Button.d.ts +82 -12
- package/dist/web/components/Button.d.ts.map +1 -1
- package/dist/web/components/Button.js +6 -3
- package/dist/web/components/Button.js.map +1 -1
- package/dist/web/components/Button.js.zyzz.json +1 -1
- package/dist/web/components/ButtonGroup.js.zyzz.json +1 -1
- package/dist/web/components/Calendar.css +1 -1
- package/dist/web/components/Calendar.js.zyzz.json +1 -1
- package/dist/web/components/Callout.css +1 -0
- package/dist/web/components/Callout.d.ts +23 -0
- package/dist/web/components/Callout.d.ts.map +1 -0
- package/dist/web/components/Callout.js +26 -0
- package/dist/web/components/Callout.js.map +1 -0
- package/dist/web/components/Callout.js.zyzz.json +1 -0
- package/dist/web/components/Checkbox.css +1 -1
- package/dist/web/components/Checkbox.js.zyzz.json +1 -1
- package/dist/web/components/CheckboxGroup.js.zyzz.json +1 -1
- package/dist/web/components/ChoiceGroup.css +1 -1
- package/dist/web/components/ChoiceGroup.d.ts +17 -10
- package/dist/web/components/ChoiceGroup.d.ts.map +1 -1
- package/dist/web/components/ChoiceGroup.js +5 -5
- package/dist/web/components/ChoiceGroup.js.map +1 -1
- package/dist/web/components/ChoiceGroup.js.zyzz.json +1 -1
- package/dist/web/components/Choicebox.css +1 -1
- package/dist/web/components/Choicebox.js.zyzz.json +1 -1
- package/dist/web/components/Code.css +1 -0
- package/dist/web/components/Code.d.ts +25 -0
- package/dist/web/components/Code.d.ts.map +1 -0
- package/dist/web/components/Code.js +28 -0
- package/dist/web/components/Code.js.map +1 -0
- package/dist/web/components/Code.js.zyzz.json +1 -0
- package/dist/web/components/Combobox.css +1 -1
- package/dist/web/components/Combobox.js.zyzz.json +1 -1
- package/dist/web/components/Container.js.zyzz.json +1 -1
- package/dist/web/components/CopyButton.d.ts +8 -1
- package/dist/web/components/CopyButton.d.ts.map +1 -1
- package/dist/web/components/CopyButton.js.map +1 -1
- package/dist/web/components/CopyButton.js.zyzz.json +1 -1
- package/dist/web/components/DatePicker.css +1 -1
- package/dist/web/components/DatePicker.js.zyzz.json +1 -1
- package/dist/web/components/Dialog.css +1 -1
- package/dist/web/components/Dialog.d.ts.map +1 -1
- package/dist/web/components/Dialog.js +2 -1
- package/dist/web/components/Dialog.js.map +1 -1
- package/dist/web/components/Dialog.js.zyzz.json +1 -1
- package/dist/web/components/Drawer.js.zyzz.json +1 -1
- package/dist/web/components/Empty.css +1 -1
- package/dist/web/components/Empty.js.zyzz.json +1 -1
- package/dist/web/components/Field.css +1 -1
- package/dist/web/components/Field.d.ts +41 -5
- package/dist/web/components/Field.d.ts.map +1 -1
- package/dist/web/components/Field.js +19 -13
- package/dist/web/components/Field.js.map +1 -1
- package/dist/web/components/Field.js.zyzz.json +1 -1
- package/dist/web/components/Fieldset.js.zyzz.json +1 -1
- package/dist/web/components/Frame.css +1 -1
- package/dist/web/components/Frame.js.zyzz.json +1 -1
- package/dist/web/components/Gauge.js.zyzz.json +1 -1
- package/dist/web/components/GetStartedVisual.css +1 -0
- package/dist/web/components/GetStartedVisual.d.ts +59 -0
- package/dist/web/components/GetStartedVisual.d.ts.map +1 -0
- package/dist/web/components/GetStartedVisual.js +31 -0
- package/dist/web/components/GetStartedVisual.js.map +1 -0
- package/dist/web/components/GetStartedVisual.js.zyzz.json +1 -0
- package/dist/web/components/Grid.js.zyzz.json +1 -1
- package/dist/web/components/HeroVisual.css +1 -0
- package/dist/web/components/HeroVisual.d.ts +96 -0
- package/dist/web/components/HeroVisual.d.ts.map +1 -0
- package/dist/web/components/HeroVisual.js +202 -0
- package/dist/web/components/HeroVisual.js.map +1 -0
- package/dist/web/components/HeroVisual.js.zyzz.json +1 -0
- package/dist/web/components/Hex.css +1 -1
- package/dist/web/components/Hex.js.zyzz.json +1 -1
- package/dist/web/components/IconTile.css +1 -1
- package/dist/web/components/IconTile.js.zyzz.json +1 -1
- package/dist/web/components/Identicon.js.zyzz.json +1 -1
- package/dist/web/components/Inline.js.zyzz.json +1 -1
- package/dist/web/components/Inset.js.zyzz.json +1 -1
- package/dist/web/components/Kbd.css +1 -1
- package/dist/web/components/Kbd.d.ts +8 -7
- package/dist/web/components/Kbd.d.ts.map +1 -1
- package/dist/web/components/Kbd.js +1 -1
- package/dist/web/components/Kbd.js.map +1 -1
- package/dist/web/components/Kbd.js.zyzz.json +1 -1
- package/dist/web/components/ListGroup.css +1 -1
- package/dist/web/components/ListGroup.d.ts +39 -22
- package/dist/web/components/ListGroup.d.ts.map +1 -1
- package/dist/web/components/ListGroup.js +24 -21
- package/dist/web/components/ListGroup.js.map +1 -1
- package/dist/web/components/ListGroup.js.zyzz.json +1 -1
- package/dist/web/components/LoadingDots.js.zyzz.json +1 -1
- package/dist/web/components/Menu.css +1 -1
- package/dist/web/components/Menu.js.zyzz.json +1 -1
- package/dist/web/components/NativeSelect.css +1 -0
- package/dist/web/components/NativeSelect.d.ts +50 -0
- package/dist/web/components/NativeSelect.d.ts.map +1 -0
- package/dist/web/components/NativeSelect.js +50 -0
- package/dist/web/components/NativeSelect.js.map +1 -0
- package/dist/web/components/NativeSelect.js.zyzz.json +1 -0
- package/dist/web/components/NetworkLogo.js.zyzz.json +1 -1
- package/dist/web/components/NumberField.css +1 -1
- package/dist/web/components/NumberField.js.zyzz.json +1 -1
- package/dist/web/components/OtpField.css +1 -1
- package/dist/web/components/OtpField.js.zyzz.json +1 -1
- package/dist/web/components/Pagination.css +1 -1
- package/dist/web/components/Pagination.js.zyzz.json +1 -1
- package/dist/web/components/Popover.css +1 -1
- package/dist/web/components/Popover.js.zyzz.json +1 -1
- package/dist/web/components/Progress.css +1 -1
- package/dist/web/components/Progress.d.ts +1 -1
- package/dist/web/components/Progress.d.ts.map +1 -1
- package/dist/web/components/Progress.js +2 -1
- package/dist/web/components/Progress.js.map +1 -1
- package/dist/web/components/Progress.js.zyzz.json +1 -1
- package/dist/web/components/Qr.js.zyzz.json +1 -1
- package/dist/web/components/RadioGroup.css +1 -1
- package/dist/web/components/RadioGroup.d.ts +1 -1
- package/dist/web/components/RadioGroup.js.zyzz.json +1 -1
- package/dist/web/components/SecretValue.css +1 -1
- package/dist/web/components/SecretValue.js.zyzz.json +1 -1
- package/dist/web/components/Select.css +1 -1
- package/dist/web/components/Select.d.ts +1 -1
- package/dist/web/components/Select.d.ts.map +1 -1
- package/dist/web/components/Select.js +2 -2
- package/dist/web/components/Select.js.map +1 -1
- package/dist/web/components/Select.js.zyzz.json +1 -1
- package/dist/web/components/Separator.css +1 -1
- package/dist/web/components/Separator.js.zyzz.json +1 -1
- package/dist/web/components/SidebarMenu.css +1 -1
- package/dist/web/components/SidebarMenu.d.ts +60 -2
- package/dist/web/components/SidebarMenu.d.ts.map +1 -1
- package/dist/web/components/SidebarMenu.js +47 -16
- package/dist/web/components/SidebarMenu.js.map +1 -1
- package/dist/web/components/SidebarMenu.js.zyzz.json +1 -1
- package/dist/web/components/Skeleton.css +1 -1
- package/dist/web/components/Skeleton.js.zyzz.json +1 -1
- package/dist/web/components/Slider.css +1 -1
- package/dist/web/components/Slider.js.zyzz.json +1 -1
- package/dist/web/components/Snippet.css +1 -1
- package/dist/web/components/Snippet.js.zyzz.json +1 -1
- package/dist/web/components/Spinner.js.zyzz.json +1 -1
- package/dist/web/components/SplitBar.css +1 -1
- package/dist/web/components/SplitBar.js.zyzz.json +1 -1
- package/dist/web/components/SplitButton.css +1 -1
- package/dist/web/components/SplitButton.d.ts +3 -1
- package/dist/web/components/SplitButton.d.ts.map +1 -1
- package/dist/web/components/SplitButton.js +2 -2
- package/dist/web/components/SplitButton.js.map +1 -1
- package/dist/web/components/SplitButton.js.zyzz.json +1 -1
- package/dist/web/components/Stack.js.zyzz.json +1 -1
- package/dist/web/components/StatusChip.css +1 -1
- package/dist/web/components/StatusChip.js.zyzz.json +1 -1
- package/dist/web/components/StatusIndicator.css +1 -0
- package/dist/web/components/StatusIndicator.d.ts +74 -0
- package/dist/web/components/StatusIndicator.d.ts.map +1 -0
- package/dist/web/components/StatusIndicator.js +32 -0
- package/dist/web/components/StatusIndicator.js.map +1 -0
- package/dist/web/components/StatusIndicator.js.zyzz.json +1 -0
- package/dist/web/components/StatusRow.css +1 -1
- package/dist/web/components/StatusRow.js.zyzz.json +1 -1
- package/dist/web/components/Stepper.js.zyzz.json +1 -1
- package/dist/web/components/SuccessHero.css +1 -0
- package/dist/web/components/SuccessHero.d.ts +74 -0
- package/dist/web/components/SuccessHero.d.ts.map +1 -0
- package/dist/web/components/SuccessHero.js +167 -0
- package/dist/web/components/SuccessHero.js.map +1 -0
- package/dist/web/components/SuccessHero.js.zyzz.json +1 -0
- package/dist/web/components/Surface.css +1 -1
- package/dist/web/components/Surface.d.ts +86 -0
- package/dist/web/components/Surface.d.ts.map +1 -1
- package/dist/web/components/Surface.js +6 -3
- package/dist/web/components/Surface.js.map +1 -1
- package/dist/web/components/Surface.js.zyzz.json +1 -1
- package/dist/web/components/Switch.css +1 -1
- package/dist/web/components/Switch.d.ts +6 -6
- package/dist/web/components/Switch.d.ts.map +1 -1
- package/dist/web/components/Switch.js +3 -2
- package/dist/web/components/Switch.js.map +1 -1
- package/dist/web/components/Switch.js.zyzz.json +1 -1
- package/dist/web/components/Table.css +1 -1
- package/dist/web/components/Table.d.ts +85 -0
- package/dist/web/components/Table.d.ts.map +1 -1
- package/dist/web/components/Table.js +14 -6
- package/dist/web/components/Table.js.map +1 -1
- package/dist/web/components/Table.js.zyzz.json +1 -1
- package/dist/web/components/Tabs.css +1 -1
- package/dist/web/components/Tabs.d.ts +183 -6
- package/dist/web/components/Tabs.d.ts.map +1 -1
- package/dist/web/components/Tabs.js +18 -13
- package/dist/web/components/Tabs.js.map +1 -1
- package/dist/web/components/Tabs.js.zyzz.json +1 -1
- package/dist/web/components/TempoLogo.js +1 -1
- package/dist/web/components/TempoLogo.js.map +1 -1
- package/dist/web/components/TempoLogo.js.zyzz.json +1 -1
- package/dist/web/components/TextInput.css +1 -1
- package/dist/web/components/TextInput.d.ts +80 -2
- package/dist/web/components/TextInput.d.ts.map +1 -1
- package/dist/web/components/TextInput.js +19 -7
- package/dist/web/components/TextInput.js.map +1 -1
- package/dist/web/components/TextInput.js.zyzz.json +1 -1
- package/dist/web/components/Textarea.css +1 -1
- package/dist/web/components/Textarea.d.ts +7 -1
- package/dist/web/components/Textarea.d.ts.map +1 -1
- package/dist/web/components/Textarea.js +3 -2
- package/dist/web/components/Textarea.js.map +1 -1
- package/dist/web/components/Textarea.js.zyzz.json +1 -1
- package/dist/web/components/Toast.css +1 -1
- package/dist/web/components/Toast.d.ts +16 -3
- package/dist/web/components/Toast.d.ts.map +1 -1
- package/dist/web/components/Toast.js +29 -17
- package/dist/web/components/Toast.js.map +1 -1
- package/dist/web/components/Toast.js.zyzz.json +1 -1
- package/dist/web/components/Token.css +1 -1
- package/dist/web/components/Token.js.zyzz.json +1 -1
- package/dist/web/components/TokenLogo.js.zyzz.json +1 -1
- package/dist/web/components/Tooltip.css +1 -1
- package/dist/web/components/Tooltip.d.ts.map +1 -1
- package/dist/web/components/Tooltip.js +3 -2
- package/dist/web/components/Tooltip.js.map +1 -1
- package/dist/web/components/Tooltip.js.zyzz.json +1 -1
- package/dist/web/components/VerificationCode.css +1 -1
- package/dist/web/components/VerificationCode.js.zyzz.json +1 -1
- package/dist/web/components/Visual.js.zyzz.json +1 -1
- package/dist/web/components/internal/Field.css +1 -1
- package/dist/web/components/internal/Field.js.zyzz.json +1 -1
- package/dist/web/components/internal/GetStartedArtwork.d.ts +10 -0
- package/dist/web/components/internal/GetStartedArtwork.d.ts.map +1 -0
- package/dist/web/components/internal/GetStartedArtwork.js +11 -0
- package/dist/web/components/internal/GetStartedArtwork.js.map +1 -0
- package/dist/web/components/internal/InputGroup.css +1 -1
- package/dist/web/components/internal/InputGroup.js.zyzz.json +1 -1
- package/dist/web/components/internal/Listbox.css +1 -1
- package/dist/web/components/internal/Listbox.js.zyzz.json +1 -1
- package/dist/web/components/internal/Streaks.css +1 -0
- package/dist/web/components/internal/Streaks.d.ts +48 -0
- package/dist/web/components/internal/Streaks.d.ts.map +1 -0
- package/dist/web/components/internal/Streaks.js +48 -0
- package/dist/web/components/internal/Streaks.js.map +1 -0
- package/dist/web/components/internal/Streaks.js.zyzz.json +1 -0
- package/dist/web/components/internal/TabBar.d.ts +37 -0
- package/dist/web/components/internal/TabBar.d.ts.map +1 -0
- package/dist/web/components/internal/TabBar.js +30 -0
- package/dist/web/components/internal/TabBar.js.map +1 -0
- package/dist/web/components/internal/Text.d.ts +9 -0
- package/dist/web/components/internal/Text.d.ts.map +1 -0
- package/dist/web/components/internal/Text.js +35 -0
- package/dist/web/components/internal/Text.js.map +1 -0
- package/dist/web/index.d.ts +8 -0
- package/dist/web/index.d.ts.map +1 -1
- package/dist/web/index.js +8 -0
- package/dist/web/index.js.map +1 -1
- package/dist/web/index.js.zyzz.json +1 -1
- package/dist/web/vars.d.ts +51 -6
- package/dist/web/vars.d.ts.map +1 -1
- package/dist/web/vars.js.map +1 -1
- package/dist/web/vars.js.zyzz.json +1 -1
- package/dist/web/zyzz.config.d.ts +255 -30
- package/dist/web/zyzz.config.d.ts.map +1 -1
- package/dist/web/zyzz.config.js.zyzz.json +1 -1
- package/package.json +1 -1
- package/src/web/components/AddressCard.tsx +216 -0
- package/src/web/components/AgentLogo.tsx +1 -1
- package/src/web/components/Alert.tsx +25 -5
- package/src/web/components/AmountInput.tsx +1 -1
- package/src/web/components/AppShell.tsx +383 -22
- package/src/web/components/AssetChip.tsx +4 -1
- package/src/web/components/Avatar.tsx +73 -6
- package/src/web/components/Badge.tsx +43 -5
- package/src/web/components/Button.tsx +78 -21
- package/src/web/components/Callout.tsx +45 -0
- package/src/web/components/ChoiceGroup.tsx +26 -12
- package/src/web/components/Code.tsx +42 -0
- package/src/web/components/CopyButton.tsx +8 -4
- package/src/web/components/Dialog.tsx +9 -2
- package/src/web/components/Field.tsx +53 -20
- package/src/web/components/GetStartedVisual.tsx +66 -0
- package/src/web/components/HeroVisual.tsx +304 -0
- package/src/web/components/Kbd.tsx +16 -9
- package/src/web/components/ListGroup.tsx +75 -28
- package/src/web/components/NativeSelect.tsx +167 -0
- package/src/web/components/Progress.tsx +3 -2
- package/src/web/components/RadioGroup.tsx +1 -1
- package/src/web/components/Select.tsx +4 -1
- package/src/web/components/SidebarMenu.tsx +106 -7
- package/src/web/components/SplitButton.tsx +11 -4
- package/src/web/components/StatusIndicator.tsx +94 -0
- package/src/web/components/SuccessHero.tsx +249 -0
- package/src/web/components/Surface.tsx +107 -1
- package/src/web/components/Switch.tsx +18 -25
- package/src/web/components/Table.tsx +69 -1
- package/src/web/components/Tabs.tsx +172 -10
- package/src/web/components/TempoLogo.tsx +1 -1
- package/src/web/components/TextInput.tsx +87 -5
- package/src/web/components/Textarea.tsx +9 -1
- package/src/web/components/Toast.tsx +67 -34
- package/src/web/components/Tooltip.tsx +6 -4
- package/src/web/components/internal/GetStartedArtwork.tsx +356 -0
- package/src/web/components/internal/Streaks.tsx +173 -0
- package/src/web/components/internal/TabBar.ts +56 -0
- package/src/web/components/internal/Text.ts +39 -0
- package/src/web/components/visuals/GetStartedConnect.svg +36 -0
- package/src/web/components/visuals/GetStartedFunds.svg +31 -0
- package/src/web/components/visuals/GetStartedPasskey.svg +34 -0
- package/src/web/components/visuals/README.md +15 -0
- package/src/web/index.ts +8 -0
- package/src/web/logos/README.md +1 -1
- package/src/web/vars.ts +34 -10
|
@@ -42,6 +42,51 @@ export namespace Toast {
|
|
|
42
42
|
/** Sets the leading icon and its color. `neutral` shows no icon. */
|
|
43
43
|
export type Intent = 'info' | 'negative' | 'neutral' | 'positive' | 'warning'
|
|
44
44
|
|
|
45
|
+
/**
|
|
46
|
+
* One toast: an elevated card with the icon of its intent, its title and description in Pilat,
|
|
47
|
+
* an optional action, and a Dismiss button. `Toast.Viewport` renders one for each queued toast.
|
|
48
|
+
* Render it yourself only under `Toast.Provider`, such as in a custom viewport, with a `toast`
|
|
49
|
+
* object from the queue. Its `type` sets the intent. The item is absolutely positioned at the
|
|
50
|
+
* bottom of its containing block, as the viewport stacks it.
|
|
51
|
+
*/
|
|
52
|
+
export function Item(props: Item.Props) {
|
|
53
|
+
const { className, toast, vars, ...attributes } = props
|
|
54
|
+
const intent = (toast.type ?? 'neutral') as Intent
|
|
55
|
+
const Glyph = intent === 'neutral' ? undefined : icons[intent]
|
|
56
|
+
|
|
57
|
+
return (
|
|
58
|
+
<BaseUi.Toast.Root
|
|
59
|
+
{...attributes}
|
|
60
|
+
toast={toast}
|
|
61
|
+
{...styles.root({ className, style: props.style, vars })}
|
|
62
|
+
>
|
|
63
|
+
<BaseUi.Toast.Content {...styles.content()}>
|
|
64
|
+
{Glyph && (
|
|
65
|
+
<span aria-hidden="true" data-icon="" {...styles.icon({ intent })}>
|
|
66
|
+
<Glyph />
|
|
67
|
+
</span>
|
|
68
|
+
)}
|
|
69
|
+
<div {...styles.body()}>
|
|
70
|
+
<BaseUi.Toast.Title {...styles.title()} />
|
|
71
|
+
<BaseUi.Toast.Description {...styles.description()} />
|
|
72
|
+
</div>
|
|
73
|
+
{toast.actionProps && <BaseUi.Toast.Action {...styles.action()} />}
|
|
74
|
+
<BaseUi.Toast.Close aria-label="Dismiss" {...styles.close()}>
|
|
75
|
+
<Close />
|
|
76
|
+
</BaseUi.Toast.Close>
|
|
77
|
+
</BaseUi.Toast.Content>
|
|
78
|
+
</BaseUi.Toast.Root>
|
|
79
|
+
)
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export namespace Item {
|
|
83
|
+
export type Props = Omit<ComponentPropsWithRef<'div'>, 'children'> &
|
|
84
|
+
zyzz.Props.Variants<typeof styles.root> & {
|
|
85
|
+
/** The queued toast, whose `title`, `description`, `type` and `actionProps` it renders. */
|
|
86
|
+
toast: BaseUi.Toast.Root.ToastObject
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
45
90
|
/**
|
|
46
91
|
* Holds the toast queue for `Toast.useToast` and `Toast.Viewport` beneath it. The oldest toasts
|
|
47
92
|
* past `limit` stay mounted but hidden.
|
|
@@ -97,9 +142,8 @@ export namespace Toast {
|
|
|
97
142
|
}
|
|
98
143
|
|
|
99
144
|
/**
|
|
100
|
-
* Renders
|
|
101
|
-
*
|
|
102
|
-
* end from 40rem up.
|
|
145
|
+
* Renders a `Toast.Item` for each queued toast in a portal. It spans the bottom edge on narrow
|
|
146
|
+
* screens and sits 20rem wide at the bottom end from 40rem up.
|
|
103
147
|
*/
|
|
104
148
|
export function Viewport(props: Viewport.Props) {
|
|
105
149
|
const { className, vars, ...attributes } = props
|
|
@@ -111,30 +155,9 @@ export namespace Toast {
|
|
|
111
155
|
{...attributes}
|
|
112
156
|
{...styles.viewport({ className, style: props.style, vars })}
|
|
113
157
|
>
|
|
114
|
-
{toasts.map((toast) =>
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
return (
|
|
119
|
-
<BaseUi.Toast.Root key={toast.id} toast={toast} {...styles.root()}>
|
|
120
|
-
<BaseUi.Toast.Content {...styles.content()}>
|
|
121
|
-
{Glyph && (
|
|
122
|
-
<span aria-hidden="true" {...styles.icon({ intent })}>
|
|
123
|
-
<Glyph />
|
|
124
|
-
</span>
|
|
125
|
-
)}
|
|
126
|
-
<div {...styles.body()}>
|
|
127
|
-
<BaseUi.Toast.Title {...styles.title()} />
|
|
128
|
-
<BaseUi.Toast.Description {...styles.description()} />
|
|
129
|
-
</div>
|
|
130
|
-
{toast.actionProps && <BaseUi.Toast.Action {...styles.action()} />}
|
|
131
|
-
<BaseUi.Toast.Close aria-label="Dismiss" {...styles.close()}>
|
|
132
|
-
<Close />
|
|
133
|
-
</BaseUi.Toast.Close>
|
|
134
|
-
</BaseUi.Toast.Content>
|
|
135
|
-
</BaseUi.Toast.Root>
|
|
136
|
-
)
|
|
137
|
-
})}
|
|
158
|
+
{toasts.map((toast) => (
|
|
159
|
+
<Item key={toast.id} toast={toast} />
|
|
160
|
+
))}
|
|
138
161
|
</BaseUi.Toast.Viewport>
|
|
139
162
|
</BaseUi.Toast.Portal>
|
|
140
163
|
)
|
|
@@ -159,6 +182,8 @@ namespace styles {
|
|
|
159
182
|
display: 'inline-flex',
|
|
160
183
|
flexShrink: '0 !custom',
|
|
161
184
|
height: '32',
|
|
185
|
+
// The 32px button centers on the 20px first line of the title.
|
|
186
|
+
marginBlock: '-6',
|
|
162
187
|
paddingInline: '12',
|
|
163
188
|
// Weight overrides the typography token, so it stays after it.
|
|
164
189
|
typography: 'body.b3Strong',
|
|
@@ -210,6 +235,8 @@ namespace styles {
|
|
|
210
235
|
fontSize: '16',
|
|
211
236
|
height: '24',
|
|
212
237
|
justifyContent: 'center',
|
|
238
|
+
// The 24px button centers on the 20px first line of the title.
|
|
239
|
+
marginBlock: '-0.125rem !custom',
|
|
213
240
|
padding: '0',
|
|
214
241
|
width: '24',
|
|
215
242
|
outlineColor: 'transparent !custom',
|
|
@@ -232,20 +259,24 @@ namespace styles {
|
|
|
232
259
|
{ id: 'tds/web/toast/close' },
|
|
233
260
|
)
|
|
234
261
|
|
|
262
|
+
// The icon, the action and the Dismiss button center on the first line of the title.
|
|
235
263
|
export const content = style(
|
|
236
264
|
{
|
|
237
|
-
alignItems: '
|
|
265
|
+
alignItems: 'flex-start',
|
|
238
266
|
boxSizing: 'border-box',
|
|
239
267
|
columnGap: '12',
|
|
240
268
|
display: 'flex',
|
|
241
269
|
height: '100% !custom',
|
|
242
270
|
overflow: 'hidden',
|
|
243
271
|
paddingBlock: '16',
|
|
244
|
-
|
|
272
|
+
paddingInlineEnd: '16',
|
|
273
|
+
paddingInlineStart: '20',
|
|
245
274
|
transitionDuration: '200',
|
|
246
275
|
transitionProperty: 'opacity',
|
|
247
276
|
transitionTimingFunction: 'snappy',
|
|
248
277
|
selectors: {
|
|
278
|
+
// A leading icon starts 16px from the edge, and the text 12px after it.
|
|
279
|
+
'&:has(> [data-icon])': { paddingInlineStart: '16' },
|
|
249
280
|
'&[data-behind]': { opacity: '0 !custom', pointerEvents: 'none' },
|
|
250
281
|
'&[data-expanded]': { opacity: '1 !custom' },
|
|
251
282
|
},
|
|
@@ -253,8 +284,10 @@ namespace styles {
|
|
|
253
284
|
{ id: 'tds/web/toast/content' },
|
|
254
285
|
)
|
|
255
286
|
|
|
287
|
+
// The title and description set Pilat at the size of their typography set, so the family
|
|
288
|
+
// follows the set, which sets the family of the body.
|
|
256
289
|
export const description = style(
|
|
257
|
-
{ color: 'content.secondary', margin: '0', typography: 'body.
|
|
290
|
+
{ color: 'content.secondary', margin: '0', typography: 'body.b3Strong', fontFamily: 'heading' },
|
|
258
291
|
{ id: 'tds/web/toast/description' },
|
|
259
292
|
)
|
|
260
293
|
|
|
@@ -278,7 +311,7 @@ namespace styles {
|
|
|
278
311
|
{
|
|
279
312
|
backgroundColor: 'background.elevated',
|
|
280
313
|
borderRadius: 'sm',
|
|
281
|
-
boxShadow: '
|
|
314
|
+
boxShadow: 'large',
|
|
282
315
|
boxSizing: 'border-box',
|
|
283
316
|
color: 'content.primary',
|
|
284
317
|
height: 'var(--toast-frontmost-height, var(--toast-height)) !custom',
|
|
@@ -334,7 +367,7 @@ namespace styles {
|
|
|
334
367
|
)
|
|
335
368
|
|
|
336
369
|
export const title = style(
|
|
337
|
-
{ color: 'content.primary', margin: '0', typography: 'body.b2Strong' },
|
|
370
|
+
{ color: 'content.primary', margin: '0', typography: 'body.b2Strong', fontFamily: 'heading' },
|
|
338
371
|
{ id: 'tds/web/toast/title' },
|
|
339
372
|
)
|
|
340
373
|
|
|
@@ -343,13 +376,13 @@ namespace styles {
|
|
|
343
376
|
insetBlockEnd: '16',
|
|
344
377
|
insetInline: '16',
|
|
345
378
|
margin: 'auto !custom',
|
|
346
|
-
maxWidth: '
|
|
379
|
+
maxWidth: '320',
|
|
347
380
|
position: 'fixed',
|
|
348
381
|
zIndex: 'toast',
|
|
349
382
|
'@media (min-width: 40rem)': {
|
|
350
383
|
insetInlineStart: 'auto !custom',
|
|
351
384
|
margin: '0',
|
|
352
|
-
width: '
|
|
385
|
+
width: '320',
|
|
353
386
|
},
|
|
354
387
|
},
|
|
355
388
|
{ id: 'tds/web/toast/viewport' },
|
|
@@ -96,14 +96,16 @@ export namespace Tooltip {
|
|
|
96
96
|
}
|
|
97
97
|
|
|
98
98
|
namespace styles {
|
|
99
|
+
// An elevated label with an 8px corner, padded 8px above and below and 12px at the sides.
|
|
99
100
|
export const popup = style(
|
|
100
101
|
{
|
|
101
|
-
backgroundColor: '
|
|
102
|
-
borderRadius: '
|
|
102
|
+
backgroundColor: 'background.elevated',
|
|
103
|
+
borderRadius: '2xs',
|
|
104
|
+
boxShadow: 'small',
|
|
103
105
|
boxSizing: 'border-box',
|
|
104
|
-
color: '
|
|
106
|
+
color: 'content.primary',
|
|
105
107
|
maxWidth: '320',
|
|
106
|
-
paddingBlock: '
|
|
108
|
+
paddingBlock: '8',
|
|
107
109
|
paddingInline: '12',
|
|
108
110
|
transformOrigin: 'var(--transform-origin) !custom',
|
|
109
111
|
transitionDuration: '160',
|