brepjs 13.4.0 → 14.1.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.
Files changed (125) hide show
  1. package/dist/2d.cjs +15 -14
  2. package/dist/2d.js +6 -5
  3. package/dist/arrayAccess-CmulMesb.cjs +40 -0
  4. package/dist/arrayAccess-xxcB3YNq.js +23 -0
  5. package/dist/{blueprint-CB_85Lz_.js → blueprint-B3A5x7P9.js} +9 -9
  6. package/dist/{blueprint-CDnBM-tA.cjs → blueprint-D0XChcek.cjs} +13 -13
  7. package/dist/{blueprintFns-DVDommWB.js → blueprintFns-BwAMXY3t.js} +4 -125
  8. package/dist/{blueprintFns-D4YucGaQ.cjs → blueprintFns-COrEYX29.cjs} +3 -142
  9. package/dist/{boolean2D-lqfKJKUY.cjs → boolean2D-BPsyKImE.cjs} +19 -18
  10. package/dist/{boolean2D-Mzp-0g7o.js → boolean2D-D_Te-6N6.js} +12 -11
  11. package/dist/{booleanFns-Bw8sAMgI.cjs → booleanFns-B6M6Lm0V.cjs} +24 -22
  12. package/dist/{booleanFns-B46fgObh.js → booleanFns-CgsaJFBf.js} +8 -6
  13. package/dist/brepjs.cjs +301 -90
  14. package/dist/brepjs.js +189 -26
  15. package/dist/constants-B9u763C3.js +9 -0
  16. package/dist/constants-unWN8k4c.cjs +26 -0
  17. package/dist/core/errors.d.ts +5 -1
  18. package/dist/core/errors.d.ts.map +1 -1
  19. package/dist/core/kernelCall.d.ts.map +1 -1
  20. package/dist/core/kernelErrorTranslation.d.ts +2 -0
  21. package/dist/core/kernelErrorTranslation.d.ts.map +1 -1
  22. package/dist/core.cjs +8 -7
  23. package/dist/core.js +5 -4
  24. package/dist/{cornerFinder-aBLykolI.js → cornerFinder-AEFnAxt4.js} +3 -3
  25. package/dist/{cornerFinder-BszIcLqj.cjs → cornerFinder-DTt_SvtC.cjs} +4 -4
  26. package/dist/{curveFns-DY4dFcP-.js → curveFns-CcInoOEA.js} +2 -2
  27. package/dist/{curveFns-CZszKLQB.cjs → curveFns-DCEcwcpd.cjs} +2 -2
  28. package/dist/{drawFns-BHNDF8hb.cjs → drawFns-BOwBIzPa.cjs} +34 -17
  29. package/dist/{drawFns-l5CY2s-l.js → drawFns-n9qif7QN.js} +16 -14
  30. package/dist/{errors-BlC5ZWv4.cjs → errors-9zQcQK1H.cjs} +28 -0
  31. package/dist/{errors-BVOlxlIA.js → errors-C-cgQA3w.js} +23 -1
  32. package/dist/{extrudeFns-b0uLn4E4.js → extrudeFns-DrDr9-nU.js} +3 -3
  33. package/dist/{extrudeFns-GpCB_Uzs.cjs → extrudeFns-Rcut7h8S.cjs} +3 -3
  34. package/dist/{faceFns-Cat-4X74.js → faceFns-TSH54pPQ.js} +93 -3
  35. package/dist/{faceFns-BywUjlJ7.cjs → faceFns-cE2WxY6I.cjs} +110 -2
  36. package/dist/{helpers-1iCCEElA.cjs → helpers-DZje6XWE.cjs} +18 -17
  37. package/dist/{helpers-DgX1UucG.js → helpers-XrXlKm8D.js} +8 -7
  38. package/dist/{historyFns-BFwp8NLX.js → historyFns-2hCWrX_X.js} +10 -10
  39. package/dist/{historyFns-DqxDtXIZ.cjs → historyFns-BiQ9dmzp.cjs} +10 -10
  40. package/dist/{importFns-ChXEJAvu.cjs → importFns-DGE5nCSW.cjs} +4 -4
  41. package/dist/{importFns-Cb8fcldB.js → importFns-m0xyj0Zt.js} +4 -4
  42. package/dist/index.d.ts +11 -0
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/io.cjs +2 -2
  45. package/dist/io.js +2 -2
  46. package/dist/kernel/brepkit/brepkitAdapter.d.ts +149 -242
  47. package/dist/kernel/brepkit/brepkitAdapter.d.ts.map +1 -1
  48. package/dist/kernel/brepkit/evolutionOps.d.ts +1 -0
  49. package/dist/kernel/brepkit/evolutionOps.d.ts.map +1 -1
  50. package/dist/kernel/index.d.ts +1 -1
  51. package/dist/kernel/index.d.ts.map +1 -1
  52. package/dist/{measureFns-D3rAp1X1.js → measureFns-DHByqdmn.js} +9 -16
  53. package/dist/{measureFns-Bx-kl7_g.cjs → measureFns-D_QKZ5yg.cjs} +9 -16
  54. package/dist/measurement/measureFns.d.ts.map +1 -1
  55. package/dist/measurement.cjs +1 -1
  56. package/dist/measurement.js +1 -1
  57. package/dist/{meshFns-D3KAZ_ma.cjs → meshFns-CVe3Kc77.cjs} +4 -4
  58. package/dist/{meshFns-BPi0bhm9.js → meshFns-DL4Djz3w.js} +3 -3
  59. package/dist/ns/booleans.d.ts +10 -0
  60. package/dist/ns/booleans.d.ts.map +1 -0
  61. package/dist/ns/construction.d.ts +10 -0
  62. package/dist/ns/construction.d.ts.map +1 -0
  63. package/dist/ns/ioNs.d.ts +18 -0
  64. package/dist/ns/ioNs.d.ts.map +1 -0
  65. package/dist/ns/measurement.d.ts +6 -0
  66. package/dist/ns/measurement.d.ts.map +1 -0
  67. package/dist/ns/modifiers.d.ts +6 -0
  68. package/dist/ns/modifiers.d.ts.map +1 -0
  69. package/dist/ns/patterns.d.ts +5 -0
  70. package/dist/ns/patterns.d.ts.map +1 -0
  71. package/dist/ns/primitives.d.ts +7 -0
  72. package/dist/ns/primitives.d.ts.map +1 -0
  73. package/dist/ns/query.d.ts +6 -0
  74. package/dist/ns/query.d.ts.map +1 -0
  75. package/dist/ns/transforms.d.ts +5 -0
  76. package/dist/ns/transforms.d.ts.map +1 -0
  77. package/dist/operations.cjs +2 -2
  78. package/dist/operations.js +2 -2
  79. package/dist/{planeOps-BqLav0Ir.cjs → planeOps-6Wu7dMDN.cjs} +4 -3
  80. package/dist/{planeOps-D88tfyJs.js → planeOps-gTOEarV2.js} +3 -2
  81. package/dist/{primitiveFns-BGh9A9jR.cjs → primitiveFns-CRPGjIFg.cjs} +69 -69
  82. package/dist/{primitiveFns-CnZkW6Bi.js → primitiveFns-CeKiYSSW.js} +7 -7
  83. package/dist/query.cjs +2 -2
  84. package/dist/query.js +2 -2
  85. package/dist/result.cjs +1 -1
  86. package/dist/result.js +1 -1
  87. package/dist/{arrayAccess-B5LgmXBo.js → shapeFns-DCi9O27X.js} +8 -30
  88. package/dist/{arrayAccess-t2dlxGSK.cjs → shapeFns-aEeSHNqX.cjs} +24 -64
  89. package/dist/shapeRef.cjs +8 -0
  90. package/dist/shapeRef.d.ts +5 -0
  91. package/dist/shapeRef.d.ts.map +1 -0
  92. package/dist/shapeRef.js +2 -0
  93. package/dist/shapeRefFns-B1TODUMl.js +194 -0
  94. package/dist/shapeRefFns-CVdS6jWS.cjs +229 -0
  95. package/dist/{shapeTypes-Di6GlhPk.js → shapeTypes-BO1aiDhi.js} +2642 -2546
  96. package/dist/{shapeTypes-8eK48l-X.cjs → shapeTypes-BqWQlrYE.cjs} +2642 -2546
  97. package/dist/sketching.cjs +2 -2
  98. package/dist/sketching.js +2 -2
  99. package/dist/{solidBuilders-D9KYP9sL.cjs → solidBuilders-0iVdiZUw.cjs} +3 -3
  100. package/dist/{solidBuilders-ctO_wFrm.js → solidBuilders-jk7HfWs8.js} +3 -3
  101. package/dist/{surfaceBuilders-CZzipftq.cjs → surfaceBuilders-C_8rs79F.cjs} +3 -3
  102. package/dist/{surfaceBuilders-BaqeZa0x.js → surfaceBuilders-DE5e6bp8.js} +3 -3
  103. package/dist/topology/api.d.ts +3 -3
  104. package/dist/topology/api.d.ts.map +1 -1
  105. package/dist/topology/shapeFns.d.ts +4 -3
  106. package/dist/topology/shapeFns.d.ts.map +1 -1
  107. package/dist/topology/shapeRef/index.d.ts +7 -0
  108. package/dist/topology/shapeRef/index.d.ts.map +1 -0
  109. package/dist/topology/shapeRef/scoring.d.ts +16 -0
  110. package/dist/topology/shapeRef/scoring.d.ts.map +1 -0
  111. package/dist/topology/shapeRef/shapeRefFns.d.ts +47 -0
  112. package/dist/topology/shapeRef/shapeRefFns.d.ts.map +1 -0
  113. package/dist/topology/shapeRef/shapeRefTypes.d.ts +40 -0
  114. package/dist/topology/shapeRef/shapeRefTypes.d.ts.map +1 -0
  115. package/dist/topology.cjs +20 -20
  116. package/dist/topology.js +6 -6
  117. package/dist/{vecOps-DKGelwGL.cjs → vecOps-BXvBYIor.cjs} +0 -26
  118. package/dist/{vecOps-DFfUfsmc.js → vecOps-D9etjPgV.js} +1 -9
  119. package/dist/vectors.cjs +5 -4
  120. package/dist/vectors.js +3 -2
  121. package/dist/worker.cjs +1 -1
  122. package/dist/worker.js +1 -1
  123. package/package.json +14 -4
  124. /package/dist/{workerHandler-nLkvSOKX.cjs → workerHandler-C-7OUJsa.cjs} +0 -0
  125. /package/dist/{workerHandler-BrOTzYRI.js → workerHandler-o2xzAfFk.js} +0 -0
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_drawFns = require("./drawFns-BHNDF8hb.cjs");
3
- const require_boolean2D = require("./boolean2D-lqfKJKUY.cjs");
2
+ const require_drawFns = require("./drawFns-BOwBIzPa.cjs");
3
+ const require_boolean2D = require("./boolean2D-BPsyKImE.cjs");
4
4
  //#region src/sketching.ts
