@hatiolab/figure-model 0.6.4 → 0.6.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/dist/asset-types.d.ts +142 -2
  3. package/dist/asset-types.d.ts.map +1 -1
  4. package/dist/asset.d.ts.map +1 -1
  5. package/dist/asset.js +5 -1
  6. package/dist/asset.js.map +1 -1
  7. package/dist/authoring-actions.d.ts.map +1 -1
  8. package/dist/authoring-actions.js +2 -2
  9. package/dist/authoring-actions.js.map +1 -1
  10. package/dist/clip-keeping.d.ts +9 -0
  11. package/dist/clip-keeping.d.ts.map +1 -1
  12. package/dist/clip-keeping.js +34 -0
  13. package/dist/clip-keeping.js.map +1 -1
  14. package/dist/contract.d.ts +97 -0
  15. package/dist/contract.d.ts.map +1 -1
  16. package/dist/contract.js.map +1 -1
  17. package/dist/data-interface.d.ts +81 -0
  18. package/dist/data-interface.d.ts.map +1 -0
  19. package/dist/data-interface.js +723 -0
  20. package/dist/data-interface.js.map +1 -0
  21. package/dist/driver.d.ts +3 -0
  22. package/dist/driver.d.ts.map +1 -1
  23. package/dist/driver.js +22 -6
  24. package/dist/driver.js.map +1 -1
  25. package/dist/graph.d.ts +5 -1
  26. package/dist/graph.d.ts.map +1 -1
  27. package/dist/graph.js +6 -0
  28. package/dist/graph.js.map +1 -1
  29. package/dist/index.d.ts +5 -2
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +5 -2
  32. package/dist/index.js.map +1 -1
  33. package/dist/item-seats.d.ts +50 -0
  34. package/dist/item-seats.d.ts.map +1 -0
  35. package/dist/item-seats.js +92 -0
  36. package/dist/item-seats.js.map +1 -0
  37. package/dist/joint-part-edits.d.ts.map +1 -1
  38. package/dist/joint-part-edits.js +3 -0
  39. package/dist/joint-part-edits.js.map +1 -1
  40. package/dist/kernel-version.d.ts +1 -1
  41. package/dist/kernel-version.js +1 -1
  42. package/dist/motion-groups.d.ts +74 -0
  43. package/dist/motion-groups.d.ts.map +1 -0
  44. package/dist/motion-groups.js +241 -0
  45. package/dist/motion-groups.js.map +1 -0
  46. package/dist/part-edit.d.ts +66 -7
  47. package/dist/part-edit.d.ts.map +1 -1
  48. package/dist/part-edit.js +154 -12
  49. package/dist/part-edit.js.map +1 -1
  50. package/dist/proposal.d.ts +2 -2
  51. package/dist/proposal.d.ts.map +1 -1
  52. package/dist/proposal.js +40 -4
  53. package/dist/proposal.js.map +1 -1
  54. package/dist/release-contract.d.ts +1 -1
  55. package/dist/release-contract.d.ts.map +1 -1
  56. package/dist/release-contract.js +83 -0
  57. package/dist/release-contract.js.map +1 -1
  58. package/dist/robots.d.ts +46 -0
  59. package/dist/robots.d.ts.map +1 -1
  60. package/dist/robots.js +137 -0
  61. package/dist/robots.js.map +1 -1
  62. package/dist/room.d.ts.map +1 -1
  63. package/dist/room.js +1 -0
  64. package/dist/room.js.map +1 -1
  65. package/docs/motion-contract.md +30 -2
  66. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-interface.js","sourceRoot":"","sources":["../src/data-interface.ts"],"names":[],"mappings":"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"}
