@graview/core 0.1.15 → 0.1.16

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 (190) hide show
  1. package/README.md +16 -5
  2. package/dist/app.d.ts +8 -8
  3. package/dist/app.d.ts.map +1 -1
  4. package/dist/arrangement.d.ts +2 -2
  5. package/dist/arrangement.d.ts.map +1 -1
  6. package/dist/arrangement.js +5 -5
  7. package/dist/arranging.js +3 -3
  8. package/dist/capabilities.js +1 -1
  9. package/dist/capabilities.js.map +1 -1
  10. package/dist/city.d.ts +5 -5
  11. package/dist/city.js +3 -3
  12. package/dist/cli/check/beginnings.js +2 -2
  13. package/dist/cli/check/brand.d.ts.map +1 -1
  14. package/dist/cli/check/brand.js +15 -9
  15. package/dist/cli/check/brand.js.map +1 -1
  16. package/dist/cli/check/city.js +1 -1
  17. package/dist/cli/check/context.js +1 -1
  18. package/dist/cli/check/relations.js +2 -2
  19. package/dist/cli/check/relations.js.map +1 -1
  20. package/dist/cli/check/settings.js +8 -8
  21. package/dist/cli/check/settings.js.map +1 -1
  22. package/dist/cli/check/views.d.ts +1 -1
  23. package/dist/cli/check/views.js +1 -1
  24. package/dist/cli/create.d.ts +1 -1
  25. package/dist/cli/create.js +5 -5
  26. package/dist/cli/describe.d.ts +1 -1
  27. package/dist/cli/describe.js +2 -2
  28. package/dist/cli/describe.js.map +1 -1
  29. package/dist/cli/index.d.ts +1 -1
  30. package/dist/columns.d.ts +1 -1
  31. package/dist/columns.js +1 -1
  32. package/dist/describe.d.ts +1 -1
  33. package/dist/describe.d.ts.map +1 -1
  34. package/dist/document/brand-check.d.ts +10 -0
  35. package/dist/document/brand-check.d.ts.map +1 -0
  36. package/dist/document/brand-check.js +33 -0
  37. package/dist/document/brand-check.js.map +1 -0
  38. package/dist/document/brand.d.ts +10 -0
  39. package/dist/document/brand.d.ts.map +1 -0
  40. package/dist/document/brand.js +49 -0
  41. package/dist/document/brand.js.map +1 -0
  42. package/dist/document/compile-checked.d.ts.map +1 -1
  43. package/dist/document/compile-checked.js +6 -2
  44. package/dist/document/compile-checked.js.map +1 -1
  45. package/dist/document/compile.d.ts +6 -0
  46. package/dist/document/compile.d.ts.map +1 -1
  47. package/dist/document/compile.js +4 -13
  48. package/dist/document/compile.js.map +1 -1
  49. package/dist/document/compiled.d.ts.map +1 -1
  50. package/dist/document/compiled.js +3 -2
  51. package/dist/document/compiled.js.map +1 -1
  52. package/dist/document/describe-place.d.ts +16 -0
  53. package/dist/document/describe-place.d.ts.map +1 -1
  54. package/dist/document/describe-place.js +14 -1
  55. package/dist/document/describe-place.js.map +1 -1
  56. package/dist/document/diff.d.ts.map +1 -1
  57. package/dist/document/diff.js +45 -6
  58. package/dist/document/diff.js.map +1 -1
  59. package/dist/document/edit.d.ts +7 -2
  60. package/dist/document/edit.d.ts.map +1 -1
  61. package/dist/document/edit.js +173 -45
  62. package/dist/document/edit.js.map +1 -1
  63. package/dist/document/expr/analyze.d.ts +2 -2
  64. package/dist/document/expr/analyze.js +2 -2
  65. package/dist/document/expr/print.js +1 -1
  66. package/dist/document/index.d.ts +1 -1
  67. package/dist/document/index.d.ts.map +1 -1
  68. package/dist/document/quote.d.ts +5 -0
  69. package/dist/document/quote.d.ts.map +1 -0
  70. package/dist/document/quote.js +17 -0
  71. package/dist/document/quote.js.map +1 -0
  72. package/dist/document/rules.d.ts +2 -2
  73. package/dist/document/rules.d.ts.map +1 -1
  74. package/dist/document/rules.js +2 -2
  75. package/dist/document/rules.js.map +1 -1
  76. package/dist/document/schema.d.ts +45 -2
  77. package/dist/document/schema.d.ts.map +1 -1
  78. package/dist/document/schema.js +22 -3
  79. package/dist/document/schema.js.map +1 -1
  80. package/dist/document/thumbnail.d.ts +9 -0
  81. package/dist/document/thumbnail.d.ts.map +1 -1
  82. package/dist/document/thumbnail.js +74 -12
  83. package/dist/document/thumbnail.js.map +1 -1
  84. package/dist/document/to-document.js +5 -5
  85. package/dist/document/to-document.js.map +1 -1
  86. package/dist/graph/graph.js +3 -3
  87. package/dist/graph/primitives.d.ts +2 -2
  88. package/dist/graph/primitives.js +2 -2
  89. package/dist/index.d.ts +10 -5
  90. package/dist/index.d.ts.map +1 -1
  91. package/dist/index.js +8 -5
  92. package/dist/index.js.map +1 -1
  93. package/dist/invariants/engine.js +1 -1
  94. package/dist/invariants/types.d.ts +3 -3
  95. package/dist/invariants/types.d.ts.map +1 -1
  96. package/dist/labels.d.ts +1 -1
  97. package/dist/modules.d.ts +1 -1
  98. package/dist/modules.js +1 -1
  99. package/dist/mutations/define-mutation.js +4 -4
  100. package/dist/mutations/define-mutation.js.map +1 -1
  101. package/dist/mutations/derive-edits.js +3 -3
  102. package/dist/mutations/node-ref.js +1 -1
  103. package/dist/mutations/types.d.ts +1 -1
  104. package/dist/mutations/words.js +3 -3
  105. package/dist/ops/types.d.ts +1 -1
  106. package/dist/ops/withheld.d.ts +3 -3
  107. package/dist/permissions/policy.d.ts +1 -1
  108. package/dist/permissions/policy.js +3 -3
  109. package/dist/permissions/types.d.ts +2 -2
  110. package/dist/places.d.ts +14 -1
  111. package/dist/places.d.ts.map +1 -1
  112. package/dist/places.js +27 -4
  113. package/dist/places.js.map +1 -1
  114. package/dist/scaffold/domain.js +3 -3
  115. package/dist/scaffold/index.d.ts +1 -1
  116. package/dist/scaffold/index.d.ts.map +1 -1
  117. package/dist/scaffold/names.d.ts +1 -1
  118. package/dist/scaffold/names.js +1 -1
  119. package/dist/scaffold/names.js.map +1 -1
  120. package/dist/scaffold/project.js +1 -1
  121. package/dist/scene-districts.d.ts +1 -1
  122. package/dist/schema/define-node.d.ts +4 -4
  123. package/dist/schema/define-node.d.ts.map +1 -1
  124. package/dist/schema/define-node.js +8 -8
  125. package/dist/schema/define-node.js.map +1 -1
  126. package/dist/schema/figures.d.ts +1 -1
  127. package/dist/schema/figures.js +7 -7
  128. package/dist/schema/figures.js.map +1 -1
  129. package/dist/schema/types.d.ts +1 -1
  130. package/dist/search.d.ts +13 -1
  131. package/dist/search.d.ts.map +1 -1
  132. package/dist/search.js +33 -14
  133. package/dist/search.js.map +1 -1
  134. package/dist/seen.d.ts +2 -2
  135. package/dist/seen.js +12 -12
  136. package/dist/seen.js.map +1 -1
  137. package/dist/settings.d.ts +1 -1
  138. package/dist/settings.js +3 -3
  139. package/dist/settings.js.map +1 -1
  140. package/dist/store.d.ts +2 -2
  141. package/dist/store.d.ts.map +1 -1
  142. package/dist/store.js +8 -8
  143. package/dist/store.js.map +1 -1
  144. package/dist/sync/google-calendar.js +1 -1
  145. package/dist/sync/types.d.ts +2 -2
  146. package/dist/testing.d.ts +1 -1
  147. package/dist/testing.d.ts.map +1 -1
  148. package/dist/testing.js +2 -2
  149. package/dist/testing.js.map +1 -1
  150. package/dist/theme/accent.d.ts +37 -0
  151. package/dist/theme/accent.d.ts.map +1 -0
  152. package/dist/theme/accent.js +138 -0
  153. package/dist/theme/accent.js.map +1 -0
  154. package/dist/theme/contrast.d.ts +7 -7
  155. package/dist/theme/contrast.d.ts.map +1 -1
  156. package/dist/theme/contrast.js +14 -14
  157. package/dist/theme/contrast.js.map +1 -1
  158. package/dist/theme/derive.d.ts +4 -4
  159. package/dist/theme/derive.d.ts.map +1 -1
  160. package/dist/theme/derive.js +19 -19
  161. package/dist/theme/derive.js.map +1 -1
  162. package/dist/theme/fonts.d.ts +19 -0
  163. package/dist/theme/fonts.d.ts.map +1 -0
  164. package/dist/theme/fonts.js +73 -0
  165. package/dist/theme/fonts.js.map +1 -0
  166. package/dist/theme/kit.d.ts +9 -9
  167. package/dist/theme/kit.d.ts.map +1 -1
  168. package/dist/theme/kit.js +15 -15
  169. package/dist/theme/kit.js.map +1 -1
  170. package/dist/theme/layers.d.ts +2 -2
  171. package/dist/theme/layers.d.ts.map +1 -1
  172. package/dist/theme/layers.js +2 -2
  173. package/dist/theme/layers.js.map +1 -1
  174. package/dist/theme/look.d.ts +3 -3
  175. package/dist/theme/look.d.ts.map +1 -1
  176. package/dist/theme/look.js +1 -1
  177. package/dist/theme/marks.d.ts +28 -0
  178. package/dist/theme/marks.d.ts.map +1 -0
  179. package/dist/theme/marks.js +237 -0
  180. package/dist/theme/marks.js.map +1 -0
  181. package/dist/theme/palettes.d.ts +2 -2
  182. package/dist/theme/palettes.js +2 -2
  183. package/dist/theme/types.d.ts +28 -6
  184. package/dist/theme/types.d.ts.map +1 -1
  185. package/dist/theme/types.js.map +1 -1
  186. package/dist/validate-graph.js +2 -2
  187. package/dist/version.d.ts +1 -1
  188. package/dist/version.js +1 -1
  189. package/dist/watched.js +8 -8
  190. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/cli/check/settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/cli/check/settings.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import type { CheckContext } from "./context.js";
