@mosaic-media/sdui-react 0.1.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 +661 -0
- package/README.md +54 -0
- package/dist/components/controls.d.ts +34 -0
- package/dist/components/controls.d.ts.map +1 -0
- package/dist/components/controls.js +93 -0
- package/dist/components/controls.js.map +1 -0
- package/dist/components/definitions.d.ts +3 -0
- package/dist/components/definitions.d.ts.map +1 -0
- package/dist/components/definitions.js +494 -0
- package/dist/components/definitions.js.map +1 -0
- package/dist/components/definitions.layout.d.ts +3 -0
- package/dist/components/definitions.layout.d.ts.map +1 -0
- package/dist/components/definitions.layout.js +197 -0
- package/dist/components/definitions.layout.js.map +1 -0
- package/dist/components/feedback/Unknown.d.ts +4 -0
- package/dist/components/feedback/Unknown.d.ts.map +1 -0
- package/dist/components/feedback/Unknown.js +13 -0
- package/dist/components/feedback/Unknown.js.map +1 -0
- package/dist/components/feedback.d.ts +6 -0
- package/dist/components/feedback.d.ts.map +1 -0
- package/dist/components/feedback.js +10 -0
- package/dist/components/feedback.js.map +1 -0
- package/dist/components/host.d.ts +11 -0
- package/dist/components/host.d.ts.map +1 -0
- package/dist/components/host.js +15 -0
- package/dist/components/host.js.map +1 -0
- package/dist/components/index.d.ts +3 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +60 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/layout.d.ts +9 -0
- package/dist/components/layout.d.ts.map +1 -0
- package/dist/components/layout.js +23 -0
- package/dist/components/layout.js.map +1 -0
- package/dist/components/media.d.ts +5 -0
- package/dist/components/media.d.ts.map +1 -0
- package/dist/components/media.js +15 -0
- package/dist/components/media.js.map +1 -0
- package/dist/components/primitives.d.ts +39 -0
- package/dist/components/primitives.d.ts.map +1 -0
- package/dist/components/primitives.js +75 -0
- package/dist/components/primitives.js.map +1 -0
- package/dist/components/shared.d.ts +13 -0
- package/dist/components/shared.d.ts.map +1 -0
- package/dist/components/shared.js +36 -0
- package/dist/components/shared.js.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +26 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/platform.d.ts +12 -0
- package/dist/lib/platform.d.ts.map +1 -0
- package/dist/lib/platform.js +74 -0
- package/dist/lib/platform.js.map +1 -0
- package/dist/sdui/Renderer.d.ts +16 -0
- package/dist/sdui/Renderer.d.ts.map +1 -0
- package/dist/sdui/Renderer.js +40 -0
- package/dist/sdui/Renderer.js.map +1 -0
- package/dist/sdui/ShellProvider.d.ts +24 -0
- package/dist/sdui/ShellProvider.d.ts.map +1 -0
- package/dist/sdui/ShellProvider.js +110 -0
- package/dist/sdui/ShellProvider.js.map +1 -0
- package/dist/sdui/context.d.ts +17 -0
- package/dist/sdui/context.d.ts.map +1 -0
- package/dist/sdui/context.js +18 -0
- package/dist/sdui/context.js.map +1 -0
- package/dist/sdui/registry.d.ts +13 -0
- package/dist/sdui/registry.d.ts.map +1 -0
- package/dist/sdui/registry.js +26 -0
- package/dist/sdui/registry.js.map +1 -0
- package/dist/sdui/style.d.ts +81 -0
- package/dist/sdui/style.d.ts.map +1 -0
- package/dist/sdui/style.js +149 -0
- package/dist/sdui/style.js.map +1 -0
- package/dist/sdui/template.d.ts +19 -0
- package/dist/sdui/template.d.ts.map +1 -0
- package/dist/sdui/template.js +111 -0
- package/dist/sdui/template.js.map +1 -0
- package/dist/sdui/types.d.ts +96 -0
- package/dist/sdui/types.d.ts.map +1 -0
- package/dist/sdui/types.js +4 -0
- package/dist/sdui/types.js.map +1 -0
- package/dist/styles/components.css +772 -0
- package/dist/styles/global.css +80 -0
- package/dist/styles/index.css +5 -0
- package/dist/styles/tokens.css +150 -0
- package/package.json +37 -0
package/README.md
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# @mosaic-media/sdui-react
|
|
2
|
+
|
|
3
|
+
The **React runtime** for the [Mosaic](https://github.com/mosaic-media) Server-Driven-UI contract — the web binding that turns an SDUI payload into rendered UI. Consumed by the Shell ([`mosaic-shell`](https://github.com/mosaic-media/mosaic-shell)), the component storybook ([`mosaic-storybook`](https://github.com/mosaic-media/mosaic-storybook)), and any other web surface — all as peers.
|
|
4
|
+
|
|
5
|
+
It is a **client implementation**, not the contract. The technology-agnostic contract (schema, standard definitions, tokens) lives in [`@mosaic-media/sdui`](https://github.com/mosaic-media/mosaic-sdui); this is one specific way to render it, in React. That's why it's **AGPL-3.0-only** (first-party client code) while the contract is Apache-2.0.
|
|
6
|
+
|
|
7
|
+
## What's in it
|
|
8
|
+
|
|
9
|
+
- **Primitives** — `Box`, `Text`, `Image`, `Icon`, `Pressable`, the form inputs, `Tabs`, `Menu`, … the irreducible, client-implemented vocabulary, styled from tokens.
|
|
10
|
+
- **Registry + renderer** — `register`/`resolve`, `RenderNode` (recursive tree walk), and the `Unknown` fallback for open-vocabulary forward-compat.
|
|
11
|
+
- **Definition expander** — `defineComponent` + the `$bind`/`$match`/`$each`/`$if`/`Outlet` template engine, so components delivered as data render like native ones.
|
|
12
|
+
- **Runtime** — `ShellProvider` (interprets `Action` envelopes, owns overlays + toasts), `useRuntime`, `OverlayHost`/`ToastHost`, and a GraphQL client.
|
|
13
|
+
- **The token-driven skin** — shipped as `@mosaic-media/sdui-react/styles.css`.
|
|
14
|
+
|
|
15
|
+
## Use it
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npm install @mosaic-media/sdui-react react react-dom
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
```tsx
|
|
22
|
+
import {
|
|
23
|
+
ShellProvider, RenderNode, installComponents, defineComponents,
|
|
24
|
+
} from "@mosaic-media/sdui-react";
|
|
25
|
+
import "@mosaic-media/sdui-react/styles.css";
|
|
26
|
+
|
|
27
|
+
installComponents(); // register the built-in vocabulary
|
|
28
|
+
// defineComponents(moduleDefinitions) // + any definitions delivered as data
|
|
29
|
+
|
|
30
|
+
<ShellProvider screen="home" onNavigate={…} onBack={…} render={…}>
|
|
31
|
+
<RenderNode node={payload} />
|
|
32
|
+
</ShellProvider>
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
For local cross-repo work (developing the runtime against a consumer), a
|
|
36
|
+
consumer can depend on it by path — `"@mosaic-media/sdui-react": "file:../mosaic-sdui-react"` — instead of the published version; the `prepare` script builds `dist` on install.
|
|
37
|
+
|
|
38
|
+
## Build
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
npm install # runs prepare → build
|
|
42
|
+
npm run build # tsc → dist + copy the CSS
|
|
43
|
+
npm run typecheck
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Pure `tsc` build (source ships nothing; consumers get `dist` JS + `.d.ts`). React is a peer dependency.
|
|
47
|
+
|
|
48
|
+
## Releasing
|
|
49
|
+
|
|
50
|
+
`git tag v0.1.0 && git push origin v0.1.0` → `.github/workflows/release.yml` publishes to npm (needs an `NPM_TOKEN` secret for the `@mosaic-media` scope).
|
|
51
|
+
|
|
52
|
+
## Licence
|
|
53
|
+
|
|
54
|
+
**AGPL-3.0-only** (see [`LICENSE`](LICENSE)). See [ADR 0022–0024](https://github.com/mosaic-media/mosaic-architecture/tree/main/docs/adr) for the first-party-client licensing rationale.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { UINode } from "../sdui/types";
|
|
2
|
+
/** TextInput — bare text field owning its value. */
|
|
3
|
+
export declare function TextInput({ node }: {
|
|
4
|
+
node: UINode;
|
|
5
|
+
}): import("react").JSX.Element;
|
|
6
|
+
/** Switch — bare on/off toggle owning its state; emits an Action on change. */
|
|
7
|
+
export declare function Switch({ node }: {
|
|
8
|
+
node: UINode;
|
|
9
|
+
}): import("react").JSX.Element;
|
|
10
|
+
/** SelectInput — bare dropdown owning its value. */
|
|
11
|
+
export declare function SelectInput({ node }: {
|
|
12
|
+
node: UINode;
|
|
13
|
+
}): import("react").JSX.Element;
|
|
14
|
+
/** Menu — a click-to-open list of actionable items. */
|
|
15
|
+
export declare function Menu({ node }: {
|
|
16
|
+
node: UINode;
|
|
17
|
+
}): import("react").JSX.Element;
|
|
18
|
+
/** SearchBar — the submit Action carries the live term, so it owns its input. */
|
|
19
|
+
export declare function SearchBar({ node }: {
|
|
20
|
+
node: UINode;
|
|
21
|
+
}): import("react").JSX.Element;
|
|
22
|
+
/** Slider — shows its own live value, so output couples to internal state. */
|
|
23
|
+
export declare function Slider({ node }: {
|
|
24
|
+
node: UINode;
|
|
25
|
+
}): import("react").JSX.Element;
|
|
26
|
+
/** RatingControl — clickable stars owning the selection. */
|
|
27
|
+
export declare function RatingControl({ node }: {
|
|
28
|
+
node: UINode;
|
|
29
|
+
}): import("react").JSX.Element;
|
|
30
|
+
/** ProgressBar — fill width computed from `value` (0..1). */
|
|
31
|
+
export declare function ProgressBar({ node }: {
|
|
32
|
+
node: UINode;
|
|
33
|
+
}): import("react").JSX.Element;
|
|
34
|
+
//# sourceMappingURL=controls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../src/components/controls.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAU,MAAM,EAAE,MAAM,eAAe,CAAC;AAKpD,oDAAoD;AACpD,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,+BAanD;AAED,+EAA+E;AAC/E,wBAAgB,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,+BAkBhD;AAED,oDAAoD;AACpD,wBAAgB,WAAW,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,+BAerD;AAED,uDAAuD;AACvD,wBAAgB,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,+BA8B9C;AAED,iFAAiF;AACjF,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,+BAwBnD;AAED,8EAA8E;AAC9E,wBAAgB,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,+BAgBhD;AAED,4DAA4D;AAC5D,wBAAgB,aAAa,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,+BAsBvD;AAED,6DAA6D;AAC7D,wBAAgB,WAAW,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,+BAQrD"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// SPDX-License-Identifier: AGPL-3.0-only
|
|
3
|
+
// SPDX-FileCopyrightText: 2026 the Mosaic authors
|
|
4
|
+
/*
|
|
5
|
+
* Interactive PRIMITIVES. Each stays native for one concrete reason a static
|
|
6
|
+
* data tree can't overcome:
|
|
7
|
+
* - TextInput/SelectInput/Switch — own their input value (local state)
|
|
8
|
+
* - Menu — owns open/closed state
|
|
9
|
+
* - SearchBar — the submit Action must carry the live
|
|
10
|
+
* input value (state → action payload)
|
|
11
|
+
* - Slider — displays its own live value beside itself
|
|
12
|
+
* (output couples to internal state)
|
|
13
|
+
* - RatingControl — owns selection state
|
|
14
|
+
* - ProgressBar — fill width is computed from `value`
|
|
15
|
+
*
|
|
16
|
+
* The LABELLED form controls (TextField/Toggle/Select) were compositions of a
|
|
17
|
+
* bare input + static chrome, so they moved to definitions (definitions.ts).
|
|
18
|
+
*/
|
|
19
|
+
import { useState } from "react";
|
|
20
|
+
import { prop } from "../sdui/registry";
|
|
21
|
+
import { useRuntime } from "../sdui/context";
|
|
22
|
+
import { cx, Icon } from "./shared";
|
|
23
|
+
/** TextInput — bare text field owning its value. */
|
|
24
|
+
export function TextInput({ node }) {
|
|
25
|
+
const kind = prop(node, "inputType", "text");
|
|
26
|
+
const placeholder = prop(node, "placeholder", "");
|
|
27
|
+
const [value, setValue] = useState(prop(node, "value", ""));
|
|
28
|
+
return (_jsx("input", { className: "msc-field__input", type: kind, placeholder: placeholder, value: value, onChange: (e) => setValue(e.target.value) }));
|
|
29
|
+
}
|
|
30
|
+
/** Switch — bare on/off toggle owning its state; emits an Action on change. */
|
|
31
|
+
export function Switch({ node }) {
|
|
32
|
+
const { emit } = useRuntime();
|
|
33
|
+
const action = prop(node, "action", undefined);
|
|
34
|
+
const [on, setOn] = useState(prop(node, "value", false));
|
|
35
|
+
return (_jsx("button", { type: "button", role: "switch", "aria-checked": on, className: cx("msc-toggle__track", on && "is-on"), onClick: () => {
|
|
36
|
+
setOn((v) => !v);
|
|
37
|
+
emit(action);
|
|
38
|
+
}, children: _jsx("span", { className: "msc-toggle__thumb" }) }));
|
|
39
|
+
}
|
|
40
|
+
/** SelectInput — bare dropdown owning its value. */
|
|
41
|
+
export function SelectInput({ node }) {
|
|
42
|
+
const options = prop(node, "options", []);
|
|
43
|
+
const [value, setValue] = useState(prop(node, "value", options[0]?.value ?? ""));
|
|
44
|
+
return (_jsxs("div", { className: "msc-select", children: [_jsx("select", { className: "msc-select__el", value: value, onChange: (e) => setValue(e.target.value), children: options.map((o) => (_jsx("option", { value: o.value, children: o.label }, o.value))) }), _jsx(Icon, { name: "chevron-down", className: "msc-select__chevron" })] }));
|
|
45
|
+
}
|
|
46
|
+
/** Menu — a click-to-open list of actionable items. */
|
|
47
|
+
export function Menu({ node }) {
|
|
48
|
+
const { emit } = useRuntime();
|
|
49
|
+
const [open, setOpen] = useState(false);
|
|
50
|
+
const label = prop(node, "label", "Menu");
|
|
51
|
+
const items = prop(node, "items", []);
|
|
52
|
+
return (_jsxs("div", { className: cx("msc-menu", open && "is-open"), onMouseLeave: () => setOpen(false), children: [_jsx("button", { className: "msc-iconbtn msc-iconbtn--ghost", "aria-label": label, onClick: () => setOpen((o) => !o), children: _jsx(Icon, { name: "dots" }) }), open && (_jsx("div", { className: "msc-menu__list", role: "menu", children: items.map((it, i) => (_jsxs("button", { role: "menuitem", className: cx("msc-menu__item", it.tone === "danger" && "is-danger"), onClick: () => {
|
|
53
|
+
setOpen(false);
|
|
54
|
+
emit(it.action);
|
|
55
|
+
}, children: [it.icon && _jsx(Icon, { name: it.icon }), _jsx("span", { children: it.label })] }, i))) }))] }));
|
|
56
|
+
}
|
|
57
|
+
/** SearchBar — the submit Action carries the live term, so it owns its input. */
|
|
58
|
+
export function SearchBar({ node }) {
|
|
59
|
+
const { emit } = useRuntime();
|
|
60
|
+
const placeholder = prop(node, "placeholder", "Search your library…");
|
|
61
|
+
const screen = prop(node, "submitScreen", "search");
|
|
62
|
+
const [value, setValue] = useState(prop(node, "value", ""));
|
|
63
|
+
return (_jsxs("form", { className: "msc-search", role: "search", onSubmit: (e) => {
|
|
64
|
+
e.preventDefault();
|
|
65
|
+
emit({ kind: "navigate", screen, params: { q: value } });
|
|
66
|
+
}, children: [_jsx(Icon, { name: "search", className: "msc-search__icon" }), _jsx("input", { className: "msc-search__input", type: "search", value: value, placeholder: placeholder, onChange: (e) => setValue(e.target.value) })] }));
|
|
67
|
+
}
|
|
68
|
+
/** Slider — shows its own live value, so output couples to internal state. */
|
|
69
|
+
export function Slider({ node }) {
|
|
70
|
+
const label = prop(node, "label", undefined);
|
|
71
|
+
const min = prop(node, "min", 0);
|
|
72
|
+
const max = prop(node, "max", 100);
|
|
73
|
+
const [value, setValue] = useState(prop(node, "value", 50));
|
|
74
|
+
return (_jsxs("div", { className: "msc-field", children: [label && (_jsxs("div", { className: "msc-field__label msc-slider__label", children: [_jsx("span", { children: label }), _jsx("span", { className: "msc-slider__value", children: value })] })), _jsx("input", { className: "msc-slider", type: "range", min: min, max: max, value: value, onChange: (e) => setValue(Number(e.target.value)) })] }));
|
|
75
|
+
}
|
|
76
|
+
/** RatingControl — clickable stars owning the selection. */
|
|
77
|
+
export function RatingControl({ node }) {
|
|
78
|
+
const { emit } = useRuntime();
|
|
79
|
+
const max = prop(node, "max", 5);
|
|
80
|
+
const action = prop(node, "action", undefined);
|
|
81
|
+
const [value, setValue] = useState(prop(node, "value", 0));
|
|
82
|
+
return (_jsx("div", { className: "msc-rating", role: "slider", "aria-valuenow": value, "aria-valuemin": 0, "aria-valuemax": max, children: Array.from({ length: max }, (_, i) => i + 1).map((n) => (_jsx("button", { className: cx("msc-rating__star", n <= value && "is-filled"), "aria-label": `${n} of ${max}`, onClick: () => {
|
|
83
|
+
setValue(n);
|
|
84
|
+
emit(action);
|
|
85
|
+
}, children: _jsx(Icon, { name: "star" }) }, n))) }));
|
|
86
|
+
}
|
|
87
|
+
/** ProgressBar — fill width computed from `value` (0..1). */
|
|
88
|
+
export function ProgressBar({ node }) {
|
|
89
|
+
const value = Math.max(0, Math.min(1, prop(node, "value", 0)));
|
|
90
|
+
const tone = prop(node, "tone", "accent");
|
|
91
|
+
return (_jsx("div", { className: "msc-progress", role: "progressbar", "aria-valuenow": Math.round(value * 100), children: _jsx("div", { className: cx("msc-progress__fill", `msc-progress__fill--${tone}`), style: { width: `${value * 100}%` } }) }));
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=controls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"controls.js","sourceRoot":"","sources":["../../src/components/controls.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/components/definitions.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AA4e5D,eAAO,MAAM,oBAAoB,EAAE,mBAAmB,EAkBrD,CAAC"}
|