5
5
  /**
6
6
  * brepjs/sketching — Sketcher, Drawing, and sketch-to-shape operations.
package/dist/sketching.js CHANGED
@@ -1,5 +1,5 @@
1
- import { d as FaceSketcher, f as Sketch, l as BaseSketcher2d, u as BlueprintSketcher } from "./boolean2D-Mzp-0g7o.js";
2
- import { $ as sketchFaceOffset, A as DrawingPen, B as drawSingleCircle, F as drawParametricFunction, H as drawText, I as drawPointsInterpolation, L as drawPolysides, M as draw, N as drawCircle, P as drawEllipse, Q as sketchEllipse, R as drawRectangle, S as drawProjection, V as drawSingleEllipse, X as polysideInnerRadius, Y as makeBaseBox, Z as sketchCircle, _ as sketchLoft, a as drawingIntersect, at as Sketcher, b as sketchWires, c as rotateDrawing, d as compoundSketchExtrude, et as sketchHelix, f as compoundSketchFace, g as sketchFace, h as sketchExtrude, i as drawingFuse, it as sketchRoundedRectangle, j as deserializeDrawing, k as Drawing, l as scaleDrawing, m as compoundSketchRevolve, n as drawingCut, nt as sketchPolysides, o as drawingToSketchOnPlane, ot as Sketches, p as compoundSketchLoft, r as drawingFillet, rt as sketchRectangle, s as mirrorDrawing, st as CompoundSketch, t as drawingChamfer, tt as sketchParametricFunction, u as translateDrawing, v as sketchRevolve, x as drawFaceOutline, y as sketchSweep, z as drawRoundedRectangle } from "./drawFns-l5CY2s-l.js";
1
+ import { d as FaceSketcher, f as Sketch, l as BaseSketcher2d, u as BlueprintSketcher } from "./boolean2D-D_Te-6N6.js";
2
+ import { $ as sketchFaceOffset, A as DrawingPen, B as drawSingleCircle, F as drawParametricFunction, H as drawText, I as drawPointsInterpolation, L as drawPolysides, M as draw, N as drawCircle, P as drawEllipse, Q as sketchEllipse, R as drawRectangle, S as drawProjection, V as drawSingleEllipse, X as polysideInnerRadius, Y as makeBaseBox, Z as sketchCircle, _ as sketchLoft, a as drawingIntersect, at as Sketcher, b as sketchWires, c as rotateDrawing, d as compoundSketchExtrude, et as sketchHelix, f as compoundSketchFace, g as sketchFace, h as sketchExtrude, i as drawingFuse, it as sketchRoundedRectangle, j as deserializeDrawing, k as Drawing, l as scaleDrawing, m as compoundSketchRevolve, n as drawingCut, nt as sketchPolysides, o as drawingToSketchOnPlane, ot as Sketches, p as compoundSketchLoft, r as drawingFillet, rt as sketchRectangle, s as mirrorDrawing, st as CompoundSketch, t as drawingChamfer, tt as sketchParametricFunction, u as translateDrawing, v as sketchRevolve, x as drawFaceOutline, y as sketchSweep, z as drawRoundedRectangle } from "./drawFns-n9qif7QN.js";
3
3
  //#region src/sketching.ts
4
4
  /**
5
5
  * brepjs/sketching — Sketcher, Drawing, and sketch-to-shape operations.
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-8eK48l-X.cjs");
2
- const require_errors = require("./errors-BlC5ZWv4.cjs");
3
- const require_faceFns = require("./faceFns-BywUjlJ7.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BqWQlrYE.cjs");
2
+ const require_errors = require("./errors-9zQcQK1H.cjs");
3
+ const require_faceFns = require("./faceFns-cE2WxY6I.cjs");
4
4
  //#region src/topology/shapeUtils.ts
5
5
  /**
6
6
  * Shape assembly utilities — welding and sewing operations.
@@ -1,6 +1,6 @@
1
- import { Y as getKernel, _ as isSolid, c as createSolid, g as isShell, h as isShape3D, i as createCompound, l as createVertex } from "./shapeTypes-Di6GlhPk.js";
2
- import { L as unwrap, _ as andThen, k as ok, l as typeCastError, y as err } from "./errors-BVOlxlIA.js";
3
- import { _ as downcast, g as cast } from "./faceFns-Cat-4X74.js";
1
+ import { Y as getKernel, _ as isSolid, c as createSolid, g as isShell, h as isShape3D, i as createCompound, l as createVertex } from "./shapeTypes-BO1aiDhi.js";
2
+ import { A as ok, R as unwrap, b as err, l as typeCastError, v as andThen } from "./errors-C-cgQA3w.js";
3
+ import { _ as downcast, g as cast } from "./faceFns-TSH54pPQ.js";
4
4
  //#region src/topology/shapeUtils.ts
5
5
  /**
6
6
  * Shape assembly utilities — welding and sewing operations.
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-8eK48l-X.cjs");
2
- const require_errors = require("./errors-BlC5ZWv4.cjs");
3
- const require_faceFns = require("./faceFns-BywUjlJ7.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-BqWQlrYE.cjs");
2
+ const require_errors = require("./errors-9zQcQK1H.cjs");
3
+ const require_faceFns = require("./faceFns-cE2WxY6I.cjs");
4
4
  //#region src/utils/range.ts
5
5
  /** Generate an array of integers `[0, 1, …, len - 1]`. */
