brepjs 18.20.3 → 18.20.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 (103) hide show
  1. package/dist/2d.cjs +7 -7
  2. package/dist/2d.js +7 -7
  3. package/dist/{blueprint-Cy5veXS3.js → blueprint-0bBVK6Be.js} +11 -11
  4. package/dist/{blueprint-Bl0YQjkk.cjs → blueprint-B6vmOy5_.cjs} +11 -11
  5. package/dist/{blueprintFns-Dkccxo6d.cjs → blueprintFns-Aiise3pc.cjs} +3 -3
  6. package/dist/{blueprintFns-CSB51aXT.js → blueprintFns-BJbTjW94.js} +3 -3
  7. package/dist/{blueprintSketcher-DeEogKbs.js → blueprintSketcher-BkZrvGoG.js} +7 -7
  8. package/dist/{blueprintSketcher-Cr9A-R8I.cjs → blueprintSketcher-D_Z8NfOF.cjs} +7 -7
  9. package/dist/{boolean2D-BZ1UjpjX.cjs → boolean2D-1gc4kqNS.cjs} +7 -7
  10. package/dist/{boolean2D-lE2uy4Mm.js → boolean2D-BAJ3efk_.js} +7 -7
  11. package/dist/{booleanFns-CtvYfQZq.js → booleanFns-BsjoPJAS.js} +9 -9
  12. package/dist/{booleanFns-CD25YZGm.cjs → booleanFns-D3mYqZxL.cjs} +9 -9
  13. package/dist/brepjs.cjs +151 -101
  14. package/dist/brepjs.js +151 -101
  15. package/dist/{cameraFns-CR2inEBU.cjs → cameraFns-DgTBC2w3.cjs} +4 -4
  16. package/dist/{cameraFns-Dg1lQP0S.js → cameraFns-QK8ahyDz.js} +4 -4
  17. package/dist/core.cjs +6 -6
  18. package/dist/core.js +6 -6
  19. package/dist/{cornerFinder-tfWhcA2M.js → cornerFinder-BaSsAk69.js} +3 -3
  20. package/dist/{cornerFinder-CXN1IxPg.cjs → cornerFinder-CkLZ23Kp.cjs} +3 -3
  21. package/dist/csg/evaluate.d.ts +1 -1
  22. package/dist/{curveFns-BEF8t7XY.js → curveFns-BiSx9FTh.js} +2 -2
  23. package/dist/{curveFns-CcheHkr4.cjs → curveFns-CE3b2sDD.cjs} +2 -2
  24. package/dist/{drawFns-CuzUHFyD.cjs → drawFns-BaxDgrlX.cjs} +19 -19
  25. package/dist/{drawFns-CEjshioX.js → drawFns-BtHAHYa-.js} +19 -19
  26. package/dist/{errors-8GZS3vy9.js → errors-BJSTLaDI.js} +1 -1
  27. package/dist/{errors-BiY8-q1s.cjs → errors-DxoD7zgx.cjs} +1 -1
  28. package/dist/{extrudeFns-gcWJSK9T.js → extrudeFns-CRG478Q3.js} +3 -3
  29. package/dist/{extrudeFns-BwU4ng1V.cjs → extrudeFns-DUPpueiL.cjs} +3 -3
  30. package/dist/{faceFns-BNhFoEII.js → faceFns-C3C6l-X0.js} +4 -4
  31. package/dist/{faceFns-BbESdudy.cjs → faceFns-CLzDRrUE.cjs} +4 -4
  32. package/dist/{helpers-BU3ANziG.cjs → helpers-DwG3OFk0.cjs} +9 -9
  33. package/dist/{helpers-D1J5VHbk.js → helpers-rNVdiDLn.js} +9 -9
  34. package/dist/{historyFns-XZp1D_aA.js → historyFns-CEr9D6ay.js} +6 -6
  35. package/dist/{historyFns-DHOoBh6G.cjs → historyFns-DSCnjCkQ.cjs} +6 -6
  36. package/dist/{importFns-CsRJ9lbm.cjs → importFns-A8v4Pdw2.cjs} +5 -5
  37. package/dist/{importFns-D1oB3yU8.js → importFns-Hh3S9NPm.js} +5 -5
  38. package/dist/io.cjs +2 -2
  39. package/dist/io.js +2 -2
  40. package/dist/kernel/brepkit/sweepOps.d.ts +3 -1
  41. package/dist/kernel/occtWasm/occtWasmAdapter.cjs +1 -1
  42. package/dist/kernel/occtWasm/occtWasmAdapter.js +1 -1
  43. package/dist/{measureFns-C3y_WX_E.js → measureFns--uvW_r_P.js} +4 -4
  44. package/dist/{measureFns-BkoPw5JT.cjs → measureFns-DMyJp_x3.cjs} +4 -4
  45. package/dist/measurement.cjs +1 -1
  46. package/dist/measurement.js +1 -1
  47. package/dist/{meshFns-k0BdoBGR.js → meshFns-Bxt57KX1.js} +3 -3
  48. package/dist/{meshFns-CFMr9FBb.cjs → meshFns-DTn__aNb.cjs} +3 -3
  49. package/dist/{occtWasmAdapter-C2VW-uYg.cjs → occtWasmAdapter-BaidTDJk.cjs} +1 -1
  50. package/dist/{occtWasmAdapter--TZGP9DX.js → occtWasmAdapter-Dtp7Wu27.js} +1 -1
  51. package/dist/operations.cjs +2 -2
  52. package/dist/operations.js +2 -2
  53. package/dist/{planeOps-2EyPq0tU.cjs → planeOps-C6wxugvC.cjs} +4 -4
  54. package/dist/{planeOps-Bea3T3mc.js → planeOps-CblVcWbn.js} +4 -4
  55. package/dist/{primitiveFns-CkMua35m.cjs → primitiveFns-CX5c_YGt.cjs} +10 -10
  56. package/dist/{primitiveFns-BsO-feBX.js → primitiveFns-w1zNsxTH.js} +10 -10
  57. package/dist/projection.cjs +1 -1
  58. package/dist/projection.js +1 -1
  59. package/dist/query.cjs +2 -2
  60. package/dist/query.js +2 -2
  61. package/dist/result.cjs +1 -1
  62. package/dist/result.js +1 -1
  63. package/dist/{shapeFns-x8vqq2fR.js → shapeFns-Dsxp5d_u.js} +4 -4
  64. package/dist/{shapeFns-CHTLdb_n.cjs → shapeFns-cTuUm-aP.cjs} +4 -4
  65. package/dist/shapeRef.cjs +1 -1
  66. package/dist/shapeRef.js +1 -1
  67. package/dist/{shapeRefFns-CDRLEUik.cjs → shapeRefFns-SctbRFju.cjs} +8 -8
  68. package/dist/{shapeRefFns-CE0yS0EB.js → shapeRefFns-zFWzAmQZ.js} +8 -8
  69. package/dist/{shapeTypes-BpKhed-9.cjs → shapeTypes-C1FUZ2zE.cjs} +336 -288
  70. package/dist/{shapeTypes-DGtDTS9s.js → shapeTypes-DmHPJc_M.js} +336 -288
  71. package/dist/sketching.cjs +3 -3
  72. package/dist/sketching.js +3 -3
  73. package/dist/{solidBuilders-BlBaFSCS.cjs → solidBuilders-BGJvTrDt.cjs} +3 -3
  74. package/dist/{solidBuilders-Cot05qzs.js → solidBuilders-CJ8ckc61.js} +3 -3
  75. package/dist/{surfaceBuilders-frj7YRrD.cjs → surfaceBuilders-B7A2uoBJ.cjs} +3 -3
  76. package/dist/{surfaceBuilders-zJyikeav.js → surfaceBuilders-B_wXW8QS.js} +3 -3
  77. package/dist/text.cjs +2 -2
  78. package/dist/text.js +2 -2
  79. package/dist/{textBlueprints-CHh9SChA.cjs → textBlueprints-BCTQk9T8.cjs} +12 -12
  80. package/dist/{textBlueprints-Bv6zhEyn.js → textBlueprints-LYHgEdsx.js} +12 -12
  81. package/dist/{textMetrics-CKNdQX02.cjs → textMetrics-BNfyRNxm.cjs} +2 -2
  82. package/dist/{textMetrics-vUJTTEFi.js → textMetrics-Dd-Vva8S.js} +2 -2
  83. package/dist/topology.cjs +7 -7
  84. package/dist/topology.js +7 -7
  85. package/dist/{topologyQueryFns-CcWaCxeb.js → topologyQueryFns-CcHXn5M2.js} +2 -2
  86. package/dist/{topologyQueryFns-CHsPXNbI.cjs → topologyQueryFns-DCICDnwA.cjs} +2 -2
  87. package/dist/vectors.cjs +4 -4
  88. package/dist/vectors.js +4 -4
  89. package/dist/worker.cjs +1 -1
  90. package/dist/worker.js +1 -1
  91. package/package.json +5 -3
  92. /package/dist/{arrayAccess-C5IWcxs9.js → arrayAccess-DrUGPADn.js} +0 -0
  93. /package/dist/{arrayAccess-7pTWqkJu.cjs → arrayAccess-e4H9cBfh.cjs} +0 -0
  94. /package/dist/{constants-DTorLmes.cjs → constants-BOVyEYGH.cjs} +0 -0
  95. /package/dist/{constants-Ci5CA3aZ.js → constants-ITRzCnCp.js} +0 -0
  96. /package/dist/{types-BIdk_GJY.js → types-D24Y27N0.js} +0 -0
  97. /package/dist/{types-CDkxah-M.cjs → types-KjA8tY4Y.cjs} +0 -0
  98. /package/dist/{vec3-S4Oh59IX.cjs → vec3-CFwOI0ZI.cjs} +0 -0
  99. /package/dist/{vec3-BRj3eI54.js → vec3-Dpha8d5k.js} +0 -0
  100. /package/dist/{vecOps-D7xplSx8.cjs → vecOps-CCnJt-yH.cjs} +0 -0
  101. /package/dist/{vecOps-DVROrqTV.js → vecOps-SKPRvPH-.js} +0 -0
  102. /package/dist/{workerHandler-DaulgMax.js → workerHandler-CFetYgIm.js} +0 -0
  103. /package/dist/{workerHandler-C7seK7H-.cjs → workerHandler-CdlOTwJg.cjs} +0 -0
