@graview/core 0.1.3 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app.d.ts +9 -1
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js.map +1 -1
- package/dist/capabilities.js +1 -1
- package/dist/capabilities.js.map +1 -1
- package/dist/cli/check/policy.d.ts.map +1 -1
- package/dist/cli/check/policy.js +40 -0
- package/dist/cli/check/policy.js.map +1 -1
- package/dist/cli/index.d.ts +2 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/document/canonical.d.ts +2 -1
- package/dist/document/canonical.d.ts.map +1 -1
- package/dist/document/canonical.js +2 -1
- package/dist/document/canonical.js.map +1 -1
- package/dist/document/compile.d.ts +14 -2
- package/dist/document/compile.d.ts.map +1 -1
- package/dist/document/compile.js +50 -24
- package/dist/document/compile.js.map +1 -1
- package/dist/document/diff.d.ts.map +1 -1
- package/dist/document/diff.js +3 -1
- package/dist/document/diff.js.map +1 -1
- package/dist/document/edit.d.ts +7 -1
- package/dist/document/edit.d.ts.map +1 -1
- package/dist/document/edit.js +46 -2
- package/dist/document/edit.js.map +1 -1
- package/dist/document/graview-template.d.ts +2 -2
- package/dist/document/index.d.ts +2 -2
- package/dist/document/index.d.ts.map +1 -1
- package/dist/document/index.js +1 -1
- package/dist/document/index.js.map +1 -1
- package/dist/document/migrate.d.ts.map +1 -1
- package/dist/document/migrate.js +3 -2
- package/dist/document/migrate.js.map +1 -1
- package/dist/document/patch.d.ts.map +1 -1
- package/dist/document/patch.js +2 -5
- package/dist/document/patch.js.map +1 -1
- package/dist/document/schema.d.ts +298 -298
- package/dist/document/schema.d.ts.map +1 -1
- package/dist/document/schema.js +125 -140
- package/dist/document/schema.js.map +1 -1
- package/dist/document/to-document.d.ts.map +1 -1
- package/dist/document/to-document.js +2 -1
- package/dist/document/to-document.js.map +1 -1
- package/dist/index.d.ts +9 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -4
- package/dist/index.js.map +1 -1
- package/dist/integrity.d.ts.map +1 -1
- package/dist/integrity.js +35 -5
- package/dist/integrity.js.map +1 -1
- package/dist/invariants/types.d.ts +1 -1
- package/dist/invariants/types.d.ts.map +1 -1
- package/dist/mutations/define-mutation.d.ts +26 -3
- package/dist/mutations/define-mutation.d.ts.map +1 -1
- package/dist/mutations/define-mutation.js +18 -5
- package/dist/mutations/define-mutation.js.map +1 -1
- package/dist/mutations/derive-edits.js +5 -5
- package/dist/mutations/derive-edits.js.map +1 -1
- package/dist/mutations/form.d.ts.map +1 -1
- package/dist/mutations/form.js +6 -5
- package/dist/mutations/form.js.map +1 -1
- package/dist/mutations/node-ref.d.ts +16 -5
- package/dist/mutations/node-ref.d.ts.map +1 -1
- package/dist/mutations/node-ref.js +52 -16
- package/dist/mutations/node-ref.js.map +1 -1
- package/dist/mutations/types.d.ts +2 -2
- package/dist/mutations/types.d.ts.map +1 -1
- package/dist/ops/log.d.ts +11 -0
- package/dist/ops/log.d.ts.map +1 -1
- package/dist/ops/log.js.map +1 -1
- package/dist/ops/served.d.ts +80 -0
- package/dist/ops/served.d.ts.map +1 -0
- package/dist/ops/served.js +316 -0
- package/dist/ops/served.js.map +1 -0
- package/dist/ops/types.d.ts +8 -0
- package/dist/ops/types.d.ts.map +1 -1
- package/dist/ops/withheld.d.ts +63 -8
- package/dist/ops/withheld.d.ts.map +1 -1
- package/dist/ops/withheld.js +198 -22
- package/dist/ops/withheld.js.map +1 -1
- package/dist/ops/writers.d.ts +29 -0
- package/dist/ops/writers.d.ts.map +1 -0
- package/dist/ops/writers.js +98 -0
- package/dist/ops/writers.js.map +1 -0
- package/dist/permissions/sight.d.ts +15 -2
- package/dist/permissions/sight.d.ts.map +1 -1
- package/dist/permissions/sight.js +34 -5
- package/dist/permissions/sight.js.map +1 -1
- package/dist/presence.d.ts +24 -2
- package/dist/presence.d.ts.map +1 -1
- package/dist/presence.js +26 -1
- package/dist/presence.js.map +1 -1
- package/dist/refusal.d.ts +9 -5
- package/dist/refusal.d.ts.map +1 -1
- package/dist/refusal.js +9 -5
- package/dist/refusal.js.map +1 -1
- package/dist/scaffold/project.d.ts.map +1 -1
- package/dist/scaffold/project.js +5 -0
- package/dist/scaffold/project.js.map +1 -1
- package/dist/schema/json-schema.d.ts +2 -3
- package/dist/schema/json-schema.d.ts.map +1 -1
- package/dist/schema/json-schema.js +30 -10
- package/dist/schema/json-schema.js.map +1 -1
- package/dist/schema/schema.d.ts +19 -4
- package/dist/schema/schema.d.ts.map +1 -1
- package/dist/schema/schema.js +2 -2
- package/dist/schema/schema.js.map +1 -1
- package/dist/schema/zod.d.ts +18 -0
- package/dist/schema/zod.d.ts.map +1 -0
- package/dist/schema/zod.js +44 -0
- package/dist/schema/zod.js.map +1 -0
- package/dist/seen.d.ts +54 -1
- package/dist/seen.d.ts.map +1 -1
- package/dist/seen.js +457 -25
- package/dist/seen.js.map +1 -1
- package/dist/store.d.ts +141 -17
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +203 -84
- package/dist/store.js.map +1 -1
- package/dist/testing.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
1
|
+
import { z as classic } from "zod";
|
|
2
|
+
import * as z from "../schema/zod.js";
|
|
3
|
+
import { defOf } from "../schema/zod.js";
|
|
2
4
|
/**
|
|
3
5
|
* WHERE A NODE REFERENCE KEEPS ITS KINDS: on the schema itself, under a
|
|
4
6
|
* registry symbol.
|
|
@@ -19,7 +21,19 @@ const marked = (value) => typeof value === "object" && value !== null ? value[NO
|
|
|
19
21
|
* which ids are legal.
|
|
20
22
|
*/
|
|
21
23
|
export function nodeRef(kinds = "*") {
|
|
22
|
-
|
|
24
|
+
return markRef(classic.string().min(1), kinds);
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* `nodeRef` in zod/mini: what the framework's own acts — a compiled
|
|
28
|
+
* document's, a derived edit's — are made of, so a page that never wrote a
|
|
29
|
+
* classic schema loads none of classic zod (FR-57). `nodeRef` stays classic
|
|
30
|
+
* for a product to chain on (`nodeRef(["plot"]).optional()`).
|
|
31
|
+
*/
|
|
32
|
+
export function refTo(kinds = "*") {
|
|
33
|
+
return markRef(z.string().check(z.minLength(1)), kinds);
|
|
34
|
+
}
|
|
35
|
+
/** Marks a string schema as naming a node of these kinds. */
|
|
36
|
+
function markRef(schema, kinds) {
|
|
23
37
|
const accepted = Object.freeze(kinds === "*" ? ["*"] : [...kinds]);
|
|
24
38
|
const mark = (target) => {
|
|
25
39
|
if (target)
|
|
@@ -32,7 +46,7 @@ export function nodeRef(kinds = "*") {
|
|
|
32
46
|
* description is the question a decision provider is asked — used to
|
|
33
47
|
* come back as a plain string. The def is the stable identity.
|
|
34
48
|
*/
|
|
35
|
-
mark(schema
|
|
49
|
+
mark(defOf(schema));
|
|
36
50
|
return schema;
|
|
37
51
|
}
|
|
38
52
|
/** The node kinds an argument accepts, or undefined if it is not a node ref. */
|
|
@@ -42,13 +56,13 @@ export function nodeRefKinds(schema) {
|
|
|
42
56
|
const direct = marked(schema);
|
|
43
57
|
if (direct)
|
|
44
58
|
return direct;
|
|
45
|
-
const def = schema
|
|
59
|
+
const def = defOf(schema);
|
|
46
60
|
const byDef = marked(def);
|
|
47
61
|
if (byDef)
|
|
48
62
|
return byDef;
|
|
49
63
|
// Unwrap optional/default/nullable wrappers so `nodeRef([...]).optional()`
|
|
50
64
|
// keeps its meaning.
|
|
51
|
-
const inner =
|
|
65
|
+
const inner = def?.innerType;
|
|
52
66
|
return inner ? nodeRefKinds(inner) : undefined;
|
|
53
67
|
}
|
|
54
68
|
/** Reads the node-ref arguments off a mutation input object schema. */
|
|
@@ -67,20 +81,33 @@ export function nodeRefArgs(input) {
|
|
|
67
81
|
}
|
|
68
82
|
/** Unwraps optional/default/nullable so a wrapped field still describes itself. */
|
|
69
83
|
export function unwrap(schema) {
|
|
70
|
-
const inner = schema
|
|
84
|
+
const inner = defOf(schema)?.innerType;
|
|
71
85
|
return inner === undefined ? schema : unwrap(inner);
|
|
72
86
|
}
|
|
87
|
+
/** What a number's declared format bounds it to, as zod's own `int()`, `int32()` … say. */
|
|
88
|
+
const NUMBER_FORMAT_RANGES = {
|
|
89
|
+
safeint: [Number.MIN_SAFE_INTEGER, Number.MAX_SAFE_INTEGER],
|
|
90
|
+
int32: [-2147483648, 2147483647],
|
|
91
|
+
uint32: [0, 4294967295],
|
|
92
|
+
float32: [-3.4028234663852886e38, 3.4028234663852886e38],
|
|
93
|
+
float64: [-Number.MAX_VALUE, Number.MAX_VALUE],
|
|
94
|
+
};
|
|
95
|
+
const checksOf = (field) => ((field?._zod?.def?.checks ?? []).map((check) => check._zod?.def).filter((def) => def !== undefined));
|
|
73
96
|
/**
|
|
74
97
|
* Zod 4 keeps the primitive type on `_def.type` and the refinements a UI
|
|
75
|
-
* actually needs — bounds, patterns —
|
|
76
|
-
*
|
|
98
|
+
* actually needs — bounds, patterns — as the checks on its definition. Read
|
|
99
|
+
* from the checks themselves, not from `_zod.bag`, which zod 4.6 stopped
|
|
100
|
+
* filling as it builds a schema: the bounds and the date pattern read there
|
|
101
|
+
* vanished with a minor version. Reading them here, in one place, keeps
|
|
102
|
+
* every other layer free of zod internals.
|
|
77
103
|
*/
|
|
78
104
|
export function describeArg(schema) {
|
|
79
105
|
const field = unwrap(schema);
|
|
80
|
-
const
|
|
81
|
-
const
|
|
106
|
+
const def = defOf(field);
|
|
107
|
+
const type = def?.type;
|
|
108
|
+
const checks = checksOf(field);
|
|
82
109
|
if (type === "enum")
|
|
83
|
-
return { type: "choice", options: Object.keys(
|
|
110
|
+
return { type: "choice", options: Object.keys(def?.entries ?? {}) };
|
|
84
111
|
if (type === "boolean")
|
|
85
112
|
return { type: "boolean" };
|
|
86
113
|
/*
|
|
@@ -90,12 +117,21 @@ export function describeArg(schema) {
|
|
|
90
117
|
* shape exists to prevent.
|
|
91
118
|
*/
|
|
92
119
|
if (type === "array") {
|
|
93
|
-
const of = describeArg(
|
|
120
|
+
const of = describeArg(def?.element);
|
|
94
121
|
return of.type === "unknown" ? { type: "unknown" } : { type: "several", of };
|
|
95
122
|
}
|
|
96
123
|
if (type === "number") {
|
|
97
|
-
|
|
98
|
-
|
|
124
|
+
let min;
|
|
125
|
+
let max;
|
|
126
|
+
for (const check of checks) {
|
|
127
|
+
const range = check.check === "number_format" && check.format ? NUMBER_FORMAT_RANGES[check.format] : undefined;
|
|
128
|
+
const low = range ? range[0] : check.check === "greater_than" && check.inclusive && typeof check.value === "number" ? check.value : undefined;
|
|
129
|
+
const high = range ? range[1] : check.check === "less_than" && check.inclusive && typeof check.value === "number" ? check.value : undefined;
|
|
130
|
+
if (low !== undefined)
|
|
131
|
+
min = min === undefined ? low : Math.max(min, low);
|
|
132
|
+
if (high !== undefined)
|
|
133
|
+
max = max === undefined ? high : Math.min(max, high);
|
|
134
|
+
}
|
|
99
135
|
return {
|
|
100
136
|
type: "number",
|
|
101
137
|
...(min === undefined ? {} : { min }),
|
|
@@ -107,8 +143,8 @@ export function describeArg(schema) {
|
|
|
107
143
|
// the interface offers a date picker instead of a free text box, which
|
|
108
144
|
// is the difference between an action anyone can run and one only its
|
|
109
145
|
// author knows the format for.
|
|
110
|
-
const
|
|
111
|
-
const sources =
|
|
146
|
+
const own = def?.pattern;
|
|
147
|
+
const sources = [own, ...checks.map((check) => check.pattern)].filter((pattern) => pattern instanceof RegExp).map((pattern) => pattern.source);
|
|
112
148
|
if (sources.some((source) => source.includes("\\d{4}"))) {
|
|
113
149
|
// A time of day in the pattern as well: `T\d{2}:\d{2}`, or a space before it.
|
|
114
150
|
return sources.some((source) => source.includes("\\d{2}:\\d{2}")) ? { type: "date", time: true } : { type: "date" };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-ref.js","sourceRoot":"","sources":["../../src/mutations/node-ref.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"node-ref.js","sourceRoot":"","sources":["../../src/mutations/node-ref.ts"],"names":[],"mappings":"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"}
|
|
@@ -117,8 +117,8 @@ export interface MutationDefinitionSpec<S extends AnySchema, I extends z.ZodType
|
|
|
117
117
|
*/
|
|
118
118
|
readonly pinned?: boolean;
|
|
119
119
|
/** One-line description of a concrete application, for previews and logs. */
|
|
120
|
-
|
|
121
|
-
|
|
120
|
+
describe?(args: z.infer<I>, graph: GraphReader<NodeOfSchema<S>>): string;
|
|
121
|
+
apply(context: MutationContext<S>, args: z.infer<I>): void;
|
|
122
122
|
}
|
|
123
123
|
export interface MutationDefinition<S extends AnySchema = AnySchema, Name extends string = string, I extends z.ZodType = z.ZodType> extends MutationDefinitionSpec<S, I> {
|
|
124
124
|
readonly name: Name;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mutations/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEjF;;;GAGG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,SAAS;IAClD,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACnB,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACrC,2DAA2D;IAC3D,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7D,OAAO,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IAC/B,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IAClC,wEAAwE;IACxE,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9D,+DAA+D;IAC/D,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAChD,mDAAmD;IACnD,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,sBAAsB,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,CAAC,CAAC,OAAO;IAC9E,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAClB,8CAA8C;IAC9C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC;QACjD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;KACtB,CAAC;IACF;;;;;;;OAOG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9C;;;;;;;OAOG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,6EAA6E;IAC7E,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mutations/types.ts"],"names":[],"mappings":"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"}
|
package/dist/ops/log.d.ts
CHANGED
|
@@ -37,6 +37,17 @@ export interface Epoch {
|
|
|
37
37
|
* does not reach behind it. Absent on every other epoch.
|
|
38
38
|
*/
|
|
39
39
|
readonly horizon?: true;
|
|
40
|
+
/**
|
|
41
|
+
* WHO MADE EACH RECORD BEHIND IT, on a checkpoint (`horizon`): record id
|
|
42
|
+
* to the id of the seat that first added it, as `recordsOf` reads the
|
|
43
|
+
* log. A store opened on the checkpoint and the tail never reads the
|
|
44
|
+
* archived ops, so without this an `own` sight with nothing but the log
|
|
45
|
+
* to go on would forget them. Written by `store.checkpoint`, carried by
|
|
46
|
+
* every adapter as part of the epoch, never served to a seat. Optional:
|
|
47
|
+
* a checkpoint without it (written before it existed, or handed over
|
|
48
|
+
* bare) knows its makers from the horizon on.
|
|
49
|
+
*/
|
|
50
|
+
readonly creators?: Readonly<Record<string, string>>;
|
|
40
51
|
}
|
|
41
52
|
/**
|
|
42
53
|
* WHAT A COMPACTION MOVED OUT OF THE LOG (FR-23): the ops before the
|
package/dist/ops/log.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../src/ops/log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEnD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,KAAK;IACpB,iGAAiG;IACjG,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,mEAAmE;IACnE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../src/ops/log.ts"],"names":[],"mappings":"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"}
|
package/dist/ops/log.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/ops/log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/ops/log.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { type Primitive } from "../graph/primitives.js";
|
|
2
|
+
import { type AnyGraphNode, type GraphEdge } from "../graph/types.js";
|
|
3
|
+
import type { Operation } from "./types.js";
|
|
4
|
+
import type { Writers } from "./writers.js";
|
|
5
|
+
/**
|
|
6
|
+
* A SERVED LOG FOLDS TO THE SERVED SNAPSHOT (FR-55).
|
|
7
|
+
*
|
|
8
|
+
* A seat is served a record as its lens serves it — a field naming a hidden
|
|
9
|
+
* record cleared, or the record withheld whole when that field is required.
|
|
10
|
+
* Whether a record is served therefore changes as it changes: a patch that
|
|
11
|
+
* points a required field at a hidden record takes it out of what the seat
|
|
12
|
+
* has, and one that points it back puts it in. So a primitive cannot be
|
|
13
|
+
* judged alone. It is judged by whether the record was served just before
|
|
14
|
+
* it and just after:
|
|
15
|
+
*
|
|
16
|
+
* served → served the patch, as the seat is served the record
|
|
17
|
+
* not served → served `add-node` of the record as now served, and every
|
|
18
|
+
* link it has to a record the seat is served
|
|
19
|
+
* served → not served `remove-node`, which takes its links with it
|
|
20
|
+
* neither nothing
|
|
21
|
+
*
|
|
22
|
+
* and a link is served when both its ends are. Folding what a seat is
|
|
23
|
+
* served, from what it was served, then reaches what it is served now —
|
|
24
|
+
* the property a client's copy of the graph lives by.
|
|
25
|
+
*
|
|
26
|
+
* Knowing each record "just before" an op needs the graph as it stood
|
|
27
|
+
* there. The graph as it stands now is the store's; the walk takes the
|
|
28
|
+
* log's ops back from the end to the first op asked about, then forward,
|
|
29
|
+
* reading and writing only an overlay of what differs from now.
|
|
30
|
+
*/
|
|
31
|
+
/** The graph as it stands now, read by the walk. */
|
|
32
|
+
export interface Present {
|
|
33
|
+
getNode(id: string): AnyGraphNode | undefined;
|
|
34
|
+
outEdges(id: string): readonly GraphEdge[];
|
|
35
|
+
inEdges(id: string): readonly GraphEdge[];
|
|
36
|
+
}
|
|
37
|
+
/** What a walk needs of a store: the graph now, the log that led to it, and who wrote each field's value. */
|
|
38
|
+
export interface Timeline {
|
|
39
|
+
readonly present: Present;
|
|
40
|
+
readonly log: {
|
|
41
|
+
all(): readonly Operation[];
|
|
42
|
+
readonly length?: number;
|
|
43
|
+
};
|
|
44
|
+
readonly writers?: Writers;
|
|
45
|
+
}
|
|
46
|
+
/** Who wrote a record's fields, as of one moment: the seat's own words are served as written (FR-55). */
|
|
47
|
+
export type FieldWriter = (field: string) => string | undefined;
|
|
48
|
+
/** How the walk judges one record or one link for the seat. */
|
|
49
|
+
export interface ServedJudge {
|
|
50
|
+
/** The record as the seat is served it, given who wrote each of its fields' values, or undefined when it is not. */
|
|
51
|
+
served(node: AnyGraphNode, writer: FieldWriter): AnyGraphNode | undefined;
|
|
52
|
+
/** Whether a link names nothing the seat may not see (its ends are judged as records). */
|
|
53
|
+
edgeClean(edge: GraphEdge): boolean;
|
|
54
|
+
/**
|
|
55
|
+
* THE SEAT'S SIGHT AND WHAT A VALUE NAMES, when the judge can say them:
|
|
56
|
+
* then a record whose every version in the walk is served as it is — one
|
|
57
|
+
* the seat sees, no value of which names what it may not — is never
|
|
58
|
+
* judged or copied along the way, and one it does not see is never
|
|
59
|
+
* served. Only a record that a field of the seat's view clears, or that
|
|
60
|
+
* such a field withholds, is followed version by version.
|
|
61
|
+
*/
|
|
62
|
+
readonly sees?: (id: string) => boolean;
|
|
63
|
+
readonly names?: (value: unknown) => boolean;
|
|
64
|
+
}
|
|
65
|
+
/** What `redactAlong` hands back for one op: its primitives as served, and whether they are its own. */
|
|
66
|
+
export interface ServedOp {
|
|
67
|
+
readonly op: Operation;
|
|
68
|
+
readonly primitives: readonly Primitive[];
|
|
69
|
+
readonly faithful: boolean;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* The ops asked about, each with its primitives as the seat is served
|
|
73
|
+
* them, judged at the moment of the log each stood at. Ops that are in the
|
|
74
|
+
* timeline's log are placed there; when any is not (a preview, an op from
|
|
75
|
+
* elsewhere), they are judged in order from the graph as it stands now.
|
|
76
|
+
*/
|
|
77
|
+
export declare function serveAlong(ops: readonly Operation[], timeline: Timeline, judge: ServedJudge): ServedOp[];
|
|
78
|
+
/** Primitives not yet in any log — a preview `author` would make — as the seat would be served them, from the graph as it stands. */
|
|
79
|
+
export declare function servePrimitives(primitives: readonly Primitive[], timeline: Timeline, judge: ServedJudge, author: string | undefined): Primitive[];
|
|
80
|
+
//# sourceMappingURL=served.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"served.d.ts","sourceRoot":"","sources":["../../src/ops/served.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAU,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,oDAAoD;AACpD,MAAM,WAAW,OAAO;IACtB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,SAAS,EAAE,CAAC;IAC3C,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,SAAS,EAAE,CAAC;CAC3C;AAED,6GAA6G;AAC7G,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE;QAAE,GAAG,IAAI,SAAS,SAAS,EAAE,CAAC;QAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACxE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,yGAAyG;AACzG,MAAM,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;AAEhE,+DAA+D;AAC/D,MAAM,WAAW,WAAW;IAC1B,oHAAoH;IACpH,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,GAAG,YAAY,GAAG,SAAS,CAAC;IAC1E,0FAA0F;IAC1F,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC;IACpC;;;;;;;OAOG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;CAC9C;AAiMD,wGAAwG;AACxG,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,SAAS,SAAS,EAAE,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,SAAS,SAAS,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,GAAG,QAAQ,EAAE,CA8BxG;AA+ED,qIAAqI;AACrI,wBAAgB,eAAe,CAAC,UAAU,EAAE,SAAS,SAAS,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,EAAE,CAIjJ"}
|