5
5
  *
6
6
  * A view spec names fields, relations and tones, and every one of those
7
7
  * names is a promise about the schema: a card that shows `{quote}` on a
8
- * kind with no quote draws "—" for ever, and `"tone": "green"` is a colour
8
+ * kind with no quote draws "—" for ever, and `"tone": "green"` is a color
9
9
  * the kit does not have. The document path refuses both before it
10
10
  * compiles; a TypeScript declaration is asked the same questions here, in
11
11
  * the same words, at the same paths (`viewSpecs.<kind>.<slot>.<block>`).
@@ -5,7 +5,7 @@ import { validateViewSpecs, viewBraces } from "../../document/views.js";
5
5
  *
6
6
  * A view spec names fields, relations and tones, and every one of those
7
7
  * names is a promise about the schema: a card that shows `{quote}` on a
8
- * kind with no quote draws "—" for ever, and `"tone": "green"` is a colour
8
+ * kind with no quote draws "—" for ever, and `"tone": "green"` is a color
9
9
  * the kit does not have. The document path refuses both before it
10
10
  * compiles; a TypeScript declaration is asked the same questions here, in
11
11
  * the same words, at the same paths (`viewSpecs.<kind>.<slot>.<block>`).
@@ -7,7 +7,7 @@
7
7
  * manager the person is evidently using, and saying what to do next rather