package/dist/brepjs.js CHANGED
@@ -1,36 +1,36 @@
1
- import { $ as init, A as planarWire, B as createKernelHandle, C as isOrientedFace, D as manifoldShell, E as isValidSolid, F as as3D, H as isLive, I as is2D, J as withScopeResultAsync, K as withScope, L as is3D, M as getShapeKind, O as orientedFace, P as as2D, R as DisposalScope, S as isManifoldShell, T as isPlanarWire, V as getDisposalStats, W as resetDisposalStats, X as getActiveKernelId, Y as _usingCtx, Z as getKernel, _ as isSolid, a as createEdge, at as supportsProjection, b as closedWire, c as createSolid, ct as resetPerformanceStats, d as isCompound, et as initFromOC, f as isEdge, g as isShell, h as isShape3D, i as createCompound, it as supportsConstraintSketch, j as validSolid, k as planarFace, l as createVertex, m as isShape1D, n as castShape3D, nt as registerKernel, o as createFace, ot as BrepkitAdapter, p as isFace, q as withScopeResult, rt as withKernel, s as createShell, st as getPerformanceStats, t as castShape, tt as prewarm, u as createWire, v as isVertex, w as isPlanarFace, x as isClosedWire, y as isWire, z as createHandle } from "./shapeTypes-DGtDTS9s.js";
2
- import { n as wasmIndex } from "./vec3-BRj3eI54.js";
3
- import { t as OcctWasmAdapter } from "./occtWasmAdapter--TZGP9DX.js";
4
- import { A as ok, B as unwrapOr, C as fromNullable, D as mapBoth, E as map, F as tapErr, H as zip, I as tryCatch, L as tryCatchAsync, M as orElse, N as pipeline, O as mapErr, P as tap, R as unwrap, S as flatten, T as isOk, V as unwrapOrElse, _ as all, a as moduleInitError, b as err, c as sketcherStateError, d as validationError, g as OK, h as bug, i as kernelError, j as or, k as match, l as typeCastError, m as BrepBugError, n as computationError, o as queryError, r as ioError, t as BrepErrorCode, u as unsupportedError, v as andThen, w as isErr, x as flatMap, y as collect, z as unwrapErr } from "./errors-8GZS3vy9.js";
5
- import { _ as kernelCall, a as getCachedSurfaceType, d as invalidateShapeCache, f as iterEdges, g as vertexPosition, h as iterWires, l as getVertices, m as iterVertices, n as getBounds, o as getEdges, p as iterFaces, s as getFaces, t as describe$1, u as getWires, v as kernelCallRaw, y as kernelCallScoped } from "./topologyQueryFns-CcWaCxeb.js";
6
- import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-Ci5CA3aZ.js";
7
- import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-BIdk_GJY.js";
8
- 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-DVROrqTV.js";
9
- import { i as pivotPlane, n as createPlane, o as resolvePlane, r as makePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-Bea3T3mc.js";
10
- import { _ as downcast, a as flipFaceOrientation, b as iterTopo, c as normalAt, d as projectPointOnFace, f as removeHolesFromFace, 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-BNhFoEII.js";
11
- import { C as findFacesByTag, D as tagFaces, E as setTagMetadata, O as getFaceOrigins, S as getShapeColor, T as getTagMetadata, a as isSameShape, b as colorShape, c as applyMatrix$1, d as resize, f as rotate$2, h as translate$2, i as isEqualShape, k as setShapeOrigin, l as composeTransforms, m as transformCopy$1, n as getHashCode, o as simplify$1, p as scale$2, r as isEmpty$2, s as toBREP$1, t as clone$1, u as mirror$2, w as getFaceTags, x as getFaceColor, y as colorFaces } from "./shapeFns-x8vqq2fR.js";
12
- 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-BEF8t7XY.js";
13
- import { a as meshEdges$1, c as createMeshCache, i as mesh$1, n as exportSTEP, o as meshMultiLOD, r as exportSTL, s as clearMeshCache, t as exportIGES } from "./meshFns-k0BdoBGR.js";
14
- import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-C5IWcxs9.js";
15
- import { _ as makeThreePointArc, d as makeCircle, h as makeLine, l as makeBSplineInterpolation, n as fill, r as makeFace, s as assembleWire } from "./surfaceBuilders-zJyikeav.js";
16
- import { a as fuseAll, c as sectionToFace$1, i as fuse$2, l as slice$1, n as cut$2, o as intersect$2, r as cutAll, s as section$1, t as booleanPipeline, u as split$1 } from "./booleanFns-CtvYfQZq.js";
17
- import { $ as fuseAllBisect, A as fixShape, B as offset$1, C as threePointArc, D as wireLoop, E as wire, F as isValid$1, G as chamferWithEvolution, H as thicken$1, I as solidFromShell, J as fuseWithEvolution, K as cutWithEvolution, L as chamfer$1, M as healFace, N as healSolid, O as autoHeal, P as healWire, Q as cutAllBisect, R as draft$1, S as tangentArc, T as vertex, U as variableFillet, V as shell$1, W as positionOnCurve, X as shellWithEvolution, Y as intersectWithEvolution, Z as checkBoolean, _ as polygon, a as circle, at as sharedEdges, b as sphere, c as cylinder, ct as chamferDistAngle, d as ellipsoid, dt as toLODGeometryData, et as getNurbsCurveData, f as face, ft as toLineGeometryData, g as offsetFace, h as line, i as bsplineApprox, it as facesOfEdge, j as heal$1, k as fixSelfIntersection, l as ellipse, lt as toBufferGeometryData, m as helix, n as bezier, nt as adjacentFaces, o as compound, ot as verticesOfEdge, p as filledFace, q as filletWithEvolution, r as box, rt as edgesOfFace, s as cone, st as wiresOfFace, t as addHoles, tt as getNurbsSurfaceData, u as ellipseArc, ut as toGroupedBufferGeometryData, v as sewShells, w as torus, x as subFace, y as solid, z as fillet$1 } from "./primitiveFns-BsO-feBX.js";
18
- import { C as walkAssembly, D as exportAssemblySTEP, E as linearPattern, O as createAssembly, S as updateNode, _ as collectShapes, a as findStep, b as findNode, c as registerOperation, d as replayHistory, f as serializeHistory, g as addChild, h as undoLast, i as deserializeHistory, l as registerShape, m as stepsFrom, n as createHistory, o as getShape, p as stepCount, r as createRegistry, s as modifyStep, t as addStep, u as replayFrom, v as countNodes, w as circularPattern, x as removeChild, y as createAssemblyNode } from "./historyFns-XZp1D_aA.js";
19
- import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-DeEogKbs.js";
20
- import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-D1J5VHbk.js";
21
- import { A as sketchEllipse, D as makeBaseBox, E as deserializeDrawing, F as sketchRectangle, I as sketchRoundedRectangle, L as FaceSketcher, M as sketchHelix, N as sketchParametricFunction, O as polysideInnerRadius, P as sketchPolysides, R as Sketcher, S as drawText, _ as drawPolysides, a as drawingIntersect, b as drawSingleCircle, c as rotateDrawing, d as drawFaceOutline, f as drawProjection, g as drawPointsInterpolation, h as drawParametricFunction, i as drawingFuse, j as sketchFaceOffset, k as sketchCircle, l as scaleDrawing, m as drawEllipse, n as drawingCut, o as drawingToSketchOnPlane, p as drawCircle, r as drawingFillet, s as mirrorDrawing, t as drawingChamfer, u as translateDrawing, v as drawRectangle, w as draw, x as drawSingleEllipse, y as drawRoundedRectangle } from "./drawFns-CEjshioX.js";
22
- import { r as makeCylinder } from "./solidBuilders-Cot05qzs.js";
23
- import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, i as measureCurvatureAtMid, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, r as measureCurvatureAt, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-C3y_WX_E.js";
24
- import { t as cornerFinder } from "./cornerFinder-tfWhcA2M.js";
25
- import { a as fuseBlueprints, c as roundedRectangleBlueprint, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-lE2uy4Mm.js";
26
- import { S as reverseCurve, _ as curve2dIsOnCurve, a as isInside2D, b as curve2dSplitAt, c as scale2D, d as stretch2D, f as toSVGPathD, g as curve2dFirstPoint, h as curve2dDistanceFrom, i as getOrientation2D, l as sketchOnFace2D, m as curve2dBoundingBox, n as createCompoundBlueprint, o as mirror2D, p as translate2D, r as getBounds2D, s as rotate2D, t as createBlueprint, u as sketchOnPlane2D, v as curve2dLastPoint, x as curve2dTangentAt, y as curve2dParameter } from "./blueprintFns-CSB51aXT.js";
27
- 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-D1oB3yU8.js";
28
- import { a as guidedSweep, c as sweep, i as complexExtrude, l as twistExtrude, n as extrudeAll, o as multiSectionSweep, r as revolve$1, s as supportExtrude, t as extrude$1 } from "./extrudeFns-gcWJSK9T.js";
29
- import { a as Sketch, b as loftAll, c as compoundSketchLoft, d as sketchFace, f as sketchLoft, h as sketchWires, i as Sketches, l as compoundSketchRevolve, m as sketchSweep, n as getFont, o as compoundSketchExtrude, p as sketchRevolve, r as loadFont, s as compoundSketchFace, t as textBlueprints, u as sketchExtrude, v as CompoundSketch, y as loft$1 } from "./textBlueprints-Bv6zhEyn.js";
30
- import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-Dg1lQP0S.js";
31
- import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-vUJTTEFi.js";
32
- import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-CE0yS0EB.js";
33
- import { a as createTaskQueue, c as isEmpty$1, 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-DaulgMax.js";
1
+ import { $ as init, A as planarWire, B as createKernelHandle, C as isOrientedFace, D as manifoldShell, E as isValidSolid, F as as3D, H as isLive, I as is2D, J as withScopeResultAsync, K as withScope, L as is3D, M as getShapeKind, O as orientedFace, P as as2D, R as DisposalScope, S as isManifoldShell, T as isPlanarWire, V as getDisposalStats, W as resetDisposalStats, X as getActiveKernelId, Y as _usingCtx, Z as getKernel, _ as isSolid, a as createEdge, at as supportsProjection, b as closedWire, c as createSolid, ct as resetPerformanceStats, d as isCompound, et as initFromOC, f as isEdge, g as isShell, h as isShape3D, i as createCompound, it as supportsConstraintSketch, j as validSolid, k as planarFace, l as createVertex, m as isShape1D, n as castShape3D, nt as registerKernel, o as createFace, ot as BrepkitAdapter, p as isFace, q as withScopeResult, rt as withKernel, s as createShell, st as getPerformanceStats, t as castShape, tt as prewarm, u as createWire, v as isVertex, w as isPlanarFace, x as isClosedWire, y as isWire, z as createHandle } from "./shapeTypes-DmHPJc_M.js";
2
+ import { n as wasmIndex } from "./vec3-Dpha8d5k.js";
3
+ import { t as OcctWasmAdapter } from "./occtWasmAdapter-Dtp7Wu27.js";
4
+ import { A as ok, B as unwrapOr, C as fromNullable, D as mapBoth, E as map, F as tapErr, H as zip, I as tryCatch, L as tryCatchAsync, M as orElse, N as pipeline, O as mapErr, P as tap, R as unwrap, S as flatten, T as isOk, V as unwrapOrElse, _ as all, a as moduleInitError, b as err, c as sketcherStateError, d as validationError, g as OK, h as bug, i as kernelError, j as or, k as match, l as typeCastError, m as BrepBugError, n as computationError, o as queryError, r as ioError, t as BrepErrorCode, u as unsupportedError, v as andThen, w as isErr, x as flatMap, y as collect, z as unwrapErr } from "./errors-BJSTLaDI.js";
5
+ import { _ as kernelCall, a as getCachedSurfaceType, d as invalidateShapeCache, f as iterEdges, g as vertexPosition, h as iterWires, l as getVertices, m as iterVertices, n as getBounds, o as getEdges, p as iterFaces, s as getFaces, t as describe$1, u as getWires, v as kernelCallRaw, y as kernelCallScoped } from "./topologyQueryFns-CcHXn5M2.js";
6
+ import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-ITRzCnCp.js";
7
+ import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-D24Y27N0.js";
8
+ 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";
9
+ import { i as pivotPlane, n as createPlane, o as resolvePlane, r as makePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-CblVcWbn.js";
10
+ import { _ as downcast, a as flipFaceOrientation, b as iterTopo, c as normalAt, d as projectPointOnFace, f as removeHolesFromFace, 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-C3C6l-X0.js";
11
+ import { C as findFacesByTag, D as tagFaces, E as setTagMetadata, O as getFaceOrigins, S as getShapeColor, T as getTagMetadata, a as isSameShape, b as colorShape, c as applyMatrix$1, d as resize, f as rotate$2, h as translate$2, i as isEqualShape, k as setShapeOrigin, l as composeTransforms, m as transformCopy$1, n as getHashCode, o as simplify$1, p as scale$2, r as isEmpty$2, s as toBREP$1, t as clone$1, u as mirror$2, w as getFaceTags, x as getFaceColor, y as colorFaces } from "./shapeFns-Dsxp5d_u.js";
12
+ 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-BiSx9FTh.js";
13
+ import { a as meshEdges$1, c as createMeshCache, i as mesh$1, n as exportSTEP, o as meshMultiLOD, r as exportSTL, s as clearMeshCache, t as exportIGES } from "./meshFns-Bxt57KX1.js";
14
+ import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
15
+ import { _ as makeThreePointArc, d as makeCircle, h as makeLine, l as makeBSplineInterpolation, n as fill, r as makeFace, s as assembleWire } from "./surfaceBuilders-B_wXW8QS.js";
16
+ import { a as fuseAll, c as sectionToFace$1, i as fuse$2, l as slice$1, n as cut$2, o as intersect$2, r as cutAll, s as section$1, t as booleanPipeline, u as split$1 } from "./booleanFns-BsjoPJAS.js";
17
+ import { $ as fuseAllBisect, A as fixShape, B as offset$1, C as threePointArc, D as wireLoop, E as wire, F as isValid$1, G as chamferWithEvolution, H as thicken$1, I as solidFromShell, J as fuseWithEvolution, K as cutWithEvolution, L as chamfer$1, M as healFace, N as healSolid, O as autoHeal, P as healWire, Q as cutAllBisect, R as draft$1, S as tangentArc, T as vertex, U as variableFillet, V as shell$1, W as positionOnCurve, X as shellWithEvolution, Y as intersectWithEvolution, Z as checkBoolean, _ as polygon, a as circle, at as sharedEdges, b as sphere, c as cylinder, ct as chamferDistAngle, d as ellipsoid, dt as toLODGeometryData, et as getNurbsCurveData, f as face, ft as toLineGeometryData, g as offsetFace, h as line, i as bsplineApprox, it as facesOfEdge, j as heal$1, k as fixSelfIntersection, l as ellipse, lt as toBufferGeometryData, m as helix, n as bezier, nt as adjacentFaces, o as compound, ot as verticesOfEdge, p as filledFace, q as filletWithEvolution, r as box, rt as edgesOfFace, s as cone, st as wiresOfFace, t as addHoles, tt as getNurbsSurfaceData, u as ellipseArc, ut as toGroupedBufferGeometryData, v as sewShells, w as torus, x as subFace, y as solid, z as fillet$1 } from "./primitiveFns-w1zNsxTH.js";
18
+ import { C as walkAssembly, D as exportAssemblySTEP, E as linearPattern, O as createAssembly, S as updateNode, _ as collectShapes, a as findStep, b as findNode, c as registerOperation, d as replayHistory, f as serializeHistory, g as addChild, h as undoLast, i as deserializeHistory, l as registerShape, m as stepsFrom, n as createHistory, o as getShape, p as stepCount, r as createRegistry, s as modifyStep, t as addStep, u as replayFrom, v as countNodes, w as circularPattern, x as removeChild, y as createAssemblyNode } from "./historyFns-CEr9D6ay.js";
19
+ import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-BkZrvGoG.js";
20
+ import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-rNVdiDLn.js";
21
+ import { A as sketchEllipse, D as makeBaseBox, E as deserializeDrawing, F as sketchRectangle, I as sketchRoundedRectangle, L as FaceSketcher, M as sketchHelix, N as sketchParametricFunction, O as polysideInnerRadius, P as sketchPolysides, R as Sketcher, S as drawText, _ as drawPolysides, a as drawingIntersect, b as drawSingleCircle, c as rotateDrawing, d as drawFaceOutline, f as drawProjection, g as drawPointsInterpolation, h as drawParametricFunction, i as drawingFuse, j as sketchFaceOffset, k as sketchCircle, l as scaleDrawing, m as drawEllipse, n as drawingCut, o as drawingToSketchOnPlane, p as drawCircle, r as drawingFillet, s as mirrorDrawing, t as drawingChamfer, u as translateDrawing, v as drawRectangle, w as draw, x as drawSingleEllipse, y as drawRoundedRectangle } from "./drawFns-BtHAHYa-.js";
22
+ import { r as makeCylinder } from "./solidBuilders-CJ8ckc61.js";
23
+ import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, i as measureCurvatureAtMid, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, r as measureCurvatureAt, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns--uvW_r_P.js";
24
+ import { t as cornerFinder } from "./cornerFinder-BaSsAk69.js";
25
+ import { a as fuseBlueprints, c as roundedRectangleBlueprint, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-BAJ3efk_.js";
26
+ import { S as reverseCurve, _ as curve2dIsOnCurve, a as isInside2D, b as curve2dSplitAt, c as scale2D, d as stretch2D, f as toSVGPathD, g as curve2dFirstPoint, h as curve2dDistanceFrom, i as getOrientation2D, l as sketchOnFace2D, m as curve2dBoundingBox, n as createCompoundBlueprint, o as mirror2D, p as translate2D, r as getBounds2D, s as rotate2D, t as createBlueprint, u as sketchOnPlane2D, v as curve2dLastPoint, x as curve2dTangentAt, y as curve2dParameter } from "./blueprintFns-BJbTjW94.js";
27
+ 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-Hh3S9NPm.js";
28
+ import { a as guidedSweep, c as sweep, i as complexExtrude, l as twistExtrude, n as extrudeAll, o as multiSectionSweep, r as revolve$1, s as supportExtrude, t as extrude$1 } from "./extrudeFns-CRG478Q3.js";
29
+ import { a as Sketch, b as loftAll, c as compoundSketchLoft, d as sketchFace, f as sketchLoft, h as sketchWires, i as Sketches, l as compoundSketchRevolve, m as sketchSweep, n as getFont, o as compoundSketchExtrude, p as sketchRevolve, r as loadFont, s as compoundSketchFace, t as textBlueprints, u as sketchExtrude, v as CompoundSketch, y as loft$1 } from "./textBlueprints-LYHgEdsx.js";
30
+ import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-QK8ahyDz.js";
31
+ import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-Dd-Vva8S.js";
32
+ import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-zFWzAmQZ.js";
33
+ import { a as createTaskQueue, c as isEmpty$1, 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-CFetYgIm.js";
34
34
  //#region \0rolldown/runtime.js
35
35
  var __defProp = Object.defineProperty;
36
36
  var __exportAll = (all, no_symbols) => {
@@ -612,7 +612,7 @@ function bisector(poly, i) {
612
612
  /** Is a LAV node reflex based on current LAV positions? */
613
613
  function isLavNodeReflex(node) {
614
614
  if (!node.prev || !node.next) return false;
615
- return cross2(node.x - node.prev.x, node.y - node.prev.y, node.next.x - node.x, node.next.y - node.y) < -EPS;
615
+ return cross2(node.x - node.prev.x, node.y - node.prev.y, node.next.x - node.x, node.next.y - node.y) < -1e-10;
616
616
  }
617
617
  function createLav(poly) {
618
618
  const nodes = poly.map((p, i) => {
@@ -1282,6 +1282,59 @@ function extractPair(a, b) {
1282
1282
  }
1283
1283
  });
1284
1284
  }
1285
+ /** Convert a single mate into a solver constraint. */
1286
+ function mateToSolverConstraint(mate) {
1287
+ switch (mate.type) {
1288
+ case "fixed": return ok({
1289
+ type: "fixed",
1290
+ entityA: {
1291
+ node: mate.entity.node,
1292
+ entity: {
1293
+ type: "point",
1294
+ origin: [
1295
+ 0,
1296
+ 0,
1297
+ 0
1298
+ ]
1299
+ }
1300
+ }
1301
+ });
1302
+ case "coincident": {
1303
+ const pair = extractPair(mate.entityA, mate.entityB);
1304
+ if (!pair.ok) return pair;
1305
+ return ok({
1306
+ type: "coincident",
1307
+ ...pair.value
1308
+ });
1309
+ }
1310
+ case "distance": {
1311
+ const pair = extractPair(mate.entityA, mate.entityB);
1312
+ if (!pair.ok) return pair;
1313
+ return ok({
1314
+ type: "distance",
1315
+ ...pair.value,
1316
+ value: mate.distance
1317
+ });
1318
+ }
1319
+ case "angle": {
1320
+ const pair = extractPair(mate.entityA, mate.entityB);
1321
+ if (!pair.ok) return pair;
1322
+ return ok({
1323
+ type: "angle",
1324
+ ...pair.value,
1325
+ value: mate.angle
1326
+ });
1327
+ }
1328
+ case "concentric": {
1329
+ const pair = extractPair(mate.axisA, mate.axisB);
1330
+ if (!pair.ok) return pair;
1331
+ return ok({
1332
+ type: "concentric",
1333
+ ...pair.value
1334
+ });
1335
+ }
1336
+ }
1337
+ }
1285
1338
  /**
1286
1339
  * Add a mate constraint to an assembly.
1287
1340
  * Returns a new assembly node with the constraint added.
@@ -1306,54 +1359,9 @@ function solveAssembly(assembly) {
1306
1359
  });
1307
1360
  const solverConstraints = [];
1308
1361
  for (const mate of mates) {
1309
- if (mate.type === "fixed") {
1310
- solverConstraints.push({
1311
- type: "fixed",
1312
- entityA: {
1313
- node: mate.entity.node,
1314
- entity: {
1315
- type: "point",
1316
- origin: [
1317
- 0,
1318
- 0,
1319
- 0
1320
- ]
1321
- }
1322
- }
1323
- });
1324
- continue;
1325
- }
1326
- if (mate.type === "coincident") {
1327
- const pair = extractPair(mate.entityA, mate.entityB);
1328
- if (!pair.ok) return pair;
1329
- solverConstraints.push({
1330
- type: "coincident",
1331
- ...pair.value
1332
- });
1333
- } else if (mate.type === "distance") {
1334
- const pair = extractPair(mate.entityA, mate.entityB);
1335
- if (!pair.ok) return pair;
1336
- solverConstraints.push({
1337
- type: "distance",
1338
- ...pair.value,
1339
- value: mate.distance
1340
- });
1341
- } else if (mate.type === "angle") {
1342
- const pair = extractPair(mate.entityA, mate.entityB);
1343
- if (!pair.ok) return pair;
1344
- solverConstraints.push({
1345
- type: "angle",
1346
- ...pair.value,
1347
- value: mate.angle
1348
- });
1349
- } else {
1350
- const pair = extractPair(mate.axisA, mate.axisB);
1351
- if (!pair.ok) return pair;
1352
- solverConstraints.push({
1353
- type: "concentric",
1354
- ...pair.value
1355
- });
1356
- }
1362
+ const result = mateToSolverConstraint(mate);
1363
+ if (!result.ok) return result;
1364
+ solverConstraints.push(result.value);
1357
1365
  }
1358
1366
  const result = solveConstraints(nodes, solverConstraints);
1359
1367
  if (!result.converged) {
@@ -2475,6 +2483,18 @@ function asOrientedPlanarFace(f) {
2475
2483
  function asClosedWire(w) {
2476
2484
  return w;
2477
2485
  }
2486
+ /**
2487
+ * Trust-cast the result of a Shape3D-returning operation back to the wrapper's
2488
+ * generic `T`. The fluent API contract claims chained operations preserve the
2489
+ * input shape type T; runtime semantics enforce this (e.g. fillet on a Solid
2490
+ * returns a Solid), but TypeScript can't prove it because the underlying
2491
+ * functional operations return `Shape3D`.
2492
+ *
2493
+ * Centralizing the cast in one helper keeps the unchecked bridge auditable.
2494
+ */
2495
+ function trustAsT(s) {
2496
+ return s;
2497
+ }
2478
2498
  function createWrappedBase(val) {
2479
2499
  return {
2480
2500
  val,
@@ -2529,9 +2549,8 @@ function createWrappedBase(val) {
2529
2549
  done: () => val
2530
2550
  };
2531
2551
  }
2532
- function createWrapped3D(val) {
2552
+ function create3DBooleans(val) {
2533
2553
  return {
2534
- ...createWrappedBase(val),
2535
2554
  fuse: (tool, opts) => wrap3D(unwrapOrThrow(fuse(val, resolve(tool), {
2536
2555
  ...opts,
2537
2556
  unsafe: true
@@ -2544,43 +2563,74 @@ function createWrapped3D(val) {
2544
2563
  ...opts,
2545
2564
  unsafe: true
2546
2565
  }))),
2547
- fuseAll: (tools, opts) => wrap3D(unwrapOrThrow(fuseAll([val, ...tools.map(resolve)], {
2566
+ fuseAll: (tools, opts) => wrap3D(trustAsT(unwrapOrThrow(fuseAll([val, ...tools.map(resolve)], {
2548
2567
  ...opts,
2549
2568
  unsafe: true
2550
- }))),
2551
- cutAll: (tools, opts) => wrap3D(unwrapOrThrow(cutAll(val, tools, {
2569
+ })))),
2570
+ cutAll: (tools, opts) => wrap3D(trustAsT(unwrapOrThrow(cutAll(val, tools, {
2552
2571
  ...opts,
2553
2572
  unsafe: true
2554
- }))),
2573
+ })))),
2555
2574
  section: (plane, opts) => wrapAny(unwrapOrThrow(section(val, plane, opts))),
2556
2575
  split: (tools) => wrapAny(unwrapOrThrow(split(val, tools))),
2557
- slice: (planes, opts) => unwrapOrThrow(slice(val, planes, opts)),
2576
+ slice: (planes, opts) => unwrapOrThrow(slice(val, planes, opts))
2577
+ };
2578
+ }
2579
+ function create3DModifiers(val) {
2580
+ return {
2558
2581
  fillet(...args) {
2559
- if (args.length === 1) return wrap3D(unwrapOrThrow(fillet(asValidSolid(val), args[0])));
2560
- return wrap3D(unwrapOrThrow(fillet(asValidSolid(val), args[0], args[1])));
2582
+ if (args.length === 1) return wrap3D(trustAsT(unwrapOrThrow(fillet(asValidSolid(val), args[0]))));
2583
+ return wrap3D(trustAsT(unwrapOrThrow(fillet(asValidSolid(val), args[0], args[1]))));
2561
2584
  },
2562
2585
  chamfer(...args) {
2563
- if (args.length === 1) return wrap3D(unwrapOrThrow(chamfer(asValidSolid(val), args[0])));
2564
- return wrap3D(unwrapOrThrow(chamfer(asValidSolid(val), args[0], args[1])));
2586
+ if (args.length === 1) return wrap3D(trustAsT(unwrapOrThrow(chamfer(asValidSolid(val), args[0]))));
2587
+ return wrap3D(trustAsT(unwrapOrThrow(chamfer(asValidSolid(val), args[0], args[1]))));
2565
2588
  },
2566
- shell: (faces, thickness, opts) => wrap3D(unwrapOrThrow(shell(asValidSolid(val), faces, thickness, opts))),
2567
- offset: (distance, opts) => wrap3D(unwrapOrThrow(offset(asValidSolid(val), distance, opts))),
2568
- draft: (faces, opts) => wrap3D(unwrapOrThrow(draft(asValidSolid(val), faces, opts))),
2589
+ shell: (faces, thickness, opts) => wrap3D(trustAsT(unwrapOrThrow(shell(asValidSolid(val), faces, thickness, opts)))),
2590
+ offset: (distance, opts) => wrap3D(trustAsT(unwrapOrThrow(offset(asValidSolid(val), distance, opts)))),
2591
+ draft: (faces, opts) => wrap3D(trustAsT(unwrapOrThrow(draft(asValidSolid(val), faces, opts))))
2592
+ };
2593
+ }
2594
+ function create3DCompoundOps(val) {
2595
+ return {
2569
2596
  drill: (opts) => wrap3D(unwrapOrThrow(drill(val, opts))),
2570
2597
  pocket: (opts) => wrap3D(unwrapOrThrow(pocket(val, opts))),
2571
2598
  boss: (opts) => wrap3D(unwrapOrThrow(boss(val, opts))),
2572
2599
  mirrorJoin: (opts) => wrap3D(unwrapOrThrow(mirrorJoin(val, opts))),
2573
- rectangularPattern: (opts) => wrap3D(unwrapOrThrow(rectangularPattern(val, opts))),
2600
+ rectangularPattern: (opts) => wrap3D(unwrapOrThrow(rectangularPattern(val, opts)))
2601
+ };
2602
+ }
2603
+ function create3DMeasurement(val) {
2604
+ return {
2574
2605
  volume: () => unwrapOrThrow(measureVolume(val)),
2575
2606
  area: () => unwrapOrThrow(measureArea(val)),
2576
2607
  volumeProps: () => unwrapOrThrow(measureVolumeProps(val)),
2577
- surfaceProps: () => unwrapOrThrow(measureSurfaceProps(val)),
2608
+ surfaceProps: () => unwrapOrThrow(measureSurfaceProps(val))
2609
+ };
2610
+ }
2611
+ function create3DQueries(val) {
2612
+ return {
2578
2613
  edges: () => getEdges(val),
2579
2614
  faces: () => getFaces(val),
2580
2615
  wires: () => getWires(val),
2581
- vertices: () => getVertices(val),
2582
- linearPattern: (dir, count, spacing) => wrap3D(unwrapOrThrow(linearPattern(val, dir, count, spacing))),
2583
- circularPattern: (axis, count, angle) => wrap3D(unwrapOrThrow(circularPattern(val, axis, count, angle)))
2616
+ vertices: () => getVertices(val)
2617
+ };
2618
+ }
2619
+ function create3DPatterns(val) {
2620
+ return {
2621
+ linearPattern: (dir, count, spacing) => wrap3D(trustAsT(unwrapOrThrow(linearPattern(val, dir, count, spacing)))),
2622
+ circularPattern: (axis, count, angle) => wrap3D(trustAsT(unwrapOrThrow(circularPattern(val, axis, count, angle))))
2623
+ };
2624
+ }
2625
+ function createWrapped3D(val) {
2626
+ return {
2627
+ ...createWrappedBase(val),
2628
+ ...create3DBooleans(val),
2629
+ ...create3DModifiers(val),
2630
+ ...create3DCompoundOps(val),
2631
+ ...create3DMeasurement(val),
2632
+ ...create3DQueries(val),
2633
+ ...create3DPatterns(val)
2584
2634
  };
2585
2635
  }
2586
2636
  function createWrappedCurve(val) {
@@ -1,7 +1,7 @@
1
- const require_shapeTypes = require("./shapeTypes-BpKhed-9.cjs");
2
- const require_errors = require("./errors-BiY8-q1s.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-CHsPXNbI.cjs");
4
- const require_vecOps = require("./vecOps-D7xplSx8.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-C1FUZ2zE.cjs");
2
+ const require_errors = require("./errors-DxoD7zgx.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-DCICDnwA.cjs");
4
+ const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
5
5
  //#region src/projection/projectionPlanes.ts
6
6
  /** Lookup table mapping each {@link ProjectionPlane} to its camera configuration. */
7
7
  var PROJECTION_PLANES = {
@@ -1,7 +1,7 @@
1
- import { Z as getKernel, t as castShape } from "./shapeTypes-DGtDTS9s.js";
2
- import { A as ok, b as err, d as validationError } from "./errors-8GZS3vy9.js";
3
- import { o as getEdges } from "./topologyQueryFns-CcWaCxeb.js";
4
- import { c as vecLength, d as vecNormalize, g as vecSub, r as vecCross } from "./vecOps-DVROrqTV.js";
1
+ import { Z as getKernel, t as castShape } from "./shapeTypes-DmHPJc_M.js";
2
+ import { A as ok, b as err, d as validationError } from "./errors-BJSTLaDI.js";
3
+ import { o as getEdges } from "./topologyQueryFns-CcHXn5M2.js";
4
+ import { c as vecLength, d as vecNormalize, g as vecSub, r as vecCross } from "./vecOps-SKPRvPH-.js";
5
5
  //#region src/projection/projectionPlanes.ts
6
6
  /** Lookup table mapping each {@link ProjectionPlane} to its camera configuration. */
7
7
  var PROJECTION_PLANES = {
package/dist/core.cjs CHANGED
@@ -1,10 +1,10 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_shapeTypes = require("./shapeTypes-BpKhed-9.cjs");
3
- const require_errors = require("./errors-BiY8-q1s.cjs");
4
- const require_constants = require("./constants-DTorLmes.cjs");
5
- const require_types = require("./types-CDkxah-M.cjs");
6
- const require_vecOps = require("./vecOps-D7xplSx8.cjs");
7
- const require_planeOps = require("./planeOps-2EyPq0tU.cjs");
2
+ const require_shapeTypes = require("./shapeTypes-C1FUZ2zE.cjs");
3
+ const require_errors = require("./errors-DxoD7zgx.cjs");
4
+ const require_constants = require("./constants-BOVyEYGH.cjs");
5
+ const require_types = require("./types-KjA8tY4Y.cjs");
6
+ const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
7
+ const require_planeOps = require("./planeOps-C6wxugvC.cjs");
8
8
  exports.BrepBugError = require_errors.BrepBugError;
9
9
  exports.DEG2RAD = require_constants.DEG2RAD;
10
10
  exports.DisposalScope = require_shapeTypes.DisposalScope;
package/dist/core.js CHANGED
@@ -1,7 +1,7 @@
1
- import { B as createKernelHandle, C as isOrientedFace, D as manifoldShell, E as isValidSolid, H as isLive, I as is2D, J as withScopeResultAsync, K as withScope, L as is3D, M as getShapeKind, O as orientedFace, R as DisposalScope, S as isManifoldShell, _ as isSolid, b as closedWire, d as isCompound, f as isEdge, g as isShell, h as isShape3D, j as validSolid, m as isShape1D, p as isFace, q as withScopeResult, t as castShape, v as isVertex, x as isClosedWire, y as isWire, z as createHandle } from "./shapeTypes-DGtDTS9s.js";
2
- import { A as ok, B as unwrapOr, E as map, I as tryCatch, L as tryCatchAsync, O as mapErr, R as unwrap, T as isOk, V as unwrapOrElse, a as moduleInitError, b as err, c as sketcherStateError, d as validationError, g as OK, h as bug, i as kernelError, k as match, l as typeCastError, m as BrepBugError, n as computationError, o as queryError, r as ioError, u as unsupportedError, v as andThen, w as isErr, x as flatMap, y as collect, z as unwrapErr } from "./errors-8GZS3vy9.js";
3
- import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-Ci5CA3aZ.js";
4
- import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-BIdk_GJY.js";
5
- 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-DVROrqTV.js";
6
- import { i as pivotPlane, n as createPlane, o as resolvePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-Bea3T3mc.js";
1
+ import { B as createKernelHandle, C as isOrientedFace, D as manifoldShell, E as isValidSolid, H as isLive, I as is2D, J as withScopeResultAsync, K as withScope, L as is3D, M as getShapeKind, O as orientedFace, R as DisposalScope, S as isManifoldShell, _ as isSolid, b as closedWire, d as isCompound, f as isEdge, g as isShell, h as isShape3D, j as validSolid, m as isShape1D, p as isFace, q as withScopeResult, t as castShape, v as isVertex, x as isClosedWire, y as isWire, z as createHandle } from "./shapeTypes-DmHPJc_M.js";
2
+ import { A as ok, B as unwrapOr, E as map, I as tryCatch, L as tryCatchAsync, O as mapErr, R as unwrap, T as isOk, V as unwrapOrElse, a as moduleInitError, b as err, c as sketcherStateError, d as validationError, g as OK, h as bug, i as kernelError, k as match, l as typeCastError, m as BrepBugError, n as computationError, o as queryError, r as ioError, u as unsupportedError, v as andThen, w as isErr, x as flatMap, y as collect, z as unwrapErr } from "./errors-BJSTLaDI.js";
3
+ import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-ITRzCnCp.js";
4
+ import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-D24Y27N0.js";
5
+ 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";
6
+ import { i as pivotPlane, n as createPlane, o as resolvePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-CblVcWbn.js";
7
7
  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 };
@@ -1,6 +1,6 @@
1
- import { t as DEG2RAD } from "./constants-Ci5CA3aZ.js";
2
- import { n as getAtOrThrow } from "./arrayAccess-C5IWcxs9.js";
3
- import { _ as samePoint, p as distance2d, u as angle2d } from "./helpers-D1J5VHbk.js";
1
+ import { t as DEG2RAD } from "./constants-ITRzCnCp.js";
2
+ import { n as getAtOrThrow } from "./arrayAccess-DrUGPADn.js";
3
+ import { _ as samePoint, p as distance2d, u as angle2d } from "./helpers-rNVdiDLn.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
- const require_constants = require("./constants-DTorLmes.cjs");
2
- const require_arrayAccess = require("./arrayAccess-7pTWqkJu.cjs");
3
- const require_helpers = require("./helpers-BU3ANziG.cjs");
1
+ const require_constants = require("./constants-BOVyEYGH.cjs");
2
+ const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
3
+ const require_helpers = require("./helpers-DwG3OFk0.cjs");
4
4
  //#region src/query/cornerFinder.ts
5
5
  var PI_2 = 2 * Math.PI;
6
6
  function positiveHalfAngle(angle) {
@@ -7,7 +7,7 @@ export interface EvaluatorOptions {
7
7
  readonly kernel?: string | undefined;
8
8
  /** Default boolean tolerance applied when a node doesn't override it. */
9
9
  readonly tolerance?: number | undefined;
10
- /** Optional callback fired after each node is materialized (cache hits not reported). */
10
+ /** Optional callback fired after every node visit, including cache hits (`info.cacheHit` discriminates). */
11
11
  readonly onStep?: ((info: StepInfo) => void) | undefined;
12
12
  }
13
13
  export interface StepInfo {
@@ -1,5 +1,5 @@
1
- import { Z as getKernel, f as isEdge, t as castShape, y as isWire } from "./shapeTypes-DGtDTS9s.js";
2
- import { A as ok, b as err, l as typeCastError } from "./errors-8GZS3vy9.js";
1
+ import { Z as getKernel, f as isEdge, t as castShape, y as isWire } from "./shapeTypes-DmHPJc_M.js";
2
+ import { A as ok, b as err, l as typeCastError } from "./errors-BJSTLaDI.js";
3
3
  //#region src/topology/curveFns.ts
4
4
  /**
5
5
  * Curve and 1D shape functions — functional replacements for _1DShape/Curve methods.
@@ -1,5 +1,5 @@
1
- const require_shapeTypes = require("./shapeTypes-BpKhed-9.cjs");
2
- const require_errors = require("./errors-BiY8-q1s.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-C1FUZ2zE.cjs");
2
+ const require_errors = require("./errors-DxoD7zgx.cjs");
3
3
  //#region src/topology/curveFns.ts
4
4
  /**
5
5
  * Curve and 1D shape functions — functional replacements for _1DShape/Curve methods.
@@ -1,22 +1,22 @@
1
- const require_textBlueprints = require("./textBlueprints-CHh9SChA.cjs");
2
- const require_shapeTypes = require("./shapeTypes-BpKhed-9.cjs");
3
- const require_vec3 = require("./vec3-S4Oh59IX.cjs");
4
- const require_errors = require("./errors-BiY8-q1s.cjs");
5
- const require_topologyQueryFns = require("./topologyQueryFns-CHsPXNbI.cjs");
6
- const require_constants = require("./constants-DTorLmes.cjs");
7
- const require_types = require("./types-CDkxah-M.cjs");
8
- const require_vecOps = require("./vecOps-D7xplSx8.cjs");
9
- const require_planeOps = require("./planeOps-2EyPq0tU.cjs");
10
- const require_faceFns = require("./faceFns-BbESdudy.cjs");
11
- const require_curveFns = require("./curveFns-CcheHkr4.cjs");
12
- const require_arrayAccess = require("./arrayAccess-7pTWqkJu.cjs");
13
- const require_surfaceBuilders = require("./surfaceBuilders-frj7YRrD.cjs");
14
- const require_blueprintSketcher = require("./blueprintSketcher-Cr9A-R8I.cjs");
15
- const require_helpers = require("./helpers-BU3ANziG.cjs");
16
- const require_blueprint = require("./blueprint-Bl0YQjkk.cjs");
17
- const require_cornerFinder = require("./cornerFinder-CXN1IxPg.cjs");
18
- const require_boolean2D = require("./boolean2D-BZ1UjpjX.cjs");
19
- const require_cameraFns = require("./cameraFns-CR2inEBU.cjs");
1
+ const require_textBlueprints = require("./textBlueprints-BCTQk9T8.cjs");
2
+ const require_shapeTypes = require("./shapeTypes-C1FUZ2zE.cjs");
3
+ const require_vec3 = require("./vec3-CFwOI0ZI.cjs");
4
+ const require_errors = require("./errors-DxoD7zgx.cjs");
5
+ const require_topologyQueryFns = require("./topologyQueryFns-DCICDnwA.cjs");
6
+ const require_constants = require("./constants-BOVyEYGH.cjs");
7
+ const require_types = require("./types-KjA8tY4Y.cjs");
8
+ const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
9
+ const require_planeOps = require("./planeOps-C6wxugvC.cjs");
10
+ const require_faceFns = require("./faceFns-CLzDRrUE.cjs");
11
+ const require_curveFns = require("./curveFns-CE3b2sDD.cjs");
12
+ const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
13
+ const require_surfaceBuilders = require("./surfaceBuilders-B7A2uoBJ.cjs");
14
+ const require_blueprintSketcher = require("./blueprintSketcher-D_Z8NfOF.cjs");
15
+ const require_helpers = require("./helpers-DwG3OFk0.cjs");
16
+ const require_blueprint = require("./blueprint-B6vmOy5_.cjs");
17
+ const require_cornerFinder = require("./cornerFinder-CkLZ23Kp.cjs");
18
+ const require_boolean2D = require("./boolean2D-1gc4kqNS.cjs");
19
+ const require_cameraFns = require("./cameraFns-DgTBC2w3.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 { R as DisposalScope, Y as _usingCtx, Z as getKernel, a as createEdge, o as createFace, u as createWire } from "./shapeTypes-DGtDTS9s.js";
2
- import { n as wasmIndex } from "./vec3-BRj3eI54.js";
3
- import { R as unwrap, h as bug, s as safeIndex } from "./errors-8GZS3vy9.js";
4
- import { o as getEdges } from "./topologyQueryFns-CcWaCxeb.js";
5
- import { t as DEG2RAD } from "./constants-Ci5CA3aZ.js";
6
- import { r as toVec3 } from "./types-BIdk_GJY.js";
7
- import { d as vecNormalize, g as vecSub, h as vecScale, m as vecRotate, r as vecCross } from "./vecOps-DVROrqTV.js";
8
- import { a as planeToWorld, o as resolvePlane } from "./planeOps-Bea3T3mc.js";
9
- import { _ as downcast, c as normalAt, l as outerWire, n as faceCenter, p as uvBounds, u as pointOnSurface } from "./faceFns-BNhFoEII.js";
10
- import { c as curveStartPoint, m as offsetWire2D, r as curveIsClosed } from "./curveFns-BEF8t7XY.js";
11
- import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-C5IWcxs9.js";
12
- import { c as makeBSplineApproximation, d as makeCircle, f as makeEllipse, m as makeHelix, r as makeFace, s as assembleWire } from "./surfaceBuilders-zJyikeav.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-DeEogKbs.js";
14
- import { _ as samePoint$1, b as subtract2d, c as PRECISION_OFFSET, l as add2d, y as squareDistance2d } from "./helpers-D1J5VHbk.js";
15
- import { _ as Curve2D, a as edgeToCurve, c as make2dCircle, d as make2dInerpolatedBSplineCurve, f as make2dSegmentCurve, g as approximateAsSvgCompatibleCurve, i as curvesAsEdgesOnPlane, l as make2dEllipse, o as make2dArcFromCenter, t as Blueprint, v as deserializeCurve2D, y as BoundingBox2d } from "./blueprint-Cy5veXS3.js";
16
- import { t as cornerFinder } from "./cornerFinder-tfWhcA2M.js";
17
- import { c as roundedRectangleBlueprint, n as fuse2D, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-lE2uy4Mm.js";
18
- import { _ as wrapSketchDataArray, a as Sketch, g as wrapSketchData, i as Sketches, t as textBlueprints } from "./textBlueprints-Bv6zhEyn.js";
19
- import { i as projectEdges, t as cameraFromPlane } from "./cameraFns-Dg1lQP0S.js";
1
+ import { R as DisposalScope, Y as _usingCtx, Z as getKernel, a as createEdge, o as createFace, u as createWire } from "./shapeTypes-DmHPJc_M.js";
2
+ import { n as wasmIndex } from "./vec3-Dpha8d5k.js";
3
+ import { R as unwrap, h as bug, s as safeIndex } from "./errors-BJSTLaDI.js";
4
+ import { o as getEdges } from "./topologyQueryFns-CcHXn5M2.js";
5
+ import { t as DEG2RAD } from "./constants-ITRzCnCp.js";
6
+ import { r as toVec3 } from "./types-D24Y27N0.js";
7
+ import { d as vecNormalize, g as vecSub, h as vecScale, m as vecRotate, r as vecCross } from "./vecOps-SKPRvPH-.js";
8
+ import { a as planeToWorld, o as resolvePlane } from "./planeOps-CblVcWbn.js";
9
+ import { _ as downcast, c as normalAt, l as outerWire, n as faceCenter, p as uvBounds, u as pointOnSurface } from "./faceFns-C3C6l-X0.js";
10
+ import { c as curveStartPoint, m as offsetWire2D, r as curveIsClosed } from "./curveFns-BiSx9FTh.js";
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-B_wXW8QS.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-BkZrvGoG.js";
14
+ import { _ as samePoint$1, b as subtract2d, c as PRECISION_OFFSET, l as add2d, y as squareDistance2d } from "./helpers-rNVdiDLn.js";
15
+ import { _ as Curve2D, a as edgeToCurve, c as make2dCircle, d as make2dInerpolatedBSplineCurve, f as make2dSegmentCurve, g as approximateAsSvgCompatibleCurve, i as curvesAsEdgesOnPlane, l as make2dEllipse, o as make2dArcFromCenter, t as Blueprint, v as deserializeCurve2D, y as BoundingBox2d } from "./blueprint-0bBVK6Be.js";
16
+ import { t as cornerFinder } from "./cornerFinder-BaSsAk69.js";
17
+ import { c as roundedRectangleBlueprint, n as fuse2D, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-BAJ3efk_.js";
18
+ import { _ as wrapSketchDataArray, a as Sketch, g as wrapSketchData, i as Sketches, t as textBlueprints } from "./textBlueprints-LYHgEdsx.js";
19
+ import { i as projectEdges, t as cameraFromPlane } from "./cameraFns-QK8ahyDz.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,4 +1,4 @@
1
- import { n as wasmIndex } from "./vec3-BRj3eI54.js";
1
+ import { n as wasmIndex } from "./vec3-Dpha8d5k.js";
2
2
  //#region src/core/result.ts
3
3
  function ok(value) {
4
4
  return {
@@ -1,4 +1,4 @@
1
- const require_vec3 = require("./vec3-S4Oh59IX.cjs");
1
+ const require_vec3 = require("./vec3-CFwOI0ZI.cjs");
2
2
  //#region src/core/result.ts
3
3
  function ok(value) {
4
4
  return {
@@ -1,6 +1,6 @@
1
- import { Z as getKernel, c as createSolid, h as isShape3D, t as castShape, y as isWire } from "./shapeTypes-DGtDTS9s.js";
2
- import { A as ok, b as err, d as validationError, i as kernelError, l as typeCastError, t as BrepErrorCode, w as isErr } from "./errors-8GZS3vy9.js";
3
- import { c as vecLength, d as vecNormalize, t as vecAdd } from "./vecOps-DVROrqTV.js";
1
+ import { Z as getKernel, c as createSolid, h as isShape3D, t as castShape, y as isWire } from "./shapeTypes-DmHPJc_M.js";
2
+ import { A as ok, b as err, d as validationError, i as kernelError, l as typeCastError, t as BrepErrorCode, w as isErr } from "./errors-BJSTLaDI.js";
3
+ import { c as vecLength, d as vecNormalize, t as vecAdd } from "./vecOps-SKPRvPH-.js";
4
4
  //#region src/operations/extrudeUtils.ts
5
5
  /**
6
6
  * Build an kernel scaling law from an extrusion profile configuration.
@@ -1,6 +1,6 @@
1
- const require_shapeTypes = require("./shapeTypes-BpKhed-9.cjs");
2
- const require_errors = require("./errors-BiY8-q1s.cjs");
3
- const require_vecOps = require("./vecOps-D7xplSx8.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-C1FUZ2zE.cjs");
2
+ const require_errors = require("./errors-DxoD7zgx.cjs");
3
+ const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
4
4
  //#region src/operations/extrudeUtils.ts
5
5
  /**
6
6
  * Build an kernel scaling law from an extrusion profile configuration.
@@ -1,7 +1,7 @@
1
- import { Z as getKernel, t as castShape } from "./shapeTypes-DGtDTS9s.js";
2
- import { A as ok, R as unwrap, b as err, l as typeCastError } from "./errors-8GZS3vy9.js";
3
- import { a as getCachedSurfaceType } from "./topologyQueryFns-CcWaCxeb.js";
4
- import { r as toVec3 } from "./types-BIdk_GJY.js";
1
+ import { Z as getKernel, t as castShape } from "./shapeTypes-DmHPJc_M.js";
2
+ import { A as ok, R as unwrap, b as err, l as typeCastError } from "./errors-BJSTLaDI.js";
3
+ import { a as getCachedSurfaceType } from "./topologyQueryFns-CcHXn5M2.js";
4
+ import { r as toVec3 } from "./types-D24Y27N0.js";
5
5
  //#region src/topology/cast.ts
6
6
  var TOPO_ENUM = {
7
7
  compound: 0,
@@ -1,7 +1,7 @@
1
- const require_shapeTypes = require("./shapeTypes-BpKhed-9.cjs");
2
- const require_errors = require("./errors-BiY8-q1s.cjs");
3
- const require_topologyQueryFns = require("./topologyQueryFns-CHsPXNbI.cjs");
4
- const require_types = require("./types-CDkxah-M.cjs");
1
+ const require_shapeTypes = require("./shapeTypes-C1FUZ2zE.cjs");
2
+ const require_errors = require("./errors-DxoD7zgx.cjs");
3
+ const require_topologyQueryFns = require("./topologyQueryFns-DCICDnwA.cjs");
4
+ const require_types = require("./types-KjA8tY4Y.cjs");
5
5
  //#region src/topology/cast.ts
6
6
  var TOPO_ENUM = {
7
7
  compound: 0,