@hatiolab/figure-model 0.9.5 → 0.9.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 (70) hide show
  1. package/README.md +1 -1
  2. package/dist/authoring-actions.d.ts.map +1 -1
  3. package/dist/authoring-actions.js +13 -20
  4. package/dist/authoring-actions.js.map +1 -1
  5. package/dist/authoring-geometry.d.ts +7 -0
  6. package/dist/authoring-geometry.d.ts.map +1 -1
  7. package/dist/authoring-geometry.js +25 -2
  8. package/dist/authoring-geometry.js.map +1 -1
  9. package/dist/authoring-occupancy.d.ts.map +1 -1
  10. package/dist/authoring-occupancy.js +284 -75
  11. package/dist/authoring-occupancy.js.map +1 -1
  12. package/dist/authoring-size.d.ts +5 -10
  13. package/dist/authoring-size.d.ts.map +1 -1
  14. package/dist/authoring-size.js +28 -98
  15. package/dist/authoring-size.js.map +1 -1
  16. package/dist/authoring-types.d.ts +10 -22
  17. package/dist/authoring-types.d.ts.map +1 -1
  18. package/dist/contract.d.ts +4 -16
  19. package/dist/contract.d.ts.map +1 -1
  20. package/dist/contract.js.map +1 -1
  21. package/dist/create.d.ts +5 -3
  22. package/dist/create.d.ts.map +1 -1
  23. package/dist/create.js +3 -7
  24. package/dist/create.js.map +1 -1
  25. package/dist/gate.d.ts.map +1 -1
  26. package/dist/gate.js +28 -8
  27. package/dist/gate.js.map +1 -1
  28. package/dist/graph-types.d.ts +15 -2
  29. package/dist/graph-types.d.ts.map +1 -1
  30. package/dist/graph.js +15 -6
  31. package/dist/graph.js.map +1 -1
  32. package/dist/index.d.ts +2 -2
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +1 -1
  35. package/dist/index.js.map +1 -1
  36. package/dist/instance-size.d.ts +58 -32
  37. package/dist/instance-size.d.ts.map +1 -1
  38. package/dist/instance-size.js +155 -41
  39. package/dist/instance-size.js.map +1 -1
  40. package/dist/joint-list.d.ts.map +1 -1
  41. package/dist/joint-list.js +3 -3
  42. package/dist/joint-list.js.map +1 -1
  43. package/dist/joint-writing.d.ts.map +1 -1
  44. package/dist/joint-writing.js +9 -4
  45. package/dist/joint-writing.js.map +1 -1
  46. package/dist/kernel-version.d.ts +1 -1
  47. package/dist/kernel-version.js +1 -1
  48. package/dist/part-edit.d.ts.map +1 -1
  49. package/dist/part-edit.js +2 -2
  50. package/dist/part-edit.js.map +1 -1
  51. package/dist/proposal.js +7 -7
  52. package/dist/proposal.js.map +1 -1
  53. package/dist/recipe-from-parts.js +5 -5
  54. package/dist/recipe-from-parts.js.map +1 -1
  55. package/dist/release-contract.d.ts.map +1 -1
  56. package/dist/release-contract.js +7 -2
  57. package/dist/release-contract.js.map +1 -1
  58. package/dist/release-metrics.d.ts.map +1 -1
  59. package/dist/release-metrics.js +6 -2
  60. package/dist/release-metrics.js.map +1 -1
  61. package/dist/resize-plan.d.ts.map +1 -1
  62. package/dist/resize-plan.js +4 -9
  63. package/dist/resize-plan.js.map +1 -1
  64. package/dist/room.d.ts.map +1 -1
  65. package/dist/room.js +13 -4
  66. package/dist/room.js.map +1 -1
  67. package/dist/shape-provider.d.ts.map +1 -1
  68. package/dist/shape-provider.js +4 -3
  69. package/dist/shape-provider.js.map +1 -1
  70. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"shape-provider.d.ts","sourceRoot":"","sources":["../src/shape-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAA;AAEvB,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,eAAe,EAAE,CAAA;AAExE;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,6HAA6H;IAC7H,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC,CAAC,CAAA;IAC3E,qEAAqE;IACrE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAA;IAC7C,mEAAmE;IACnE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAA;CACjD;AAED,KAAK,SAAS,GAAG;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,CAAA;AAEvG,kFAAkF;AAClF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,mBAAmB,GAAG,SAAS,CAGnG;AAED,kGAAkG;AAClG,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI,EAAE,CAOzE;AAUD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI,EAAE,CAI3E"}
