brepjs 19.0.4 → 19.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/dist/2d.cjs +6 -6
  2. package/dist/2d.js +6 -6
  3. package/dist/{adjacencyFns-C2efnl3n.js → adjacencyFns-BFgzaWom.js} +40 -6
  4. package/dist/{adjacencyFns-i3S_SXzH.cjs → adjacencyFns-CZ8tOKo6.cjs} +40 -6
  5. package/dist/{blueprint-CB1yyyaF.js → blueprint-CuE8oS8o.js} +5 -5
  6. package/dist/{blueprint-A0vNnPtH.cjs → blueprint-Pd5C9eyi.cjs} +5 -5
  7. package/dist/{blueprintFns-BT8lhB0j.js → blueprintFns-DeK5m2Dd.js} +2 -2
  8. package/dist/{blueprintFns-T8kTGpnS.cjs → blueprintFns-Jt8aabnr.cjs} +2 -2
  9. package/dist/{blueprintSketcher-BW61wFHj.cjs → blueprintSketcher-BbbIIw68.cjs} +3 -3
  10. package/dist/{blueprintSketcher-DBF-HfZS.js → blueprintSketcher-s1mCyP4C.js} +3 -3
  11. package/dist/{boolean2D-DXc-Z54o.cjs → boolean2D-B5-s6yey.cjs} +4 -4
  12. package/dist/{boolean2D-CSrfsgdP.js → boolean2D-XkF5a9UO.js} +4 -4
  13. package/dist/brepjs.cjs +30 -28
  14. package/dist/brepjs.js +30 -29
  15. package/dist/{cameraFns-DouxkTGQ.js → cameraFns-C42m8_GN.js} +3 -3
  16. package/dist/{cameraFns-DkpgYZ_J.cjs → cameraFns-C_aXHOXb.cjs} +3 -3
  17. package/dist/core/cleanupError.d.ts +9 -0
  18. package/dist/core/shapeTypes.d.ts +2 -0
  19. package/dist/core.cjs +3 -2
  20. package/dist/core.d.ts +1 -0
  21. package/dist/core.js +3 -3
  22. package/dist/{cornerFinder-B-BXL0FS.js → cornerFinder-B5uO-_nX.js} +1 -1
  23. package/dist/{cornerFinder-DtTV5f1F.cjs → cornerFinder-BSHr_G27.cjs} +1 -1
  24. package/dist/{curveFns-CckFqzDq.cjs → curveFns-BRhVbssu.cjs} +1 -1
  25. package/dist/{curveFns-CszFf328.js → curveFns-xQNPUc23.js} +1 -1
  26. package/dist/{drawFns-iLMiNmSn.cjs → drawFns-ByfPdMin.cjs} +12 -12
  27. package/dist/{drawFns-AaWLrHms.js → drawFns-S-UBDz0z.js} +12 -12
  28. package/dist/{faceFns-CC8_YZfa.cjs → faceFns-BbkcUym2.cjs} +2 -2
  29. package/dist/{faceFns-Cm0gES7K.js → faceFns-WhbyFezr.js} +2 -2
  30. package/dist/{healingFns-VeDJ6XMB.cjs → healingFns-CxWU6nqI.cjs} +4 -4
  31. package/dist/{healingFns-VpVN8_fL.js → healingFns-sTD9eRIy.js} +4 -4
  32. package/dist/{helpers-Bh0KwQP6.cjs → helpers-HXscoErf.cjs} +6 -6
  33. package/dist/{helpers-CLY1vBEh.js → helpers-m7uW_dyL.js} +6 -6
  34. package/dist/{importFns-S_yBN4DM.cjs → importFns-BUiDmbn7.cjs} +2 -2
  35. package/dist/{importFns-DGjvV5v7.js → importFns-C9yuTs04.js} +2 -2
  36. package/dist/index.d.ts +1 -0
  37. package/dist/io.cjs +2 -2
  38. package/dist/io.js +2 -2
  39. package/dist/{loftFns-X1K8k-xO.cjs → loftFns-BUtmwfSU.cjs} +1 -1
  40. package/dist/{loftFns-DSRNDtrb.js → loftFns-oiR_wtVd.js} +1 -1
  41. package/dist/{measureFns-Cxk1viqa.js → measureFns-B2-vw7XG.js} +3 -3
  42. package/dist/{measureFns-BLvBkVN2.cjs → measureFns-BX7yvMB_.cjs} +3 -3
  43. package/dist/measurement.cjs +1 -1
  44. package/dist/measurement.js +1 -1
  45. package/dist/{meshFns-CLWjW34q.js → meshFns-13CekW14.js} +3 -3
  46. package/dist/{meshFns-DzECvE28.cjs → meshFns-DFhnm9DB.cjs} +3 -3
  47. package/dist/operations.cjs +2 -2
  48. package/dist/operations.js +2 -2
  49. package/dist/{originTrackingFns-DkY6JVbS.cjs → originTrackingFns-B1dazHMg.cjs} +2 -2
  50. package/dist/{originTrackingFns-OE1K7fAE.js → originTrackingFns-DYB8oZOX.js} +2 -2
  51. package/dist/{primitiveFns-qgE7aAa1.cjs → primitiveFns-BdM2vG17.cjs} +38 -10
  52. package/dist/{primitiveFns-Btxzqm_m.js → primitiveFns-DjKUrsMr.js} +38 -10
  53. package/dist/projection.cjs +1 -1
  54. package/dist/projection.js +1 -1
  55. package/dist/query.cjs +2 -2
  56. package/dist/query.js +2 -2
  57. package/dist/{refResolveFns-CXx-LKJ9.js → refResolveFns-BhN6_Z7B.js} +6 -6
  58. package/dist/{refResolveFns-2rKlaLIA.cjs → refResolveFns-IdHk_1vT.cjs} +6 -6
  59. package/dist/{shapeFns-CE6uMpX9.js → shapeFns-B2Xg4Xom.js} +2 -2
  60. package/dist/{shapeFns-Chkm9zFw.cjs → shapeFns-D6EjojPG.cjs} +2 -2
  61. package/dist/shapeRef.cjs +1 -1
  62. package/dist/shapeRef.js +1 -1
  63. package/dist/{shapeTypes-Ddq-_v9z.js → shapeTypes-2oI77VpW.js} +45 -7
  64. package/dist/{shapeTypes-Bu34h0OX.cjs → shapeTypes-GoRBg9oo.cjs} +50 -6
  65. package/dist/sketching.cjs +3 -3
  66. package/dist/sketching.js +3 -3
  67. package/dist/{solidBuilders-C5Cofqf_.cjs → solidBuilders-BDwUKmVl.cjs} +51 -26
  68. package/dist/{solidBuilders-BWe6BF_m.js → solidBuilders-Buze6qct.js} +50 -25
  69. package/dist/{surfaceBuilders-cqrEzSj_.js → surfaceBuilders-DcD6eAJW.js} +3 -3
  70. package/dist/{surfaceBuilders-CpXc9NE-.cjs → surfaceBuilders-rWRvkB_K.cjs} +3 -3
  71. package/dist/text.cjs +2 -2
  72. package/dist/text.js +2 -2
  73. package/dist/{textBlueprints-DaFEVk6r.cjs → textBlueprints-DoePacWO.cjs} +7 -7
  74. package/dist/{textBlueprints-ByEk7W5S.js → textBlueprints-lFyk_adY.js} +7 -7
  75. package/dist/{textMetrics-n7sDRYpp.js → textMetrics-CmAlcFpe.js} +1 -1
  76. package/dist/{textMetrics-C-etH5pm.cjs → textMetrics-DemtrM-e.cjs} +1 -1
  77. package/dist/{threadFns-D7tjbPtF.js → threadFns-C1EWB5h6.js} +7 -7
  78. package/dist/{threadFns-Bb4UvCME.cjs → threadFns-DzoOHczW.cjs} +7 -7
  79. package/dist/topology/api.d.ts +2 -1
  80. package/dist/topology/transformFns.d.ts +2 -1
  81. package/dist/topology.cjs +9 -9
  82. package/dist/topology.js +9 -9
  83. package/dist/{topologyQueryFns-BDscEB9g.js → topologyQueryFns-C2tBjzT8.js} +1 -1
  84. package/dist/{topologyQueryFns-_cv7WYAy.cjs → topologyQueryFns-CZAfuhOE.cjs} +1 -1
  85. package/dist/{validityTypes-CAEV5aTC.js → validityTypes-BAwJuMQB.js} +1 -1
  86. package/dist/{validityTypes-B8dSLAyM.cjs → validityTypes-rPudJ_eg.cjs} +1 -1
  87. package/package.json +1 -1