package/dist/driver.d.ts CHANGED
@@ -11,6 +11,9 @@ export declare function driverValue(driver: FigureDriver, timeSeconds: number, u
11
11
  /**
12
12
  * Every driven state at one time, ready to pass as state overrides. The consumer chooses, per state, whether
13
13
  * the driver or an external input is the active control source; this returns the drivers' side only.
14
+ *
15
+ * Only for a figure with no motion groups: with groups, which clip plays is a selection, and `sampleFigureMotion` takes
16
+ * it (`MOTION_SELECTION_REQUIRED` otherwise) -- playing every clip and keeping the last would be list order deciding.
14
17
  */
15
18
  export declare function driverStates(asset: FigureAsset, timeSeconds: number): Record<string, number>;
16
19
  /** Refuses a `stateInputs` map the contract does not allow. Called by `compileFigureAsset`. */
@@ -1 +1 @@
1
- {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../src/driver.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AAWzF,yFAAyF;AACzF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CA4C9D;AAiBD,8FAA8F;AAC9F,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAKzE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,GAAE,KAAK,GAAG,KAAK,GAAG,OAAiB,GAAG,MAAM,CAqBtH;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQ5F;AAED,+FAA+F;AAC/F,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAelE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,KAAK,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EACnD,SAAS,EAAE,MAAM,GAChB,MAAM,CAWR;AAED,uDAAuD;AACvD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,GAAG,sBAAsB,CAEvF"}
1
+ {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../src/driver.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AAWzF,yFAAyF;AACzF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAsD9D;AAiBD,8FAA8F;AAC9F,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAKzE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,GAAE,KAAK,GAAG,KAAK,GAAG,OAAiB,GAAG,MAAM,CAqBtH;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAU5F;AAED,+FAA+F;AAC/F,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAelE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,KAAK,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EACnD,SAAS,EAAE,MAAM,GAChB,MAAM,CAWR;AAED,uDAAuD;AACvD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,GAAG,sBAAsB,CAEvF"}
package/dist/driver.js CHANGED
@@ -13,8 +13,9 @@
13
13
  * keys first would make 350° → 370° turn the wrong way.
14
14
  */
15
15
  import { FigureContractError } from "./contract.js";
16
- const fail = (code, path, detail) => {
17
- throw new FigureContractError(code, path, detail);
16
+ import { figureClipGroupsOf } from "./motion-groups.js";
17
+ const fail = (code, path, detail, details) => {
18
+ throw new FigureContractError(code, path, detail, details);
18
19
  };
19
20
  /** The inputs a driver may write, with their units: the asset's state inputs. */
20
21
  function stateUnits(asset) {
@@ -29,7 +30,9 @@ export function validateFigureDrivers(asset) {
29
30
  fail('DRIVER', 'drivers', 'array required');
30
31
  const states = stateUnits(asset);
31
32
  const seenIds = new Set();
32
- const seenStates = new Set();
33
+ /* Who writes each state: one clip, or clips of one motion group of which only the selected one plays (ADR-0051 §3.2). */
34
+ const writers = new Map();
35
+ const groupOf = figureClipGroupsOf(asset);
33
36
  const clipDurations = new Map();
34
37
  for (const d of drivers) {
35
38
  const path = `drivers.${String(d?.id ?? '?')}`;
@@ -45,9 +48,17 @@ export function validateFigureDrivers(asset) {
45
48
  fail('DRIVER', path, 'clip required; the playback group is declared, not read out of the id');
46
49
  if (!states.has(d.state))
47
50
  fail('DRIVER_STATE', path, `${String(d.state)} is not a state input of this asset`);
48
- if (seenStates.has(d.state))
49
- fail('DRIVER_STATE', path, `two drivers write ${d.state}; one writer per state`);
50
- seenStates.add(d.state);
51
+ const clips = writers.get(d.state) ?? [];
52
+ if (clips.includes(d.clip))
53
+ fail('DRIVER_STATE', path, `clip ${d.clip} writes ${d.state} twice; one track per state in a clip`, { reason: 'driver-writers', state: d.state, clips: [d.clip] });
54
+ const group = groupOf.get(d.clip);
55
+ if (clips.length && (group === undefined || clips.some(c => groupOf.get(c) !== group)))
56
+ fail('DRIVER_STATE', path, `${[...clips, d.clip].join(', ')} all write ${d.state}; one writer per state, unless the clips are one motion group`, {
57
+ reason: 'driver-writers',
58
+ state: d.state,
59
+ clips: [...clips, d.clip]
60
+ });
61
+ writers.set(d.state, [...clips, d.clip]);
51
62
  if (JSON.stringify(keysOf(d.time)) !== JSON.stringify(['duration', 'unit']) || d.time.unit !== 's')
52
63
  fail('DRIVER_TIME', path, 'time must be { unit: "s", duration }');
53
64
  if (!(Number.isFinite(d.time.duration) && d.time.duration > 0))
@@ -140,8 +151,13 @@ export function driverValue(driver, timeSeconds, unit = 'other') {
140
151
  /**
141
152
  * Every driven state at one time, ready to pass as state overrides. The consumer chooses, per state, whether
142
153
  * the driver or an external input is the active control source; this returns the drivers' side only.
154
+ *
155
+ * Only for a figure with no motion groups: with groups, which clip plays is a selection, and `sampleFigureMotion` takes
156
+ * it (`MOTION_SELECTION_REQUIRED` otherwise) -- playing every clip and keeping the last would be list order deciding.
143
157
  */
144
158
  export function driverStates(asset, timeSeconds) {
159
+ if (asset.motionGroups?.length)
160
+ fail('MOTION_SELECTION_REQUIRED', 'motionGroups', 'this figure plays one clip of each motion group at a time; say which with sampleFigureMotion');
145
161
  const units = stateUnits(asset);
146
162
  const out = {};
147
163
  for (const d of asset.drivers ?? []) {
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../src/driver.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAGnD,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,MAAc,EAAS,EAAE;IACjE,MAAM,IAAI,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;AACnD,CAAC,CAAA;AAED,iFAAiF;AACjF,SAAS,UAAU,CAAC,KAAkB;IACpC,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACtG,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,qBAAqB,CAAC,KAAkB;IACtD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;IAC7B,IAAI,OAAO,KAAK,SAAS;QAAE,OAAM;IACjC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAA;IACxE,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAChC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;IACjC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAA;IACpC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC/C,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,WAAW,MAAM,CAAE,CAAsB,EAAE,EAAE,IAAI,GAAG,CAAC,EAAE,CAAA;QACpE,MAAM,MAAM,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAC1F,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC/H,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,gFAAgF,CAAC,CAAA;QACxG,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE;YAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,aAAa,CAAC,CAAA;QACjF,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,qBAAqB,CAAC,CAAA;QAClE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACjB,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,uEAAuE,CAAC,CAAA;QAC/I,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;YAAE,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAA;QAC7G,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;YAAE,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,qBAAqB,CAAC,CAAC,KAAK,wBAAwB,CAAC,CAAA;QAC7G,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;QACvB,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG;YAChG,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,sCAAsC,CAAC,CAAA;QACnE,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;YAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,uCAAuC,CAAC,CAAA;QAClI,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACxC,IAAI,MAAM,KAAK,SAAS;YAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;aAC/D,IAAI,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ;YACjC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,IAAI,sBAAsB,MAAM,oEAAoE,CAAC,CAAA;QAC5I,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,4BAA4B,CAAC,CAAA;QACxG,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAA;QACpB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,wBAAwB,CAAC,CAAA;YACtH,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;gBAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,qDAAqD,CAAC,CAAA;YACxI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC;gBAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,sCAAsC,CAAC,CAAA;YACrF,IAAI,GAAG,CAAC,CAAC,EAAE,CAAA;YACX,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;gBAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,2BAA2B,CAAC,CAAA;QACvF,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,uBAAuB,CAAC,CAAA;QAC3E,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC;YAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,iCAAiC,CAAC,CAAA;QAC1G,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAA;QACpF,IAAI,OAAO,CAAC,CAAC,WAAW,KAAK,SAAS;YAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,+BAA+B,CAAC,CAAA;QAC7F,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAE,CAAA;QACjC,IAAI,CAAC,CAAC,WAAW,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK;YACnD,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,2CAA2C,CAAC,CAAC,KAAK,UAAU,IAAI,EAAE,CAAC,CAAA;IAClG,CAAC;AACH,CAAC;AAED,2GAA2G;AAC3G,SAAS,UAAU,CAAC,MAAoB,EAAE,QAAgB;IACxD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;IACxB,IAAI,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAE,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK,CAAA;IAClD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAE,CAAA;IACnC,IAAI,QAAQ,IAAI,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC,KAAK,CAAA;IAC1C,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,EAAE,IAAI,QAAQ;QAAE,CAAC,EAAE,CAAA;IAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAE,EACnB,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAE,CAAA;IACnB,IAAI,MAAM,CAAC,aAAa,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC,KAAK,CAAA;IACtD,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAA;IAC5B,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;AAC7E,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,IAAmB;IAC/D,MAAM,IAAI,GAAG,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;IAC/C,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAA;IACrB,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAA;IAChE,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAA;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,MAAoB,EAAE,WAAmB,EAAE,OAAgC,OAAO;IAC5G,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE,EAAE,sBAAsB,CAAC,CAAA;IACzF,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,CAAA;IAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAA;IACrC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK,EACjC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAE,CAAA;IAChD,IAAI,KAAa,CAAA;IACjB,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,GAAG,QAAQ,CAAA;QACrC,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAA;QAC7C,+FAA+F;QAC/F,IAAI,MAAM,CAAC,WAAW;YAAE,KAAK,IAAI,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,CAAA;IACpE,CAAC;IACD,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK;YAAE,OAAO,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACxE,OAAO,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE,EAAE,4CAA4C,CAAC,CAAA;IACtF,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,KAAkB,EAAE,WAAmB;IAClE,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAC/B,MAAM,GAAG,GAA2B,EAAE,CAAA;IACtC,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;QAC/B,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;IAC/F,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,yBAAyB,CAAC,KAAkB;IAC1D,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAA;IAClC,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAM;IAClC,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;QAAE,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,iBAAiB,CAAC,CAAA;IAC/H,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAChC,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAG,eAAe,EAAE,EAAE,CAAA;QAChC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,GAAG,EAAE,qCAAqC,CAAC,CAAA;QAC1F,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAA;QACjG,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,OAAO;gBAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,CAAA;QAC7G,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC3E,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,iCAAiC,CAAC,CAAA;QAC9D,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;YACtE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,iDAAiD,CAAC,CAAA;IAChF,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAAe,EACf,MAAc,EACd,KAAmD,EACnD,SAAiB;IAEjB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,IAAI,CAAC,aAAa,EAAE,mBAAmB,EAAE,wBAAwB,CAAC,CAAA;IAC7H,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,GAAG,CAAC;QAAE,IAAI,CAAC,aAAa,EAAE,mBAAmB,EAAE,yCAAyC,CAAC,CAAA;IACrI,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAA;IACzB,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;IAClC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QAAE,OAAO,MAAM,CAAA;IACxC,MAAM,IAAI,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,SAAS,CAAA;IACvC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QAAE,OAAO,OAAO,CAAA;IAC/B,MAAM,GAAG,GAAG,MAAM,GAAG,OAAO,CAAA;IAC5B,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI;QAAE,OAAO,MAAM,CAAA;IACxC,OAAO,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;AACxC,CAAC;AAED,uDAAuD;AACvD,MAAM,UAAU,gBAAgB,CAAC,KAAkB,EAAE,EAAU;IAC7D,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAA;AACtC,CAAC"}
1
+ {"version":3,"file":"driver.js","sourceRoot":"","sources":["../src/driver.ts"],"names":[],"mappings":"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"}
package/dist/graph.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { FigureContractError as ContractError } from './contract.ts';
2
- import type { FigureCompiledGraph } from './graph-types.ts';
2
+ import type { FigureCompiledGraph, FigureUnit } from './graph-types.ts';
3
3
  import { type FigureShapeFace } from './shape-ops.ts';
4
4
  /**
5
5
  * What an operator does with an argument that depends on a state input (shape-dimension contract §2).
@@ -29,6 +29,10 @@ export declare function figureShapeFaces(shape: {
29
29
  constants: readonly unknown[];
30
30
  }): Readonly<Record<string, FigureShapeFace>> | undefined;
31
31
  export { ContractError };
32
+ /** The units the graph knows, in the table's order: what a screen offers for a value's unit. */
33
+ export declare const FIGURE_UNITS: readonly FigureUnit[];
34
+ /** Whether a unit is one the graph knows (`FigureUnit`): the table above is the one list. */
35
+ export declare function figureUnitKnown(unit: unknown): unit is FigureUnit;
32
36
  /** The operators a pose step does not run: an input whose reach holds one goes by an ordinary evaluation. */
33
37
  export declare const FIGURE_POSE_EXCLUDED_OPERATORS: readonly string[];
34
38
  /** Every operator's state policy, by name, for the guard test and for readers of the contract. */
@@ -1 +1 @@
1
- {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,IAAI,aAAa,EAA6B,MAAM,eAAe,CAAA;AAC/F,OAAO,KAAK,EAAE,mBAAmB,EAAiI,MAAM,kBAAkB,CAAA;AAC1L,OAAO,EAKL,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAA;AAIvB;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,SAAS,CAAA;AAmBrD;;;;GAIG;AACH,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAarD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,EAC7F,KAAK,CAAC,EAAE;IAAE,KAAK,EAAE,SAAS,OAAO,EAAE,CAAC;IAAC,SAAS,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,GACnE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,GAAG,SAAS,CAGvD;AACD,OAAO,EAAE,aAAa,EAAE,CAAA;AA6nBxB,6GAA6G;AAC7G,eAAO,MAAM,8BAA8B,EAAE,SAAS,MAAM,EAAmE,CAAA;AAE/H,kGAAkG;AAClG,eAAO,MAAM,4BAA4B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAEpF,CAAA;AAED,6FAA6F;AAC7F,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAA0F,CAAA;AAE/J,sFAAsF;AACtF,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAAoC,CAAA;AAElF;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,EAAE,SAAS,MAAM,EAAiF,CAAA;AAE1I;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,EAAE,SAAS,MAAM,EAAmC,CAAA;AAmIlG;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,mBAAmB,CAEvE"}
1
+ {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,IAAI,aAAa,EAA6B,MAAM,eAAe,CAAA;AAC/F,OAAO,KAAK,EAAE,mBAAmB,EAAiI,UAAU,EAAE,MAAM,kBAAkB,CAAA;AACtM,OAAO,EAKL,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAA;AAIvB;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,SAAS,CAAA;AAmBrD;;;;GAIG;AACH,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAarD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,EAC7F,KAAK,CAAC,EAAE;IAAE,KAAK,EAAE,SAAS,OAAO,EAAE,CAAC;IAAC,SAAS,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,GACnE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,GAAG,SAAS,CAGvD;AACD,OAAO,EAAE,aAAa,EAAE,CAAA;AAwCxB,gGAAgG;AAChG,eAAO,MAAM,YAAY,EAAE,SAAS,UAAU,EAAsD,CAAA;AACpG,6FAA6F;AAC7F,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,UAAU,CAEjE;AAslBD,6GAA6G;AAC7G,eAAO,MAAM,8BAA8B,EAAE,SAAS,MAAM,EAAmE,CAAA;AAE/H,kGAAkG;AAClG,eAAO,MAAM,4BAA4B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAEpF,CAAA;AAED,6FAA6F;AAC7F,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAA0F,CAAA;AAE/J,sFAAsF;AACtF,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAAoC,CAAA;AAElF;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,EAAE,SAAS,MAAM,EAAiF,CAAA;AAE1I;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,EAAE,SAAS,MAAM,EAAmC,CAAA;AAmIlG;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,mBAAmB,CAEvE"}
package/dist/graph.js CHANGED
@@ -64,6 +64,12 @@ function num(x, path) {
64
64
  fail('NON_FINITE', path, String(x));
65
65
  return x;
66
66
  }
67
+ /** The units the graph knows, in the table's order: what a screen offers for a value's unit. */
68
+ export const FIGURE_UNITS = Object.freeze(Object.keys(units));
69
+ /** Whether a unit is one the graph knows (`FigureUnit`): the table above is the one list. */
70
+ export function figureUnitKnown(unit) {
71
+ return typeof unit === 'string' && Object.hasOwn(units, unit);
72
+ }
67
73
  function unit(x, path) {
68
74
  if (!Object.hasOwn(units, x))
69
75
  fail('UNIT', path, String(x));