@pipelex/mthds-ui 0.21.0 → 0.23.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/README.md CHANGED
@@ -18,14 +18,14 @@ Released versions are listed on the [npm page](https://www.npmjs.com/package/@pi
18
18
  | --------------------- | -------- | ----------------------------------------- |
19
19
  | `react`, `react-dom` | no | React layer (`graph/react`, `form/react`) |
20
20
  | `shiki` | no | Syntax highlighting (`shiki`) |
21
- | `@pipelex/mthds-form` | no | Run form panel (`form/react`) |
22
21
 
23
22
  ### Bundled dependencies
24
23
 
25
- | Dependency | License | Used by |
26
- | --------------- | ------- | ------------------------------- |
27
- | `elkjs` | EPL-2.0 | Graph layout engine |
28
- | `@xyflow/react` | MIT | Graph rendering (`graph/react`) |
24
+ | Dependency | License | Used by |
25
+ | --------------------- | ------- | ---------------------------------------------------------- |
26
+ | `elkjs` | EPL-2.0 | Graph layout engine |
27
+ | `@xyflow/react` | MIT | Graph rendering (`graph/react`) |
28
+ | `@pipelex/mthds-form` | MIT | Run form panel + result view (`form/react`, `graph/react`) |
29
29
 
30
30
  `elkjs` (Eclipse Layout Kernel) is licensed under the [Eclipse Public License 2.0](https://www.eclipse.org/legal/epl-2.0/). See [NOTICE](./NOTICE) for details.
31
31
 
@@ -301,9 +301,7 @@ const final = applyControllers(nodes, edges, graphspec, analysis, true);
301
301
 
302
302
  `RunPanel` renders a pipe's input form from its IO contract: the fields, the readiness verdict on the Run button, and the wire-ready payload a run receives.
303
303
 
304
- ```bash
305
- npm install @pipelex/mthds-form # optional peer — graph-only consumers skip it
306
- ```
304
+ The form kernel ships as a dependency of this package, so there is nothing extra to install. Reach it through `@pipelex/mthds-ui/form` rather than importing it directly — a second declaration puts a second copy in your tree, and the kernel ships React contexts, so a provider you mount above the panel would stop resolving inside it.
307
305
 
308
306
  ```tsx
309
307
  import { getPipeIOContract } from "@pipelex/mthds-form";
@@ -325,7 +323,9 @@ const contract = getPipeIOContract(pipeIoContracts, domain, pipeCode);
325
323
 
326
324
  `onRun` fires only once the kernel's run gate passes. This library renders and never executes: no API client, no upload, no storage resolution — the host injects all three.
327
325
 
328
- The controls are the kernel's, styled with Tailwind over shadcn tokens, so **bringing in their styling is the host's lane** — either add `./node_modules/@pipelex/mthds-form/dist/**/*.js` to your Tailwind `content` globs, or import the prebuilt `@pipelex/mthds-form/theme.css` + `styles.css`. Pick one; they are mutually exclusive, and a Tailwind host that forgets the glob gets a _mostly_-styled form that reads like a broken design system.
326
+ The controls are the kernel's, styled with Tailwind over shadcn tokens, and **their stylesheet ships with this package**: both React entries import it under a cascade layer, so you add no Tailwind globs and import no kernel CSS yourself. Doing either puts a second, unlayered copy of the same utilities in the page, which is the state the layer exists to prevent.
327
+
328
+ What you do supply is the shadcn token values, and each must be a **complete colour** — `hsl(240 10% 3.9%)`, `#0a0711`, `oklch(…)` — never a bare HSL triplet. Since kernel `0.8.0` the sheet emits `background-color: var(--background)` rather than `hsl(var(--background))`, so a triplet computes to something that is not a colour and the browser discards the declaration instead of overriding with it: green build, token inspectable, style silently absent.
329
329
 
330
330
  Full contract, the styling trap, the `.dark` bridge and the `mthds-run-panel` token hook: [docs/run-form-panel.md](./docs/run-form-panel.md).
331
331
 
@@ -137,7 +137,7 @@ function StuffResultPanel({
137
137
  [contracts, outputForm, inputForm, producerPipeRef, consumer]
138
138
  );
139
139
  if (field) {
140
- const panel = /* @__PURE__ */ jsx(StuffViewer, { field, value: stuff.data });
140
+ const panel = /* @__PURE__ */ jsx(StuffViewer, { field, value: stuff.data, name: stuff.name });
141
141
  return resolveUrl || resolveShareUrl ? /* @__PURE__ */ jsx(ResultEnvProvider, { resolveUrl, resolveShareUrl, children: panel }) : panel;
142
142
  }
143
143
  return stuff.data === void 0 || stuff.data === null ? null : /* @__PURE__ */ jsx(UndescribedValue, { value: stuff.data });