@ankhorage/zora 13.0.0 → 14.0.1
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/CHANGELOG.md +14 -0
- package/README.md +182 -6
- package/dist/features/accordion/adapters/inbound/Accordion.js +4 -4
- package/dist/features/accordion/adapters/inbound/Accordion.js.map +1 -1
- package/dist/features/accordion/adapters/inbound/AccordionItem.js +1 -1
- package/dist/features/accordion/adapters/inbound/AccordionItem.js.map +1 -1
- package/dist/features/app-bar/adapters/inbound/AppBar.d.ts +5 -0
- package/dist/features/app-bar/adapters/inbound/AppBar.d.ts.map +1 -0
- package/dist/features/app-bar/adapters/inbound/AppBar.js +91 -0
- package/dist/features/app-bar/adapters/inbound/AppBar.js.map +1 -0
- package/dist/{components/app-bar/meta.d.ts → features/app-bar/appBarMeta.d.ts} +1 -1
- package/dist/features/app-bar/appBarMeta.d.ts.map +1 -0
- package/dist/{components/app-bar/meta.js → features/app-bar/appBarMeta.js} +1 -1
- package/dist/features/app-bar/appBarMeta.js.map +1 -0
- package/dist/features/app-bar/public.d.ts +3 -0
- package/dist/features/app-bar/public.d.ts.map +1 -0
- package/dist/features/app-bar/public.js +2 -0
- package/dist/features/app-bar/public.js.map +1 -0
- package/dist/features/date-picker/adapters/inbound/DatePicker.d.ts +1 -6
- package/dist/features/date-picker/adapters/inbound/DatePicker.d.ts.map +1 -1
- package/dist/features/date-picker/adapters/inbound/DatePicker.js +1 -175
- package/dist/features/date-picker/adapters/inbound/DatePicker.js.map +1 -1
- package/dist/features/date-picker/adapters/inbound/DatePicker.native.d.ts +5 -0
- package/dist/features/date-picker/adapters/inbound/DatePicker.native.d.ts.map +1 -0
- package/dist/features/date-picker/adapters/inbound/DatePicker.native.js +27 -0
- package/dist/features/date-picker/adapters/inbound/DatePicker.native.js.map +1 -0
- package/dist/features/date-picker/adapters/inbound/DatePicker.web.d.ts +5 -0
- package/dist/features/date-picker/adapters/inbound/DatePicker.web.d.ts.map +1 -0
- package/dist/features/date-picker/adapters/inbound/DatePicker.web.js +25 -0
- package/dist/features/date-picker/adapters/inbound/DatePicker.web.js.map +1 -0
- package/dist/features/date-picker/composition/DatePickerContent.d.ts +10 -0
- package/dist/features/date-picker/composition/DatePickerContent.d.ts.map +1 -0
- package/dist/features/date-picker/composition/DatePickerContent.js +129 -0
- package/dist/features/date-picker/composition/DatePickerContent.js.map +1 -0
- package/dist/features/date-picker/composition/DatePickerField.d.ts +9 -0
- package/dist/features/date-picker/composition/DatePickerField.d.ts.map +1 -0
- package/dist/features/date-picker/composition/DatePickerField.js +21 -0
- package/dist/features/date-picker/composition/DatePickerField.js.map +1 -0
- package/dist/features/date-picker/composition/DatePickerTrigger.d.ts +9 -0
- package/dist/features/date-picker/composition/DatePickerTrigger.d.ts.map +1 -0
- package/dist/features/date-picker/composition/DatePickerTrigger.js +18 -0
- package/dist/features/date-picker/composition/DatePickerTrigger.js.map +1 -0
- package/dist/features/time-picker/adapters/inbound/TimePicker.d.ts +1 -6
- package/dist/features/time-picker/adapters/inbound/TimePicker.d.ts.map +1 -1
- package/dist/features/time-picker/adapters/inbound/TimePicker.js +1 -116
- package/dist/features/time-picker/adapters/inbound/TimePicker.js.map +1 -1
- package/dist/features/time-picker/adapters/inbound/TimePicker.native.d.ts +5 -0
- package/dist/features/time-picker/adapters/inbound/TimePicker.native.d.ts.map +1 -0
- package/dist/features/time-picker/adapters/inbound/TimePicker.native.js +26 -0
- package/dist/features/time-picker/adapters/inbound/TimePicker.native.js.map +1 -0
- package/dist/features/time-picker/adapters/inbound/TimePicker.web.d.ts +5 -0
- package/dist/features/time-picker/adapters/inbound/TimePicker.web.d.ts.map +1 -0
- package/dist/features/time-picker/adapters/inbound/TimePicker.web.js +24 -0
- package/dist/features/time-picker/adapters/inbound/TimePicker.web.js.map +1 -0
- package/dist/features/time-picker/composition/TimePickerContent.d.ts +10 -0
- package/dist/features/time-picker/composition/TimePickerContent.d.ts.map +1 -0
- package/dist/features/time-picker/composition/TimePickerContent.js +78 -0
- package/dist/features/time-picker/composition/TimePickerContent.js.map +1 -0
- package/dist/features/time-picker/composition/TimePickerField.d.ts +9 -0
- package/dist/features/time-picker/composition/TimePickerField.d.ts.map +1 -0
- package/dist/features/time-picker/composition/TimePickerField.js +21 -0
- package/dist/features/time-picker/composition/TimePickerField.js.map +1 -0
- package/dist/features/time-picker/composition/TimePickerTrigger.d.ts +8 -0
- package/dist/features/time-picker/composition/TimePickerTrigger.d.ts.map +1 -0
- package/dist/features/time-picker/composition/TimePickerTrigger.js +9 -0
- package/dist/features/time-picker/composition/TimePickerTrigger.js.map +1 -0
- package/dist/features/toast/adapters/inbound/Toast.d.ts +5 -0
- package/dist/features/toast/adapters/inbound/Toast.d.ts.map +1 -0
- package/dist/features/toast/adapters/inbound/Toast.js +10 -0
- package/dist/features/toast/adapters/inbound/Toast.js.map +1 -0
- package/dist/features/toast/adapters/inbound/ToastProvider.d.ts +5 -0
- package/dist/features/toast/adapters/inbound/ToastProvider.d.ts.map +1 -0
- package/dist/features/toast/adapters/inbound/ToastProvider.js +7 -0
- package/dist/features/toast/adapters/inbound/ToastProvider.js.map +1 -0
- package/dist/features/toast/public.d.ts +5 -0
- package/dist/features/toast/public.d.ts.map +1 -0
- package/dist/features/toast/public.js +4 -0
- package/dist/features/toast/public.js.map +1 -0
- package/dist/features/toast/toastMeta.d.ts +9 -0
- package/dist/features/toast/toastMeta.d.ts.map +1 -0
- package/dist/features/toast/toastMeta.js +9 -0
- package/dist/features/toast/toastMeta.js.map +1 -0
- package/dist/features/toast/toastProviderMeta.d.ts +9 -0
- package/dist/features/toast/toastProviderMeta.d.ts.map +1 -0
- package/dist/features/toast/toastProviderMeta.js +9 -0
- package/dist/features/toast/toastProviderMeta.js.map +1 -0
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/layout/settings-layout/SettingsLayout.d.ts +0 -2
- package/dist/layout/settings-layout/SettingsLayout.d.ts.map +1 -1
- package/dist/layout/settings-layout/SettingsLayout.js +1 -3
- package/dist/layout/settings-layout/SettingsLayout.js.map +1 -1
- package/dist/metadata/componentMeta.d.ts.map +1 -1
- package/dist/metadata/componentMeta.js +3 -2
- package/dist/metadata/componentMeta.js.map +1 -1
- package/dist/patterns/reader/ReaderSurface.js +1 -1
- package/dist/patterns/reader/ReaderSurface.js.map +1 -1
- package/dist/patterns/selection/SelectionProvider.d.ts +0 -4
- package/dist/patterns/selection/SelectionProvider.d.ts.map +1 -1
- package/dist/patterns/selection/SelectionProvider.js +4 -6
- package/dist/patterns/selection/SelectionProvider.js.map +1 -1
- package/dist/registry.js +2 -2
- package/dist/registry.js.map +1 -1
- package/dist/theme/ZoraProvider.d.ts +4 -10
- package/dist/theme/ZoraProvider.d.ts.map +1 -1
- package/dist/theme/ZoraProvider.js +8 -6
- package/dist/theme/ZoraProvider.js.map +1 -1
- package/dist/theme/ZoraRuntimeCapabilities.d.ts +2 -0
- package/dist/theme/ZoraRuntimeCapabilities.d.ts.map +1 -0
- package/dist/theme/ZoraRuntimeCapabilities.js +2 -0
- package/dist/theme/ZoraRuntimeCapabilities.js.map +1 -0
- package/dist/theme/ZoraRuntimeCapabilities.native.d.ts +4 -0
- package/dist/theme/ZoraRuntimeCapabilities.native.d.ts.map +1 -0
- package/dist/theme/ZoraRuntimeCapabilities.native.js +8 -0
- package/dist/theme/ZoraRuntimeCapabilities.native.js.map +1 -0
- package/dist/theme/ZoraRuntimeCapabilities.web.d.ts +4 -0
- package/dist/theme/ZoraRuntimeCapabilities.web.d.ts.map +1 -0
- package/dist/theme/ZoraRuntimeCapabilities.web.js +8 -0
- package/dist/theme/ZoraRuntimeCapabilities.web.js.map +1 -0
- package/dist/theme/ZoraThemeRuntimeContext.d.ts +1 -0
- package/dist/theme/ZoraThemeRuntimeContext.d.ts.map +1 -1
- package/dist/theme/ZoraThemeRuntimeContext.js +3 -2
- package/dist/theme/ZoraThemeRuntimeContext.js.map +1 -1
- package/dist/theme/ZoraThemeScope.d.ts +1 -0
- package/dist/theme/ZoraThemeScope.d.ts.map +1 -1
- package/dist/theme/ZoraThemeScope.js +12 -10
- package/dist/theme/ZoraThemeScope.js.map +1 -1
- package/dist/theme/index.d.ts +1 -1
- package/dist/theme/index.d.ts.map +1 -1
- package/dist/theme/index.js.map +1 -1
- package/dist/{components/app-bar/types.d.ts → types/app-bar.d.ts} +2 -2
- package/dist/types/app-bar.d.ts.map +1 -0
- package/dist/types/app-bar.js +2 -0
- package/dist/types/app-bar.js.map +1 -0
- package/dist/types/provider.d.ts +19 -0
- package/dist/types/provider.d.ts.map +1 -0
- package/dist/types/provider.js +2 -0
- package/dist/types/provider.js.map +1 -0
- package/dist/types/toast.d.ts +9 -0
- package/dist/types/toast.d.ts.map +1 -0
- package/dist/types/toast.js +2 -0
- package/dist/types/toast.js.map +1 -0
- package/package.json +2 -2
- package/src/features/accordion/adapters/inbound/Accordion.tsx +4 -4
- package/src/features/accordion/adapters/inbound/AccordionItem.tsx +1 -1
- package/src/features/app-bar/adapters/inbound/AppBar.tsx +176 -0
- package/src/features/app-bar/public.ts +2 -0
- package/src/features/bottom-sheet/public.test.ts +15 -12
- package/src/features/date-picker/adapters/inbound/DatePicker.native.tsx +46 -0
- package/src/features/date-picker/adapters/inbound/DatePicker.tsx +1 -356
- package/src/features/date-picker/adapters/inbound/DatePicker.web.tsx +48 -0
- package/src/features/date-picker/composition/DatePickerContent.tsx +256 -0
- package/src/features/date-picker/composition/DatePickerField.tsx +53 -0
- package/src/features/date-picker/composition/DatePickerTrigger.tsx +47 -0
- package/src/features/date-picker/public.test.ts +14 -4
- package/src/features/time-picker/adapters/inbound/TimePicker.native.tsx +47 -0
- package/src/features/time-picker/adapters/inbound/TimePicker.tsx +1 -258
- package/src/features/time-picker/adapters/inbound/TimePicker.web.tsx +49 -0
- package/src/features/time-picker/composition/TimePickerContent.tsx +164 -0
- package/src/features/time-picker/composition/TimePickerField.tsx +53 -0
- package/src/features/time-picker/composition/TimePickerTrigger.tsx +35 -0
- package/src/features/time-picker/public.test.ts +14 -3
- package/src/features/toast/adapters/inbound/Toast.tsx +13 -0
- package/src/features/toast/adapters/inbound/ToastProvider.tsx +9 -0
- package/src/features/toast/public.test.ts +19 -0
- package/src/features/toast/public.ts +10 -0
- package/src/features/toast/toastMeta.ts +10 -0
- package/src/features/toast/toastProviderMeta.ts +10 -0
- package/src/index.ts +10 -4
- package/src/interactionPolicy.test.ts +7 -3
- package/src/layout/settings-layout/SettingsLayout.tsx +1 -3
- package/src/metadata/componentMeta.ts +3 -2
- package/src/patterns/reader/ReaderSurface.tsx +1 -1
- package/src/patterns/selection/SelectionProvider.tsx +4 -6
- package/src/registry.ts +2 -2
- package/src/theme/ZoraProvider.tsx +11 -13
- package/src/theme/ZoraRuntimeCapabilities.native.tsx +19 -0
- package/src/theme/ZoraRuntimeCapabilities.tsx +1 -0
- package/src/theme/ZoraRuntimeCapabilities.web.tsx +10 -0
- package/src/theme/ZoraThemeRuntimeContext.tsx +3 -2
- package/src/theme/ZoraThemeScope.tsx +14 -12
- package/src/theme/index.ts +1 -1
- package/src/theme/themeConfigScope.test.ts +4 -1
- package/src/theme/themeScopeStructure.test.ts +26 -18
- package/src/{components/app-bar/types.ts → types/app-bar.ts} +1 -1
- package/src/types/provider.ts +22 -0
- package/src/{components/toast/types.ts → types/toast.ts} +5 -7
- package/dist/components/app-bar/AppBar.d.ts +0 -7
- package/dist/components/app-bar/AppBar.d.ts.map +0 -1
- package/dist/components/app-bar/AppBar.js +0 -67
- package/dist/components/app-bar/AppBar.js.map +0 -1
- package/dist/components/app-bar/index.d.ts +0 -3
- package/dist/components/app-bar/index.d.ts.map +0 -1
- package/dist/components/app-bar/index.js +0 -3
- package/dist/components/app-bar/index.js.map +0 -1
- package/dist/components/app-bar/meta.d.ts.map +0 -1
- package/dist/components/app-bar/meta.js.map +0 -1
- package/dist/components/app-bar/types.d.ts.map +0 -1
- package/dist/components/app-bar/types.js +0 -2
- package/dist/components/app-bar/types.js.map +0 -1
- package/dist/components/toast/Toast.d.ts +0 -9
- package/dist/components/toast/Toast.d.ts.map +0 -1
- package/dist/components/toast/Toast.js +0 -13
- package/dist/components/toast/Toast.js.map +0 -1
- package/dist/components/toast/ToastProvider.d.ts +0 -9
- package/dist/components/toast/ToastProvider.d.ts.map +0 -1
- package/dist/components/toast/ToastProvider.js +0 -14
- package/dist/components/toast/ToastProvider.js.map +0 -1
- package/dist/components/toast/index.d.ts +0 -5
- package/dist/components/toast/index.d.ts.map +0 -1
- package/dist/components/toast/index.js +0 -4
- package/dist/components/toast/index.js.map +0 -1
- package/dist/components/toast/meta.d.ts +0 -17
- package/dist/components/toast/meta.d.ts.map +0 -1
- package/dist/components/toast/meta.js +0 -17
- package/dist/components/toast/meta.js.map +0 -1
- package/dist/components/toast/types.d.ts +0 -12
- package/dist/components/toast/types.d.ts.map +0 -1
- package/dist/components/toast/types.js +0 -2
- package/dist/components/toast/types.js.map +0 -1
- package/src/components/app-bar/AppBar.tsx +0 -140
- package/src/components/app-bar/index.ts +0 -2
- package/src/components/toast/Toast.tsx +0 -16
- package/src/components/toast/ToastProvider.tsx +0 -17
- package/src/components/toast/index.ts +0 -4
- package/src/components/toast/meta.ts +0 -19
- /package/src/{components/app-bar/meta.ts → features/app-bar/appBarMeta.ts} +0 -0
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
import { AppBar as SurfaceAppBar, type ButtonIconSpec } from '@ankhorage/surface';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
|
|
4
|
-
import { IconButton } from '../../features/button/public';
|
|
5
|
-
import { Box, Stack } from '../../features/layout/public';
|
|
6
|
-
import { Heading } from '../../features/typography/public';
|
|
7
|
-
import { Text } from '../../features/typography/public';
|
|
8
|
-
import { Inline } from '../../foundation';
|
|
9
|
-
import { useZoraTheme } from '../../theme/useZoraTheme';
|
|
10
|
-
import { withZoraThemeScope } from '../../theme/withZoraThemeScope';
|
|
11
|
-
import type { AppBarMode, AppBarOverflowAction, AppBarProps } from './types';
|
|
12
|
-
|
|
13
|
-
const DEFAULT_CANCEL_ICON = { name: 'close-outline' } satisfies ButtonIconSpec;
|
|
14
|
-
const DEFAULT_OVERFLOW_ICON = { name: 'ellipsis-vertical' } satisfies ButtonIconSpec;
|
|
15
|
-
|
|
16
|
-
function resolveMode(mode: AppBarMode | undefined): AppBarMode {
|
|
17
|
-
return mode ?? { type: 'default' };
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
function resolveSelectionLabel({ count, label }: { count?: number; label: string }): string {
|
|
21
|
-
if (count === undefined) {
|
|
22
|
-
return label;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
return `${label} (${count})`;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
function resolveOverflowLabel(overflow: AppBarOverflowAction): string {
|
|
29
|
-
return overflow.label ?? 'More options';
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
function resolveCancelLabel(mode: Extract<AppBarMode, { type: 'selection' }>): string {
|
|
33
|
-
return mode.cancelLabel ?? 'Cancel selection';
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
function AppBarInner({
|
|
37
|
-
themeId: _themeId,
|
|
38
|
-
mode: _mode,
|
|
39
|
-
title,
|
|
40
|
-
subtitle,
|
|
41
|
-
leading,
|
|
42
|
-
actions,
|
|
43
|
-
overflow,
|
|
44
|
-
appMode,
|
|
45
|
-
children,
|
|
46
|
-
safeAreaTop = true,
|
|
47
|
-
divider = true,
|
|
48
|
-
testID,
|
|
49
|
-
interactionPolicy,
|
|
50
|
-
}: AppBarProps) {
|
|
51
|
-
const { theme } = useZoraTheme();
|
|
52
|
-
const resolvedMode = resolveMode(appMode);
|
|
53
|
-
const isSelectionMode = resolvedMode.type === 'selection';
|
|
54
|
-
|
|
55
|
-
const resolvedLeading =
|
|
56
|
-
leading ??
|
|
57
|
-
(isSelectionMode ? (
|
|
58
|
-
<IconButton
|
|
59
|
-
icon={resolvedMode.cancelIcon ?? DEFAULT_CANCEL_ICON}
|
|
60
|
-
interactionPolicy={interactionPolicy}
|
|
61
|
-
label={resolveCancelLabel(resolvedMode)}
|
|
62
|
-
variant="ghost"
|
|
63
|
-
size="m"
|
|
64
|
-
color="neutral"
|
|
65
|
-
onPress={resolvedMode.onCancel}
|
|
66
|
-
/>
|
|
67
|
-
) : undefined);
|
|
68
|
-
|
|
69
|
-
const overflowButton = overflow?.onPress ? (
|
|
70
|
-
<IconButton
|
|
71
|
-
disabled={overflow.disabled}
|
|
72
|
-
icon={overflow.icon ?? DEFAULT_OVERFLOW_ICON}
|
|
73
|
-
interactionPolicy={interactionPolicy}
|
|
74
|
-
label={resolveOverflowLabel(overflow)}
|
|
75
|
-
variant="ghost"
|
|
76
|
-
size="m"
|
|
77
|
-
color="neutral"
|
|
78
|
-
onPress={overflow.onPress}
|
|
79
|
-
/>
|
|
80
|
-
) : null;
|
|
81
|
-
|
|
82
|
-
const resolvedTrailing =
|
|
83
|
-
actions || overflowButton ? (
|
|
84
|
-
<Inline align="center" gap="s" wrap="nowrap">
|
|
85
|
-
{actions}
|
|
86
|
-
{overflowButton}
|
|
87
|
-
</Inline>
|
|
88
|
-
) : undefined;
|
|
89
|
-
|
|
90
|
-
const resolvedCenter = (() => {
|
|
91
|
-
if (children !== undefined) {
|
|
92
|
-
return children;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
if (isSelectionMode) {
|
|
96
|
-
return (
|
|
97
|
-
<Text numberOfLines={1} emphasis="default" variant="label" weight="semiBold">
|
|
98
|
-
{resolveSelectionLabel(resolvedMode)}
|
|
99
|
-
</Text>
|
|
100
|
-
);
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
if (title == null && subtitle == null) {
|
|
104
|
-
return null;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
return (
|
|
108
|
-
<Stack gap="xs">
|
|
109
|
-
{title != null ? (
|
|
110
|
-
<Heading ellipsizeMode="tail" level={3} numberOfLines={1} size="h5">
|
|
111
|
-
{title}
|
|
112
|
-
</Heading>
|
|
113
|
-
) : null}
|
|
114
|
-
{subtitle != null ? (
|
|
115
|
-
<Text ellipsizeMode="tail" numberOfLines={1} emphasis="muted" variant="bodySmall">
|
|
116
|
-
{subtitle}
|
|
117
|
-
</Text>
|
|
118
|
-
) : null}
|
|
119
|
-
</Stack>
|
|
120
|
-
);
|
|
121
|
-
})();
|
|
122
|
-
|
|
123
|
-
return (
|
|
124
|
-
<SurfaceAppBar
|
|
125
|
-
bg={isSelectionMode ? theme.semantics.action.primary.softBg : undefined}
|
|
126
|
-
divider={divider}
|
|
127
|
-
leading={resolvedLeading}
|
|
128
|
-
safeAreaTop={safeAreaTop}
|
|
129
|
-
testID={testID}
|
|
130
|
-
trailing={resolvedTrailing}
|
|
131
|
-
>
|
|
132
|
-
{resolvedCenter ? <Box style={{ minWidth: 0 }}>{resolvedCenter}</Box> : null}
|
|
133
|
-
</SurfaceAppBar>
|
|
134
|
-
);
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
/***
|
|
138
|
-
* Renders a top app bar with title/subtitle and optional leading/trailing actions.
|
|
139
|
-
*/
|
|
140
|
-
export const AppBar = withZoraThemeScope(AppBarInner);
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Toast as SurfaceToast } from '@ankhorage/surface';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
|
|
4
|
-
import { withZoraThemeScope } from '../../theme/withZoraThemeScope';
|
|
5
|
-
import type { ToastProps } from './types';
|
|
6
|
-
|
|
7
|
-
function ToastInner({ mode: _mode, themeId: _themeId, ...props }: ToastProps) {
|
|
8
|
-
return <SurfaceToast {...props} />;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
/***
|
|
12
|
-
* Renders a toast notification message.
|
|
13
|
-
*
|
|
14
|
-
|
|
15
|
-
*/
|
|
16
|
-
export const Toast = withZoraThemeScope(ToastInner);
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { ToastProvider as SurfaceToastProvider } from '@ankhorage/surface';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
|
|
4
|
-
import type { ToastProviderProps } from './types';
|
|
5
|
-
|
|
6
|
-
/***
|
|
7
|
-
* Provides toast state and rendering context for `useToast` and `Toast`.
|
|
8
|
-
*
|
|
9
|
-
|
|
10
|
-
*/
|
|
11
|
-
export function ToastProvider({ children, defaultDuration }: ToastProviderProps) {
|
|
12
|
-
if (defaultDuration === undefined) {
|
|
13
|
-
return <SurfaceToastProvider>{children}</SurfaceToastProvider>;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
return <SurfaceToastProvider defaultDuration={defaultDuration}>{children}</SurfaceToastProvider>;
|
|
17
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import type { ZoraComponentMeta } from '../../metadata';
|
|
2
|
-
|
|
3
|
-
export const toastMeta = {
|
|
4
|
-
name: 'Toast',
|
|
5
|
-
category: 'component',
|
|
6
|
-
directManifestNode: false,
|
|
7
|
-
allowedChildren: [],
|
|
8
|
-
note: 'Transient feedback component; exposed as an imperative provider/hook workflow, not represented as a manifest node in v1.',
|
|
9
|
-
props: {},
|
|
10
|
-
} as const satisfies ZoraComponentMeta;
|
|
11
|
-
|
|
12
|
-
export const toastProviderMeta = {
|
|
13
|
-
name: 'ToastProvider',
|
|
14
|
-
category: 'component',
|
|
15
|
-
directManifestNode: false,
|
|
16
|
-
allowedChildren: [],
|
|
17
|
-
note: 'Provider for imperative toast feedback; not represented as a manifest node in v1.',
|
|
18
|
-
props: {},
|
|
19
|
-
} as const satisfies ZoraComponentMeta;
|
|
File without changes
|