@graview/core 0.1.9 → 0.1.12
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 +19 -8
- package/dist/app.d.ts +41 -2
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js.map +1 -1
- package/dist/blocks.d.ts +5 -0
- package/dist/blocks.d.ts.map +1 -0
- package/dist/blocks.js +14 -0
- package/dist/blocks.js.map +1 -0
- package/dist/capabilities.js +1 -1
- package/dist/capabilities.js.map +1 -1
- package/dist/check.d.ts +8 -0
- package/dist/check.d.ts.map +1 -0
- package/dist/check.js +19 -0
- package/dist/check.js.map +1 -0
- package/dist/cli/check/arrangement.d.ts.map +1 -1
- package/dist/cli/check/arrangement.js +3 -2
- package/dist/cli/check/arrangement.js.map +1 -1
- package/dist/cli/check/brand.d.ts.map +1 -1
- package/dist/cli/check/brand.js +21 -0
- package/dist/cli/check/brand.js.map +1 -1
- package/dist/cli/check/computed.d.ts +14 -0
- package/dist/cli/check/computed.d.ts.map +1 -0
- package/dist/cli/check/computed.js +34 -0
- package/dist/cli/check/computed.js.map +1 -0
- package/dist/cli/check/hidden-reads.d.ts +4 -0
- package/dist/cli/check/hidden-reads.d.ts.map +1 -0
- package/dist/cli/check/hidden-reads.js +152 -0
- package/dist/cli/check/hidden-reads.js.map +1 -0
- package/dist/cli/check/index.d.ts +2 -0
- package/dist/cli/check/index.d.ts.map +1 -1
- package/dist/cli/check/index.js +2 -0
- package/dist/cli/check/index.js.map +1 -1
- package/dist/cli/check/lenses.d.ts +10 -0
- package/dist/cli/check/lenses.d.ts.map +1 -1
- package/dist/cli/check/lenses.js +37 -19
- package/dist/cli/check/lenses.js.map +1 -1
- package/dist/cli/check/relations.d.ts.map +1 -1
- package/dist/cli/check/relations.js +2 -1
- package/dist/cli/check/relations.js.map +1 -1
- package/dist/cli/check/views.d.ts.map +1 -1
- package/dist/cli/check/views.js +13 -3
- package/dist/cli/check/views.js.map +1 -1
- package/dist/cli/check.d.ts.map +1 -1
- package/dist/cli/check.js +5 -1
- package/dist/cli/check.js.map +1 -1
- package/dist/cli/create.d.ts.map +1 -1
- package/dist/cli/create.js +1 -1
- package/dist/cli/create.js.map +1 -1
- package/dist/cli/describe.d.ts.map +1 -1
- package/dist/cli/describe.js +66 -1
- package/dist/cli/describe.js.map +1 -1
- package/dist/cli/index.d.ts +2 -2
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +23 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/columns.d.ts +73 -0
- package/dist/columns.d.ts.map +1 -0
- package/dist/columns.js +100 -0
- package/dist/columns.js.map +1 -0
- package/dist/conformance/index.js +1 -1
- package/dist/conformance/index.js.map +1 -1
- package/dist/describe.d.ts +5 -0
- package/dist/describe.d.ts.map +1 -0
- package/dist/describe.js +19 -0
- package/dist/describe.js.map +1 -0
- package/dist/document/blocks.d.ts +187 -0
- package/dist/document/blocks.d.ts.map +1 -0
- package/dist/document/blocks.js +372 -0
- package/dist/document/blocks.js.map +1 -0
- package/dist/document/compile-checked.d.ts +8 -0
- package/dist/document/compile-checked.d.ts.map +1 -0
- package/dist/document/compile-checked.js +36 -0
- package/dist/document/compile-checked.js.map +1 -0
- package/dist/document/compile.d.ts +8 -6
- package/dist/document/compile.d.ts.map +1 -1
- package/dist/document/compile.js +68 -46
- package/dist/document/compile.js.map +1 -1
- package/dist/document/computed-values.d.ts +33 -0
- package/dist/document/computed-values.d.ts.map +1 -0
- package/dist/document/computed-values.js +60 -0
- package/dist/document/computed-values.js.map +1 -0
- package/dist/document/computed.d.ts +42 -0
- package/dist/document/computed.d.ts.map +1 -0
- package/dist/document/computed.js +173 -0
- package/dist/document/computed.js.map +1 -0
- package/dist/document/describe-place.d.ts +95 -0
- package/dist/document/describe-place.d.ts.map +1 -0
- package/dist/document/describe-place.js +286 -0
- package/dist/document/describe-place.js.map +1 -0
- package/dist/document/diff.d.ts.map +1 -1
- package/dist/document/diff.js +78 -4
- package/dist/document/diff.js.map +1 -1
- package/dist/document/edit.d.ts +1 -1
- package/dist/document/edit.d.ts.map +1 -1
- package/dist/document/edit.js +908 -107
- package/dist/document/edit.js.map +1 -1
- package/dist/document/expr/analyze.d.ts +22 -0
- package/dist/document/expr/analyze.d.ts.map +1 -1
- package/dist/document/expr/analyze.js +51 -4
- package/dist/document/expr/analyze.js.map +1 -1
- package/dist/document/expr/evaluate.d.ts +7 -1
- package/dist/document/expr/evaluate.d.ts.map +1 -1
- package/dist/document/expr/evaluate.js +121 -8
- package/dist/document/expr/evaluate.js.map +1 -1
- package/dist/document/expr/index.d.ts +1 -1
- package/dist/document/expr/index.d.ts.map +1 -1
- package/dist/document/expr/index.js +1 -1
- package/dist/document/expr/index.js.map +1 -1
- package/dist/document/expr/parse.d.ts +2 -1
- package/dist/document/expr/parse.d.ts.map +1 -1
- package/dist/document/expr/parse.js +6 -3
- package/dist/document/expr/parse.js.map +1 -1
- package/dist/document/expr/print.d.ts.map +1 -1
- package/dist/document/expr/print.js +4 -2
- package/dist/document/expr/print.js.map +1 -1
- package/dist/document/graview-template.d.ts +20 -12
- package/dist/document/graview-template.d.ts.map +1 -1
- package/dist/document/graview-template.js +5 -44
- package/dist/document/graview-template.js.map +1 -1
- package/dist/document/index.d.ts +8 -8
- package/dist/document/index.d.ts.map +1 -1
- package/dist/document/index.js +5 -5
- package/dist/document/index.js.map +1 -1
- package/dist/document/instantiate-template.d.ts +14 -0
- package/dist/document/instantiate-template.d.ts.map +1 -0
- package/dist/document/instantiate-template.js +46 -0
- package/dist/document/instantiate-template.js.map +1 -0
- package/dist/document/rules.d.ts +2 -1
- package/dist/document/rules.d.ts.map +1 -1
- package/dist/document/rules.js +5 -1
- package/dist/document/rules.js.map +1 -1
- package/dist/document/schema.d.ts +46 -5
- package/dist/document/schema.d.ts.map +1 -1
- package/dist/document/schema.js +31 -3
- package/dist/document/schema.js.map +1 -1
- package/dist/document/template.d.ts +33 -2
- package/dist/document/template.d.ts.map +1 -1
- package/dist/document/template.js +156 -18
- package/dist/document/template.js.map +1 -1
- package/dist/document/thumbnail.d.ts +5 -4
- package/dist/document/thumbnail.d.ts.map +1 -1
- package/dist/document/thumbnail.js +29 -21
- package/dist/document/thumbnail.js.map +1 -1
- package/dist/document/to-document.d.ts.map +1 -1
- package/dist/document/to-document.js +6 -1
- package/dist/document/to-document.js.map +1 -1
- package/dist/document/views.d.ts +58 -3
- package/dist/document/views.d.ts.map +1 -1
- package/dist/document/views.js +356 -24
- package/dist/document/views.js.map +1 -1
- package/dist/figures.d.ts +3 -0
- package/dist/figures.d.ts.map +1 -0
- package/dist/figures.js +14 -0
- package/dist/figures.js.map +1 -0
- package/dist/index.d.ts +3 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -7
- package/dist/index.js.map +1 -1
- package/dist/mutations/types.d.ts +12 -0
- package/dist/mutations/types.d.ts.map +1 -1
- package/dist/places.d.ts +197 -0
- package/dist/places.d.ts.map +1 -0
- package/dist/places.js +376 -0
- package/dist/places.js.map +1 -0
- package/dist/scaffold/domain.js +1 -1
- package/dist/scaffold/from-template.d.ts.map +1 -1
- package/dist/scaffold/from-template.js +3 -3
- package/dist/scaffold/from-template.js.map +1 -1
- package/dist/scaffold/project.d.ts.map +1 -1
- package/dist/scaffold/project.js +13 -0
- package/dist/scaffold/project.js.map +1 -1
- package/dist/scaffold/ui.d.ts.map +1 -1
- package/dist/scaffold/ui.js +13 -10
- package/dist/scaffold/ui.js.map +1 -1
- package/dist/scene-districts.d.ts +5 -1
- package/dist/scene-districts.d.ts.map +1 -1
- package/dist/scene-districts.js +11 -4
- package/dist/scene-districts.js.map +1 -1
- package/dist/scene.d.ts +7 -0
- package/dist/scene.d.ts.map +1 -0
- package/dist/scene.js +16 -0
- package/dist/scene.js.map +1 -0
- package/dist/schema/define-node.d.ts +3 -0
- package/dist/schema/define-node.d.ts.map +1 -1
- package/dist/schema/define-node.js +3 -1
- package/dist/schema/define-node.js.map +1 -1
- package/dist/schema/types.d.ts +17 -0
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/theme/types.d.ts +9 -0
- package/dist/theme/types.d.ts.map +1 -1
- package/dist/theme/types.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/dist/views/types.d.ts +19 -0
- package/dist/views/types.d.ts.map +1 -1
- package/dist/views/types.js +14 -0
- package/dist/views/types.js.map +1 -1
- package/package.json +21 -1
package/dist/places.js
ADDED
|
@@ -0,0 +1,376 @@
|
|
|
1
|
+
import { parseArrangement } from "./arrange.js";
|
|
2
|
+
import { defOf } from "./schema/zod.js";
|
|
3
|
+
import { placeSlug } from "./views/types.js";
|
|
4
|
+
/**
|
|
5
|
+
* THE LENSES THIS FRAMEWORK SHIPS, AND WHAT EACH ONE TAKES AS DATA (FR-79).
|
|
6
|
+
*
|
|
7
|
+
* One table, read by everything that has to agree about a declared lens:
|
|
8
|
+
* `graview check` (what it holds a declaration to), `graview describe`
|
|
9
|
+
* (what it says is drawn), `placesOf` (what a host lists) and the
|
|
10
|
+
* primitives that draw it (which factory, with which options). A lens is a
|
|
11
|
+
* place because this says it can be one, and the four of them cannot
|
|
12
|
+
* disagree because none of them has a list of its own.
|
|
13
|
+
*
|
|
14
|
+
* `options` is what a declaration may hand the factory beyond its roles —
|
|
15
|
+
* data only. What a factory needs that cannot be data (a timeline's
|
|
16
|
+
* `format`, a calendar's `today`) is derived where it is drawn.
|
|
17
|
+
*/
|
|
18
|
+
export const SHIPPED_LENSES = {
|
|
19
|
+
timeline: { binds: "fields", requiredRoles: ["start", "end"], options: ["columns", "extent", "tick", "minWindow", "arranging"] },
|
|
20
|
+
calendar: { binds: "fields", requiredRoles: ["start"], options: ["today", "range", "weekStartsOn", "perCell", "horizon", "arranging"] },
|
|
21
|
+
coverage: { binds: "entities", requiredRoles: ["rows", "columns", "link"], options: ["rowRef", "rowGroup", "groupOrder", "requiredGroups", "requiredVia", "badge", "columnGroup"] },
|
|
22
|
+
board: { binds: "entities", requiredRoles: ["slots", "x", "y", "fill"], options: ["fillFrom", "slotCode", "zones", "aspect", "emptyLabel", "pickTarget", "arranging", "arrange"] },
|
|
23
|
+
plan: { binds: "entities", requiredRoles: ["regions", "outline"], options: ["hues", "aspect", "undrawnLabel", "strayLabel", "draw", "place", "help"] },
|
|
24
|
+
reach: { binds: "nothing", requiredRoles: [], options: [] },
|
|
25
|
+
/**
|
|
26
|
+
* A PLACE DRAWN FROM BLOCKS (FR-81): `options.blocks` is a list from the
|
|
27
|
+
* closed set the home and every card are written in — headlines, figures,
|
|
28
|
+
* lists of records drawn by their own cards and rows — about no one
|
|
29
|
+
* record, standing on the kind its `on` names. The data-only way to a
|
|
30
|
+
* picture no shipped lens draws.
|
|
31
|
+
*/
|
|
32
|
+
blocks: { binds: "nothing", requiredRoles: [], options: ["blocks"] },
|
|
33
|
+
/**
|
|
34
|
+
* A STATUS BOARD (FR-97): a kind's records in columns by one choice field
|
|
35
|
+
* — `bindings: { task: { column: "status" } }` — in the field's declared
|
|
36
|
+
* order, each drawn by its card, and moved between columns only by an act
|
|
37
|
+
* the seat may run that sets the field (`columnMoves`).
|
|
38
|
+
*/
|
|
39
|
+
columns: { binds: "fields", requiredRoles: ["column"], options: [] },
|
|
40
|
+
};
|
|
41
|
+
/** The shipped lenses' names, in the order the table gives them. */
|
|
42
|
+
export const SHIPPED_LENS_NAMES = Object.keys(SHIPPED_LENSES);
|
|
43
|
+
export const isShippedLens = (name) => Object.prototype.hasOwnProperty.call(SHIPPED_LENSES, name);
|
|
44
|
+
/** The roles a lens requires: its own declaration's, or the shipped lens's when it names none. */
|
|
45
|
+
export function requiredRolesOf(lens) {
|
|
46
|
+
return lens.requiredRoles ?? (isShippedLens(lens.name) ? SHIPPED_LENSES[lens.name].requiredRoles : []);
|
|
47
|
+
}
|
|
48
|
+
/** Which shape its bindings take: its own word, or the shipped lens's when it says none. */
|
|
49
|
+
export function bindsOf(lens) {
|
|
50
|
+
if (lens.binds)
|
|
51
|
+
return lens.binds;
|
|
52
|
+
return isShippedLens(lens.name) && SHIPPED_LENSES[lens.name].binds === "entities" ? "entities" : "fields";
|
|
53
|
+
}
|
|
54
|
+
const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
55
|
+
/** The values an enum field takes, read from its schema; empty when it is not one. */
|
|
56
|
+
function enumValues(schema, kind, field) {
|
|
57
|
+
const shape = schema.tryDefinition(kind)?.fields.shape;
|
|
58
|
+
// Read from zod's own definition, through optional and default, rather than through the JSON-schema writer a page need not carry.
|
|
59
|
+
let def = defOf(shape?.[field]);
|
|
60
|
+
while (def && (def.type === "optional" || def.type === "default" || def.type === "nullable" || def.type === "prefault"))
|
|
61
|
+
def = defOf(def.innerType);
|
|
62
|
+
if (def?.type !== "enum")
|
|
63
|
+
return [];
|
|
64
|
+
const values = def.entries ? Object.values(def.entries) : (def.values ?? []);
|
|
65
|
+
return values.filter((value) => typeof value === "string");
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* EVERY DECLARED LENS, SORTED INTO WHAT DRAWS AND WHAT DOES NOT.
|
|
69
|
+
*
|
|
70
|
+
* A lens draws when it names a lens this framework ships and gives itself a
|
|
71
|
+
* `title` — the title is what makes it a place: a pill on the bar, a
|
|
72
|
+
* drive-in from altitude, a page at `/places/<as>`. A lens without one is
|
|
73
|
+
* bindings the checker holds, as every declared lens was before FR-79. A
|
|
74
|
+
* titled lens whose options or bindings cannot make a picture does not draw,
|
|
75
|
+
* and says why here, so the checker and the describer give the same reason
|
|
76
|
+
* the picture is missing.
|
|
77
|
+
*/
|
|
78
|
+
export function declaredLenses(app) {
|
|
79
|
+
const drawn = [];
|
|
80
|
+
const undrawn = [];
|
|
81
|
+
const findings = [];
|
|
82
|
+
const kinds = new Set(app.schema.kinds);
|
|
83
|
+
const edges = new Set();
|
|
84
|
+
for (const kind of kinds)
|
|
85
|
+
for (const edge of Object.keys(app.schema.tryDefinition(kind)?.edges ?? {}))
|
|
86
|
+
edges.add(edge);
|
|
87
|
+
const fieldsOf = (kind) => Object.keys(app.schema.tryDefinition(kind)?.fields.shape ?? {});
|
|
88
|
+
/** Titles already taken, per kind, so two places on one kind cannot share an address. */
|
|
89
|
+
const taken = new Map();
|
|
90
|
+
(app.lenses ?? []).forEach((lens, index) => {
|
|
91
|
+
const at = `lenses.${index}`;
|
|
92
|
+
const title = typeof lens.title === "string" && lens.title.trim().length > 0 ? lens.title.trim() : undefined;
|
|
93
|
+
const skip = (why, finding) => {
|
|
94
|
+
undrawn.push({ index, name: lens.name, ...(title ? { title } : {}), why });
|
|
95
|
+
if (finding)
|
|
96
|
+
findings.push({ severity: "warning", ...finding });
|
|
97
|
+
};
|
|
98
|
+
if (!isShippedLens(lens.name)) {
|
|
99
|
+
if (title)
|
|
100
|
+
skip(`"${lens.name}" is not a lens this framework draws`, { code: "lens-not-shipped", path: `${at}.name`, message: `"${title}" names the lens "${lens.name}", which the framework does not ship, so nothing draws it.`, fix: `Name one of ${SHIPPED_LENS_NAMES.join(", ")} — or register the view yourself and drop the title.` });
|
|
101
|
+
else
|
|
102
|
+
skip("it is a lens this app wrote, drawn by the app's own views");
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
if (!title)
|
|
106
|
+
return skip("it has no title, so it is bindings the checker holds and no place");
|
|
107
|
+
const shipped = SHIPPED_LENSES[lens.name];
|
|
108
|
+
const given = isRecord(lens.options) ? lens.options : {};
|
|
109
|
+
if (lens.options !== undefined && !isRecord(lens.options)) {
|
|
110
|
+
return skip("its options are not an object", { code: "lens-options-not-an-object", path: `${at}.options`, message: `"${title}" has options that are not an object.`, fix: `Write them as { "<option>": <value> }, or drop them.` });
|
|
111
|
+
}
|
|
112
|
+
for (const key of Object.keys(given)) {
|
|
113
|
+
if (!shipped.options.includes(key)) {
|
|
114
|
+
findings.push({ severity: "warning", code: "lens-option-unknown", path: `${at}.options.${key}`, message: `The ${lens.name} lens takes no option "${key}", so "${title}" ignores it.`, fix: shipped.options.length === 0 ? `The ${lens.name} lens takes no options; drop it.` : `Use one of: ${shipped.options.join(", ")}.` });
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
const options = {};
|
|
118
|
+
for (const key of shipped.options)
|
|
119
|
+
if (given[key] !== undefined)
|
|
120
|
+
options[key] = given[key];
|
|
121
|
+
if (lens.arrangedBy)
|
|
122
|
+
options["arrangedBy"] = parseArrangement(lens.arrangedBy);
|
|
123
|
+
const bindings = isRecord(lens.bindings) ? lens.bindings : {};
|
|
124
|
+
let stands = [];
|
|
125
|
+
let across;
|
|
126
|
+
const bad = (path, message, fix) => skip(message, { code: "lens-cannot-draw", path, message: `"${title}" cannot draw: ${message}.`, fix });
|
|
127
|
+
if (shipped.binds === "fields") {
|
|
128
|
+
const bound = Object.keys(bindings).filter((kind) => isRecord(bindings[kind]));
|
|
129
|
+
const unknown = bound.filter((kind) => !kinds.has(kind));
|
|
130
|
+
if (bound.length === 0)
|
|
131
|
+
return bad(`${at}.bindings`, "it binds no kind", `Bind a kind's fields: "bindings": { "<kind>": { ${shipped.requiredRoles.map((role) => `"${role}": "<field>"`).join(", ")} } }.`);
|
|
132
|
+
if (unknown.length > 0)
|
|
133
|
+
return; // the binding check says so, as an error
|
|
134
|
+
options["bindings"] = bindings;
|
|
135
|
+
stands = bound;
|
|
136
|
+
if (lens.name === "timeline") {
|
|
137
|
+
/*
|
|
138
|
+
* A TIMELINE'S COLUMNS. Named in the options, or read from the field
|
|
139
|
+
* its `column` role is bound to when that field is a set of values —
|
|
140
|
+
* a weekday, a lane. A timeline with neither has nowhere to put a
|
|
141
|
+
* span, so it says so rather than drawing an empty week.
|
|
142
|
+
*/
|
|
143
|
+
const columns = given["columns"];
|
|
144
|
+
if (Array.isArray(columns)) {
|
|
145
|
+
options["columns"] = columns.map((column) => (typeof column === "string" ? { id: column, label: column } : column));
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
const derived = bound.flatMap((kind) => {
|
|
149
|
+
const roles = bindings[kind];
|
|
150
|
+
const field = typeof roles["column"] === "string" ? roles["column"] : typeof roles["columns"] === "string" ? roles["columns"] : undefined;
|
|
151
|
+
return field ? enumValues(app.schema, kind, field) : [];
|
|
152
|
+
});
|
|
153
|
+
const values = [...new Set(derived)];
|
|
154
|
+
if (values.length === 0)
|
|
155
|
+
return bad(`${at}.options.columns`, "it has no columns — no option names them and no `column` role is bound to a field of set values", `Bind "column" to a field whose values are the columns, or say "columns": ["mon", "tue", …].`);
|
|
156
|
+
options["columns"] = values.map((value) => ({ id: value, label: value.toUpperCase() }));
|
|
157
|
+
}
|
|
158
|
+
if (options["extent"] === undefined)
|
|
159
|
+
options["extent"] = 1440;
|
|
160
|
+
}
|
|
161
|
+
if (lens.name === "columns") {
|
|
162
|
+
// A board's columns are a field's choices: a field of free text or numbers has no columns to stand in.
|
|
163
|
+
for (const kind of bound) {
|
|
164
|
+
const field = bindings[kind]["column"];
|
|
165
|
+
if (typeof field !== "string" || !fieldsOf(kind).includes(field))
|
|
166
|
+
return; // the binding check says so, as an error
|
|
167
|
+
if (enumValues(app.schema, kind, field).length === 0) {
|
|
168
|
+
return bad(`${at}.bindings.${kind}.column`, `its column field "${field}" is not a choice`, `Bind "column" to a choice field of ${kind}, like a status.`);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
if (lens.name === "calendar" && options["today"] !== undefined && !(typeof options["today"] === "string" && /^\d{4}-\d{2}-\d{2}$/.test(options["today"]))) {
|
|
173
|
+
return bad(`${at}.options.today`, "its today is not a date", `Write it as "YYYY-MM-DD", or leave it out and the calendar opens on the day it is drawn.`);
|
|
174
|
+
}
|
|
175
|
+
if (lens.name === "calendar" && options["range"] !== undefined && !["day", "week", "month", "quarter", "year", "years", "agenda"].includes(options["range"])) {
|
|
176
|
+
return bad(`${at}.options.range`, `its range "${String(options["range"])}" is not one a calendar opens at`, `Use one of: day, week, month, quarter, year, agenda.`);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
else if (shipped.binds === "entities") {
|
|
180
|
+
/** A role's binding as the factory reads it: a kind, an edge, a path or a field name. */
|
|
181
|
+
const role = (name) => {
|
|
182
|
+
const binding = bindings[name];
|
|
183
|
+
if (!isRecord(binding))
|
|
184
|
+
return undefined;
|
|
185
|
+
if (typeof binding["kind"] === "string")
|
|
186
|
+
return binding["kind"];
|
|
187
|
+
if (typeof binding["edge"] === "string")
|
|
188
|
+
return binding["edge"];
|
|
189
|
+
if (Array.isArray(binding["path"]))
|
|
190
|
+
return { path: binding["path"] };
|
|
191
|
+
if (typeof binding["field"] === "string")
|
|
192
|
+
return binding["field"];
|
|
193
|
+
return undefined;
|
|
194
|
+
};
|
|
195
|
+
for (const name of shipped.requiredRoles)
|
|
196
|
+
if (role(name) === undefined)
|
|
197
|
+
return; // the binding check says so, as an error
|
|
198
|
+
const kindRole = lens.name === "coverage" ? "rows" : lens.name === "board" ? "slots" : "regions";
|
|
199
|
+
const main = role(kindRole);
|
|
200
|
+
if (!kinds.has(main))
|
|
201
|
+
return;
|
|
202
|
+
if (lens.name === "coverage") {
|
|
203
|
+
const columns = role("columns");
|
|
204
|
+
if (!kinds.has(columns))
|
|
205
|
+
return;
|
|
206
|
+
const link = role("link");
|
|
207
|
+
if (typeof link === "string" && !edges.has(link))
|
|
208
|
+
return;
|
|
209
|
+
Object.assign(options, { rows: main, columns, link });
|
|
210
|
+
if (columns !== main)
|
|
211
|
+
across = columns;
|
|
212
|
+
}
|
|
213
|
+
else if (lens.name === "board") {
|
|
214
|
+
Object.assign(options, { slots: main, x: role("x"), y: role("y"), fill: role("fill") });
|
|
215
|
+
for (const field of ["x", "y"])
|
|
216
|
+
if (!fieldsOf(main).includes(options[field]))
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
219
|
+
else {
|
|
220
|
+
Object.assign(options, { regions: main, outline: role("outline") });
|
|
221
|
+
for (const optional of ["markers", "at", "within", "nests", "regionKind", "markerKind"]) {
|
|
222
|
+
const value = role(optional);
|
|
223
|
+
if (typeof value === "string")
|
|
224
|
+
options[optional] = value;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
stands = [main];
|
|
228
|
+
}
|
|
229
|
+
else if (lens.name === "blocks") {
|
|
230
|
+
// A place drawn from blocks stands where it is told, and draws what its blocks say (their words are checked with the views).
|
|
231
|
+
if (!lens.on)
|
|
232
|
+
return bad(`${at}.on`, "it does not say which kind it stands on", `Say "on": "<the kind it is a place of>".`);
|
|
233
|
+
if (!Array.isArray(options["blocks"]) || options["blocks"].length === 0)
|
|
234
|
+
return bad(`${at}.options.blocks`, "it has no blocks to draw", `Say "options": { "blocks": [{ "headline": "…" }, { "list": "all('<kind>')", "as": "card" }] }.`);
|
|
235
|
+
}
|
|
236
|
+
else {
|
|
237
|
+
// The reach lens draws the policy, over the people: it stands where it is told, or on the people.
|
|
238
|
+
const people = ["user", "person", "member"].find((kind) => kinds.has(kind));
|
|
239
|
+
if (!lens.on && !people)
|
|
240
|
+
return bad(`${at}.on`, "it does not say which kind it stands on", `Say "on": "<the kind whose records are the people>".`);
|
|
241
|
+
stands = people ? [people] : [];
|
|
242
|
+
}
|
|
243
|
+
if (lens.on !== undefined) {
|
|
244
|
+
if (typeof lens.on !== "string" || !kinds.has(lens.on)) {
|
|
245
|
+
return bad(`${at}.on`, `it stands on "${String(lens.on)}", which is not a kind`, `Use one of: ${[...kinds].join(", ")}.`);
|
|
246
|
+
}
|
|
247
|
+
stands = [lens.on];
|
|
248
|
+
// A coverage stood on its columns is across its rows: the other kind is whichever it does not stand on.
|
|
249
|
+
if (lens.name === "coverage") {
|
|
250
|
+
const other = [options["rows"], options["columns"]].find((kind) => kind !== lens.on);
|
|
251
|
+
across = typeof other === "string" ? other : undefined;
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
const as = placeSlug(title);
|
|
255
|
+
if (as.length === 0)
|
|
256
|
+
return bad(`${at}.title`, "its title has no letters or digits to make an address of", "Give it a title a person would say.");
|
|
257
|
+
for (const kind of stands) {
|
|
258
|
+
const key = `${kind}|${as}`;
|
|
259
|
+
if (taken.has(key)) {
|
|
260
|
+
return skip(`another lens on ${kind} is already called "${title}"`, { code: "lens-title-taken", path: `${at}.title`, message: `"${title}" is the title of lenses.${taken.get(key)} too, on the same kind, so one address would name two pictures.`, fix: "Give each its own title." });
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
for (const kind of stands)
|
|
264
|
+
taken.set(`${kind}|${as}`, index);
|
|
265
|
+
drawn.push({ index, lens: lens.name, title, as, kinds: stands, ...(across ? { across } : {}), options });
|
|
266
|
+
});
|
|
267
|
+
return { drawn, undrawn, findings };
|
|
268
|
+
}
|
|
269
|
+
/** Kinds in the arrangement's order: those `order` names first, the rest as given. */
|
|
270
|
+
export function orderKinds(kinds, order) {
|
|
271
|
+
if (!order || order.length === 0)
|
|
272
|
+
return kinds;
|
|
273
|
+
const named = order.filter((kind) => kinds.includes(kind));
|
|
274
|
+
return [...new Set(named), ...kinds.filter((kind) => !named.includes(kind))];
|
|
275
|
+
}
|
|
276
|
+
const pluralWord = (schema, kind) => schema.tryDefinition(kind)?.plural ?? `${kind}s`;
|
|
277
|
+
export function openingOf(first, schema, places) {
|
|
278
|
+
if (first === undefined)
|
|
279
|
+
return undefined;
|
|
280
|
+
const word = first.trim();
|
|
281
|
+
if (word === "")
|
|
282
|
+
return undefined;
|
|
283
|
+
if (word.toLowerCase() === "home" || word === "/")
|
|
284
|
+
return { to: "home" };
|
|
285
|
+
const slug = placeSlug(word);
|
|
286
|
+
const place = places.find((one) => one.title === word) ?? places.find((one) => one.as === slug);
|
|
287
|
+
if (place)
|
|
288
|
+
return { to: "place", place };
|
|
289
|
+
const kinds = schema.kinds;
|
|
290
|
+
const kind = kinds.find((one) => one === word) ?? kinds.find((one) => placeSlug(pluralWord(schema, one)) === slug);
|
|
291
|
+
return kind ? { to: "kind", kind } : undefined;
|
|
292
|
+
}
|
|
293
|
+
/** What the arrangement asks that the declaration cannot honour: kinds and places that do not exist. */
|
|
294
|
+
export function arrangementFindings(app, places = placesOfLenses(app)) {
|
|
295
|
+
const pages = app.pages;
|
|
296
|
+
if (!pages)
|
|
297
|
+
return [];
|
|
298
|
+
const findings = [];
|
|
299
|
+
const kinds = app.schema.kinds;
|
|
300
|
+
for (const part of ["order", "hide"]) {
|
|
301
|
+
(pages[part] ?? []).forEach((kind, index) => {
|
|
302
|
+
if (!kinds.includes(kind)) {
|
|
303
|
+
findings.push({ severity: "warning", code: "pages-kind-unknown", path: `pages.${part}.${index}`, message: `pages.${part} names "${kind}", which is not a kind, so it is passed over.`, fix: `Use one of: ${kinds.join(", ")}.` });
|
|
304
|
+
}
|
|
305
|
+
});
|
|
306
|
+
}
|
|
307
|
+
if (pages.first !== undefined && openingOf(pages.first, app.schema, places) === undefined) {
|
|
308
|
+
findings.push({
|
|
309
|
+
severity: "warning",
|
|
310
|
+
code: "pages-first-unknown",
|
|
311
|
+
path: "pages.first",
|
|
312
|
+
message: `pages.first is "${pages.first}", which is not a place, a kind or "home", so the app opens at its home.`,
|
|
313
|
+
fix: `Name a place (${places.map((place) => `"${place.title}"`).join(", ") || "none is declared"}), a kind, or "home".`,
|
|
314
|
+
});
|
|
315
|
+
}
|
|
316
|
+
return findings;
|
|
317
|
+
}
|
|
318
|
+
/** The places a declaration's lenses make, with any its registered views name. */
|
|
319
|
+
function placesOfLenses(app) {
|
|
320
|
+
const out = [];
|
|
321
|
+
for (const lens of declaredLenses(app).drawn) {
|
|
322
|
+
for (const kind of lens.kinds)
|
|
323
|
+
out.push({ kind, title: lens.title, as: lens.as, ...(lens.across ? { across: lens.across } : {}) });
|
|
324
|
+
}
|
|
325
|
+
for (const place of app.views?.places?.() ?? []) {
|
|
326
|
+
if (!out.some((held) => held.kind === place.kind && held.as === place.as))
|
|
327
|
+
out.push(place);
|
|
328
|
+
}
|
|
329
|
+
return out;
|
|
330
|
+
}
|
|
331
|
+
/**
|
|
332
|
+
* EVERY PLACE AN APP HAS, by name: the home, each declared lens that draws
|
|
333
|
+
* (and each place its registered views name, when the app carries them),
|
|
334
|
+
* and each kind — in the arrangement's order. What Graview Cloud's
|
|
335
|
+
* connector lists when an app is opened, and what a chat can send somebody
|
|
336
|
+
* to.
|
|
337
|
+
*/
|
|
338
|
+
export function placesOf(app) {
|
|
339
|
+
const lensPlaces = placesOfLenses(app);
|
|
340
|
+
const drawn = declaredLenses(app).drawn;
|
|
341
|
+
const opening = openingOf(app.pages?.first, app.schema, lensPlaces);
|
|
342
|
+
const hidden = new Set(app.pages?.hide ?? []);
|
|
343
|
+
const kinds = orderKinds(app.schema.kinds, app.pages?.order);
|
|
344
|
+
const shared = (place) => lensPlaces.some((other) => other.as === place.as && other.kind !== place.kind);
|
|
345
|
+
const out = [{ slug: "home", title: "Home", kind: null, cardinality: "many", address: "/", stop: "#", ...(opening?.to === "home" ? { first: true } : {}) }];
|
|
346
|
+
const byKind = [...lensPlaces].sort((a, b) => kinds.indexOf(a.kind) - kinds.indexOf(b.kind));
|
|
347
|
+
for (const place of byKind) {
|
|
348
|
+
const lens = drawn.find((one) => one.as === place.as && one.kinds.includes(place.kind));
|
|
349
|
+
const of = shared(place) ? placeSlug(pluralWord(app.schema, place.kind)) : undefined;
|
|
350
|
+
out.push({
|
|
351
|
+
slug: place.as,
|
|
352
|
+
title: place.title,
|
|
353
|
+
kind: place.kind,
|
|
354
|
+
cardinality: "many",
|
|
355
|
+
address: `/places/${encodeURIComponent(place.as)}${of ? `?of=${encodeURIComponent(of)}` : ""}`,
|
|
356
|
+
stop: of ? `#focus=aggregate:${place.kind}&in.view=${encodeURIComponent(place.as)}` : `#view=${encodeURIComponent(place.as)}`,
|
|
357
|
+
...(lens ? { lens: lens.lens } : {}),
|
|
358
|
+
...(opening?.to === "place" && opening.place.kind === place.kind && opening.place.as === place.as ? { first: true } : {}),
|
|
359
|
+
});
|
|
360
|
+
}
|
|
361
|
+
for (const kind of kinds) {
|
|
362
|
+
const plural = pluralWord(app.schema, kind);
|
|
363
|
+
out.push({
|
|
364
|
+
slug: placeSlug(plural),
|
|
365
|
+
title: plural,
|
|
366
|
+
kind,
|
|
367
|
+
cardinality: "many",
|
|
368
|
+
address: `/${placeSlug(plural)}`,
|
|
369
|
+
stop: `#focus=aggregate:${kind}`,
|
|
370
|
+
...(hidden.has(kind) ? { hidden: true } : {}),
|
|
371
|
+
...(opening?.to === "kind" && opening.kind === kind ? { first: true } : {}),
|
|
372
|
+
});
|
|
373
|
+
}
|
|
374
|
+
return out;
|
|
375
|
+
}
|
|
376
|
+
//# sourceMappingURL=places.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"places.js","sourceRoot":"","sources":["../src/places.ts"],"names":[],"mappings":"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"}
|
package/dist/scaffold/domain.js
CHANGED
|
@@ -266,7 +266,7 @@ export default ${ids.appVar};
|
|
|
266
266
|
}
|
|
267
267
|
/* ---------------------------------------------------------------- tests */
|
|
268
268
|
export function domainTest(ids) {
|
|
269
|
-
return `import { checkApp } from "@graview/core";
|
|
269
|
+
return `import { checkApp } from "@graview/core/check";
|
|
270
270
|
import { kindCardId } from "@graview/layout";
|
|
271
271
|
import { deriveAffordances } from "@graview/tools";
|
|
272
272
|
import { describe, expect, it } from "vitest";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"from-template.d.ts","sourceRoot":"","sources":["../../src/scaffold/from-template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,KAAK,GAAG,EAAyB,MAAM,YAAY,CAAC;AAmB7D,8GAA8G;AAC9G,wBAAgB,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAQjI;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,CAE9D;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,CAE9D;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"from-template.d.ts","sourceRoot":"","sources":["../../src/scaffold/from-template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,KAAK,GAAG,EAAyB,MAAM,YAAY,CAAC;AAmB7D,8GAA8G;AAC9G,wBAAgB,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAQjI;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,CAE9D;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,CAE9D;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAmC9C;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAOjD;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAiBhD;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CA8C7C;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAalE"}
|
|
@@ -33,7 +33,8 @@ export function templateJson(template) {
|
|
|
33
33
|
}
|
|
34
34
|
export function documentAppTs(ids) {
|
|
35
35
|
return `import { Store, type AnySchema, type GraviewApp, type StoreOptions } from "@graview/core";
|
|
36
|
-
import {
|
|
36
|
+
import { sayFindings } from "@graview/core/document";
|
|
37
|
+
import { compileDocument, checkApp, instantiateTemplate } from "@graview/core/check";
|
|
37
38
|
import document from "./app.json" with { type: "json" };
|
|
38
39
|
|
|
39
40
|
/**
|
|
@@ -93,8 +94,7 @@ export const ${ids.brandVar}: Brand = brandOf();
|
|
|
93
94
|
`;
|
|
94
95
|
}
|
|
95
96
|
export function documentTest(ids) {
|
|
96
|
-
return `import {
|
|
97
|
-
import { instantiateTemplate } from "@graview/core/document";
|
|
97
|
+
return `import { type Principal } from "@graview/core";
|
|
98
98
|
import { describe, expect, it } from "vitest";
|
|
99
99
|
import template from "../template.json" with { type: "json" };
|
|
100
100
|
import document from "../src/domain/app.json" with { type: "json" };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"from-template.js","sourceRoot":"","sources":["../../src/scaffold/from-template.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE7D;;;;;;;;;;;;;;;GAeG;AAEH,8GAA8G;AAC9G,MAAM,UAAU,YAAY,CAAC,QAAyB;IACpD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAwG,CAAC;IACnI,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC;IAC9I,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;IACjD,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC;IACnF,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,IAAI,EAAE,EAAE,CAAC;AAChF,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,QAAyB;IACpD,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,QAAyB;IACpD,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAQ;IACpC,OAAO
|
|
1
|
+
{"version":3,"file":"from-template.js","sourceRoot":"","sources":["../../src/scaffold/from-template.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/scaffold/project.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAGtC,4EAA4E;AAC5E,eAAO,MAAM,gBAAgB,oHAyBnB,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAA+C,CAAC;AAO7F,eAAO,MAAM,WAAW,UAIvB,CAAC;AAEF,eAAO,MAAM,UAAU,UAMtB,CAAC;AAEF,eAAO,MAAM,SAAS,UAIrB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAqB/E;AAED,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAgCxE;AAED,sEAAsE;AACtE,wBAAgB,YAAY,IAAI,MAAM,CAsBrC;AAED,2EAA2E;AAC3E,wBAAgB,UAAU,IAAI,MAAM,CAOnC;AAID,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,GAAG,MAAM,CAqEhE;AAED,wBAAgB,QAAQ,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,CAyCnD;AAED,wBAAgB,aAAa,IAAI,MAAM,CAoBtC;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/scaffold/project.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAGtC,4EAA4E;AAC5E,eAAO,MAAM,gBAAgB,oHAyBnB,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAA+C,CAAC;AAO7F,eAAO,MAAM,WAAW,UAIvB,CAAC;AAEF,eAAO,MAAM,UAAU,UAMtB,CAAC;AAEF,eAAO,MAAM,SAAS,UAIrB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAqB/E;AAED,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAgCxE;AAED,sEAAsE;AACtE,wBAAgB,YAAY,IAAI,MAAM,CAsBrC;AAED,2EAA2E;AAC3E,wBAAgB,UAAU,IAAI,MAAM,CAOnC;AAID,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,GAAG,MAAM,CAqEhE;AAED,wBAAgB,QAAQ,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,CAyCnD;AAED,wBAAgB,aAAa,IAAI,MAAM,CAoBtC;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAyN3C;AAOD,wBAAgB,SAAS,IAAI,MAAM,CAWlC;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CA2EvC;AAID,wBAAgB,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CA2BtC;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,CAwC3D"}
|
package/dist/scaffold/project.js
CHANGED
|
@@ -420,6 +420,11 @@ export default defineConfig({
|
|
|
420
420
|
*/
|
|
421
421
|
alias: {
|
|
422
422
|
"@graview/core/testing": framework("core/src/testing.ts"),
|
|
423
|
+
"@graview/core/blocks": framework("core/src/blocks.ts"),
|
|
424
|
+
"@graview/core/check": framework("core/src/check.ts"),
|
|
425
|
+
"@graview/core/scene": framework("core/src/scene.ts"),
|
|
426
|
+
"@graview/core/figures": framework("core/src/figures.ts"),
|
|
427
|
+
"@graview/core/describe": framework("core/src/describe.ts"),
|
|
423
428
|
"@graview/core/document": framework("core/src/document/index.ts"),
|
|
424
429
|
"@graview/core/conformance": framework("core/src/conformance/index.ts"),
|
|
425
430
|
"@graview/core/cli": framework("core/src/cli/index.ts"),
|
|
@@ -437,6 +442,7 @@ export default defineConfig({
|
|
|
437
442
|
"@graview/react": framework("react/src/index.ts"),
|
|
438
443
|
"@graview/primitives/frame": framework("primitives/src/frame.ts"),
|
|
439
444
|
"@graview/primitives/pages": framework("primitives/src/pages.ts"),
|
|
445
|
+
"@graview/primitives/scene": framework("primitives/src/scene.ts"),
|
|
440
446
|
"@graview/primitives": framework("primitives/src/index.ts"),
|
|
441
447
|
"@graview/pages": framework("pages/src/index.ts"),
|
|
442
448
|
// The browser entry, so the file adapter's node:fs never meets the bundler.
|
|
@@ -448,8 +454,15 @@ export default defineConfig({
|
|
|
448
454
|
"@graview/embed/pages": framework("embed/src/pages.tsx"),
|
|
449
455
|
"@graview/embed": framework("embed/src/index.ts"),
|
|
450
456
|
"@graview/guest/host/worker": framework("guest/src/host/worker.ts"),
|
|
457
|
+
"@graview/guest/host/views": framework("guest/src/host/views.ts"),
|
|
458
|
+
"@graview/guest/headless/node": framework("guest/src/headless/node.ts"),
|
|
459
|
+
"@graview/guest/headless": framework("guest/src/headless/index.ts"),
|
|
460
|
+
"@graview/guest/cli": framework("guest/src/cli.ts"),
|
|
461
|
+
"@graview/guest/client.js": framework("guest/client.js"),
|
|
462
|
+
"@graview/guest/client": framework("guest/src/client.ts"),
|
|
451
463
|
"@graview/guest/host": framework("guest/src/host/index.ts"),
|
|
452
464
|
"@graview/guest/react": framework("guest/src/react.ts"),
|
|
465
|
+
"@graview/guest/worker/view": framework("guest/src/worker/view.ts"),
|
|
453
466
|
"@graview/guest/worker": framework("guest/src/worker/index.ts"),
|
|
454
467
|
"@graview/guest/build": framework("guest/src/build.ts"),
|
|
455
468
|
"@graview/guest": framework("guest/src/index.ts"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/scaffold/project.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/scaffold/project.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,4EAA4E;AAC5E,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,MAAM;IACN,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,OAAO;IACP,YAAY;IACZ,OAAO;IACP,MAAM;IACN;;;;OAIG;IACH,OAAO;IACP;;;OAGG;IACH,QAAQ;IACR;;;OAGG;IACH,OAAO;CACC,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAsB,CAAC,GAAG,gBAAgB,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAE7F;;;GAGG;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,+EAA+E;IAC/E,6EAA6E;IAC7E,mEAAmE;CACpE,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,8EAA8E;IAC9E,6EAA6E;IAC7E,4EAA4E;IAC5E,+EAA+E;IAC/E,6BAA6B;CAC9B,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,4EAA4E;IAC5E,sEAAsE;IACtE,uEAAuE;CACxE,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,OAAO,CAAC,IAAY,EAAE,IAAuB,EAAE,GAAQ;IACrE,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACtD,OAAO;;KAEJ,IAAI;;EAEP,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;sDAES,IAAI;uDACH,GAAG,CAAC,IAAI;;;IAG3D,MAAM,CAAC,GAAG,IAAI,0CAA0C,CAAC;EAC3D,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;IAExD,MAAM,CAAC,mCAAmC,IAAI,gCAAgC,CAAC;;;;;CAKlF,CAAC;AACF,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,aAAa,CAAC,GAAQ,EAAE,IAAwB;IAC9D,MAAM,GAAG,GAAG,GAAG,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,MAAM,KAAK,GAAG,CAAC,MAAc,EAAE,EAAE,CAC/B,GAAG,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,iBAAiB,GAAG,CAAC,WAAW,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,WAAW,MAAM,kBAAkB,CAAC;IACrH,OAAO,GAAG,IAAI,CAAC,SAAS,CACtB;QACE,IAAI,EAAE,GAAG,GAAG,CAAC,WAAW,YAAY;QACpC,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,GAAG,GAAG,CAAC,IAAI,eAAe;QACvC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QACzB,GAAG,CAAC,GAAG,CAAC,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,OAAO,EAAE;YACP,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC;YACjB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,YAAY;YAClB,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC;YAC7B,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,MAAM,EAAE,GAAG,GAAG,iBAAiB,GAAG,YAAY,GAAG,aAAa,GAAG,QAAQ;YACzE,oEAAoE;YACpE,MAAM,EAAE,yBAAyB;YACjC,UAAU,EAAE,2BAA2B;YACvC,IAAI,EAAE,uBAAuB;SAC9B;QACD,GAAG,CAAC,GAAG,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,qBAAqB,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,eAAe,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;QAC3D,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACvC,EACD,IAAI,EACJ,CAAC,CACF,IAAI,CAAC;AACR,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,YAAY;IAC1B,OAAO,GAAG,IAAI,CAAC,SAAS,CACtB;QACE,eAAe,EAAE;YACf,MAAM,EAAE,QAAQ;YAChB,GAAG,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,cAAc,CAAC;YACtC,MAAM,EAAE,QAAQ;YAChB,gBAAgB,EAAE,SAAS;YAC3B,MAAM,EAAE,IAAI;YACZ,wBAAwB,EAAE,IAAI;YAC9B,kBAAkB,EAAE,IAAI;YACxB,eAAe,EAAE,IAAI;YACrB,oBAAoB,EAAE,IAAI;YAC1B,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,IAAI;YACrB,gCAAgC,EAAE,IAAI;YACtC,GAAG,EAAE,WAAW;SACjB;KACF,EACD,IAAI,EACJ,CAAC,CACF,IAAI,CAAC;AACR,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,UAAU;IACxB,OAAO;;;;;CAKR,CAAC;AACF,CAAC;AAED,4EAA4E;AAE5E,MAAM,UAAU,WAAW,CAAC,GAAQ,EAAE,SAAkB;IACtD,MAAM,GAAG,GAAG,CAAC,GAAW,EAAE,EAAE,CAC1B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,IAAI,aAAa,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;IAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,YAAY,GAAG,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjG,MAAM,GAAG,GAAG,GAAG,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,MAAM,QAAQ,GAAG;QACf,IAAI,EAAE,GAAG,CAAC,WAAW;QACrB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,GAAG,GAAG,CAAC,IAAI,eAAe;QACvC,8DAA8D;QAC9D,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QACzB,OAAO,EAAE;YACP,GAAG,EAAE,MAAM;YACX,SAAS,EAAE,sBAAsB;YACjC,IAAI,EAAE,YAAY;YAClB,uEAAuE;YACvE,cAAc,EAAE,4BAA4B;YAC5C,KAAK,EAAE,GAAG,GAAG,6BAA6B;YAC1C,6DAA6D;YAC7D,KAAK,EAAE,GAAG,GAAG,qDAAqD;YAClE,IAAI,EAAE,GAAG,GAAG,+DAA+D;YAC3E,uEAAuE;YACvE,qDAAqD;YACrD,KAAK,EAAE,GAAG,GAAG,iEAAiE;YAC9E,GAAG,EAAE,GAAG,GAAG,+DAA+D;YAC1E,MAAM,EAAE,0BAA0B;YAClC,MAAM,EAAE,GAAG,GAAG,iBAAiB,GAAG,YAAY,GAAG,aAAa,GAAG,QAAQ;YACzE,6FAA6F;YAC7F,GAAG,CAAC,GAAG,CAAC,YAAY;gBAClB,CAAC,CAAC,EAAE,gBAAgB,EAAE,GAAG,GAAG,0FAA0F,EAAE;gBACxH,CAAC,CAAC,EAAE,CAAC;SACR;QACD;;;;;WAKG;QACH,GAAG,CAAC,GAAG,CAAC,cAAc,KAAK,MAAM,IAAI,CAAC,SAAS;YAC7C,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,qBAAqB,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE;YAClD,CAAC,CAAC,EAAE,CAAC;QACP,YAAY,EAAE;YACZ,GAAG,OAAO;YACV,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE,SAAS;YACtB,kBAAkB,EAAE,QAAQ;YAC5B;;;;;;eAMG;SACJ;QACD,eAAe,EAAE;YACf,mEAAmE;YACnE,uEAAuE;YACvE,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC;YACvB,aAAa,EAAE,UAAU;YACzB,cAAc,EAAE,SAAS;YACzB,kBAAkB,EAAE,SAAS;YAC7B,UAAU,EAAE,QAAQ;YACpB,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,QAAQ;SACjB;KACF,CAAC;IACF,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,SAAkB;IACzC;;;;;;;;;;OAUG;IACH,OAAO,GAAG,IAAI,CAAC,SAAS,CACtB;QACE;6DACqD;QACrD,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,eAAe,EAAE;YACf,MAAM,EAAE,QAAQ;YAChB,GAAG,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,cAAc,CAAC;YACtC,MAAM,EAAE,QAAQ;YAChB,gBAAgB,EAAE,SAAS;YAC3B,GAAG,EAAE,WAAW;YAChB,MAAM,EAAE,IAAI;YACZ,wBAAwB,EAAE,IAAI;YAC9B,kBAAkB,EAAE,IAAI;YACxB,0BAA0B,EAAE,IAAI;YAChC,eAAe,EAAE,IAAI;YACrB,oBAAoB,EAAE,IAAI;YAC1B,eAAe,EAAE,IAAI;YACrB,gCAAgC,EAAE,IAAI;YACtC,iBAAiB,EAAE,IAAI;YACvB,YAAY,EAAE,IAAI;YAClB,KAAK,EAAE,CAAC,MAAM,CAAC;YACf,MAAM,EAAE,IAAI;SACb;QACD,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,gBAAgB,CAAC;KAC5C,EACD,IAAI,EACJ,CAAC,CACF,IAAI,CAAC;AACR,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,wEAAwE;IACxE,oEAAoE;IACpE,qEAAqE;IACrE,mEAAmE;IACnE,OAAO,GAAG,IAAI,CAAC,SAAS,CACtB;QACE,OAAO,EAAE,iBAAiB;QAC1B,eAAe,EAAE;YACf,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,MAAM;YACd,WAAW,EAAE,KAAK;YAClB,SAAS,EAAE,IAAI;SAChB;QACD,OAAO,EAAE,CAAC,KAAK,CAAC;KACjB,EACD,IAAI,EACJ,CAAC,CACF,IAAI,CAAC;AACR,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAQ;IACjC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACd,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA6DS,GAAG,CAAC,IAAI;;;CAG3B,CAAC;IACA,CAAC;IACD,OAAO;;;;;;;;;;;iEAWwD,GAAG,CAAC,IAAI;;;4BAG7C,GAAG,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA2HxB,GAAG,CAAC,IAAI;;;;;iCAKa,GAAG,CAAC,IAAI;;;;;;CAMxC,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,SAAS;IACvB,OAAO;;;;;;;;;CASR,CAAC;AACF,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,GAAQ;IAC7B,MAAM,EAAE,GAAG,GAAG,CAAC,cAAc,CAAC;IAC9B,MAAM,GAAG,GAAG,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY;QAC7B,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE,GAAG,CAAC;QAChC,CAAC,CAAC;uBACiB,GAAG,CAAC,IAAI;;;;;;;;uBAQR,GAAG,CAAC,IAAI;;sFAEuD,CAAC;IACrF,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI;QACrB,CAAC,CAAC;yDACmD,GAAG,CAAC,IAAI;mBAC9C,GAAG,CAAC,IAAI;;;CAG1B;QACG,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,KAAK,GAAG,CAAC,IAAI;;;;;EAKpB,MAAM;;EAEN,EAAE;EACF,GAAG,kCAAkC,GAAG,CAAC,IAAI;EAC7C,GAAG;EACH,GAAG;;;;;;EAMH,MAAM;;;;;;;;EAQN,GAAG,aAAa,GAAG;;;;;;;;;;IAUjB,GAAG,CAAC,MAAM;;;wEAG0D,GAAG,CAAC,MAAM;;;;;;;;;;;;CAYjF,CAAC;AACF,CAAC;AAED,4EAA4E;AAE5E,MAAM,UAAU,KAAK,CAAC,GAAQ;IAC5B,MAAM,IAAI,GAAG,GAAG,CAAC,cAAc,KAAK,MAAM,CAAC;IAC3C,IAAI,GAAG,CAAC,IAAI;QAAE,OAAO,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO;;;;;;;;;;;;EAYP,IAAI,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC,EAAE;;;mBAGjC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;eACzB,IAAI,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC,QAAQ;;;;;;eAMlD,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB;CACrD,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,GAAQ,EAAE,IAAa;IACjD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,YAAY,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,SAAS,CAAC;IAC3F,MAAM,IAAI,GAAG,GAAG,CAAC,aAAa,IAAI,8CAA8C,CAAC;IACjF,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACnE,OAAO;;;;;;;sDAO6C,IAAI;;;;;;;;;;;;;;wBAclC,IAAI;kBACV,OAAO;;;;;;;6BAOI,OAAO;;;;eAIrB,OAAO,OAAO,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB;CACnE,CAAC;AACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/scaffold/ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAA4C,MAAM,YAAY,CAAC;AAOhF,wBAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAc1C;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAwC1C;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAyBzC;AAID,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/scaffold/ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAA4C,MAAM,YAAY,CAAC;AAOhF,wBAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAc1C;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAwC1C;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAyBzC;AAID,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAyBzC;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CA+GzC;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CA+NzC;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CA0FxC"}
|
package/dist/scaffold/ui.js
CHANGED
|
@@ -94,24 +94,27 @@ mount(document.getElementById("here")!, {
|
|
|
94
94
|
/* ------------------------------------------------------------------- ui */
|
|
95
95
|
export function viewsTsx(ids) {
|
|
96
96
|
return `import { createViews } from "@graview/react";
|
|
97
|
-
import { registerDefaultViews, registerViewSpecs } from "@graview/primitives";
|
|
97
|
+
import { registerDeclaredLenses, registerDefaultViews, registerViewSpecs } from "@graview/primitives";
|
|
98
98
|
import { ${ids.appVar} } from "../domain/app.js";
|
|
99
99
|
import { ${ids.schemaVar} } from "../domain/schema.js";
|
|
100
100
|
|
|
101
101
|
/**
|
|
102
102
|
* Nothing custom yet, on purpose. \`registerDefaultViews\` renders every kind
|
|
103
|
-
* at every fidelity from the declaration alone,
|
|
104
|
-
*
|
|
105
|
-
*
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
*
|
|
109
|
-
*
|
|
103
|
+
* at every fidelity from the declaration alone, \`registerViewSpecs\` draws
|
|
104
|
+
* the cards, rows and pages the declaration writes as data (\`viewSpecs\` in
|
|
105
|
+
* domain/app.ts — checked by \`graview check\`), and
|
|
106
|
+
* \`registerDeclaredLenses\` draws every lens the declaration gives a title
|
|
107
|
+
* as a PLACE, listed by name in the bar:
|
|
108
|
+
*
|
|
109
|
+
* lenses: [{ name: "calendar", title: "The month", bindings: { ${ids.kind}: { start: "<date field>" } } }]
|
|
110
110
|
*
|
|
111
|
-
*
|
|
111
|
+
* Write a view for a kind when the generic one is genuinely wrong, not on
|
|
112
|
+
* principle — see the framework's \`apps/todo/src/ui/views.tsx\` for one
|
|
113
|
+
* that earns its place, registered before the declared lenses are laid over.
|
|
112
114
|
*/
|
|
113
115
|
export function views() {
|
|
114
|
-
|
|
116
|
+
const own = registerViewSpecs(registerDefaultViews(${ids.schemaVar}, createViews(${ids.schemaVar})), ${ids.schemaVar}, ${ids.appVar}.viewSpecs);
|
|
117
|
+
return registerDeclaredLenses(own, ${ids.appVar});
|
|
115
118
|
}
|
|
116
119
|
`;
|
|
117
120
|
}
|
package/dist/scaffold/ui.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../../src/scaffold/ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEhF;;;GAGG;AAEH,MAAM,UAAU,SAAS,CAAC,GAAQ;IAChC,OAAO;;;;SAIA,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;;;;;;;;CAQ5B,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,GAAQ;IAChC,OAAO;;;;SAIA,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;;iDAEoB,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;eACtD,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;MAsB7B,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;;;;;;;;;CASzB,CAAC;AACF,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,GAAQ;IAC/B,OAAO;WACE,GAAG,CAAC,MAAM;;;;KAIhB,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;;;;;;;;;;SAUlC,GAAG,CAAC,MAAM;;;;;;YAMP,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;;CAEjC,CAAC;AACF,CAAC;AAED,4EAA4E;AAE5E,MAAM,UAAU,QAAQ,CAAC,GAAQ;IAC/B,OAAO;;WAEE,GAAG,CAAC,MAAM;WACV,GAAG,CAAC,SAAS
|
|
1
|
+
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../../src/scaffold/ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEhF;;;GAGG;AAEH,MAAM,UAAU,SAAS,CAAC,GAAQ;IAChC,OAAO;;;;SAIA,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;;;;;;;;CAQ5B,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,GAAQ;IAChC,OAAO;;;;SAIA,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;;iDAEoB,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;eACtD,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;MAsB7B,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;;;;;;;;;CASzB,CAAC;AACF,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,GAAQ;IAC/B,OAAO;WACE,GAAG,CAAC,MAAM;;;;KAIhB,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;;;;;;;;;;SAUlC,GAAG,CAAC,MAAM;;;;;;YAMP,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;;CAEjC,CAAC;AACF,CAAC;AAED,4EAA4E;AAE5E,MAAM,UAAU,QAAQ,CAAC,GAAQ;IAC/B,OAAO;;WAEE,GAAG,CAAC,MAAM;WACV,GAAG,CAAC,SAAS;;;;;;;;;;oEAU4C,GAAG,CAAC,IAAI;;;;;;;uDAOrB,GAAG,CAAC,SAAS,iBAAiB,GAAG,CAAC,SAAS,OAAO,GAAG,CAAC,SAAS,KAAK,GAAG,CAAC,MAAM;uCAC9F,GAAG,CAAC,MAAM;;CAEhD,CAAC;AACF,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,GAAQ;IAC/B,OAAO;;;;;;WAME,GAAG,CAAC,MAAM,uBAAuB,GAAG,CAAC,SAAS;WAC9C,GAAG,CAAC,QAAQ;gBACP,GAAG,CAAC,UAAU;;;WAGnB,GAAG,CAAC,UAAU;;;;;;;;mBAQN,GAAG,CAAC,YAAY;qBACd,GAAG,CAAC,SAAS;;;;;;;;;;;2CAWS,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC;;;;kBAIjD,GAAG,CAAC,YAAY;;;;;;;KAO7B,GAAG,CAAC,YAAY;;;;;;;;;;;eAWN,GAAG,CAAC,QAAQ;kBACT,GAAG,CAAC,MAAM;;;;;;;;;;;;oCAYQ,GAAG,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA6BhC,GAAG,CAAC,IAAI;;;;;;;;;;;;;;CAcrB,CAAC;AACF,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,GAAQ;IAC/B,OAAO;;;;;;;;;;;;;;;;;WAiBE,GAAG,CAAC,SAAS,UAAU,GAAG,CAAC,UAAU;;WAErC,GAAG,CAAC,UAAU;;;;;;;wCAOe,GAAG,CAAC,MAAM;;;;;WAKvC,GAAG,CAAC,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BA+BM,GAAG,CAAC,MAAM;;;;;;;+CAOM,GAAG,CAAC,IAAI;;;;;;;iKAO0G,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CA6D9I,GAAG,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+CA8ET,GAAG,CAAC,MAAM;;mDAEN,GAAG,CAAC,SAAS;iBAC/C,GAAG,CAAC,IAAI,gBAAgB,GAAG,CAAC,UAAU;;;CAGtD,CAAC;AACF,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,GAAQ;IAC9B,OAAO;;;;WAIE,GAAG,CAAC,MAAM;WACV,GAAG,CAAC,QAAQ;WACZ,GAAG,CAAC,YAAY;;;;;;;;;;;;;;;;;;;;;;uCAsBY,GAAG,CAAC,QAAQ;;;;;;;;;;;;;;;;;;;;;;;SAuB1C,GAAG,CAAC,MAAM;;;;;;;;;;;;;iBAaF,GAAG,CAAC,QAAQ;;;;;;;;;;oBAUT,GAAG,CAAC,MAAM;;;;;;;;OAQvB,GAAG,CAAC,YAAY;;;;;;CAMtB,CAAC;AACF,CAAC"}
|