@crossworks/share-ui 0.232.19 → 0.232.21
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/package.json +3 -3
- package/src/appearance.ts +26 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crossworks/share-ui",
|
|
3
|
-
"version": "0.232.
|
|
3
|
+
"version": "0.232.21",
|
|
4
4
|
"description": "The server-rendered share surface — the /s/<token> presenters, view-payload contract, mini-app sandbox, and the few primitives they need. Lives in MANTLE (the server renders these), published for jackdaw to consume; may depend only on @mantle/{client-types,content-core} (the jackdaw-repo-split boundary).",
|
|
5
5
|
"exports": {
|
|
6
6
|
"./app-presenter": "./src/app-presenter.tsx",
|
|
@@ -32,8 +32,8 @@
|
|
|
32
32
|
"./styles/app.css": "./styles/app.css"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@mantle/client-types": "npm:@crossworks/client-types@0.232.
|
|
36
|
-
"@mantle/content-core": "npm:@crossworks/content-core@0.232.
|
|
35
|
+
"@mantle/client-types": "npm:@crossworks/client-types@0.232.21",
|
|
36
|
+
"@mantle/content-core": "npm:@crossworks/content-core@0.232.21",
|
|
37
37
|
"@radix-ui/react-label": "^2.1.12",
|
|
38
38
|
"@radix-ui/react-slot": "^1.3.0",
|
|
39
39
|
"class-variance-authority": "^0.7.1",
|
package/src/appearance.ts
CHANGED
|
@@ -55,6 +55,32 @@ export type BrainAppearance = {
|
|
|
55
55
|
avatarStyle: string | null;
|
|
56
56
|
avatarTint: string | null;
|
|
57
57
|
backgrounds: string | null;
|
|
58
|
+
/**
|
|
59
|
+
* WHO this brain is — its own name, the name of the box, and whether an
|
|
60
|
+
* uploaded logo exists. Unlike everything above these are NOT stamped onto
|
|
61
|
+
* `<html>`: `resolveAppearanceAttrs` ignores them, because they are content a
|
|
62
|
+
* surface renders rather than a variable the CSS reads.
|
|
63
|
+
*
|
|
64
|
+
* They ride on this payload because the sign-in screen needs them and has no
|
|
65
|
+
* session to fetch /api/shell with — a brain must be able to say what it is
|
|
66
|
+
* before it asks who you are. On a fleet of many brains behind many domains
|
|
67
|
+
* that is the difference between an identifiable login and five identical
|
|
68
|
+
* ones. Nothing here is more private than the branding a share link already
|
|
69
|
+
* renders publicly.
|
|
70
|
+
*
|
|
71
|
+
* OPTIONAL on purpose: a client pinned to an older published contract may be
|
|
72
|
+
* talking to a newer brain or the reverse, so every reader must treat absence
|
|
73
|
+
* as "not set" and fall back — never assume the field arrived.
|
|
74
|
+
*
|
|
75
|
+
* The logo BYTES have always been public at `GET /api/appearance/logo`
|
|
76
|
+
* (`?variant=dark`); these are only the sha-addressed cache-busting versions,
|
|
77
|
+
* and their PRESENCE is how a caller learns an upload exists at all. Either
|
|
78
|
+
* variant may exist alone — renderers fall back dark → base → wordmark.
|
|
79
|
+
*/
|
|
80
|
+
siteName?: string | null;
|
|
81
|
+
peerName?: string | null;
|
|
82
|
+
logoVersion?: string | null;
|
|
83
|
+
logoDarkVersion?: string | null;
|
|
58
84
|
};
|
|
59
85
|
|
|
60
86
|
export type AppearanceAttrs = {
|