@faicad/faijs 0.29.5 → 0.31.1
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.
- package/NOTICE +6 -5
- package/dist/api/align/index.d.ts +64 -0
- package/dist/api/align/index.d.ts.map +1 -0
- package/dist/api/align/index.js +101 -0
- package/dist/api/align/index.js.map +1 -0
- package/dist/api/api-namespace.d.ts +6 -5
- package/dist/api/api-namespace.d.ts.map +1 -1
- package/dist/api/api-namespace.js +89 -5
- package/dist/api/api-namespace.js.map +1 -1
- package/dist/api/appearance.d.ts +0 -2
- package/dist/api/appearance.d.ts.map +1 -1
- package/dist/api/appearance.js +0 -2
- package/dist/api/appearance.js.map +1 -1
- package/dist/api/assembly/entities.d.ts +1 -1
- package/dist/api/assembly/entities.js +1 -1
- package/dist/api/assembly/entities.js.map +1 -1
- package/dist/api/assembly/index.d.ts +1 -1
- package/dist/api/assembly/index.js +1 -1
- package/dist/api/assembly/index.js.map +1 -1
- package/dist/api/assembly/joints.d.ts +33 -15
- package/dist/api/assembly/joints.d.ts.map +1 -1
- package/dist/api/assembly/joints.js +31 -13
- package/dist/api/assembly/joints.js.map +1 -1
- package/dist/api/assembly/preview.d.ts +1 -1
- package/dist/api/assembly/preview.js +1 -1
- package/dist/api/assembly/preview.js.map +1 -1
- package/dist/api/assembly/solve.d.ts +1 -1
- package/dist/api/assembly/solve.js +1 -1
- package/dist/api/assembly/solve.js.map +1 -1
- package/dist/api/assembly/solvers/assembly-tree.d.ts +1 -1
- package/dist/api/assembly/solvers/assembly-tree.js +1 -1
- package/dist/api/assembly/solvers/assembly-tree.js.map +1 -1
- package/dist/api/assembly/solvers/chain-solver.d.ts +2 -2
- package/dist/api/assembly/solvers/chain-solver.js.map +1 -1
- package/dist/api/assembly/solvers/global-solver.d.ts +1 -2
- package/dist/api/assembly/solvers/global-solver.d.ts.map +1 -1
- package/dist/api/assembly/solvers/global-solver.js +3 -4
- package/dist/api/assembly/solvers/global-solver.js.map +1 -1
- package/dist/api/assembly/solvers/joints-kinematics.js +1 -1
- package/dist/api/assembly/solvers/joints-kinematics.js.map +1 -1
- package/dist/api/assembly/solvers/linalg.d.ts +2 -2
- package/dist/api/assembly/solvers/linalg.js +2 -2
- package/dist/api/assembly/solvers/linalg.js.map +1 -1
- package/dist/api/assembly/solvers/types.d.ts +2 -5
- package/dist/api/assembly/solvers/types.d.ts.map +1 -1
- package/dist/api/assembly/solvers/types.js +1 -4
- package/dist/api/assembly/solvers/types.js.map +1 -1
- package/dist/api/boolean-op/index.d.ts +65 -0
- package/dist/api/boolean-op/index.d.ts.map +1 -0
- package/dist/api/boolean-op/index.js +113 -0
- package/dist/api/boolean-op/index.js.map +1 -0
- package/dist/api/boolean.d.ts.map +1 -1
- package/dist/api/boolean.js +22 -33
- package/dist/api/boolean.js.map +1 -1
- package/dist/api/brep-mirror/booleanFns.d.ts +3 -3
- package/dist/api/brep-mirror/booleanFns.js +5 -5
- package/dist/api/brep-mirror/booleanFns.js.map +1 -1
- package/dist/api/brep-mirror/compoundFns.d.ts +1 -1
- package/dist/api/brep-mirror/compoundFns.js +4 -4
- package/dist/api/brep-mirror/compoundFns.js.map +1 -1
- package/dist/api/brep-mirror/healingFns.d.ts +4 -4
- package/dist/api/brep-mirror/healingFns.js +4 -4
- package/dist/api/brep-mirror/healingFns.js.map +1 -1
- package/dist/api/brep-mirror/hullFns.d.ts +2 -2
- package/dist/api/brep-mirror/hullFns.js +2 -2
- package/dist/api/brep-mirror/hullFns.js.map +1 -1
- package/dist/api/brep-mirror/patternFns.d.ts +5 -5
- package/dist/api/brep-mirror/patternFns.js +10 -10
- package/dist/api/brep-mirror/patternFns.js.map +1 -1
- package/dist/api/brep-mirror/primitiveFns.d.ts +4 -4
- package/dist/api/brep-mirror/primitiveFns.js +4 -4
- package/dist/api/brep-mirror/primitiveFns.js.map +1 -1
- package/dist/api/brep-mirror/roofFns.d.ts +3 -3
- package/dist/api/brep-mirror/roofFns.js +7 -7
- package/dist/api/brep-mirror/roofFns.js.map +1 -1
- package/dist/api/brep-mirror/sweepFns.d.ts +7 -7
- package/dist/api/brep-mirror/sweepFns.js +14 -14
- package/dist/api/brep-mirror/sweepFns.js.map +1 -1
- package/dist/api/brep-mirror/threadFns.d.ts +1 -1
- package/dist/api/brep-mirror/threadFns.js +1 -1
- package/dist/api/brep-mirror/threadFns.js.map +1 -1
- package/dist/api/brep-mirror/topologyFns.d.ts +5 -5
- package/dist/api/brep-mirror/topologyFns.js +8 -8
- package/dist/api/brep-mirror/topologyFns.js.map +1 -1
- package/dist/api/brep-operations/booleanFns.d.ts +40 -0
- package/dist/api/brep-operations/booleanFns.d.ts.map +1 -0
- package/dist/api/brep-operations/booleanFns.js +104 -0
- package/dist/api/brep-operations/booleanFns.js.map +1 -0
- package/dist/api/brep-operations/brepHelpers.d.ts +55 -0
- package/dist/api/brep-operations/brepHelpers.d.ts.map +1 -0
- package/dist/api/brep-operations/brepHelpers.js +131 -0
- package/dist/api/brep-operations/brepHelpers.js.map +1 -0
- package/dist/api/brep-operations/compoundFns.d.ts +46 -0
- package/dist/api/brep-operations/compoundFns.d.ts.map +1 -0
- package/dist/api/brep-operations/compoundFns.js +299 -0
- package/dist/api/brep-operations/compoundFns.js.map +1 -0
- package/dist/api/brep-operations/healingFns.d.ts +91 -0
- package/dist/api/brep-operations/healingFns.d.ts.map +1 -0
- package/dist/api/brep-operations/healingFns.js +321 -0
- package/dist/api/brep-operations/healingFns.js.map +1 -0
- package/dist/api/brep-operations/hullFns.d.ts +20 -0
- package/dist/api/brep-operations/hullFns.d.ts.map +1 -0
- package/dist/api/brep-operations/hullFns.js +46 -0
- package/dist/api/brep-operations/hullFns.js.map +1 -0
- package/dist/api/brep-operations/joinery-brep.d.ts +172 -0
- package/dist/api/brep-operations/joinery-brep.d.ts.map +1 -0
- package/dist/api/brep-operations/joinery-brep.js +463 -0
- package/dist/api/brep-operations/joinery-brep.js.map +1 -0
- package/dist/api/brep-operations/patternFns.d.ts +43 -0
- package/dist/api/brep-operations/patternFns.d.ts.map +1 -0
- package/dist/api/brep-operations/patternFns.js +178 -0
- package/dist/api/brep-operations/patternFns.js.map +1 -0
- package/dist/api/brep-operations/primitiveFns.d.ts +42 -0
- package/dist/api/brep-operations/primitiveFns.d.ts.map +1 -0
- package/dist/api/brep-operations/primitiveFns.js +104 -0
- package/dist/api/brep-operations/primitiveFns.js.map +1 -0
- package/dist/api/brep-operations/roofFns.d.ts +24 -0
- package/dist/api/brep-operations/roofFns.d.ts.map +1 -0
- package/dist/api/brep-operations/roofFns.js +229 -0
- package/dist/api/brep-operations/roofFns.js.map +1 -0
- package/dist/api/brep-operations/straightSkeleton.d.ts +36 -0
- package/dist/api/brep-operations/straightSkeleton.d.ts.map +1 -0
- package/dist/api/brep-operations/straightSkeleton.js +431 -0
- package/dist/api/brep-operations/straightSkeleton.js.map +1 -0
- package/dist/api/brep-operations/sweepFns.d.ts +60 -0
- package/dist/api/brep-operations/sweepFns.d.ts.map +1 -0
- package/dist/api/brep-operations/sweepFns.js +323 -0
- package/dist/api/brep-operations/sweepFns.js.map +1 -0
- package/dist/api/brep-operations/threadFns.d.ts +83 -0
- package/dist/api/brep-operations/threadFns.d.ts.map +1 -0
- package/dist/api/brep-operations/threadFns.js +138 -0
- package/dist/api/brep-operations/threadFns.js.map +1 -0
- package/dist/api/brep-operations/topologyFns.d.ts +111 -0
- package/dist/api/brep-operations/topologyFns.d.ts.map +1 -0
- package/dist/api/brep-operations/topologyFns.js +300 -0
- package/dist/api/brep-operations/topologyFns.js.map +1 -0
- package/dist/api/brep-topology.d.ts +1 -1
- package/dist/api/brep-topology.d.ts.map +1 -1
- package/dist/api/brep-topology.js +1 -1
- package/dist/api/brep-topology.js.map +1 -1
- package/dist/api/brepjs-compat/index.d.ts +1 -1
- package/dist/api/brepjs-compat/index.js +3 -3
- package/dist/api/brepjs-compat/index.js.map +1 -1
- package/dist/api/cadquery-selectors/borrow-bridge.d.ts.map +1 -1
- package/dist/api/cadquery-selectors/borrow-bridge.js +3 -4
- package/dist/api/cadquery-selectors/borrow-bridge.js.map +1 -1
- package/dist/api/chamfer.d.ts +5 -4
- package/dist/api/chamfer.d.ts.map +1 -1
- package/dist/api/chamfer.js +12 -11
- package/dist/api/chamfer.js.map +1 -1
- package/dist/api/curve-sketch/index.d.ts +235 -0
- package/dist/api/curve-sketch/index.d.ts.map +1 -0
- package/dist/api/curve-sketch/index.js +493 -0
- package/dist/api/curve-sketch/index.js.map +1 -0
- package/dist/api/draft.d.ts.map +1 -1
- package/dist/api/draft.js +1 -3
- package/dist/api/draft.js.map +1 -1
- package/dist/api/engrave.d.ts.map +1 -1
- package/dist/api/engrave.js +6 -15
- package/dist/api/engrave.js.map +1 -1
- package/dist/api/export-3mf.d.ts +73 -0
- package/dist/api/export-3mf.d.ts.map +1 -0
- package/dist/api/export-3mf.js +121 -0
- package/dist/api/export-3mf.js.map +1 -0
- package/dist/api/export-brep.d.ts +47 -0
- package/dist/api/export-brep.d.ts.map +1 -0
- package/dist/api/export-brep.js +67 -0
- package/dist/api/export-brep.js.map +1 -0
- package/dist/api/export-step.d.ts +67 -0
- package/dist/api/export-step.d.ts.map +1 -0
- package/dist/api/export-step.js +98 -0
- package/dist/api/export-step.js.map +1 -0
- package/dist/api/export-stl.d.ts +58 -0
- package/dist/api/export-stl.d.ts.map +1 -0
- package/dist/api/export-stl.js +114 -0
- package/dist/api/export-stl.js.map +1 -0
- package/dist/api/extrude.d.ts +8 -11
- package/dist/api/extrude.d.ts.map +1 -1
- package/dist/api/extrude.js +11 -14
- package/dist/api/extrude.js.map +1 -1
- package/dist/api/feature-repair.d.ts +1 -1
- package/dist/api/feature-repair.d.ts.map +1 -1
- package/dist/api/feature-repair.js +1 -7
- package/dist/api/feature-repair.js.map +1 -1
- package/dist/api/fillet-variable.d.ts +2 -2
- package/dist/api/fillet-variable.d.ts.map +1 -1
- package/dist/api/fillet-variable.js +2 -3
- package/dist/api/fillet-variable.js.map +1 -1
- package/dist/api/fillet.d.ts +5 -7
- package/dist/api/fillet.d.ts.map +1 -1
- package/dist/api/fillet.js +5 -8
- package/dist/api/fillet.js.map +1 -1
- package/dist/api/generated/2d.d.ts +4 -0
- package/dist/api/generated/2d.d.ts.map +1 -1
- package/dist/api/generated/2d.js +4 -0
- package/dist/api/generated/2d.js.map +1 -1
- package/dist/api/generated/core.d.ts +4 -0
- package/dist/api/generated/core.d.ts.map +1 -1
- package/dist/api/generated/core.js +4 -0
- package/dist/api/generated/core.js.map +1 -1
- package/dist/api/generated/gear.d.ts +4 -0
- package/dist/api/generated/gear.d.ts.map +1 -1
- package/dist/api/generated/gear.js +4 -0
- package/dist/api/generated/gear.js.map +1 -1
- package/dist/api/generated/io.d.ts +4 -0
- package/dist/api/generated/io.d.ts.map +1 -1
- package/dist/api/generated/io.js +4 -0
- package/dist/api/generated/io.js.map +1 -1
- package/dist/api/generated/kernel.d.ts +4 -0
- package/dist/api/generated/kernel.d.ts.map +1 -1
- package/dist/api/generated/kernel.js +4 -0
- package/dist/api/generated/kernel.js.map +1 -1
- package/dist/api/generated/measurement.d.ts +21 -21
- package/dist/api/generated/measurement.d.ts.map +1 -1
- package/dist/api/generated/measurement.js +25 -21
- package/dist/api/generated/measurement.js.map +1 -1
- package/dist/api/generated/ns.d.ts +4 -0
- package/dist/api/generated/ns.d.ts.map +1 -1
- package/dist/api/generated/ns.js +4 -0
- package/dist/api/generated/ns.js.map +1 -1
- package/dist/api/generated/operations.d.ts +32 -32
- package/dist/api/generated/operations.d.ts.map +1 -1
- package/dist/api/generated/operations.js +58 -54
- package/dist/api/generated/operations.js.map +1 -1
- package/dist/api/generated/projection.d.ts +4 -0
- package/dist/api/generated/projection.d.ts.map +1 -1
- package/dist/api/generated/projection.js +4 -0
- package/dist/api/generated/projection.js.map +1 -1
- package/dist/api/generated/query.d.ts +4 -0
- package/dist/api/generated/query.d.ts.map +1 -1
- package/dist/api/generated/query.js +4 -0
- package/dist/api/generated/query.js.map +1 -1
- package/dist/api/generated/script-face-manifest.d.ts +1 -1
- package/dist/api/generated/script-face-manifest.js +3 -3
- package/dist/api/generated/script-face-manifest.js.map +1 -1
- package/dist/api/generated/script-face.d.ts +1 -1
- package/dist/api/generated/script-face.js +1 -1
- package/dist/api/generated/script-face.js.map +1 -1
- package/dist/api/generated/sketching.d.ts +2 -2
- package/dist/api/generated/sketching.d.ts.map +1 -1
- package/dist/api/generated/sketching.js +8 -4
- package/dist/api/generated/sketching.js.map +1 -1
- package/dist/api/generated/text.d.ts +4 -0
- package/dist/api/generated/text.d.ts.map +1 -1
- package/dist/api/generated/text.js +4 -0
- package/dist/api/generated/text.js.map +1 -1
- package/dist/api/generated/topology.d.ts +45 -45
- package/dist/api/generated/topology.d.ts.map +1 -1
- package/dist/api/generated/topology.js +77 -73
- package/dist/api/generated/topology.js.map +1 -1
- package/dist/api/generated/view.d.ts +4 -0
- package/dist/api/generated/view.d.ts.map +1 -1
- package/dist/api/generated/view.js +4 -0
- package/dist/api/generated/view.js.map +1 -1
- package/dist/api/geom-types/constants.d.ts +11 -0
- package/dist/api/geom-types/constants.d.ts.map +1 -0
- package/dist/api/geom-types/constants.js +11 -0
- package/dist/api/geom-types/constants.js.map +1 -0
- package/dist/api/geom-types/index.d.ts +21 -0
- package/dist/api/geom-types/index.d.ts.map +1 -0
- package/dist/api/geom-types/index.js +22 -0
- package/dist/api/geom-types/index.js.map +1 -0
- package/dist/api/geom-types/planeOps.d.ts +98 -0
- package/dist/api/geom-types/planeOps.d.ts.map +1 -0
- package/dist/api/geom-types/planeOps.js +170 -0
- package/dist/api/geom-types/planeOps.js.map +1 -0
- package/dist/api/geom-types/planeTypes.d.ts +24 -0
- package/dist/api/geom-types/planeTypes.d.ts.map +1 -0
- package/dist/api/geom-types/planeTypes.js +8 -0
- package/dist/api/geom-types/planeTypes.js.map +1 -0
- package/dist/api/geom-types/types.d.ts +64 -0
- package/dist/api/geom-types/types.d.ts.map +1 -0
- package/dist/api/geom-types/types.js +48 -0
- package/dist/api/geom-types/types.js.map +1 -0
- package/dist/api/geom-types/vecOps.d.ts +124 -0
- package/dist/api/geom-types/vecOps.d.ts.map +1 -0
- package/dist/api/geom-types/vecOps.js +202 -0
- package/dist/api/geom-types/vecOps.js.map +1 -0
- package/dist/api/geom.d.ts.map +1 -1
- package/dist/api/geom.js +6 -5
- package/dist/api/geom.js.map +1 -1
- package/dist/api/half-space.d.ts +56 -0
- package/dist/api/half-space.d.ts.map +1 -0
- package/dist/api/half-space.js +82 -0
- package/dist/api/half-space.js.map +1 -0
- package/dist/api/helix.d.ts +11 -2
- package/dist/api/helix.d.ts.map +1 -1
- package/dist/api/helix.js +20 -4
- package/dist/api/helix.js.map +1 -1
- package/dist/api/index.d.ts +19 -7
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +44 -11
- package/dist/api/index.js.map +1 -1
- package/dist/api/internal/compat-op.d.ts +10 -36
- package/dist/api/internal/compat-op.d.ts.map +1 -1
- package/dist/api/internal/compat-op.js +17 -51
- package/dist/api/internal/compat-op.js.map +1 -1
- package/dist/api/internal/compat-projection.d.ts +5 -5
- package/dist/api/internal/compat-projection.js +5 -5
- package/dist/api/internal/compat-projection.js.map +1 -1
- package/dist/api/internal/dual-form-args.d.ts +0 -2
- package/dist/api/internal/dual-form-args.d.ts.map +1 -1
- package/dist/api/internal/dual-form-args.js +1 -3
- package/dist/api/internal/dual-form-args.js.map +1 -1
- package/dist/api/internal/export-members.d.ts +80 -0
- package/dist/api/internal/export-members.d.ts.map +1 -0
- package/dist/api/internal/export-members.js +104 -0
- package/dist/api/internal/export-members.js.map +1 -0
- package/dist/api/internal/l3-bridge.d.ts +22 -37
- package/dist/api/internal/l3-bridge.d.ts.map +1 -1
- package/dist/api/internal/l3-bridge.js +30 -77
- package/dist/api/internal/l3-bridge.js.map +1 -1
- package/dist/api/internal/profile-wire.d.ts +1 -1
- package/dist/api/internal/profile-wire.js +1 -1
- package/dist/api/internal/profile-wire.js.map +1 -1
- package/dist/api/internal/result-unwrap.d.ts +4 -6
- package/dist/api/internal/result-unwrap.d.ts.map +1 -1
- package/dist/api/internal/result-unwrap.js +4 -6
- package/dist/api/internal/result-unwrap.js.map +1 -1
- package/dist/api/knurl.d.ts.map +1 -1
- package/dist/api/knurl.js +5 -3
- package/dist/api/knurl.js.map +1 -1
- package/dist/api/loft.d.ts +2 -2
- package/dist/api/loft.d.ts.map +1 -1
- package/dist/api/loft.js +2 -2
- package/dist/api/loft.js.map +1 -1
- package/dist/api/measure-query/index.d.ts +262 -0
- package/dist/api/measure-query/index.d.ts.map +1 -0
- package/dist/api/measure-query/index.js +390 -0
- package/dist/api/measure-query/index.js.map +1 -0
- package/dist/api/measurement/index.d.ts +3 -3
- package/dist/api/measurement/index.js +3 -3
- package/dist/api/measurement/index.js.map +1 -1
- package/dist/api/meta.d.ts +0 -2
- package/dist/api/meta.d.ts.map +1 -1
- package/dist/api/meta.js +0 -2
- package/dist/api/meta.js.map +1 -1
- package/dist/api/offset2d.d.ts +49 -0
- package/dist/api/offset2d.d.ts.map +1 -0
- package/dist/api/offset2d.js +86 -0
- package/dist/api/offset2d.js.map +1 -0
- package/dist/api/pattern.d.ts.map +1 -1
- package/dist/api/pattern.js +3 -6
- package/dist/api/pattern.js.map +1 -1
- package/dist/api/primitives.d.ts +6 -6
- package/dist/api/primitives.d.ts.map +1 -1
- package/dist/api/primitives.js +19 -17
- package/dist/api/primitives.js.map +1 -1
- package/dist/api/profile.d.ts.map +1 -1
- package/dist/api/profile.js +0 -1
- package/dist/api/profile.js.map +1 -1
- package/dist/api/punch-hole.d.ts.map +1 -1
- package/dist/api/punch-hole.js +0 -1
- package/dist/api/punch-hole.js.map +1 -1
- package/dist/api/replicate.d.ts +6 -8
- package/dist/api/replicate.d.ts.map +1 -1
- package/dist/api/replicate.js +27 -65
- package/dist/api/replicate.js.map +1 -1
- package/dist/api/result.d.ts +1 -1
- package/dist/api/result.js +1 -1
- package/dist/api/result.js.map +1 -1
- package/dist/api/revolve.d.ts +2 -2
- package/dist/api/revolve.js +3 -3
- package/dist/api/revolve.js.map +1 -1
- package/dist/api/screw.d.ts +1 -1
- package/dist/api/screw.d.ts.map +1 -1
- package/dist/api/screw.js +5 -4
- package/dist/api/screw.js.map +1 -1
- package/dist/api/sdf.d.ts.map +1 -1
- package/dist/api/sdf.js +3 -2
- package/dist/api/sdf.js.map +1 -1
- package/dist/api/section-by-plane.d.ts.map +1 -1
- package/dist/api/section-by-plane.js +0 -1
- package/dist/api/section-by-plane.js.map +1 -1
- package/dist/api/shape-type/index.d.ts +141 -0
- package/dist/api/shape-type/index.d.ts.map +1 -0
- package/dist/api/shape-type/index.js +182 -0
- package/dist/api/shape-type/index.js.map +1 -0
- package/dist/api/shell.d.ts +2 -2
- package/dist/api/shell.d.ts.map +1 -1
- package/dist/api/shell.js +12 -3
- package/dist/api/shell.js.map +1 -1
- package/dist/api/sketch-on-face.d.ts +3 -3
- package/dist/api/sketch-on-face.d.ts.map +1 -1
- package/dist/api/sketch-on-face.js +6 -4
- package/dist/api/sketch-on-face.js.map +1 -1
- package/dist/api/sketch-on-plane.d.ts.map +1 -1
- package/dist/api/sketch-on-plane.js +0 -1
- package/dist/api/sketch-on-plane.js.map +1 -1
- package/dist/api/solid-from-faces.d.ts +45 -0
- package/dist/api/solid-from-faces.d.ts.map +1 -0
- package/dist/api/solid-from-faces.js +72 -0
- package/dist/api/solid-from-faces.js.map +1 -0
- package/dist/api/solid-offset/index.d.ts +67 -0
- package/dist/api/solid-offset/index.d.ts.map +1 -0
- package/dist/api/solid-offset/index.js +132 -0
- package/dist/api/solid-offset/index.js.map +1 -0
- package/dist/api/split-by-plane.d.ts.map +1 -1
- package/dist/api/split-by-plane.js +0 -1
- package/dist/api/split-by-plane.js.map +1 -1
- package/dist/api/split.d.ts +1 -1
- package/dist/api/split.js +1 -1
- package/dist/api/split.js.map +1 -1
- package/dist/api/surface/arg-spec.d.ts +37 -44
- package/dist/api/surface/arg-spec.d.ts.map +1 -1
- package/dist/api/surface/arg-spec.js +224 -233
- package/dist/api/surface/arg-spec.js.map +1 -1
- package/dist/api/surface-face/index.d.ts +104 -0
- package/dist/api/surface-face/index.d.ts.map +1 -0
- package/dist/api/surface-face/index.js +217 -0
- package/dist/api/surface-face/index.js.map +1 -0
- package/dist/api/surface.d.ts +44 -0
- package/dist/api/surface.d.ts.map +1 -0
- package/dist/api/surface.js +66 -0
- package/dist/api/surface.js.map +1 -0
- package/dist/api/sweep.d.ts +71 -9
- package/dist/api/sweep.d.ts.map +1 -1
- package/dist/api/sweep.js +13 -6
- package/dist/api/sweep.js.map +1 -1
- package/dist/api/thicken.d.ts +1 -1
- package/dist/api/thicken.d.ts.map +1 -1
- package/dist/api/thicken.js +12 -3
- package/dist/api/thicken.js.map +1 -1
- package/dist/api/transform.d.ts +8 -8
- package/dist/api/transform.d.ts.map +1 -1
- package/dist/api/transform.js +58 -27
- package/dist/api/transform.js.map +1 -1
- package/dist/api/view/cameraFns.d.ts +1 -1
- package/dist/api/view/cameraFns.d.ts.map +1 -1
- package/dist/api/view/cameraFns.js +1 -1
- package/dist/api/view/cameraFns.js.map +1 -1
- package/dist/api/view/index.d.ts +0 -2
- package/dist/api/view/index.d.ts.map +1 -1
- package/dist/api/view/index.js +0 -2
- package/dist/api/view/index.js.map +1 -1
- package/dist/api/view/projectionPlanes.d.ts +1 -1
- package/dist/api/view/projectionPlanes.d.ts.map +1 -1
- package/dist/api/view/projectionPlanes.js.map +1 -1
- package/dist/api/view/view-camera.d.ts +7 -9
- package/dist/api/view/view-camera.d.ts.map +1 -1
- package/dist/api/view/view-camera.js +4 -6
- package/dist/api/view/view-camera.js.map +1 -1
- package/dist/api/view/view-projection.d.ts +0 -2
- package/dist/api/view/view-projection.d.ts.map +1 -1
- package/dist/api/view/view-projection.js +0 -2
- package/dist/api/view/view-projection.js.map +1 -1
- package/dist/api/view/view-sheet.d.ts +0 -2
- package/dist/api/view/view-sheet.d.ts.map +1 -1
- package/dist/api/view/view-sheet.js +0 -2
- package/dist/api/view/view-sheet.js.map +1 -1
- package/dist/api/view-export/index.d.ts +97 -0
- package/dist/api/view-export/index.d.ts.map +1 -0
- package/dist/api/view-export/index.js +118 -0
- package/dist/api/view-export/index.js.map +1 -0
- package/dist/boolean/index.d.ts +23 -0
- package/dist/boolean/index.d.ts.map +1 -0
- package/dist/boolean/index.js +27 -0
- package/dist/boolean/index.js.map +1 -0
- package/dist/brep/brep-chain.d.ts +1 -19
- package/dist/brep/brep-chain.d.ts.map +1 -1
- package/dist/brep/brep-chain.js +0 -1
- package/dist/brep/brep-chain.js.map +1 -1
- package/dist/brep/brep-ops.d.ts +93 -2
- package/dist/brep/brep-ops.d.ts.map +1 -1
- package/dist/brep/brep-ops.js +185 -15
- package/dist/brep/brep-ops.js.map +1 -1
- package/dist/brep/brep-topology.d.ts +20 -0
- package/dist/brep/brep-topology.d.ts.map +1 -1
- package/dist/brep/brep-topology.js +46 -0
- package/dist/brep/brep-topology.js.map +1 -1
- package/dist/brep/engine/adapters/brep-mock.d.ts.map +1 -1
- package/dist/brep/engine/adapters/brep-mock.js +0 -3
- package/dist/brep/engine/adapters/brep-mock.js.map +1 -1
- package/dist/brep/engine/adapters/brepkit.d.ts +4 -3
- package/dist/brep/engine/adapters/brepkit.d.ts.map +1 -1
- package/dist/brep/engine/adapters/brepkit.js +4 -98
- package/dist/brep/engine/adapters/brepkit.js.map +1 -1
- package/dist/brep/engine/adapters/occt.d.ts +1 -1
- package/dist/brep/engine/adapters/occt.d.ts.map +1 -1
- package/dist/brep/engine/adapters/occt.js +4 -148
- package/dist/brep/engine/adapters/occt.js.map +1 -1
- package/dist/brep/engine/native-history.d.ts +27 -0
- package/dist/brep/engine/native-history.d.ts.map +1 -0
- package/dist/brep/engine/native-history.js +54 -0
- package/dist/brep/engine/native-history.js.map +1 -0
- package/dist/brep/engine/primitives.d.ts +2 -3
- package/dist/brep/engine/primitives.d.ts.map +1 -1
- package/dist/brep/engine/primitives.js +1 -2
- package/dist/brep/engine/primitives.js.map +1 -1
- package/dist/brep/engine/registry.d.ts +3 -5
- package/dist/brep/engine/registry.d.ts.map +1 -1
- package/dist/brep/engine/registry.js +2 -2
- package/dist/brep/engine/registry.js.map +1 -1
- package/dist/brep/engine/types.d.ts +35 -77
- package/dist/brep/engine/types.d.ts.map +1 -1
- package/dist/brep/engine/types.js.map +1 -1
- package/dist/brep/export/export-model.d.ts +21 -0
- package/dist/brep/export/export-model.d.ts.map +1 -1
- package/dist/brep/export/export-model.js +171 -73
- package/dist/brep/export/export-model.js.map +1 -1
- package/dist/brep/export/step.d.ts +17 -1
- package/dist/brep/export/step.d.ts.map +1 -1
- package/dist/brep/export/step.js +133 -0
- package/dist/brep/export/step.js.map +1 -1
- package/dist/brep/export/stl.d.ts +22 -1
- package/dist/brep/export/stl.d.ts.map +1 -1
- package/dist/brep/export/stl.js +58 -10
- package/dist/brep/export/stl.js.map +1 -1
- package/dist/brep/export/transform12.d.ts +47 -0
- package/dist/brep/export/transform12.d.ts.map +1 -0
- package/dist/brep/export/transform12.js +87 -0
- package/dist/brep/export/transform12.js.map +1 -0
- package/dist/brep/face-evolution.d.ts +53 -0
- package/dist/brep/face-evolution.d.ts.map +1 -1
- package/dist/brep/face-evolution.js +65 -0
- package/dist/brep/face-evolution.js.map +1 -1
- package/dist/brep/handle-bridge.d.ts +2 -2
- package/dist/brep/handle-bridge.js +2 -2
- package/dist/brep/handle-bridge.js.map +1 -1
- package/dist/brep/index.d.ts +6 -3
- package/dist/brep/index.d.ts.map +1 -1
- package/dist/brep/index.js +6 -3
- package/dist/brep/index.js.map +1 -1
- package/dist/brepkit-kernel/brepkitKernel.d.ts +1 -1
- package/dist/brepkit-kernel/brepkitKernel.js +2 -2
- package/dist/brepkit-kernel/brepkitKernel.js.map +1 -1
- package/dist/browser-host/index.d.ts +4 -1
- package/dist/browser-host/index.d.ts.map +1 -1
- package/dist/browser-host/index.js +7 -1
- package/dist/browser-host/index.js.map +1 -1
- package/dist/browser.d.ts +5 -9
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +5 -26
- package/dist/browser.js.map +1 -1
- package/dist/cad-runtime/admit-compat-lib.d.ts +3 -10
- package/dist/cad-runtime/admit-compat-lib.d.ts.map +1 -1
- package/dist/cad-runtime/admit-compat-lib.js +3 -9
- package/dist/cad-runtime/admit-compat-lib.js.map +1 -1
- package/dist/cad-runtime/backend-dispatch.d.ts +13 -58
- package/dist/cad-runtime/backend-dispatch.d.ts.map +1 -1
- package/dist/cad-runtime/backend-dispatch.js +34 -83
- package/dist/cad-runtime/backend-dispatch.js.map +1 -1
- package/dist/cad-runtime/content-key.d.ts +3 -3
- package/dist/cad-runtime/content-key.js +3 -3
- package/dist/cad-runtime/content-key.js.map +1 -1
- package/dist/cad-runtime/direct-executor.d.ts +6 -3
- package/dist/cad-runtime/direct-executor.d.ts.map +1 -1
- package/dist/cad-runtime/direct-executor.js +31 -9
- package/dist/cad-runtime/direct-executor.js.map +1 -1
- package/dist/cad-runtime/interp/env.d.ts +1 -1
- package/dist/cad-runtime/interp/env.js.map +1 -1
- package/dist/cad-runtime/lib-id.d.ts +0 -2
- package/dist/cad-runtime/lib-id.d.ts.map +1 -1
- package/dist/cad-runtime/lib-id.js +0 -2
- package/dist/cad-runtime/lib-id.js.map +1 -1
- package/dist/cad-runtime/live-shapes.d.ts +3 -5
- package/dist/cad-runtime/live-shapes.d.ts.map +1 -1
- package/dist/cad-runtime/live-shapes.js +8 -10
- package/dist/cad-runtime/live-shapes.js.map +1 -1
- package/dist/cad-runtime/ports.d.ts +31 -3
- package/dist/cad-runtime/ports.d.ts.map +1 -1
- package/dist/cad-runtime/ports.js.map +1 -1
- package/dist/cad-runtime/runtime.d.ts +54 -19
- package/dist/cad-runtime/runtime.d.ts.map +1 -1
- package/dist/cad-runtime/runtime.js +89 -54
- package/dist/cad-runtime/runtime.js.map +1 -1
- package/dist/define-op.d.ts +10 -14
- package/dist/define-op.d.ts.map +1 -1
- package/dist/define-op.js +5 -22
- package/dist/define-op.js.map +1 -1
- package/dist/env-agnostic.d.ts +2 -2
- package/dist/env-agnostic.d.ts.map +1 -1
- package/dist/env-agnostic.js +1 -1
- package/dist/env-agnostic.js.map +1 -1
- package/dist/geometry2d/bridge/plane.d.ts +1 -1
- package/dist/geometry2d/bridge/plane.js +1 -1
- package/dist/geometry2d/bridge/plane.js.map +1 -1
- package/dist/geometry2d/curve2d.d.ts +1 -1
- package/dist/geometry2d/curve2d.js +1 -1
- package/dist/geometry2d/curve2d.js.map +1 -1
- package/dist/index.d.ts +14 -65
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -70
- package/dist/index.js.map +1 -1
- package/dist/io/fai-zip/container-read.d.ts +16 -0
- package/dist/io/fai-zip/container-read.d.ts.map +1 -1
- package/dist/io/fai-zip/container-read.js +22 -0
- package/dist/io/fai-zip/container-read.js.map +1 -1
- package/dist/io/fai-zip/index.d.ts +1 -1
- package/dist/io/fai-zip/index.d.ts.map +1 -1
- package/dist/io/fai-zip/index.js +1 -1
- package/dist/io/fai-zip/index.js.map +1 -1
- package/dist/lang/code-to-args.d.ts.map +1 -1
- package/dist/lang/code-to-args.js +10 -1
- package/dist/lang/code-to-args.js.map +1 -1
- package/dist/lang/determinism-scanner.d.ts.map +1 -1
- package/dist/lang/determinism-scanner.js +22 -9
- package/dist/lang/determinism-scanner.js.map +1 -1
- package/dist/lang/metadata-extractor.d.ts +27 -6
- package/dist/lang/metadata-extractor.d.ts.map +1 -1
- package/dist/lang/metadata-extractor.js +88 -8
- package/dist/lang/metadata-extractor.js.map +1 -1
- package/dist/lang/parse-error.d.ts +4 -0
- package/dist/lang/parse-error.d.ts.map +1 -1
- package/dist/lang/parse-error.js.map +1 -1
- package/dist/lang/security-scanner.d.ts +27 -2
- package/dist/lang/security-scanner.d.ts.map +1 -1
- package/dist/lang/security-scanner.js +29 -2
- package/dist/lang/security-scanner.js.map +1 -1
- package/dist/lang/source-edit.d.ts +2 -2
- package/dist/lang/source-edit.js.map +1 -1
- package/dist/lang/symbol-table.generated.d.ts +53 -0
- package/dist/lang/symbol-table.generated.d.ts.map +1 -1
- package/dist/lang/symbol-table.generated.js +53 -0
- package/dist/lang/symbol-table.generated.js.map +1 -1
- package/dist/mesh/import-model.d.ts +94 -0
- package/dist/mesh/import-model.d.ts.map +1 -0
- package/dist/mesh/import-model.js +15 -0
- package/dist/mesh/import-model.js.map +1 -0
- package/dist/mesh/index.d.ts +19 -63
- package/dist/mesh/index.d.ts.map +1 -1
- package/dist/mesh/index.js +19 -72
- package/dist/mesh/index.js.map +1 -1
- package/dist/mesh/io.d.ts +62 -17
- package/dist/mesh/io.d.ts.map +1 -1
- package/dist/mesh/io.js +210 -41
- package/dist/mesh/io.js.map +1 -1
- package/dist/mesh/primitives.js +1 -1
- package/dist/mesh/primitives.js.map +1 -1
- package/dist/mesh/threemf-bambu.d.ts +12 -1
- package/dist/mesh/threemf-bambu.d.ts.map +1 -1
- package/dist/mesh/threemf-bambu.js +68 -16
- package/dist/mesh/threemf-bambu.js.map +1 -1
- package/dist/mesh/threemf-loader.d.ts +52 -5
- package/dist/mesh/threemf-loader.d.ts.map +1 -1
- package/dist/mesh/threemf-loader.js +139 -41
- package/dist/mesh/threemf-loader.js.map +1 -1
- package/dist/mesh/transform.d.ts +1 -1
- package/dist/mesh/transform.js +1 -1
- package/dist/mesh/transform.js.map +1 -1
- package/dist/mesh/types.d.ts +35 -5
- package/dist/mesh/types.d.ts.map +1 -1
- package/dist/mesh/types.js.map +1 -1
- package/dist/node-host/cli.d.ts +49 -1
- package/dist/node-host/cli.d.ts.map +1 -1
- package/dist/node-host/cli.js +125 -19
- package/dist/node-host/cli.js.map +1 -1
- package/dist/node-host/execute-script.d.ts +56 -0
- package/dist/node-host/execute-script.d.ts.map +1 -0
- package/dist/node-host/execute-script.js +47 -0
- package/dist/node-host/execute-script.js.map +1 -0
- package/dist/node-host/index.d.ts +1 -0
- package/dist/node-host/index.d.ts.map +1 -1
- package/dist/node-host/index.js +4 -0
- package/dist/node-host/index.js.map +1 -1
- package/dist/node.d.ts +2 -0
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +3 -0
- package/dist/node.js.map +1 -1
- package/dist/occt-kernel/generated/occtPlatform.generated.d.ts +260 -0
- package/dist/occt-kernel/generated/occtPlatform.generated.d.ts.map +1 -0
- package/dist/occt-kernel/generated/occtPlatform.generated.js +875 -0
- package/dist/occt-kernel/generated/occtPlatform.generated.js.map +1 -0
- package/dist/occt-kernel/hullGeometry.d.ts +2 -2
- package/dist/occt-kernel/hullGeometry.js +2 -3
- package/dist/occt-kernel/hullGeometry.js.map +1 -1
- package/dist/occt-kernel/hullOps.d.ts +3 -3
- package/dist/occt-kernel/hullOps.js +4 -4
- package/dist/occt-kernel/hullOps.js.map +1 -1
- package/dist/occt-kernel/occt-primitives.d.ts.map +1 -1
- package/dist/occt-kernel/occt-primitives.js +31 -4
- package/dist/occt-kernel/occt-primitives.js.map +1 -1
- package/dist/occt-kernel/occtKernel.d.ts.map +1 -1
- package/dist/occt-kernel/occtKernel.js +18 -0
- package/dist/occt-kernel/occtKernel.js.map +1 -1
- package/dist/occt-scan/recognize.d.ts +58 -0
- package/dist/occt-scan/recognize.d.ts.map +1 -0
- package/dist/occt-scan/recognize.js +216 -0
- package/dist/occt-scan/recognize.js.map +1 -0
- package/dist/primitives/brep-primitives.js +7 -7
- package/dist/primitives/brep-primitives.js.map +1 -1
- package/dist/primitives/index.d.ts +19 -0
- package/dist/primitives/index.d.ts.map +1 -0
- package/dist/primitives/index.js +21 -0
- package/dist/primitives/index.js.map +1 -0
- package/dist/result/bug.d.ts +1 -1
- package/dist/result/bug.js +1 -1
- package/dist/result/bug.js.map +1 -1
- package/dist/result/errors.d.ts +2 -2
- package/dist/result/errors.d.ts.map +1 -1
- package/dist/result/errors.js +1 -1
- package/dist/result/errors.js.map +1 -1
- package/dist/result/vec3.d.ts +1 -1
- package/dist/result/vec3.js +1 -1
- package/dist/result/vec3.js.map +1 -1
- package/dist/runtime-state.d.ts +79 -29
- package/dist/runtime-state.d.ts.map +1 -1
- package/dist/runtime-state.js +84 -0
- package/dist/runtime-state.js.map +1 -1
- package/dist/script-globals.d.ts +24 -0
- package/dist/script-globals.d.ts.map +1 -0
- package/dist/script-globals.js +24 -0
- package/dist/script-globals.js.map +1 -0
- package/dist/sdf/index.d.ts +12 -0
- package/dist/sdf/index.d.ts.map +1 -0
- package/dist/sdf/index.js +13 -0
- package/dist/sdf/index.js.map +1 -0
- package/dist/sdk.d.ts +0 -1
- package/dist/sdk.d.ts.map +1 -1
- package/dist/sdk.js.map +1 -1
- package/dist/shape.d.ts +24 -0
- package/dist/shape.d.ts.map +1 -1
- package/dist/shape.js +40 -0
- package/dist/shape.js.map +1 -1
- package/dist/topology/naming/lineage.d.ts +3 -2
- package/dist/topology/naming/lineage.d.ts.map +1 -1
- package/dist/topology/naming/lineage.js.map +1 -1
- package/dist/weapp.d.ts +3 -3
- package/dist/weapp.d.ts.map +1 -1
- package/dist/weapp.js +2 -2
- package/dist/weapp.js.map +1 -1
- package/package.json +283 -44
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/result/errors.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Domain error types and constructors(第一方模块)。\n *\n * 2026-09-25 core-decouple Phase 1:复制自 brepjs `src/core/errors.ts`\n * (同源复制,签名不变);import 来源改为 core 第一方 `result/` 内模块。\n * Re-exports bug/BrepBugError(Layer 0)for convenience.\n */\n\nimport { bug, BrepBugError } from './bug';\nimport { wasmIndex } from './vec3';\nexport { bug, BrepBugError };\n\n// ---------------------------------------------------------------------------\n// Error kinds\n// ---------------------------------------------------------------------------\n\n/** High-level category for a brepjs error. */\nexport type BrepErrorKind =\n | 'KERNEL_OPERATION'\n | 'VALIDATION'\n | 'TYPE_CAST'\n | 'SKETCHER_STATE'\n | 'MODULE_INIT'\n | 'COMPUTATION'\n | 'IO'\n | 'QUERY'\n | 'UNSUPPORTED';\n\n// ---------------------------------------------------------------------------\n// Error codes — typed constants for all known error code strings\n// ---------------------------------------------------------------------------\n\n/**\n * Typed string constants for all known brepjs error codes, grouped by category.\n *\n * Use these instead of raw strings so that typos are caught at compile time.\n */\nexport const BrepErrorCode = {\n // kernel operation errors\n BSPLINE_FAILED: 'BSPLINE_FAILED',\n FACE_BUILD_FAILED: 'FACE_BUILD_FAILED',\n WIRE_BUILD_FAILED: 'WIRE_BUILD_FAILED',\n SWEEP_FAILED: 'SWEEP_FAILED',\n LOFT_FAILED: 'LOFT_FAILED',\n FUSE_FAILED: 'FUSE_FAILED',\n CUT_FAILED: 'CUT_FAILED',\n HEAL_NO_EFFECT: 'HEAL_NO_EFFECT',\n BOOLEAN_HAS_ERRORS: 'BOOLEAN_HAS_ERRORS',\n VARIABLE_FILLET_FAILED: 'VARIABLE_FILLET_FAILED',\n POSITION_ON_CURVE_FAILED: 'POSITION_ON_CURVE_FAILED',\n FIX_SHAPE_FAILED: 'FIX_SHAPE_FAILED',\n SOLID_FROM_SHELL_FAILED: 'SOLID_FROM_SHELL_FAILED',\n FIX_SELF_INTERSECTION_FAILED: 'FIX_SELF_INTERSECTION_FAILED',\n MESH_FAILED: 'MESH_FAILED',\n\n // Validation errors\n ELLIPSE_RADII: 'ELLIPSE_RADII',\n FUSE_ALL_EMPTY: 'FUSE_ALL_EMPTY',\n FILLET_NO_EDGES: 'FILLET_NO_EDGES',\n CHAMFER_NO_EDGES: 'CHAMFER_NO_EDGES',\n CHAMFER_ANGLE_NO_EDGES: 'CHAMFER_ANGLE_NO_EDGES',\n CHAMFER_ANGLE_BAD_DISTANCE: 'CHAMFER_ANGLE_BAD_DISTANCE',\n CHAMFER_ANGLE_BAD_ANGLE: 'CHAMFER_ANGLE_BAD_ANGLE',\n BEZIER_MIN_POINTS: 'BEZIER_MIN_POINTS',\n POLYGON_MIN_POINTS: 'POLYGON_MIN_POINTS',\n WIRE_NOT_CLOSED: 'WIRE_NOT_CLOSED',\n FACE_NOT_PLANAR: 'FACE_NOT_PLANAR',\n ZERO_LENGTH_EXTRUSION: 'ZERO_LENGTH_EXTRUSION',\n ZERO_TWIST_ANGLE: 'ZERO_TWIST_ANGLE',\n LOFT_EMPTY: 'LOFT_EMPTY',\n UNSUPPORTED_PROFILE: 'UNSUPPORTED_PROFILE',\n UNKNOWN_PLANE: 'UNKNOWN_PLANE',\n NULL_SHAPE_INPUT: 'NULL_SHAPE_INPUT',\n INVALID_FILLET_RADIUS: 'INVALID_FILLET_RADIUS',\n INVALID_CHAMFER_DISTANCE: 'INVALID_CHAMFER_DISTANCE',\n INVALID_THICKNESS: 'INVALID_THICKNESS',\n ZERO_OFFSET: 'ZERO_OFFSET',\n NO_EDGES: 'NO_EDGES',\n NO_FACES: 'NO_FACES',\n DRAFT_NO_FACES: 'DRAFT_NO_FACES',\n DRAFT_INVALID_ANGLE: 'DRAFT_INVALID_ANGLE',\n DRAFT_NOT_3D: 'DRAFT_NOT_3D',\n DRAFT_FAILED: 'DRAFT_FAILED',\n\n // Type cast errors\n FUSE_NOT_3D: 'FUSE_NOT_3D',\n CUT_NOT_3D: 'CUT_NOT_3D',\n INTERSECT_NOT_3D: 'INTERSECT_NOT_3D',\n FUSE_ALL_NOT_3D: 'FUSE_ALL_NOT_3D',\n CUT_ALL_NOT_3D: 'CUT_ALL_NOT_3D',\n LOFT_NOT_3D: 'LOFT_NOT_3D',\n SWEEP_NOT_3D: 'SWEEP_NOT_3D',\n REVOLUTION_NOT_3D: 'REVOLUTION_NOT_3D',\n FILLET_NOT_3D: 'FILLET_NOT_3D',\n CHAMFER_NOT_3D: 'CHAMFER_NOT_3D',\n CHAMFER_ANGLE_NOT_3D: 'CHAMFER_ANGLE_NOT_3D',\n CHAMFER_ANGLE_FAILED: 'CHAMFER_ANGLE_FAILED',\n CSG_NOT_3D: 'CSG_NOT_3D',\n SHELL_NOT_3D: 'SHELL_NOT_3D',\n OFFSET_NOT_3D: 'OFFSET_NOT_3D',\n NULL_SHAPE: 'NULL_SHAPE',\n NO_WRAPPER: 'NO_WRAPPER',\n WELD_NOT_SHELL: 'WELD_NOT_SHELL',\n SOLID_BUILD_FAILED: 'SOLID_BUILD_FAILED',\n OFFSET_NOT_WIRE: 'OFFSET_NOT_WIRE',\n UNKNOWN_SURFACE_TYPE: 'UNKNOWN_SURFACE_TYPE',\n UNKNOWN_CURVE_TYPE: 'UNKNOWN_CURVE_TYPE',\n SWEEP_START_NOT_WIRE: 'SWEEP_START_NOT_WIRE',\n SWEEP_END_NOT_WIRE: 'SWEEP_END_NOT_WIRE',\n\n // IO errors\n STEP_EXPORT_FAILED: 'STEP_EXPORT_FAILED',\n STEP_EXPORT_CONFIGURED_FAILED: 'STEP_EXPORT_CONFIGURED_FAILED',\n STEP_FILE_READ_ERROR: 'STEP_FILE_READ_ERROR',\n STEP_EXPORT_CRASHED: 'STEP_EXPORT_CRASHED',\n STEP_EXPORT_UNSERIALIZABLE: 'STEP_EXPORT_UNSERIALIZABLE',\n STL_EXPORT_FAILED: 'STL_EXPORT_FAILED',\n STL_FILE_READ_ERROR: 'STL_FILE_READ_ERROR',\n STL_EXPORT_CRASHED: 'STL_EXPORT_CRASHED',\n STL_EXPORT_UNSERIALIZABLE: 'STL_EXPORT_UNSERIALIZABLE',\n STEP_IMPORT_FAILED: 'STEP_IMPORT_FAILED',\n STL_IMPORT_FAILED: 'STL_IMPORT_FAILED',\n IGES_EXPORT_FAILED: 'IGES_EXPORT_FAILED',\n IGES_IMPORT_FAILED: 'IGES_IMPORT_FAILED',\n DXF_IMPORT_FAILED: 'DXF_IMPORT_FAILED',\n OBJ_IMPORT_FAILED: 'OBJ_IMPORT_FAILED',\n THREEMF_IMPORT_FAILED: 'THREEMF_IMPORT_FAILED',\n\n // Computation errors\n PARAMETER_NOT_FOUND: 'PARAMETER_NOT_FOUND',\n INTERSECTION_FAILED: 'INTERSECTION_FAILED',\n SELF_INTERSECTION_FAILED: 'SELF_INTERSECTION_FAILED',\n STRAIGHT_SKELETON_FAILED: 'STRAIGHT_SKELETON_FAILED',\n CENTER_OF_MASS_FAILED: 'CENTER_OF_MASS_FAILED',\n\n // Compound operation errors\n COMPOUND_NO_FACES: 'COMPOUND_NO_FACES',\n COMPOUND_FACE_NOT_FOUND: 'COMPOUND_FACE_NOT_FOUND',\n\n // Query errors\n FINDER_NOT_UNIQUE: 'FINDER_NOT_UNIQUE',\n\n // Hull errors\n HULL_EMPTY_INPUT: 'HULL_EMPTY_INPUT',\n HULL_FAILED: 'HULL_FAILED',\n HULL_DEGENERATE: 'HULL_DEGENERATE',\n HULL_NOT_3D: 'HULL_NOT_3D',\n\n // Minkowski errors\n MINKOWSKI_FAILED: 'MINKOWSKI_FAILED',\n MINKOWSKI_NULL_TOOL: 'MINKOWSKI_NULL_TOOL',\n MINKOWSKI_NOT_3D: 'MINKOWSKI_NOT_3D',\n\n // Polyhedron errors\n POLYHEDRON_INSUFFICIENT_POINTS: 'POLYHEDRON_INSUFFICIENT_POINTS',\n POLYHEDRON_INSUFFICIENT_FACES: 'POLYHEDRON_INSUFFICIENT_FACES',\n POLYHEDRON_INVALID_INDEX: 'POLYHEDRON_INVALID_INDEX',\n POLYHEDRON_FAILED: 'POLYHEDRON_FAILED',\n\n // General validation errors\n VALIDATION_FAILED: 'VALIDATION_FAILED',\n\n // Roof errors\n ROOF_FAILED: 'ROOF_FAILED',\n\n // Multi-section sweep errors\n MULTI_SWEEP_INSUFFICIENT_SECTIONS: 'MULTI_SWEEP_INSUFFICIENT_SECTIONS',\n MULTI_SWEEP_FAILED: 'MULTI_SWEEP_FAILED',\n\n // Guide curve sweep errors\n GUIDED_SWEEP_FAILED: 'GUIDED_SWEEP_FAILED',\n\n // Surface errors\n SURFACE_GRID_TOO_SMALL: 'SURFACE_GRID_TOO_SMALL',\n SURFACE_GRID_JAGGED: 'SURFACE_GRID_JAGGED',\n SURFACE_FAILED: 'SURFACE_FAILED',\n\n // Assembly mate errors\n ASSEMBLY_MATE_INVALID: 'ASSEMBLY_MATE_INVALID',\n ASSEMBLY_SOLVE_FAILED: 'ASSEMBLY_SOLVE_FAILED',\n ASSEMBLY_NOT_CONVERGED: 'ASSEMBLY_NOT_CONVERGED',\n\n // Blueprint / CompoundBlueprint errors\n BLUEPRINT_EMPTY_CURVES: 'BLUEPRINT_EMPTY_CURVES',\n COMPOUND_BLUEPRINT_EMPTY: 'COMPOUND_BLUEPRINT_EMPTY',\n\n // GLB/glTF import errors\n GLB_IMPORT_FAILED: 'GLB_IMPORT_FAILED',\n\n // Font/text errors\n FONT_FETCH_FAILED: 'FONT_FETCH_FAILED',\n FONT_PARSE_FAILED: 'FONT_PARSE_FAILED',\n NO_FONT_LOADED: 'NO_FONT_LOADED',\n\n // 2D curve geometry errors\n CURVE2D_CONSTRUCTION_FAILED: 'CURVE2D_CONSTRUCTION_FAILED',\n CURVE2D_INVALID_RADIUS: 'CURVE2D_INVALID_RADIUS',\n CURVE2D_TRANSFORM_FAILED: 'CURVE2D_TRANSFORM_FAILED',\n CURVE2D_QUERY_FAILED: 'CURVE2D_QUERY_FAILED',\n CURVE2D_INTERSECTION_FAILED: 'CURVE2D_INTERSECTION_FAILED',\n CURVE2D_BRIDGE_FAILED: 'CURVE2D_BRIDGE_FAILED',\n\n // Shape identity errors\n CLONE_FAILED: 'CLONE_FAILED',\n SIMPLIFY_FAILED: 'SIMPLIFY_FAILED',\n TO_BREP_FAILED: 'TO_BREP_FAILED',\n\n // Unsupported capability errors (ADR-0006 Phase 4)\n UNSUPPORTED_CAPABILITY: 'UNSUPPORTED_CAPABILITY',\n} as const;\n\n/** Union of all known error code string literals. */\nexport type BrepErrorCode = (typeof BrepErrorCode)[keyof typeof BrepErrorCode];\n\n// ---------------------------------------------------------------------------\n// Error interface\n// ---------------------------------------------------------------------------\n\n/**\n * Structured error returned inside `Result<T>` on failure.\n *\n * Every error carries a `kind` (category), a machine-readable `code`,\n * and a human-readable `message`. Optional `cause` preserves the\n * original exception, and `metadata` holds extra context.\n *\n * The optional `suggestion` field provides actionable recovery hints.\n */\nexport interface BrepError {\n readonly kind: BrepErrorKind;\n readonly code: string;\n readonly message: string;\n readonly suggestion?: string;\n readonly cause?: unknown;\n readonly metadata?: Readonly<Record<string, unknown>>;\n}\n\n// ---------------------------------------------------------------------------\n// Constructors per kind\n// ---------------------------------------------------------------------------\n\nfunction makeError(\n kind: BrepErrorKind,\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n const base: BrepError = { kind, code, message, cause };\n if (suggestion) {\n const withSuggestion = { ...base, suggestion };\n if (metadata) return { ...withSuggestion, metadata };\n return withSuggestion;\n }\n if (metadata) return { ...base, metadata };\n return base;\n}\n\n/** Create an error for a failed kernel kernel operation.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function kernelError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('KERNEL_OPERATION', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for invalid input parameters.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function validationError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('VALIDATION', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for a failed shape type cast or conversion.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function typeCastError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('TYPE_CAST', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for an invalid sketcher state transition.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function sketcherStateError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('SKETCHER_STATE', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for a module initialisation failure.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function moduleInitError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('MODULE_INIT', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for a failed geometric computation.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function computationError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('COMPUTATION', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for a file import/export failure.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function ioError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('IO', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for a shape query failure (e.g. finder not unique).\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function queryError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('QUERY', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for a capability not supported by the current kernel (ADR-0006 Phase 4).\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function unsupportedError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('UNSUPPORTED', code, message, cause, metadata, suggestion);\n}\n\n// Re-export from kernelErrorTranslation for backward compatibility\nexport { translateKernelError, getSuggestionForCode } from './kernelErrorTranslation';\n\n// ---------------------------------------------------------------------------\n// Array safety helper\n// ---------------------------------------------------------------------------\n\n/**\n * Safe array index access that throws a descriptive {@link BrepBugError} instead\n * of returning `undefined` when the index is out of bounds.\n *\n * Use in place of `arr[i]!` when the caller can prove the index is valid by\n * construction but TypeScript's `noUncheckedIndexedAccess` still requires a guard.\n *\n * @param arr - The array to index into.\n * @param index - The index to access.\n * @param context - Optional caller context for the error message (e.g. function name).\n * @returns The array element at `index`.\n */\nexport function safeIndex<T>(arr: readonly T[], index: number, context?: string): T {\n if (index < 0 || index >= arr.length) {\n bug(context ?? 'safeIndex', `Index ${index} is out of bounds (array length ${arr.length})`);\n }\n return wasmIndex(arr, index);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/result/errors.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Domain error types and constructors(第一方模块)。\n *\n * 2026-09-25 core-decouple Phase 1:复制自 brepjs `src/core/errors.ts`\n * (同源复制,签名不变);import 来源改为 core 第一方 `result/` 内模块。\n * Re-exports bug/BrepBugError(Layer 0)for convenience.\n */\n\nimport { bug, BrepBugError } from './bug';\nimport { wasmIndex } from './vec3';\nexport { bug, BrepBugError };\n\n// ---------------------------------------------------------------------------\n// Error kinds\n// ---------------------------------------------------------------------------\n\n/** High-level category for a BREP error. */\nexport type BrepErrorKind =\n | 'KERNEL_OPERATION'\n | 'VALIDATION'\n | 'TYPE_CAST'\n | 'SKETCHER_STATE'\n | 'MODULE_INIT'\n | 'COMPUTATION'\n | 'IO'\n | 'QUERY'\n | 'UNSUPPORTED';\n\n// ---------------------------------------------------------------------------\n// Error codes — typed constants for all known error code strings\n// ---------------------------------------------------------------------------\n\n/**\n * Typed string constants for all known BREP error codes, grouped by category.\n *\n * Use these instead of raw strings so that typos are caught at compile time.\n */\nexport const BrepErrorCode = {\n // kernel operation errors\n BSPLINE_FAILED: 'BSPLINE_FAILED',\n FACE_BUILD_FAILED: 'FACE_BUILD_FAILED',\n WIRE_BUILD_FAILED: 'WIRE_BUILD_FAILED',\n SWEEP_FAILED: 'SWEEP_FAILED',\n LOFT_FAILED: 'LOFT_FAILED',\n FUSE_FAILED: 'FUSE_FAILED',\n CUT_FAILED: 'CUT_FAILED',\n HEAL_NO_EFFECT: 'HEAL_NO_EFFECT',\n BOOLEAN_HAS_ERRORS: 'BOOLEAN_HAS_ERRORS',\n VARIABLE_FILLET_FAILED: 'VARIABLE_FILLET_FAILED',\n POSITION_ON_CURVE_FAILED: 'POSITION_ON_CURVE_FAILED',\n FIX_SHAPE_FAILED: 'FIX_SHAPE_FAILED',\n SOLID_FROM_SHELL_FAILED: 'SOLID_FROM_SHELL_FAILED',\n FIX_SELF_INTERSECTION_FAILED: 'FIX_SELF_INTERSECTION_FAILED',\n MESH_FAILED: 'MESH_FAILED',\n\n // Validation errors\n ELLIPSE_RADII: 'ELLIPSE_RADII',\n FUSE_ALL_EMPTY: 'FUSE_ALL_EMPTY',\n FILLET_NO_EDGES: 'FILLET_NO_EDGES',\n CHAMFER_NO_EDGES: 'CHAMFER_NO_EDGES',\n CHAMFER_ANGLE_NO_EDGES: 'CHAMFER_ANGLE_NO_EDGES',\n CHAMFER_ANGLE_BAD_DISTANCE: 'CHAMFER_ANGLE_BAD_DISTANCE',\n CHAMFER_ANGLE_BAD_ANGLE: 'CHAMFER_ANGLE_BAD_ANGLE',\n BEZIER_MIN_POINTS: 'BEZIER_MIN_POINTS',\n POLYGON_MIN_POINTS: 'POLYGON_MIN_POINTS',\n WIRE_NOT_CLOSED: 'WIRE_NOT_CLOSED',\n FACE_NOT_PLANAR: 'FACE_NOT_PLANAR',\n ZERO_LENGTH_EXTRUSION: 'ZERO_LENGTH_EXTRUSION',\n ZERO_TWIST_ANGLE: 'ZERO_TWIST_ANGLE',\n LOFT_EMPTY: 'LOFT_EMPTY',\n UNSUPPORTED_PROFILE: 'UNSUPPORTED_PROFILE',\n UNKNOWN_PLANE: 'UNKNOWN_PLANE',\n NULL_SHAPE_INPUT: 'NULL_SHAPE_INPUT',\n INVALID_FILLET_RADIUS: 'INVALID_FILLET_RADIUS',\n INVALID_CHAMFER_DISTANCE: 'INVALID_CHAMFER_DISTANCE',\n INVALID_THICKNESS: 'INVALID_THICKNESS',\n ZERO_OFFSET: 'ZERO_OFFSET',\n NO_EDGES: 'NO_EDGES',\n NO_FACES: 'NO_FACES',\n DRAFT_NO_FACES: 'DRAFT_NO_FACES',\n DRAFT_INVALID_ANGLE: 'DRAFT_INVALID_ANGLE',\n DRAFT_NOT_3D: 'DRAFT_NOT_3D',\n DRAFT_FAILED: 'DRAFT_FAILED',\n\n // Type cast errors\n FUSE_NOT_3D: 'FUSE_NOT_3D',\n CUT_NOT_3D: 'CUT_NOT_3D',\n INTERSECT_NOT_3D: 'INTERSECT_NOT_3D',\n FUSE_ALL_NOT_3D: 'FUSE_ALL_NOT_3D',\n CUT_ALL_NOT_3D: 'CUT_ALL_NOT_3D',\n LOFT_NOT_3D: 'LOFT_NOT_3D',\n SWEEP_NOT_3D: 'SWEEP_NOT_3D',\n REVOLUTION_NOT_3D: 'REVOLUTION_NOT_3D',\n FILLET_NOT_3D: 'FILLET_NOT_3D',\n CHAMFER_NOT_3D: 'CHAMFER_NOT_3D',\n CHAMFER_ANGLE_NOT_3D: 'CHAMFER_ANGLE_NOT_3D',\n CHAMFER_ANGLE_FAILED: 'CHAMFER_ANGLE_FAILED',\n CSG_NOT_3D: 'CSG_NOT_3D',\n SHELL_NOT_3D: 'SHELL_NOT_3D',\n OFFSET_NOT_3D: 'OFFSET_NOT_3D',\n NULL_SHAPE: 'NULL_SHAPE',\n NO_WRAPPER: 'NO_WRAPPER',\n WELD_NOT_SHELL: 'WELD_NOT_SHELL',\n SOLID_BUILD_FAILED: 'SOLID_BUILD_FAILED',\n OFFSET_NOT_WIRE: 'OFFSET_NOT_WIRE',\n UNKNOWN_SURFACE_TYPE: 'UNKNOWN_SURFACE_TYPE',\n UNKNOWN_CURVE_TYPE: 'UNKNOWN_CURVE_TYPE',\n SWEEP_START_NOT_WIRE: 'SWEEP_START_NOT_WIRE',\n SWEEP_END_NOT_WIRE: 'SWEEP_END_NOT_WIRE',\n\n // IO errors\n STEP_EXPORT_FAILED: 'STEP_EXPORT_FAILED',\n STEP_EXPORT_CONFIGURED_FAILED: 'STEP_EXPORT_CONFIGURED_FAILED',\n STEP_FILE_READ_ERROR: 'STEP_FILE_READ_ERROR',\n STEP_EXPORT_CRASHED: 'STEP_EXPORT_CRASHED',\n STEP_EXPORT_UNSERIALIZABLE: 'STEP_EXPORT_UNSERIALIZABLE',\n STL_EXPORT_FAILED: 'STL_EXPORT_FAILED',\n STL_FILE_READ_ERROR: 'STL_FILE_READ_ERROR',\n STL_EXPORT_CRASHED: 'STL_EXPORT_CRASHED',\n STL_EXPORT_UNSERIALIZABLE: 'STL_EXPORT_UNSERIALIZABLE',\n STEP_IMPORT_FAILED: 'STEP_IMPORT_FAILED',\n STL_IMPORT_FAILED: 'STL_IMPORT_FAILED',\n IGES_EXPORT_FAILED: 'IGES_EXPORT_FAILED',\n IGES_IMPORT_FAILED: 'IGES_IMPORT_FAILED',\n DXF_IMPORT_FAILED: 'DXF_IMPORT_FAILED',\n OBJ_IMPORT_FAILED: 'OBJ_IMPORT_FAILED',\n THREEMF_IMPORT_FAILED: 'THREEMF_IMPORT_FAILED',\n\n // Computation errors\n PARAMETER_NOT_FOUND: 'PARAMETER_NOT_FOUND',\n INTERSECTION_FAILED: 'INTERSECTION_FAILED',\n SELF_INTERSECTION_FAILED: 'SELF_INTERSECTION_FAILED',\n STRAIGHT_SKELETON_FAILED: 'STRAIGHT_SKELETON_FAILED',\n CENTER_OF_MASS_FAILED: 'CENTER_OF_MASS_FAILED',\n\n // Compound operation errors\n COMPOUND_NO_FACES: 'COMPOUND_NO_FACES',\n COMPOUND_FACE_NOT_FOUND: 'COMPOUND_FACE_NOT_FOUND',\n\n // Query errors\n FINDER_NOT_UNIQUE: 'FINDER_NOT_UNIQUE',\n\n // Hull errors\n HULL_EMPTY_INPUT: 'HULL_EMPTY_INPUT',\n HULL_FAILED: 'HULL_FAILED',\n HULL_DEGENERATE: 'HULL_DEGENERATE',\n HULL_NOT_3D: 'HULL_NOT_3D',\n\n // Minkowski errors\n MINKOWSKI_FAILED: 'MINKOWSKI_FAILED',\n MINKOWSKI_NULL_TOOL: 'MINKOWSKI_NULL_TOOL',\n MINKOWSKI_NOT_3D: 'MINKOWSKI_NOT_3D',\n\n // Polyhedron errors\n POLYHEDRON_INSUFFICIENT_POINTS: 'POLYHEDRON_INSUFFICIENT_POINTS',\n POLYHEDRON_INSUFFICIENT_FACES: 'POLYHEDRON_INSUFFICIENT_FACES',\n POLYHEDRON_INVALID_INDEX: 'POLYHEDRON_INVALID_INDEX',\n POLYHEDRON_FAILED: 'POLYHEDRON_FAILED',\n\n // General validation errors\n VALIDATION_FAILED: 'VALIDATION_FAILED',\n\n // Roof errors\n ROOF_FAILED: 'ROOF_FAILED',\n\n // Multi-section sweep errors\n MULTI_SWEEP_INSUFFICIENT_SECTIONS: 'MULTI_SWEEP_INSUFFICIENT_SECTIONS',\n MULTI_SWEEP_FAILED: 'MULTI_SWEEP_FAILED',\n\n // Guide curve sweep errors\n GUIDED_SWEEP_FAILED: 'GUIDED_SWEEP_FAILED',\n\n // Surface errors\n SURFACE_GRID_TOO_SMALL: 'SURFACE_GRID_TOO_SMALL',\n SURFACE_GRID_JAGGED: 'SURFACE_GRID_JAGGED',\n SURFACE_FAILED: 'SURFACE_FAILED',\n\n // Assembly mate errors\n ASSEMBLY_MATE_INVALID: 'ASSEMBLY_MATE_INVALID',\n ASSEMBLY_SOLVE_FAILED: 'ASSEMBLY_SOLVE_FAILED',\n ASSEMBLY_NOT_CONVERGED: 'ASSEMBLY_NOT_CONVERGED',\n\n // Blueprint / CompoundBlueprint errors\n BLUEPRINT_EMPTY_CURVES: 'BLUEPRINT_EMPTY_CURVES',\n COMPOUND_BLUEPRINT_EMPTY: 'COMPOUND_BLUEPRINT_EMPTY',\n\n // GLB/glTF import errors\n GLB_IMPORT_FAILED: 'GLB_IMPORT_FAILED',\n\n // Font/text errors\n FONT_FETCH_FAILED: 'FONT_FETCH_FAILED',\n FONT_PARSE_FAILED: 'FONT_PARSE_FAILED',\n NO_FONT_LOADED: 'NO_FONT_LOADED',\n\n // 2D curve geometry errors\n CURVE2D_CONSTRUCTION_FAILED: 'CURVE2D_CONSTRUCTION_FAILED',\n CURVE2D_INVALID_RADIUS: 'CURVE2D_INVALID_RADIUS',\n CURVE2D_TRANSFORM_FAILED: 'CURVE2D_TRANSFORM_FAILED',\n CURVE2D_QUERY_FAILED: 'CURVE2D_QUERY_FAILED',\n CURVE2D_INTERSECTION_FAILED: 'CURVE2D_INTERSECTION_FAILED',\n CURVE2D_BRIDGE_FAILED: 'CURVE2D_BRIDGE_FAILED',\n\n // Shape identity errors\n CLONE_FAILED: 'CLONE_FAILED',\n SIMPLIFY_FAILED: 'SIMPLIFY_FAILED',\n TO_BREP_FAILED: 'TO_BREP_FAILED',\n\n // Unsupported capability errors (ADR-0006 Phase 4)\n UNSUPPORTED_CAPABILITY: 'UNSUPPORTED_CAPABILITY',\n} as const;\n\n/** Union of all known error code string literals. */\nexport type BrepErrorCode = (typeof BrepErrorCode)[keyof typeof BrepErrorCode];\n\n// ---------------------------------------------------------------------------\n// Error interface\n// ---------------------------------------------------------------------------\n\n/**\n * Structured error returned inside `Result<T>` on failure.\n *\n * Every error carries a `kind` (category), a machine-readable `code`,\n * and a human-readable `message`. Optional `cause` preserves the\n * original exception, and `metadata` holds extra context.\n *\n * The optional `suggestion` field provides actionable recovery hints.\n */\nexport interface BrepError {\n readonly kind: BrepErrorKind;\n readonly code: string;\n readonly message: string;\n readonly suggestion?: string;\n readonly cause?: unknown;\n readonly metadata?: Readonly<Record<string, unknown>>;\n}\n\n// ---------------------------------------------------------------------------\n// Constructors per kind\n// ---------------------------------------------------------------------------\n\nfunction makeError(\n kind: BrepErrorKind,\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n const base: BrepError = { kind, code, message, cause };\n if (suggestion) {\n const withSuggestion = { ...base, suggestion };\n if (metadata) return { ...withSuggestion, metadata };\n return withSuggestion;\n }\n if (metadata) return { ...base, metadata };\n return base;\n}\n\n/** Create an error for a failed kernel kernel operation.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function kernelError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('KERNEL_OPERATION', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for invalid input parameters.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function validationError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('VALIDATION', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for a failed shape type cast or conversion.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function typeCastError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('TYPE_CAST', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for an invalid sketcher state transition.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function sketcherStateError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('SKETCHER_STATE', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for a module initialisation failure.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function moduleInitError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('MODULE_INIT', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for a failed geometric computation.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function computationError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('COMPUTATION', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for a file import/export failure.\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function ioError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('IO', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for a shape query failure (e.g. finder not unique).\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function queryError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('QUERY', code, message, cause, metadata, suggestion);\n}\n\n/** Create an error for a capability not supported by the current kernel (ADR-0006 Phase 4).\n *\n * @param code - Error code identifying the failure.\n * @param message - Human-readable error message.\n * @param cause - Optional underlying cause of the error.\n * @param metadata - Optional structured metadata attached to the error.\n * @param suggestion - Optional actionable suggestion for resolving the error.\n * @returns The constructed {@link BrepError}.\n */\nexport function unsupportedError(\n code: string,\n message: string,\n cause?: unknown,\n metadata?: Record<string, unknown>,\n suggestion?: string\n): BrepError {\n return makeError('UNSUPPORTED', code, message, cause, metadata, suggestion);\n}\n\n// Re-export from kernelErrorTranslation for backward compatibility\nexport { translateKernelError, getSuggestionForCode } from './kernelErrorTranslation';\n\n// ---------------------------------------------------------------------------\n// Array safety helper\n// ---------------------------------------------------------------------------\n\n/**\n * Safe array index access that throws a descriptive {@link BrepBugError} instead\n * of returning `undefined` when the index is out of bounds.\n *\n * Use in place of `arr[i]!` when the caller can prove the index is valid by\n * construction but TypeScript's `noUncheckedIndexedAccess` still requires a guard.\n *\n * @param arr - The array to index into.\n * @param index - The index to access.\n * @param context - Optional caller context for the error message (e.g. function name).\n * @returns The array element at `index`.\n */\nexport function safeIndex<T>(arr: readonly T[], index: number, context?: string): T {\n if (index < 0 || index >= arr.length) {\n bug(context ?? 'safeIndex', `Index ${index} is out of bounds (array length ${arr.length})`);\n }\n return wasmIndex(arr, index);\n}\n"]}
|
package/dist/result/vec3.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* 第一方模块(2026-09-25 core-decouple Phase 1):`wasmIndex` 复制自 brepjs
|
|
3
3
|
* `src/utils/vec3.ts`(同源复制,仅提取 errors.ts 依赖的最小符号)。
|
|
4
4
|
*/
|
|
5
|
-
/** Safe typed array index access
|
|
5
|
+
/** Safe typed array index access(原 brepjs 语义:`arr[i] as T`)。
|
|
6
6
|
*
|
|
7
7
|
* @param arr - The array to index into.
|
|
8
8
|
* @param i - The index to access.
|
package/dist/result/vec3.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* 第一方模块(2026-09-25 core-decouple Phase 1):`wasmIndex` 复制自 brepjs
|
|
3
3
|
* `src/utils/vec3.ts`(同源复制,仅提取 errors.ts 依赖的最小符号)。
|
|
4
4
|
*/
|
|
5
|
-
/** Safe typed array index access
|
|
5
|
+
/** Safe typed array index access(原 brepjs 语义:`arr[i] as T`)。
|
|
6
6
|
*
|
|
7
7
|
* @param arr - The array to index into.
|
|
8
8
|
* @param i - The index to access.
|
package/dist/result/vec3.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vec3.js","sourceRoot":"","sources":["../../src/result/vec3.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAI,GAAiB,EAAE,CAAS;IACvD,OAAO,GAAG,CAAC,CAAC,CAAM,CAAC;AACrB,CAAC","sourcesContent":["/**\n * 第一方模块(2026-09-25 core-decouple Phase 1):`wasmIndex` 复制自 brepjs\n * `src/utils/vec3.ts`(同源复制,仅提取 errors.ts 依赖的最小符号)。\n */\n\n/** Safe typed array index access
|
|
1
|
+
{"version":3,"file":"vec3.js","sourceRoot":"","sources":["../../src/result/vec3.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAI,GAAiB,EAAE,CAAS;IACvD,OAAO,GAAG,CAAC,CAAC,CAAM,CAAC;AACrB,CAAC","sourcesContent":["/**\n * 第一方模块(2026-09-25 core-decouple Phase 1):`wasmIndex` 复制自 brepjs\n * `src/utils/vec3.ts`(同源复制,仅提取 errors.ts 依赖的最小符号)。\n */\n\n/** Safe typed array index access(原 brepjs 语义:`arr[i] as T`)。\n *\n * @param arr - The array to index into.\n * @param i - The index to access.\n * @returns The element at index `i`.\n */\nexport function wasmIndex<T>(arr: ArrayLike<T>, i: number): T {\n return arr[i] as T;\n}\n"]}
|
package/dist/runtime-state.d.ts
CHANGED
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
* ⚠️ 依赖方向红线:本文件不得 import 任何 src/ 下的模块(只可 import type)。
|
|
15
15
|
*/
|
|
16
16
|
import type { PartName, StmtId } from './identity.js';
|
|
17
|
+
import type { ImportModel } from './mesh/import-model.js';
|
|
17
18
|
/**
|
|
18
19
|
* Lightweight execution anchor — carries only the fields consumed by
|
|
19
20
|
* library functions via getCurrentStmt(): `id` (StmtId), `outputs` (PartName[]),
|
|
@@ -35,6 +36,18 @@ export interface ExecutionAnchor {
|
|
|
35
36
|
* (2026-09-22 核实:无独立守卫测试。)
|
|
36
37
|
*/
|
|
37
38
|
export type RuntimeExecutionMode = 'auto' | 'brep' | 'mesh';
|
|
39
|
+
/**
|
|
40
|
+
* 宿主环境(与 src/cad-runtime/ports.ts 的 `HostEnv` 保持一致)。
|
|
41
|
+
*
|
|
42
|
+
* 重复定义的理由与 `RuntimeExecutionMode` 相同:本模块零依赖。一致性由
|
|
43
|
+
* `cad-runtime/runtime.ts` 的 `get hostEnv() { return portsOf().hostEnv }`
|
|
44
|
+
* 在编译期间接钉住——只给一侧加成员而另一侧不加 → 该行 tsc 报错。
|
|
45
|
+
*
|
|
46
|
+
* 用途:导出命令(`cad.exportStl` / `cad.exportBrep`)只在 `'node'` 宿主开放,
|
|
47
|
+
* 其余值(含未声明)执行即报 `E_HOST_UNSUPPORTED`。判据是端口装配期声明的事实,
|
|
48
|
+
* 不做运行期环境探测。
|
|
49
|
+
*/
|
|
50
|
+
export type RuntimeHostEnv = 'node' | 'browser' | 'weapp';
|
|
38
51
|
/** 宿主注入的环境资源。字段类型用宽松结构,避免本模块依赖具体实现。 */
|
|
39
52
|
export interface Backends {
|
|
40
53
|
/** 契约版本(装配期校验,不兼容即抛错) */
|
|
@@ -42,38 +55,14 @@ export interface Backends {
|
|
|
42
55
|
/** 执行配置(可变对象,宿主可在运行期切换) */
|
|
43
56
|
readonly config: {
|
|
44
57
|
mode: RuntimeExecutionMode;
|
|
45
|
-
/** 当前 BREP 引擎 id(注册表首个注册者;未注册为 null
|
|
58
|
+
/** 当前 BREP 引擎 id(注册表首个注册者;未注册为 null)。静态判据(引擎身份)读。 */
|
|
46
59
|
brepEngineId?: string | null;
|
|
47
60
|
/**
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
* (`brep/engine/types.ts` 的 `BrepEvolutionKind`)。**不是**族级布尔——
|
|
52
|
-
* 族级布尔会多报能力、使静态判定失效(Phase 0.2)。
|
|
53
|
-
* 本模块须零依赖,故此处只写 `readonly string[]`;权威类型见
|
|
54
|
-
* `BrepCapabilities`,消费侧由 `backend-dispatch.engineCapabilitySet` 归一化。
|
|
61
|
+
* 宿主环境(端口装配期声明的事实;未声明 = undefined)。静态判据(导出命令的
|
|
62
|
+
* 宿主门,`api/internal/l3-bridge.ts#assertHostFor`)读;与执行模式 / 引擎身份
|
|
63
|
+
* 正交,不做运行期探测。
|
|
55
64
|
*/
|
|
56
|
-
|
|
57
|
-
evolution?: readonly string[];
|
|
58
|
-
/**
|
|
59
|
-
* 非演化内核方法名(D5):本引擎**实际提供**的 L1 中立方法名
|
|
60
|
-
* (`getBoundingBox` / `getVolume` / `getSurfaceArea` / `getLength` /
|
|
61
|
-
* `getCenterOfMass` 等)。2026-09-24 narrowing plan §2.4:与
|
|
62
|
-
* `backend-dispatch.EngineCapabilitiesLike` 对齐(该类型有 `methods`,
|
|
63
|
-
* 运行时配置镜像此前缺失——非字面量赋值不做 excess property 检查,
|
|
64
|
-
* `methods` 判定"能用但没被契约钉住")。
|
|
65
|
-
*/
|
|
66
|
-
methods?: readonly string[];
|
|
67
|
-
heal?: boolean;
|
|
68
|
-
directEdit?: boolean;
|
|
69
|
-
advSurface?: boolean;
|
|
70
|
-
assembly?: boolean;
|
|
71
|
-
meshLift?: boolean;
|
|
72
|
-
};
|
|
73
|
-
partTransform?: {
|
|
74
|
-
position: [number, number, number];
|
|
75
|
-
scale?: [number, number, number];
|
|
76
|
-
};
|
|
65
|
+
hostEnv?: RuntimeHostEnv;
|
|
77
66
|
};
|
|
78
67
|
/** 几何后端。brep 引擎异步初始化 → 用 getter。 */
|
|
79
68
|
readonly kernel: {
|
|
@@ -151,6 +140,27 @@ export declare class MeshUnsupportedError extends Error {
|
|
|
151
140
|
readonly stmt?: ExecutionAnchor;
|
|
152
141
|
constructor(message: string, stmt?: ExecutionAnchor);
|
|
153
142
|
}
|
|
143
|
+
/**
|
|
144
|
+
* 宿主环境不支持错误——导出命令只在 node 宿主开放。
|
|
145
|
+
*
|
|
146
|
+
* 与 BrepUnsupportedError / MeshUnsupportedError 并列的第三类「执行前静态拒绝」:
|
|
147
|
+
* 由 API 侧的断言器(`api/internal/l3-bridge.ts#assertHostFor`)在实现体之前抛出,
|
|
148
|
+
* 不经 dispatchPath、不做运行期回退。CadRuntime 捕获后转换为
|
|
149
|
+
* ExecutionResult.failedAt,`failedAt.code` 取本类的 `code`。
|
|
150
|
+
*
|
|
151
|
+
* 定义在本层(零依赖)以便 L3 API 面与引擎共享同一类(instanceof 判定)。
|
|
152
|
+
*
|
|
153
|
+
* 判据是「脚本可由 AI 生成任意代码、属不受信输入」:导出把「往哪写、写几份、
|
|
154
|
+
* 写什么」的决定权交给脚本文本,浏览器 / 小程序里这种动作必须由宿主入口触发
|
|
155
|
+
* (用户点的按钮,或宿主自己调用的库面字节通道)。
|
|
156
|
+
*/
|
|
157
|
+
export declare class HostUnsupportedError extends Error {
|
|
158
|
+
/** 语句锚点(引擎在语句执行前设置,与兄弟错误类同构)。 */
|
|
159
|
+
readonly stmt?: ExecutionAnchor;
|
|
160
|
+
/** 稳定错误码(落进 ExecutionResult.failedAt.code,供宿主程序化区分错误种类)。 */
|
|
161
|
+
readonly code = "E_HOST_UNSUPPORTED";
|
|
162
|
+
constructor(message: string, stmt?: ExecutionAnchor);
|
|
163
|
+
}
|
|
154
164
|
/**
|
|
155
165
|
* The global runtime state singleton: backend configuration, the currently
|
|
156
166
|
* executing statement, and the Shape identity tables (constructor registry,
|
|
@@ -170,6 +180,8 @@ export interface FaijsRuntimeState {
|
|
|
170
180
|
readonly shapeToName: WeakMap<object, PartName>;
|
|
171
181
|
/** 同语句 lineage 去重标记(define-op 写入;语句边界 setCurrentStmt 重置)。 */
|
|
172
182
|
registeredStmtId: StmtId | undefined;
|
|
183
|
+
/** 宿主配置的全局三角化密度(createRuntime 写入;未配置为 undefined)。 */
|
|
184
|
+
tessellation: TessellationDensity | undefined;
|
|
173
185
|
}
|
|
174
186
|
/** 进入函数 BREP 域(DirectExecutor 执行 local 语句 fn 之前调用)。 */
|
|
175
187
|
export declare function enterFunctionBrep(): void;
|
|
@@ -279,6 +291,29 @@ export declare function takePendingAssemblyKinematics(): Array<{
|
|
|
279
291
|
* @returns the shared global runtime state singleton.
|
|
280
292
|
*/
|
|
281
293
|
export declare function getRuntimeState(): FaijsRuntimeState;
|
|
294
|
+
/**
|
|
295
|
+
* Host-tunable tessellation density for BREP triangulation defaults.
|
|
296
|
+
* Maps to OpenSCAD $fa (angularDeflection, radians) / $fs (linearDeflection, mm).
|
|
297
|
+
*/
|
|
298
|
+
export interface TessellationDensity {
|
|
299
|
+
/** Angular deflection in radians (OpenSCAD $fa converted to rad). Default 2π/64. */
|
|
300
|
+
angularDeflection?: number;
|
|
301
|
+
/** Linear deflection in mm (OpenSCAD $fs). Default 0.1. */
|
|
302
|
+
linearDeflection?: number;
|
|
303
|
+
}
|
|
304
|
+
/**
|
|
305
|
+
* Read the host-configured tessellation density (missing fields fall back to
|
|
306
|
+
* the built-in defaults: 2π/64 rad angular, 0.1 mm linear). Pure read — no
|
|
307
|
+
* throw when unset (unlike getBackends, density is an optional tuning knob).
|
|
308
|
+
* @returns the effective density with both fields filled (never undefined).
|
|
309
|
+
*/
|
|
310
|
+
export declare function getTessellation(): Required<TessellationDensity>;
|
|
311
|
+
/**
|
|
312
|
+
* Host/runtime sets the global tessellation density at construction time.
|
|
313
|
+
* Values must be positive; a mis-set knob is a host bug and must surface here.
|
|
314
|
+
* @param tessellation - the density to set; undefined fields keep the built-in default.
|
|
315
|
+
*/
|
|
316
|
+
export declare function configureTessellation(tessellation: TessellationDensity): void;
|
|
282
317
|
/**
|
|
283
318
|
* 宿主在启动时调用一次,注入环境资源。
|
|
284
319
|
*
|
|
@@ -388,6 +423,21 @@ export declare function setPendingMultiPartCount(partName: PartName, partCount:
|
|
|
388
423
|
* @returns a fresh Map of part name → part count, copied from the pending store.
|
|
389
424
|
*/
|
|
390
425
|
export declare function takePendingMultiPartCounts(): MultiPartCounts;
|
|
426
|
+
/**
|
|
427
|
+
* Register a part's import model (called from the load op body; the geometry
|
|
428
|
+
* lives in the returned Shape / CompoundShape.children, this is structure only).
|
|
429
|
+
*
|
|
430
|
+
* @param partName - the variable name the loaded shape will be bound to.
|
|
431
|
+
* @param model - the import model (parts + optional assembly / bambu views).
|
|
432
|
+
*/
|
|
433
|
+
export declare function setPendingImportModel(partName: PartName, model: ImportModel): void;
|
|
434
|
+
/**
|
|
435
|
+
* Take all pending import models and clear them (engine, after each statement;
|
|
436
|
+
* consumed exactly once).
|
|
437
|
+
*
|
|
438
|
+
* @returns a fresh Map of part name → import model, copied from the pending store.
|
|
439
|
+
*/
|
|
440
|
+
export declare function takePendingImportModels(): Map<PartName, ImportModel>;
|
|
391
441
|
/**
|
|
392
442
|
* 登记某 part 的网格实体句柄(load op 调用;由引擎在语句执行后收编)。
|
|
393
443
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-state.d.ts","sourceRoot":"","sources":["../src/runtime-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"runtime-state.d.ts","sourceRoot":"","sources":["../src/runtime-state.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime-state.js
CHANGED
|
@@ -68,6 +68,31 @@ export class MeshUnsupportedError extends Error {
|
|
|
68
68
|
this.stmt = stmt;
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* 宿主环境不支持错误——导出命令只在 node 宿主开放。
|
|
73
|
+
*
|
|
74
|
+
* 与 BrepUnsupportedError / MeshUnsupportedError 并列的第三类「执行前静态拒绝」:
|
|
75
|
+
* 由 API 侧的断言器(`api/internal/l3-bridge.ts#assertHostFor`)在实现体之前抛出,
|
|
76
|
+
* 不经 dispatchPath、不做运行期回退。CadRuntime 捕获后转换为
|
|
77
|
+
* ExecutionResult.failedAt,`failedAt.code` 取本类的 `code`。
|
|
78
|
+
*
|
|
79
|
+
* 定义在本层(零依赖)以便 L3 API 面与引擎共享同一类(instanceof 判定)。
|
|
80
|
+
*
|
|
81
|
+
* 判据是「脚本可由 AI 生成任意代码、属不受信输入」:导出把「往哪写、写几份、
|
|
82
|
+
* 写什么」的决定权交给脚本文本,浏览器 / 小程序里这种动作必须由宿主入口触发
|
|
83
|
+
* (用户点的按钮,或宿主自己调用的库面字节通道)。
|
|
84
|
+
*/
|
|
85
|
+
export class HostUnsupportedError extends Error {
|
|
86
|
+
/** 语句锚点(引擎在语句执行前设置,与兄弟错误类同构)。 */
|
|
87
|
+
stmt;
|
|
88
|
+
/** 稳定错误码(落进 ExecutionResult.failedAt.code,供宿主程序化区分错误种类)。 */
|
|
89
|
+
code = 'E_HOST_UNSUPPORTED';
|
|
90
|
+
constructor(message, stmt) {
|
|
91
|
+
super(message);
|
|
92
|
+
this.name = 'HostUnsupportedError';
|
|
93
|
+
this.stmt = stmt;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
71
96
|
// ── 函数 BREP 域(控制流放松方案 §5.6 / D13) ──
|
|
72
97
|
// 本机函数体内的瞬态 BREP 句柄:进入函数时开启登记域,op 输出句柄写入时经
|
|
73
98
|
// registerFunctionBrep 登记;函数返回后引擎取走域、释放除返回值可到达句柄外的全部
|
|
@@ -198,10 +223,42 @@ export function getRuntimeState() {
|
|
|
198
223
|
slots: new WeakMap(),
|
|
199
224
|
shapeToName: new WeakMap(),
|
|
200
225
|
registeredStmtId: undefined,
|
|
226
|
+
tessellation: undefined,
|
|
201
227
|
};
|
|
202
228
|
g[KEY] = created;
|
|
203
229
|
return created;
|
|
204
230
|
}
|
|
231
|
+
const DEFAULT_TESSELLATION_ANGULAR = (2 * Math.PI) / 64;
|
|
232
|
+
// Inlined 0.1 mm default — this file must not import src modules (zero-dep layer);
|
|
233
|
+
// mirrors DEFAULT_LINEAR_DEFLECTION (tolerance.ts).
|
|
234
|
+
const DEFAULT_TESSELLATION_LINEAR_MM = 0.1;
|
|
235
|
+
/**
|
|
236
|
+
* Read the host-configured tessellation density (missing fields fall back to
|
|
237
|
+
* the built-in defaults: 2π/64 rad angular, 0.1 mm linear). Pure read — no
|
|
238
|
+
* throw when unset (unlike getBackends, density is an optional tuning knob).
|
|
239
|
+
* @returns the effective density with both fields filled (never undefined).
|
|
240
|
+
*/
|
|
241
|
+
export function getTessellation() {
|
|
242
|
+
const t = getRuntimeState().tessellation;
|
|
243
|
+
return {
|
|
244
|
+
angularDeflection: t?.angularDeflection ?? DEFAULT_TESSELLATION_ANGULAR,
|
|
245
|
+
linearDeflection: t?.linearDeflection ?? DEFAULT_TESSELLATION_LINEAR_MM,
|
|
246
|
+
};
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Host/runtime sets the global tessellation density at construction time.
|
|
250
|
+
* Values must be positive; a mis-set knob is a host bug and must surface here.
|
|
251
|
+
* @param tessellation - the density to set; undefined fields keep the built-in default.
|
|
252
|
+
*/
|
|
253
|
+
export function configureTessellation(tessellation) {
|
|
254
|
+
if (tessellation.angularDeflection !== undefined && !(tessellation.angularDeflection > 0)) {
|
|
255
|
+
throw new Error('[faijs] tessellation.angularDeflection must be > 0');
|
|
256
|
+
}
|
|
257
|
+
if (tessellation.linearDeflection !== undefined && !(tessellation.linearDeflection > 0)) {
|
|
258
|
+
throw new Error('[faijs] tessellation.linearDeflection must be > 0');
|
|
259
|
+
}
|
|
260
|
+
getRuntimeState().tessellation = { ...tessellation };
|
|
261
|
+
}
|
|
205
262
|
// ── 后端配置读写 ──
|
|
206
263
|
/**
|
|
207
264
|
* 宿主在启动时调用一次,注入环境资源。
|
|
@@ -366,6 +423,33 @@ export function takePendingMultiPartCounts() {
|
|
|
366
423
|
pendingMultiPartCounts.clear();
|
|
367
424
|
return out;
|
|
368
425
|
}
|
|
426
|
+
// ── 导入模型结构登记(方案 2026-10-06-step-3mf-multipart-import-plan.md §5.5)──
|
|
427
|
+
// 与 pendingDetectedUnits 同模式:`cad.load` op 在解析文件后把 ImportModel(零件
|
|
428
|
+
// 身份表 + 装配层级 + Bambu 视图)登记到这里;引擎在语句执行后取走并按 part 名
|
|
429
|
+
// 放进 ExecutionResult.importModels(宿主据此批量建 part / 消费装配结构)。单/多
|
|
430
|
+
// 零件均登记(单零件 parts 长度 1),宿主有统一消费入口,不必分叉。
|
|
431
|
+
const pendingImportModels = new Map();
|
|
432
|
+
/**
|
|
433
|
+
* Register a part's import model (called from the load op body; the geometry
|
|
434
|
+
* lives in the returned Shape / CompoundShape.children, this is structure only).
|
|
435
|
+
*
|
|
436
|
+
* @param partName - the variable name the loaded shape will be bound to.
|
|
437
|
+
* @param model - the import model (parts + optional assembly / bambu views).
|
|
438
|
+
*/
|
|
439
|
+
export function setPendingImportModel(partName, model) {
|
|
440
|
+
pendingImportModels.set(partName, model);
|
|
441
|
+
}
|
|
442
|
+
/**
|
|
443
|
+
* Take all pending import models and clear them (engine, after each statement;
|
|
444
|
+
* consumed exactly once).
|
|
445
|
+
*
|
|
446
|
+
* @returns a fresh Map of part name → import model, copied from the pending store.
|
|
447
|
+
*/
|
|
448
|
+
export function takePendingImportModels() {
|
|
449
|
+
const out = new Map(pendingImportModels);
|
|
450
|
+
pendingImportModels.clear();
|
|
451
|
+
return out;
|
|
452
|
+
}
|
|
369
453
|
// ── 网格实体登记(方案 2026-10-01 §3.3:load 的 mesh 路径产出网格实体 + 近似拓扑)──
|
|
370
454
|
// 与 pendingDetectedUnits 同模式:load op(在 @faicad/faijs-extra)不能直接持有
|
|
371
455
|
// CadRuntime 实例,故把"规范化得到的句柄"与"近似拓扑数据"登记到这里,引擎在语句
|