@misoto22/kioku-ui 0.0.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/LICENSE +21 -0
- package/README.md +21 -0
- package/dist/Alert/Alert.d.ts +7 -0
- package/dist/Alert/Alert.doc.d.ts +11 -0
- package/dist/Alert/Alert.doc.js +15 -0
- package/dist/Alert/Alert.js +149 -0
- package/dist/Alert/index.d.ts +1 -0
- package/dist/Alert/index.js +2 -0
- package/dist/AsyncState/AsyncState.d.ts +30 -0
- package/dist/AsyncState/AsyncState.doc.d.ts +16 -0
- package/dist/AsyncState/AsyncState.doc.js +16 -0
- package/dist/AsyncState/AsyncState.js +36 -0
- package/dist/AsyncState/index.d.ts +1 -0
- package/dist/AsyncState/index.js +2 -0
- package/dist/Badge/Badge.d.ts +10 -0
- package/dist/Badge/Badge.doc.d.ts +11 -0
- package/dist/Badge/Badge.doc.js +12 -0
- package/dist/Badge/Badge.js +58 -0
- package/dist/Badge/index.d.ts +1 -0
- package/dist/Badge/index.js +2 -0
- package/dist/Button/Button.d.ts +18 -0
- package/dist/Button/Button.doc.d.ts +11 -0
- package/dist/Button/Button.doc.js +18 -0
- package/dist/Button/Button.js +151 -0
- package/dist/Button/index.d.ts +1 -0
- package/dist/Button/index.js +2 -0
- package/dist/Card/Card.d.ts +6 -0
- package/dist/Card/Card.doc.d.ts +11 -0
- package/dist/Card/Card.doc.js +15 -0
- package/dist/Card/Card.js +41 -0
- package/dist/Card/index.d.ts +1 -0
- package/dist/Card/index.js +2 -0
- package/dist/CardFooter/CardFooter.d.ts +3 -0
- package/dist/CardFooter/CardFooter.doc.d.ts +11 -0
- package/dist/CardFooter/CardFooter.doc.js +12 -0
- package/dist/CardFooter/CardFooter.js +16 -0
- package/dist/CardFooter/index.d.ts +1 -0
- package/dist/CardFooter/index.js +2 -0
- package/dist/CardHeader/CardHeader.d.ts +3 -0
- package/dist/CardHeader/CardHeader.doc.d.ts +11 -0
- package/dist/CardHeader/CardHeader.doc.js +12 -0
- package/dist/CardHeader/CardHeader.js +16 -0
- package/dist/CardHeader/index.d.ts +1 -0
- package/dist/CardHeader/index.js +2 -0
- package/dist/Center/Center.d.ts +3 -0
- package/dist/Center/Center.doc.d.ts +11 -0
- package/dist/Center/Center.doc.js +12 -0
- package/dist/Center/Center.js +15 -0
- package/dist/Center/index.d.ts +1 -0
- package/dist/Center/index.js +2 -0
- package/dist/Divider/Divider.d.ts +3 -0
- package/dist/Divider/Divider.doc.d.ts +11 -0
- package/dist/Divider/Divider.doc.js +12 -0
- package/dist/Divider/Divider.js +12 -0
- package/dist/Divider/index.d.ts +1 -0
- package/dist/Divider/index.js +2 -0
- package/dist/EmptyState/EmptyState.d.ts +11 -0
- package/dist/EmptyState/EmptyState.doc.d.ts +16 -0
- package/dist/EmptyState/EmptyState.doc.js +25 -0
- package/dist/EmptyState/EmptyState.js +55 -0
- package/dist/EmptyState/index.d.ts +1 -0
- package/dist/EmptyState/index.js +2 -0
- package/dist/Field/Field.d.ts +21 -0
- package/dist/Field/Field.doc.d.ts +16 -0
- package/dist/Field/Field.doc.js +28 -0
- package/dist/Field/Field.js +117 -0
- package/dist/Field/index.d.ts +1 -0
- package/dist/Field/index.js +2 -0
- package/dist/Grid/Grid.d.ts +7 -0
- package/dist/Grid/Grid.doc.d.ts +11 -0
- package/dist/Grid/Grid.doc.js +15 -0
- package/dist/Grid/Grid.js +76 -0
- package/dist/Grid/index.d.ts +1 -0
- package/dist/Grid/index.js +2 -0
- package/dist/Heading/Heading.d.ts +293 -0
- package/dist/Heading/Heading.doc.d.ts +16 -0
- package/dist/Heading/Heading.doc.js +19 -0
- package/dist/Heading/Heading.js +47 -0
- package/dist/Heading/index.d.ts +1 -0
- package/dist/Heading/index.js +2 -0
- package/dist/IconButton/IconButton.d.ts +9 -0
- package/dist/IconButton/IconButton.doc.d.ts +16 -0
- package/dist/IconButton/IconButton.doc.js +22 -0
- package/dist/IconButton/IconButton.js +11 -0
- package/dist/IconButton/index.d.ts +1 -0
- package/dist/IconButton/index.js +2 -0
- package/dist/MetricGrid/MetricGrid.d.ts +10 -0
- package/dist/MetricGrid/MetricGrid.doc.d.ts +12 -0
- package/dist/MetricGrid/MetricGrid.doc.js +13 -0
- package/dist/MetricGrid/MetricGrid.js +37 -0
- package/dist/MetricGrid/index.d.ts +1 -0
- package/dist/MetricGrid/index.js +2 -0
- package/dist/Section/Section.d.ts +6 -0
- package/dist/Section/Section.doc.d.ts +11 -0
- package/dist/Section/Section.doc.js +12 -0
- package/dist/Section/Section.js +49 -0
- package/dist/Section/index.d.ts +1 -0
- package/dist/Section/index.js +2 -0
- package/dist/SegmentedControl/SegmentedControl.d.ts +31 -0
- package/dist/SegmentedControl/SegmentedControl.doc.d.ts +16 -0
- package/dist/SegmentedControl/SegmentedControl.doc.js +34 -0
- package/dist/SegmentedControl/SegmentedControl.js +108 -0
- package/dist/SegmentedControl/index.d.ts +1 -0
- package/dist/SegmentedControl/index.js +2 -0
- package/dist/Skeleton/Skeleton.d.ts +5 -0
- package/dist/Skeleton/Skeleton.doc.d.ts +11 -0
- package/dist/Skeleton/Skeleton.doc.js +12 -0
- package/dist/Skeleton/Skeleton.js +20 -0
- package/dist/Skeleton/index.d.ts +1 -0
- package/dist/Skeleton/index.js +2 -0
- package/dist/Spinner/Spinner.d.ts +6 -0
- package/dist/Spinner/Spinner.doc.d.ts +12 -0
- package/dist/Spinner/Spinner.doc.js +13 -0
- package/dist/Spinner/Spinner.js +25 -0
- package/dist/Spinner/index.d.ts +1 -0
- package/dist/Spinner/index.js +2 -0
- package/dist/Stack/Stack.d.ts +7 -0
- package/dist/Stack/Stack.doc.d.ts +11 -0
- package/dist/Stack/Stack.doc.js +15 -0
- package/dist/Stack/Stack.js +77 -0
- package/dist/Stack/index.d.ts +1 -0
- package/dist/Stack/index.js +2 -0
- package/dist/StatusDot/StatusDot.d.ts +8 -0
- package/dist/StatusDot/StatusDot.doc.d.ts +16 -0
- package/dist/StatusDot/StatusDot.doc.js +16 -0
- package/dist/StatusDot/StatusDot.js +46 -0
- package/dist/StatusDot/index.d.ts +1 -0
- package/dist/StatusDot/index.js +2 -0
- package/dist/Table/Table.d.ts +20 -0
- package/dist/Table/Table.doc.d.ts +92 -0
- package/dist/Table/Table.doc.js +94 -0
- package/dist/Table/Table.js +205 -0
- package/dist/Table/index.d.ts +1 -0
- package/dist/Table/index.js +2 -0
- package/dist/Text/Text.d.ts +7 -0
- package/dist/Text/Text.doc.d.ts +11 -0
- package/dist/Text/Text.doc.js +15 -0
- package/dist/Text/Text.js +50 -0
- package/dist/Text/index.d.ts +1 -0
- package/dist/Text/index.js +2 -0
- package/dist/TextArea/TextArea.d.ts +16 -0
- package/dist/TextArea/TextArea.doc.d.ts +11 -0
- package/dist/TextArea/TextArea.doc.js +30 -0
- package/dist/TextArea/TextArea.js +47 -0
- package/dist/TextArea/index.d.ts +1 -0
- package/dist/TextArea/index.js +2 -0
- package/dist/TextInput/TextInput.d.ts +16 -0
- package/dist/TextInput/TextInput.doc.d.ts +11 -0
- package/dist/TextInput/TextInput.doc.js +30 -0
- package/dist/TextInput/TextInput.js +49 -0
- package/dist/TextInput/index.d.ts +1 -0
- package/dist/TextInput/index.js +2 -0
- package/dist/Toggle/Toggle.d.ts +16 -0
- package/dist/Toggle/Toggle.doc.d.ts +11 -0
- package/dist/Toggle/Toggle.doc.js +21 -0
- package/dist/Toggle/Toggle.js +64 -0
- package/dist/Toggle/index.d.ts +1 -0
- package/dist/Toggle/index.js +2 -0
- package/dist/VisuallyHidden/VisuallyHidden.d.ts +3 -0
- package/dist/VisuallyHidden/VisuallyHidden.doc.d.ts +11 -0
- package/dist/VisuallyHidden/VisuallyHidden.doc.js +12 -0
- package/dist/VisuallyHidden/VisuallyHidden.js +15 -0
- package/dist/VisuallyHidden/index.d.ts +1 -0
- package/dist/VisuallyHidden/index.js +2 -0
- package/dist/authoring.stylex.d.ts +75 -0
- package/dist/authoring.stylex.js +77 -0
- package/dist/components/Alert.d.ts +7 -0
- package/dist/components/Alert.doc.d.ts +11 -0
- package/dist/components/Alert.doc.js +15 -0
- package/dist/components/Alert.js +149 -0
- package/dist/components/AsyncState.d.ts +30 -0
- package/dist/components/AsyncState.doc.d.ts +16 -0
- package/dist/components/AsyncState.doc.js +16 -0
- package/dist/components/AsyncState.js +36 -0
- package/dist/components/Badge.d.ts +10 -0
- package/dist/components/Badge.doc.d.ts +11 -0
- package/dist/components/Badge.doc.js +12 -0
- package/dist/components/Badge.js +58 -0
- package/dist/components/Button.d.ts +18 -0
- package/dist/components/Button.doc.d.ts +11 -0
- package/dist/components/Button.doc.js +18 -0
- package/dist/components/Button.js +151 -0
- package/dist/components/Card.d.ts +6 -0
- package/dist/components/Card.doc.d.ts +11 -0
- package/dist/components/Card.doc.js +15 -0
- package/dist/components/Card.js +41 -0
- package/dist/components/CardFooter.d.ts +3 -0
- package/dist/components/CardFooter.doc.d.ts +11 -0
- package/dist/components/CardFooter.doc.js +12 -0
- package/dist/components/CardFooter.js +16 -0
- package/dist/components/CardHeader.d.ts +3 -0
- package/dist/components/CardHeader.doc.d.ts +11 -0
- package/dist/components/CardHeader.doc.js +12 -0
- package/dist/components/CardHeader.js +16 -0
- package/dist/components/Center.d.ts +3 -0
- package/dist/components/Center.doc.d.ts +11 -0
- package/dist/components/Center.doc.js +12 -0
- package/dist/components/Center.js +15 -0
- package/dist/components/Divider.d.ts +3 -0
- package/dist/components/Divider.doc.d.ts +11 -0
- package/dist/components/Divider.doc.js +12 -0
- package/dist/components/Divider.js +12 -0
- package/dist/components/EmptyState.d.ts +11 -0
- package/dist/components/EmptyState.doc.d.ts +16 -0
- package/dist/components/EmptyState.doc.js +25 -0
- package/dist/components/EmptyState.js +55 -0
- package/dist/components/Field.d.ts +21 -0
- package/dist/components/Field.doc.d.ts +16 -0
- package/dist/components/Field.doc.js +28 -0
- package/dist/components/Field.js +117 -0
- package/dist/components/Grid.d.ts +7 -0
- package/dist/components/Grid.doc.d.ts +11 -0
- package/dist/components/Grid.doc.js +15 -0
- package/dist/components/Grid.js +76 -0
- package/dist/components/Heading.d.ts +293 -0
- package/dist/components/Heading.doc.d.ts +16 -0
- package/dist/components/Heading.doc.js +19 -0
- package/dist/components/Heading.js +46 -0
- package/dist/components/IconButton.d.ts +9 -0
- package/dist/components/IconButton.doc.d.ts +16 -0
- package/dist/components/IconButton.doc.js +22 -0
- package/dist/components/IconButton.js +11 -0
- package/dist/components/MetricGrid.d.ts +10 -0
- package/dist/components/MetricGrid.doc.d.ts +12 -0
- package/dist/components/MetricGrid.doc.js +13 -0
- package/dist/components/MetricGrid.js +37 -0
- package/dist/components/Section.d.ts +6 -0
- package/dist/components/Section.doc.d.ts +11 -0
- package/dist/components/Section.doc.js +12 -0
- package/dist/components/Section.js +49 -0
- package/dist/components/SegmentedControl.d.ts +31 -0
- package/dist/components/SegmentedControl.doc.d.ts +16 -0
- package/dist/components/SegmentedControl.doc.js +34 -0
- package/dist/components/SegmentedControl.js +108 -0
- package/dist/components/Skeleton.d.ts +5 -0
- package/dist/components/Skeleton.doc.d.ts +11 -0
- package/dist/components/Skeleton.doc.js +12 -0
- package/dist/components/Skeleton.js +20 -0
- package/dist/components/Spinner.d.ts +6 -0
- package/dist/components/Spinner.doc.d.ts +12 -0
- package/dist/components/Spinner.doc.js +13 -0
- package/dist/components/Spinner.js +25 -0
- package/dist/components/Stack.d.ts +7 -0
- package/dist/components/Stack.doc.d.ts +11 -0
- package/dist/components/Stack.doc.js +15 -0
- package/dist/components/Stack.js +77 -0
- package/dist/components/StatusDot.d.ts +8 -0
- package/dist/components/StatusDot.doc.d.ts +16 -0
- package/dist/components/StatusDot.doc.js +16 -0
- package/dist/components/StatusDot.js +46 -0
- package/dist/components/Table.d.ts +20 -0
- package/dist/components/Table.doc.d.ts +92 -0
- package/dist/components/Table.doc.js +94 -0
- package/dist/components/Table.js +205 -0
- package/dist/components/Text.d.ts +7 -0
- package/dist/components/Text.doc.d.ts +11 -0
- package/dist/components/Text.doc.js +15 -0
- package/dist/components/Text.js +50 -0
- package/dist/components/TextArea.d.ts +16 -0
- package/dist/components/TextArea.doc.d.ts +11 -0
- package/dist/components/TextArea.doc.js +30 -0
- package/dist/components/TextArea.js +47 -0
- package/dist/components/TextInput.d.ts +16 -0
- package/dist/components/TextInput.doc.d.ts +11 -0
- package/dist/components/TextInput.doc.js +30 -0
- package/dist/components/TextInput.js +49 -0
- package/dist/components/Toggle.d.ts +16 -0
- package/dist/components/Toggle.doc.d.ts +11 -0
- package/dist/components/Toggle.doc.js +21 -0
- package/dist/components/Toggle.js +64 -0
- package/dist/components/VisuallyHidden.d.ts +3 -0
- package/dist/components/VisuallyHidden.doc.d.ts +11 -0
- package/dist/components/VisuallyHidden.doc.js +12 -0
- package/dist/components/VisuallyHidden.js +15 -0
- package/dist/components/index.d.ts +27 -0
- package/dist/components/index.js +28 -0
- package/dist/docs/index.d.ts +33 -0
- package/dist/docs/index.js +33 -0
- package/dist/docs/types.d.ts +15 -0
- package/dist/docs/types.js +25 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.js +32 -0
- package/dist/navigation/LinkProvider.d.ts +9 -0
- package/dist/navigation/LinkProvider.doc.d.ts +27 -0
- package/dist/navigation/LinkProvider.doc.js +27 -0
- package/dist/navigation/LinkProvider.js +22 -0
- package/dist/navigation/index.d.ts +1 -0
- package/dist/navigation/index.js +2 -0
- package/dist/styles/global.stylex.d.ts +20 -0
- package/dist/styles/global.stylex.js +22 -0
- package/dist/styles/index.css +14 -0
- package/dist/styles/reset.css +35 -0
- package/dist/styles/stylex.css +212 -0
- package/dist/theme/Theme.d.ts +24 -0
- package/dist/theme/Theme.doc.d.ts +16 -0
- package/dist/theme/Theme.doc.js +27 -0
- package/dist/theme/Theme.js +110 -0
- package/dist/theme/index.d.ts +2 -0
- package/dist/theme/index.js +2 -0
- package/dist/tokens/contracts.d.ts +140 -0
- package/dist/tokens/contracts.js +102 -0
- package/package.json +93 -0
- package/src/Alert/Alert.doc.ts +21 -0
- package/src/Alert/Alert.tsx +129 -0
- package/src/Alert/index.ts +1 -0
- package/src/AsyncState/AsyncState.doc.ts +21 -0
- package/src/AsyncState/AsyncState.tsx +75 -0
- package/src/AsyncState/index.ts +5 -0
- package/src/Badge/Badge.doc.ts +15 -0
- package/src/Badge/Badge.tsx +58 -0
- package/src/Badge/index.ts +6 -0
- package/src/Button/Button.doc.ts +17 -0
- package/src/Button/Button.tsx +176 -0
- package/src/Button/index.ts +7 -0
- package/src/Card/Card.doc.ts +22 -0
- package/src/Card/Card.tsx +44 -0
- package/src/Card/index.ts +1 -0
- package/src/CardFooter/CardFooter.doc.ts +12 -0
- package/src/CardFooter/CardFooter.tsx +27 -0
- package/src/CardFooter/index.ts +1 -0
- package/src/CardHeader/CardHeader.doc.ts +12 -0
- package/src/CardHeader/CardHeader.tsx +27 -0
- package/src/CardHeader/index.ts +1 -0
- package/src/Center/Center.doc.ts +12 -0
- package/src/Center/Center.tsx +20 -0
- package/src/Center/index.ts +1 -0
- package/src/Divider/Divider.doc.ts +12 -0
- package/src/Divider/Divider.tsx +20 -0
- package/src/Divider/index.ts +1 -0
- package/src/EmptyState/EmptyState.doc.ts +31 -0
- package/src/EmptyState/EmptyState.tsx +87 -0
- package/src/EmptyState/index.ts +6 -0
- package/src/Field/Field.doc.ts +34 -0
- package/src/Field/Field.tsx +126 -0
- package/src/Field/index.ts +6 -0
- package/src/Grid/Grid.doc.ts +16 -0
- package/src/Grid/Grid.tsx +54 -0
- package/src/Grid/index.ts +1 -0
- package/src/Heading/Heading.doc.ts +26 -0
- package/src/Heading/Heading.tsx +48 -0
- package/src/Heading/index.ts +1 -0
- package/src/IconButton/IconButton.doc.ts +24 -0
- package/src/IconButton/IconButton.tsx +18 -0
- package/src/IconButton/index.ts +1 -0
- package/src/MetricGrid/MetricGrid.doc.ts +19 -0
- package/src/MetricGrid/MetricGrid.tsx +72 -0
- package/src/MetricGrid/index.ts +5 -0
- package/src/Section/Section.doc.ts +12 -0
- package/src/Section/Section.tsx +38 -0
- package/src/Section/index.ts +1 -0
- package/src/SegmentedControl/SegmentedControl.doc.ts +51 -0
- package/src/SegmentedControl/SegmentedControl.tsx +238 -0
- package/src/SegmentedControl/index.ts +5 -0
- package/src/Skeleton/Skeleton.doc.ts +15 -0
- package/src/Skeleton/Skeleton.tsx +45 -0
- package/src/Skeleton/index.ts +1 -0
- package/src/Spinner/Spinner.doc.ts +19 -0
- package/src/Spinner/Spinner.tsx +47 -0
- package/src/Spinner/index.ts +1 -0
- package/src/Stack/Stack.doc.ts +13 -0
- package/src/Stack/Stack.tsx +57 -0
- package/src/Stack/index.ts +1 -0
- package/src/StatusDot/StatusDot.doc.ts +23 -0
- package/src/StatusDot/StatusDot.tsx +35 -0
- package/src/StatusDot/index.ts +1 -0
- package/src/Table/Table.doc.ts +104 -0
- package/src/Table/Table.tsx +222 -0
- package/src/Table/index.ts +18 -0
- package/src/Text/Text.doc.ts +17 -0
- package/src/Text/Text.tsx +43 -0
- package/src/Text/index.ts +1 -0
- package/src/TextArea/TextArea.doc.ts +43 -0
- package/src/TextArea/TextArea.tsx +119 -0
- package/src/TextArea/index.ts +1 -0
- package/src/TextInput/TextInput.doc.ts +43 -0
- package/src/TextInput/TextInput.tsx +122 -0
- package/src/TextInput/index.ts +1 -0
- package/src/Toggle/Toggle.doc.ts +30 -0
- package/src/Toggle/Toggle.tsx +139 -0
- package/src/Toggle/index.ts +1 -0
- package/src/VisuallyHidden/VisuallyHidden.doc.ts +18 -0
- package/src/VisuallyHidden/VisuallyHidden.tsx +28 -0
- package/src/VisuallyHidden/index.ts +1 -0
- package/src/authoring.stylex.ts +76 -0
- package/src/docs/index.ts +122 -0
- package/src/docs/types.ts +51 -0
- package/src/index.ts +102 -0
- package/src/navigation/LinkProvider.doc.ts +32 -0
- package/src/navigation/LinkProvider.tsx +32 -0
- package/src/navigation/index.ts +7 -0
- package/src/styles/global.stylex.ts +23 -0
- package/src/styles/index.css +14 -0
- package/src/styles/reset.css +35 -0
- package/src/theme/Theme.doc.ts +38 -0
- package/src/theme/Theme.tsx +195 -0
- package/src/theme/index.ts +9 -0
- package/src/tokens/contracts.ts +210 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Alert } from './Alert.js';
|
|
2
|
+
import { EmptyStateContent } from './EmptyState.js';
|
|
3
|
+
import { SpinnerVisual } from './Spinner.js';
|
|
4
|
+
import "../styles/stylex.css";
|
|
5
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
6
|
+
export function AsyncState({
|
|
7
|
+
children,
|
|
8
|
+
state
|
|
9
|
+
}) {
|
|
10
|
+
if (state.kind === 'ready' && !children) {
|
|
11
|
+
throw new Error('AsyncState requires a renderer for ready data');
|
|
12
|
+
}
|
|
13
|
+
const loadingLabel = state.kind === 'loading' ? state.label ?? 'Loading' : undefined;
|
|
14
|
+
const statusContent = state.kind === 'loading' ? /*#__PURE__*/_jsx(SpinnerVisual, {}) : state.kind === 'empty' ? /*#__PURE__*/_jsx(EmptyStateContent, {
|
|
15
|
+
action: state.action,
|
|
16
|
+
detail: state.detail,
|
|
17
|
+
title: state.title
|
|
18
|
+
}) : state.kind === 'ready' ? children(state.data) : null;
|
|
19
|
+
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
20
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
21
|
+
"aria-atomic": "true",
|
|
22
|
+
"aria-busy": state.kind === 'loading',
|
|
23
|
+
"aria-label": loadingLabel,
|
|
24
|
+
"aria-live": "polite",
|
|
25
|
+
role: "status",
|
|
26
|
+
children: statusContent
|
|
27
|
+
}), state.kind === 'error' ? /*#__PURE__*/_jsxs(Alert, {
|
|
28
|
+
tone: "danger",
|
|
29
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
30
|
+
children: state.title
|
|
31
|
+
}), state.detail ? /*#__PURE__*/_jsx("div", {
|
|
32
|
+
children: state.detail
|
|
33
|
+
}) : null, state.retry]
|
|
34
|
+
}) : null]
|
|
35
|
+
});
|
|
36
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { HTMLAttributes } from 'react';
|
|
2
|
+
/** Semantic feedback tones shared by status components. */
|
|
3
|
+
export type StatusTone = 'info' | 'success' | 'warning' | 'danger';
|
|
4
|
+
/** Compact badge tones, including a non-status neutral treatment. */
|
|
5
|
+
export type BadgeTone = 'neutral' | StatusTone;
|
|
6
|
+
/** Props for compact status or category text. */
|
|
7
|
+
export interface BadgeProps extends Omit<HTMLAttributes<HTMLSpanElement>, 'className'> {
|
|
8
|
+
readonly tone?: BadgeTone;
|
|
9
|
+
}
|
|
10
|
+
export declare function Badge({ children, tone, ...props }: BadgeProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import "../styles/stylex.css";
|
|
2
|
+
export const badgeDoc = {
|
|
3
|
+
name: 'Badge',
|
|
4
|
+
description: 'Displays compact, non-live status or category text.',
|
|
5
|
+
props: [{
|
|
6
|
+
name: 'tone',
|
|
7
|
+
description: 'Selects the neutral default or a semantic status tone.'
|
|
8
|
+
}],
|
|
9
|
+
inheritedProps: ['HTMLAttributes<HTMLSpanElement> except className'],
|
|
10
|
+
example: '<Badge tone="success">Available</Badge>',
|
|
11
|
+
storyId: 'core-badge--default'
|
|
12
|
+
};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import * as stylex from '@stylexjs/stylex';
|
|
2
|
+
import { semanticTokens } from '../authoring.stylex.js';
|
|
3
|
+
|
|
4
|
+
/** Semantic feedback tones shared by status components. */
|
|
5
|
+
import "../styles/stylex.css";
|
|
6
|
+
/** Compact badge tones, including a non-status neutral treatment. */
|
|
7
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
const styles = {
|
|
9
|
+
base: {
|
|
10
|
+
kaIpWk: "xnpwncj",
|
|
11
|
+
k1xSpc: "x3nfvp2",
|
|
12
|
+
kMv6JI: "xj0sio9",
|
|
13
|
+
kGuDYH: "xltg2ad",
|
|
14
|
+
k63SB2: "x1m30uz7",
|
|
15
|
+
k8WAf4: "x10y07nz",
|
|
16
|
+
kg3NbH: "x1qtbwip",
|
|
17
|
+
$$css: true
|
|
18
|
+
},
|
|
19
|
+
neutral: {
|
|
20
|
+
kWkggS: "xavu78a",
|
|
21
|
+
kMwMTN: "x17y7oyd",
|
|
22
|
+
$$css: true
|
|
23
|
+
},
|
|
24
|
+
info: {
|
|
25
|
+
kWkggS: "x1760qql",
|
|
26
|
+
kMwMTN: "x1ursi0k",
|
|
27
|
+
$$css: true
|
|
28
|
+
},
|
|
29
|
+
success: {
|
|
30
|
+
kWkggS: "xjdu3ya",
|
|
31
|
+
kMwMTN: "xw2tli",
|
|
32
|
+
$$css: true
|
|
33
|
+
},
|
|
34
|
+
warning: {
|
|
35
|
+
kWkggS: "xqpqlc7",
|
|
36
|
+
kMwMTN: "x6rqny5",
|
|
37
|
+
$$css: true
|
|
38
|
+
},
|
|
39
|
+
danger: {
|
|
40
|
+
kWkggS: "x12uiudv",
|
|
41
|
+
kMwMTN: "x8bm3zx",
|
|
42
|
+
$$css: true
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
/** Props for compact status or category text. */
|
|
47
|
+
|
|
48
|
+
export function Badge({
|
|
49
|
+
children,
|
|
50
|
+
tone = 'neutral',
|
|
51
|
+
...props
|
|
52
|
+
}) {
|
|
53
|
+
return /*#__PURE__*/_jsx("span", {
|
|
54
|
+
...props,
|
|
55
|
+
...stylex.props(styles.base, styles[tone]),
|
|
56
|
+
children: children
|
|
57
|
+
});
|
|
58
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ButtonHTMLAttributes } from 'react';
|
|
2
|
+
/** Visual sizes shared by native action controls. */
|
|
3
|
+
export type ControlSize = 'sm' | 'md' | 'lg';
|
|
4
|
+
/** Semantic emphasis variants shared by native action controls. */
|
|
5
|
+
export type ButtonVariant = 'primary' | 'secondary' | 'ghost' | 'destructive';
|
|
6
|
+
/** Props for a text-labelled native action button. */
|
|
7
|
+
export interface ButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'className'> {
|
|
8
|
+
readonly loading?: boolean;
|
|
9
|
+
readonly size?: ControlSize;
|
|
10
|
+
readonly variant?: ButtonVariant;
|
|
11
|
+
}
|
|
12
|
+
interface ActionControlProps extends ButtonProps {
|
|
13
|
+
readonly iconOnly?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/** @internal Shared native implementation for Button and IconButton. */
|
|
16
|
+
export declare function ActionControl({ 'aria-busy': ariaBusy, children, disabled, iconOnly, loading, size, type, variant, ...props }: ActionControlProps): import("react").JSX.Element;
|
|
17
|
+
export declare function Button(props: ButtonProps): import("react").JSX.Element;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import "../styles/stylex.css";
|
|
2
|
+
export const buttonDoc = {
|
|
3
|
+
name: 'Button',
|
|
4
|
+
description: 'Triggers an action through native button semantics.',
|
|
5
|
+
props: [{
|
|
6
|
+
name: 'loading',
|
|
7
|
+
description: 'Shows progress and disables native activation.'
|
|
8
|
+
}, {
|
|
9
|
+
name: 'size',
|
|
10
|
+
description: 'Selects the fixed control height.'
|
|
11
|
+
}, {
|
|
12
|
+
name: 'variant',
|
|
13
|
+
description: 'Selects a semantic visual emphasis.'
|
|
14
|
+
}],
|
|
15
|
+
inheritedProps: ['ButtonHTMLAttributes<HTMLButtonElement> except className'],
|
|
16
|
+
example: '<Button onClick={save}>Save</Button>',
|
|
17
|
+
storyId: 'core-button--default'
|
|
18
|
+
};
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import * as stylex from '@stylexjs/stylex';
|
|
2
|
+
import { semanticTokens } from '../authoring.stylex.js';
|
|
3
|
+
import { SpinnerVisual } from './Spinner.js';
|
|
4
|
+
import "../styles/stylex.css";
|
|
5
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
6
|
+
const styles = {
|
|
7
|
+
base: {
|
|
8
|
+
kGNEyG: "x6s0dn4",
|
|
9
|
+
kB7OPa: "x9f619",
|
|
10
|
+
kaIpWk: "x8kq9my",
|
|
11
|
+
ksu8eU: "x1jnjmdy",
|
|
12
|
+
kMzoRj: "xpxnlqs",
|
|
13
|
+
k1xSpc: "x3nfvp2",
|
|
14
|
+
kMv6JI: "xj0sio9",
|
|
15
|
+
k63SB2: "x1m30uz7",
|
|
16
|
+
kOIVth: "x1ap6kct",
|
|
17
|
+
kjj79g: "xl56j7k",
|
|
18
|
+
kLWn49: "x1ezks3f",
|
|
19
|
+
kVAEAm: "x1n2onr6",
|
|
20
|
+
kD2jPA: "x48zea8",
|
|
21
|
+
kdODIN: "x1oulntk",
|
|
22
|
+
kWC4TW: "x609gy3",
|
|
23
|
+
kZs9gx: "x15meki4",
|
|
24
|
+
kiEn40: "xz32tfx",
|
|
25
|
+
k7shQP: "x1p22nma",
|
|
26
|
+
kPJHz1: "x17lds6u",
|
|
27
|
+
$$css: true
|
|
28
|
+
},
|
|
29
|
+
sm: {
|
|
30
|
+
kGuDYH: "xltg2ad",
|
|
31
|
+
kZKoxP: "x1vbl8lt",
|
|
32
|
+
kg3NbH: "x1qtbwip",
|
|
33
|
+
$$css: true
|
|
34
|
+
},
|
|
35
|
+
md: {
|
|
36
|
+
kGuDYH: "x1ti3rys",
|
|
37
|
+
kZKoxP: "xr8hsnb",
|
|
38
|
+
kg3NbH: "x1wkw8jr",
|
|
39
|
+
$$css: true
|
|
40
|
+
},
|
|
41
|
+
lg: {
|
|
42
|
+
kGuDYH: "x1ti3rys",
|
|
43
|
+
kZKoxP: "xscltuj",
|
|
44
|
+
kg3NbH: "x1q83fih",
|
|
45
|
+
$$css: true
|
|
46
|
+
},
|
|
47
|
+
primary: {
|
|
48
|
+
kWkggS: "x1j40q36",
|
|
49
|
+
kVAM5u: "x10ghty7",
|
|
50
|
+
kMwMTN: "x8ect3v",
|
|
51
|
+
ktLb98: "xahjstz",
|
|
52
|
+
ksVfMn: "xx21tl2",
|
|
53
|
+
kDKVdO: "xzpaccd",
|
|
54
|
+
kRIasW: "x6v1che",
|
|
55
|
+
$$css: true
|
|
56
|
+
},
|
|
57
|
+
secondary: {
|
|
58
|
+
kWkggS: "x1ixvsy6",
|
|
59
|
+
kVAM5u: "x1wxkff4",
|
|
60
|
+
kMwMTN: "x1y4yzzg",
|
|
61
|
+
ktLb98: "x1975ut4",
|
|
62
|
+
ksVfMn: "x1be0cy8",
|
|
63
|
+
kDKVdO: "xbo0ryh",
|
|
64
|
+
kRIasW: "x1u44if6",
|
|
65
|
+
$$css: true
|
|
66
|
+
},
|
|
67
|
+
ghost: {
|
|
68
|
+
kWkggS: "xjbqb8w",
|
|
69
|
+
kVAM5u: "x9r1u3d",
|
|
70
|
+
kMwMTN: "x1y4yzzg",
|
|
71
|
+
ktLb98: "x1975ut4",
|
|
72
|
+
kDKVdO: "xbo0ryh",
|
|
73
|
+
$$css: true
|
|
74
|
+
},
|
|
75
|
+
destructive: {
|
|
76
|
+
kWkggS: "x12uiudv",
|
|
77
|
+
kVAM5u: "xcf5wgx",
|
|
78
|
+
kMwMTN: "x8bm3zx",
|
|
79
|
+
k90Bq6: "xuc1b5w",
|
|
80
|
+
kFepIV: "x1pg383a",
|
|
81
|
+
$$css: true
|
|
82
|
+
},
|
|
83
|
+
loading: {
|
|
84
|
+
kkrTdU: "x19v85br",
|
|
85
|
+
$$css: true
|
|
86
|
+
},
|
|
87
|
+
iconOnly: {
|
|
88
|
+
kg3NbH: "xnjsko4",
|
|
89
|
+
$$css: true
|
|
90
|
+
},
|
|
91
|
+
iconSm: {
|
|
92
|
+
kzqmXN: "x9mi25i",
|
|
93
|
+
$$css: true
|
|
94
|
+
},
|
|
95
|
+
iconMd: {
|
|
96
|
+
kzqmXN: "x4ml2zf",
|
|
97
|
+
$$css: true
|
|
98
|
+
},
|
|
99
|
+
iconLg: {
|
|
100
|
+
kzqmXN: "x1089um4",
|
|
101
|
+
$$css: true
|
|
102
|
+
},
|
|
103
|
+
iconHitTarget: {
|
|
104
|
+
kgeoSG: "x1cpjm7i",
|
|
105
|
+
kgzTxl: "x17f96yv",
|
|
106
|
+
k96MEf: "x1knuo7r",
|
|
107
|
+
kSJ0CW: "xfbisj7",
|
|
108
|
+
kEoFBp: "x1hmns74",
|
|
109
|
+
kcTAPf: "xbnewub",
|
|
110
|
+
kOlAkY: "x1o8qpxl",
|
|
111
|
+
$$css: true
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
const iconSizes = {
|
|
115
|
+
sm: styles.iconSm,
|
|
116
|
+
md: styles.iconMd,
|
|
117
|
+
lg: styles.iconLg
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
/** Visual sizes shared by native action controls. */
|
|
121
|
+
|
|
122
|
+
/** Semantic emphasis variants shared by native action controls. */
|
|
123
|
+
|
|
124
|
+
/** Props for a text-labelled native action button. */
|
|
125
|
+
|
|
126
|
+
/** @internal Shared native implementation for Button and IconButton. */
|
|
127
|
+
export function ActionControl({
|
|
128
|
+
'aria-busy': ariaBusy,
|
|
129
|
+
children,
|
|
130
|
+
disabled,
|
|
131
|
+
iconOnly = false,
|
|
132
|
+
loading = false,
|
|
133
|
+
size = 'md',
|
|
134
|
+
type = 'button',
|
|
135
|
+
variant = 'primary',
|
|
136
|
+
...props
|
|
137
|
+
}) {
|
|
138
|
+
return /*#__PURE__*/_jsxs("button", {
|
|
139
|
+
...props,
|
|
140
|
+
"aria-busy": loading ? 'true' : ariaBusy,
|
|
141
|
+
disabled: disabled || loading,
|
|
142
|
+
...stylex.props(styles.base, styles[size], styles[variant], loading && styles.loading, iconOnly && styles.iconOnly, iconOnly && iconSizes[size], iconOnly && styles.iconHitTarget),
|
|
143
|
+
type: type,
|
|
144
|
+
children: [loading ? /*#__PURE__*/_jsx(SpinnerVisual, {}) : null, iconOnly && loading ? null : children]
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
export function Button(props) {
|
|
148
|
+
return /*#__PURE__*/_jsx(ActionControl, {
|
|
149
|
+
...props
|
|
150
|
+
});
|
|
151
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { HTMLAttributes } from 'react';
|
|
2
|
+
export type CardElevation = 'none' | 'low' | 'medium';
|
|
3
|
+
export interface CardProps extends Omit<HTMLAttributes<HTMLElement>, 'className'> {
|
|
4
|
+
readonly elevation?: CardElevation;
|
|
5
|
+
}
|
|
6
|
+
export declare function Card({ children, elevation, ...props }: CardProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import "../styles/stylex.css";
|
|
2
|
+
export const cardDoc = {
|
|
3
|
+
name: 'Card',
|
|
4
|
+
description: 'Groups self-contained content in a token-backed article surface.',
|
|
5
|
+
props: [{
|
|
6
|
+
name: 'children',
|
|
7
|
+
description: 'The self-contained article content.'
|
|
8
|
+
}, {
|
|
9
|
+
name: 'elevation',
|
|
10
|
+
description: 'Optional boundary treatment: "none" uses a border; "low" and "medium" use only the matching elevation.'
|
|
11
|
+
}],
|
|
12
|
+
inheritedProps: ['HTMLAttributes<HTMLElement> except className and children'],
|
|
13
|
+
example: '<Card aria-label="Summary" elevation="none"><Text>Content</Text></Card>',
|
|
14
|
+
storyId: 'core-card--default'
|
|
15
|
+
};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import * as stylex from '@stylexjs/stylex';
|
|
2
|
+
import { semanticTokens } from '../authoring.stylex.js';
|
|
3
|
+
import "../styles/stylex.css";
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
const styles = {
|
|
6
|
+
base: {
|
|
7
|
+
kWkggS: "x1ixvsy6",
|
|
8
|
+
kaIpWk: "x7xrhi9",
|
|
9
|
+
kMwMTN: "x1y4yzzg",
|
|
10
|
+
kmVPX3: "x167l562",
|
|
11
|
+
$$css: true
|
|
12
|
+
},
|
|
13
|
+
none: {
|
|
14
|
+
kVAM5u: "xilcjya",
|
|
15
|
+
ksu8eU: "x1jnjmdy",
|
|
16
|
+
kMzoRj: "xpxnlqs",
|
|
17
|
+
kGVxlE: "x1gnnqk1",
|
|
18
|
+
$$css: true
|
|
19
|
+
},
|
|
20
|
+
low: {
|
|
21
|
+
ksu8eU: "xng3xce",
|
|
22
|
+
kGVxlE: "x1elh21b",
|
|
23
|
+
$$css: true
|
|
24
|
+
},
|
|
25
|
+
medium: {
|
|
26
|
+
ksu8eU: "xng3xce",
|
|
27
|
+
kGVxlE: "x165nt33",
|
|
28
|
+
$$css: true
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
export function Card({
|
|
32
|
+
children,
|
|
33
|
+
elevation = 'none',
|
|
34
|
+
...props
|
|
35
|
+
}) {
|
|
36
|
+
return /*#__PURE__*/_jsx("article", {
|
|
37
|
+
...props,
|
|
38
|
+
...stylex.props(styles.base, styles[elevation]),
|
|
39
|
+
children: children
|
|
40
|
+
});
|
|
41
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import "../styles/stylex.css";
|
|
2
|
+
export const cardFooterDoc = {
|
|
3
|
+
name: 'CardFooter',
|
|
4
|
+
description: 'Provides a padded native footer with an inward divider when composed directly inside a Card.',
|
|
5
|
+
props: [{
|
|
6
|
+
name: 'children',
|
|
7
|
+
description: 'The footer content.'
|
|
8
|
+
}],
|
|
9
|
+
inheritedProps: ['HTMLAttributes<HTMLElement> except className and children'],
|
|
10
|
+
example: '<Card><Text>Content</Text><CardFooter><Text>Updated now</Text></CardFooter></Card>',
|
|
11
|
+
storyId: 'core-card--card-footer'
|
|
12
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as stylex from '@stylexjs/stylex';
|
|
2
|
+
import { semanticTokens } from '../authoring.stylex.js';
|
|
3
|
+
import "../styles/stylex.css";
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
export function CardFooter({
|
|
6
|
+
children,
|
|
7
|
+
...props
|
|
8
|
+
}) {
|
|
9
|
+
return /*#__PURE__*/_jsx("footer", {
|
|
10
|
+
...props,
|
|
11
|
+
...{
|
|
12
|
+
className: "x1pe616k x4tqos1 xlyo07a x1yc2x4e x19a07bp x1suer1w x17uk85o x92ksv2"
|
|
13
|
+
},
|
|
14
|
+
children: children
|
|
15
|
+
});
|
|
16
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import "../styles/stylex.css";
|
|
2
|
+
export const cardHeaderDoc = {
|
|
3
|
+
name: 'CardHeader',
|
|
4
|
+
description: 'Provides a padded native header with an inward divider when composed directly inside a Card.',
|
|
5
|
+
props: [{
|
|
6
|
+
name: 'children',
|
|
7
|
+
description: 'The header content.'
|
|
8
|
+
}],
|
|
9
|
+
inheritedProps: ['HTMLAttributes<HTMLElement> except className and children'],
|
|
10
|
+
example: '<Card><CardHeader><Heading level={2}>Card title</Heading></CardHeader><Text>Content</Text></Card>',
|
|
11
|
+
storyId: 'core-card--card-header'
|
|
12
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as stylex from '@stylexjs/stylex';
|
|
2
|
+
import { semanticTokens } from '../authoring.stylex.js';
|
|
3
|
+
import "../styles/stylex.css";
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
export function CardHeader({
|
|
6
|
+
children,
|
|
7
|
+
...props
|
|
8
|
+
}) {
|
|
9
|
+
return /*#__PURE__*/_jsx("header", {
|
|
10
|
+
...props,
|
|
11
|
+
...{
|
|
12
|
+
className: "x1k3hjl9 x1w5tod1 xeq6m5c x5845i8 x1sx9ztw x1suer1w x17uk85o x92ksv2"
|
|
13
|
+
},
|
|
14
|
+
children: children
|
|
15
|
+
});
|
|
16
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import "../styles/stylex.css";
|
|
2
|
+
export const centerDoc = {
|
|
3
|
+
name: 'Center',
|
|
4
|
+
description: 'Centers child content on both layout axes.',
|
|
5
|
+
props: [{
|
|
6
|
+
name: 'children',
|
|
7
|
+
description: 'The content to center.'
|
|
8
|
+
}],
|
|
9
|
+
inheritedProps: ['HTMLAttributes<HTMLDivElement> except className and children'],
|
|
10
|
+
example: '<Center><Text>Centered content</Text></Center>',
|
|
11
|
+
storyId: 'core-center--default'
|
|
12
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as stylex from '@stylexjs/stylex';
|
|
2
|
+
import "../styles/stylex.css";
|
|
3
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
+
export function Center({
|
|
5
|
+
children,
|
|
6
|
+
...props
|
|
7
|
+
}) {
|
|
8
|
+
return /*#__PURE__*/_jsx("div", {
|
|
9
|
+
...props,
|
|
10
|
+
...{
|
|
11
|
+
className: "x6s0dn4 x78zum5 xl56j7k"
|
|
12
|
+
},
|
|
13
|
+
children: children
|
|
14
|
+
});
|
|
15
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import "../styles/stylex.css";
|
|
2
|
+
export const dividerDoc = {
|
|
3
|
+
name: 'Divider',
|
|
4
|
+
description: 'Renders a token-backed native horizontal separator.',
|
|
5
|
+
props: [{
|
|
6
|
+
name: 'aria-label',
|
|
7
|
+
description: 'Optional accessible separator label.'
|
|
8
|
+
}],
|
|
9
|
+
inheritedProps: ['HTMLAttributes<HTMLHRElement> except className'],
|
|
10
|
+
example: '<Divider aria-label="Separates summary from details" />',
|
|
11
|
+
storyId: 'core-divider--default'
|
|
12
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as stylex from '@stylexjs/stylex';
|
|
2
|
+
import { semanticTokens } from '../authoring.stylex.js';
|
|
3
|
+
import "../styles/stylex.css";
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
export function Divider(props) {
|
|
6
|
+
return /*#__PURE__*/_jsx("hr", {
|
|
7
|
+
...props,
|
|
8
|
+
...{
|
|
9
|
+
className: "x1pe616k x4tqos1 xlyo07a x1ghz6dp"
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
export type EmptyStateSize = 'compact' | 'default';
|
|
3
|
+
export interface EmptyStateProps extends Omit<HTMLAttributes<HTMLDivElement>, 'className' | 'title'> {
|
|
4
|
+
readonly action?: ReactNode;
|
|
5
|
+
readonly detail?: ReactNode;
|
|
6
|
+
readonly size?: EmptyStateSize;
|
|
7
|
+
readonly title: ReactNode;
|
|
8
|
+
readonly visual?: ReactNode;
|
|
9
|
+
}
|
|
10
|
+
export declare function EmptyState({ action, detail, size, title, visual, ...props }: EmptyStateProps): import("react").JSX.Element;
|
|
11
|
+
export declare function EmptyStateContent({ action, detail, size, title, visual, }: EmptyStateProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare const emptyStateDoc: {
|
|
2
|
+
name: string;
|
|
3
|
+
description: string;
|
|
4
|
+
props: ({
|
|
5
|
+
name: string;
|
|
6
|
+
description: string;
|
|
7
|
+
required?: undefined;
|
|
8
|
+
} | {
|
|
9
|
+
name: string;
|
|
10
|
+
description: string;
|
|
11
|
+
required: true;
|
|
12
|
+
})[];
|
|
13
|
+
inheritedProps: string[];
|
|
14
|
+
example: string;
|
|
15
|
+
storyId: string;
|
|
16
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import "../styles/stylex.css";
|
|
2
|
+
export const emptyStateDoc = {
|
|
3
|
+
name: 'EmptyState',
|
|
4
|
+
description: 'Presents an announced empty result with optional detail and action.',
|
|
5
|
+
props: [{
|
|
6
|
+
name: 'action',
|
|
7
|
+
description: 'Provides an optional consumer-owned recovery action.'
|
|
8
|
+
}, {
|
|
9
|
+
name: 'detail',
|
|
10
|
+
description: 'Provides optional supporting empty-state content.'
|
|
11
|
+
}, {
|
|
12
|
+
name: 'size',
|
|
13
|
+
description: 'Adjusts container padding and grouping rhythm.'
|
|
14
|
+
}, {
|
|
15
|
+
name: 'title',
|
|
16
|
+
description: 'Names the empty state.',
|
|
17
|
+
required: true
|
|
18
|
+
}, {
|
|
19
|
+
name: 'visual',
|
|
20
|
+
description: 'Provides optional consumer-owned visual content before the copy; consumers own its accessible semantics.'
|
|
21
|
+
}],
|
|
22
|
+
inheritedProps: ['HTMLAttributes<HTMLDivElement> except className and title'],
|
|
23
|
+
example: '<EmptyState title="No results" detail="Try another query." size="compact" />',
|
|
24
|
+
storyId: 'core-empty-state--default'
|
|
25
|
+
};
|