@fasl-work/caos-app-shell 0.19.4 → 0.19.6

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/index.d.ts CHANGED
@@ -1219,6 +1219,9 @@ interface CaseWorkbenchProps {
1219
1219
  controls?: Record<string, unknown>;
1220
1220
  /** A workbench whose views have no live control declares it, so the reactivity gate does not expect one. */
1221
1221
  replayOnly?: boolean;
1222
+ /** The notes of the case's filling cards are text the reader needs whole: at 1280 px and wider each takes the height it
1223
+ * needs instead of 35% of its card, the body keeping the stage floor (`data-caos-note-fit`, 0.19.5, SHC-101). */
1224
+ noteFit?: boolean;
1222
1225
  /** The regimes of the case, shown in the rail under the case picker; omit only for a case with no meaningful
1223
1226
  * parametric or temporal family. */
1224
1227
  variants?: VariantBarProps;
package/dist/index.js CHANGED
@@ -420,7 +420,7 @@ function Frame({ config, pathname, routed, children }) {
420
420
  ] }),
421
421
  license && /* @__PURE__ */ jsxs(Fragment, { children: [
422
422
  /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: "\xB7" }),
423
- /* @__PURE__ */ jsx("span", { className: "faint", children: license })
423
+ /* @__PURE__ */ jsx("span", { className: "faint", translate: "no", children: license })
424
424
  ] }),
425
425
  config.footer?.disclaimer && /* @__PURE__ */ jsxs(Fragment, { children: [
426
426
  /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: "\xB7" }),
@@ -3855,7 +3855,7 @@ function panel(id, lane, provenance, content) {
3855
3855
  return /* @__PURE__ */ jsx("div", { className: "caos-cw-panel", "data-group": id, "data-lane": lane, "data-provenance": provenance, children: content });
3856
3856
  }
3857
3857
  function CaseWorkbench(props) {
3858
- const { caseId, cases, source, controls, replayOnly, variants, rail, railLabel, groups, compare, context, group, onGroupChange, deepLinkView = true, ariaLabel, focus } = props;
3858
+ const { caseId, cases, source, controls, replayOnly, noteFit, variants, rail, railLabel, groups, compare, context, group, onGroupChange, deepLinkView = true, ariaLabel, focus } = props;
3859
3859
  const lang = useShellLang();
3860
3860
  const focusCfg = focus === true ? {} : focus || null;
3861
3861
  const { show: showFocus, setFocus, enterRef, memory } = useFocusMode(focusCfg);
@@ -3913,7 +3913,8 @@ function CaseWorkbench(props) {
3913
3913
  "data-variant": variantId ?? "",
3914
3914
  "data-source": source ?? "",
3915
3915
  "data-state-key": stateKey,
3916
- "data-replay-only": replayOnly ? "1" : void 0
3916
+ "data-replay-only": replayOnly ? "1" : void 0,
3917
+ "data-caos-note-fit": noteFit ? "" : void 0
3917
3918
  };
3918
3919
  if (showFocus && focusCfg) {
3919
3920
  const open = tabs.find((t2) => t2.id === openGroup) ?? tabs[0];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fasl-work/caos-app-shell",
3
- "version": "0.19.4",
3
+ "version": "0.19.6",
4
4
  "description": "Shared web-app shell, workbench primitives, content primitives, design system and measured gate for the CAOS / Faena public apps (ADR-0016, ADR-0017, ADR-0071).",
5
5
  "license": "MIT",
6
6
  "author": "Felipe Santibáñez-Leal",
package/styles.css CHANGED
@@ -628,6 +628,14 @@ svg.lucide { flex: none; }
628
628
  /* The note of a filling card keeps at most 35% of the card and scrolls beyond it, so the drawing keeps a floor
629
629
  (CAOS_APP_SHELL#95: a long note left plots of 10 to 90 px at 1280 x 800). */
630
630
  .caos-plot.fill > .caos-plot-note { flex: 0 1 auto; max-height: 35%; overflow-y: auto; }
631
+ /* A product whose notes carry what the reader needs whole (CAOS_Contraste C04's data-driven notes, cut by 9 to 117 px under the
632
+ cap) opts out of the cap with `data-caos-note-fit` on any ancestor: at 1280 px and wider, where the body keeps the stage floor,
633
+ the note takes the height it needs and, only where the drawing needs its floor, shrinks and scrolls in its own box. Below
634
+ 1280 px the cap stays (no floor there), and at 900 px and below the note is whole as before (0.19.5, SHC-101; known shell
635
+ defect 46). */
636
+ @media (min-width: 1280px) {
637
+ [data-caos-note-fit] .caos-plot.fill > .caos-plot-note { max-height: none; min-height: 0; }
638
+ }
631
639
 
632
640
  /* The stage floor of a filling card (shell 0.11.2; the gate's G6 floor, `--stage-floor` 140 px). At 1280 px and wider the
633
641
  body of a filling card, the box the gate measures, keeps at least the floor itself, so the card grows when its header