1
+ {"version":3,"file":"shape-provider.d.ts","sourceRoot":"","sources":["../src/shape-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAA;AAEvB,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,eAAe,EAAE,CAAA;AAExE;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,6HAA6H;IAC7H,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC,CAAC,CAAA;IAC3E,qEAAqE;IACrE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAA;IAC7C,mEAAmE;IACnE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAA;CACjD;AAED,KAAK,SAAS,GAAG;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,CAAA;AAEvG,kFAAkF;AAClF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,mBAAmB,GAAG,SAAS,CAGnG;AAED,kGAAkG;AAClG,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI,EAAE,CAOzE;AAWD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI,EAAE,CAI3E"}
@@ -19,12 +19,13 @@ export function figureEditableAxesOf(shape) {
19
19
  * offers "follow" asks here -- follow-size, the resize plan, the modeller -- so no two lists decide it apart (designer
20
20
  * 2026-09-27). Linking reads the provider's `edit`, so every editable axis follows, except:
21
21
  * - an axis that carries another argument in proportion (a taper's other end): linking writes one argument;
22
- * - a sphere: its radius across is one value for X and for Z, so following the figure its depth would follow the width
23
- * and not the depth. Not offered until someone rules on it -- it was not offered before either.
22
+ * - an axis that is another's (`sameAs`): a turned body's radius across is one value for X and Z, so a cylinder or a
23
+ * sphere follows across by its X, and its depth goes with its width (user 2026-10-21: a sphere follows as a
24
+ * cylinder does, across and along Y).
24
25
  */
25
26
  export function figureFollowableAxesOf(shape) {
26
27
  const own = figureShapeDescriptionOf(shape);
27
- if (!own || own.kind === 'sphere')
28
+ if (!own)
28
29
  return [];
29
30
  return figureEditableAxesOf(shape).filter(axis => !own.edit[axis].with?.length);
30
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shape-provider.js","sourceRoot":"","sources":["../src/shape-provider.ts"],"names":[],"mappings":"AACA,OAAO,EACL,wBAAwB,EAKzB,MAAM,gBAAgB,CAAA;AAsBvB,kFAAkF;AAClF,MAAM,UAAU,qBAAqB,CAAC,KAA4B;IAChE,MAAM,GAAG,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IAC3C,OAAO,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAA;AAC1E,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,oBAAoB,CAAC,KAA4B;IAC/D,MAAM,IAAI,GAAG,qBAAqB,CAAC,KAAK,CAAC,EAAE,IAAI,CAAA;IAC/C,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAA;IACpB,OAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC/C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;QACpB,OAAO,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAA;IACvC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAA4B;IACjE,MAAM,GAAG,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IAC3C,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAA;IAC5C,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAkC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;AACnH,CAAC"}
1
+ {"version":3,"file":"shape-provider.js","sourceRoot":"","sources":["../src/shape-provider.ts"],"names":[],"mappings":"AACA,OAAO,EACL,wBAAwB,EAKzB,MAAM,gBAAgB,CAAA;AAsBvB,kFAAkF;AAClF,MAAM,UAAU,qBAAqB,CAAC,KAA4B;IAChE,MAAM,GAAG,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IAC3C,OAAO,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAA;AAC1E,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,oBAAoB,CAAC,KAA4B;IAC/D,MAAM,IAAI,GAAG,qBAAqB,CAAC,KAAK,CAAC,EAAE,IAAI,CAAA;IAC/C,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAA;IACpB,OAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC/C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;QACpB,OAAO,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAA;IACvC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAA4B;IACjE,MAAM,GAAG,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IAC3C,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAA;IACnB,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAkC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;AACnH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hatiolab/figure-model",
3
- "version": "0.9.5",
3
+ "version": "0.9.6",
4
4
  "description": "The figure format (figure-asset-1): a kernel that evaluates a figure from its declared relations, the authoring commands a modeller and an AI share, the release gate and the score.",
5
5
  "keywords": [
6
6
  "figure",