@ouispec/bindings 0.1.1 → 0.2.2

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.
@@ -0,0 +1,42 @@
1
+ /**
2
+ * How large what a build offers the assistant may be (ADR-0245 §2.6).
3
+ *
4
+ * A page sends an index of its actions, and a definition when one is asked
5
+ * for. Each has a frame it must fit: an index entry is a line the model reads
6
+ * for every action on the page, a definition is one answer on the wire, and a
7
+ * surface's index travels with every snapshot. A catalogue that outgrows them
8
+ * fails the build that adds it, with the action named, instead of failing the
9
+ * assistant on the page that mounts it.
10
+ */
11
+ import { type OUIAction } from 'oui-spec/spec';
12
+ import type { ManifestAction, ManifestSurface } from './manifest.js';
13
+ /** The limits, in bytes of JSON. */
14
+ export declare const BUDGETS: {
15
+ /** One action's entry in the page's index. */
16
+ readonly indexEntryBytes: 512;
17
+ /** One action's whole definition: what `oui.describe` returns for it in one answer. */
18
+ readonly definitionBytes: number;
19
+ /** One surface's index: every action's entry. */
20
+ readonly surfaceIndexBytes: number;
21
+ };
22
+ export type Budgets = {
23
+ readonly [K in keyof typeof BUDGETS]: number;
24
+ };
25
+ export interface BudgetProblem {
26
+ kind: 'index-entry' | 'definition' | 'surface-index';
27
+ surface: string;
28
+ /** The action's id, for a problem with one action. */
29
+ action?: string;
30
+ /** Where the action is declared, when the manifest says. */
31
+ declaredIn?: string;
32
+ bytes: number;
33
+ limit: number;
34
+ message: string;
35
+ }
36
+ /** A manifest action as the page offers it to the assistant: what its index entry and its definition are made from. */
37
+ export declare function offeredAction(action: ManifestAction): OUIAction;
38
+ /** Every budget the manifest's surfaces exceed, each naming what is over and by how much. */
39
+ export declare function manifestBudgetProblems(manifest: {
40
+ surfaces: readonly ManifestSurface[];
41
+ }, budgets?: Budgets): BudgetProblem[];
42
+ //# sourceMappingURL=budgets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"budgets.d.ts","sourceRoot":"","sources":["../src/budgets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAyB,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAGtE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErE,oCAAoC;AACpC,eAAO,MAAM,OAAO;IAClB,8CAA8C;;IAE9C,uFAAuF;;IAEvF,iDAAiD;;CAEzC,CAAC;AAEX,MAAM,MAAM,OAAO,GAAG;IAAE,QAAQ,EAAE,CAAC,IAAI,MAAM,OAAO,OAAO,GAAG,MAAM;CAAE,CAAC;AAEvE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,aAAa,GAAG,YAAY,GAAG,eAAe,CAAC;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,uHAAuH;AACvH,wBAAgB,aAAa,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,CAS/D;AAID,6FAA6F;AAC7F,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE;IAAE,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAA;CAAE,EAClD,OAAO,GAAE,OAAiB,GACzB,aAAa,EAAE,CAgDjB"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * How large what a build offers the assistant may be (ADR-0245 §2.6).
3
+ *
4
+ * A page sends an index of its actions, and a definition when one is asked
5
+ * for. Each has a frame it must fit: an index entry is a line the model reads
6
+ * for every action on the page, a definition is one answer on the wire, and a
7
+ * surface's index travels with every snapshot. A catalogue that outgrows them
8
+ * fails the build that adds it, with the action named, instead of failing the
9
+ * assistant on the page that mounts it.
10
+ */
11
+ import { indexEntry, jsonBytes } from 'oui-spec/spec';
12
+ import { effectKind } from './effect.js';
13
+ /** The limits, in bytes of JSON. */
14
+ export const BUDGETS = {
15
+ /** One action's entry in the page's index. */
16
+ indexEntryBytes: 512,
17
+ /** One action's whole definition: what `oui.describe` returns for it in one answer. */
18
+ definitionBytes: 256 * 1024,
19
+ /** One surface's index: every action's entry. */
20
+ surfaceIndexBytes: 128 * 1024,
21
+ };
22
+ /** A manifest action as the page offers it to the assistant: what its index entry and its definition are made from. */
23
+ export function offeredAction(action) {
24
+ return {
25
+ id: action.name,
26
+ title: action.title,
27
+ description: action.description,
28
+ input: action.input,
29
+ ...(action.effect ? { effect: effectKind(action.effect) } : {}),
30
+ ...(action.destructive || action.confirm ? { confirm: true } : {}),
31
+ };
32
+ }
33
+ const kb = (bytes) => `${(bytes / 1024).toFixed(1)} KB`;
34
+ /** Every budget the manifest's surfaces exceed, each naming what is over and by how much. */
35
+ export function manifestBudgetProblems(manifest, budgets = BUDGETS) {
36
+ const problems = [];
37
+ for (const surface of manifest.surfaces) {
38
+ let surfaceBytes = 0;
39
+ for (const action of surface.actions) {
40
+ const offered = offeredAction(action);
41
+ const where = action.declaredIn ? { declaredIn: action.declaredIn } : {};
42
+ const definition = jsonBytes(offered);
43
+ if (definition > budgets.definitionBytes) {
44
+ problems.push({
45
+ kind: 'definition',
46
+ surface: surface.id,
47
+ action: action.id,
48
+ ...where,
49
+ bytes: definition,
50
+ limit: budgets.definitionBytes,
51
+ message: `${action.id}: its definition is ${kb(definition)}, over the ${kb(budgets.definitionBytes)} one answer carries. ` +
52
+ 'Split the action, or move what it lists into a reader the assistant queries.',
53
+ });
54
+ }
55
+ const entry = jsonBytes(indexEntry(offered));
56
+ surfaceBytes += entry;
57
+ if (entry > budgets.indexEntryBytes) {
58
+ problems.push({
59
+ kind: 'index-entry',
60
+ surface: surface.id,
61
+ action: action.id,
62
+ ...where,
63
+ bytes: entry,
64
+ limit: budgets.indexEntryBytes,
65
+ message: `${action.id}: its index entry is ${entry} bytes, over ${budgets.indexEntryBytes}. Shorten its id or its title.`,
66
+ });
67
+ }
68
+ }
69
+ if (surfaceBytes > budgets.surfaceIndexBytes) {
70
+ problems.push({
71
+ kind: 'surface-index',
72
+ surface: surface.id,
73
+ bytes: surfaceBytes,
74
+ limit: budgets.surfaceIndexBytes,
75
+ message: `${surface.id}: the index of its ${surface.actions.length} actions is ${kb(surfaceBytes)}, over ${kb(budgets.surfaceIndexBytes)}. ` +
76
+ 'Split the surface: a page into its sections, a room into rooms.',
77
+ });
78
+ }
79
+ }
80
+ return problems;
81
+ }
82
+ //# sourceMappingURL=budgets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"budgets.js","sourceRoot":"","sources":["../src/budgets.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../src/controls.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,uBAAuB,EACvB,YAAY,EACZ,UAAU,EACV,qBAAqB,EACrB,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAO3B,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,uBAAuB,EACvB,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,cAAc,GACf,MAAM,mBAAmB,CAAC;AAE3B;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,WAAW,EAa/C,CAAC;AAEF,+EAA+E;AAC/E,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAa/D,CAAC;AASF,gEAAgE;AAChE;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,GAAE,WAAgB,GAAG,UAAU,GAAG,IAAI,CAiIlG;AAQD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,qBAAqB,CAE5E;AAED,gDAAgD;AAChD,wBAAgB,8BAA8B,CAAC,YAAY,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAcnF;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,uBAAuB,GAAG,IAAI,CAS/E;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAEvF;AAED,4EAA4E;AAC5E,wBAAgB,WAAW,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAKxD;AA8CD,mFAAmF;AACnF,eAAO,MAAM,aAAa,SAAS,CAAC;AAEpC,wBAAgB,UAAU,CAAC,KAAK,CAAC,EAAE,SAAS;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,UAAU,CAQxF;AAED,qGAAqG;AACrG,eAAO,MAAM,aAAa,MAAM,CAAC;AAEjC;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,cAAc,EACpB,KAAK,GAAE,WAAgB,EACvB,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAO,GACtF,UAAU,CAkBZ;AAID,8EAA8E;AAC9E,eAAO,MAAM,uBAAuB,WAAW,CAAC;AAEhD,kEAAkE;AAClE,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,SAAS,uBAAuB,EAAE,CAAA;CAAE,CAMrH"}
1
+ {"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../src/controls.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,uBAAuB,EACvB,YAAY,EACZ,UAAU,EACV,qBAAqB,EACrB,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAO3B,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,uBAAuB,EACvB,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,cAAc,GACf,MAAM,mBAAmB,CAAC;AAE3B;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,WAAW,EAa/C,CAAC;AAEF,+EAA+E;AAC/E,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAa/D,CAAC;AASF,gEAAgE;AAChE;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,GAAE,WAAgB,GAAG,UAAU,GAAG,IAAI,CAmLlG;AAQD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,qBAAqB,CAE5E;AAED,gDAAgD;AAChD,wBAAgB,8BAA8B,CAAC,YAAY,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAcnF;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,uBAAuB,GAAG,IAAI,CAS/E;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAEvF;AAED,4EAA4E;AAC5E,wBAAgB,WAAW,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAKxD;AA8CD,mFAAmF;AACnF,eAAO,MAAM,aAAa,SAAS,CAAC;AAEpC,wBAAgB,UAAU,CAAC,KAAK,CAAC,EAAE,SAAS;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,UAAU,CAQxF;AAED,qGAAqG;AACrG,eAAO,MAAM,aAAa,MAAM,CAAC;AAEjC;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,cAAc,EACpB,KAAK,GAAE,WAAgB,EACvB,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAO,GACtF,UAAU,CAkBZ;AAID,8EAA8E;AAC9E,eAAO,MAAM,uBAAuB,WAAW,CAAC;AAEhD,kEAAkE;AAClE,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,SAAS,uBAAuB,EAAE,CAAA;CAAE,CAMrH"}
package/dist/controls.js CHANGED
@@ -125,12 +125,14 @@ export function deriveValueSchema(kind, props = {}) {
125
125
  description: 'A CSS colour, e.g. "#eb0a1e" or "rgba(0,0,0,0.5)"',
126
126
  };