8
8
  * than printing a file list.
9
9
  */
10
- export declare const CREATE_USAGE = " graview create <dir> [--name \"Field Notes\"] [--kind note] [--plural notes]\n Starts a product on Graview in <dir>: the declaration split into domain\n and UI, an eighty-line shell, a headless test, a CI workflow.\n --name <text> the product's name (default: from <dir>)\n --kind <slug> the first node kind (default: item)\n --plural <slug> its plural (default: <kind>s)\n --link <path> consume the framework from a sibling checkout by\n path rather than from a registry\n --pm pnpm|npm the package manager (default: whichever ran this)\n --port <n> the dev server port (default: 5170)\n --accent <#hex> the brand accent (default: a worked green)\n --no-install write the files and stop\n --no-skills do not install the authoring skills\n --no-git do not initialise a git repository\n --workspace the layout every real product ends up with: a\n workspace root with the app under app/ and the\n harness scripts at the root\n --merge write only the files that do not exist yet, and\n name every collision without touching it\n --force write into a directory that is not empty\n --template <file|url>\n start from a template made anywhere (Graview\n Cloud's graview-template shape): the project keeps\n its document as src/domain/app.json and the\n template as template.json, for `graview apply\n --template` to set a store up from. Named after\n the template unless --name says otherwise.\n";
10
+ export declare const CREATE_USAGE = " graview create <dir> [--name \"Field Notes\"] [--kind note] [--plural notes]\n Starts a product on Graview in <dir>: the declaration split into domain\n and UI, an eighty-line shell, a headless test, a CI workflow.\n --name <text> the product's name (default: from <dir>)\n --kind <slug> the first node kind (default: item)\n --plural <slug> its plural (default: <kind>s)\n --link <path> consume the framework from a sibling checkout by\n path rather than from a registry\n --pm pnpm|npm the package manager (default: whichever ran this)\n --port <n> the dev server port (default: 5170)\n --accent <#hex> the brand accent (default: a worked green)\n --no-install write the files and stop\n --no-skills do not install the authoring skills\n --no-git do not initialize a git repository\n --workspace the layout every real product ends up with: a\n workspace root with the app under app/ and the\n harness scripts at the root\n --merge write only the files that do not exist yet, and\n name every collision without touching it\n --force write into a directory that is not empty\n --template <file|url>\n start from a template made anywhere (Graview\n Cloud's graview-template shape): the project keeps\n its document as src/domain/app.json and the\n template as template.json, for `graview apply\n --template` to set a store up from. Named after\n the template unless --name says otherwise.\n";
11
11
  export interface CreateIo {
12
12
  readonly stdout: (text: string) => void;
13
13
  readonly stderr: (text: string) => void;
@@ -26,7 +26,7 @@ export const CREATE_USAGE = ` graview create <dir> [--name "Field Notes"] [--ki
26
26
  --accent <#hex> the brand accent (default: a worked green)
27
27
  --no-install write the files and stop
28
28
  --no-skills do not install the authoring skills
29
- --no-git do not initialise a git repository
29
+ --no-git do not initialize a git repository
30
30
  --workspace the layout every real product ends up with: a
31
31
  workspace root with the app under app/ and the
32
32
  harness scripts at the root
@@ -84,7 +84,7 @@ export async function create(argv, io = defaultIo) {
84
84
  * A DIRECTORY THAT ALREADY EXISTS IS THE NORMAL CASE.
85
85
  *
86
86
  * The realistic start is a repository somebody has already made: a README
87
- * they wrote, a licence, CI, assistant instruction files from some other
87
+ * they wrote, a license, CI, assistant instruction files from some other
88
88
  * tool. `--force` is too blunt for that — it writes over the README — so
89
89
  * two products independently worked around it by scaffolding into `app/`
90
90
  * and hand-writing a workspace root, which is a scaffolder gap rather
@@ -197,9 +197,9 @@ export async function create(argv, io = defaultIo) {
197
197
  const run = pm === "pnpm" ? "pnpm" : "npm run";
198
198
  // A repository, because the CI workflow just written assumes one — unless
199
199
  // this directory is already inside one, which is the person's own choice.
200
- let initialised = false;
200
+ let initialized = false;
201
201
  if (!argv.includes("--no-git") && !insideGitRepo(target)) {
202
- initialised = io.run("git", ["init", "--quiet"], target);
202
+ initialized = io.run("git", ["init", "--quiet"], target);
203
203
  }
204
204
  if (install) {
205
205
  io.stdout(`graview create: ${pm} install\n`);
@@ -232,7 +232,7 @@ export async function create(argv, io = defaultIo) {
232
232
  (install ? "" : ` ${pm} install\n`) +
233
233
  ` ${run} dev # http://localhost:${scaffold.port} (/pages is the routed face)\n` +
234
234
  ` ${run} verify # typecheck, tests, build, graview check\n` +
235
- (initialised ? ` git add -A && git commit -m "${scaffold.name}, on Graview"\n` : "") +
235
+ (initialized ? ` git add -A && git commit -m "${scaffold.name}, on Graview"\n` : "") +
236
236
  "\n" +
237
237
  (scaffold.linked
238
238
  ? `The framework is consumed by path from ${link}: rebuild it (pnpm -C ${link} build) when its sources change.\n` +
@@ -11,7 +11,7 @@ import type { AnySchema } from "../schema/schema.js";
11
11
  * thing: a hue in the wrong unit, so every surface drew red; a lens built
12
12
  * from the wrong node set, so every piece of ground drew empty; a policy
13
13
  * declared with no principal supplied, so every act in the product was
14
- * refused; a colour that was not a token, so the contrast guarantee did not
14
+ * refused; a color that was not a token, so the contrast guarantee did not
15
15
  * apply.
16
16
  *
17
17
  * Every one of those is visible in a DESCRIPTION. The interface here is
@@ -190,13 +190,13 @@ export function describeApp(app, options = {}) {
190
190
  }
191
191
  /*
192
192
  * THE HUES, IN DEGREES. Six kinds all landing within a few degrees of each
193
- * other is a city drawn in one colour, which reads as a rendering fault
193
+ * other is a city drawn in one color, which reads as a rendering fault
194
194
  * and is a declaration the author can change.
195
195
  */
196
196
  const hues = kinds.map((kind) => ({ kind, hue: Math.round(hueFor(kind, app.brand?.accents)) }));
197
197
  const crowded = hues.filter((a, index) => hues.some((b, other) => other !== index && Math.abs(a.hue - b.hue) < 12));
198
198
  lines.push(`Hues: ${hues.map((entry) => `${entry.kind} ${entry.hue}°`).join(", ")}.` +
199
- (crowded.length > 1 ? ` ${list(crowded.map((entry) => entry.kind))} are within 12° of each other and will read as one colour.` : ""));
199
+ (crowded.length > 1 ? ` ${list(crowded.map((entry) => entry.kind))} are within 12° of each other and will read as one color.` : ""));
200
200
  /*
201
201
  * WHAT A SEAT CAN DO. A policy with roles and a principal holding none of
202
202
  * them refuses everything, and the app looks broken rather than guarded —
@@ -1 +1 @@
1
- {"version":3,"file":"describe.js","sourceRoot":"","sources":["../../src/cli/describe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"describe.js","sourceRoot":"","sources":["../../src/cli/describe.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  import type { GraviewApp } from "../app.js";
3
3
  import type { AnySchema } from "../schema/schema.js";
4
4
  import { compileDocument } from "../document/compile-checked.js";
5
- export declare const USAGE = "graview \u2014 start a product, check its declaration, write its agent docs\n\n graview create <dir> [--name \"Field Notes\"] [--kind note] [--plural notes]\n Starts a product on Graview in <dir>: the declaration split into domain\n and UI, an eighty-line shell, a headless test, a CI workflow.\n --name <text> the product's name (default: from <dir>)\n --kind <slug> the first node kind (default: item)\n --plural <slug> its plural (default: <kind>s)\n --link <path> consume the framework from a sibling checkout by\n path rather than from a registry\n --pm pnpm|npm the package manager (default: whichever ran this)\n --port <n> the dev server port (default: 5170)\n --accent <#hex> the brand accent (default: a worked green)\n --no-install write the files and stop\n --no-skills do not install the authoring skills\n --no-git do not initialise a git repository\n --workspace the layout every real product ends up with: a\n workspace root with the app under app/ and the\n harness scripts at the root\n --merge write only the files that do not exist yet, and\n name every collision without touching it\n --force write into a directory that is not empty\n --template <file|url>\n start from a template made anywhere (Graview\n Cloud's graview-template shape): the project keeps\n its document as src/domain/app.json and the\n template as template.json, for `graview apply\n --template` to set a store up from. Named after\n the template unless --name says otherwise.\n\n\n graview check <entry> [--views <module>] [--json]\n Loads <entry> (a module whose default export, or `app` export, is a\n GraviewApp) and reports schema problems. Exits 1 on any error.\n\n --document <file>\n Any command that takes an <entry> takes a declaration document instead\n (a .json file in the Graview document format): compiled, never run as\n code, and checked with the JSON path of every finding. With\n --previous <file>, check holds every renamedFrom to the version before.\n A template (a graview-template .json) is read as the document inside it.\n\n graview docs <entry> [--out <dir>] [--views <module>]\n Writes llms.txt and agents.md next to the entry, or into <dir>.\n\n graview describe <entry> [--as <role>] [--views <module>] [--place <slug|id>]\n Reads the app out: what a blank installation meets and in what order,\n what is drawn and what falls back, the hues, what a seat may do, how a\n model is reached, what is judged. The rung between check and a browser\n \u2014 \"run it and look\" for something that cannot see.\n --place <slug|id> [--seed <snapshot.json>] [--width <px>] [--id <who>] says what one\n place shows that seat instead: headings, figures, lists and problems.\n\n graview lens <name> --roles a,b,c [--binds fields|entities] [--dir <dir>]\n Writes a lens that compiles: the role check that fails loudly, the\n createXLens factory, three fidelities, pick targets \u2014 and beside it a\n REUSE TEST in a domain the app is not about, red until you make the\n claim true. If you cannot make it pass, you wrote a view, and a view\n is a legitimate thing to have written.\n\n graview figure <entry> --kind <kind> [--name <shipped>]\n [--from \"<what the thing is>\"] [--judge <file|->]\n Prints the figure line to paste into defineNode. With --name it is one\n of the shipped drawings; with neither, it suggests the nearest one by\n name and says so. --from prints the brief to hand a model \u2014 the rules,\n the angle and a shipped figure as the style \u2014 and --judge reads the\n answer back, holds it to the rules graview check holds a figure to, and\n prints the line. Nine shipped figures is a vocabulary to start from,\n not a vocabulary to finish in.\n";
5
+ export declare const USAGE = "graview \u2014 start a product, check its declaration, write its agent docs\n\n graview create <dir> [--name \"Field Notes\"] [--kind note] [--plural notes]\n Starts a product on Graview in <dir>: the declaration split into domain\n and UI, an eighty-line shell, a headless test, a CI workflow.\n --name <text> the product's name (default: from <dir>)\n --kind <slug> the first node kind (default: item)\n --plural <slug> its plural (default: <kind>s)\n --link <path> consume the framework from a sibling checkout by\n path rather than from a registry\n --pm pnpm|npm the package manager (default: whichever ran this)\n --port <n> the dev server port (default: 5170)\n --accent <#hex> the brand accent (default: a worked green)\n --no-install write the files and stop\n --no-skills do not install the authoring skills\n --no-git do not initialize a git repository\n --workspace the layout every real product ends up with: a\n workspace root with the app under app/ and the\n harness scripts at the root\n --merge write only the files that do not exist yet, and\n name every collision without touching it\n --force write into a directory that is not empty\n --template <file|url>\n start from a template made anywhere (Graview\n Cloud's graview-template shape): the project keeps\n its document as src/domain/app.json and the\n template as template.json, for `graview apply\n --template` to set a store up from. Named after\n the template unless --name says otherwise.\n\n\n graview check <entry> [--views <module>] [--json]\n Loads <entry> (a module whose default export, or `app` export, is a\n GraviewApp) and reports schema problems. Exits 1 on any error.\n\n --document <file>\n Any command that takes an <entry> takes a declaration document instead\n (a .json file in the Graview document format): compiled, never run as\n code, and checked with the JSON path of every finding. With\n --previous <file>, check holds every renamedFrom to the version before.\n A template (a graview-template .json) is read as the document inside it.\n\n graview docs <entry> [--out <dir>] [--views <module>]\n Writes llms.txt and agents.md next to the entry, or into <dir>.\n\n graview describe <entry> [--as <role>] [--views <module>] [--place <slug|id>]\n Reads the app out: what a blank installation meets and in what order,\n what is drawn and what falls back, the hues, what a seat may do, how a\n model is reached, what is judged. The rung between check and a browser\n \u2014 \"run it and look\" for something that cannot see.\n --place <slug|id> [--seed <snapshot.json>] [--width <px>] [--id <who>] says what one\n place shows that seat instead: headings, figures, lists and problems.\n\n graview lens <name> --roles a,b,c [--binds fields|entities] [--dir <dir>]\n Writes a lens that compiles: the role check that fails loudly, the\n createXLens factory, three fidelities, pick targets \u2014 and beside it a\n REUSE TEST in a domain the app is not about, red until you make the\n claim true. If you cannot make it pass, you wrote a view, and a view\n is a legitimate thing to have written.\n\n graview figure <entry> --kind <kind> [--name <shipped>]\n [--from \"<what the thing is>\"] [--judge <file|->]\n Prints the figure line to paste into defineNode. With --name it is one\n of the shipped drawings; with neither, it suggests the nearest one by\n name and says so. --from prints the brief to hand a model \u2014 the rules,\n the angle and a shipped figure as the style \u2014 and --judge reads the\n answer back, holds it to the rules graview check holds a figure to, and\n prints the line. Nine shipped figures is a vocabulary to start from,\n not a vocabulary to finish in.\n";
6
6
  /**
7
7
  * THE ENTRY A COMMAND IS ABOUT: `--document <file>` when given, otherwise
8
8
  * the module named where the command expects it. A document is JSON a host
package/dist/columns.d.ts CHANGED
@@ -27,7 +27,7 @@ export interface Choice {
27
27
  export declare function choiceOf(schema: AnySchema, kind: string, field: string): Choice | undefined;
28
28
  /**
29
29
  * THE COLUMNS, IN THE FIELD'S DECLARED ORDER — "todo, doing, done" as the
30
- * declaration lists them, never alphabetised — each said as the declaration
30
+ * declaration lists them, never alphabetized — each said as the declaration
31
31
  * says the value. When a record may have no value, a last column holds
32
32
  * those ("No status"), as a grouped list puts its "No …" group last: the
33
33
  * board's columns are the work's order, and the unsorted pile follows it.
package/dist/columns.js CHANGED
@@ -23,7 +23,7 @@ export function choiceOf(schema, kind, field) {
23
23
  }
24
24
  /**
25
25
  * THE COLUMNS, IN THE FIELD'S DECLARED ORDER — "todo, doing, done" as the
26
- * declaration lists them, never alphabetised — each said as the declaration
26
+ * declaration lists them, never alphabetized — each said as the declaration
27
27
  * says the value. When a record may have no value, a last column holds
28
28
  * those ("No status"), as a grouped list puts its "No …" group last: the
29
29
  * board's columns are the work's order, and the unsorted pile follows it.
@@ -1,5 +1,5 @@
1
1
  export { describePlace, placeText } from "./document/describe-place.js";
2
2
  export { columnActs, columnMoves, columnOf, columnReach, columnSteps, statusColumns } from "./columns.js";
3
3
  export type { ColumnMove, ColumnReach, StatusColumn } from "./columns.js";
4
- export type { DescribedItem, DescribedPart, DescribedProblem, DescribePlaceOptions, DescribePlaceResult, PlaceDescription } from "./document/describe-place.js";
4
+ export type { DescribedItem, DescribedMasthead, DescribedPart, DescribedProblem, DescribePlaceOptions, DescribePlaceResult, PlaceDescription } from "./document/describe-place.js";
5
5
  //# sourceMappingURL=describe.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"describe.d.ts","sourceRoot":"","sources":["../src/describe.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAOxE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC1G,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC1E,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"describe.d.ts","sourceRoot":"","sources":["../src/describe.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAOxE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC1G,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC1E,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,aAAa,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { type Finding } from "./findings.js";
2
+ import type { BrandSpec } from "./schema.js";
3
+ export interface BrandCheckOptions {
4
+ /** Web fonts the host serves itself, beyond `DOCUMENT_FONTS`. */
5
+ readonly fonts?: readonly string[];
6
+ /** Where the brand sits in what is judged: "brand" in a document, "edits.3" in an edit. */
7
+ readonly at?: string;
8
+ }
9
+ export declare function brandFindings(brand: Partial<BrandSpec> | undefined, options?: BrandCheckOptions): Finding[];
10
+ //# sourceMappingURL=brand-check.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brand-check.d.ts","sourceRoot":"","sources":["../../src/document/brand-check.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAU7C,MAAM,WAAW,iBAAiB;IAChC,iEAAiE;IACjE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,EAAE,CAwB/G"}
@@ -0,0 +1,33 @@
1
+ import { accentProblem, documentSchemes } from "../theme/accent.js";
2
+ import { fontProblem } from "../theme/fonts.js";
3
+ import { markProblem } from "../theme/marks.js";
4
+ import { error, warning } from "./findings.js";
5
+ export function brandFindings(brand, options = {}) {
6
+ const out = [];
7
+ if (!brand)
8
+ return out;
9
+ const at = options.at ?? "brand";
10
+ const marks = [
11
+ ["logo", typeof brand.logo === "string" ? brand.logo : brand.logo?.src, typeof brand.logo === "string" ? "logo" : "logo.src"],
12
+ ["page icon", brand.favicon, "favicon"],
13
+ ];
14
+ for (const [what, mark, path] of marks) {
15
+ const problem = mark === undefined ? null : markProblem(mark);
16
+ if (problem)
17
+ out.push(error("brand-mark", `${at}.${path}`, `the ${what} cannot be drawn as given, because ${problem}`, "Graview draws an image exactly as it is given, never rewritten: remove that and give it again, or give the path Graview Cloud's add_image answers with"));
18
+ }
19
+ for (const [role, value] of Object.entries(brand.typography ?? {})) {
20
+ const problem = typeof value === "string" ? fontProblem(value, options.fonts) : null;
21
+ if (problem)
22
+ out.push(error("brand-font", `${at}.typography.${role}`, `the ${role} face cannot be used: ${problem}`, 'say "system-serif", "system-sans" or "system-mono", or a face on the list'));
23
+ }
24
+ if (brand.accent) {
25
+ const refused = accentProblem(brand.accent);
26
+ if (refused) {
27
+ const drawn = documentSchemes(brand.accent).ok ? "The app draws a shade it moved to read, not the color given." : "The app keeps Graview's colors.";
28
+ out.push(warning("brand-accent", `${at}.accent`, `${refused.sentence} ${drawn}`, refused.suggestion ? `say { "accent": "${refused.suggestion}" }` : "pick another color"));
29
+ }
30
+ }
31
+ return out;
32
+ }
33
+ //# sourceMappingURL=brand-check.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brand-check.js","sourceRoot":"","sources":["../../src/document/brand-check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAgB,MAAM,eAAe,CAAC;AAkB7D,MAAM,UAAU,aAAa,CAAC,KAAqC,EAAE,UAA6B,EAAE;IAClG,MAAM,GAAG,GAAc,EAAE,CAAC;IAC1B,IAAI,CAAC,KAAK;QAAE,OAAO,GAAG,CAAC;IACvB,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,OAAO,CAAC;IACjC,MAAM,KAAK,GAA2C;QACpD,CAAC,MAAM,EAAE,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;QAC7H,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC;KACxC,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC9D,IAAI,OAAO;YAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,OAAO,IAAI,sCAAsC,OAAO,EAAE,EAAE,wJAAwJ,CAAC,CAAC,CAAC;IACpR,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC;QACnE,MAAM,OAAO,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACrF,IAAI,OAAO;YAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,EAAE,eAAe,IAAI,EAAE,EAAE,OAAO,IAAI,yBAAyB,OAAO,EAAE,EAAE,2EAA2E,CAAC,CAAC,CAAC;IACrM,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,8DAA8D,CAAC,CAAC,CAAC,iCAAiC,CAAC;YACpJ,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,QAAQ,IAAI,KAAK,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,oBAAoB,OAAO,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC7K,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { Brand } from "../theme/types.js";
2
+ import { type Finding } from "./findings.js";
3
+ import type { GraviewDocument } from "./schema.js";
4
+ export declare function brandOf(document: GraviewDocument, findings: Finding[]): Brand;
5
+ /** The app's money (FR-100): what `{x | money}` says, from the brand's currency and locale alone. */
6
+ export declare function moneyOf(document: GraviewDocument): {
7
+ currency?: string;
8
+ locale?: string;
9
+ };
10
+ //# sourceMappingURL=brand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brand.d.ts","sourceRoot":"","sources":["../../src/document/brand.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAYnD,wBAAgB,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,CA6B7E;AAED,qGAAqG;AACrG,wBAAgB,OAAO,CAAC,QAAQ,EAAE,eAAe,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAGzF"}
@@ -0,0 +1,49 @@
1
+ import { SCHEMES } from "../theme/palettes.js";
2
+ import { documentSchemes } from "../theme/accent.js";
3
+ import { stackOf } from "../theme/fonts.js";
4
+ import { warning } from "./findings.js";
5
+ /*
6
+ * THE DOCUMENT'S BRAND, AS THE FACES DRAW IT (FR-124, FR-125): each key
7
+ * of `brand` onto the TypeScript `Brand` the theme machinery already reads
8
+ * — `themeCss` for the faces and the shape, `hueFor` for the accents, the
9
+ * wordmark for the logo — and the document's `name` and `description` as
10
+ * the name and the line under it. Every document has one, so an app is
11
+ * called what its document calls it on both faces. What the keys may hold
12
+ * is judged by the checker (brand-check.ts), not here: this is what a page
13
+ * compiles with.
14
+ */
15
+ export function brandOf(document, findings) {
16
+ const spec = document.brand ?? {};
17
+ const derived = spec.accent ? documentSchemes(spec.accent) : undefined;
18
+ // A color that cannot be read is not a reason to refuse an app: it wears the default colors and says why.
19
+ // The checker says which pair, its ratio and a shade that would pass (brand-check.ts, FR-126); a page says only this.
20
+ if (derived && !derived.ok)
21
+ findings.push(warning("brand", "brand.accent", `that accent cannot make a readable brand, so the app keeps Graview's colors: ${derived.why}`, "pick a color further from orange-red, or a darker one"));
22
+ const logo = typeof spec.logo === "string" ? { src: spec.logo } : spec.logo;
23
+ const name = spec.name ?? document.name;
24
+ // A face is written into a style sheet, so one that could end its rule or load is left out even where the checker never ran.
25
+ const typography = spec.typography
26
+ ? Object.fromEntries(Object.entries(spec.typography)
27
+ .filter(([, value]) => typeof value === "string" && !/url\(|@import|[;{}<>\\]/i.test(value))
28
+ .map(([role, value]) => [role, stackOf(value)]))
29
+ : undefined;
30
+ return {
31
+ name,
32
+ schemes: derived?.ok ? derived.schemes : SCHEMES,
33
+ ...(spec.currency ? { currency: spec.currency } : {}),
34
+ ...(spec.locale ? { locale: spec.locale } : {}),
35
+ ...(logo ? { logo: logo.src, logoAlt: logo.alt ?? name } : {}),
36
+ ...(spec.favicon ? { favicon: spec.favicon } : {}),
37
+ ...(document.description ? { subtitle: document.description } : {}),
38
+ ...(typography ? { typography } : {}),
39
+ ...(spec.shape ? { shape: spec.shape } : {}),
40
+ ...(spec.accents ? { accents: spec.accents } : {}),
41
+ ...(spec.scheme ? { scheme: spec.scheme } : {}),
42
+ };
43
+ }
44
+ /** The app's money (FR-100): what `{x | money}` says, from the brand's currency and locale alone. */
45
+ export function moneyOf(document) {
46
+ const { currency, locale } = document.brand ?? {};
47
+ return { ...(currency ? { currency } : {}), ...(locale ? { locale } : {}) };
48
+ }
49
+ //# sourceMappingURL=brand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brand.js","sourceRoot":"","sources":["../../src/document/brand.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"compile-checked.d.ts","sourceRoot":"","sources":["../../src/document/compile-checked.ts"],"names":[],"mappings":"AAEA,OAAO,EAA6E,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAW3K;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,GAAE,cAAmB,GAAG,gBAAgB,GAAG,eAAe,CAqB9G"}
1
+ {"version":3,"file":"compile-checked.d.ts","sourceRoot":"","sources":["../../src/document/compile-checked.ts"],"names":[],"mappings":"AAGA,OAAO,EAA6E,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAW3K;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,GAAE,cAAmB,GAAG,gBAAgB,GAAG,eAAe,CAwB9G"}
@@ -1,5 +1,6 @@
1
1
  import { checkApp } from "../cli/check.js";
2
2
  import { actFindings } from "./act-findings.js";
3
+ import { brandFindings } from "./brand-check.js";
3
4
  import { compileDocumentWithoutCheck, frameworkPath, inDocumentWords, readDocument } from "./compile.js";
4
5
  import { hasErrors } from "./findings.js";
5
6
  import { viewBraces } from "./views.js";
@@ -23,11 +24,14 @@ export function compileDocument(raw, options = {}) {
23
24
  return read ? { ok: false, findings: [...compiled.findings, ...actFindings(read)] } : compiled;
24
25
  }
25
26
  const { app, document } = compiled;
26
- const own = actFindings(document);
27
+ // What the brand may hold (FR-124): a mark that could act or load, a face from off the list.
28
+ const own = [...actFindings(document), ...brandFindings(document.brand, options.fonts ? { fonts: options.fonts } : {})];
27
29
  if (hasErrors(own))
28
30
  return { ok: false, findings: [...compiled.findings, ...own] };
29
31
  // Braces in a block's plain words (FR-99): asked here, with the checker, and not of a page that compiles without it.
30
- const findings = [...compiled.findings, ...own, ...viewBraces(document.views, "views", undefined, document.lenses)];
32
+ // The checker's sentence for an accent (FR-126) says what the compile's did, and more: once is enough.
33
+ const said = own.some((f) => f.code === "brand-accent") ? compiled.findings.filter((f) => !(f.code === "brand" && f.path === "brand.accent")) : compiled.findings;
34
+ const findings = [...said, ...own, ...viewBraces(document.views, "views", undefined, document.lenses)];
31
35
  const check = checkApp(app);
32
36
  for (const f of check.findings) {
33
37
  const finding = { severity: f.severity === "error" ? "error" : f.severity === "warning" ? "warning" : "note", code: `check:${f.code}`, path: frameworkPath(f.where, document), message: f.message, ...(f.fix ? { fix: f.fix } : {}) };
@@ -1 +1 @@
1
- {"version":3,"file":"compile-checked.js","sourceRoot":"","sources":["../../src/document/compile-checked.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compile-checked.js","sourceRoot":"","sources":["../../src/document/compile-checked.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,12 @@ export interface CompileOptions {
13
13
  * nothing, and the values it was meant to keep would be dropped (FR-22).
14
14
  */
15
15
  readonly previous?: GraviewDocument;
16
+ /**
17
+ * Web fonts this host serves itself, beyond `DOCUMENT_FONTS` (FR-124):
18
+ * a document's `brand.typography` may name these too. Read by the
19
+ * checked compile (`@graview/core/check`); a page draws what it is given.
20
+ */
21
+ readonly fonts?: readonly string[];
16
22
  }
17
23
  /** Parse and validate without compiling — the document's own sentences, before the framework's. */
18
24
  export declare function readDocument(raw: unknown): {
@@ -1 +1 @@
1
- {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../src/document/compile.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAA6B,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAGL,KAAK,OAAO,EAGZ,KAAK,eAAe,EAErB,MAAM,aAAa,CAAC;AAOrB,OAAO,EAML,KAAK,SAAS,EAId,KAAK,gBAAgB,EAGrB,KAAK,eAAe,EAErB,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAkBjG,MAAM,WAAW,cAAc;IAC7B,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;CACrC;AAID,mGAAmG;AACnG,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG;IAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,CAoCzH;AA2BD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,eAAe,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAW5E;AAED,sDAAsD;AACtD,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,GAAG,SAAS,SAAS,EAAE,CA+BvF;AAmPD;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,GAAE,cAAmB,GAAG,gBAAgB,GAAG,eAAe,CAS1H;AAuID,4GAA4G;AAC5G,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,MAAM,CAM9E;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAMnG;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../src/document/compile.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAA6B,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAGL,KAAK,OAAO,EAGZ,KAAK,eAAe,EAErB,MAAM,aAAa,CAAC;AAOrB,OAAO,EAML,KAAK,SAAS,EAId,KAAK,gBAAgB,EAGrB,KAAK,eAAe,EAErB,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAkBjG,MAAM,WAAW,cAAc;IAC7B,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAID,mGAAmG;AACnG,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG;IAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,CAoCzH;AA2BD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,eAAe,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAW5E;AAED,sDAAsD;AACtD,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,GAAG,SAAS,SAAS,EAAE,CA+BvF;AAmPD;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,GAAE,cAAmB,GAAG,gBAAgB,GAAG,eAAe,CAS1H;AAgID,4GAA4G;AAC5G,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,MAAM,CAM9E;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAMnG;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { brandFromAccent, SCHEMES } from "../index.js";
1
+ import { brandOf } from "./brand.js";
2
2
  import { ActRefusal } from "../refused.js";
3
3
  import { analyzeExpr } from "./expr/analyze.js";
4
4
  import { ExprSyntaxError, parseExpr } from "./expr/parse.js";
@@ -553,17 +553,8 @@ function planOf(document, findings) {
553
553
  };
554
554
  }
555
555
  // ── brand, views ─────────────────────────────────────────────────────────
556
- let brand;
557
- if (document.brand) {
558
- const { accent, name: wordmark, ...money } = document.brand;
559
- const derived = accent ? brandFromAccent({ accent, base: SCHEMES }) : undefined;
560
- // A colour that cannot be read is not a reason to refuse an app: it wears the default colours and says why.
561
- if (derived && !derived.ok)
562
- findings.push(warning("brand", "brand.accent", `that accent cannot make a readable brand, so the app keeps Graview's colours: ${derived.why}`, "pick a colour further from orange-red, or a darker one"));
563
- // The app's money stands with or without an accent (FR-100).
564
- if (!derived || derived.ok || money.currency || money.locale)
565
- brand = { name: wordmark ?? document.name, schemes: derived?.ok ? derived.schemes : SCHEMES, ...money };
566
- }
556
+ // Every document's: the app is called what its document calls it, with the line under it (FR-124, FR-125).
557
+ const brand = brandOf(document, findings);
567
558
  const viewSpecs = viewsOf(document);
568
559
  const home = homeOf(document);
569
560
  return {
@@ -574,7 +565,7 @@ function planOf(document, findings) {
574
565
  edges: [...edges].map(([name, { from, to, cardinality }]) => [name, { from, to, cardinality }]),
575
566
  acts,
576
567
  rules,
577
- ...(brand ? { brand } : {}),
568
+ brand,
578
569
  ...(Object.keys(viewSpecs).length > 0 ? { viewSpecs } : {}),
579
570
  ...(home ? { home } : {}),
580
571
  };