@stealthscale/component-collections 0.1.2 → 0.1.3
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/cyclonedx/bom.json +1 -1
- package/dist/index.js +1 -5700
- package/dist/pages/data-list/data-list.js +351 -0
- package/dist/pages/data-list/data-list.props.js +3 -0
- package/dist/pages/listbox/listbox.js +1277 -0
- package/dist/pages/listbox/listbox.props.js +3 -0
- package/dist/pages/pages.json +105 -0
- package/dist/pages/sortable/sortable.js +576 -0
- package/dist/pages/sortable/sortable.props.js +3 -0
- package/dist/pages/status-matrix/status-matrix.js +1403 -0
- package/dist/pages/status-matrix/status-matrix.props.js +3 -0
- package/dist/pages/swipe-actions/swipe-actions.js +212 -0
- package/dist/pages/swipe-actions/swipe-actions.props.js +3 -0
- package/dist/pages/table/table.js +1701 -0
- package/dist/pages/table/table.props.js +3 -0
- package/dist/pages/timeline/timeline.js +380 -0
- package/dist/pages/timeline/timeline.props.js +3 -0
- package/dist/pages/transfer/transfer.js +465 -0
- package/dist/pages/transfer/transfer.props.js +3 -0
- package/dist/pages/tree-view/tree-view.js +1059 -0
- package/dist/pages/tree-view/tree-view.props.js +3 -0
- package/dist/shared-DVn824MJ.js +5701 -0
- package/dist/theme.js +1 -1
- package/locales/en/specimen/data-list.json +64 -0
- package/locales/en/specimen/listbox.json +98 -0
- package/locales/en/specimen/sortable.json +65 -0
- package/locales/en/specimen/status-matrix.json +47 -0
- package/locales/en/specimen/swipe-actions.json +32 -0
- package/locales/en/specimen/table.json +94 -0
- package/locales/en/specimen/timeline.json +72 -0
- package/locales/en/specimen/transfer.json +34 -0
- package/locales/en/specimen/tree-view.json +107 -0
- package/package.json +9 -8
- /package/dist/{recipe-C1oaF8pO.js → recipes-C1oaF8pO.js} +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export const dropped = {"StatusMatrixProps": {"conditions": 284, "foreign": 1039}};
|
|
2
|
+
export const parts = {"StatusMatrixProps": [{"accepts": "\"center\" | \"end\" | \"start\"", "fallback": "", "kind": "variant", "name": "align", "refers": [], "required": false, "says": "Vertical alignment of a cell's content in a row taller than one line."}, {"accepts": "boolean", "fallback": "", "kind": "variant", "name": "banded", "refers": [], "required": false, "says": "Whether the column names render on `bg.subtle`, in capitals, tracked out."}, {"accepts": "ReactNode", "fallback": "", "kind": "option", "name": "caption", "refers": ["react.ReactElement", "react.ReactPortal"], "required": false, "says": "Caption rendered under the grid, and the accessible name of the table and the scroller."}, {"accepts": "((state: MatrixState, row: MatrixHeading, column: MatrixHeading) => string)", "fallback": "", "kind": "option", "name": "cellLabel", "refers": ["kit.MatrixHeading", "kit.MatrixState", "kit.MatrixTone", "react.ReactElement", "react.ReactPortal"], "required": false, "says": "Returns a crossing's accessible name. Defaults to the state's label. A matrix with `onSelectCell` needs it, because every button in a column would otherwise share one name."}, {"accepts": "readonly MatrixCell[]", "fallback": "", "kind": "option", "name": "cells", "refers": ["kit.MatrixCell"], "required": true, "says": "Measured crossings. A pair without a cell renders `unmeasured`, and the later of two cells for one pair applies."}, {"accepts": "readonly MatrixHeading[]", "fallback": "", "kind": "option", "name": "columns", "refers": ["kit.MatrixHeading"], "required": true, "says": "Headings across the top."}, {"accepts": "ReactNode", "fallback": "", "kind": "option", "name": "corner", "refers": ["react.ReactElement", "react.ReactPortal"], "required": false, "says": "Content of the header cell over the row names."}, {"accepts": "ReactNode", "fallback": "", "kind": "option", "name": "empty", "refers": ["react.ReactElement", "react.ReactPortal"], "required": false, "says": "Content of a full-width row rendered while `rows` is empty."}, {"accepts": "boolean", "fallback": "", "kind": "option", "name": "focusable", "refers": [], "required": false, "says": "Whether the viewport is a region with a tab stop while the table overflows. `false` keeps it out of the tab order, for a table whose cells take focus. `true` unless stated."}, {"accepts": "boolean", "fallback": "", "kind": "variant", "name": "interactive", "refers": [], "required": false, "says": "Whether a body row fills under the pointer and while a control inside it has focus."}, {"accepts": "\"auto\" | \"fixed\"", "fallback": "", "kind": "variant", "name": "layout", "refers": [], "required": false, "says": "Column widths from the content, or from the column declarations and the first row."}, {"accepts": "string", "fallback": "", "kind": "option", "name": "legend", "refers": [], "required": false, "says": "Accessible name of the legend. The legend renders only with it."}, {"accepts": "((row: string, column: string, cell: MatrixCell) => void)", "fallback": "", "kind": "option", "name": "onSelectCell", "refers": ["kit.MatrixCell"], "required": false, "says": "Called with the row, the column and the cell of a pressed crossing. The cell is undefined for a pair without one. Setting it renders every crossing as a button."}, {"accepts": "\"accent\" | \"error\" | \"info\" | \"neutral\" | \"primary\" | \"secondary\" | \"success\" | \"warning\"", "fallback": "", "kind": "variant", "name": "palette", "refers": [], "required": false, "says": "Palette the selected row and the interactive row fill read."}, {"accepts": "\"l1\" | \"l2\" | \"l3\"", "fallback": "", "kind": "variant", "name": "radius", "refers": [], "required": false, "says": "Corner radius of the scroller, from the layer radii without the pill, which clips the first and last rows."}, {"accepts": "ReactNode", "fallback": "", "kind": "option", "name": "rollup", "refers": ["react.ReactElement", "react.ReactPortal"], "required": false, "says": "Header of the last column, which renders each row's worst state. The column renders only with it."}, {"accepts": "readonly MatrixHeading[]", "fallback": "", "kind": "option", "name": "rows", "refers": ["kit.MatrixHeading"], "required": true, "says": "Headings down the side, one per row."}, {"accepts": "\"all\" | \"none\" | \"rows\"", "fallback": "", "kind": "variant", "name": "rules", "refers": [], "required": false, "says": "Where the body rules run: `rows` between rows, `all` between rows and between columns, and `none` nowhere. The rule under the header and the rule over the footer render in every value."}, {"accepts": "\"lg\" | \"md\" | \"sm\"", "fallback": "", "kind": "variant", "name": "size", "refers": [], "required": false, "says": "Text size and cell padding: cells read the body role at the size, and the column names and the caption read the label role one size smaller."}, {"accepts": "Readonly<Record<string, MatrixState>>", "fallback": "", "kind": "option", "name": "states", "refers": ["kit.MatrixState"], "required": true, "says": "Vocabulary of states, keyed by the names the cells use. Two states with one tone need a mark each, or they render alike."}, {"accepts": "boolean", "fallback": "", "kind": "variant", "name": "stickyColumn", "refers": [], "required": false, "says": "Whether the row headers and the first column header stick to the start of the scroll area's viewport."}, {"accepts": "boolean", "fallback": "", "kind": "variant", "name": "stickyHeader", "refers": [], "required": false, "says": "Whether the header rows stick to the top of the scroll area's viewport."}, {"accepts": "boolean", "fallback": "", "kind": "variant", "name": "striped", "refers": [], "required": false, "says": "Whether every odd body row renders on `bg.muted`."}, {"accepts": "MatrixState", "fallback": "", "kind": "option", "name": "unmeasured", "refers": ["kit.MatrixState"], "required": true, "says": "State of a pair without a cell, listed last in the legend."}, {"accepts": "\"plain\" | \"surface\"", "fallback": "", "kind": "variant", "name": "variant", "refers": [], "required": false, "says": "Surface of the scroller: the panel inside a hairline edge, or transparent."}, {"accepts": "Ref<HTMLDivElement>", "fallback": "", "kind": "option", "name": "viewportRef", "refers": ["react.RefObject", "react.bivarianceHack"], "required": false, "says": "Ref of the scroll area's viewport, the element that scrolls."}]};
|
|
3
|
+
export const shapes = {"react.ReactElement": [{"accepts": "string | JSXElementConstructor<any>", "name": "type", "says": ""}, {"accepts": "unknown", "name": "props", "says": ""}, {"accepts": "string | null", "name": "key", "says": ""}], "react.ReactPortal": [{"accepts": "ReactNode", "name": "children", "says": ""}, {"accepts": "string | JSXElementConstructor<any>", "name": "type", "says": ""}, {"accepts": "unknown", "name": "props", "says": ""}, {"accepts": "string | null", "name": "key", "says": ""}], "kit.MatrixState": [{"accepts": "string", "name": "label", "says": "Text of the state in the legend, and the accessible name of a crossing without `cellLabel`."}, {"accepts": "ReactNode", "name": "mark", "says": "Mark rendered in the cell. Defaults to a filled dot. Two states with one tone need a mark each, or they render alike."}, {"accepts": "MatrixTone", "name": "tone", "says": "Palette of the mark, and the rank the rollup reads."}], "kit.MatrixTone": [{"accepts": "", "name": "\"error\"", "says": ""}, {"accepts": "", "name": "\"info\"", "says": ""}, {"accepts": "", "name": "\"neutral\"", "says": ""}, {"accepts": "", "name": "\"success\"", "says": ""}, {"accepts": "", "name": "\"warning\"", "says": ""}], "kit.MatrixHeading": [{"accepts": "string", "name": "group", "says": "Section a row is grouped under, as both its key and its heading. Read on rows only. Sections render only when every row has one."}, {"accepts": "string", "name": "id", "says": "Identifier of the row or the column in the cells."}, {"accepts": "ReactNode", "name": "label", "says": "Content of the row header or the column header."}], "kit.MatrixCell": [{"accepts": "string", "name": "column", "says": "Identifier of the column."}, {"accepts": "string", "name": "row", "says": "Identifier of the row."}, {"accepts": "string", "name": "state", "says": "Key of the state in the matrix's vocabulary."}], "react.RefObject": [{"accepts": "HTMLDivElement | null", "name": "current", "says": "The current value of the ref."}]};
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
import { t as __exportAll } from "../../rolldown-runtime-D7D4PA-g.js";
|
|
2
|
+
import { A as Action, D as Root, O as Content, k as Actions } from "../../shared-DVn824MJ.js";
|
|
3
|
+
import { c } from "react/compiler-runtime";
|
|
4
|
+
import { useId, useState } from "react";
|
|
5
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { Button } from "@stealthscale/component-actions";
|
|
7
|
+
import { Room, specimen, useWords } from "@stealthscale/specimen";
|
|
8
|
+
import { flushSync } from "react-dom";
|
|
9
|
+
import { ArchiveIcon, RotateCcwIcon, Trash2Icon } from "lucide-react";
|
|
10
|
+
import { Span, Strong, Text } from "@stealthscale/component-typography";
|
|
11
|
+
import { Stack } from "@stealthscale/component-layout";
|
|
12
|
+
//#region src/swipe-actions/examples/inbox.example.tsx
|
|
13
|
+
var inbox_example_exports = /* @__PURE__ */ __exportAll({
|
|
14
|
+
Inbox: () => Inbox,
|
|
15
|
+
source: () => source
|
|
16
|
+
});
|
|
17
|
+
const SENDERS = [
|
|
18
|
+
"ada",
|
|
19
|
+
"bram",
|
|
20
|
+
"chen",
|
|
21
|
+
"dana"
|
|
22
|
+
];
|
|
23
|
+
function rowOf(sender, id, t, done) {
|
|
24
|
+
const name = t(`senders.${sender}`);
|
|
25
|
+
return /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs(Root, {
|
|
26
|
+
id,
|
|
27
|
+
children: [/* @__PURE__ */ jsx(Content, { children: /* @__PURE__ */ jsxs(Stack, {
|
|
28
|
+
gap: "xs",
|
|
29
|
+
children: [/* @__PURE__ */ jsx(Strong, { children: name }), /* @__PURE__ */ jsx(Span, { children: t(`subjects.${sender}`) })]
|
|
30
|
+
}) }), /* @__PURE__ */ jsxs(Actions, { children: [/* @__PURE__ */ jsxs(Action, {
|
|
31
|
+
"aria-label": t("archiveOf", { sender: name }),
|
|
32
|
+
onClick: () => {
|
|
33
|
+
done(sender, "archived");
|
|
34
|
+
},
|
|
35
|
+
palette: "neutral",
|
|
36
|
+
children: [/* @__PURE__ */ jsx(ArchiveIcon, { size: "1em" }), t("archive")]
|
|
37
|
+
}), /* @__PURE__ */ jsxs(Action, {
|
|
38
|
+
"aria-label": t("deleteOf", { sender: name }),
|
|
39
|
+
onClick: () => {
|
|
40
|
+
done(sender, "deleted");
|
|
41
|
+
},
|
|
42
|
+
palette: "error",
|
|
43
|
+
children: [/* @__PURE__ */ jsx(Trash2Icon, { size: "1em" }), t("delete")]
|
|
44
|
+
})] })]
|
|
45
|
+
}) }, sender);
|
|
46
|
+
}
|
|
47
|
+
function Inbox() {
|
|
48
|
+
const $ = c(32);
|
|
49
|
+
const { t } = useWords("swipe-actions");
|
|
50
|
+
const base = useId();
|
|
51
|
+
const [open, setOpen] = useState(SENDERS);
|
|
52
|
+
const [said, setSaid] = useState("");
|
|
53
|
+
let t0;
|
|
54
|
+
if ($[0] !== base || $[1] !== open || $[2] !== t) {
|
|
55
|
+
t0 = (sender, verb) => {
|
|
56
|
+
const at = open.indexOf(sender);
|
|
57
|
+
const next = open[at + 1] ?? open[at - 1] ?? "restore";
|
|
58
|
+
flushSync(() => {
|
|
59
|
+
setOpen((was) => was.filter((each) => each !== sender));
|
|
60
|
+
setSaid(t(verb, { sender: t(`senders.${sender}`) }));
|
|
61
|
+
});
|
|
62
|
+
document.querySelector(`[id="${base}${next}"]`)?.focus();
|
|
63
|
+
};
|
|
64
|
+
$[0] = base;
|
|
65
|
+
$[1] = open;
|
|
66
|
+
$[2] = t;
|
|
67
|
+
$[3] = t0;
|
|
68
|
+
} else t0 = $[3];
|
|
69
|
+
const done = t0;
|
|
70
|
+
let t1;
|
|
71
|
+
if ($[4] !== t) {
|
|
72
|
+
t1 = t("label");
|
|
73
|
+
$[4] = t;
|
|
74
|
+
$[5] = t1;
|
|
75
|
+
} else t1 = $[5];
|
|
76
|
+
let t2;
|
|
77
|
+
if ($[6] !== base || $[7] !== done || $[8] !== open || $[9] !== t) {
|
|
78
|
+
let t3;
|
|
79
|
+
if ($[11] !== base || $[12] !== done || $[13] !== t) {
|
|
80
|
+
t3 = (sender_0) => rowOf(sender_0, `${base}${sender_0}`, t, done);
|
|
81
|
+
$[11] = base;
|
|
82
|
+
$[12] = done;
|
|
83
|
+
$[13] = t;
|
|
84
|
+
$[14] = t3;
|
|
85
|
+
} else t3 = $[14];
|
|
86
|
+
t2 = open.map(t3);
|
|
87
|
+
$[6] = base;
|
|
88
|
+
$[7] = done;
|
|
89
|
+
$[8] = open;
|
|
90
|
+
$[9] = t;
|
|
91
|
+
$[10] = t2;
|
|
92
|
+
} else t2 = $[10];
|
|
93
|
+
let t3;
|
|
94
|
+
if ($[15] !== t1 || $[16] !== t2) {
|
|
95
|
+
t3 = /* @__PURE__ */ jsx(Stack, {
|
|
96
|
+
"aria-label": t1,
|
|
97
|
+
as: "ul",
|
|
98
|
+
gap: "xs",
|
|
99
|
+
children: t2
|
|
100
|
+
});
|
|
101
|
+
$[15] = t1;
|
|
102
|
+
$[16] = t2;
|
|
103
|
+
$[17] = t3;
|
|
104
|
+
} else t3 = $[17];
|
|
105
|
+
let t4;
|
|
106
|
+
if ($[18] !== said) {
|
|
107
|
+
t4 = /* @__PURE__ */ jsx(Text, {
|
|
108
|
+
as: "output",
|
|
109
|
+
children: said
|
|
110
|
+
});
|
|
111
|
+
$[18] = said;
|
|
112
|
+
$[19] = t4;
|
|
113
|
+
} else t4 = $[19];
|
|
114
|
+
const t5 = open.length === SENDERS.length || void 0;
|
|
115
|
+
const t6 = `${base}restore`;
|
|
116
|
+
let t7;
|
|
117
|
+
if ($[20] === Symbol.for("react.memo_cache_sentinel")) {
|
|
118
|
+
t7 = () => {
|
|
119
|
+
setOpen(SENDERS);
|
|
120
|
+
};
|
|
121
|
+
$[20] = t7;
|
|
122
|
+
} else t7 = $[20];
|
|
123
|
+
let t8;
|
|
124
|
+
if ($[21] === Symbol.for("react.memo_cache_sentinel")) {
|
|
125
|
+
t8 = /* @__PURE__ */ jsx(RotateCcwIcon, { size: "1em" });
|
|
126
|
+
$[21] = t8;
|
|
127
|
+
} else t8 = $[21];
|
|
128
|
+
let t9;
|
|
129
|
+
if ($[22] !== t) {
|
|
130
|
+
t9 = t("restore");
|
|
131
|
+
$[22] = t;
|
|
132
|
+
$[23] = t9;
|
|
133
|
+
} else t9 = $[23];
|
|
134
|
+
let t10;
|
|
135
|
+
if ($[24] !== t5 || $[25] !== t6 || $[26] !== t9) {
|
|
136
|
+
t10 = /* @__PURE__ */ jsxs(Button, {
|
|
137
|
+
"aria-disabled": t5,
|
|
138
|
+
id: t6,
|
|
139
|
+
onClick: t7,
|
|
140
|
+
size: "sm",
|
|
141
|
+
variant: "outline",
|
|
142
|
+
children: [t8, t9]
|
|
143
|
+
});
|
|
144
|
+
$[24] = t5;
|
|
145
|
+
$[25] = t6;
|
|
146
|
+
$[26] = t9;
|
|
147
|
+
$[27] = t10;
|
|
148
|
+
} else t10 = $[27];
|
|
149
|
+
let t11;
|
|
150
|
+
if ($[28] !== t10 || $[29] !== t3 || $[30] !== t4) {
|
|
151
|
+
t11 = /* @__PURE__ */ jsxs(Stack, {
|
|
152
|
+
gap: "sm",
|
|
153
|
+
children: [
|
|
154
|
+
t3,
|
|
155
|
+
t4,
|
|
156
|
+
t10
|
|
157
|
+
]
|
|
158
|
+
});
|
|
159
|
+
$[28] = t10;
|
|
160
|
+
$[29] = t3;
|
|
161
|
+
$[30] = t4;
|
|
162
|
+
$[31] = t11;
|
|
163
|
+
} else t11 = $[31];
|
|
164
|
+
return t11;
|
|
165
|
+
}
|
|
166
|
+
const source = "import { type ReactElement, useId, useState } from \"react\";\nimport { flushSync } from \"react-dom\";\n\nimport { ArchiveIcon, RotateCcwIcon, Trash2Icon } from \"lucide-react\";\n\nimport { Button } from \"@stealthscale/component-actions\";\nimport { Stack } from \"@stealthscale/component-layout\";\nimport { Span, Strong, Text } from \"@stealthscale/component-typography\";\nimport { useWords } from \"@stealthscale/specimen\";\n\nimport { SwipeActions } from \"@stealthscale/component-collections\";\n\nconst SENDERS = [\"ada\", \"bram\", \"chen\", \"dana\"];\n\ntype Done = (sender: string, verb: \"archived\" | \"deleted\") => void;\n\nfunction rowOf(\n sender: string,\n id: string,\n t: ReturnType<typeof useWords>[\"t\"],\n done: Done,\n): ReactElement {\n const name = t(`senders.${sender}`);\n\n return (\n <li key={sender}>\n <SwipeActions.Root id={id}>\n <SwipeActions.Content>\n <Stack gap=\"xs\">\n <Strong>{name}</Strong>\n <Span>{t(`subjects.${sender}`)}</Span>\n </Stack>\n </SwipeActions.Content>\n <SwipeActions.Actions>\n <SwipeActions.Action\n aria-label={t(\"archiveOf\", { sender: name })}\n onClick={() => {\n done(sender, \"archived\");\n }}\n palette=\"neutral\"\n >\n <ArchiveIcon size=\"1em\" />\n {t(\"archive\")}\n </SwipeActions.Action>\n <SwipeActions.Action\n aria-label={t(\"deleteOf\", { sender: name })}\n onClick={() => {\n done(sender, \"deleted\");\n }}\n palette=\"error\"\n >\n <Trash2Icon size=\"1em\" />\n {t(\"delete\")}\n </SwipeActions.Action>\n </SwipeActions.Actions>\n </SwipeActions.Root>\n </li>\n );\n}\n\nexport function Inbox(): ReactElement {\n const { t } = useWords(\"swipe-actions\");\n const base = useId();\n const [open, setOpen] = useState(SENDERS);\n const [said, setSaid] = useState(\"\");\n\n const done: Done = (sender, verb) => {\n const at = open.indexOf(sender);\n const next = open[at + 1] ?? open[at - 1] ?? \"restore\";\n\n flushSync(() => {\n setOpen((was) => was.filter((each) => each !== sender));\n setSaid(t(verb, { sender: t(`senders.${sender}`) }));\n });\n document.querySelector<HTMLElement>(`[id=\"${base}${next}\"]`)?.focus();\n };\n\n return (\n <Stack gap=\"sm\">\n <Stack aria-label={t(\"label\")} as=\"ul\" gap=\"xs\">\n {open.map((sender) => rowOf(sender, `${base}${sender}`, t, done))}\n </Stack>\n <Text as=\"output\">{said}</Text>\n <Button\n aria-disabled={open.length === SENDERS.length || undefined}\n id={`${base}restore`}\n onClick={() => {\n setOpen(SENDERS);\n }}\n size=\"sm\"\n variant=\"outline\"\n >\n <RotateCcwIcon size=\"1em\" />\n {t(\"restore\")}\n </Button>\n </Stack>\n );\n}\n";
|
|
167
|
+
//#endregion
|
|
168
|
+
//#region src/swipe-actions/swipe-actions.specimen.tsx
|
|
169
|
+
/**
|
|
170
|
+
* Catalogue page for the swipe actions.
|
|
171
|
+
*
|
|
172
|
+
* @remarks
|
|
173
|
+
* Two hand-written scenes render the inbox example at a phone's width, left to right and right
|
|
174
|
+
* to left. The recipe has no axis, so no scene is generated. The words are keys under
|
|
175
|
+
* `swipe-actions` in `locales/en/specimen/swipe-actions.json`.
|
|
176
|
+
*/
|
|
177
|
+
/**
|
|
178
|
+
* Hand-written scene for an inbox at a phone's width.
|
|
179
|
+
*/
|
|
180
|
+
const phone = {
|
|
181
|
+
about: "swipe-actions.inbox.about",
|
|
182
|
+
draw: () => /* @__PURE__ */ jsx(Room, {
|
|
183
|
+
size: "sm",
|
|
184
|
+
children: /* @__PURE__ */ jsx(Inbox, {})
|
|
185
|
+
}),
|
|
186
|
+
example: inbox_example_exports,
|
|
187
|
+
title: "swipe-actions.inbox.title"
|
|
188
|
+
};
|
|
189
|
+
/**
|
|
190
|
+
* Hand-written scene for the inbox laid out right to left.
|
|
191
|
+
*/
|
|
192
|
+
const rightToLeft = {
|
|
193
|
+
about: "swipe-actions.rtl.about",
|
|
194
|
+
draw: () => /* @__PURE__ */ jsx(Room, {
|
|
195
|
+
size: "sm",
|
|
196
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
197
|
+
dir: "rtl",
|
|
198
|
+
children: /* @__PURE__ */ jsx(Inbox, {})
|
|
199
|
+
})
|
|
200
|
+
}),
|
|
201
|
+
example: inbox_example_exports,
|
|
202
|
+
title: "swipe-actions.rtl.title"
|
|
203
|
+
};
|
|
204
|
+
var swipe_actions_specimen_default = specimen({
|
|
205
|
+
about: "swipe-actions.about",
|
|
206
|
+
id: "components/collections/swipe-actions",
|
|
207
|
+
imports: "import { SwipeActions } from \"@stealthscale/component-collections\";",
|
|
208
|
+
scenes: [phone, rightToLeft],
|
|
209
|
+
title: "swipe-actions.title"
|
|
210
|
+
});
|
|
211
|
+
//#endregion
|
|
212
|
+
export { swipe_actions_specimen_default as default, phone, rightToLeft };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export const dropped = {"ActionProps": {"conditions": 284, "foreign": 1051}, "ActionsProps": {"conditions": 284, "foreign": 1040}, "ContentProps": {"conditions": 284, "foreign": 1041}, "RootProps": {"conditions": 284, "foreign": 1040}};
|
|
2
|
+
export const parts = {"ActionProps": [{"accepts": "\"glow\" | \"pulse\"", "fallback": "", "kind": "variant", "name": "effect", "refers": [], "required": false, "says": "The halo around the button, in the palette's solid at half opacity."}, {"accepts": "Lift", "fallback": "", "kind": "variant", "name": "elevation", "refers": ["kit.Lift"], "required": false, "says": ""}, {"accepts": "\"accent\" | \"error\" | \"info\" | \"neutral\" | \"primary\" | \"secondary\" | \"success\" | \"warning\"", "fallback": "", "kind": "variant", "name": "palette", "refers": [], "required": false, "says": "Palette of every look. The base sets `primary`."}, {"accepts": "\"square\"", "fallback": "", "kind": "variant", "name": "shape", "refers": [], "required": false, "says": ""}, {"accepts": "Scale", "fallback": "", "kind": "variant", "name": "size", "refers": ["kit.Scale"], "required": false, "says": ""}, {"accepts": "\"ghost\" | \"glass\" | \"outline\" | \"plain\" | \"solid\" | \"subtle\" | \"surface\"", "fallback": "", "kind": "variant", "name": "variant", "refers": [], "required": false, "says": ""}], "ActionsProps": [], "ContentProps": [], "RootProps": []};
|
|
3
|
+
export const shapes = {"kit.Lift": [{"accepts": "", "name": "\"floating\"", "says": ""}, {"accepts": "", "name": "\"raised\"", "says": ""}], "kit.Scale": [{"accepts": "", "name": "\"2xl\"", "says": ""}, {"accepts": "", "name": "\"3xl\"", "says": ""}, {"accepts": "", "name": "\"4xl\"", "says": ""}, {"accepts": "", "name": "\"lg\"", "says": ""}, {"accepts": "", "name": "\"md\"", "says": ""}, {"accepts": "", "name": "\"sm\"", "says": ""}, {"accepts": "", "name": "\"xl\"", "says": ""}, {"accepts": "", "name": "\"xs\"", "says": ""}]};
|