package/dist/core.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeTypes = require("./shapeTypes-Bu34h0OX.cjs");
2
+ const require_shapeTypes = require("./shapeTypes-GoRBg9oo.cjs");
3
3
  const require_bug = require("./bug-O02CsAmt.cjs");
4
4
  const require_errors = require("./errors-DWezb9DI.cjs");
5
- const require_validityTypes = require("./validityTypes-B8dSLAyM.cjs");
5
+ const require_validityTypes = require("./validityTypes-rPudJ_eg.cjs");
6
6
  const require_constants = require("./constants-BOVyEYGH.cjs");
7
7
  const require_types = require("./types-KjA8tY4Y.cjs");
8
8
  const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
@@ -10,6 +10,7 @@ const require_planeOps = require("./planeOps-CpupTCRM.cjs");
10
10
  exports.BrepBugError = require_bug.BrepBugError;
11
11
  exports.DEG2RAD = require_constants.DEG2RAD;
12
12
  exports.DisposalScope = require_shapeTypes.DisposalScope;
13
+ exports.GeometryCleanupError = require_shapeTypes.GeometryCleanupError;
13
14
  exports.HASH_CODE_MAX = require_constants.HASH_CODE_MAX;
14
15
  exports.OK = require_errors.OK;
15
16
  exports.RAD2DEG = require_constants.RAD2DEG;