6
6
  function range(len) {
@@ -1,6 +1,6 @@
1
- import { Y as getKernel, a as createEdge, o as createFace, p as isFace, u as createWire, w as isPlanarFace } from "./shapeTypes-Di6GlhPk.js";
2
- import { _ as andThen, d as validationError, i as kernelError, k as ok, y as err } from "./errors-BVOlxlIA.js";
3
- import { g as cast, l as outerWire } from "./faceFns-Cat-4X74.js";
1
+ import { Y as getKernel, a as createEdge, o as createFace, p as isFace, u as createWire, w as isPlanarFace } from "./shapeTypes-BO1aiDhi.js";
2
+ import { A as ok, b as err, d as validationError, i as kernelError, v as andThen } from "./errors-C-cgQA3w.js";
3
+ import { g as cast, l as outerWire } from "./faceFns-TSH54pPQ.js";
4
4
  //#region src/utils/range.ts
5
5
  /** Generate an array of integers `[0, 1, …, len - 1]`. */
6
6
  function range(len) {
@@ -36,7 +36,7 @@ export interface ScaleOptions {
36
36
  /** Scale a shape uniformly. Returns a new shape. */
37
37
  export declare function scale<T extends AnyShape<Dimension>>(shape: Shapeable<T>, factor: number, options?: ScaleOptions): T;
38
38
  /** Clone a shape (deep copy). */
39
- export declare function clone<T extends AnyShape<Dimension>>(shape: Shapeable<T>): T;
39
+ export declare function clone<T extends AnyShape<Dimension>>(shape: Shapeable<T>): Result<T>;
40
40
  /**
41
41
  * Apply a 4x4 affine transformation matrix to a shape.
42
42
  * Equivalent to OpenSCAD's `multmatrix`.
@@ -104,7 +104,7 @@ export declare function draft<T extends ValidSolid>(shape: Shapeable<T>, faces:
104
104
  /** Heal a shape using the appropriate fixer. */
105
105
  export declare function heal<T extends AnyShape<Dimension>>(shape: Shapeable<T>): Result<T>;
106
106
  /** Simplify a shape by merging same-domain faces/edges. */
107
- export declare function simplify<T extends AnyShape<Dimension>>(shape: Shapeable<T>): T;
107
+ export declare function simplify<T extends AnyShape<Dimension>>(shape: Shapeable<T>): Result<T>;
108
108
  /** Mesh a shape for rendering. */
109
109
  export declare function mesh(shape: Shapeable<AnyShape<Dimension>>, options?: meshing.MeshOptions & {
110
110
  skipNormals?: boolean;
@@ -118,7 +118,7 @@ export declare function meshEdges(shape: Shapeable<AnyShape<Dimension>>, options
118
118
  /** Get a summary description of a shape. */
119
119
  export declare function describe(shape: Shapeable<AnyShape<Dimension>>): transforms.ShapeDescription;
120
120
  /** Serialize a shape to BREP format. */
121
- export declare function toBREP(shape: Shapeable<AnyShape<Dimension>>): string;
121
+ export declare function toBREP(shape: Shapeable<AnyShape<Dimension>>): Result<string>;
122
122
  /** Deserialize a shape from BREP format. */
123
123
  export declare function fromBREP(data: string): Result<AnyShape<Dimension>>;
124
124
  /** Check if a shape is valid. */
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/topology/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/topology/api.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  import { AnyShape, Dimension } from '../core/shapeTypes.js';
2
+ import { Result } from '../core/result.js';
2
3
  /** Clone a shape (deep copy via kernel topology downcast). */
3
- export declare function clone<T extends AnyShape<Dimension>>(shape: T): T;
4
+ export declare function clone<T extends AnyShape<Dimension>>(shape: T): Result<T>;
4
5
  /** Serialize a shape to BREP string format. */
5
- export declare function toBREP(shape: AnyShape<Dimension>): string;
6
+ export declare function toBREP(shape: AnyShape<Dimension>): Result<string>;
6
7
  /** Get the topology hash code of a shape. */
7
8
  export declare function getHashCode(shape: AnyShape<Dimension>): number;
8
9
  /** Check if a shape is null. */
@@ -12,7 +13,7 @@ export declare function isSameShape(a: AnyShape<Dimension>, b: AnyShape<Dimensio
12
13
  /** Check if two shapes are geometrically equal. */
13
14
  export declare function isEqualShape(a: AnyShape<Dimension>, b: AnyShape<Dimension>): boolean;
14
15
  /** Simplify a shape by merging same-domain faces/edges. Returns a new shape. */
15
- export declare function simplify<T extends AnyShape<Dimension>>(shape: T): T;
16
+ export declare function simplify<T extends AnyShape<Dimension>>(shape: T): Result<T>;
16
17
  export { translate, rotate, mirror, scale, resize, applyMatrix, composeTransforms, transformCopy, } from './transformFns.js';
17
18
  export type { TransformOp, ComposedTransform } from './transformFns.js';
18
19
  export { getEdges, getFaces, getWires, getVertices, iterEdges, iterFaces, iterWires, iterVertices, getBounds, getCachedShapeKind, describe, vertexPosition, invalidateShapeCache, } from './topologyQueryFns.js';
@@ -1 +1 @@
1
- {"version":3,"file":"shapeFns.d.ts","sourceRoot":"","sources":["../../src/topology/shapeFns.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAUhE,8DAA8D;AAC9D,wBAAgB,KAAK,CAAC,CAAC,SAAS,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAEhE;AAED,+CAA+C;AAC/C,wBAAgB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,MAAM,CAEzD;AAED,6CAA6C;AAC7C,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,MAAM,CAE9D;AAED,gCAAgC;AAChC,wBAAgB,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,OAAO,CAE3D;AAED,2DAA2D;AAC3D,wBAAgB,WAAW,CAAC,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,OAAO,CAEnF;AAED,mDAAmD;AACnD,wBAAgB,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,OAAO,CAEpF;AAED,gFAAgF;AAChF,wBAAgB,QAAQ,CAAC,CAAC,SAAS,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAEnE;AAMD,OAAO,EACL,SAAS,EACT,MAAM,EACN,MAAM,EACN,KAAK,EACL,MAAM,EACN,WAAW,EACX,iBAAiB,EACjB,aAAa,GACd,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAExE,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,SAAS,EACT,SAAS,EACT,SAAS,EACT,YAAY,EACZ,SAAS,EACT,kBAAkB,EAClB,QAAQ,EACR,cAAc,EACd,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAExE,OAAO,EACL,cAAc,EACd,cAAc,EACd,6BAA6B,EAC7B,sBAAsB,GACvB,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"shapeFns.d.ts","sourceRoot":"","sources":["../../src/topology/shapeFns.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEhE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAQ/C,8DAA8D;AAC9D,wBAAgB,KAAK,CAAC,CAAC,SAAS,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAMxE;AAED,+CAA+C;AAC/C,wBAAgB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAMjE;AAED,6CAA6C;AAC7C,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,MAAM,CAE9D;AAED,gCAAgC;AAChC,wBAAgB,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,OAAO,CAE3D;AAED,2DAA2D;AAC3D,wBAAgB,WAAW,CAAC,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,OAAO,CAEnF;AAED,mDAAmD;AACnD,wBAAgB,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,OAAO,CAEpF;AAED,gFAAgF;AAChF,wBAAgB,QAAQ,CAAC,CAAC,SAAS,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAM3E;AAMD,OAAO,EACL,SAAS,EACT,MAAM,EACN,MAAM,EACN,KAAK,EACL,MAAM,EACN,WAAW,EACX,iBAAiB,EACjB,aAAa,GACd,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAExE,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,SAAS,EACT,SAAS,EACT,SAAS,EACT,YAAY,EACZ,SAAS,EACT,kBAAkB,EAClB,QAAQ,EACR,cAAc,EACd,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAExE,OAAO,EACL,cAAc,EACd,cAAc,EACd,6BAA6B,EAC7B,sBAAsB,GACvB,MAAM,iCAAiC,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * ShapeRef — stable, serializable face references for parametric replay.
3
+ */
4
+ export type { GeometricHint, ShapeRef, RoleTable, ResolvedRef, BrokenRef, } from './shapeRefTypes.js';
5
+ export { type FaceScorer, defaultScorer } from './scoring.js';
6
+ export { captureHint, assignRoles, createRef, updateRoles, resolveRef } from './shapeRefFns.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/topology/shapeRef/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EACV,aAAa,EACb,QAAQ,EACR,SAAS,EACT,WAAW,EACX,SAAS,GACV,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,KAAK,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE9D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { GeometricHint } from './shapeRefTypes.js';
2
+ import { Face } from '../../core/shapeTypes.js';
3
+ /** Scoring function: higher score = better match. Returns -Infinity to reject. */
4
+ export type FaceScorer = (hint: GeometricHint, face: Face) => number;
5
+ /**
6
+ * Default face scorer combining surface type, normal alignment, centroid proximity,
7
+ * and area similarity.
8
+ *
9
+ * Scoring breakdown:
10
+ * - Surface type match: +1.0 (mismatch when both defined: -Infinity)
11
+ * - Normal dot product: weighted contribution (rejected if < 0.707)
12
+ * - Centroid distance: quadratic penalty (rejected if distSq > 100)
13
+ * - Area ratio: penalized if |log(hintArea / faceArea)| > 1.0
14
+ */
15
+ export declare function defaultScorer(hint: GeometricHint, face: Face): number;
16
+ //# sourceMappingURL=scoring.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoring.d.ts","sourceRoot":"","sources":["../../../src/topology/shapeRef/scoring.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAQjD,kFAAkF;AAClF,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC;AAMrE;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,CA+CrE"}
@@ -0,0 +1,47 @@
1
+ import { Face, Shape3D } from '../../core/shapeTypes.js';
2
+ import { ShapeEvolution } from '../../kernel/types.js';
3
+ import { GeometricHint, ShapeRef, RoleTable, ResolvedRef, BrokenRef } from './shapeRefTypes.js';
4
+ import { FaceScorer } from './scoring.js';
5
+ /** Snapshot the geometric properties of a face for later matching. */
6
+ export declare function captureHint(face: Face): GeometricHint;
7
+ /**
8
+ * Auto-assign role names to the faces of a shape based on operation type.
9
+ *
10
+ * For 'box': uses face normals to assign cardinal names
11
+ * ('box:top', 'box:bottom', 'box:front', 'box:back', 'box:left', 'box:right').
12
+ * **Note:** Box role detection assumes axis-aligned faces (normal within 0.9 of
13
+ * a cardinal axis). Rotated boxes may receive fewer than 6 named roles; remaining
14
+ * faces fall through to sequential naming.
15
+ *
16
+ * For other types: sequential naming ('opType:face_0', 'opType:face_1', ...).
17
+ *
18
+ * @returns Map from role name to face hash code
19
+ */
20
+ export declare function assignRoles(shape: Shape3D, operationType: string): Map<string, number>;
21
+ /** Create a ShapeRef from an origin ID, role name, and face. */
22
+ export declare function createRef(origin: string, role: string, face: Face): ShapeRef;
23
+ /**
24
+ * Propagate a role table through a ShapeEvolution record.
25
+ * Returns a new RoleTable with hashes updated according to the evolution.
26
+ *
27
+ * - Deleted faces: role removed
28
+ * - Modified faces: hash updated to first result hash
29
+ * - Unchanged faces: hash preserved
30
+ *
31
+ * **Limitation:** When a face splits (1→many in `evolution.modified`), only the
32
+ * first successor hash is tracked. The geometric fallback in `resolveRef` handles
33
+ * cases where this picks the "wrong" successor. A future version may return
34
+ * multi-hash mappings for split-aware resolution.
35
+ */
36
+ export declare function updateRoles(roles: RoleTable, origin: string, evolution: ShapeEvolution): RoleTable;
37
+ /**
38
+ * Resolve a ShapeRef to a face in the current shape.
39
+ *
40
+ * Resolution strategy:
41
+ * 1. Exact lookup via role table hash match
42
+ * 2. Geometric fallback using scorer against all faces
43
+ * 3. Ambiguous if multiple faces score within threshold
44
+ * 4. Not-found if no match above minimum score
45
+ */
46
+ export declare function resolveRef(ref: ShapeRef, roles: RoleTable, currentShape: Shape3D, scorer?: FaceScorer): ResolvedRef | BrokenRef;
47
+ //# sourceMappingURL=shapeRefFns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shapeRefFns.d.ts","sourceRoot":"","sources":["../../../src/topology/shapeRef/shapeRefFns.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAKxD,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,SAAS,EACT,WAAW,EACX,SAAS,EACV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,KAAK,UAAU,EAAiB,MAAM,cAAc,CAAC;AAM9D,sEAAsE;AACtE,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,aAAa,CASrD;AAoBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAoBtF;AAMD,gEAAgE;AAChE,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,QAAQ,CAE5E;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,cAAc,GACxB,SAAS,CA+BX;AAWD;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,SAAS,EAChB,YAAY,EAAE,OAAO,EACrB,MAAM,CAAC,EAAE,UAAU,GAClB,WAAW,GAAG,SAAS,CAmDzB"}
@@ -0,0 +1,40 @@
1
+ import { Vec3 } from '../../core/types.js';
2
+ import { SurfaceType } from '../faceFns.js';
3
+ import { Face } from '../../core/shapeTypes.js';
4
+ /** Geometric snapshot of a face, used for fallback matching when hashes change. */
5
+ export interface GeometricHint {
6
+ readonly entityType: 'face';
7
+ readonly surfaceType?: SurfaceType;
8
+ readonly normal?: Vec3;
9
+ readonly centroid?: Vec3;
10
+ readonly area?: number | undefined;
11
+ }
12
+ /**
13
+ * A stable reference to a face, combining a role-based name with a geometric hint.
14
+ * Survives parametric replay even when face hashes change.
15
+ */
16
+ export interface ShapeRef {
17
+ /** Generic command/step identifier (e.g., 'step_0', 'box_1'). */
18
+ readonly origin: string;
19
+ /** Role name within the origin (e.g., 'box:top', 'fillet:round_0'). */
20
+ readonly role: string;
21
+ /** Geometric snapshot for fallback matching. */
22
+ readonly hint: GeometricHint;
23
+ }
24
+ /**
25
+ * Immutable table mapping `origin -> role -> faceHash`.
26
+ * Updated through evolution records when the model is rebuilt.
27
+ */
28
+ export type RoleTable = ReadonlyMap<string, ReadonlyMap<string, number>>;
29
+ /** A successfully resolved face reference. */
30
+ export interface ResolvedRef {
31
+ readonly face: Face;
32
+ readonly confidence: 'exact' | 'geometric-fallback';
33
+ }
34
+ /** A face reference that could not be resolved. */
35
+ export interface BrokenRef {
36
+ readonly ref: ShapeRef;
37
+ readonly reason: 'deleted' | 'ambiguous' | 'not-found';
38
+ readonly candidates?: readonly Face[];
39
+ }
40
+ //# sourceMappingURL=shapeRefTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shapeRefTypes.d.ts","sourceRoot":"","sources":["../../../src/topology/shapeRef/shapeRefTypes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAMjD,mFAAmF;AACnF,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAMD;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,iEAAiE;IACjE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,gDAAgD;IAChD,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;CAC9B;AAMD;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAMzE,8CAA8C;AAC9C,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,OAAO,GAAG,oBAAoB,CAAC;CACrD;AAED,mDAAmD;AACnD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,WAAW,CAAC;IACvD,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,IAAI,EAAE,CAAC;CACvC"}
package/dist/topology.cjs CHANGED
@@ -1,10 +1,10 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_faceFns = require("./faceFns-BywUjlJ7.cjs");
3
- const require_arrayAccess = require("./arrayAccess-t2dlxGSK.cjs");
4
- const require_curveFns = require("./curveFns-CZszKLQB.cjs");
5
- const require_meshFns = require("./meshFns-D3KAZ_ma.cjs");
6
- const require_booleanFns = require("./booleanFns-Bw8sAMgI.cjs");
7
- const require_primitiveFns = require("./primitiveFns-BGh9A9jR.cjs");
2
+ const require_faceFns = require("./faceFns-cE2WxY6I.cjs");
3
+ const require_shapeFns = require("./shapeFns-aEeSHNqX.cjs");
4
+ const require_curveFns = require("./curveFns-DCEcwcpd.cjs");
5
+ const require_meshFns = require("./meshFns-CVe3Kc77.cjs");
6
+ const require_booleanFns = require("./booleanFns-B6M6Lm0V.cjs");
7
+ const require_primitiveFns = require("./primitiveFns-CRPGjIFg.cjs");
8
8
  exports.addHoles = require_primitiveFns.addHoles;
9
9
  exports.adjacentFaces = require_primitiveFns.adjacentFaces;
10
10
  exports.approximateCurve = require_curveFns.approximateCurve;
@@ -56,17 +56,17 @@ exports.flipFaceOrientation = require_faceFns.flipFaceOrientation;
56
56
  exports.flipOrientation = require_curveFns.flipOrientation;
57
57
  exports.fuseAll = require_booleanFns.fuseAll;
58
58
  exports.fuseWithEvolution = require_primitiveFns.fuseWithEvolution;
59
- exports.getBounds = require_arrayAccess.getBounds;
59
+ exports.getBounds = require_shapeFns.getBounds;
60
60
  exports.getCurveType = require_curveFns.getCurveType;
61
- exports.getEdges = require_arrayAccess.getEdges;
62
- exports.getFaces = require_arrayAccess.getFaces;
63
- exports.getHashCode = require_arrayAccess.getHashCode;
61
+ exports.getEdges = require_shapeFns.getEdges;
62
+ exports.getFaces = require_shapeFns.getFaces;
63
+ exports.getHashCode = require_shapeFns.getHashCode;
64
64
  exports.getNurbsCurveData = require_primitiveFns.getNurbsCurveData;
65
65
  exports.getNurbsSurfaceData = require_primitiveFns.getNurbsSurfaceData;
66
66
  exports.getOrientation = require_curveFns.getOrientation;
67
67
  exports.getSurfaceType = require_faceFns.getSurfaceType;
68
- exports.getVertices = require_arrayAccess.getVertices;
69
- exports.getWires = require_arrayAccess.getWires;
68
+ exports.getVertices = require_shapeFns.getVertices;
69
+ exports.getWires = require_shapeFns.getWires;
70
70
  exports.healFace = require_primitiveFns.healFace;
71
71
  exports.healSolid = require_primitiveFns.healSolid;
72
72
  exports.healWire = require_primitiveFns.healWire;
@@ -74,15 +74,15 @@ exports.helix = require_primitiveFns.helix;
74
74
  exports.innerWires = require_faceFns.innerWires;
75
75
  exports.interpolateCurve = require_curveFns.interpolateCurve;
76
76
  exports.intersectWithEvolution = require_primitiveFns.intersectWithEvolution;
77
- exports.invalidateShapeCache = require_arrayAccess.invalidateShapeCache;
77
+ exports.invalidateShapeCache = require_shapeFns.invalidateShapeCache;
78
78
  exports.isCompSolid = require_faceFns.isCompSolid;
79
- exports.isEqualShape = require_arrayAccess.isEqualShape;
80
- exports.isSameShape = require_arrayAccess.isSameShape;
81
- exports.iterEdges = require_arrayAccess.iterEdges;
82
- exports.iterFaces = require_arrayAccess.iterFaces;
79
+ exports.isEqualShape = require_shapeFns.isEqualShape;
80
+ exports.isSameShape = require_shapeFns.isSameShape;
81
+ exports.iterEdges = require_shapeFns.iterEdges;
82
+ exports.iterFaces = require_shapeFns.iterFaces;
83
83
  exports.iterTopo = require_faceFns.iterTopo;
84
- exports.iterVertices = require_arrayAccess.iterVertices;
85
- exports.iterWires = require_arrayAccess.iterWires;
84
+ exports.iterVertices = require_shapeFns.iterVertices;
85
+ exports.iterWires = require_shapeFns.iterWires;
86
86
  exports.line = require_primitiveFns.line;
87
87
  exports.normalAt = require_faceFns.normalAt;
88
88
  exports.offsetFace = require_primitiveFns.offsetFace;
@@ -110,7 +110,7 @@ exports.uvBounds = require_faceFns.uvBounds;
110
110
  exports.uvCoordinates = require_faceFns.uvCoordinates;
111
111
  exports.variableFillet = require_primitiveFns.variableFillet;
112
112
  exports.vertex = require_primitiveFns.vertex;
113
- exports.vertexPosition = require_arrayAccess.vertexPosition;
113
+ exports.vertexPosition = require_shapeFns.vertexPosition;
114
114
  exports.verticesOfEdge = require_primitiveFns.verticesOfEdge;
115
115
  exports.wire = require_primitiveFns.wire;
116
116
  exports.wireLoop = require_primitiveFns.wireLoop;
package/dist/topology.js CHANGED
@@ -1,7 +1,7 @@
1
- import { _ as downcast, a as flipFaceOrientation, b as iterTopo, c as normalAt, d as projectPointOnFace, g as cast, h as asTopo, i as faceOrientation, l as outerWire, m as uvCoordinates, n as faceCenter, o as getSurfaceType, p as uvBounds, r as faceGeomType, s as innerWires, t as classifyPointOnFace, u as pointOnSurface, v as fromBREP, x as shapeType, y as isCompSolid } from "./faceFns-Cat-4X74.js";
2
- import { B as invalidateShapeCache, F as getEdges, G as vertexPosition, H as iterFaces, I as getFaces, P as getBounds, R as getVertices, U as iterVertices, V as iterEdges, W as iterWires, a as getHashCode, c as isSameShape, s as isEqualShape, z as getWires } from "./arrayAccess-B5LgmXBo.js";
3
- import { a as curveLength, c as curveStartPoint, d as getCurveType, f as getOrientation, i as curveIsPeriodic, l as curveTangentAt, m as offsetWire2D, n as curveEndPoint, o as curvePeriod, p as interpolateCurve, r as curveIsClosed, s as curvePointAt, t as approximateCurve, u as flipOrientation } from "./curveFns-DY4dFcP-.js";
4
- import { n as exportSTEP, o as clearMeshCache, r as exportSTL, s as createMeshCache, t as exportIGES } from "./meshFns-BPi0bhm9.js";
5
- import { i as fuseAll, n as cutAll } from "./booleanFns-B46fgObh.js";
6
- import { $ as getNurbsSurfaceData, A as fixShape, C as threePointArc, D as wireLoop, E as wire, G as chamferWithEvolution, I as solidFromShell, J as fuseWithEvolution, K as cutWithEvolution, M as healFace, N as healSolid, O as autoHeal, P as healWire, Q as getNurbsCurveData, S as tangentArc, T as vertex, U as variableFillet, W as positionOnCurve, X as shellWithEvolution, Y as intersectWithEvolution, Z as checkBoolean, _ as polygon, a as circle, at as wiresOfFace, b as sphere, c as cylinder, ct as toGroupedBufferGeometryData, d as ellipsoid, et as adjacentFaces, f as face, g as offsetFace, h as line, i as bsplineApprox, it as verticesOfEdge, k as fixSelfIntersection, l as ellipse, lt as toLineGeometryData, m as helix, n as bezier, nt as facesOfEdge, o as compound, ot as chamferDistAngle, p as filledFace, q as filletWithEvolution, r as box, rt as sharedEdges, s as cone, st as toBufferGeometryData, t as addHoles, tt as edgesOfFace, u as ellipseArc, v as sewShells, w as torus, x as subFace, y as solid } from "./primitiveFns-CnZkW6Bi.js";
1
+ import { _ as downcast, a as flipFaceOrientation, b as iterTopo, c as normalAt, d as projectPointOnFace, g as cast, h as asTopo, i as faceOrientation, l as outerWire, m as uvCoordinates, n as faceCenter, o as getSurfaceType, p as uvBounds, r as faceGeomType, s as innerWires, t as classifyPointOnFace, u as pointOnSurface, v as fromBREP, x as shapeType, y as isCompSolid } from "./faceFns-TSH54pPQ.js";
2
+ import { B as iterVertices, F as getVertices, H as vertexPosition, I as getWires, L as invalidateShapeCache, M as getEdges, N as getFaces, R as iterEdges, V as iterWires, a as isSameShape, i as isEqualShape, j as getBounds, n as getHashCode, z as iterFaces } from "./shapeFns-DCi9O27X.js";
3
+ import { a as curveLength, c as curveStartPoint, d as getCurveType, f as getOrientation, i as curveIsPeriodic, l as curveTangentAt, m as offsetWire2D, n as curveEndPoint, o as curvePeriod, p as interpolateCurve, r as curveIsClosed, s as curvePointAt, t as approximateCurve, u as flipOrientation } from "./curveFns-CcInoOEA.js";
4
+ import { n as exportSTEP, o as clearMeshCache, r as exportSTL, s as createMeshCache, t as exportIGES } from "./meshFns-DL4Djz3w.js";
5
+ import { i as fuseAll, n as cutAll } from "./booleanFns-CgsaJFBf.js";
6
+ import { $ as getNurbsSurfaceData, A as fixShape, C as threePointArc, D as wireLoop, E as wire, G as chamferWithEvolution, I as solidFromShell, J as fuseWithEvolution, K as cutWithEvolution, M as healFace, N as healSolid, O as autoHeal, P as healWire, Q as getNurbsCurveData, S as tangentArc, T as vertex, U as variableFillet, W as positionOnCurve, X as shellWithEvolution, Y as intersectWithEvolution, Z as checkBoolean, _ as polygon, a as circle, at as wiresOfFace, b as sphere, c as cylinder, ct as toGroupedBufferGeometryData, d as ellipsoid, et as adjacentFaces, f as face, g as offsetFace, h as line, i as bsplineApprox, it as verticesOfEdge, k as fixSelfIntersection, l as ellipse, lt as toLineGeometryData, m as helix, n as bezier, nt as facesOfEdge, o as compound, ot as chamferDistAngle, p as filledFace, q as filletWithEvolution, r as box, rt as sharedEdges, s as cone, st as toBufferGeometryData, t as addHoles, tt as edgesOfFace, u as ellipseArc, v as sewShells, w as torus, x as subFace, y as solid } from "./primitiveFns-CeKiYSSW.js";
7
7
  export { addHoles, adjacentFaces, approximateCurve, asTopo, autoHeal, bezier, box, bsplineApprox, cast, chamferDistAngle as chamferDistAngleShape, chamferWithEvolution, checkBoolean, circle, classifyPointOnFace, clearMeshCache, compound, cone, createMeshCache, curveEndPoint, curveIsClosed, curveIsPeriodic, curveLength, curvePeriod, curvePointAt, curveStartPoint, curveTangentAt, cutAll, cutWithEvolution, cylinder, fromBREP as deserializeShape, downcast, edgesOfFace, ellipse, ellipseArc, ellipsoid, exportIGES, exportSTEP, exportSTL, face, faceCenter, faceGeomType, faceOrientation, facesOfEdge, filledFace, filletWithEvolution, fixSelfIntersection, fixShape, flipFaceOrientation, flipOrientation, fuseAll, fuseWithEvolution, getBounds, getCurveType, getEdges, getFaces, getHashCode, getNurbsCurveData, getNurbsSurfaceData, getOrientation, getSurfaceType, getVertices, getWires, healFace, healSolid, healWire, helix, innerWires, interpolateCurve, intersectWithEvolution, invalidateShapeCache, isCompSolid, isEqualShape, isSameShape, iterEdges, iterFaces, iterTopo, iterVertices, iterWires, line, normalAt, offsetFace, offsetWire2D, outerWire, pointOnSurface, polygon, positionOnCurve, projectPointOnFace, sewShells, shapeType, sharedEdges, shellWithEvolution, solid, solidFromShell, sphere, subFace, tangentArc, threePointArc, toBufferGeometryData, toGroupedBufferGeometryData, toLineGeometryData, torus, uvBounds, uvCoordinates, variableFillet, vertex, vertexPosition, verticesOfEdge, wire, wireLoop, wiresOfFace };
@@ -1,11 +1,3 @@
1
- //#region src/core/constants.ts
2
- /** Maximum hash code value for kernel shape hashing (2^31 - 1). */
3
- var HASH_CODE_MAX = 2147483647;
4
- /** Multiply degrees by this constant to convert to radians. */
5
- var DEG2RAD = Math.PI / 180;
6
- /** Multiply radians by this constant to convert to degrees. */
7
- var RAD2DEG = 180 / Math.PI;
8
- //#endregion
9
1
  //#region src/core/vecOps.ts
10
2
  /** Add two 3D vectors component-wise. */
11
3
  function vecAdd(a, b) {
@@ -134,24 +126,6 @@ function vecRepr(v) {
134
126
  return `x: ${round3(v[0])}, y: ${round3(v[1])}, z: ${round3(v[2])}`;
135
127
  }
136
128
  //#endregion
137
- Object.defineProperty(exports, "DEG2RAD", {
138
- enumerable: true,
139
- get: function() {
140
- return DEG2RAD;
141
- }
142
- });
143
- Object.defineProperty(exports, "HASH_CODE_MAX", {
144
- enumerable: true,
145
- get: function() {
146
- return HASH_CODE_MAX;
147
- }
148
- });
149
- Object.defineProperty(exports, "RAD2DEG", {
150
- enumerable: true,
151
- get: function() {
152
- return RAD2DEG;
153
- }
154
- });
155
129
  Object.defineProperty(exports, "vecAdd", {
156
130
  enumerable: true,
157
131
  get: function() {
@@ -1,11 +1,3 @@
1
- //#region src/core/constants.ts
2
- /** Maximum hash code value for kernel shape hashing (2^31 - 1). */
3
- var HASH_CODE_MAX = 2147483647;
4
- /** Multiply degrees by this constant to convert to radians. */
5
- var DEG2RAD = Math.PI / 180;
6
- /** Multiply radians by this constant to convert to degrees. */
7
- var RAD2DEG = 180 / Math.PI;
8
- //#endregion
9
1
  //#region src/core/vecOps.ts
10
2
  /** Add two 3D vectors component-wise. */
11
3
  function vecAdd(a, b) {
@@ -134,4 +126,4 @@ function vecRepr(v) {
134
126
  return `x: ${round3(v[0])}, y: ${round3(v[1])}, z: ${round3(v[2])}`;
135
127
  }
136
128
  //#endregion
137
- export { DEG2RAD as _, vecDot as a, vecLength as c, vecNormalize as d, vecProjectToPlane as f, vecSub as g, vecScale as h, vecDistance as i, vecLengthSq as l, vecRotate as m, vecAngle as n, vecEquals as o, vecRepr as p, vecCross as r, vecIsZero as s, vecAdd as t, vecNegate as u, HASH_CODE_MAX as v, RAD2DEG as y };
129
+ export { vecDot as a, vecLength as c, vecNormalize as d, vecProjectToPlane as f, vecSub as g, vecScale as h, vecDistance as i, vecLengthSq as l, vecRotate as m, vecAngle as n, vecEquals as o, vecRepr as p, vecCross as r, vecIsZero as s, vecAdd as t, vecNegate as u };
package/dist/vectors.cjs CHANGED
@@ -1,9 +1,10 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_vecOps = require("./vecOps-DKGelwGL.cjs");
2
+ const require_constants = require("./constants-unWN8k4c.cjs");
3
3
  const require_types = require("./types-BjDcsS7l.cjs");
4
- const require_planeOps = require("./planeOps-BqLav0Ir.cjs");
5
- exports.DEG2RAD = require_vecOps.DEG2RAD;
6
- exports.RAD2DEG = require_vecOps.RAD2DEG;
4
+ const require_vecOps = require("./vecOps-BXvBYIor.cjs");
5
+ const require_planeOps = require("./planeOps-6Wu7dMDN.cjs");
6
+ exports.DEG2RAD = require_constants.DEG2RAD;
7
+ exports.RAD2DEG = require_constants.RAD2DEG;
7
8
  exports.createNamedPlane = require_planeOps.createNamedPlane;
8
9
  exports.createPlane = require_planeOps.createPlane;
9
10
  exports.pivotPlane = require_planeOps.pivotPlane;
package/dist/vectors.js CHANGED
@@ -1,4 +1,5 @@
1
- import { _ as DEG2RAD, a as vecDot, c as vecLength, d as vecNormalize, f as vecProjectToPlane, g as vecSub, h as vecScale, i as vecDistance, l as vecLengthSq, m as vecRotate, n as vecAngle, o as vecEquals, p as vecRepr, r as vecCross, s as vecIsZero, t as vecAdd, u as vecNegate, y as RAD2DEG } from "./vecOps-DFfUfsmc.js";
1
+ import { r as RAD2DEG, t as DEG2RAD } from "./constants-B9u763C3.js";
2
2
  import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-BWBlwp6w.js";
3
- import { i as pivotPlane, n as createPlane, o as resolvePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-D88tfyJs.js";
3
+ import { a as vecDot, c as vecLength, d as vecNormalize, f as vecProjectToPlane, g as vecSub, h as vecScale, i as vecDistance, l as vecLengthSq, m as vecRotate, n as vecAngle, o as vecEquals, p as vecRepr, r as vecCross, s as vecIsZero, t as vecAdd, u as vecNegate } from "./vecOps-D9etjPgV.js";
4
+ import { i as pivotPlane, n as createPlane, o as resolvePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-gTOEarV2.js";
4
5
  export { DEG2RAD, RAD2DEG, createNamedPlane, createPlane, pivotPlane, resolveDirection, resolvePlane, toVec2, toVec3, translatePlane, vecAdd, vecAngle, vecCross, vecDistance, vecDot, vecEquals, vecIsZero, vecLength, vecLengthSq, vecNegate, vecNormalize, vecProjectToPlane, vecRepr, vecRotate, vecScale, vecSub };
package/dist/worker.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_workerHandler = require("./workerHandler-nLkvSOKX.cjs");
2
+ const require_workerHandler = require("./workerHandler-C-7OUJsa.cjs");
3
3
  exports.createOperationRegistry = require_workerHandler.createOperationRegistry;
4
4
  exports.createTaskQueue = require_workerHandler.createTaskQueue;
5
5
  exports.createWorkerClient = require_workerHandler.createWorkerClient;
package/dist/worker.js CHANGED
@@ -1,2 +1,2 @@
1
- import { a as createTaskQueue, c as isEmpty, d as isDisposeRequest, f as isErrorResponse, h as isSuccessResponse, i as createWorkerClient, l as pendingCount, m as isOperationRequest, n as createWorkerHandler, o as dequeueTask, p as isInitRequest, r as registerHandler, s as enqueueTask, t as createOperationRegistry, u as rejectAll } from "./workerHandler-BrOTzYRI.js";
1
+ import { a as createTaskQueue, c as isEmpty, d as isDisposeRequest, f as isErrorResponse, h as isSuccessResponse, i as createWorkerClient, l as pendingCount, m as isOperationRequest, n as createWorkerHandler, o as dequeueTask, p as isInitRequest, r as registerHandler, s as enqueueTask, t as createOperationRegistry, u as rejectAll } from "./workerHandler-o2xzAfFk.js";
2
2
  export { createOperationRegistry, createTaskQueue, createWorkerClient, createWorkerHandler, dequeueTask, enqueueTask, isDisposeRequest, isErrorResponse, isInitRequest, isOperationRequest, isEmpty as isQueueEmpty, isSuccessResponse, pendingCount, registerHandler, rejectAll };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "brepjs",
3
- "version": "13.4.0",
3
+ "version": "14.1.2",
4
4
  "description": "Web CAD library with pluggable geometry kernel",
5
5
  "keywords": [
6
6
  "cad",
@@ -149,6 +149,16 @@
149
149
  "default": "./dist/worker.cjs"
150
150
  }
151
151
  },
152
+ "./shapeRef": {
153
+ "import": {
154
+ "types": "./dist/shapeRef.d.ts",
155
+ "default": "./dist/shapeRef.js"
156
+ },
157
+ "require": {
158
+ "types": "./dist/shapeRef.d.ts",
159
+ "default": "./dist/shapeRef.cjs"
160
+ }
161
+ },
152
162
  "./quick": {
153
163
  "import": {
154
164
  "types": "./dist/quick.d.ts",
@@ -197,11 +207,11 @@
197
207
  "@types/opentype.js": "1.3.9",
198
208
  "@vitest/coverage-v8": "4.1.0",
199
209
  "brepjs-opencascade": "*",
200
- "brepkit-wasm": "2.21.0",
201
- "eslint": "10.0.3",
210
+ "brepkit-wasm": "2.26.0",
211
+ "eslint": "10.1.0",
202
212
  "fast-check": "4.6.0",
203
213
  "husky": "9.1.7",
204
- "knip": "5.88.1",
214
+ "knip": "6.0.1",
205
215
  "lint-staged": "16.4.0",
206
216
  "prettier": "3.8.1",
207
217
  "size-limit": "12.0.1",