127
127
  const variants = [css];
128
- if (gradients.length) {
128
+ const stopKinds = gradients.filter(k => k !== 'freeform-gradient' && k !== 'pattern');
129
+ if (stopKinds.length) {
129
130
  variants.push({
130
131
  type: 'object',
131
- description: `A gradient paint: kind ${gradients.join(' or ')}, its stops from offset 0 to 1, and for a linear gradient its angle in degrees`,
132
+ description: `A gradient paint: kind ${stopKinds.join(' or ')}, its stops from offset 0 to 1, and its angle in degrees ` +
133
+ '(a linear gradient’s direction; an angular gradient’s start, clockwise from the right, -90 the top)',
132
134
  properties: {
133
- kind: { type: 'string', enum: gradients },
135
+ kind: { type: 'string', enum: stopKinds },
134
136
  angle: { type: 'number', 'x-unit': '°' },
135
137
  stops: {
136
138
  type: 'array',
@@ -148,6 +150,51 @@ export function deriveValueSchema(kind, props = {}) {
148
150
  required: ['kind', 'stops'],
149
151
  });
150
152
  }
153
+ if (gradients.includes('freeform-gradient')) {
154
+ variants.push({
155
+ type: 'object',
156
+ description: 'A freeform gradient: colours at points, blending smoothly between them. Each point is placed as fractions ' +
157
+ 'of the painted shape ([0, 0] its top left, [1, 1] its bottom right), with a CSS colour and a spread (how far ' +
158
+ 'its colour reaches against the others’; 1 the default). `lines` optionally chains point indices into curves the colour runs along.',
159
+ properties: {
160
+ kind: { type: 'string', enum: ['freeform-gradient'] },
161
+ points: {
162
+ type: 'array',
163
+ minItems: 1,
164
+ items: {
165
+ type: 'object',
166
+ properties: {
167
+ at: { type: 'array', items: { type: 'number', minimum: 0, maximum: 1 }, minItems: 2, maxItems: 2 },
168
+ color: css,
169
+ spread: { type: 'number', minimum: 0.01 },
170
+ },
171
+ required: ['at', 'color'],
172
+ },
173
+ },
174
+ lines: { type: 'array', items: { type: 'array', items: { type: 'integer', minimum: 0 }, minItems: 2 } },
175
+ },
176
+ required: ['kind', 'points'],
177
+ });
178
+ }
179
+ if (gradients.includes('pattern')) {
180
+ // The document's patterns are the control's options: one is named by its id (ADR-0247 §2.2).
181
+ const patterns = (props.options ?? []).filter(o => !o.disabled);
182
+ variants.push({
183
+ type: 'object',
184
+ description: 'A pattern paint: one of the document’s patterns repeated across what is painted, by its id' +
185
+ (patterns.length ? ` (${patterns.map(o => `${JSON.stringify(o.value)} is ${o.title}`).join('; ')})` : '') +
186
+ ', with its scale as a percentage of the tile, its rotation in degrees clockwise, and where its first tile sits',
187
+ properties: {
188
+ kind: { type: 'string', enum: ['pattern'] },
189
+ pattern: { type: 'string', ...(patterns.length ? { enum: patterns.map(o => String(o.value)) } : {}) },
190
+ scale: { type: 'number', minimum: 1, 'x-unit': '%' },
191
+ rotation: { type: 'number', 'x-unit': '°' },
192
+ offset: { type: 'array', items: { type: 'number' }, minItems: 2, maxItems: 2 },
193
+ opacity: { type: 'number', minimum: 0, maximum: 1 },
194
+ },
195
+ required: ['kind', 'pattern'],
196
+ });
197
+ }
151
198
  if (props.allowNone)
152
199
  variants.push({ type: 'null', description: 'No paint' });
153
200
  return variants.length === 1 ? css : { anyOf: variants, description: 'The paint to set' };
@@ -1 +1 @@
1
- {"version":3,"file":"controls.js","sourceRoot":"","sources":["../src/controls.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controls.js","sourceRoot":"","sources":["../src/controls.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -15,6 +15,7 @@
15
15
  export * from './json-schema.js';
16
16
  export * from './effect.js';
17
17
  export * from './room.js';
18
+ export * from './readers.js';
18
19
  export * from './binding.js';
19
20
  export * from './controls.js';
20
21
  export * from './manifest.js';
@@ -22,5 +23,6 @@ export * from './registry.js';
22
23
  export * from './interactive.js';
23
24
  export * from './package-declaration.js';
24
25
  export * from './tier2.js';
26
+ export * from './budgets.js';
25
27
  export type { OuiConfigFile, OuiPackageDeclaration, Tier2Control, Tier2Mapping, Tier2Part, ValueFrom } from '@ouispec/contract';
26
28
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAI3B,YAAY,EAAE,aAAa,EAAE,qBAAqB,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAI7B,YAAY,EAAE,aAAa,EAAE,qBAAqB,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -15,6 +15,7 @@
15
15
  export * from './json-schema.js';
16
16
  export * from './effect.js';
17
17
  export * from './room.js';
18
+ export * from './readers.js';
18
19
  export * from './binding.js';
19
20
  export * from './controls.js';
20
21
  export * from './manifest.js';
@@ -22,4 +23,5 @@ export * from './registry.js';
22
23
  export * from './interactive.js';
23
24
  export * from './package-declaration.js';
24
25
  export * from './tier2.js';
26
+ export * from './budgets.js';
25
27
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
package/dist/oui.d.ts CHANGED
@@ -7,7 +7,7 @@
7
7
  * control's own handler, or the room's own entry, so the assistant and the
8
8
  * person go through one code path.
9
9
  */
10
- import { type SurfaceRuntime } from 'oui-spec/core';
10
+ import { type SurfaceForm, type SurfaceRuntime } from 'oui-spec/core';
11
11
  import { type JsonSchema } from './json-schema.js';
12
12
  import { type OuiManifest } from './manifest.js';
13
13
  import type { BindingRegistry, ControlRegistration } from './registry.js';
@@ -27,7 +27,8 @@ export type BindingDefect = {
27
27
  };
28
28
  export interface ConnectBindingsOptions {
29
29
  registry: BindingRegistry;
30
- runtime: SurfaceRuntime;
30
+ /** The tab's surface runtime, in either form (oui-spec §7.3.8). */
31
+ runtime: SurfaceRuntime<SurfaceForm>;
31
32
  manifest: OuiManifest;
32
33
  onDefect?: (defect: BindingDefect) => void;
33
34
  /**
package/dist/oui.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"oui.d.ts","sourceRoot":"","sources":["../src/oui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oui.d.ts","sourceRoot":"","sources":["../src/oui.ts"],"names":[],"mappings":"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"}
package/dist/oui.js CHANGED
@@ -12,6 +12,7 @@ import { deriveInputSchema, ITEM_PROPERTY, itemSchema, MAX_DESCRIBED_OPTIONS } f
12
12
  import { effectKind } from './effect.js';
13
13
  import { isNarrowing, validateValue } from './json-schema.js';
14
14
  import { isRoutePath, LOCATION_OBSERVATION_ID, NAVIGATION_SURFACE_ID, } from './manifest.js';
15
+ import { addressesRows, observationLookup, resolveInputRefs } from './readers.js';
15
16
  import { PROBLEMS_OBSERVATION_ID } from './room.js';
16
17
  /** The id of a page or shared surface's observation of what it shows. */
17
18
  export const PAGE_STATE_OBSERVATION_ID = 'state';
@@ -153,8 +154,10 @@ export function connectBindings({ registry, runtime, manifest, onDefect, jobs, n
153
154
  continue;
154
155
  }
155
156
  const entry = want(surface);
157
+ // What the room last reported: where a name given for an id is looked up.
158
+ const reported = () => registry.rooms().find(r => r.registration === registration)?.observations ?? {};
156
159
  for (const action of surface.actions) {
157
- const def = roomAction(action, registration, runs);
160
+ const def = roomAction(action, registration, runs, surface, reported);
158
161
  if (def)
159
162
  entry.actions.push(def);
160
163
  }
@@ -451,7 +454,7 @@ function pickRegistration(action, params, regs) {
451
454
  : `No row "${ref}" is on screen for ${action.title}. On screen: ${shown}`),
452
455
  };
453
456
  }
454
- function roomAction(action, registration, runs) {
457
+ function roomAction(action, registration, runs, surface, reported) {
455
458
  if (action.source !== 'room-action')
456
459
  return null;
457
460
  const entryId = action.id.split('/').pop();
@@ -460,6 +463,7 @@ function roomAction(action, registration, runs) {
460
463
  return null;
461
464
  const job = settlement(action);
462
465
  const timeoutMs = job?.timeoutMs ?? DEFAULT_JOB_TIMEOUT_MS;
466
+ const addresses = addressesRows(action.input);
463
467
  return {
464
468
  id: action.name,
465
469
  description: action.description,
@@ -469,7 +473,13 @@ function roomAction(action, registration, runs) {
469
473
  ...settlingDefinition(job, timeoutMs, runs),
470
474
  handler: async (params) => {
471
475
  try {
472
- const result = await registration.run(entry.id, params);
476
+ // A name given where a row's id is taken is the row's id, when one row has it (ADR-0244 §2.2).
477
+ const resolved = addresses
478
+ ? resolveInputRefs(action.input, params, observationLookup(surface.observations, reported()))
479
+ : { input: params };
480
+ if ('error' in resolved)
481
+ return toHandlerResult(resolved.error);
482
+ const result = await registration.run(entry.id, resolved.input);
473
483
  return job ? settlingResult(action.id, result, timeoutMs, runs) : toHandlerResult(result);
474
484
  }
475
485
  catch (err) {
@@ -508,7 +518,9 @@ function toHandlerResult(result) {
508
518
  if (!result.ok)
509
519
  return fail(result.code, result.message);
510
520
  // Work that outlives the call is started, not done: say so, so it is never reported finished.
511
- const data = result.pending ? { ...result.data, status: 'started', jobId: result.pending.jobId } : result.data;
521
+ const started = result.pending ? { ...result.data, status: 'started', jobId: result.pending.jobId } : result.data;
522
+ // What it changed, as it is now: what the assistant checks its edit against (ADR-0244 §2.5).
523
+ const data = result.changed?.length ? { ...started, changed: result.changed } : started;
512
524
  return { success: true, ...(data ? { data } : {}) };
513
525
  }
514
526
  //# sourceMappingURL=oui.js.map
package/dist/oui.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"oui.js","sourceRoot":"","sources":["../src/oui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oui.js","sourceRoot":"","sources":["../src/oui.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,aAAa,GAMd,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACpG,OAAO,EAAE,UAAU,EAAyB,MAAM,aAAa,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAmB,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EACL,WAAW,EACX,uBAAuB,EACvB,qBAAqB,GAItB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAClF,OAAO,EAAE,uBAAuB,EAAmB,MAAM,WAAW,CAAC;AAErE,yEAAyE;AACzE,MAAM,CAAC,MAAM,yBAAyB,GAAG,OAAO,CAAC;AAkDjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAGrD,0EAA0E;AAC1E,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,CAAC;AAC1C,6EAA6E;AAC7E,MAAM,CAAC,MAAM,sBAAsB,GAAG,OAAO,CAAC;AAmB9C;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAE1C,sHAAsH;AACtH,MAAM,UAAU,eAAe,CAAC,EAC9B,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,UAAU,GACa;IACvB,MAAM,iBAAiB,GAAG,UAAU;QAClC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,qBAAqB,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC;QACxF,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,SAAS,GAAG,IAAI,GAAG,EAAgE,CAAC;IAC1F,MAAM,YAAY,GAAG,IAAI,GAAG,EAA2B,CAAC;IACxD,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACxC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;YAAE,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QACzF,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACrC,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;gBAAE,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,MAAM,MAAM,GAAG,CAAC,MAAqB,EAAE,EAAE;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO;QAC9B,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClB,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,GAAG,EAGpB,CAAC;IAEJ,6EAA6E;IAC7E,4EAA4E;IAC5E,2BAA2B;IAC3B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAwE,CAAC;IACjG,IAAI,SAAS,GAAG,IAAI,CAAC;IACrB,MAAM,IAAI,GAAY;QACpB,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;YACvC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,OAAO;YAChC,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,oBAAoB,CAAC,CAAC;YACrF,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;QACjB,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK;QACjB,KAAK,EAAE,KAAK,CAAC,EAAE;YACb,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,CAAC,GAAG;gBAAE,OAAO;YACjB,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACzB,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvB,4DAA4D;YAC5D,cAAc,CAAC,GAAG,EAAE;gBAClB,IAAI,SAAS;oBAAE,OAAO,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;IACF,MAAM,OAAO,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IAEnG,6EAA6E;IAC7E,yEAAyE;IACzE,4DAA4D;IAC5D,MAAM,cAAc,GAAG,IAAI,GAAG,EAAyC,CAAC;IACxE,MAAM,SAAS,GAAG,CAAC,SAAiB,EAAE,EAAE;QACtC,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO;QAChC,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC,CAAC;IACF,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,EAAE;QACzB,SAAS,CAAC,SAAS,CAAC,CAAC;QACrB,cAAc,CAAC,GAAG,CAChB,SAAS,EACT,UAAU,CAAC,GAAG,EAAE;YACd,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACjC,IAAI,SAAS;gBAAE,OAAO,EAAE,CAAC;QAC3B,CAAC,EAAE,mBAAmB,CAAC,CACxB,CAAC;IACJ,CAAC,CAAC;IACF,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAEvD,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2E,CAAC;QAClG,MAAM,IAAI,GAAG,CAAC,OAAwB,EAAE,EAAE;YACxC,IAAI,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACnC,IAAI,CAAC,KAAK;gBAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;YACvE,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;QAEF,6DAA6D;QAC7D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAiC,CAAC;QACxD,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC3B,MAAM,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;gBAChD,SAAS;YACX,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACf,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC;YAChC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;YAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC7C,0DAA0D;YAC1D,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAS,CAAC,EAAE,CAAC,CAAC;YACrC,sEAAsE;YACtE,4EAA4E;YAC5E,mEAAmE;YACnE,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACnC,KAAK,CAAC,OAAO,CAAC,IAAI,CAChB,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CACjG,CAAC;QACJ,CAAC;QAED,oDAAoD;QACpD,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC;YAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,SAAS,CAAC,EAAE,CAAC,CAAC;QAEhF,6EAA6E;QAC7E,IAAI,iBAAiB,IAAI,UAAU,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACtC,KAAK,MAAM,MAAM,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;gBAC/C,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,iBAAiB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;QAED,SAAS;QACT,KAAK,MAAM,EAAE,YAAY,EAAE,IAAI,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;YAChD,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5D,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;gBAClE,SAAS;YACX,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5B,0EAA0E;YAC1E,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,YAAY,CAAC,EAAE,YAAY,IAAI,EAAE,CAAC;YACvG,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrC,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBACtE,IAAI,GAAG;oBAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC;YAChD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;YACxF,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChC,IAAI,OAAO,IAAI,OAAO,CAAC,WAAW,KAAK,WAAW;gBAAE,SAAS;YAC7D,MAAM,OAAO,GAAG,aAAa,CAAO;gBAClC,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,IAAI,EAAE,OAAO,CAAC,KAAK;gBACnB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,OAAO;gBACP,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC3C,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,MAAM,EAAE,CAAC,CAAC,MAAe;iBAC1B,CAAC,CAAC;aACJ,CAAC,CAAC;YACH,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAClD,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,OAAO,EAAE,CAAC;YACpC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACpB,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACzB,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QACD,gBAAgB,EAAE,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC5B,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3D,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC/B,MAAM,eAAe,GAAG,CAAC,OAAwB,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,uBAAuB,CAAC,CAAC;QACvH,4EAA4E;QAC5E,6EAA6E;QAC7E,0EAA0E;QAC1E,kEAAkE;QAClE,MAAM,WAAW,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;QACrH,KAAK,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YACnD,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC5B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC;gBACnF,IAAI,CAAC,IAAI;oBAAE,SAAS;gBACpB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;oBACrC,IAAI,CAAC,CAAC,EAAE,KAAK,uBAAuB;wBAAE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;yBAC7E,IAAI,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,YAAY;wBAAE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC5F,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAClC,IAAI,UAAU;oBAAE,MAAM,CAAC,eAAe,CAAC,uBAAuB,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBACjG,IAAI,eAAe,CAAC,OAAO,CAAC;oBAAE,MAAM,CAAC,eAAe,CAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAC3G,SAAS;YACX,CAAC;YACD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC;YAClF,+FAA+F;YAC/F,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,MAAM,CAAC,eAAe,CAAC,yBAAyB,EAAE;gBAChD,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;gBAC7B,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1C,CAAC,CAAC;YACH,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,uBAAuB,CAAC,EAAE,CAAC;gBAChG,MAAM,CAAC,eAAe,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAC5G,MAAM,mBAAmB,GAAG,iBAAiB,IAAI,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACpH,OAAO,EAAE,CAAC;IAEV,OAAO,GAAG,EAAE;QACV,SAAS,GAAG,KAAK,CAAC;QAClB,WAAW,EAAE,CAAC;QACd,mBAAmB,EAAE,EAAE,CAAC;QACxB,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,QAAQ,CAAC,MAAM,EAAE;YAAE,YAAY,CAAC,MAAM,CAAC,CAAC;QACjE,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjB,KAAK,MAAM,KAAK,IAAI,cAAc,CAAC,MAAM,EAAE;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;QACjE,cAAc,CAAC,KAAK,EAAE,CAAC;QACvB,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,OAAO,CAAC,MAAM,EAAE;YAAE,MAAM,CAAC,OAAO,EAAE,CAAC;QAC5D,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC,CAAC;AACJ,CAAC;AAcD;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAkB,EAAE,KAAe;IAClE,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC;IAC3B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,qBAAqB;QAAE,OAAO,MAAM,CAAC;IACrE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,OAAO,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3F,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;AACpF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,QAAwC,EAAE,SAAyC,GAAG,EAAE,CAAC,KAAK;IACtH,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,MAAM,KAAK,GAAmC,EAAE,CAAC;IACjD,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACX,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC;gBACxB,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG;gBACf,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;gBACnB,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClE,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9E,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACrD,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,IAAI;YAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AAC1E,CAAC;AAED,SAAS,aAAa,CACpB,MAAsB,EACtB,IAAoC,EACpC,OAA6C,EAC7C,MAAkC,EAClC,IAAa;IAEb,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,GAAG,EAAE,SAAS,IAAI,sBAAsB,CAAC;IAC3D,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,IAAI,IAAI,CAAC;IAC7D,2EAA2E;IAC3E,2EAA2E;IAC3E,oEAAoE;IACpE,kDAAkD;IAClD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACjD,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,aAAa,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,aAAa,CAAC;YAC5D,MAAM,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,MAAM,SAAS,GACb,aAAa,IAAI,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC;QACrF,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QAChB,CAAC,CAAC,aAAa,CAAC;IACpB,MAAM,QAAQ,GAAG,CAAC,GAAwB,EAAqB,EAAE,CAC/D,aAAa,IAAI,GAAG,CAAC,WAAW,IAAI,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC;QAC7E,CAAC,CAAC,GAAG,CAAC,WAAW;QACjB,CAAC,CAAC,aAAa,CAAC;IACpB,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvF,MAAM,KAAK,GAAe,MAAM,CAAC,OAAO;QACtC,CAAC,CAAC;YACE,GAAG,iBAAiB,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;YAC9E,UAAU,EAAE;gBACV,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1C,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACnE;SACF;QACH,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAEjB,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,IAAI;QACf,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,KAAK,EAAE,KAAc;QACrB,GAAG,QAAQ,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,OAAO,IAAI,SAAS;QAC1D,GAAG,kBAAkB,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC;QAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,EAAgC,EAAE;YACtD,yEAAyE;YACzE,8DAA8D;YAC9D,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;YACtB,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrB,OAAO,IAAI,CACT,eAAe,EACf,IAAI,MAAM,CAAC,KAAK,wEAAwE,CACzF,CAAC;YACJ,CAAC;YACD,MAAM,GAAG,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;YAClD,IAAI,OAAO,IAAI,GAAG;gBAAE,OAAO,GAAG,CAAC,KAAK,CAAC;YACrC,IAAI,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzB,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,GAAG,CAAC,YAAY,CAAC,KAAK,0EAA0E,CAAC;oBACpH,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,GAAG,CAAC,YAAY,CAAC,KAAK,4BAA4B,CAAC,CAAC;YAClF,CAAC;YACD,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC/C,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,OAAO,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBACzD,IAAI,OAAO;oBAAE,OAAO,IAAI,CAAC,eAAe,EAAE,GAAG,GAAG,CAAC,YAAY,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC,CAAC;YACrF,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YACnE,yEAAyE;YACzE,iDAAiD;YACjD,IAAI,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC;gBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACnE,OAAO,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC5F,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,UAAU,CAAC,MAAsB;IACxC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,OAAO,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,CAAC;QACrG,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,qGAAqG;AACrG,SAAS,kBAAkB,CACzB,GAA0C,EAC1C,SAAiB,EACjB,IAAa;IAEb,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACpB,OAAO;QACL,KAAK,EAAE,IAAI;QACX,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,OAAO,EAAE,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC;KACrC,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,SAAS,cAAc,CAAC,QAAgB,EAAE,MAAkB,EAAE,SAAiB,EAAE,IAAa;IAC5F,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC;IAC/C,gFAAgF;IAChF,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;QAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC5F,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;AACpH,CAAC;AAED;;;;;GAKG;AACH,SAAS,QAAQ,CAAC,MAAsB;IACtC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AAClG,CAAC;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,SAAiB,EAAE,IAAa;IAClD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;IAC1B,OAAO;QACL,UAAU,EAAE,oBAAoB;QAChC,aAAa,EAAE,SAAS;QACxB,OAAO,EAAE,KAAK,EAAC,cAAc,EAAC,EAAE;YAC9B,MAAM,KAAK,GAAI,cAAyD,EAAE,KAAK,CAAC;YAChF,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACjD,OAAO;oBACL,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE;wBACJ,MAAM,EAAE,YAAY;wBACpB,OAAO,EACL,mGAAmG;4BACnG,+EAA+E;qBAClF;iBACF,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,CAAC,OAAO;gBAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC;YACzE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACvC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CACvB,MAAsB,EACtB,MAA+B,EAC/B,IAAoC;IAEpC,IAAI,CAAC,MAAM,CAAC,QAAQ;QAAE,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;IACrE,MAAM,GAAG,GAAG,OAAO,MAAM,CAAC,aAAa,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,MAAM,CAAC,aAAa,CAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC;IAClD,IAAI,KAAK;QAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;IAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IACpG,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9D,MAAM,KAAK,GAAG,IAAI;SACf,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;SACZ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC;SAC/C,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO;QACL,KAAK,EAAE,IAAI,CACT,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,EACxD,OAAO,CAAC,MAAM,GAAG,CAAC;YAChB,CAAC,CAAC,4BAA4B,GAAG,2BAA2B,KAAK,EAAE;YACnE,CAAC,CAAC,WAAW,GAAG,sBAAsB,MAAM,CAAC,KAAK,gBAAgB,KAAK,EAAE,CAC5E;KACF,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,MAAsB,EACtB,YAA8B,EAC9B,IAAa,EACb,OAAwB,EACxB,QAAiD;IAEjD,IAAI,MAAM,CAAC,MAAM,KAAK,aAAa;QAAE,OAAO,IAAI,CAAC;IACjD,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAG,CAAC;IAC5C,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IACvE,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,GAAG,EAAE,SAAS,IAAI,sBAAsB,CAAC;IAC3D,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,IAAI;QACf,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,KAAK,EAAE,MAAM,CAAC,KAAc;QAC5B,GAAG,QAAQ,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,KAAK,CAAC,WAAW,IAAI,SAAS;QACvC,GAAG,kBAAkB,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC;QAC3C,OAAO,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;YACtB,IAAI,CAAC;gBACH,+FAA+F;gBAC/F,MAAM,QAAQ,GAAG,SAAS;oBACxB,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,iBAAiB,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAC7F,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;gBACtB,IAAI,OAAO,IAAI,QAAQ;oBAAE,OAAO,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAgC,CAAC,CAAC;gBAC3F,OAAO,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YAC5F,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC,QAAQ,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CACrB,MAAsB,EACtB,MAAyB,EACzB,UAAyB;IAEzB,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,IAAI;QACf,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,KAAK,EAAE,MAAM,CAAC,KAAc;QAC5B,GAAG,QAAQ,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;YACtB,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC,cAAc,EAAE,gCAAgC,CAAC,CAAC;YACzF,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC/B,OAAO,IAAI,CAAC,eAAe,EAAE,GAAG,IAAI,6CAA6C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACxG,CAAC;YACD,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC;QACxD,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,IAAI,CAAC,IAAY,EAAE,OAAe;IACzC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC;AACtD,CAAC;AAED,SAAS,eAAe,CAAC,MAAkB;IACzC,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACzD,8FAA8F;IAC9F,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;IAClH,6FAA6F;IAC7F,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;IACxF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACtD,CAAC"}
@@ -0,0 +1,144 @@
1
+ /**
2
+ * A room's readers (ADR-0244 §2.2): how the assistant reads what the room
3
+ * holds, built from the room's own declaration of its lists so they can never
4
+ * fall behind it.
5
+ *
6
+ * A room declares each list of things its actions address — a document's
7
+ * layers, its artboards — once: how a row is addressed and called, what its
8
+ * rows are now, and everything about one row. From that come
9
+ *
10
+ * - the `x-rows` annotation of the list in the room's observation, so a list
11
+ * too long for the page state keeps an index of every row (§2.1);
12
+ * - `inspect`, which returns everything about the rows it is given;
13
+ * - `query`, which lists a list's rows, filtered, a page at a time;
14
+ * - the resolution of a row's title wherever an action takes its id (`x-ref`);
15
+ * - the rows an edit changed, as its result reports them (§2.5).
16
+ *
17
+ * Plain TypeScript: no React, no OUI runtime.
18
+ */
19
+ import type { JsonSchema, RoomChangedRow, RowList } from '@ouispec/contract';
20
+ import type { RoomAction, RoomResult } from './room.js';
21
+ export type { RoomChangedRow, RowList } from '@ouispec/contract';
22
+ /** The ids of a room's two readers, built from its lists. A room with lists declares both. */
23
+ export declare const ROOM_INSPECT_ID = "inspect";
24
+ export declare const ROOM_QUERY_ID = "query";
25
+ /** How many rows one `inspect` returns everything about. */
26
+ export declare const MAX_INSPECTED_ROWS = 20;
27
+ /** How many rows one `query` lists, and how many it lists when not told. */
28
+ export declare const MAX_QUERY_ROWS = 200;
29
+ export declare const DEFAULT_QUERY_ROWS = 50;
30
+ /** One row of a list, as a reader returns it: at least what addresses it and what it is called. */
31
+ export type RoomRow = Readonly<Record<string, unknown>>;
32
+ /** One list of things a room's actions address. `Ctx` is the room's runtime. */
33
+ export interface RoomList<Ctx> {
34
+ /** `<observation id>/<list property>` (or `<observation id>` when the observation is the list): where the list is in what the room reports, and what `x-ref` names. */
35
+ id: string;
36
+ /** What the room calls its rows: "Layers", "Artboards". */
37
+ title: string;
38
+ /** How a row is addressed, called and indexed (the list's `x-rows`). */
39
+ rows: RowList;
40
+ /** Every row now, in the list's order, each as the observation reports it. */
41
+ list(ctx: Ctx): readonly RoomRow[];
42
+ /** Everything about one row: all its panels show. Undefined when there is no such row. */
43
+ detail(ctx: Ctx, ref: string): Record<string, unknown> | undefined;
44
+ }
45
+ /** A row cut to its index: what addresses it, what it is called, and what tells rows apart. */
46
+ export declare function indexRow(rows: RowList, row: RoomRow): Record<string, unknown>;
47
+ /** The `x-ref` of an input that addresses rows of these lists. */
48
+ export declare function refTo(...lists: readonly Pick<RoomList<never>, 'id'>[]): {
49
+ 'x-ref': readonly string[];
50
+ };
51
+ /** A row addressed by a ref or a title, among the rows of several lists. */
52
+ export interface RowLookup {
53
+ /** The list ids, in the order they are searched. */
54
+ lists: readonly string[];
55
+ /** A list's rows now, each with what addresses it and what it is called. */
56
+ rows(listId: string): readonly {
57
+ ref: string;
58
+ title: string;
59
+ }[];
60
+ }
61
+ /**
62
+ * What a given string addresses: the row with that ref, else the one row
63
+ * whose title it is, exactly (case and outer spaces aside). `null` when it is
64
+ * neither, so the action's own check says what is missing; an error when
65
+ * several rows share the title.
66
+ */
67
+ export declare function resolveRef(given: string, lookup: RowLookup, among: readonly string[]): {
68
+ ref: string;
69
+ } | {
70
+ error: RoomResult;
71
+ } | null;
72
+ /**
73
+ * An action's input with every title given where a row is addressed replaced
74
+ * by the row's ref (the inputs its schema marks `x-ref`), or why one cannot
75
+ * be: several rows share the title. A string that is neither a ref nor a
76
+ * title is left as given.
77
+ */
78
+ export declare function resolveInputRefs(schema: JsonSchema | undefined, input: unknown, lookup: RowLookup): {
79
+ input: unknown;
80
+ } | {
81
+ error: RoomResult;
82
+ };
83
+ /** Whether a schema, anywhere in it, addresses rows (`x-ref`). */
84
+ export declare function addressesRows(schema: JsonSchema | undefined): boolean;
85
+ /** The lookup over a room's lists, read from the room as it is now. */
86
+ export declare function listLookup<Ctx>(lists: readonly RoomList<Ctx>[], ctx: Ctx): RowLookup;
87
+ /**
88
+ * The lookup over the lists a surface's observation schemas declare
89
+ * (`x-rows`), read from the observation values the page last reported.
90
+ */
91
+ export declare function observationLookup(observations: readonly {
92
+ id: string;
93
+ schema: JsonSchema;
94
+ }[], values: Readonly<Record<string, unknown>>): RowLookup;
95
+ /** The rows of a room result's `changed`: each list's rows among `refs`, as its reader reports them now. */
96
+ export declare function changedRows<Ctx>(lists: readonly RoomList<Ctx>[], ctx: Ctx, refs: Iterable<string>): RoomChangedRow[];
97
+ /**
98
+ * The room's two readers, built from its lists. Both only read: they change
99
+ * nothing, select nothing and make no undo step.
100
+ */
101
+ export declare function roomReaders<Ctx>(room: {
102
+ title: string;
103
+ }, lists: readonly RoomList<Ctx>[]): RoomAction<Ctx, never>[];
104
+ /** A catalog as far as its lists are checked: its actions' inputs and its observations' schemas. */
105
+ interface ListedCatalog {
106
+ room: string;
107
+ actions: readonly {
108
+ id: string;
109
+ input: JsonSchema;
110
+ }[];
111
+ observations: readonly {
112
+ id: string;
113
+ schema: JsonSchema;
114
+ }[];
115
+ }
116
+ /** The lists a catalog's observations declare (`x-rows`), as `<observation id>/<property>`. */
117
+ export declare function declaredLists(catalog: Pick<ListedCatalog, 'observations'>): string[];
118
+ /**
119
+ * What is wrong with how a catalog declares its lists (ADR-0244 §2.2), in
120
+ * words: a list of things with ids that does not say how its rows are
121
+ * addressed, lists with no readers, and an input that addresses a list the
122
+ * room does not have. A generator fails on any of them, and the conformance
123
+ * kit checks them, so a room cannot ship rows the assistant cannot read.
124
+ */
125
+ export declare function roomListProblems(catalog: ListedCatalog): string[];
126
+ /**
127
+ * The numbers a catalog takes that do not say what they are measured in
128
+ * (ADR-0244 §2.3), in words: each field's value and each action's input must
129
+ * give every `number` a unit (`x-unit`). An `integer` counts things and needs
130
+ * none. A generator fails on any of them: a number set without knowing its
131
+ * unit is set by guessing.
132
+ */
133
+ export declare function roomMeasureProblems(catalog: {
134
+ room: string;
135
+ actions: readonly {
136
+ id: string;
137
+ input: JsonSchema;
138
+ }[];
139
+ fields: readonly {
140
+ id: string;
141
+ value: JsonSchema;
142
+ }[];
143
+ }): string[];
144
+ //# sourceMappingURL=readers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readers.d.ts","sourceRoot":"","sources":["../src/readers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,388 @@
1
+ /**
2
+ * A room's readers (ADR-0244 §2.2): how the assistant reads what the room
3
+ * holds, built from the room's own declaration of its lists so they can never
4
+ * fall behind it.
5
+ *
6
+ * A room declares each list of things its actions address — a document's
7
+ * layers, its artboards — once: how a row is addressed and called, what its
8
+ * rows are now, and everything about one row. From that come
9
+ *
10
+ * - the `x-rows` annotation of the list in the room's observation, so a list
11
+ * too long for the page state keeps an index of every row (§2.1);
12
+ * - `inspect`, which returns everything about the rows it is given;
13
+ * - `query`, which lists a list's rows, filtered, a page at a time;
14
+ * - the resolution of a row's title wherever an action takes its id (`x-ref`);
15
+ * - the rows an edit changed, as its result reports them (§2.5).
16
+ *
17
+ * Plain TypeScript: no React, no OUI runtime.
18
+ */
19
+ /** The ids of a room's two readers, built from its lists. A room with lists declares both. */
20
+ export const ROOM_INSPECT_ID = 'inspect';
21
+ export const ROOM_QUERY_ID = 'query';
22
+ /** How many rows one `inspect` returns everything about. */
23
+ export const MAX_INSPECTED_ROWS = 20;
24
+ /** How many rows one `query` lists, and how many it lists when not told. */
25
+ export const MAX_QUERY_ROWS = 200;
26
+ export const DEFAULT_QUERY_ROWS = 50;
27
+ const ok = (data) => ({ ok: true, data });
28
+ const fail = (code, message) => ({ ok: false, code, message });
29
+ const refOf = (list, row) => String(row[list.rows.ref]);
30
+ const titleOf = (list, row) => String(row[list.rows.title] ?? '');
31
+ /** A row cut to its index: what addresses it, what it is called, and what tells rows apart. */
32
+ export function indexRow(rows, row) {
33
+ const kept = [rows.ref, rows.title, ...(rows.index ?? [])];
34
+ return Object.fromEntries(kept.filter(key => row[key] !== undefined).map(key => [key, row[key]]));
35
+ }
36
+ /** The `x-ref` of an input that addresses rows of these lists. */
37
+ export function refTo(...lists) {
38
+ return { 'x-ref': lists.map(l => l.id) };
39
+ }
40
+ /**
41
+ * What a given string addresses: the row with that ref, else the one row
42
+ * whose title it is, exactly (case and outer spaces aside). `null` when it is
43
+ * neither, so the action's own check says what is missing; an error when
44
+ * several rows share the title.
45
+ */
46
+ export function resolveRef(given, lookup, among) {
47
+ const lists = among.filter(id => lookup.lists.includes(id));
48
+ for (const id of lists)
49
+ if (lookup.rows(id).some(r => r.ref === given))
50
+ return { ref: given };
51
+ const wanted = given.trim().toLowerCase();
52
+ if (!wanted)
53
+ return null;
54
+ const titled = lists.flatMap(id => lookup.rows(id).filter(r => r.title.trim().toLowerCase() === wanted));
55
+ if (titled.length === 1)
56
+ return { ref: titled[0].ref };
57
+ if (titled.length === 0)
58
+ return null;
59
+ return {
60
+ error: fail('AMBIGUOUS_REF', `${titled.length} things are called "${given}": give the id of the one meant — ${titled
61
+ .slice(0, 30)
62
+ .map(r => r.ref)
63
+ .join(', ')}${titled.length > 30 ? ', …' : ''}. The query tool tells them apart.`),
64
+ };
65
+ }
66
+ /**
67
+ * An action's input with every title given where a row is addressed replaced
68
+ * by the row's ref (the inputs its schema marks `x-ref`), or why one cannot
69
+ * be: several rows share the title. A string that is neither a ref nor a
70
+ * title is left as given.
71
+ */
72
+ export function resolveInputRefs(schema, input, lookup) {
73
+ if (!schema || input === undefined || input === null)
74
+ return { input };
75
+ const among = schema['x-ref'];
76
+ if (among && typeof input === 'string') {
77
+ const found = resolveRef(input, lookup, among);
78
+ if (found && 'error' in found)
79
+ return found;
80
+ return { input: found ? found.ref : input };
81
+ }
82
+ if (Array.isArray(input)) {
83
+ const items = among && !schema.items ? { 'x-ref': among } : schema.items && among ? { ...schema.items, 'x-ref': among } : schema.items;
84
+ const out = [];
85
+ for (const item of input) {
86
+ const resolved = resolveInputRefs(items, item, lookup);
87
+ if ('error' in resolved)
88
+ return resolved;
89
+ out.push(resolved.input);
90
+ }
91
+ return { input: out };
92
+ }
93
+ if (typeof input === 'object' && schema.properties) {
94
+ const out = {};
95
+ for (const [key, value] of Object.entries(input)) {
96
+ const resolved = resolveInputRefs(schema.properties[key], value, lookup);
97
+ if ('error' in resolved)
98
+ return resolved;
99
+ out[key] = resolved.input;
100
+ }
101
+ return { input: out };
102
+ }
103
+ return { input };
104
+ }
105
+ /** Whether a schema, anywhere in it, addresses rows (`x-ref`). */
106
+ export function addressesRows(schema) {
107
+ if (!schema)
108
+ return false;
109
+ if (schema['x-ref'])
110
+ return true;
111
+ if (schema.items && addressesRows(schema.items))
112
+ return true;
113
+ return Object.values(schema.properties ?? {}).some(addressesRows);
114
+ }
115
+ /** The lookup over a room's lists, read from the room as it is now. */
116
+ export function listLookup(lists, ctx) {
117
+ return {
118
+ lists: lists.map(l => l.id),
119
+ rows: id => {
120
+ const list = lists.find(l => l.id === id);
121
+ return list ? list.list(ctx).map(row => ({ ref: refOf(list, row), title: titleOf(list, row) })) : [];
122
+ },
123
+ };
124
+ }
125
+ /**
126
+ * The arrays an observation's schema holds that could be lists of rows: the
127
+ * observation itself when it is an array (named by the observation's id), and
128
+ * each array among its properties (named `<observation id>/<property>`).
129
+ */
130
+ function arraysOf(observation) {
131
+ const own = observation.schema.type === 'array' ? [{ id: observation.id, property: null, schema: observation.schema }] : [];
132
+ const held = Object.entries(observation.schema.properties ?? {})
133
+ .filter(([, schema]) => schema.type === 'array')
134
+ .map(([property, schema]) => ({ id: `${observation.id}/${property}`, property, schema }));
135
+ return [...own, ...held];
136
+ }
137
+ /**
138
+ * The lookup over the lists a surface's observation schemas declare
139
+ * (`x-rows`), read from the observation values the page last reported.
140
+ */
141
+ export function observationLookup(observations, values) {
142
+ const lists = new Map();
143
+ for (const observation of observations) {
144
+ for (const { id, property, schema } of arraysOf(observation)) {
145
+ const rows = schema['x-rows'];
146
+ if (!rows)
147
+ continue;
148
+ lists.set(id, () => {
149
+ const reported = values[observation.id];
150
+ const value = property === null ? reported : reported?.[property];
151
+ return Array.isArray(value)
152
+ ? value
153
+ .filter((row) => row !== null && typeof row === 'object')
154
+ .map(row => ({ ref: String(row[rows.ref]), title: String(row[rows.title] ?? '') }))
155
+ : [];
156
+ });
157
+ }
158
+ }
159
+ return { lists: [...lists.keys()], rows: id => lists.get(id)?.() ?? [] };
160
+ }
161
+ /** The rows of a room result's `changed`: each list's rows among `refs`, as its reader reports them now. */
162
+ export function changedRows(lists, ctx, refs) {
163
+ const wanted = [...new Set(refs)];
164
+ const present = new Map(lists.map(list => [list, new Set(list.list(ctx).map(row => refOf(list, row)))]));
165
+ return wanted.flatMap(ref => {
166
+ const list = lists.find(l => present.get(l).has(ref));
167
+ if (!list)
168
+ return [];
169
+ const detail = list.detail(ctx, ref);
170
+ return [{ list: list.id, ref, ...(detail ? { detail } : {}) }];
171
+ });
172
+ }
173
+ /**
174
+ * The room's two readers, built from its lists. Both only read: they change
175
+ * nothing, select nothing and make no undo step.
176
+ */
177
+ export function roomReaders(room, lists) {
178
+ const named = lists.map(l => `${l.id} (${l.title.toLowerCase()})`).join(', ');
179
+ const byId = new Map(lists.map(l => [l.id, l]));
180
+ const inspect = {
181
+ kind: 'action',
182
+ id: ROOM_INSPECT_ID,
183
+ title: 'Inspect',
184
+ description:
185
+ // The first sentence is what an index carries of this (oui-spec §7.3.8): it is kept short.
186
+ `Reads everything about the things named, as they are now. It is all that the ${room.title}’s panels show for each, ` +
187
+ `and it changes and selects nothing. Give each by its id, or by its exact name when only one thing has it. ` +
188
+ `Its lists: ${named}. Use it to find out what something is before changing it, and to check an edit did what was meant.`,
189
+ control: 'Selecting the thing and reading its panels',
190
+ effect: 'view',
191
+ input: {
192
+ type: 'object',
193
+ properties: {
194
+ refs: {
195
+ type: 'array',
196
+ items: { type: 'string' },
197
+ minItems: 1,
198
+ maxItems: MAX_INSPECTED_ROWS,
199
+ description: `Up to ${MAX_INSPECTED_ROWS} ids (or exact names)`,
200
+ ...refTo(...lists),
201
+ },
202
+ },
203
+ required: ['refs'],
204
+ additionalProperties: false,
205
+ },
206
+ run: (ctx, input) => {
207
+ // A name is as good as an id here, whoever calls: the adapter resolves names for every action, and so does this.
208
+ const lookup = listLookup(lists, ctx);
209
+ const refs = [];
210
+ for (const given of input.refs) {
211
+ const resolved = resolveRef(given, lookup, lookup.lists);
212
+ if (resolved && 'error' in resolved)
213
+ return resolved.error;
214
+ refs.push(resolved ? resolved.ref : given);
215
+ }
216
+ const items = changedRows(lists, ctx, refs);
217
+ const found = new Set(items.map(i => i.ref));
218
+ const missing = refs.filter(ref => !found.has(ref));
219
+ if (items.length === 0) {
220
+ return fail('NO_SUCH_ROW', `Nothing in the ${room.title} has the id or the name ${missing.map(m => `"${m}"`).join(', ')}. ` +
221
+ `List what there is with the query tool.`);
222
+ }
223
+ return ok({ items, ...(missing.length ? { missing } : {}) });
224
+ },
225
+ };
226
+ const query = {
227
+ kind: 'action',
228
+ id: ROOM_QUERY_ID,
229
+ title: 'Query',
230
+ description:
231
+ // The first sentence is what an index carries of this (oui-spec §7.3.8): it is kept short.
232
+ `Lists the rows of one of the ${room.title}’s lists, to find a thing by its name. Its lists: ${named}. Each row has ` +
233
+ `its id, its name and what tells rows apart, and nothing is changed or selected. Narrow it with \`where\` (a row property and the value it must have) and ` +
234
+ `\`title_contains\`; ask for more of each row with \`fields\`; read on from where a page ended with \`after\`. ` +
235
+ `Use it to find a thing by its name or by what it is on, however large the document is.`,
236
+ control: 'Reading the room’s lists (its Layers panel)',
237
+ effect: 'view',
238
+ input: {
239
+ type: 'object',
240
+ properties: {
241
+ list: { type: 'string', enum: lists.map(l => l.id), description: lists.map(l => `${l.id} = ${l.title}`).join('; ') },
242
+ where: {
243
+ type: 'object',
244
+ description: 'Row properties and the value each must have, of those a row is indexed by: ' +
245
+ lists.map(l => `${l.id}: ${[l.rows.ref, l.rows.title, ...(l.rows.index ?? [])].join(', ')}`).join('; '),
246
+ additionalProperties: true,
247
+ },
248
+ title_contains: { type: 'string', description: 'Only rows whose name contains this, whatever its case' },
249
+ fields: {
250
+ type: 'array',
251
+ items: { type: 'string' },
252
+ description: 'More of each row than its index: properties of what inspect returns for it',
253
+ },
254
+ after: { type: 'string', description: 'The id of the last row of the page before: the rows after it are listed' },
255
+ limit: { type: 'integer', minimum: 1, maximum: MAX_QUERY_ROWS, description: `How many rows; ${DEFAULT_QUERY_ROWS} when not given` },
256
+ },
257
+ required: ['list'],
258
+ additionalProperties: false,
259
+ },
260
+ run: (ctx, input) => {
261
+ const list = byId.get(input.list);
262
+ if (!list)
263
+ return fail('NO_SUCH_LIST', `The ${room.title} has no list "${input.list}": its lists are ${named}`);
264
+ const indexed = new Set([list.rows.ref, list.rows.title, ...(list.rows.index ?? [])]);
265
+ const unknown = Object.keys(input.where ?? {}).filter(key => !indexed.has(key));
266
+ if (unknown.length > 0) {
267
+ return fail('NOT_INDEXED', `${list.title} cannot be narrowed by ${unknown.join(', ')}: a row is indexed by ${[...indexed].join(', ')}`);
268
+ }
269
+ const contains = input.title_contains?.trim().toLowerCase();
270
+ const matching = list.list(ctx).filter(row => Object.entries(input.where ?? {}).every(([key, value]) => row[key] === value) &&
271
+ (!contains || titleOf(list, row).toLowerCase().includes(contains)));
272
+ let from = 0;
273
+ if (input.after !== undefined) {
274
+ const at = matching.findIndex(row => refOf(list, row) === input.after);
275
+ if (at === -1)
276
+ return fail('NO_SUCH_ROW', `No row "${input.after}" among those listed: \`after\` is the id of a row of the page before`);
277
+ from = at + 1;
278
+ }
279
+ const page = matching.slice(from, from + (input.limit ?? DEFAULT_QUERY_ROWS));
280
+ const rows = page.map(row => {
281
+ const index = indexRow(list.rows, row);
282
+ if (!input.fields?.length)
283
+ return index;
284
+ const detail = list.detail(ctx, refOf(list, row)) ?? {};
285
+ return { ...index, ...Object.fromEntries(input.fields.filter(f => detail[f] !== undefined).map(f => [f, detail[f]])) };
286
+ });
287
+ const left = matching.length - from - page.length;
288
+ return ok({
289
+ list: list.id,
290
+ total: matching.length,
291
+ rows,
292
+ ...(left > 0 ? { more: left, after: refOf(list, page[page.length - 1]) } : {}),
293
+ });
294
+ },
295
+ };
296
+ return [inspect, query];
297
+ }
298
+ /** The lists a catalog's observations declare (`x-rows`), as `<observation id>/<property>`. */
299
+ export function declaredLists(catalog) {
300
+ return catalog.observations.flatMap(o => arraysOf(o).filter(list => list.schema['x-rows']).map(list => list.id));
301
+ }
302
+ /** Every `x-ref` a schema holds, with where it is. */
303
+ function refsIn(schema, path) {
304
+ if (!schema)
305
+ return [];
306
+ return [
307
+ ...(schema['x-ref'] ? [{ path, lists: schema['x-ref'] }] : []),
308
+ ...refsIn(schema.items, `${path}[]`),
309
+ ...Object.entries(schema.properties ?? {}).flatMap(([key, value]) => refsIn(value, path ? `${path}.${key}` : key)),
310
+ ];
311
+ }
312
+ /**
313
+ * What is wrong with how a catalog declares its lists (ADR-0244 §2.2), in
314
+ * words: a list of things with ids that does not say how its rows are
315
+ * addressed, lists with no readers, and an input that addresses a list the
316
+ * room does not have. A generator fails on any of them, and the conformance
317
+ * kit checks them, so a room cannot ship rows the assistant cannot read.
318
+ */
319
+ export function roomListProblems(catalog) {
320
+ const problems = [];
321
+ const lists = new Set(declaredLists(catalog));
322
+ for (const observation of catalog.observations) {
323
+ for (const { id, property, schema } of arraysOf(observation)) {
324
+ const rows = schema['x-rows'];
325
+ if (!rows) {
326
+ if (schema.items?.properties?.id !== undefined) {
327
+ problems.push(`${catalog.room}’s list ${id} holds things with an id, but does not declare how its rows are addressed and called ` +
328
+ `(x-rows): a list too long for the page state would be cut to a count`);
329
+ }
330
+ continue;
331
+ }
332
+ const row = schema.items?.properties ?? {};
333
+ for (const key of [rows.ref, rows.title, ...(rows.index ?? [])]) {
334
+ if (!(key in row))
335
+ problems.push(`${catalog.room}’s list ${id} indexes rows by ${key}, which a row does not have`);
336
+ }
337
+ if (rows.selection && (property === null || !(rows.selection in (observation.schema.properties ?? {})))) {
338
+ problems.push(`${catalog.room}’s list ${id} names ${rows.selection} as its selection, which the observation does not report beside it`);
339
+ }
340
+ }
341
+ }
342
+ if (lists.size > 0) {
343
+ const ids = new Set(catalog.actions.map(a => a.id));
344
+ for (const id of [ROOM_INSPECT_ID, ROOM_QUERY_ID]) {
345
+ if (!ids.has(id))
346
+ problems.push(`${catalog.room} declares lists (${[...lists].join(', ')}) but no "${id}" action to read them: build its readers with roomReaders`);
347
+ }
348
+ }
349
+ for (const action of catalog.actions) {
350
+ for (const { path, lists: named } of refsIn(action.input, '')) {
351
+ for (const list of named) {
352
+ if (!lists.has(list))
353
+ problems.push(`${catalog.room} action ${action.id}: ${path} addresses ${list}, which is not a list the room declares`);
354
+ }
355
+ }
356
+ }
357
+ return problems;
358
+ }
359
+ /** Every number a schema takes that says no unit, by where it is. A unit on an array is its numbers'. */
360
+ function unitlessNumbers(schema, path, inherited = false) {
361
+ if (!schema)
362
+ return [];
363
+ const types = schema.type === undefined ? [] : typeof schema.type === 'string' ? [schema.type] : schema.type;
364
+ const declared = inherited || schema['x-unit'] !== undefined;
365
+ return [
366
+ ...(types.includes('number') && !declared ? [path] : []),
367
+ // An array's unit is the unit of the numbers it holds, however deep.
368
+ ...unitlessNumbers(schema.items, `${path}[]`, declared && types.includes('array')),
369
+ ...Object.entries(schema.properties ?? {}).flatMap(([key, value]) => unitlessNumbers(value, path ? `${path}.${key}` : key)),
370
+ ...(typeof schema.additionalProperties === 'object' ? unitlessNumbers(schema.additionalProperties, `${path}.*`) : []),
371
+ ...[...(schema.oneOf ?? []), ...(schema.anyOf ?? [])].flatMap(alternative => unitlessNumbers(alternative, path, declared)),
372
+ ];
373
+ }
374
+ /**
375
+ * The numbers a catalog takes that do not say what they are measured in
376
+ * (ADR-0244 §2.3), in words: each field's value and each action's input must
377
+ * give every `number` a unit (`x-unit`). An `integer` counts things and needs
378
+ * none. A generator fails on any of them: a number set without knowing its
379
+ * unit is set by guessing.
380
+ */
381
+ export function roomMeasureProblems(catalog) {
382
+ const say = (what, where) => where.map(path => `${catalog.room} ${what}${path ? `: ${path}` : ''} is a number with no unit (x-unit)`);
383
+ return [
384
+ ...catalog.fields.flatMap(f => [...new Set(say(`field ${f.id}`, unitlessNumbers(f.value, '')))]),
385
+ ...catalog.actions.flatMap(a => [...new Set(say(`action ${a.id}`, unitlessNumbers(a.input, '')))]),
386
+ ];
387
+ }
388
+ //# sourceMappingURL=readers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readers.js","sourceRoot":"","sources":["../src/readers.ts"],"names":[],"mappings":"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"}
package/dist/room.d.ts CHANGED
@@ -20,7 +20,7 @@
20
20
  * the problems it has drawing it.
21
21
  */
22
22
  import type { JsonSchema, RoomActionData, RoomCatalogData, RoomCommand, RoomFieldData, RoomObservation, RoomProblemKind, RoomRecipe, RoomResult } from '@ouispec/contract';
23
- export type { AgentCatalogManifestEntry, RoomActionData, RoomCatalogData, RoomCommand, RoomEntryInfo, RoomFieldAnimation, RoomFieldData, RoomObservation, RoomProblem, RoomProblemKind, RoomRecipe, RoomResult, RoomSection, } from '@ouispec/contract';
23
+ export type { AgentCatalogManifestEntry, RoomActionData, RoomCatalogData, RoomChangedRow, RoomCommand, RoomEntryInfo, RoomFieldAnimation, RoomFieldData, RoomObservation, RoomProblem, RoomProblemKind, RoomRecipe, RoomResult, RoomSection, } from '@ouispec/contract';
24
24
  /**
25
25
  * What a room action changes.
26
26
  * @deprecated Since 0.8: a room action's effect is an `ActionEffect` (ADR-0226 §2.6), of which these are four. Kept for one minor.
@@ -1 +1 @@
1
- {"version":3,"file":"room.d.ts","sourceRoot":"","sources":["../src/room.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACd,eAAe,EACf,WAAW,EACX,aAAa,EACb,eAAe,EACf,eAAe,EACf,UAAU,EACV,UAAU,EACX,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,yBAAyB,EACzB,cAAc,EACd,eAAe,EACf,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,WAAW,EACX,eAAe,EACf,UAAU,EACV,UAAU,EACV,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAE3B;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,MAAM,CAAC;AAEhE,wFAAwF;AACxF,MAAM,WAAW,UAAU,CAAC,GAAG,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAE,SAAQ,cAAc;IACtF,wGAAwG;IACxG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAC/D;AAED,sFAAsF;AACtF,MAAM,WAAW,SAAS,CAAC,GAAG,EAAE,KAAK,GAAG,OAAO,CAAE,SAAQ,aAAa;IACpE,uFAAuF;IACvF,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK,GAAG,SAAS,CAAC;IAClC,iEAAiE;IACjE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACjE;AAED,uGAAuG;AACvG,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,GAAG,cAAc,CAAC,GAAG,OAAO,CAEhG;AAED,kCAAkC;AAClC,MAAM,WAAW,WAAW,CAAC,GAAG;IAC9B,8EAA8E;IAC9E,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,SAAS,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;IAC3C,MAAM,EAAE,SAAS,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC;IAC3C,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;IACjC,YAAY,EAAE,SAAS,eAAe,EAAE,CAAC;IACzC,sGAAsG;IACtG,QAAQ,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;IACtC,qEAAqE;IACrE,OAAO,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CACjC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,mBAAmB,CAAC;AACvD,eAAO,MAAM,mBAAmB,gBAAgB,CAAC;AAEjD,6DAA6D;AAC7D,eAAO,MAAM,uBAAuB,aAAa,CAAC;AAMlD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,GAAE,SAAS,eAAe,EAAO,GAAG,UAAU,CA6BjF;AAED,yFAAyF;AACzF,eAAO,MAAM,eAAe,EAAE,UAA6B,CAAC;AAE5D,uHAAuH;AACvH,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,eAAe,CAkC3E"}
1
+ {"version":3,"file":"room.d.ts","sourceRoot":"","sources":["../src/room.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACd,eAAe,EACf,WAAW,EACX,aAAa,EACb,eAAe,EACf,eAAe,EACf,UAAU,EACV,UAAU,EACX,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,yBAAyB,EACzB,cAAc,EACd,eAAe,EACf,cAAc,EACd,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,WAAW,EACX,eAAe,EACf,UAAU,EACV,UAAU,EACV,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAE3B;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,MAAM,CAAC;AAEhE,wFAAwF;AACxF,MAAM,WAAW,UAAU,CAAC,GAAG,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAE,SAAQ,cAAc;IACtF,wGAAwG;IACxG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAC/D;AAED,sFAAsF;AACtF,MAAM,WAAW,SAAS,CAAC,GAAG,EAAE,KAAK,GAAG,OAAO,CAAE,SAAQ,aAAa;IACpE,uFAAuF;IACvF,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK,GAAG,SAAS,CAAC;IAClC,iEAAiE;IACjE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACjE;AAED,uGAAuG;AACvG,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,GAAG,cAAc,CAAC,GAAG,OAAO,CAEhG;AAED,kCAAkC;AAClC,MAAM,WAAW,WAAW,CAAC,GAAG;IAC9B,8EAA8E;IAC9E,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,SAAS,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;IAC3C,MAAM,EAAE,SAAS,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC;IAC3C,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;IACjC,YAAY,EAAE,SAAS,eAAe,EAAE,CAAC;IACzC,sGAAsG;IACtG,QAAQ,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;IACtC,qEAAqE;IACrE,OAAO,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CACjC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,mBAAmB,CAAC;AACvD,eAAO,MAAM,mBAAmB,gBAAgB,CAAC;AAEjD,6DAA6D;AAC7D,eAAO,MAAM,uBAAuB,aAAa,CAAC;AAMlD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,GAAE,SAAS,eAAe,EAAO,GAAG,UAAU,CA6BjF;AAED,yFAAyF;AACzF,eAAO,MAAM,eAAe,EAAE,UAA6B,CAAC;AAE5D,uHAAuH;AACvH,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,eAAe,CAkC3E"}
package/dist/room.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"room.js","sourceRoot":"","sources":["../src/room.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"room.js","sourceRoot":"","sources":["../src/room.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ouispec/bindings",
3
- "version": "0.1.1",
3
+ "version": "0.2.2",
4
4
  "description": "Every UI capability declared once, in code (ADR-0220): the semantic binding on design-system controls, the room catalog contract, the generated manifest and knowledge, and the runtime registry that serves them as OUI surfaces",
5
5
  "homepage": "https://github.com/wesreid/oui/tree/main/packages/bindings#readme",
6
6
  "bugs": {
@@ -51,9 +51,9 @@
51
51
  }
52
52
  },
53
53
  "dependencies": {
54
- "@ouispec/agent-events": "^0.1.1",
55
- "oui-spec": "^0.7.0",
56
- "@ouispec/contract": "^0.1.0"
54
+ "@ouispec/agent-events": "^0.2.2",
55
+ "@ouispec/contract": "^0.2.0",
56
+ "oui-spec": "^0.8.0"
57
57
  },
58
58
  "devDependencies": {
59
59
  "@testing-library/react": "^16",