package/dist/core.d.ts CHANGED
@@ -8,6 +8,7 @@ export { vecAdd, vecSub, vecScale, vecNegate, vecDot, vecCross, vecLength, vecLe
8
8
  export { ok, err, OK, isOk, isErr, map, mapErr, andThen, flatMap, unwrap, unwrapOr, unwrapOrElse, unwrapErr, match, collect, tryCatch, tryCatchAsync, type Result, type Ok, type Err, type Unit, } from './core/result.js';
9
9
  export { type BrepError, type BrepErrorKind, kernelError, validationError, typeCastError, sketcherStateError, moduleInitError, computationError, ioError, queryError, unsupportedError, bug, BrepBugError, } from './core/errors.js';
10
10
  export { DEG2RAD, RAD2DEG, HASH_CODE_MAX } from './core/constants.js';
11
+ export { GeometryCleanupError } from './core/cleanupError.js';
11
12
  export type { Plane as FnPlane, PlaneName as FnPlaneName, PlaneInput } from './core/planeTypes.js';
12
13
  export { createPlane, createNamedPlane, resolvePlane, translatePlane, pivotPlane, } from './core/planeOps.js';
13
14
  export type { Dimension, ShapeKind, Vertex, Edge, Wire, Face, Shell, Solid, CompSolid, Compound, AnyShape, Shape1D, Shape3D, ClosedWire, OrientedFace, ManifoldShell, ValidSolid, } from './core/shapeTypes.js';
package/dist/core.js CHANGED
@@ -1,9 +1,9 @@
1
- import { A as is2D, C as isSolid, E as getShapeKind, H as withScopeResult, I as isLive, M as DisposalScope, N as createHandle, P as createKernelHandle, S as isShell, T as isWire, U as withScopeResultAsync, V as withScope, _ as isCompound, b as isShape1D, i as castShape, j as is3D, v as isEdge, w as isVertex, x as isShape3D, y as isFace } from "./shapeTypes-Ddq-_v9z.js";
1
+ import { C as isSolid, D as getShapeKind, E as GeometryCleanupError, F as createKernelHandle, H as withScope, L as isLive, M as is3D, N as DisposalScope, P as createHandle, S as isShell, T as isWire, U as withScopeResult, W as withScopeResultAsync, _ as isCompound, b as isShape1D, i as castShape, j as is2D, v as isEdge, w as isVertex, x as isShape3D, y as isFace } from "./shapeTypes-2oI77VpW.js";
2
2
  import { n as bug, t as BrepBugError } from "./bug-BdOHwn_e.js";
3
3
  import { E as ok, F as unwrapErr, I as unwrapOr, L as unwrapOrElse, M as tryCatch, N as tryCatchAsync, P as unwrap, S as map, T as match, _ as flatMap, a as moduleInitError, b as isErr, c as sketcherStateError, d as validationError, f as OK, g as err, h as collect, i as kernelError, l as typeCastError, m as andThen, n as computationError, o as queryError, r as ioError, u as unsupportedError, w as mapErr, x as isOk } from "./errors-CTn8i3lY.js";
4
- import { c as manifoldShell, f as validSolid, i as isOrientedFace, l as orientedFace, n as isClosedWire, r as isManifoldShell, s as isValidSolid, t as closedWire } from "./validityTypes-CAEV5aTC.js";
4
+ import { c as manifoldShell, f as validSolid, i as isOrientedFace, l as orientedFace, n as isClosedWire, r as isManifoldShell, s as isValidSolid, t as closedWire } from "./validityTypes-BAwJuMQB.js";
5
5
  import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-ITRzCnCp.js";
6
6
  import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-D24Y27N0.js";
7
7
  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-SKPRvPH-.js";
8
8
  import { i as pivotPlane, n as createPlane, o as resolvePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-CkpMeheg.js";
9
- export { BrepBugError, DEG2RAD, DisposalScope, HASH_CODE_MAX, OK, RAD2DEG, andThen, bug, castShape, closedWire, collect, computationError, createHandle, createKernelHandle, createNamedPlane, createPlane, err, flatMap, getShapeKind, ioError, is2D, is3D, isClosedWire, isCompound, isEdge, isErr, isFace, isLive, isManifoldShell, isOk, isOrientedFace, isShape1D, isShape3D, isShell, isSolid, isValidSolid, isVertex, isWire, kernelError, manifoldShell, map, mapErr, match, moduleInitError, ok, orientedFace, pivotPlane, queryError, resolveDirection, resolvePlane, sketcherStateError, toVec2, toVec3, translatePlane, tryCatch, tryCatchAsync, typeCastError, unsupportedError, unwrap, unwrapErr, unwrapOr, unwrapOrElse, validSolid, validationError, vecAdd, vecAngle, vecCross, vecDistance, vecDot, vecEquals, vecIsZero, vecLength, vecLengthSq, vecNegate, vecNormalize, vecProjectToPlane, vecRepr, vecRotate, vecScale, vecSub, withScope, withScopeResult, withScopeResultAsync };
9
+ export { BrepBugError, DEG2RAD, DisposalScope, GeometryCleanupError, HASH_CODE_MAX, OK, RAD2DEG, andThen, bug, castShape, closedWire, collect, computationError, createHandle, createKernelHandle, createNamedPlane, createPlane, err, flatMap, getShapeKind, ioError, is2D, is3D, isClosedWire, isCompound, isEdge, isErr, isFace, isLive, isManifoldShell, isOk, isOrientedFace, isShape1D, isShape3D, isShell, isSolid, isValidSolid, isVertex, isWire, kernelError, manifoldShell, map, mapErr, match, moduleInitError, ok, orientedFace, pivotPlane, queryError, resolveDirection, resolvePlane, sketcherStateError, toVec2, toVec3, translatePlane, tryCatch, tryCatchAsync, typeCastError, unsupportedError, unwrap, unwrapErr, unwrapOr, unwrapOrElse, validSolid, validationError, vecAdd, vecAngle, vecCross, vecDistance, vecDot, vecEquals, vecIsZero, vecLength, vecLengthSq, vecNegate, vecNormalize, vecProjectToPlane, vecRepr, vecRotate, vecScale, vecSub, withScope, withScopeResult, withScopeResultAsync };
@@ -1,6 +1,6 @@
1
1
  import { t as DEG2RAD } from "./constants-ITRzCnCp.js";
2
2
  import { n as getAtOrThrow } from "./arrayAccess-DrUGPADn.js";
3
- import { p as distance2d, u as angle2d, v as samePoint } from "./helpers-CLY1vBEh.js";
3
+ import { p as distance2d, u as angle2d, v as samePoint } from "./helpers-m7uW_dyL.js";
4
4
  //#region src/query/cornerFinder.ts
5
5
  var PI_2 = 2 * Math.PI;
6
6
  function positiveHalfAngle(angle) {
@@ -1,6 +1,6 @@
1
1
  const require_constants = require("./constants-BOVyEYGH.cjs");
2
2
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
3
- const require_helpers = require("./helpers-Bh0KwQP6.cjs");
3
+ const require_helpers = require("./helpers-HXscoErf.cjs");
4
4
  //#region src/query/cornerFinder.ts
5
5
  var PI_2 = 2 * Math.PI;
6
6
  function positiveHalfAngle(angle) {
@@ -1,4 +1,4 @@
1
- const require_shapeTypes = require("./shapeTypes-Bu34h0OX.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-GoRBg9oo.cjs");
2
2
  const require_errors = require("./errors-DWezb9DI.cjs");
3
3
  //#region src/topology/curveFns.ts
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { K as getKernel, T as isWire, h as disposeResultShape, n as castResultShape, v as isEdge } from "./shapeTypes-Ddq-_v9z.js";
1
+ import { T as isWire, h as disposeResultShape, n as castResultShape, q as getKernel, v as isEdge } from "./shapeTypes-2oI77VpW.js";
2
2
  import { E as ok, g as err, l as typeCastError } from "./errors-CTn8i3lY.js";
3
3
  //#region src/topology/curveFns.ts
4
4
  /**
@@ -1,22 +1,22 @@
1
- const require_shapeTypes = require("./shapeTypes-Bu34h0OX.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-GoRBg9oo.cjs");
2
2
  const require_bug = require("./bug-O02CsAmt.cjs");
3
3
  const require_errors = require("./errors-DWezb9DI.cjs");
4
- const require_topologyQueryFns = require("./topologyQueryFns-_cv7WYAy.cjs");
4
+ const require_topologyQueryFns = require("./topologyQueryFns-CZAfuhOE.cjs");
5
5
  const require_constants = require("./constants-BOVyEYGH.cjs");
6
6
  const require_types = require("./types-KjA8tY4Y.cjs");
7
7
  const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
8
8
  const require_planeOps = require("./planeOps-CpupTCRM.cjs");
9
- const require_faceFns = require("./faceFns-CC8_YZfa.cjs");
10
- const require_curveFns = require("./curveFns-CckFqzDq.cjs");
9
+ const require_faceFns = require("./faceFns-BbkcUym2.cjs");
10
+ const require_curveFns = require("./curveFns-BRhVbssu.cjs");
11
11
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
12
- const require_surfaceBuilders = require("./surfaceBuilders-CpXc9NE-.cjs");
13
- const require_blueprintSketcher = require("./blueprintSketcher-BW61wFHj.cjs");
14
- const require_helpers = require("./helpers-Bh0KwQP6.cjs");
15
- const require_blueprint = require("./blueprint-A0vNnPtH.cjs");
16
- const require_cornerFinder = require("./cornerFinder-DtTV5f1F.cjs");
17
- const require_boolean2D = require("./boolean2D-DXc-Z54o.cjs");
18
- const require_textBlueprints = require("./textBlueprints-DaFEVk6r.cjs");
19
- const require_cameraFns = require("./cameraFns-DkpgYZ_J.cjs");
12
+ const require_surfaceBuilders = require("./surfaceBuilders-rWRvkB_K.cjs");
13
+ const require_blueprintSketcher = require("./blueprintSketcher-BbbIIw68.cjs");
14
+ const require_helpers = require("./helpers-HXscoErf.cjs");
15
+ const require_blueprint = require("./blueprint-Pd5C9eyi.cjs");
16
+ const require_cornerFinder = require("./cornerFinder-BSHr_G27.cjs");
17
+ const require_boolean2D = require("./boolean2D-B5-s6yey.cjs");
18
+ const require_textBlueprints = require("./textBlueprints-DoePacWO.cjs");
19
+ const require_cameraFns = require("./cameraFns-C_aXHOXb.cjs");
20
20
  //#region src/2d/lib/stitching.ts
21
21
  /**
22
22
  * Group a flat list of curves into connected chains by matching endpoints.
@@ -1,22 +1,22 @@
1
- import { K as getKernel, M as DisposalScope, W as _usingCtx, c as createEdge, l as createFace, p as createWire } from "./shapeTypes-Ddq-_v9z.js";
1
+ import { G as _usingCtx, N as DisposalScope, c as createEdge, l as createFace, p as createWire, q as getKernel } from "./shapeTypes-2oI77VpW.js";
2
2
  import { i as wasmIndex, n as bug } from "./bug-BdOHwn_e.js";
3
3
  import { P as unwrap, s as safeIndex } from "./errors-CTn8i3lY.js";
4
- import { s as getEdges } from "./topologyQueryFns-BDscEB9g.js";
4
+ import { s as getEdges } from "./topologyQueryFns-C2tBjzT8.js";
5
5
  import { t as DEG2RAD } from "./constants-ITRzCnCp.js";
6
6
  import { r as toVec3 } from "./types-D24Y27N0.js";
7
7
  import { d as vecNormalize, g as vecSub, h as vecScale, m as vecRotate, r as vecCross } from "./vecOps-SKPRvPH-.js";
8
8
  import { a as planeToWorld, o as resolvePlane } from "./planeOps-CkpMeheg.js";
9
- import { d as pointOnSurface, l as normalAt, m as uvBounds, r as faceCenter, u as outerWire, v as copyShape, y as downcast } from "./faceFns-Cm0gES7K.js";
10
- import { h as offsetWire2D, i as curveIsClosed, l as curveStartPoint } from "./curveFns-CszFf328.js";
9
+ import { d as pointOnSurface, l as normalAt, m as uvBounds, r as faceCenter, u as outerWire, v as copyShape, y as downcast } from "./faceFns-WhbyFezr.js";
10
+ import { h as offsetWire2D, i as curveIsClosed, l as curveStartPoint } from "./curveFns-xQNPUc23.js";
11
11
  import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
12
- import { c as makeBSplineApproximation, d as makeCircle, f as makeEllipse, m as makeHelix, r as makeFace, s as assembleWire } from "./surfaceBuilders-cqrEzSj_.js";
13
- import { a as Blueprints, c as make2dOffset, i as CompoundBlueprint, l as intersectCurves, n as BaseSketcher2d, o as chamferCurves, s as filletCurves, u as Flatbush } from "./blueprintSketcher-DBF-HfZS.js";
14
- import { b as squareDistance2d, l as add2d, s as PRECISION_OFFSET, v as samePoint$1, x as subtract2d } from "./helpers-CLY1vBEh.js";
15
- import { _ as approximateAsSvgCompatibleCurve, a as edgeToCurve, f as make2dInerpolatedBSplineCurve, i as curvesAsEdgesOnPlane, l as make2dCircle, p as make2dSegmentCurve, s as make2dArcFromCenter, t as Blueprint, u as make2dEllipse, v as Curve2D, x as BoundingBox2d, y as deserializeCurve2D } from "./blueprint-CB1yyyaF.js";
16
- import { t as cornerFinder } from "./cornerFinder-B-BXL0FS.js";
17
- import { c as roundedRectangleBlueprint, n as fuse2D, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-CSrfsgdP.js";
18
- import { _ as wrapSketchDataArray, a as Sketch, g as wrapSketchData, i as Sketches, t as textBlueprints } from "./textBlueprints-ByEk7W5S.js";
19
- import { i as projectEdges, t as cameraFromPlane } from "./cameraFns-DouxkTGQ.js";
12
+ import { c as makeBSplineApproximation, d as makeCircle, f as makeEllipse, m as makeHelix, r as makeFace, s as assembleWire } from "./surfaceBuilders-DcD6eAJW.js";
13
+ import { a as Blueprints, c as make2dOffset, i as CompoundBlueprint, l as intersectCurves, n as BaseSketcher2d, o as chamferCurves, s as filletCurves, u as Flatbush } from "./blueprintSketcher-s1mCyP4C.js";
14
+ import { b as squareDistance2d, l as add2d, s as PRECISION_OFFSET, v as samePoint$1, x as subtract2d } from "./helpers-m7uW_dyL.js";
15
+ import { _ as approximateAsSvgCompatibleCurve, a as edgeToCurve, f as make2dInerpolatedBSplineCurve, i as curvesAsEdgesOnPlane, l as make2dCircle, p as make2dSegmentCurve, s as make2dArcFromCenter, t as Blueprint, u as make2dEllipse, v as Curve2D, x as BoundingBox2d, y as deserializeCurve2D } from "./blueprint-CuE8oS8o.js";
16
+ import { t as cornerFinder } from "./cornerFinder-B5uO-_nX.js";
17
+ import { c as roundedRectangleBlueprint, n as fuse2D, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-XkF5a9UO.js";
18
+ import { _ as wrapSketchDataArray, a as Sketch, g as wrapSketchData, i as Sketches, t as textBlueprints } from "./textBlueprints-lFyk_adY.js";
19
+ import { i as projectEdges, t as cameraFromPlane } from "./cameraFns-C42m8_GN.js";
20
20
  //#region src/2d/lib/stitching.ts
21
21
  /**
22
22
  * Group a flat list of curves into connected chains by matching endpoints.
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-Bu34h0OX.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-GoRBg9oo.cjs");
2
2
  const require_errors = require("./errors-DWezb9DI.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-_cv7WYAy.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-CZAfuhOE.cjs");
4
4
  const require_types = require("./types-KjA8tY4Y.cjs");
5
5
  //#region src/topology/cast.ts
6
6
  var TOPO_ENUM = {
@@ -1,6 +1,6 @@
1
- import { K as getKernel, i as castShape } from "./shapeTypes-Ddq-_v9z.js";
1
+ import { i as castShape, q as getKernel } from "./shapeTypes-2oI77VpW.js";
2
2
  import { E as ok, P as unwrap, g as err, l as typeCastError } from "./errors-CTn8i3lY.js";
3
- import { a as getCachedSurfaceType } from "./topologyQueryFns-BDscEB9g.js";
3
+ import { a as getCachedSurfaceType } from "./topologyQueryFns-C2tBjzT8.js";
4
4
  import { r as toVec3 } from "./types-D24Y27N0.js";
5
5
  //#region src/topology/cast.ts
6
6
  var TOPO_ENUM = {
@@ -1,9 +1,9 @@
1
- const require_shapeTypes = require("./shapeTypes-Bu34h0OX.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-GoRBg9oo.cjs");
2
2
  const require_errors = require("./errors-DWezb9DI.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-_cv7WYAy.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-CZAfuhOE.cjs");
4
4
  const require_constants = require("./constants-BOVyEYGH.cjs");
5
- const require_faceFns = require("./faceFns-CC8_YZfa.cjs");
6
- const require_solidBuilders = require("./solidBuilders-C5Cofqf_.cjs");
5
+ const require_faceFns = require("./faceFns-BbkcUym2.cjs");
6
+ const require_solidBuilders = require("./solidBuilders-BDwUKmVl.cjs");
7
7
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
8
8
  //#region src/topology/threeHelpers.ts
9
9
  /**
@@ -1,9 +1,9 @@
1
- import { C as isSolid, E as getShapeKind, K as getKernel, T as isWire, h as disposeResultShape, i as castShape, m as disposeDowncastSource, n as castResultShape, x as isShape3D, y as isFace } from "./shapeTypes-Ddq-_v9z.js";
1
+ import { C as isSolid, D as getShapeKind, T as isWire, h as disposeResultShape, i as castShape, m as disposeDowncastSource, n as castResultShape, q as getKernel, x as isShape3D, y as isFace } from "./shapeTypes-2oI77VpW.js";
2
2
  import { E as ok, b as isErr, d as validationError, g as err, i as kernelError, l as typeCastError, t as BrepErrorCode, x as isOk } from "./errors-CTn8i3lY.js";
3
- import { c as getFaces, i as getCachedIsValid, m as invalidateShapeCache, p as getWires, s as getEdges } from "./topologyQueryFns-BDscEB9g.js";
3
+ import { c as getFaces, i as getCachedIsValid, m as invalidateShapeCache, p as getWires, s as getEdges } from "./topologyQueryFns-C2tBjzT8.js";
4
4
  import { n as HASH_CODE_MAX } from "./constants-ITRzCnCp.js";
5
- import { y as downcast } from "./faceFns-Cm0gES7K.js";
6
- import { C as propagateAllMetadata, f as cut, h as fuseAll, m as fuse, p as cutAll, x as collectInputFaceHashes } from "./solidBuilders-BWe6BF_m.js";
5
+ import { y as downcast } from "./faceFns-WhbyFezr.js";
6
+ import { C as propagateAllMetadata, f as cut, h as fuseAll, m as fuse, p as cutAll, x as collectInputFaceHashes } from "./solidBuilders-Buze6qct.js";
7
7
  import { t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
8
8
  //#region src/topology/threeHelpers.ts
9
9
  /**
@@ -1,12 +1,12 @@
1
- const require_shapeTypes = require("./shapeTypes-Bu34h0OX.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-GoRBg9oo.cjs");
2
2
  const require_errors = require("./errors-DWezb9DI.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-_cv7WYAy.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-CZAfuhOE.cjs");
4
4
  const require_constants = require("./constants-BOVyEYGH.cjs");
5
5
  const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
6
- const require_faceFns = require("./faceFns-CC8_YZfa.cjs");
7
- const require_shapeFns = require("./shapeFns-Chkm9zFw.cjs");
8
- const require_curveFns = require("./curveFns-CckFqzDq.cjs");
9
- const require_measureFns = require("./measureFns-BLvBkVN2.cjs");
6
+ const require_faceFns = require("./faceFns-BbkcUym2.cjs");
7
+ const require_shapeFns = require("./shapeFns-D6EjojPG.cjs");
8
+ const require_curveFns = require("./curveFns-BRhVbssu.cjs");
9
+ const require_measureFns = require("./measureFns-BX7yvMB_.cjs");
10
10
  //#region src/utils/vec2d.ts
11
11
  /** Precision for curve intersection and parameter operations. */
12
12
  var PRECISION_INTERSECTION = 1e-9;
@@ -1,12 +1,12 @@
1
- import { K as getKernel, y as isFace } from "./shapeTypes-Ddq-_v9z.js";
1
+ import { q as getKernel, y as isFace } from "./shapeTypes-2oI77VpW.js";
2
2
  import { E as ok, g as err, o as queryError, x as isOk } from "./errors-CTn8i3lY.js";
3
- import { c as getFaces, f as getVertices, p as getWires, s as getEdges } from "./topologyQueryFns-BDscEB9g.js";
3
+ import { c as getFaces, f as getVertices, p as getWires, s as getEdges } from "./topologyQueryFns-C2tBjzT8.js";
4
4
  import { t as DEG2RAD } from "./constants-ITRzCnCp.js";
5
5
  import { a as vecDot, d as vecNormalize } from "./vecOps-SKPRvPH-.js";
6
- import { l as normalAt, s as getSurfaceType } from "./faceFns-Cm0gES7K.js";
7
- import { a as isSameShape, n as getHashCode } from "./shapeFns-CE6uMpX9.js";
8
- import { f as getCurveType, i as curveIsClosed, o as curveLength } from "./curveFns-CszFf328.js";
9
- import { n as measureArea } from "./measureFns-Cxk1viqa.js";
6
+ import { l as normalAt, s as getSurfaceType } from "./faceFns-WhbyFezr.js";
7
+ import { a as isSameShape, n as getHashCode } from "./shapeFns-B2Xg4Xom.js";
8
+ import { f as getCurveType, i as curveIsClosed, o as curveLength } from "./curveFns-xQNPUc23.js";
9
+ import { n as measureArea } from "./measureFns-B2-vw7XG.js";
10
10
  //#region src/utils/vec2d.ts
11
11
  /** Precision for curve intersection and parameter operations. */
12
12
  var PRECISION_INTERSECTION = 1e-9;
@@ -1,8 +1,8 @@
1
- const require_shapeTypes = require("./shapeTypes-Bu34h0OX.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-GoRBg9oo.cjs");
2
2
  const require_bug = require("./bug-O02CsAmt.cjs");
3
3
  const require_errors = require("./errors-DWezb9DI.cjs");
4
4
  const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
5
- const require_blueprint = require("./blueprint-A0vNnPtH.cjs");
5
+ const require_blueprint = require("./blueprint-Pd5C9eyi.cjs");
6
6
  //#region src/io/objExportFns.ts
7
7
  /** Read a vec3 from a typed array at the given vertex index. */
8
8
  function vec3At(arr, i) {
@@ -1,8 +1,8 @@
1
- import { K as getKernel, n as castResultShape } from "./shapeTypes-Ddq-_v9z.js";
1
+ import { n as castResultShape, q as getKernel } from "./shapeTypes-2oI77VpW.js";
2
2
  import { i as wasmIndex, r as vec3At$1 } from "./bug-BdOHwn_e.js";
3
3
  import { E as ok, g as err, r as ioError, t as BrepErrorCode } from "./errors-CTn8i3lY.js";
4
4
  import { n as getAtOrThrow } from "./arrayAccess-DrUGPADn.js";
5
- import { c as make2dBezierCurve, h as make2dThreePointArc, p as make2dSegmentCurve, t as Blueprint } from "./blueprint-CB1yyyaF.js";
5
+ import { c as make2dBezierCurve, h as make2dThreePointArc, p as make2dSegmentCurve, t as Blueprint } from "./blueprint-CuE8oS8o.js";
6
6
  //#region src/io/objExportFns.ts
7
7
  /** Read a vec3 from a typed array at the given vertex index. */
8
8
  function vec3At(arr, i) {
package/dist/index.d.ts CHANGED
@@ -13,6 +13,7 @@ export { getPerformanceStats, resetPerformanceStats } from './kernel/index.js';
13
13
  export type { PerformanceStats } from './kernel/perfStats.js';
14
14
  export { ok, err, OK, isOk, isErr, map, mapBoth, mapErr, andThen, flatMap, flatten, unwrap, unwrapOr, unwrapOrElse, unwrapErr, match, collect, or, orElse, zip as zipResults, all, tap, tapErr, fromNullable, tryCatch, tryCatchAsync, pipeline, type Result, type Ok, type Err, type Unit, type ResultPipeline, } from './core/result.js';
15
15
  export { kernelCall, kernelCallRaw, kernelCallScoped } from './core/kernelCall.js';
16
+ export { GeometryCleanupError } from './core/cleanupError.js';
16
17
  export { type BrepError, type BrepErrorKind, BrepErrorCode, kernelError, validationError, typeCastError, sketcherStateError, moduleInitError, computationError, ioError, queryError, unsupportedError, bug, BrepBugError, } from './core/errors.js';
17
18
  export { DEG2RAD, RAD2DEG, HASH_CODE_MAX } from './core/constants.js';
18
19
  export { type Deletable } from './core/disposal.js';
package/dist/io.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_meshFns = require("./meshFns-DzECvE28.cjs");
3
- const require_importFns = require("./importFns-S_yBN4DM.cjs");
2
+ const require_meshFns = require("./meshFns-DFhnm9DB.cjs");
3
+ const require_importFns = require("./importFns-BUiDmbn7.cjs");
4
4
  exports.blueprintToDXF = require_importFns.blueprintToDXF;
5
5
  exports.exportDXF = require_importFns.exportDXF;
6
6
  exports.exportGlb = require_importFns.exportGlb;
package/dist/io.js CHANGED
@@ -1,3 +1,3 @@
1
- import { n as exportSTEP, r as exportSTL, t as exportIGES } from "./meshFns-CLWjW34q.js";
2
- import { a as importSVG, c as blueprintToDXF, d as exportGltf, f as exportOBJ, i as exportSTEPConfigured, l as exportDXF, n as importSTEP, o as importSVGPathD, r as importSTL, s as exportThreeMF, t as importIGES, u as exportGlb } from "./importFns-DGjvV5v7.js";
1
+ import { n as exportSTEP, r as exportSTL, t as exportIGES } from "./meshFns-13CekW14.js";
2
+ import { a as importSVG, c as blueprintToDXF, d as exportGltf, f as exportOBJ, i as exportSTEPConfigured, l as exportDXF, n as importSTEP, o as importSVGPathD, r as importSTL, s as exportThreeMF, t as importIGES, u as exportGlb } from "./importFns-C9yuTs04.js";
3
3
  export { blueprintToDXF, exportDXF, exportGlb, exportGltf, exportIGES, exportOBJ, exportSTEP, exportSTEPConfigured, exportSTL, exportThreeMF, importIGES, importSTEP, importSTL, importSVG, importSVGPathD };
@@ -1,4 +1,4 @@
1
- const require_shapeTypes = require("./shapeTypes-Bu34h0OX.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-GoRBg9oo.cjs");
2
2
  const require_errors = require("./errors-DWezb9DI.cjs");
3
3
  const require_types = require("./types-KjA8tY4Y.cjs");
4
4
  const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
@@ -1,4 +1,4 @@
1
- import { K as getKernel, T as isWire, W as _usingCtx, h as disposeResultShape, n as castResultShape, x as isShape3D } from "./shapeTypes-Ddq-_v9z.js";
1
+ import { G as _usingCtx, T as isWire, h as disposeResultShape, n as castResultShape, q as getKernel, x as isShape3D } from "./shapeTypes-2oI77VpW.js";
2
2
  import { E as ok, b as isErr, d as validationError, g as err, i as kernelError, l as typeCastError, t as BrepErrorCode } from "./errors-CTn8i3lY.js";
3
3
  import { r as toVec3 } from "./types-D24Y27N0.js";
4
4
  import { c as vecLength, t as vecAdd } from "./vecOps-SKPRvPH-.js";
@@ -1,7 +1,7 @@
1
- import { K as getKernel } from "./shapeTypes-Ddq-_v9z.js";
1
+ import { q as getKernel } from "./shapeTypes-2oI77VpW.js";
2
2
  import { E as ok, d as validationError, g as err, t as BrepErrorCode } from "./errors-CTn8i3lY.js";
3
- import { T as kernelCallRaw } from "./topologyQueryFns-BDscEB9g.js";
4
- import { m as uvBounds } from "./faceFns-Cm0gES7K.js";
3
+ import { T as kernelCallRaw } from "./topologyQueryFns-C2tBjzT8.js";
4
+ import { m as uvBounds } from "./faceFns-WhbyFezr.js";
5
5
  //#region src/measurement/measureCache.ts
6
6
  var cache = /* @__PURE__ */ new WeakMap();
7
7
  function getCachedMeasurement(shape, key) {
@@ -1,7 +1,7 @@
1
- const require_shapeTypes = require("./shapeTypes-Bu34h0OX.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-GoRBg9oo.cjs");
2
2
  const require_errors = require("./errors-DWezb9DI.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-_cv7WYAy.cjs");
4
- const require_faceFns = require("./faceFns-CC8_YZfa.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-CZAfuhOE.cjs");
4
+ const require_faceFns = require("./faceFns-BbkcUym2.cjs");
5
5
  //#region src/measurement/measureCache.ts
6
6
  var cache = /* @__PURE__ */ new WeakMap();
7
7
  function getCachedMeasurement(shape, key) {
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_measureFns = require("./measureFns-BLvBkVN2.cjs");
2
+ const require_measureFns = require("./measureFns-BX7yvMB_.cjs");
3
3
  exports.createDistanceQuery = require_measureFns.createDistanceQuery;
4
4
  exports.measureArea = require_measureFns.measureArea;
5
5
  exports.measureDistance = require_measureFns.measureDistance;
@@ -1,2 +1,2 @@
1
- import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-Cxk1viqa.js";
1
+ import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-B2-vw7XG.js";
2
2
  export { createDistanceQuery, measureArea, measureDistance, measureDistanceProps, measureLength, measureLinearProps, measureSurfaceProps, measureVolume, measureVolumeProps };
@@ -1,7 +1,7 @@
1
- import { K as getKernel, lt as qualityDeflection } from "./shapeTypes-Ddq-_v9z.js";
1
+ import { q as getKernel, ut as qualityDeflection } from "./shapeTypes-2oI77VpW.js";
2
2
  import { E as ok, g as err, r as ioError } from "./errors-CTn8i3lY.js";
3
- import { d as getSolids, n as getBounds } from "./topologyQueryFns-BDscEB9g.js";
4
- import { t as getFaceOrigins } from "./originTrackingFns-OE1K7fAE.js";
3
+ import { d as getSolids, n as getBounds } from "./topologyQueryFns-C2tBjzT8.js";
4
+ import { t as getFaceOrigins } from "./originTrackingFns-DYB8oZOX.js";
5
5
  //#region src/topology/meshCache.ts
6
6
  /**
7
7
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -1,7 +1,7 @@
1
- const require_shapeTypes = require("./shapeTypes-Bu34h0OX.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-GoRBg9oo.cjs");
2
2
  const require_errors = require("./errors-DWezb9DI.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-_cv7WYAy.cjs");
4
- const require_originTrackingFns = require("./originTrackingFns-DkY6JVbS.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-CZAfuhOE.cjs");
4
+ const require_originTrackingFns = require("./originTrackingFns-B1dazHMg.cjs");
5
5
  //#region src/topology/meshCache.ts
6
6
  /**
7
7
  * Build a parameter key for the inner cache map (excludes shape identity).
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_threadFns = require("./threadFns-Bb4UvCME.cjs");
3
- const require_loftFns = require("./loftFns-X1K8k-xO.cjs");
2
+ const require_threadFns = require("./threadFns-DzoOHczW.cjs");
3
+ const require_loftFns = require("./loftFns-BUtmwfSU.cjs");
4
4
  exports.addChild = require_threadFns.addChild;
5
5
  exports.addJoint = require_threadFns.addJoint;
6
6
  exports.addStep = require_threadFns.addStep;
@@ -1,3 +1,3 @@
1
- import { A as setJointValue, B as walkAssembly, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as countNodes, H as circularPattern, I as createAssemblyNode, L as findNode, M as sphericalJoint, N as addChild, O as prismaticJoint, P as collectShapes, R as removeChild, S as addJoint, T as jointTransform, U as gridPattern, V as exportAssemblySTEP, W as linearPattern, Y as createAssembly, _ as exportURDF, b as inverseKinematics, c as modifyStep, d as replayFrom, f as replayHistory, g as undoLast, h as stepsFrom, i as createRegistry, j as setJointValues, k as revoluteJoint, l as registerOperation, m as stepCount, n as addStep, o as findStep, r as createHistory, s as getShape, t as thread, u as registerShape, v as importURDF, w as forwardKinematics, x as jointTrajectory, y as jointsFromDH, z as updateNode } from "./threadFns-D7tjbPtF.js";
2
- import { c as twistExtrude, o as supportExtrude, r as complexExtrude, s as sweep } from "./loftFns-DSRNDtrb.js";
1
+ import { A as setJointValue, B as walkAssembly, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as countNodes, H as circularPattern, I as createAssemblyNode, L as findNode, M as sphericalJoint, N as addChild, O as prismaticJoint, P as collectShapes, R as removeChild, S as addJoint, T as jointTransform, U as gridPattern, V as exportAssemblySTEP, W as linearPattern, Y as createAssembly, _ as exportURDF, b as inverseKinematics, c as modifyStep, d as replayFrom, f as replayHistory, g as undoLast, h as stepsFrom, i as createRegistry, j as setJointValues, k as revoluteJoint, l as registerOperation, m as stepCount, n as addStep, o as findStep, r as createHistory, s as getShape, t as thread, u as registerShape, v as importURDF, w as forwardKinematics, x as jointTrajectory, y as jointsFromDH, z as updateNode } from "./threadFns-C1EWB5h6.js";
2
+ import { c as twistExtrude, o as supportExtrude, r as complexExtrude, s as sweep } from "./loftFns-oiR_wtVd.js";
3
3
  export { addChild, addJoint, addStep, circularPattern, collectShapes, complexExtrude, countNodes, createAssembly, createAssemblyNode, createHistory, createRegistry, cylindricalJoint, exportAssemblySTEP, exportURDF, findNode, findStep, forwardKinematics, getShape as getHistoryShape, gridPattern, importURDF, inverseKinematics, jointTrajectory, jointTransform, jointsFromDH, linearPattern, mechanismDOF, modifyStep, planarJoint, prismaticJoint, registerOperation, registerShape, removeChild, replayFrom, replayHistory, revoluteJoint, setJointValue, setJointValues, sphericalJoint, stepCount, stepsFrom, supportExtrude, sweep, thread, twistExtrude, undoLast, updateNode, walkAssembly };
@@ -1,5 +1,5 @@
1
- const require_shapeTypes = require("./shapeTypes-Bu34h0OX.cjs");
2
- const require_topologyQueryFns = require("./topologyQueryFns-_cv7WYAy.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-GoRBg9oo.cjs");
2
+ const require_topologyQueryFns = require("./topologyQueryFns-CZAfuhOE.cjs");
3
3
  const require_constants = require("./constants-BOVyEYGH.cjs");
4
4
  //#region src/topology/metadata/originTrackingFns.ts
5
5
  /**
@@ -1,5 +1,5 @@
1
- import { K as getKernel } from "./shapeTypes-Ddq-_v9z.js";
2
- import { S as subShapeHashes, c as getFaces, l as getOrCreateCache, r as getCacheEntry } from "./topologyQueryFns-BDscEB9g.js";
1
+ import { q as getKernel } from "./shapeTypes-2oI77VpW.js";
2
+ import { S as subShapeHashes, c as getFaces, l as getOrCreateCache, r as getCacheEntry } from "./topologyQueryFns-C2tBjzT8.js";
3
3
  import { n as HASH_CODE_MAX } from "./constants-ITRzCnCp.js";
4
4
  //#region src/topology/metadata/originTrackingFns.ts
5
5
  /**
@@ -1,9 +1,9 @@
1
- const require_shapeTypes = require("./shapeTypes-Bu34h0OX.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-GoRBg9oo.cjs");
2
2
  const require_errors = require("./errors-DWezb9DI.cjs");
3
- const require_validityTypes = require("./validityTypes-B8dSLAyM.cjs");
3
+ const require_validityTypes = require("./validityTypes-rPudJ_eg.cjs");
4
4
  const require_constants = require("./constants-BOVyEYGH.cjs");
5
- const require_solidBuilders = require("./solidBuilders-C5Cofqf_.cjs");
6
- const require_surfaceBuilders = require("./surfaceBuilders-CpXc9NE-.cjs");
5
+ const require_solidBuilders = require("./solidBuilders-BDwUKmVl.cjs");
6
+ const require_surfaceBuilders = require("./surfaceBuilders-rWRvkB_K.cjs");
7
7
  //#region src/topology/transformFns.ts
8
8
  /**
9
9
  * Immutable shape transforms — translate, rotate, scale, mirror, applyMatrix.
@@ -218,17 +218,45 @@ function composeTransforms(ops) {
218
218
  * Accepts a single op or an ordered list (applied first-to-last, e.g. rotate
219
219
  * then translate). Non-rigid ops (`scale`) aren't a placement and don't belong
220
220
  * here — use `applyMatrix` for those.
221
+ * A pre-composed transform remains caller-owned; this function never cleans it up.
221
222
  */
222
223
  function locate(shape, placement) {
223
- const { trsf, cleanup } = composeTransforms("type" in placement ? [placement] : placement);
224
+ const { trsf, cleanup } = "trsf" in placement ? placement : composeTransforms("type" in placement ? [placement] : placement);
224
225
  let moved;
225
226
  try {
226
- moved = require_shapeTypes.castResultShape(require_shapeTypes.getKernel().locate(shape.wrapped, trsf));
227
- } finally {
228
- cleanup();
227
+ try {
228
+ var _usingCtx$2 = require_shapeTypes._usingCtx();
229
+ _usingCtx$2.u("trsf" in placement ? null : { [Symbol.dispose]() {
230
+ try {
231
+ cleanup();
232
+ } catch (cause) {
233
+ throw new require_shapeTypes.GeometryCleanupError({
234
+ message: "Placement transform cleanup failed",
235
+ resourceKind: "TRANSFORM",
236
+ cause
237
+ });
238
+ }
239
+ } });
240
+ moved = require_shapeTypes.castResultShape(require_shapeTypes.getKernel().locate(shape.wrapped, trsf));
241
+ } catch (_) {
242
+ _usingCtx$2.e = _;
243
+ } finally {
244
+ _usingCtx$2.d();
245
+ }
246
+ if (require_solidBuilders.hasAnyMetadata(shape)) require_solidBuilders.propagateMetadataThroughRelocation(shape, moved);
247
+ return moved;
248
+ } catch (cause) {
249
+ if (moved !== void 0) try {
250
+ moved[Symbol.dispose]();
251
+ } catch (cleanupCause) {
252
+ throw new AggregateError([cause, new require_shapeTypes.GeometryCleanupError({
253
+ message: "Unreturned placement cleanup failed",
254
+ resourceKind: "SHAPE",
255
+ cause: cleanupCause
256
+ })], "Placement and output cleanup failed", { cause: cleanupCause });
257
+ }
258
+ throw cause;
229
259
  }
230
- if (require_solidBuilders.hasAnyMetadata(shape)) require_solidBuilders.propagateMetadataThroughRelocation(shape, moved);
231
- return moved;
232
260
  }
233
261
  /**
234
262
  * Clone a shape and apply a pre-composed transform in a single kernel operation.
@@ -1,9 +1,9 @@
1
- import { K as getKernel, W as _usingCtx, d as createSolid, n as castResultShape } from "./shapeTypes-Ddq-_v9z.js";
1
+ import { E as GeometryCleanupError, G as _usingCtx, d as createSolid, n as castResultShape, q as getKernel } from "./shapeTypes-2oI77VpW.js";
2
2
  import { E as ok, d as validationError, g as err, m as andThen, t as BrepErrorCode } from "./errors-CTn8i3lY.js";
3
- import { n as isClosedWire } from "./validityTypes-CAEV5aTC.js";
3
+ import { n as isClosedWire } from "./validityTypes-BAwJuMQB.js";
4
4
  import { n as HASH_CODE_MAX, t as DEG2RAD } from "./constants-ITRzCnCp.js";
5
- import { C as propagateAllMetadata, S as hasAnyMetadata, T as propagateMetadataThroughRelocation, a as makeOffset, c as makeTorus, i as makeEllipsoid, l as makeVertex, n as makeCone, o as makeSolid, r as makeCylinder, s as makeSphere, t as makeCompound, u as weldShellsAndFaces, w as propagateMetadataByHash, x as collectInputFaceHashes } from "./solidBuilders-BWe6BF_m.js";
6
- import { _ as makeThreePointArc, a as makeNonPlanarFace, c as makeBSplineApproximation, d as makeCircle, f as makeEllipse, g as makeTangentArc, h as makeLine, i as makeNewFaceWithinFace, m as makeHelix, o as makePolygon, p as makeEllipseArc, r as makeFace, s as assembleWire, t as addHolesInFace, u as makeBezierCurve } from "./surfaceBuilders-cqrEzSj_.js";
5
+ import { C as propagateAllMetadata, S as hasAnyMetadata, T as propagateMetadataThroughRelocation, a as makeOffset, c as makeTorus, i as makeEllipsoid, l as makeVertex, n as makeCone, o as makeSolid, r as makeCylinder, s as makeSphere, t as makeCompound, u as weldShellsAndFaces, w as propagateMetadataByHash, x as collectInputFaceHashes } from "./solidBuilders-Buze6qct.js";
6
+ import { _ as makeThreePointArc, a as makeNonPlanarFace, c as makeBSplineApproximation, d as makeCircle, f as makeEllipse, g as makeTangentArc, h as makeLine, i as makeNewFaceWithinFace, m as makeHelix, o as makePolygon, p as makeEllipseArc, r as makeFace, s as assembleWire, t as addHolesInFace, u as makeBezierCurve } from "./surfaceBuilders-DcD6eAJW.js";
7
7
  //#region src/topology/transformFns.ts
8
8
  /**
9
9
  * Immutable shape transforms — translate, rotate, scale, mirror, applyMatrix.
@@ -218,17 +218,45 @@ function composeTransforms(ops) {
218
218
  * Accepts a single op or an ordered list (applied first-to-last, e.g. rotate
219
219
  * then translate). Non-rigid ops (`scale`) aren't a placement and don't belong
220
220
  * here — use `applyMatrix` for those.
221
+ * A pre-composed transform remains caller-owned; this function never cleans it up.
221
222
  */
222
223
  function locate(shape, placement) {
223
- const { trsf, cleanup } = composeTransforms("type" in placement ? [placement] : placement);
224
+ const { trsf, cleanup } = "trsf" in placement ? placement : composeTransforms("type" in placement ? [placement] : placement);
224
225
  let moved;
225
226
  try {
226
- moved = castResultShape(getKernel().locate(shape.wrapped, trsf));
227
- } finally {
228
- cleanup();
227
+ try {
228
+ var _usingCtx$2 = _usingCtx();
229
+ _usingCtx$2.u("trsf" in placement ? null : { [Symbol.dispose]() {
230
+ try {
231
+ cleanup();
232
+ } catch (cause) {
233
+ throw new GeometryCleanupError({
234
+ message: "Placement transform cleanup failed",
235
+ resourceKind: "TRANSFORM",
236
+ cause
237
+ });
238
+ }
239
+ } });
240
+ moved = castResultShape(getKernel().locate(shape.wrapped, trsf));
241
+ } catch (_) {
242
+ _usingCtx$2.e = _;
243
+ } finally {
244
+ _usingCtx$2.d();
245
+ }
246
+ if (hasAnyMetadata(shape)) propagateMetadataThroughRelocation(shape, moved);
247
+ return moved;
248
+ } catch (cause) {
249
+ if (moved !== void 0) try {
250
+ moved[Symbol.dispose]();
251
+ } catch (cleanupCause) {
252
+ throw new AggregateError([cause, new GeometryCleanupError({
253
+ message: "Unreturned placement cleanup failed",
254
+ resourceKind: "SHAPE",
255
+ cause: cleanupCause
256
+ })], "Placement and output cleanup failed", { cause: cleanupCause });
257
+ }
258
+ throw cause;
229
259
  }
230
- if (hasAnyMetadata(shape)) propagateMetadataThroughRelocation(shape, moved);
231
- return moved;
232
260
  }
233
261
  /**
234
262
  * Clone a shape and apply a pre-composed transform in a single kernel operation.
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_cameraFns = require("./cameraFns-DkpgYZ_J.cjs");
2
+ const require_cameraFns = require("./cameraFns-C_aXHOXb.cjs");
3
3
  exports.PROJECTION_PLANES = require_cameraFns.PROJECTION_PLANES;
4
4
  exports.cameraFromPlane = require_cameraFns.cameraFromPlane;
5
5
  exports.cameraLookAt = require_cameraFns.cameraLookAt;
@@ -1,2 +1,2 @@
1
- import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, o as PROJECTION_PLANES, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-DouxkTGQ.js";
1
+ import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, o as PROJECTION_PLANES, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-C42m8_GN.js";
2
2
  export { PROJECTION_PLANES, cameraFromPlane, cameraLookAt, createCamera, isProjectionPlane, makeProjectedEdges, projectEdges };
package/dist/query.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_helpers = require("./helpers-Bh0KwQP6.cjs");
3
- const require_cornerFinder = require("./cornerFinder-DtTV5f1F.cjs");
2
+ const require_helpers = require("./helpers-HXscoErf.cjs");
3
+ const require_cornerFinder = require("./cornerFinder-BSHr_G27.cjs");
4
4
  exports.cornerFinder = require_cornerFinder.cornerFinder;
5
5
  exports.edgeFinder = require_helpers.edgeFinder;
6
6
  exports.faceFinder = require_helpers.faceFinder;
package/dist/query.js CHANGED
@@ -1,3 +1,3 @@
1
- import { n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-CLY1vBEh.js";
2
- import { t as cornerFinder } from "./cornerFinder-B-BXL0FS.js";
1
+ import { n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-m7uW_dyL.js";
2
+ import { t as cornerFinder } from "./cornerFinder-B5uO-_nX.js";
3
3
  export { cornerFinder, edgeFinder, faceFinder, getSingleFace };