@justai/cuts 0.87.0 → 0.89.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.
Files changed (2) hide show
  1. package/package.json +2 -2
  2. package/src/Toolbar.astro +20 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@justai/cuts",
3
- "version": "0.87.0",
3
+ "version": "0.89.0",
4
4
  "description": "A persona's named parts — the page shell that holds them, and the cuts themselves.",
5
5
  "license": "UNLICENSED",
6
6
  "repository": {
@@ -37,7 +37,7 @@
37
37
  "access": "public"
38
38
  },
39
39
  "dependencies": {
40
- "@justai/core": "^0.12.0",
40
+ "@justai/core": "^0.14.0",
41
41
  "@justai/ui": "^0",
42
42
  "@justai/atrium": "^0.1.9"
43
43
  }
package/src/Toolbar.astro CHANGED
@@ -94,6 +94,26 @@ interface Props {
94
94
  // registry stores it, the catalog draws it. There was nothing to decide; there was only something
95
95
  // to look up.
96
96
  //
97
+ // ── AND THE `<img>` FALLBACK IS THE WORSE OF THE TWO ANSWERS ────────────────────────────────
98
+ //
99
+ // queries: the persona icon has a background in the toolbar · a filled tile in the row ·
100
+ // the mark looks like a little card · toolbarMark
101
+ //
102
+ // `icon.svg` is a TILE — a squircle ground with the mark on it, drawn for an avatar well or a Home
103
+ // Screen. Dropped into the row as an `<img>` it keeps that ground, and becomes the only object in
104
+ // a line of four inks with a background behind it. Correct enough to ship and wrong to look at,
105
+ // which is why it took a founder opening two personas side by side to name it.
106
+ //
107
+ // THE RIGHT ANSWER IS qr'S, and it is derive-never-redraw: pass `profileIcon` an INLINE svg made
108
+ // from the same `icon.svg` with its ground removed and its ids namespaced —
109
+ //
110
+ // import iconSvg from "../../public/icon.svg?raw";
111
+ // import { toolbarMark } from "@justai/core";
112
+ // <Fragment slot="profileIcon" set:html={toolbarMark(iconSvg, { id: "qr" })} />
113
+ //
114
+ // The `<img>` stays as the fallback because a persona that has not done this should still show
115
+ // its own face rather than a stranger's bust — but it is the floor, not the destination.
116
+ //
97
117
  // The `profileIcon` slot still wins when a persona passes one — an inline SVG can take
98
118
  // `currentColor` where an <img> cannot, which is why qr passes its mark rather than pointing at it.
99
119
  avatar?: string;