diff --git a/docs/blog/2026-01-21-release-v1-rc0.md b/docs/blog/2026-01-21-release-v1-rc0.md new file mode 100644 index 000000000..7aea9e7ed --- /dev/null +++ b/docs/blog/2026-01-21-release-v1-rc0.md @@ -0,0 +1,81 @@ +--- +slug: bitbybit-v1-release-candidate-0 +title: "Bitbybit v1.0.0 Release Candidate 0 - A New Foundation for 3D CAD on the Web" +authors: [ubarevicius] +tags: [bitbybit, cad, occt, release] +description: "After nearly 100 releases in the 0.x.x range, version 1.0.0 Release Candidate 0 is now available. This milestone brings a completely rebuilt core on top of native OCCT, significant performance improvements, and exciting new features." +--- + +![Bitbybit v1.0.0 Release Candidate](https://ik.imagekit.io/bitbybit/app/assets/blog/v1-rc0/bitbybit-dev-cad-v1-rc0-banner.webp "Bitbybit v1.0.0 Release Candidate") + +After nearly **100 releases** in the 0.x.x range, **version 1.0.0 Release Candidate 0** is now available. This is a huge milestone for Bitbybit and represents extensive engineering work to set the project on a solid foundation for years to come. + + + +## Why This Release Matters + +When Bitbybit was first built, it relied on **OpenCascade.js** as a bridge to access the powerful OCCT CAD kernel from JavaScript. It was an impressive project that was genuinely ahead of its time. However, its development has stalled and it's no longer actively maintained. A more sustainable path forward was needed. + +With v1.0.0, the Bitbybit core has been completely rebuilt **directly on top of the native [OCCT C++](https://github.com/Open-Cascade-SAS/OCCT) library**. This wasn't just a dependency swap—it was a fundamental rearchitecting of how Bitbybit interfaces with one of the world's most powerful open-source CAD kernels. The good news? The existing API remains almost entirely intact, so the vast majority of existing projects should continue working with minimal changes. + +## OCCT 8.0.0 at the Core + +This release doesn't just migrate to native OCCT - it adopts **version 8.0.0 Release Candidate 3**, the latest version of OpenCascade Technology. During extensive testing, this new version has proven to be remarkably stable. All unit tests pass, both open-source examples and proprietary commercial projects built for B2B customers continue to work without any apparent loss of functionality, and noticeable improvements in both performance and reliability have been observed across the board. + +This is a significant upgrade. OCCT 8.0.0 brings improvements to filleting, boolean operations, and many other core CAD algorithms that Bitbybit users rely on every day. + +![OCCT v8.0.0 Release Candidate 3](https://ik.imagekit.io/bitbybit/app/assets/blog/v1-rc0/occt-3d-8-release-candidate.webp "OCCT v8.0.0 Release Candidate 3") + +## What's New in This Release + +Beyond the core migration, this release is packed with new features and improvements. + +There are now **three different OCCT build architectures** to match your performance needs: a 32-bit build for compatibility accross all browsers and mobile devices, a 64-bit build for handling larger models, and a 64-bit multi-threaded build for maximum performance on complex operations. You can choose between these variants when scaffolding new projects with our NPX tool. + +Speaking of scaffolding, the `npx @bitbybit-dev/create-app` CLI now lets you select not just your preferred 3D engine (PlayCanvas, Three.js, or Babylon.js), but also which OCCT architecture variant you want to use: `32`, `64`, or `64-mt`. + +**New spiral algorithms** for wire creation have been added. The `createTaperedHelixWire`, `createHelixWireByTurns`, and `createFlatSpiralWire` methods open up new possibilities for springs, decorative elements, and architectural features. And for those who've been asking—yes, there's finally a proper **torus solid** primitive in OCCT. + +On the infrastructure side, a **new Bitbybit CDN** has been launched at `git-cdn.bitbybit.dev`. The migration away from JSDelivr was done for practical and reliability reasons, providing more control over asset delivery and ensuring consistent availability for production applications. + +The 3D engine dependencies have also been updated: **BabylonJS v8.46.2** and **PlayCanvas v2.15.1** are now included in the latest runners. + +## Breaking Changes to Be Aware Of + +While significant effort went into maintaining API compatibility, there are a few changes you'll need to address when migrating. + +The most notable one is that **edge indexing is now zero-based**. Previously, edge indices started at 1, which was an early design decision that didn't align with standard programming conventions. All projects that reference edges by index will need to be updated—just subtract 1 from your existing edge indices. + +If you're using OCCT through our high-level APIs—via `occt-worker` or the game engine-specific NPM packages like `@bitbybit-dev/threejs`, `@bitbybit-dev/babylonjs`, or `@bitbybit-dev/playcanvas`—you're unlikely to encounter any additional API changes beyond the edge indexing. + +However, if you've been using the `@bitbybit-dev/occt` layer directly and interacting with WASM builds at a lower level, you will encounter more significant API changes. Using the official exported API functions is strongly recommended, as this is the only surface guaranteed to remain stable across future versions. + +## Migration Should Be Smooth + +Version 1.0.0 has been running internally across various projects and customer deployments. The transition has been remarkably smooth. Most projects require nothing more than updating package versions and adjusting edge indices where applicable. + +If you do run into any issues during migration, please reach out on Discord or open an issue on GitHub. We are here to help make the transition as painless as possible. + +## What's Next? + +This is Release Candidate 0, which means the final stretch before the official 1.0.0 release has begun. This period is dedicated to gathering feedback, catching any edge cases that might have been missed, and ensuring everything is rock solid before the final release. + +Your feedback during this phase is incredibly valuable. If you try the RC and find something that doesn't work as expected, please let us know. Every bug report helps us ship a better 1.0.0. + +## Get Started + +Ready to try v1.0.0 RC0? Update your dependencies to the release candidate version: + +```bash +npm install @bitbybit-dev/core@rc @bitbybit-dev/occt@rc +``` + +Or scaffold a fresh project with the new architecture options using the `@rc` tag: + +```bash +npx @bitbybit-dev/create-app@rc my-v1-project +``` + +Thank you to everyone who has supported Bitbybit over these nearly 100 releases. This milestone wouldn't have been possible without the community's feedback, bug reports, and enthusiasm. Here's to the next chapter! + +Happy coding! diff --git a/docs/learn/code/common/occt/dimensions/angular-dimension.md b/docs/learn/code/common/occt/dimensions/angular-dimension.md index 670504380..e50d8a70c 100644 --- a/docs/learn/code/common/occt/dimensions/angular-dimension.md +++ b/docs/learn/code/common/occt/dimensions/angular-dimension.md @@ -39,7 +39,7 @@ Angular dimensions measure the angle between two direction vectors and display t direction1direction2centerdirection1100direction2011center000direction1direction2center20.30.11deg0.30.4FALSE","type":"blockly"}} + script={{"script":"direction1direction2centerdirection1100direction2011center000direction1direction2center20.30.11(deg)0.30.3FALSE'arrow'0.330FALSE0FALSEFALSE1*valFALSE","type":"blockly"}} title="Simple angular dimension between two directions" /> @@ -62,21 +62,21 @@ Angular dimensions are particularly useful for complex 3D geometry like cones, w conerotatedConeconeEdgetranslatedEdgestartPointendPointdirection1cone52.75360000010rotatedConecone010-90coneEdgerotatedCone2translatedEdgeconeEdge-100startPointtranslatedEdgeendPointtranslatedEdgedirection1endPointstartPointrotatedConedirection1-100startPoint7202(deg)0.40.6FALSE","type":"blockly"}} + script={{"script":"conerotatedConeconeEdgetranslatedEdgestartPointendPointdirection1cone52.75360000010rotatedConecone010-90coneEdgerotatedCone1translatedEdgeconeEdge-100startPointtranslatedEdgeendPointtranslatedEdgedirection1endPointstartPointrotatedConedirection1-100startPoint7202(deg)0.40.6FALSE","type":"blockly"}} title="Cone with apex angle measurement" /> {\n // Create a cone with specific dimensions\n const coneOptions = new ConeDto();\n coneOptions.radius1 = 5;\n coneOptions.radius2 = 2.7; // Variable radius for apex angle\n coneOptions.height = 5;\n coneOptions.angle = 360;\n coneOptions.center = [0, 0, 0];\n coneOptions.direction = [0, 1, 0];\n const cone = await solid.createCone(coneOptions);\n\n // Rotate the cone -90 degrees around Y axis for better visualization\n const rotatedCone = await transforms.rotate({\n shape: cone,\n axis: [0, 1, 0],\n angle: -90\n });\n\n // Draw the rotated cone\n bitbybit.draw.drawAnyAsync({ entity: rotatedCone });\n\n // Get edge 2 from the cone (this is a generatrix line)\n const coneEdge = await edge.getEdge({ shape: rotatedCone, index: 2 });\n\n // Translate the edge to position it for measurement\n const translatedEdge = await transforms.translate({\n shape: coneEdge,\n translation: [-1, 0, 0]\n });\n\n // Get start and end points from the translated edge\n const startPoint = await edge.startPointOnEdge({ shape: translatedEdge });\n const endPoint = await edge.endPointOnEdge({ shape: translatedEdge });\n\n // Calculate direction vector from start to end point\n const direction1 = bitbybit.vector.sub({ first: endPoint, second: startPoint }) as Vector3;\n\n // Create angular dimension to measure apex angle\n const dimensionOptions = new SimpleAngularDimensionDto();\n dimensionOptions.direction1 = direction1;\n dimensionOptions.direction2 = [-1, 0, 0]; // Reference direction\n dimensionOptions.center = startPoint; // Apex point\n dimensionOptions.radius = 7;\n dimensionOptions.offsetFromCenter = 2;\n dimensionOptions.extraSize = 0;\n dimensionOptions.decimalPlaces = 2;\n dimensionOptions.labelSuffix = \"(deg)\";\n dimensionOptions.labelSize = 0.4;\n dimensionOptions.labelOffset = 0.6;\n dimensionOptions.radians = false;\n\n // Create and draw the angular dimension\n const dimension = await dimensions.simpleAngularDimension(dimensionOptions);\n bitbybit.draw.drawAnyAsync({ entity: dimension });\n}\n\n// Execute the function\nstart();","type":"typescript"}} + script={{"script":"// Import required DTOs for creating shapes and dimensions\nconst { ConeDto, SimpleAngularDimensionDto } = Bit.Inputs.OCCT;\n// Import types for type safety\ntype TopoDSSolidPointer = Bit.Inputs.OCCT.TopoDSSolidPointer;\ntype TopoDSEdgePointer = Bit.Inputs.OCCT.TopoDSEdgePointer;\ntype Point3 = Bit.Inputs.Base.Point3;\ntype Vector3 = Bit.Inputs.Base.Vector3;\n\n// Get access to OCCT modules\nconst { shapes, dimensions, transforms } = bitbybit.occt;\nconst { solid, edge } = shapes;\n\n// Define the main function to create a cone with angular dimension\nconst start = async () => {\n // Create a cone with specific dimensions\n const coneOptions = new ConeDto();\n coneOptions.radius1 = 5;\n coneOptions.radius2 = 2.7; // Variable radius for apex angle\n coneOptions.height = 5;\n coneOptions.angle = 360;\n coneOptions.center = [0, 0, 0];\n coneOptions.direction = [0, 1, 0];\n const cone = await solid.createCone(coneOptions);\n\n // Rotate the cone -90 degrees around Y axis for better visualization\n const rotatedCone = await transforms.rotate({\n shape: cone,\n axis: [0, 1, 0],\n angle: -90\n });\n\n // Draw the rotated cone\n bitbybit.draw.drawAnyAsync({ entity: rotatedCone });\n\n // Get edge 2 from the cone (this is a generatrix line)\n const coneEdge = await edge.getEdge({ shape: rotatedCone, index: 1 });\n\n // Translate the edge to position it for measurement\n const translatedEdge = await transforms.translate({\n shape: coneEdge,\n translation: [-1, 0, 0]\n });\n\n // Get start and end points from the translated edge\n const startPoint = await edge.startPointOnEdge({ shape: translatedEdge });\n const endPoint = await edge.endPointOnEdge({ shape: translatedEdge });\n\n // Calculate direction vector from start to end point\n const direction1 = bitbybit.vector.sub({ first: endPoint, second: startPoint }) as Vector3;\n\n // Create angular dimension to measure apex angle\n const dimensionOptions = new SimpleAngularDimensionDto();\n dimensionOptions.direction1 = direction1;\n dimensionOptions.direction2 = [-1, 0, 0]; // Reference direction\n dimensionOptions.center = startPoint; // Apex point\n dimensionOptions.radius = 7;\n dimensionOptions.offsetFromCenter = 2;\n dimensionOptions.extraSize = 0;\n dimensionOptions.decimalPlaces = 2;\n dimensionOptions.labelSuffix = \"(deg)\";\n dimensionOptions.labelSize = 0.4;\n dimensionOptions.labelOffset = 0.6;\n dimensionOptions.radians = false;\n\n // Create and draw the angular dimension\n const dimension = await dimensions.simpleAngularDimension(dimensionOptions);\n bitbybit.draw.drawAnyAsync({ entity: dimension });\n}\n\n// Execute the function\nstart();","type":"typescript"}} title="Cone with apex angle measurement" /> diff --git a/docs/learn/code/common/occt/dimensions/linear-dimension.md b/docs/learn/code/common/occt/dimensions/linear-dimension.md index 1a95938d8..67503d76e 100644 --- a/docs/learn/code/common/occt/dimensions/linear-dimension.md +++ b/docs/learn/code/common/occt/dimensions/linear-dimension.md @@ -33,7 +33,7 @@ Linear dimensions measure straight-line distances between two points and display point1point2point1-500point2500point1point2point1point20100.30.21cm0.40.80","type":"blockly"}} + script={{"script":"point1point2point1-500point2500point1point2point1point2010002(cm)0.10.30'none'0.330FALSEFALSEFALSE1*valFALSE","type":"blockly"}} title="Simple linear dimension between two points" /> @@ -58,14 +58,14 @@ Linear dimensions update automatically when geometry changes, keeping your docum widthlengthheightboxfirstEdgesecondEdgethirdEdgewidth13.2length9.1height5.3boxwidthlengthheight000TRUEfirstEdgebox1secondEdgebox8thirdEdgebox11firstEdgefirstEdge-2000.20.22(cm)0.51180secondEdgesecondEdge2000.20.22(cm)0.51180thirdEdgethirdEdge00-20.20.22(cm)0.51180box","type":"blockly"}} + script={{"script":"widthlengthheightboxfirstEdgesecondEdgethirdEdgewidth13.2length9.1height5.3boxwidthlengthheight000TRUEfirstEdgebox0secondEdgebox7thirdEdgebox10firstEdgefirstEdge-2000.20.22(cm)0.51180'arrow'0.330FALSEFALSEFALSE1*valFALSEsecondEdgesecondEdge2000.20.22(cm)0.51180'arrow'0.330FALSEFALSEFALSE1*valFALSEthirdEdgethirdEdge00-20.20.22(cm)0.51180'arrow'0.330FALSEFALSEFALSE1*valFALSEbox","type":"blockly"}} title="Linear dimensions applied on box" /> {\n // Create a box with specific dimensions\n const boxOptions = new BoxDto();\n boxOptions.width = 13.2;\n boxOptions.length = 9.1;\n boxOptions.height = 5.3;\n boxOptions.center = [0, 0, 0];\n boxOptions.originOnCenter = true;\n const box = await solid.createBox(boxOptions);\n\n // Draw the box first\n bitbybit.draw.drawAnyAsync({ entity: box });\n\n // Get all edges from the box for dimension measurements\n const edges = await edge.getEdges({ shape: box });\n\n // Create width dimension (measuring edge 0)\n const widthEdge = edges[0];\n const widthStartPoint = await edge.startPointOnEdge({ shape: widthEdge });\n const widthEndPoint = await edge.endPointOnEdge({ shape: widthEdge });\n\n const widthDimensionOptions = new SimpleLinearLengthDimensionDto();\n widthDimensionOptions.start = widthStartPoint;\n widthDimensionOptions.end = widthEndPoint;\n widthDimensionOptions.direction = [-2, 0, 0]; // Offset to the left\n widthDimensionOptions.offsetFromPoints = 0.2;\n widthDimensionOptions.crossingSize = 0.2;\n widthDimensionOptions.decimalPlaces = 2;\n widthDimensionOptions.labelSuffix = \"(cm)\";\n widthDimensionOptions.labelSize = 0.5;\n widthDimensionOptions.labelOffset = 1;\n widthDimensionOptions.labelRotation = 180;\n \n const widthDimension = await dimensions.simpleLinearLengthDimension(widthDimensionOptions);\n bitbybit.draw.drawAnyAsync({ entity: widthDimension });\n\n // Create height dimension (measuring edge 10)\n const heightEdge = edges[10];\n const heightStartPoint = await edge.startPointOnEdge({ shape: heightEdge });\n const heightEndPoint = await edge.endPointOnEdge({ shape: heightEdge });\n\n const heightDimensionOptions = new SimpleLinearLengthDimensionDto();\n heightDimensionOptions.start = heightStartPoint;\n heightDimensionOptions.end = heightEndPoint;\n heightDimensionOptions.direction = [0, 0, -2]; // Offset toward the back\n heightDimensionOptions.offsetFromPoints = 0.2;\n heightDimensionOptions.crossingSize = 0.2;\n heightDimensionOptions.decimalPlaces = 2;\n heightDimensionOptions.labelSuffix = \"(cm)\";\n heightDimensionOptions.labelSize = 0.5;\n heightDimensionOptions.labelOffset = 1;\n heightDimensionOptions.labelRotation = 180;\n \n const heightDimension = await dimensions.simpleLinearLengthDimension(heightDimensionOptions);\n bitbybit.draw.drawAnyAsync({ entity: heightDimension });\n\n // Create depth dimension (measuring edge 7)\n const depthEdge = edges[7];\n const depthStartPoint = await edge.endPointOnEdge({ shape: depthEdge });\n const depthEndPoint = await edge.startPointOnEdge({ shape: depthEdge });\n\n const depthDimensionOptions = new SimpleLinearLengthDimensionDto();\n depthDimensionOptions.start = depthStartPoint;\n depthDimensionOptions.end = depthEndPoint;\n depthDimensionOptions.direction = [2, 0, 0]; // Offset to the right\n depthDimensionOptions.offsetFromPoints = 0.2;\n depthDimensionOptions.crossingSize = 0.2;\n depthDimensionOptions.decimalPlaces = 2;\n depthDimensionOptions.labelSuffix = \"(cm)\";\n depthDimensionOptions.labelSize = 0.5;\n depthDimensionOptions.labelOffset = 1;\n depthDimensionOptions.labelRotation = 180;\n \n const depthDimension = await dimensions.simpleLinearLengthDimension(depthDimensionOptions);\n bitbybit.draw.drawAnyAsync({ entity: depthDimension });\n}\n\n// Execute the function\nstart();","type":"typescript"}} + script={{"script":"// Import required DTOs for creating shapes and dimensions\nconst { BoxDto, SimpleLinearLengthDimensionDto } = Bit.Inputs.OCCT;\n// Import types for type safety\ntype TopoDSSolidPointer = Bit.Inputs.OCCT.TopoDSSolidPointer;\ntype TopoDSEdgePointer = Bit.Inputs.OCCT.TopoDSEdgePointer;\n\n// Get access to OCCT modules\nconst { shapes, dimensions } = bitbybit.occt;\nconst { dimensionEndTypeEnum } = Bit.Inputs.OCCT;\nconst { solid, edge } = shapes;\n\n// Define the main function to create a box with linear dimensions\nconst start = async () => {\n // Create a box with specific dimensions\n const boxOptions = new BoxDto();\n boxOptions.width = 13.2;\n boxOptions.length = 9.1;\n boxOptions.height = 5.3;\n boxOptions.center = [0, 0, 0];\n boxOptions.originOnCenter = true;\n const box = await solid.createBox(boxOptions);\n\n // Draw the box first\n bitbybit.draw.drawAnyAsync({ entity: box });\n\n // Get all edges from the box for dimension measurements\n const edges = await edge.getEdges({ shape: box });\n\n // Create width dimension (measuring edge 0)\n const widthEdge = edges[0];\n const widthStartPoint = await edge.startPointOnEdge({ shape: widthEdge });\n const widthEndPoint = await edge.endPointOnEdge({ shape: widthEdge });\n\n const widthDimensionOptions = new SimpleLinearLengthDimensionDto();\n widthDimensionOptions.start = widthStartPoint;\n widthDimensionOptions.end = widthEndPoint;\n widthDimensionOptions.direction = [-2, 0, 0]; // Offset to the left\n widthDimensionOptions.offsetFromPoints = 0.2;\n widthDimensionOptions.crossingSize = 0.2;\n widthDimensionOptions.decimalPlaces = 2;\n widthDimensionOptions.labelSuffix = \"(cm)\";\n widthDimensionOptions.labelSize = 0.5;\n widthDimensionOptions.endType = dimensionEndTypeEnum.arrow;\n widthDimensionOptions.labelOffset = 1;\n widthDimensionOptions.labelRotation = 180;\n\n const widthDimension = await dimensions.simpleLinearLengthDimension(widthDimensionOptions);\n bitbybit.draw.drawAnyAsync({ entity: widthDimension });\n\n // Create height dimension (measuring edge 10)\n const heightEdge = edges[10];\n const heightStartPoint = await edge.startPointOnEdge({ shape: heightEdge });\n const heightEndPoint = await edge.endPointOnEdge({ shape: heightEdge });\n\n const heightDimensionOptions = new SimpleLinearLengthDimensionDto();\n heightDimensionOptions.start = heightStartPoint;\n heightDimensionOptions.end = heightEndPoint;\n heightDimensionOptions.direction = [0, 0, -2]; // Offset toward the back\n heightDimensionOptions.offsetFromPoints = 0.2;\n heightDimensionOptions.crossingSize = 0.2;\n heightDimensionOptions.decimalPlaces = 2;\n heightDimensionOptions.labelSuffix = \"(cm)\";\n heightDimensionOptions.labelSize = 0.5;\n heightDimensionOptions.endType = dimensionEndTypeEnum.arrow;\n heightDimensionOptions.labelOffset = 1;\n heightDimensionOptions.labelRotation = 180;\n\n const heightDimension = await dimensions.simpleLinearLengthDimension(heightDimensionOptions);\n bitbybit.draw.drawAnyAsync({ entity: heightDimension });\n\n // Create depth dimension (measuring edge 7)\n const depthEdge = edges[7];\n const depthStartPoint = await edge.endPointOnEdge({ shape: depthEdge });\n const depthEndPoint = await edge.startPointOnEdge({ shape: depthEdge });\n\n const depthDimensionOptions = new SimpleLinearLengthDimensionDto();\n depthDimensionOptions.start = depthStartPoint;\n depthDimensionOptions.end = depthEndPoint;\n depthDimensionOptions.direction = [2, 0, 0]; // Offset to the right\n depthDimensionOptions.offsetFromPoints = 0.2;\n depthDimensionOptions.crossingSize = 0.2;\n depthDimensionOptions.decimalPlaces = 2;\n depthDimensionOptions.labelSuffix = \"(cm)\";\n depthDimensionOptions.labelSize = 0.5;\n depthDimensionOptions.endType = dimensionEndTypeEnum.arrow;\n depthDimensionOptions.labelOffset = 1;\n depthDimensionOptions.labelRotation = 180;\n\n const depthDimension = await dimensions.simpleLinearLengthDimension(depthDimensionOptions);\n bitbybit.draw.drawAnyAsync({ entity: depthDimension });\n}\n\n// Execute the function\nstart();","type":"typescript"}} title="Linear dimensions applied on box" /> diff --git a/docs/learn/code/common/occt/shapes/edge/edge-indexes.mdx b/docs/learn/code/common/occt/shapes/edge/edge-indexes.mdx index 728d09d61..11d4c6dd4 100644 --- a/docs/learn/code/common/occt/shapes/edge/edge-indexes.mdx +++ b/docs/learn/code/common/occt/shapes/edge/edge-indexes.mdx @@ -49,7 +49,7 @@ Below are examples in TypeScript, Blockly, and Rete that demonstrate creating a **Blockly Example: Drawing Edge Indexes** 58100000.30.3#ffffff#ff00002TRUETRUE0.01TRUE0.24#ff00ffFALSE0.06#0000ff","type":"blockly"}} + script={{"script":"58100000.30.3#ffffff#ff0000#ff00ff20.03TRUETRUEFALSE0.01TRUE0.24#ff00ffFALSE0.06#0000ffFALSE#0000ff1015","type":"blockly"}} title="Edge Indexing" /> diff --git a/docs/learn/code/common/occt/shapes/wire/wire-helix-spirals.md b/docs/learn/code/common/occt/shapes/wire/wire-helix-spirals.md new file mode 100644 index 000000000..3db41983a --- /dev/null +++ b/docs/learn/code/common/occt/shapes/wire/wire-helix-spirals.md @@ -0,0 +1,93 @@ +--- +sidebar_position: 4 +title: Wire Helix Spirals +sidebar_label: Wire Helix Spirals +description: Learn how to create helix occt wires with spirals +tags: [code, occt, rete, blockly, typescript] +--- + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; +import BitByBitRenderCanvas from '@site/src/components/BitByBitRenderCanvas'; + +OCCT category icon with a stylized logo representation + +# Creating Helix Wires + +This tutorial demonstrates how to create three types of helical and spiral wire shapes using OpenCASCADE (OCCT). These curves are fundamental building blocks for modeling springs, threads, coils, and other spiral-based geometries. + +## Types of Helix and Spiral Wires + +### 1. Regular Helix Wire +A **helix** is a 3D curve that winds around an axis while rising at a constant rate. Think of a spring or a corkscrew. Key parameters include: +- **Radius**: The distance from the central axis to the helix curve +- **Pitch**: The vertical distance covered in one complete revolution (360°) +- **Height**: The total vertical extent of the helix +- **Direction**: The axis around which the helix winds (typically Y-up: `[0, 1, 0]`) +- **Clockwise**: Determines the winding direction when viewed from above + +### 2. Flat Spiral Wire (Archimedean Spiral) +A **flat spiral** lies entirely in a plane and expands outward from a center point. This is useful for creating decorative patterns, clock springs, or spiral ramps. Key parameters include: +- **Start Radius**: The inner radius where the spiral begins +- **End Radius**: The outer radius where the spiral ends +- **Number of Turns**: How many complete rotations the spiral makes +- **Direction**: The normal vector of the plane containing the spiral + +### 3. Tapered Helix Wire (Conical Helix) +A **tapered helix** combines the rising motion of a regular helix with a changing radius, creating a cone-shaped spiral. This is commonly used for conical springs or decorative elements. Key parameters include: +- **Start Radius**: The radius at the base of the cone +- **End Radius**: The radius at the top of the cone +- **Pitch** and **Height**: Same as a regular helix + +## Example Overview + +The interactive examples below create all three wire types positioned side by side: +- **Left (x = -8)**: A regular helix with radius 1, pitch 1, and height 5 +- **Center (x = 0)**: A flat spiral expanding from radius 0.5 to 5 with 5 turns +- **Right (x = 8)**: A tapered helix narrowing from radius 2 to 0.5 + + + + + + + 115-800010FALSE0.00010.01TRUE#ff0000TRUE#ffffff20.555000010FALSE0.00010.01TRUE#00ff00TRUE#ffffff220.515800010FALSE0.00010.01TRUE#0000ffTRUE#ffffff2","type":"blockly"}} + title="Regular helix, tapered helix and flat spiral examples" + /> + + + {\n\n // --- 1. Create Regular Helix Wire ---\n // A helix is a 3D spiral that rises along an axis\n const helixOptions = new HelixWireDto();\n helixOptions.radius = 1; // Radius of the helix\n helixOptions.pitch = 1; // Height per complete turn\n helixOptions.height = 5; // Total height of the helix\n helixOptions.center = [-8, 0, 0]; // Position it to the left\n helixOptions.direction = [0, 1, 0]; // Helix axis points up (Y direction)\n helixOptions.clockwise = false; // Counter-clockwise winding\n helixOptions.tolerance = 0.0001; // Approximation tolerance\n \n // Create the helix wire asynchronously\n const helixWire = await wire.createHelixWire(helixOptions);\n\n // --- 2. Create Flat Spiral Wire ---\n // A flat spiral lies in a plane and expands outward\n const flatSpiralOptions = new FlatSpiralWireDto();\n flatSpiralOptions.startRadius = 0.5; // Inner starting radius\n flatSpiralOptions.endRadius = 5; // Outer ending radius\n flatSpiralOptions.numTurns = 5; // Number of complete rotations\n flatSpiralOptions.center = [0, 0, 0]; // Centered at origin\n flatSpiralOptions.direction = [0, 1, 0]; // Normal to the spiral plane\n flatSpiralOptions.clockwise = false;\n flatSpiralOptions.tolerance = 0.0001;\n \n // Create the flat spiral wire\n const flatSpiralWire = await wire.createFlatSpiralWire(flatSpiralOptions);\n\n // --- 3. Create Tapered Helix Wire ---\n // A tapered helix has a varying radius (conical helix)\n const taperedHelixOptions = new TaperedHelixWireDto();\n taperedHelixOptions.startRadius = 2; // Larger radius at the bottom\n taperedHelixOptions.endRadius = 0.5; // Smaller radius at the top\n taperedHelixOptions.pitch = 1; // Height per complete turn\n taperedHelixOptions.height = 5; // Total height\n taperedHelixOptions.center = [8, 0, 0]; // Position it to the right\n taperedHelixOptions.direction = [0, 1, 0];\n taperedHelixOptions.clockwise = false;\n taperedHelixOptions.tolerance = 0.0001;\n \n // Create the tapered helix wire\n const taperedHelixWire = await wire.createTaperedHelixWire(taperedHelixOptions);\n\n // --- 4. Draw all three wires with different colors ---\n \n // Draw the regular helix in red\n const helixDrawOptions = new DrawOcctShapeSimpleOptions();\n helixDrawOptions.edgeColour = \"#ff0000\";\n helixDrawOptions.edgeWidth = 2;\n bitbybit.draw.drawAnyAsync({ entity: helixWire, options: helixDrawOptions });\n\n // Draw the flat spiral in green\n const spiralDrawOptions = new DrawOcctShapeSimpleOptions();\n spiralDrawOptions.edgeColour = \"#00ff00\";\n spiralDrawOptions.edgeWidth = 2;\n bitbybit.draw.drawAnyAsync({ entity: flatSpiralWire, options: spiralDrawOptions });\n\n // Draw the tapered helix in blue\n const taperedDrawOptions = new DrawOcctShapeSimpleOptions();\n taperedDrawOptions.edgeColour = \"#0000ff\";\n taperedDrawOptions.edgeWidth = 2;\n bitbybit.draw.drawAnyAsync({ entity: taperedHelixWire, options: taperedDrawOptions });\n\n}\n\n// Execute the main function\nstart();","type":"typescript"}} + title="Regular helix, tapered helix and flat spiral examples" + /> + + + +## Practical Applications + +These helix and spiral wires serve as the foundation for many real-world modeling scenarios: + +- **Springs and Coils**: Use regular or tapered helixes as sweep paths to create compression springs, extension springs, or coil shapes +- **Threads and Screws**: Helixes can define the path for thread profiles when creating bolts, screws, or nuts +- **Spiral Staircases**: Flat spirals or helixes can guide the placement of steps in architectural designs +- **Decorative Elements**: Spirals add visual interest to jewelry, furniture, and artistic designs +- **Pipes and Tubing**: Sweep a circular profile along a helix to create coiled pipes or tubes + +## Tips for Working with Helix Wires + +1. **Tolerance Parameter**: Lower tolerance values create smoother curves but require more computation. The default `0.0001` provides a good balance for most use cases. + +2. **Direction Vector**: The direction defines the axis of rotation. Use `[0, 1, 0]` for vertical helixes, `[1, 0, 0]` for horizontal ones along X, or any normalized vector for custom orientations. + +3. **Combining with Other Operations**: These wires can be used with operations like `pipe`, `sweep`, or `loft` to create solid 3D shapes from the wire paths. diff --git a/docs/learn/runners/intro-blockly.mdx b/docs/learn/runners/intro-blockly.mdx index 1590e228d..be66887e3 100644 --- a/docs/learn/runners/intro-blockly.mdx +++ b/docs/learn/runners/intro-blockly.mdx @@ -126,7 +126,7 @@ async function changeSize(size) { window.changeSize = changeSize; function getInlineScript() { - return '{"type":"blockly","version":"1.0.0-rc.0","script":"async function(e,r,t,n,s){var c,o;(c=(()=>{const r={property:\\"size\\"};e.HS.handleBlock(e.blocklyWorkspace,\\"T}wb0d1H1WU4~rHqU6Z8\\",r);try{return s.getBitbybitRunnerInputs()[r.property]}catch(e){errorHandle(e,\\"T}wb0d1H1WU4~rHqU6Z8\\")}})())||(c=1),o=await(()=>{let t={promise:(()=>{const t={entity:(()=>{const t={shape:(()=>{const t={size:c,center:(()=>{const t={x:0,y:0,z:0};e.HS.handleBlock(e.blocklyWorkspace,\\"..HOv-y|X^q[[1Ktwe5h\\",t);try{return r.point.pointXYZ(t)}catch(e){errorHandle(e,\\"..HOv-y|X^q[[1Ktwe5h\\")}})()};return async function(){return await e.HS.inputAwaiter(t,e.blocklyWorkspace,\\"NjKMI;:*GYJ2).3M?yj6\\"),e.HS.handleBlock(e.blocklyWorkspace,\\"NjKMI;:*GYJ2).3M?yj6\\",t),e.HS.startedAsyncTask(e.blocklyWorkspace,\\"NjKMI;:*GYJ2).3M?yj6\\",\\"#ddddff\\"),r.occt.shapes.solid.createCube(t).then((r=>(e.HS.finishedAsyncTask(e.blocklyWorkspace,\\"NjKMI;:*GYJ2).3M?yj6\\"),r)),(e=>{errorHandle(e.substring?e.substring(0,1e3):e,\\"NjKMI;:*GYJ2).3M?yj6\\")}))}()})(),radius:.4};return async function(){return await e.HS.inputAwaiter(t,e.blocklyWorkspace,\\"6-?FxF/TH`00-Uh|_T12\\"),e.HS.handleBlock(e.blocklyWorkspace,\\"6-?FxF/TH`00-Uh|_T12\\",t),e.HS.startedAsyncTask(e.blocklyWorkspace,\\"6-?FxF/TH`00-Uh|_T12\\",\\"#ddddff\\"),r.occt.fillets.filletEdges(t).then((r=>(e.HS.finishedAsyncTask(e.blocklyWorkspace,\\"6-?FxF/TH`00-Uh|_T12\\"),r)),(e=>{errorHandle(e.substring?e.substring(0,1e3):e,\\"6-?FxF/TH`00-Uh|_T12\\")}))}()})(),options:(()=>{const t={precision:.005,drawFaces:!0,faceColour:\\"#000099\\",drawEdges:!0,edgeColour:\\"#ffffff\\",edgeWidth:1};e.HS.handleBlock(e.blocklyWorkspace,\\"D6NqR%pIp.xzBt?@?tV4\\",t);try{return r.draw.optionsOcctShapeSimple(t)}catch(e){errorHandle(e,\\"D6NqR%pIp.xzBt?@?tV4\\")}})()};return async function(){return await e.HS.inputAwaiter(t,e.blocklyWorkspace,\\"3n^@/8zZXkRWbQFt?[(m\\"),e.HS.handleBlock(e.blocklyWorkspace,\\"3n^@/8zZXkRWbQFt?[(m\\",t),e.HS.startedAsyncTask(e.blocklyWorkspace,\\"3n^@/8zZXkRWbQFt?[(m\\",\\"#ddddff\\"),r.draw.drawAnyAsync(t).then((r=>(e.HS.finishedAsyncTask(e.blocklyWorkspace,\\"3n^@/8zZXkRWbQFt?[(m\\"),r)),(e=>{errorHandle(e.substring?e.substring(0,1e3):e,\\"3n^@/8zZXkRWbQFt?[(m\\")}))}()})()}.promise;return Array.isArray(t)&&(t=Promise.all(t)),t})(),(()=>{const r={property:\\"cubeMesh\\",value:o};e.HS.handleBlock(e.blocklyWorkspace,\\"#sP(;i?@t;x-M0rw:m)B\\",r);try{s.setBitbybitRunnerResultValue(r.property,r.value)}catch(e){errorHandle(e,\\"#sP(;i?@t;x-M0rw:m)B\\")}})()}(BitByBit,bitbybit,bitbybitRunnerResult,bitbybitRunnerInputs,Bit);"}'; + return '{"type":"blockly","version":"1.0.0-rc.1","script":"async function(e,r,t,n,s){var c,o;(c=(()=>{const r={property:\\"size\\"};e.HS.handleBlock(e.blocklyWorkspace,\\"T}wb0d1H1WU4~rHqU6Z8\\",r);try{return s.getBitbybitRunnerInputs()[r.property]}catch(e){errorHandle(e,\\"T}wb0d1H1WU4~rHqU6Z8\\")}})())||(c=1),o=await(()=>{let t={promise:(()=>{const t={entity:(()=>{const t={shape:(()=>{const t={size:c,center:(()=>{const t={x:0,y:0,z:0};e.HS.handleBlock(e.blocklyWorkspace,\\"..HOv-y|X^q[[1Ktwe5h\\",t);try{return r.point.pointXYZ(t)}catch(e){errorHandle(e,\\"..HOv-y|X^q[[1Ktwe5h\\")}})()};return async function(){return await e.HS.inputAwaiter(t,e.blocklyWorkspace,\\"NjKMI;:*GYJ2).3M?yj6\\"),e.HS.handleBlock(e.blocklyWorkspace,\\"NjKMI;:*GYJ2).3M?yj6\\",t),e.HS.startedAsyncTask(e.blocklyWorkspace,\\"NjKMI;:*GYJ2).3M?yj6\\",\\"#ddddff\\"),r.occt.shapes.solid.createCube(t).then((r=>(e.HS.finishedAsyncTask(e.blocklyWorkspace,\\"NjKMI;:*GYJ2).3M?yj6\\"),r)),(e=>{errorHandle(e.substring?e.substring(0,1e3):e,\\"NjKMI;:*GYJ2).3M?yj6\\")}))}()})(),radius:.4};return async function(){return await e.HS.inputAwaiter(t,e.blocklyWorkspace,\\"6-?FxF/TH`00-Uh|_T12\\"),e.HS.handleBlock(e.blocklyWorkspace,\\"6-?FxF/TH`00-Uh|_T12\\",t),e.HS.startedAsyncTask(e.blocklyWorkspace,\\"6-?FxF/TH`00-Uh|_T12\\",\\"#ddddff\\"),r.occt.fillets.filletEdges(t).then((r=>(e.HS.finishedAsyncTask(e.blocklyWorkspace,\\"6-?FxF/TH`00-Uh|_T12\\"),r)),(e=>{errorHandle(e.substring?e.substring(0,1e3):e,\\"6-?FxF/TH`00-Uh|_T12\\")}))}()})(),options:(()=>{const t={precision:.005,drawFaces:!0,faceColour:\\"#000099\\",drawEdges:!0,edgeColour:\\"#ffffff\\",edgeWidth:1};e.HS.handleBlock(e.blocklyWorkspace,\\"D6NqR%pIp.xzBt?@?tV4\\",t);try{return r.draw.optionsOcctShapeSimple(t)}catch(e){errorHandle(e,\\"D6NqR%pIp.xzBt?@?tV4\\")}})()};return async function(){return await e.HS.inputAwaiter(t,e.blocklyWorkspace,\\"3n^@/8zZXkRWbQFt?[(m\\"),e.HS.handleBlock(e.blocklyWorkspace,\\"3n^@/8zZXkRWbQFt?[(m\\",t),e.HS.startedAsyncTask(e.blocklyWorkspace,\\"3n^@/8zZXkRWbQFt?[(m\\",\\"#ddddff\\"),r.draw.drawAnyAsync(t).then((r=>(e.HS.finishedAsyncTask(e.blocklyWorkspace,\\"3n^@/8zZXkRWbQFt?[(m\\"),r)),(e=>{errorHandle(e.substring?e.substring(0,1e3):e,\\"3n^@/8zZXkRWbQFt?[(m\\")}))}()})()}.promise;return Array.isArray(t)&&(t=Promise.all(t)),t})(),(()=>{const r={property:\\"cubeMesh\\",value:o};e.HS.handleBlock(e.blocklyWorkspace,\\"#sP(;i?@t;x-M0rw:m)B\\",r);try{s.setBitbybitRunnerResultValue(r.property,r.value)}catch(e){errorHandle(e,\\"#sP(;i?@t;x-M0rw:m)B\\")}})()}(BitByBit,bitbybit,bitbybitRunnerResult,bitbybitRunnerInputs,Bit);"}'; } ``` diff --git a/docs/learn/runners/intro-rete.mdx b/docs/learn/runners/intro-rete.mdx index 410b5bc6f..9384dbf3f 100644 --- a/docs/learn/runners/intro-rete.mdx +++ b/docs/learn/runners/intro-rete.mdx @@ -128,7 +128,7 @@ async function changeSize(size) { window.changeSize = changeSize; function getInlineScript() { - return '{"type":"rete","version":"1.0.0-rc.0","script":"(async function (BitByBit, bitbybit, bitbybitRunnerResult, bitbybitRunnerInputs, Bit) { const dataVarIDf383aaf1893995c7 = {property: [\\"size\\"]};let inputsVarIDf383aaf1893995c7 = {};inputsVarIDf383aaf1893995c7 = {...dataVarIDf383aaf1893995c7, ...inputsVarIDf383aaf1893995c7};const resultf383aaf1893995c7 = [{result: [bitbybitRunnerInputs[inputsVarIDf383aaf1893995c7.property[0]]]}];const dataVarIDcaa28d38f452b168 = {precision: [0.01], drawFaces: [true], faceColour: [\\"#1e00ff\\"], drawEdges: [true], edgeColour: [\\"#ffffff\\"], edgeWidth: [2]};let inputsVarIDcaa28d38f452b168 = {};inputsVarIDcaa28d38f452b168 = {...dataVarIDcaa28d38f452b168, ...inputsVarIDcaa28d38f452b168};const generatedVarIDcaa28d38f452b168 = BitByBit.HS.executeBasedOnType(inputsVarIDcaa28d38f452b168, false, (data) => bitbybit.draw.optionsOcctShapeSimple(data));const resultcaa28d38f452b168 = [{result: generatedVarIDcaa28d38f452b168, transformers: []}];const dataVarIDa9c61a71827d3e38 = {size: [1], center: [[0,0,0]]};let inputsVarIDa9c61a71827d3e38 = {};inputsVarIDa9c61a71827d3e38.size = resultf383aaf1893995c7;BitByBit.HS.updateListInputs(inputsVarIDa9c61a71827d3e38);inputsVarIDa9c61a71827d3e38 = {...dataVarIDa9c61a71827d3e38, ...inputsVarIDa9c61a71827d3e38};const generatedVarIDa9c61a71827d3e38 = await BitByBit.HS.executeBasedOnTypeAsync(inputsVarIDa9c61a71827d3e38, false, (data) => bitbybit.occt.shapes.solid.createCube(data));const resulta9c61a71827d3e38 = [{result: generatedVarIDa9c61a71827d3e38, transformers: []}]; const dataVarIDcd4c1f4de5199424 = {shape: [undefined], radius: [0.4], radiusList: [undefined], indexes: [undefined]};let inputsVarIDcd4c1f4de5199424 = {};inputsVarIDcd4c1f4de5199424.shape = resulta9c61a71827d3e38;BitByBit.HS.updateListInputs(inputsVarIDcd4c1f4de5199424);inputsVarIDcd4c1f4de5199424 = {...dataVarIDcd4c1f4de5199424, ...inputsVarIDcd4c1f4de5199424};const generatedVarIDcd4c1f4de5199424 = await BitByBit.HS.executeBasedOnTypeAsync(inputsVarIDcd4c1f4de5199424, false, (data) => bitbybit.occt.fillets.filletEdges(data));const resultcd4c1f4de5199424 = [{result: generatedVarIDcd4c1f4de5199424, transformers: []}]; const dataVarIDf2f8b4cf1de9ac4c = {entity: [undefined], options: [undefined], babylonMesh: [undefined]};let inputsVarIDf2f8b4cf1de9ac4c = {};inputsVarIDf2f8b4cf1de9ac4c.options = resultcaa28d38f452b168;inputsVarIDf2f8b4cf1de9ac4c.entity = resultcd4c1f4de5199424;BitByBit.HS.updateListInputs(inputsVarIDf2f8b4cf1de9ac4c);inputsVarIDf2f8b4cf1de9ac4c = {...dataVarIDf2f8b4cf1de9ac4c, ...inputsVarIDf2f8b4cf1de9ac4c};const generatedVarIDf2f8b4cf1de9ac4c = await BitByBit.HS.executeBasedOnTypeAsync(inputsVarIDf2f8b4cf1de9ac4c, false, (data) => bitbybit.draw.drawAnyAsync(data));const resultf2f8b4cf1de9ac4c = [{result: generatedVarIDf2f8b4cf1de9ac4c, transformers: []}]; const dataVarID613de15ba24c56db = {property: [\\"cubeMesh\\"]};let inputsVarID613de15ba24c56db = {};inputsVarID613de15ba24c56db.value = resultf2f8b4cf1de9ac4c;BitByBit.HS.updateListInputs(inputsVarID613de15ba24c56db);inputsVarID613de15ba24c56db = {...dataVarID613de15ba24c56db, ...inputsVarID613de15ba24c56db};setBitbybitRunnerResultValue(inputsVarID613de15ba24c56db.property[0], inputsVarID613de15ba24c56db.value[0]); })(BitByBit, bitbybit, bitbybitRunnerResult, bitbybitRunnerInputs, Bit);"}'; + return '{"type":"rete","version":"1.0.0-rc.1","script":"(async function (BitByBit, bitbybit, bitbybitRunnerResult, bitbybitRunnerInputs, Bit) { const dataVarIDf383aaf1893995c7 = {property: [\\"size\\"]};let inputsVarIDf383aaf1893995c7 = {};inputsVarIDf383aaf1893995c7 = {...dataVarIDf383aaf1893995c7, ...inputsVarIDf383aaf1893995c7};const resultf383aaf1893995c7 = [{result: [bitbybitRunnerInputs[inputsVarIDf383aaf1893995c7.property[0]]]}];const dataVarIDcaa28d38f452b168 = {precision: [0.01], drawFaces: [true], faceColour: [\\"#1e00ff\\"], drawEdges: [true], edgeColour: [\\"#ffffff\\"], edgeWidth: [2]};let inputsVarIDcaa28d38f452b168 = {};inputsVarIDcaa28d38f452b168 = {...dataVarIDcaa28d38f452b168, ...inputsVarIDcaa28d38f452b168};const generatedVarIDcaa28d38f452b168 = BitByBit.HS.executeBasedOnType(inputsVarIDcaa28d38f452b168, false, (data) => bitbybit.draw.optionsOcctShapeSimple(data));const resultcaa28d38f452b168 = [{result: generatedVarIDcaa28d38f452b168, transformers: []}];const dataVarIDa9c61a71827d3e38 = {size: [1], center: [[0,0,0]]};let inputsVarIDa9c61a71827d3e38 = {};inputsVarIDa9c61a71827d3e38.size = resultf383aaf1893995c7;BitByBit.HS.updateListInputs(inputsVarIDa9c61a71827d3e38);inputsVarIDa9c61a71827d3e38 = {...dataVarIDa9c61a71827d3e38, ...inputsVarIDa9c61a71827d3e38};const generatedVarIDa9c61a71827d3e38 = await BitByBit.HS.executeBasedOnTypeAsync(inputsVarIDa9c61a71827d3e38, false, (data) => bitbybit.occt.shapes.solid.createCube(data));const resulta9c61a71827d3e38 = [{result: generatedVarIDa9c61a71827d3e38, transformers: []}]; const dataVarIDcd4c1f4de5199424 = {shape: [undefined], radius: [0.4], radiusList: [undefined], indexes: [undefined]};let inputsVarIDcd4c1f4de5199424 = {};inputsVarIDcd4c1f4de5199424.shape = resulta9c61a71827d3e38;BitByBit.HS.updateListInputs(inputsVarIDcd4c1f4de5199424);inputsVarIDcd4c1f4de5199424 = {...dataVarIDcd4c1f4de5199424, ...inputsVarIDcd4c1f4de5199424};const generatedVarIDcd4c1f4de5199424 = await BitByBit.HS.executeBasedOnTypeAsync(inputsVarIDcd4c1f4de5199424, false, (data) => bitbybit.occt.fillets.filletEdges(data));const resultcd4c1f4de5199424 = [{result: generatedVarIDcd4c1f4de5199424, transformers: []}]; const dataVarIDf2f8b4cf1de9ac4c = {entity: [undefined], options: [undefined], babylonMesh: [undefined]};let inputsVarIDf2f8b4cf1de9ac4c = {};inputsVarIDf2f8b4cf1de9ac4c.options = resultcaa28d38f452b168;inputsVarIDf2f8b4cf1de9ac4c.entity = resultcd4c1f4de5199424;BitByBit.HS.updateListInputs(inputsVarIDf2f8b4cf1de9ac4c);inputsVarIDf2f8b4cf1de9ac4c = {...dataVarIDf2f8b4cf1de9ac4c, ...inputsVarIDf2f8b4cf1de9ac4c};const generatedVarIDf2f8b4cf1de9ac4c = await BitByBit.HS.executeBasedOnTypeAsync(inputsVarIDf2f8b4cf1de9ac4c, false, (data) => bitbybit.draw.drawAnyAsync(data));const resultf2f8b4cf1de9ac4c = [{result: generatedVarIDf2f8b4cf1de9ac4c, transformers: []}]; const dataVarID613de15ba24c56db = {property: [\\"cubeMesh\\"]};let inputsVarID613de15ba24c56db = {};inputsVarID613de15ba24c56db.value = resultf2f8b4cf1de9ac4c;BitByBit.HS.updateListInputs(inputsVarID613de15ba24c56db);inputsVarID613de15ba24c56db = {...dataVarID613de15ba24c56db, ...inputsVarID613de15ba24c56db};setBitbybitRunnerResultValue(inputsVarID613de15ba24c56db.property[0], inputsVarID613de15ba24c56db.value[0]); })(BitByBit, bitbybit, bitbybitRunnerResult, bitbybitRunnerInputs, Bit);"}'; } ``` diff --git a/docs/learn/runners/intro-typescript.mdx b/docs/learn/runners/intro-typescript.mdx index fe3921d18..19ee7e77f 100644 --- a/docs/learn/runners/intro-typescript.mdx +++ b/docs/learn/runners/intro-typescript.mdx @@ -123,7 +123,7 @@ async function changeSize(size) { window.changeSize = changeSize; function getInlineScript() { - return '{"type":"typescript","version":"1.0.0-rc.0","script":"async function(t,e,i,n,s){s.mockBitbybitRunnerInputs({size:1});const a=s.getBitbybitRunnerInputs(),{occt:b}=e,u=(async()=>{const t=await b.shapes.solid.createCube({size:a.size,center:[0,0,0]}),i=await b.fillets.filletEdges({shape:t,radius:.4}),n=new s.Inputs.Draw.DrawOcctShapeSimpleOptions;n.faceColour=\\"#0000ff\\",n.edgeWidth=1,n.precision=.005;return{cubeMesh:await e.draw.drawAnyAsync({entity:i,options:n})}})();s.setBitbybitRunnerResult(u)}(BitByBit,bitbybit,bitbybitRunnerResult,bitbybitRunnerInputs,Bit);"}'; + return '{"type":"typescript","version":"1.0.0-rc.1","script":"async function(t,e,i,n,s){s.mockBitbybitRunnerInputs({size:1});const a=s.getBitbybitRunnerInputs(),{occt:b}=e,u=(async()=>{const t=await b.shapes.solid.createCube({size:a.size,center:[0,0,0]}),i=await b.fillets.filletEdges({shape:t,radius:.4}),n=new s.Inputs.Draw.DrawOcctShapeSimpleOptions;n.faceColour=\\"#0000ff\\",n.edgeWidth=1,n.precision=.005;return{cubeMesh:await e.draw.drawAnyAsync({entity:i,options:n})}})();s.setBitbybitRunnerResult(u)}(BitByBit,bitbybit,bitbybitRunnerResult,bitbybitRunnerInputs,Bit);"}'; } ``` diff --git a/docs/learn/runners/live-examples/static-3d-model-script.mdx b/docs/learn/runners/live-examples/static-3d-model-script.mdx index 0894f391d..32d93a247 100644 --- a/docs/learn/runners/live-examples/static-3d-model-script.mdx +++ b/docs/learn/runners/live-examples/static-3d-model-script.mdx @@ -26,7 +26,7 @@ Below is an interactive preview of the Rete visual program. You can see the node diff --git a/docs/learn/runners/table-configurator-blockly.mdx b/docs/learn/runners/table-configurator-blockly.mdx index 9070abfdc..44ff37336 100644 --- a/docs/learn/runners/table-configurator-blockly.mdx +++ b/docs/learn/runners/table-configurator-blockly.mdx @@ -176,7 +176,7 @@ Below are the `index.html` and `script.js` files you would use on StackBlitz or window.changeModel = changeModel; function getInlineScript() { - return '{\"type\":\"rete\",\"version\":\"1.0.0-rc.0\",\"script\":\"async function(e,t,s,r,n){let a={};a={property:[\\"width\\"],...a};const o=[{result:[r[a.property[0]]]}];let i={};i={property:[\\"length\\"],...i};const u=[{result:[r[i.property[0]]]}];let l={};l={property:[\\"height\\"],...l};const c=[{result:[r[l.property[0]]]}];let p={};p={property:[\\"thickness\\"],...p};const d=[{result:[r[p.property[0]]]}];let f={};f={precision:[.01],drawFaces:[!0],faceColour:[\\"#7984b9\\"],drawEdges:[!0],edgeColour:[\\"#ffffff\\"],edgeWidth:[1],...f};const y=[{result:e.HS.executeBasedOnType(f,!1,(e=>t.draw.optionsOcctShapeSimple(e))),transformers:[]}];let h={};h={skybox:[\\"clearSky\\"],size:[1e3],blur:[.1],environmentIntensity:[.7],...h};e.HS.executeBasedOnType(h,!1,(e=>t.babylon.scene.enableSkybox(e)));let S={};S={radius:[2],center:[[0,0,0]],direction:[[0,1,0]],...S};const H=[{result:await e.HS.executeBasedOnTypeAsync(S,!1,(e=>t.occt.shapes.face.createCircleFace(e))),transformers:[]}];let m={};m={direction:[[-100,-100,-100]],intensity:[3],diffuse:[\\"#ffffff\\"],specular:[\\"#ffffff\\"],shadowGeneratorMapSize:[1024],enableShadows:[!0],shadowDarkness:[0],...m};e.HS.executeBasedOnType(m,!1,(e=>t.babylon.scene.drawDirectionalLight(e)));const v={value1:[void 0],value2:[void 0]};let w={};w.value1=o,w.value2=[{result:[.7],transformers:[]}],e.HS.updateListInputs(w),w={...v,...w};const O=[{result:e.HS.executeBasedOnType(w,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],B={value1:[void 0],value2:[void 0]};let x={};x.value1=u,x.value2=[{result:[1.4],transformers:[]}],e.HS.updateListInputs(x),x={...B,...x};const b=[{result:e.HS.executeBasedOnType(x,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],L={value1:[void 0],value2:[void 0]};let g={};g.value1=c,g.value2=[{result:[.6],transformers:[]}],e.HS.updateListInputs(g),g={...L,...g};const I=[{result:e.HS.executeBasedOnType(g,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],T={value1:[void 0],value2:[void 0]};let A={};A.value1=d,A.value2=[{result:[.1],transformers:[]}],e.HS.updateListInputs(A),A={...T,...A};const k=[{result:e.HS.executeBasedOnType(A,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}];let D={};D.first=I,D.second=k,e.HS.updateListInputs(D),D={first:[1],second:[1],operation:[\\"subtract\\"],...D};const N=[{result:e.HS.executeBasedOnType(D,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let R={};R.first=k,e.HS.updateListInputs(R),R={first:[1],second:[2],operation:[\\"divide\\"],...R};const C=[{result:e.HS.executeBasedOnType(R,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let E={};E.first=O,E.second=k,e.HS.updateListInputs(E),E={first:[1],second:[2],operation:[\\"subtract\\"],...E};const G=[{result:e.HS.executeBasedOnType(E,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let V={};V.second=k,V.first=b,e.HS.updateListInputs(V),V={first:[1],second:[2],operation:[\\"subtract\\"],...V};const z=[{result:e.HS.executeBasedOnType(V,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let F={};F.first=N,e.HS.updateListInputs(F),F={first:[1],second:[2],operation:[\\"divide\\"],...F};const M=[{result:e.HS.executeBasedOnType(F,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let W={};W.first=I,W.second=C,e.HS.updateListInputs(W),W={first:[1],second:[1],operation:[\\"subtract\\"],...W};const X=[{result:e.HS.executeBasedOnType(W,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let Y={};Y.width=G,Y.length=z,e.HS.updateListInputs(Y),Y={width:[1],length:[2],center:[[0,0,0]],direction:[[0,1,0]],...Y};const Z=[{result:await e.HS.executeBasedOnTypeAsync(Y,!1,(e=>t.occt.shapes.wire.createRectangleWire(e))),transformers:[]}];let P={};P.y=X,e.HS.updateListInputs(P),P={x:[0],y:[0],z:[0],...P};const j=[{result:e.HS.executeBasedOnType(P,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let q={};q.y=M,e.HS.updateListInputs(q),q={x:[0],y:[0],z:[0],...q};const J=[{result:e.HS.executeBasedOnType(q,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}],K={shape:[void 0]};let Q={};Q.shape=Z,e.HS.updateListInputs(Q),Q={...K,...Q};const U=[{result:await e.HS.executeBasedOnTypeAsync(Q,!1,(e=>t.occt.shapes.edge.getCornerPointsOfEdgesForShape(e))),transformers:[]}];let $={};$.width=k,$.length=k,$.height=N,$.center=J,e.HS.updateListInputs($),$={width:[1],length:[2],height:[3],center:[[0,0,0]],...$};const _=[{result:await e.HS.executeBasedOnTypeAsync($,!1,(e=>t.occt.shapes.solid.createBox(e))),transformers:[]}];let ee={};ee.width=O,ee.length=b,ee.height=k,ee.center=j,e.HS.updateListInputs(ee),ee={width:[1],length:[2],height:[3],center:[[0,0,0]],...ee};const te=[{result:await e.HS.executeBasedOnTypeAsync(ee,!1,(e=>t.occt.shapes.solid.createBox(e))),transformers:[]}];let se={};se.list=U,e.HS.updateListInputs(se),se={nrLevels:[1],...se};const re=[];for(let e=0;et.occt.transforms.translate(e))),transformers:[]}];let ue={};ue.listElements=[te[0],ie[0],H[0]],e.HS.updateListInputs(ue),ue={...ue};const le=[{result:[ue.listElements?ue.listElements:[]]}],ce={shapes:[void 0]};let pe={};pe.shapes=le,e.HS.updateListInputs(pe),pe={...ce,...pe};const de=[{result:await e.HS.executeBasedOnTypeAsync(pe,!1,(e=>t.occt.shapes.compound.makeCompound(e))),transformers:[]}],fe={entity:[void 0],options:[void 0],babylonMesh:[void 0]};let ye={};ye.options=y,ye.entity=de,e.HS.updateListInputs(ye),ye={...fe,...ye};const he=[{result:await e.HS.executeBasedOnTypeAsync(ye,!1,(e=>t.draw.drawAnyAsync(e))),transformers:[]}];let Se={};Se.value=he,e.HS.updateListInputs(Se),Se={property:[\\"table\\"],...Se},setBitbybitRunnerResultValue(Se.property[0],Se.value[0])}(BitByBit,bitbybit,bitbybitRunnerResult,bitbybitRunnerInputs,Bit);\"}'; + return '{\"type\":\"rete\",\"version\":\"1.0.0-rc.1\",\"script\":\"async function(e,t,s,r,n){let a={};a={property:[\\"width\\"],...a};const o=[{result:[r[a.property[0]]]}];let i={};i={property:[\\"length\\"],...i};const u=[{result:[r[i.property[0]]]}];let l={};l={property:[\\"height\\"],...l};const c=[{result:[r[l.property[0]]]}];let p={};p={property:[\\"thickness\\"],...p};const d=[{result:[r[p.property[0]]]}];let f={};f={precision:[.01],drawFaces:[!0],faceColour:[\\"#7984b9\\"],drawEdges:[!0],edgeColour:[\\"#ffffff\\"],edgeWidth:[1],...f};const y=[{result:e.HS.executeBasedOnType(f,!1,(e=>t.draw.optionsOcctShapeSimple(e))),transformers:[]}];let h={};h={skybox:[\\"clearSky\\"],size:[1e3],blur:[.1],environmentIntensity:[.7],...h};e.HS.executeBasedOnType(h,!1,(e=>t.babylon.scene.enableSkybox(e)));let S={};S={radius:[2],center:[[0,0,0]],direction:[[0,1,0]],...S};const H=[{result:await e.HS.executeBasedOnTypeAsync(S,!1,(e=>t.occt.shapes.face.createCircleFace(e))),transformers:[]}];let m={};m={direction:[[-100,-100,-100]],intensity:[3],diffuse:[\\"#ffffff\\"],specular:[\\"#ffffff\\"],shadowGeneratorMapSize:[1024],enableShadows:[!0],shadowDarkness:[0],...m};e.HS.executeBasedOnType(m,!1,(e=>t.babylon.scene.drawDirectionalLight(e)));const v={value1:[void 0],value2:[void 0]};let w={};w.value1=o,w.value2=[{result:[.7],transformers:[]}],e.HS.updateListInputs(w),w={...v,...w};const O=[{result:e.HS.executeBasedOnType(w,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],B={value1:[void 0],value2:[void 0]};let x={};x.value1=u,x.value2=[{result:[1.4],transformers:[]}],e.HS.updateListInputs(x),x={...B,...x};const b=[{result:e.HS.executeBasedOnType(x,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],L={value1:[void 0],value2:[void 0]};let g={};g.value1=c,g.value2=[{result:[.6],transformers:[]}],e.HS.updateListInputs(g),g={...L,...g};const I=[{result:e.HS.executeBasedOnType(g,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],T={value1:[void 0],value2:[void 0]};let A={};A.value1=d,A.value2=[{result:[.1],transformers:[]}],e.HS.updateListInputs(A),A={...T,...A};const k=[{result:e.HS.executeBasedOnType(A,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}];let D={};D.first=I,D.second=k,e.HS.updateListInputs(D),D={first:[1],second:[1],operation:[\\"subtract\\"],...D};const N=[{result:e.HS.executeBasedOnType(D,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let R={};R.first=k,e.HS.updateListInputs(R),R={first:[1],second:[2],operation:[\\"divide\\"],...R};const C=[{result:e.HS.executeBasedOnType(R,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let E={};E.first=O,E.second=k,e.HS.updateListInputs(E),E={first:[1],second:[2],operation:[\\"subtract\\"],...E};const G=[{result:e.HS.executeBasedOnType(E,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let V={};V.second=k,V.first=b,e.HS.updateListInputs(V),V={first:[1],second:[2],operation:[\\"subtract\\"],...V};const z=[{result:e.HS.executeBasedOnType(V,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let F={};F.first=N,e.HS.updateListInputs(F),F={first:[1],second:[2],operation:[\\"divide\\"],...F};const M=[{result:e.HS.executeBasedOnType(F,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let W={};W.first=I,W.second=C,e.HS.updateListInputs(W),W={first:[1],second:[1],operation:[\\"subtract\\"],...W};const X=[{result:e.HS.executeBasedOnType(W,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let Y={};Y.width=G,Y.length=z,e.HS.updateListInputs(Y),Y={width:[1],length:[2],center:[[0,0,0]],direction:[[0,1,0]],...Y};const Z=[{result:await e.HS.executeBasedOnTypeAsync(Y,!1,(e=>t.occt.shapes.wire.createRectangleWire(e))),transformers:[]}];let P={};P.y=X,e.HS.updateListInputs(P),P={x:[0],y:[0],z:[0],...P};const j=[{result:e.HS.executeBasedOnType(P,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let q={};q.y=M,e.HS.updateListInputs(q),q={x:[0],y:[0],z:[0],...q};const J=[{result:e.HS.executeBasedOnType(q,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}],K={shape:[void 0]};let Q={};Q.shape=Z,e.HS.updateListInputs(Q),Q={...K,...Q};const U=[{result:await e.HS.executeBasedOnTypeAsync(Q,!1,(e=>t.occt.shapes.edge.getCornerPointsOfEdgesForShape(e))),transformers:[]}];let $={};$.width=k,$.length=k,$.height=N,$.center=J,e.HS.updateListInputs($),$={width:[1],length:[2],height:[3],center:[[0,0,0]],...$};const _=[{result:await e.HS.executeBasedOnTypeAsync($,!1,(e=>t.occt.shapes.solid.createBox(e))),transformers:[]}];let ee={};ee.width=O,ee.length=b,ee.height=k,ee.center=j,e.HS.updateListInputs(ee),ee={width:[1],length:[2],height:[3],center:[[0,0,0]],...ee};const te=[{result:await e.HS.executeBasedOnTypeAsync(ee,!1,(e=>t.occt.shapes.solid.createBox(e))),transformers:[]}];let se={};se.list=U,e.HS.updateListInputs(se),se={nrLevels:[1],...se};const re=[];for(let e=0;et.occt.transforms.translate(e))),transformers:[]}];let ue={};ue.listElements=[te[0],ie[0],H[0]],e.HS.updateListInputs(ue),ue={...ue};const le=[{result:[ue.listElements?ue.listElements:[]]}],ce={shapes:[void 0]};let pe={};pe.shapes=le,e.HS.updateListInputs(pe),pe={...ce,...pe};const de=[{result:await e.HS.executeBasedOnTypeAsync(pe,!1,(e=>t.occt.shapes.compound.makeCompound(e))),transformers:[]}],fe={entity:[void 0],options:[void 0],babylonMesh:[void 0]};let ye={};ye.options=y,ye.entity=de,e.HS.updateListInputs(ye),ye={...fe,...ye};const he=[{result:await e.HS.executeBasedOnTypeAsync(ye,!1,(e=>t.draw.drawAnyAsync(e))),transformers:[]}];let Se={};Se.value=he,e.HS.updateListInputs(Se),Se={property:[\\"table\\"],...Se},setBitbybitRunnerResultValue(Se.property[0],Se.value[0])}(BitByBit,bitbybit,bitbybitRunnerResult,bitbybitRunnerInputs,Bit);\"}'; } ``` diff --git a/docs/learn/runners/table-configurator-rete.mdx b/docs/learn/runners/table-configurator-rete.mdx index c306fc7bc..57c58606c 100644 --- a/docs/learn/runners/table-configurator-rete.mdx +++ b/docs/learn/runners/table-configurator-rete.mdx @@ -66,7 +66,7 @@ Below are the `index.html` and `script.js` files you would use on StackBlitz or - + @@ -175,7 +175,7 @@ async function changeModel(value, name) { window.changeModel = changeModel; function getInlineScript() { - return '{"type":"rete","version":"1.0.0-rc.0","script":"async function(e,t,s,r,n){let a={};a={property:[\\"width\\"],...a};const o=[{result:[r[a.property[0]]]}];let i={};i={property:[\\"length\\"],...i};const u=[{result:[r[i.property[0]]]}];let l={};l={property:[\\"height\\"],...l};const c=[{result:[r[l.property[0]]]}];let p={};p={property:[\\"thickness\\"],...p};const d=[{result:[r[p.property[0]]]}];let f={};f={precision:[.01],drawFaces:[!0],faceColour:[\\"#7984b9\\"],drawEdges:[!0],edgeColour:[\\"#ffffff\\"],edgeWidth:[1],...f};const y=[{result:e.HS.executeBasedOnType(f,!1,(e=>t.draw.optionsOcctShapeSimple(e))),transformers:[]}];let h={};h={skybox:[\\"clearSky\\"],size:[1e3],blur:[.1],environmentIntensity:[.7],...h};e.HS.executeBasedOnType(h,!1,(e=>t.babylon.scene.enableSkybox(e)));let S={};S={radius:[2],center:[[0,0,0]],direction:[[0,1,0]],...S};const H=[{result:await e.HS.executeBasedOnTypeAsync(S,!1,(e=>t.occt.shapes.face.createCircleFace(e))),transformers:[]}];let m={};m={direction:[[-100,-100,-100]],intensity:[3],diffuse:[\\"#ffffff\\"],specular:[\\"#ffffff\\"],shadowGeneratorMapSize:[1024],enableShadows:[!0],shadowDarkness:[0],...m};e.HS.executeBasedOnType(m,!1,(e=>t.babylon.scene.drawDirectionalLight(e)));const v={value1:[void 0],value2:[void 0]};let w={};w.value1=o,w.value2=[{result:[.7],transformers:[]}],e.HS.updateListInputs(w),w={...v,...w};const O=[{result:e.HS.executeBasedOnType(w,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],B={value1:[void 0],value2:[void 0]};let x={};x.value1=u,x.value2=[{result:[1.4],transformers:[]}],e.HS.updateListInputs(x),x={...B,...x};const b=[{result:e.HS.executeBasedOnType(x,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],L={value1:[void 0],value2:[void 0]};let g={};g.value1=c,g.value2=[{result:[.6],transformers:[]}],e.HS.updateListInputs(g),g={...L,...g};const I=[{result:e.HS.executeBasedOnType(g,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],T={value1:[void 0],value2:[void 0]};let A={};A.value1=d,A.value2=[{result:[.1],transformers:[]}],e.HS.updateListInputs(A),A={...T,...A};const k=[{result:e.HS.executeBasedOnType(A,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}];let D={};D.first=I,D.second=k,e.HS.updateListInputs(D),D={first:[1],second:[1],operation:[\\"subtract\\"],...D};const N=[{result:e.HS.executeBasedOnType(D,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let R={};R.first=k,e.HS.updateListInputs(R),R={first:[1],second:[2],operation:[\\"divide\\"],...R};const C=[{result:e.HS.executeBasedOnType(R,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let E={};E.first=O,E.second=k,e.HS.updateListInputs(E),E={first:[1],second:[2],operation:[\\"subtract\\"],...E};const G=[{result:e.HS.executeBasedOnType(E,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let V={};V.second=k,V.first=b,e.HS.updateListInputs(V),V={first:[1],second:[2],operation:[\\"subtract\\"],...V};const z=[{result:e.HS.executeBasedOnType(V,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let F={};F.first=N,e.HS.updateListInputs(F),F={first:[1],second:[2],operation:[\\"divide\\"],...F};const M=[{result:e.HS.executeBasedOnType(F,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let W={};W.first=I,W.second=C,e.HS.updateListInputs(W),W={first:[1],second:[1],operation:[\\"subtract\\"],...W};const X=[{result:e.HS.executeBasedOnType(W,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let Y={};Y.width=G,Y.length=z,e.HS.updateListInputs(Y),Y={width:[1],length:[2],center:[[0,0,0]],direction:[[0,1,0]],...Y};const Z=[{result:await e.HS.executeBasedOnTypeAsync(Y,!1,(e=>t.occt.shapes.wire.createRectangleWire(e))),transformers:[]}];let P={};P.y=X,e.HS.updateListInputs(P),P={x:[0],y:[0],z:[0],...P};const j=[{result:e.HS.executeBasedOnType(P,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let q={};q.y=M,e.HS.updateListInputs(q),q={x:[0],y:[0],z:[0],...q};const J=[{result:e.HS.executeBasedOnType(q,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}],K={shape:[void 0]};let Q={};Q.shape=Z,e.HS.updateListInputs(Q),Q={...K,...Q};const U=[{result:await e.HS.executeBasedOnTypeAsync(Q,!1,(e=>t.occt.shapes.edge.getCornerPointsOfEdgesForShape(e))),transformers:[]}];let $={};$.width=k,$.length=k,$.height=N,$.center=J,e.HS.updateListInputs($),$={width:[1],length:[2],height:[3],center:[[0,0,0]],...$};const _=[{result:await e.HS.executeBasedOnTypeAsync($,!1,(e=>t.occt.shapes.solid.createBox(e))),transformers:[]}];let ee={};ee.width=O,ee.length=b,ee.height=k,ee.center=j,e.HS.updateListInputs(ee),ee={width:[1],length:[2],height:[3],center:[[0,0,0]],...ee};const te=[{result:await e.HS.executeBasedOnTypeAsync(ee,!1,(e=>t.occt.shapes.solid.createBox(e))),transformers:[]}];let se={};se.list=U,e.HS.updateListInputs(se),se={nrLevels:[1],...se};const re=[];for(let e=0;et.occt.transforms.translate(e))),transformers:[]}];let ue={};ue.listElements=[te[0],ie[0],H[0]],e.HS.updateListInputs(ue),ue={...ue};const le=[{result:[ue.listElements?ue.listElements:[]]}],ce={shapes:[void 0]};let pe={};pe.shapes=le,e.HS.updateListInputs(pe),pe={...ce,...pe};const de=[{result:await e.HS.executeBasedOnTypeAsync(pe,!1,(e=>t.occt.shapes.compound.makeCompound(e))),transformers:[]}],fe={entity:[void 0],options:[void 0],babylonMesh:[void 0]};let ye={};ye.options=y,ye.entity=de,e.HS.updateListInputs(ye),ye={...fe,...ye};const he=[{result:await e.HS.executeBasedOnTypeAsync(ye,!1,(e=>t.draw.drawAnyAsync(e))),transformers:[]}];let Se={};Se.value=he,e.HS.updateListInputs(Se),Se={property:[\\"table\\"],...Se},setBitbybitRunnerResultValue(Se.property[0],Se.value[0])}(BitByBit,bitbybit,bitbybitRunnerResult,bitbybitRunnerInputs,Bit);"}'; + return '{"type":"rete","version":"1.0.0-rc.1","script":"async function(e,t,s,r,n){let a={};a={property:[\\"width\\"],...a};const o=[{result:[r[a.property[0]]]}];let i={};i={property:[\\"length\\"],...i};const u=[{result:[r[i.property[0]]]}];let l={};l={property:[\\"height\\"],...l};const c=[{result:[r[l.property[0]]]}];let p={};p={property:[\\"thickness\\"],...p};const d=[{result:[r[p.property[0]]]}];let f={};f={precision:[.01],drawFaces:[!0],faceColour:[\\"#7984b9\\"],drawEdges:[!0],edgeColour:[\\"#ffffff\\"],edgeWidth:[1],...f};const y=[{result:e.HS.executeBasedOnType(f,!1,(e=>t.draw.optionsOcctShapeSimple(e))),transformers:[]}];let h={};h={skybox:[\\"clearSky\\"],size:[1e3],blur:[.1],environmentIntensity:[.7],...h};e.HS.executeBasedOnType(h,!1,(e=>t.babylon.scene.enableSkybox(e)));let S={};S={radius:[2],center:[[0,0,0]],direction:[[0,1,0]],...S};const H=[{result:await e.HS.executeBasedOnTypeAsync(S,!1,(e=>t.occt.shapes.face.createCircleFace(e))),transformers:[]}];let m={};m={direction:[[-100,-100,-100]],intensity:[3],diffuse:[\\"#ffffff\\"],specular:[\\"#ffffff\\"],shadowGeneratorMapSize:[1024],enableShadows:[!0],shadowDarkness:[0],...m};e.HS.executeBasedOnType(m,!1,(e=>t.babylon.scene.drawDirectionalLight(e)));const v={value1:[void 0],value2:[void 0]};let w={};w.value1=o,w.value2=[{result:[.7],transformers:[]}],e.HS.updateListInputs(w),w={...v,...w};const O=[{result:e.HS.executeBasedOnType(w,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],B={value1:[void 0],value2:[void 0]};let x={};x.value1=u,x.value2=[{result:[1.4],transformers:[]}],e.HS.updateListInputs(x),x={...B,...x};const b=[{result:e.HS.executeBasedOnType(x,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],L={value1:[void 0],value2:[void 0]};let g={};g.value1=c,g.value2=[{result:[.6],transformers:[]}],e.HS.updateListInputs(g),g={...L,...g};const I=[{result:e.HS.executeBasedOnType(g,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],T={value1:[void 0],value2:[void 0]};let A={};A.value1=d,A.value2=[{result:[.1],transformers:[]}],e.HS.updateListInputs(A),A={...T,...A};const k=[{result:e.HS.executeBasedOnType(A,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}];let D={};D.first=I,D.second=k,e.HS.updateListInputs(D),D={first:[1],second:[1],operation:[\\"subtract\\"],...D};const N=[{result:e.HS.executeBasedOnType(D,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let R={};R.first=k,e.HS.updateListInputs(R),R={first:[1],second:[2],operation:[\\"divide\\"],...R};const C=[{result:e.HS.executeBasedOnType(R,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let E={};E.first=O,E.second=k,e.HS.updateListInputs(E),E={first:[1],second:[2],operation:[\\"subtract\\"],...E};const G=[{result:e.HS.executeBasedOnType(E,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let V={};V.second=k,V.first=b,e.HS.updateListInputs(V),V={first:[1],second:[2],operation:[\\"subtract\\"],...V};const z=[{result:e.HS.executeBasedOnType(V,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let F={};F.first=N,e.HS.updateListInputs(F),F={first:[1],second:[2],operation:[\\"divide\\"],...F};const M=[{result:e.HS.executeBasedOnType(F,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let W={};W.first=I,W.second=C,e.HS.updateListInputs(W),W={first:[1],second:[1],operation:[\\"subtract\\"],...W};const X=[{result:e.HS.executeBasedOnType(W,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let Y={};Y.width=G,Y.length=z,e.HS.updateListInputs(Y),Y={width:[1],length:[2],center:[[0,0,0]],direction:[[0,1,0]],...Y};const Z=[{result:await e.HS.executeBasedOnTypeAsync(Y,!1,(e=>t.occt.shapes.wire.createRectangleWire(e))),transformers:[]}];let P={};P.y=X,e.HS.updateListInputs(P),P={x:[0],y:[0],z:[0],...P};const j=[{result:e.HS.executeBasedOnType(P,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let q={};q.y=M,e.HS.updateListInputs(q),q={x:[0],y:[0],z:[0],...q};const J=[{result:e.HS.executeBasedOnType(q,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}],K={shape:[void 0]};let Q={};Q.shape=Z,e.HS.updateListInputs(Q),Q={...K,...Q};const U=[{result:await e.HS.executeBasedOnTypeAsync(Q,!1,(e=>t.occt.shapes.edge.getCornerPointsOfEdgesForShape(e))),transformers:[]}];let $={};$.width=k,$.length=k,$.height=N,$.center=J,e.HS.updateListInputs($),$={width:[1],length:[2],height:[3],center:[[0,0,0]],...$};const _=[{result:await e.HS.executeBasedOnTypeAsync($,!1,(e=>t.occt.shapes.solid.createBox(e))),transformers:[]}];let ee={};ee.width=O,ee.length=b,ee.height=k,ee.center=j,e.HS.updateListInputs(ee),ee={width:[1],length:[2],height:[3],center:[[0,0,0]],...ee};const te=[{result:await e.HS.executeBasedOnTypeAsync(ee,!1,(e=>t.occt.shapes.solid.createBox(e))),transformers:[]}];let se={};se.list=U,e.HS.updateListInputs(se),se={nrLevels:[1],...se};const re=[];for(let e=0;et.occt.transforms.translate(e))),transformers:[]}];let ue={};ue.listElements=[te[0],ie[0],H[0]],e.HS.updateListInputs(ue),ue={...ue};const le=[{result:[ue.listElements?ue.listElements:[]]}],ce={shapes:[void 0]};let pe={};pe.shapes=le,e.HS.updateListInputs(pe),pe={...ce,...pe};const de=[{result:await e.HS.executeBasedOnTypeAsync(pe,!1,(e=>t.occt.shapes.compound.makeCompound(e))),transformers:[]}],fe={entity:[void 0],options:[void 0],babylonMesh:[void 0]};let ye={};ye.options=y,ye.entity=de,e.HS.updateListInputs(ye),ye={...fe,...ye};const he=[{result:await e.HS.executeBasedOnTypeAsync(ye,!1,(e=>t.draw.drawAnyAsync(e))),transformers:[]}];let Se={};Se.value=he,e.HS.updateListInputs(Se),Se={property:[\\"table\\"],...Se},setBitbybitRunnerResultValue(Se.property[0],Se.value[0])}(BitByBit,bitbybit,bitbybitRunnerResult,bitbybitRunnerInputs,Bit);"}'; } ``` diff --git a/docs/learn/runners/table-configurator-typescript.mdx b/docs/learn/runners/table-configurator-typescript.mdx index 954d65608..135df04ee 100644 --- a/docs/learn/runners/table-configurator-typescript.mdx +++ b/docs/learn/runners/table-configurator-typescript.mdx @@ -71,7 +71,7 @@ Below are the `index.html` and `script.js` files you would use on StackBlitz or - + @@ -181,7 +181,7 @@ Below are the `index.html` and `script.js` files you would use on StackBlitz or window.changeModel = changeModel; function getInlineScript() { - return '{"type":"rete","version":"1.0.0-rc.0","script":"async function(e,t,s,r,n){let a={};a={property:[\\"width\\"],...a};const o=[{result:[r[a.property[0]]]}];let i={};i={property:[\\"length\\"],...i};const u=[{result:[r[i.property[0]]]}];let l={};l={property:[\\"height\\"],...l};const c=[{result:[r[l.property[0]]]}];let p={};p={property:[\\"thickness\\"],...p};const d=[{result:[r[p.property[0]]]}];let f={};f={precision:[.01],drawFaces:[!0],faceColour:[\\"#7984b9\\"],drawEdges:[!0],edgeColour:[\\"#ffffff\\"],edgeWidth:[1],...f};const y=[{result:e.HS.executeBasedOnType(f,!1,(e=>t.draw.optionsOcctShapeSimple(e))),transformers:[]}];let h={};h={skybox:[\\"clearSky\\"],size:[1e3],blur:[.1],environmentIntensity:[.7],...h};e.HS.executeBasedOnType(h,!1,(e=>t.babylon.scene.enableSkybox(e)));let S={};S={radius:[2],center:[[0,0,0]],direction:[[0,1,0]],...S};const H=[{result:await e.HS.executeBasedOnTypeAsync(S,!1,(e=>t.occt.shapes.face.createCircleFace(e))),transformers:[]}];let m={};m={direction:[[-100,-100,-100]],intensity:[3],diffuse:[\\"#ffffff\\"],specular:[\\"#ffffff\\"],shadowGeneratorMapSize:[1024],enableShadows:[!0],shadowDarkness:[0],...m};e.HS.executeBasedOnType(m,!1,(e=>t.babylon.scene.drawDirectionalLight(e)));const v={value1:[void 0],value2:[void 0]};let w={};w.value1=o,w.value2=[{result:[.7],transformers:[]}],e.HS.updateListInputs(w),w={...v,...w};const O=[{result:e.HS.executeBasedOnType(w,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],B={value1:[void 0],value2:[void 0]};let x={};x.value1=u,x.value2=[{result:[1.4],transformers:[]}],e.HS.updateListInputs(x),x={...B,...x};const b=[{result:e.HS.executeBasedOnType(x,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],L={value1:[void 0],value2:[void 0]};let g={};g.value1=c,g.value2=[{result:[.6],transformers:[]}],e.HS.updateListInputs(g),g={...L,...g};const I=[{result:e.HS.executeBasedOnType(g,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],T={value1:[void 0],value2:[void 0]};let A={};A.value1=d,A.value2=[{result:[.1],transformers:[]}],e.HS.updateListInputs(A),A={...T,...A};const k=[{result:e.HS.executeBasedOnType(A,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}];let D={};D.first=I,D.second=k,e.HS.updateListInputs(D),D={first:[1],second:[1],operation:[\\"subtract\\"],...D};const N=[{result:e.HS.executeBasedOnType(D,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let R={};R.first=k,e.HS.updateListInputs(R),R={first:[1],second:[2],operation:[\\"divide\\"],...R};const C=[{result:e.HS.executeBasedOnType(R,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let E={};E.first=O,E.second=k,e.HS.updateListInputs(E),E={first:[1],second:[2],operation:[\\"subtract\\"],...E};const G=[{result:e.HS.executeBasedOnType(E,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let V={};V.second=k,V.first=b,e.HS.updateListInputs(V),V={first:[1],second:[2],operation:[\\"subtract\\"],...V};const z=[{result:e.HS.executeBasedOnType(V,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let F={};F.first=N,e.HS.updateListInputs(F),F={first:[1],second:[2],operation:[\\"divide\\"],...F};const M=[{result:e.HS.executeBasedOnType(F,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let W={};W.first=I,W.second=C,e.HS.updateListInputs(W),W={first:[1],second:[1],operation:[\\"subtract\\"],...W};const X=[{result:e.HS.executeBasedOnType(W,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let Y={};Y.width=G,Y.length=z,e.HS.updateListInputs(Y),Y={width:[1],length:[2],center:[[0,0,0]],direction:[[0,1,0]],...Y};const Z=[{result:await e.HS.executeBasedOnTypeAsync(Y,!1,(e=>t.occt.shapes.wire.createRectangleWire(e))),transformers:[]}];let P={};P.y=X,e.HS.updateListInputs(P),P={x:[0],y:[0],z:[0],...P};const j=[{result:e.HS.executeBasedOnType(P,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let q={};q.y=M,e.HS.updateListInputs(q),q={x:[0],y:[0],z:[0],...q};const J=[{result:e.HS.executeBasedOnType(q,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}],K={shape:[void 0]};let Q={};Q.shape=Z,e.HS.updateListInputs(Q),Q={...K,...Q};const U=[{result:await e.HS.executeBasedOnTypeAsync(Q,!1,(e=>t.occt.shapes.edge.getCornerPointsOfEdgesForShape(e))),transformers:[]}];let $={};$.width=k,$.length=k,$.height=N,$.center=J,e.HS.updateListInputs($),$={width:[1],length:[2],height:[3],center:[[0,0,0]],...$};const _=[{result:await e.HS.executeBasedOnTypeAsync($,!1,(e=>t.occt.shapes.solid.createBox(e))),transformers:[]}];let ee={};ee.width=O,ee.length=b,ee.height=k,ee.center=j,e.HS.updateListInputs(ee),ee={width:[1],length:[2],height:[3],center:[[0,0,0]],...ee};const te=[{result:await e.HS.executeBasedOnTypeAsync(ee,!1,(e=>t.occt.shapes.solid.createBox(e))),transformers:[]}];let se={};se.list=U,e.HS.updateListInputs(se),se={nrLevels:[1],...se};const re=[];for(let e=0;et.occt.transforms.translate(e))),transformers:[]}];let ue={};ue.listElements=[te[0],ie[0],H[0]],e.HS.updateListInputs(ue),ue={...ue};const le=[{result:[ue.listElements?ue.listElements:[]]}],ce={shapes:[void 0]};let pe={};pe.shapes=le,e.HS.updateListInputs(pe),pe={...ce,...pe};const de=[{result:await e.HS.executeBasedOnTypeAsync(pe,!1,(e=>t.occt.shapes.compound.makeCompound(e))),transformers:[]}],fe={entity:[void 0],options:[void 0],babylonMesh:[void 0]};let ye={};ye.options=y,ye.entity=de,e.HS.updateListInputs(ye),ye={...fe,...ye};const he=[{result:await e.HS.executeBasedOnTypeAsync(ye,!1,(e=>t.draw.drawAnyAsync(e))),transformers:[]}];let Se={};Se.value=he,e.HS.updateListInputs(Se),Se={property:[\\"table\\"],...Se},setBitbybitRunnerResultValue(Se.property[0],Se.value[0])}(BitByBit,bitbybit,bitbybitRunnerResult,bitbybitRunnerInputs,Bit);"}'; + return '{"type":"rete","version":"1.0.0-rc.1","script":"async function(e,t,s,r,n){let a={};a={property:[\\"width\\"],...a};const o=[{result:[r[a.property[0]]]}];let i={};i={property:[\\"length\\"],...i};const u=[{result:[r[i.property[0]]]}];let l={};l={property:[\\"height\\"],...l};const c=[{result:[r[l.property[0]]]}];let p={};p={property:[\\"thickness\\"],...p};const d=[{result:[r[p.property[0]]]}];let f={};f={precision:[.01],drawFaces:[!0],faceColour:[\\"#7984b9\\"],drawEdges:[!0],edgeColour:[\\"#ffffff\\"],edgeWidth:[1],...f};const y=[{result:e.HS.executeBasedOnType(f,!1,(e=>t.draw.optionsOcctShapeSimple(e))),transformers:[]}];let h={};h={skybox:[\\"clearSky\\"],size:[1e3],blur:[.1],environmentIntensity:[.7],...h};e.HS.executeBasedOnType(h,!1,(e=>t.babylon.scene.enableSkybox(e)));let S={};S={radius:[2],center:[[0,0,0]],direction:[[0,1,0]],...S};const H=[{result:await e.HS.executeBasedOnTypeAsync(S,!1,(e=>t.occt.shapes.face.createCircleFace(e))),transformers:[]}];let m={};m={direction:[[-100,-100,-100]],intensity:[3],diffuse:[\\"#ffffff\\"],specular:[\\"#ffffff\\"],shadowGeneratorMapSize:[1024],enableShadows:[!0],shadowDarkness:[0],...m};e.HS.executeBasedOnType(m,!1,(e=>t.babylon.scene.drawDirectionalLight(e)));const v={value1:[void 0],value2:[void 0]};let w={};w.value1=o,w.value2=[{result:[.7],transformers:[]}],e.HS.updateListInputs(w),w={...v,...w};const O=[{result:e.HS.executeBasedOnType(w,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],B={value1:[void 0],value2:[void 0]};let x={};x.value1=u,x.value2=[{result:[1.4],transformers:[]}],e.HS.updateListInputs(x),x={...B,...x};const b=[{result:e.HS.executeBasedOnType(x,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],L={value1:[void 0],value2:[void 0]};let g={};g.value1=c,g.value2=[{result:[.6],transformers:[]}],e.HS.updateListInputs(g),g={...L,...g};const I=[{result:e.HS.executeBasedOnType(g,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}],T={value1:[void 0],value2:[void 0]};let A={};A.value1=d,A.value2=[{result:[.1],transformers:[]}],e.HS.updateListInputs(A),A={...T,...A};const k=[{result:e.HS.executeBasedOnType(A,!1,(e=>t.logic.firstDefinedValueGate(e))),transformers:[]}];let D={};D.first=I,D.second=k,e.HS.updateListInputs(D),D={first:[1],second:[1],operation:[\\"subtract\\"],...D};const N=[{result:e.HS.executeBasedOnType(D,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let R={};R.first=k,e.HS.updateListInputs(R),R={first:[1],second:[2],operation:[\\"divide\\"],...R};const C=[{result:e.HS.executeBasedOnType(R,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let E={};E.first=O,E.second=k,e.HS.updateListInputs(E),E={first:[1],second:[2],operation:[\\"subtract\\"],...E};const G=[{result:e.HS.executeBasedOnType(E,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let V={};V.second=k,V.first=b,e.HS.updateListInputs(V),V={first:[1],second:[2],operation:[\\"subtract\\"],...V};const z=[{result:e.HS.executeBasedOnType(V,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let F={};F.first=N,e.HS.updateListInputs(F),F={first:[1],second:[2],operation:[\\"divide\\"],...F};const M=[{result:e.HS.executeBasedOnType(F,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let W={};W.first=I,W.second=C,e.HS.updateListInputs(W),W={first:[1],second:[1],operation:[\\"subtract\\"],...W};const X=[{result:e.HS.executeBasedOnType(W,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let Y={};Y.width=G,Y.length=z,e.HS.updateListInputs(Y),Y={width:[1],length:[2],center:[[0,0,0]],direction:[[0,1,0]],...Y};const Z=[{result:await e.HS.executeBasedOnTypeAsync(Y,!1,(e=>t.occt.shapes.wire.createRectangleWire(e))),transformers:[]}];let P={};P.y=X,e.HS.updateListInputs(P),P={x:[0],y:[0],z:[0],...P};const j=[{result:e.HS.executeBasedOnType(P,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let q={};q.y=M,e.HS.updateListInputs(q),q={x:[0],y:[0],z:[0],...q};const J=[{result:e.HS.executeBasedOnType(q,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}],K={shape:[void 0]};let Q={};Q.shape=Z,e.HS.updateListInputs(Q),Q={...K,...Q};const U=[{result:await e.HS.executeBasedOnTypeAsync(Q,!1,(e=>t.occt.shapes.edge.getCornerPointsOfEdgesForShape(e))),transformers:[]}];let $={};$.width=k,$.length=k,$.height=N,$.center=J,e.HS.updateListInputs($),$={width:[1],length:[2],height:[3],center:[[0,0,0]],...$};const _=[{result:await e.HS.executeBasedOnTypeAsync($,!1,(e=>t.occt.shapes.solid.createBox(e))),transformers:[]}];let ee={};ee.width=O,ee.length=b,ee.height=k,ee.center=j,e.HS.updateListInputs(ee),ee={width:[1],length:[2],height:[3],center:[[0,0,0]],...ee};const te=[{result:await e.HS.executeBasedOnTypeAsync(ee,!1,(e=>t.occt.shapes.solid.createBox(e))),transformers:[]}];let se={};se.list=U,e.HS.updateListInputs(se),se={nrLevels:[1],...se};const re=[];for(let e=0;et.occt.transforms.translate(e))),transformers:[]}];let ue={};ue.listElements=[te[0],ie[0],H[0]],e.HS.updateListInputs(ue),ue={...ue};const le=[{result:[ue.listElements?ue.listElements:[]]}],ce={shapes:[void 0]};let pe={};pe.shapes=le,e.HS.updateListInputs(pe),pe={...ce,...pe};const de=[{result:await e.HS.executeBasedOnTypeAsync(pe,!1,(e=>t.occt.shapes.compound.makeCompound(e))),transformers:[]}],fe={entity:[void 0],options:[void 0],babylonMesh:[void 0]};let ye={};ye.options=y,ye.entity=de,e.HS.updateListInputs(ye),ye={...fe,...ye};const he=[{result:await e.HS.executeBasedOnTypeAsync(ye,!1,(e=>t.draw.drawAnyAsync(e))),transformers:[]}];let Se={};Se.value=he,e.HS.updateListInputs(Se),Se={property:[\\"table\\"],...Se},setBitbybitRunnerResultValue(Se.property[0],Se.value[0])}(BitByBit,bitbybit,bitbybitRunnerResult,bitbybitRunnerInputs,Bit);"}'; } ``` diff --git a/docs/package.json b/docs/package.json index 45eb1f5bb..9579929f9 100644 --- a/docs/package.json +++ b/docs/package.json @@ -1,6 +1,6 @@ { "name": "docs", - "version": "1.0.0-rc.0", + "version": "1.0.0-rc.1", "private": true, "scripts": { "docusaurus": "docusaurus", diff --git a/docs/src/components/BitByBitRenderCanvas/index.tsx b/docs/src/components/BitByBitRenderCanvas/index.tsx index 448b54107..fa9669818 100644 --- a/docs/src/components/BitByBitRenderCanvas/index.tsx +++ b/docs/src/components/BitByBitRenderCanvas/index.tsx @@ -64,7 +64,7 @@ const BitByBitRenderCanvas: React.FC = React.memo(({ const canvasContainerRef = useRef(null); const uniqueId = useId(); const { siteConfig } = useDocusaurusContext(); - const defaultVersion = siteConfig.customFields?.bitbybitVersion as string || "1.0.0-rc.0"; + const defaultVersion = siteConfig.customFields?.bitbybitVersion as string || "1.0.0-rc.1"; const [isIframeReady, setIsIframeReady] = useState(false); const [loadIframe, setLoadIframe] = useState(!requireManualStart); diff --git a/docs/src/components/Version/index.tsx b/docs/src/components/Version/index.tsx index ee5631311..ad200e2c8 100644 --- a/docs/src/components/Version/index.tsx +++ b/docs/src/components/Version/index.tsx @@ -2,7 +2,7 @@ import React, { type ReactNode } from "react"; import useDocusaurusContext from "@docusaurus/useDocusaurusContext"; interface VersionProps { - /** Optional prefix to add before the version (e.g., "v" for "v1.0.0-rc.0") */ + /** Optional prefix to add before the version (e.g., "v" for "v1.0.0-rc.1") */ prefix?: string; /** Optional suffix to add after the version */ suffix?: string; @@ -12,8 +12,8 @@ interface VersionProps { * A component that displays the current Bitbybit version from package.json. * * Usage in MDX files: - * - Just the version: → "1.0.0-rc.0" - * - With v prefix: → "v1.0.0-rc.0" + * - Just the version: → "1.0.0-rc.1" + * - With v prefix: → "v1.0.0-rc.1" * - In a link: [Download](https://example.com//file.md) */ export default function Version({ prefix = "", suffix = "" }: VersionProps): ReactNode { diff --git a/docs/static/llms.txt b/docs/static/llms.txt index 28012971a..bbd63cd40 100644 --- a/docs/static/llms.txt +++ b/docs/static/llms.txt @@ -206,29 +206,29 @@ VS Code MCP Setup: } ``` -### AI Context Files (v0.21.1) +### AI Context Files (v1.0.0-rc.1) Attach these files to your AI coding assistant for Bitbybit API knowledge. #### Beginner Context (Monaco Editor) For online TypeScript editor at bitbybit.dev: -- Full Context (116k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v0.21.1/bitbybit-babylon-monaco-ai-context-v0.21.1.md +- Full Context (116k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v1.0.0-rc.1/bitbybit-babylon-monaco-ai-context-v1.0.0-rc.1.md #### BabylonJS Context -- Full (116k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v0.21.1/bitbybit-babylon-ai-context-v0.21.1.md -- Lite (114k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v0.21.1/bitbybit-babylon-no-comment-min-ai-v0.21.1.md +- Full (116k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v1.0.0-rc.1/bitbybit-babylon-ai-context-v1.0.0-rc.1.md +- Lite (114k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v1.0.0-rc.1/bitbybit-babylon-no-comment-min-ai-v1.0.0-rc.1.md #### Three.js Context -- Full (95k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v0.21.1/bitbybit-three-ai-context-v0.21.1.md -- Lite (82k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v0.21.1/bitbybit-three-no-comment-min-ai-v0.21.1.md +- Full (95k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v1.0.0-rc.1/bitbybit-three-ai-context-v1.0.0-rc.1.md +- Lite (82k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v1.0.0-rc.1/bitbybit-three-no-comment-min-ai-v1.0.0-rc.1.md #### PlayCanvas Context -- Full (94k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v0.21.1/bitbybit-playcanvas-ai-context-v0.21.1.md -- Lite (82k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v0.21.1/bitbybit-playcanvas-no-comment-min-ai-v0.21.1.md +- Full (94k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v1.0.0-rc.1/bitbybit-playcanvas-ai-context-v1.0.0-rc.1.md +- Lite (82k tokens): https://app.bitbybit.dev/assets/ai-prompt-context/v1.0.0-rc.1/bitbybit-playcanvas-no-comment-min-ai-v1.0.0-rc.1.md ### Full API on Github - API with short explanations: https://github.com/bitbybit-dev/bitbybit/blob/master/docs/API.md diff --git a/examples/angular/babylonjs/laptop-holder/package-lock.json b/examples/angular/babylonjs/laptop-holder/package-lock.json index f35c85d3e..eebf08d29 100644 --- a/examples/angular/babylonjs/laptop-holder/package-lock.json +++ b/examples/angular/babylonjs/laptop-holder/package-lock.json @@ -15,7 +15,7 @@ "@angular/material": "21.1.0", "@angular/platform-browser": "21.1.0", "@angular/router": "21.1.0", - "@bitbybit-dev/babylonjs": "1.0.0-rc.0", + "@bitbybit-dev/babylonjs": "1.0.0-rc.1", "rxjs": "^7.8.1", "tslib": "^2.8.0", "zone.js": "~0.15.0" @@ -939,15 +939,15 @@ } }, "node_modules/@babylonjs/core": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.46.2.tgz", - "integrity": "sha512-CrRpd05C6+bQjrmnel4NzNxDCRCHuBCua0cIHxtugGumonTIu9/7D8Dpz/X0X3NWU92dL7qETE1QdPaqlsCJig==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.49.6.tgz", + "integrity": "sha512-Q0wsDfDQhwXhE22ltb89hL+XYaDzBLGDr/sSlKUEsHtALK+u36Ttwa8wVD0XJP30pgFpKIrd1LvdSB9FemNwzg==", "license": "Apache-2.0" }, "node_modules/@babylonjs/gui": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.46.2.tgz", - "integrity": "sha512-1V+aeu/42mWDuYAFvGzeBBHKL2n4f7jZA8Q9QjCJs8VYN/+gsQ5XJekWZZ0z0TV7u8SC9Uw3rsrI/HePn06faw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.49.6.tgz", + "integrity": "sha512-pPFQQtjs3pcqMjC6rkcm8wazznt/rvwOtoSBINFl/zJTaOWlAtMeMOFb+bmCsSwJsXgraymzQjZLfixGkYLdsA==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0" @@ -963,9 +963,9 @@ } }, "node_modules/@babylonjs/loaders": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.46.2.tgz", - "integrity": "sha512-fOATzKPzUmrcB0TuYLU4JEZPs2QONykecf5rb84lRm/MXyHTKfZFuccSS/89xrR43ytYPWQatkg87/+2dSbquw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.49.6.tgz", + "integrity": "sha512-KsguPMqonctgvyjCcR8A3izGaoQoQrEdG3n4mZ4scX/WHskAciW5P/zsE3AUYugOAb+TL7iBW5VCb+sz/uEkVw==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0", @@ -973,18 +973,18 @@ } }, "node_modules/@babylonjs/materials": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.46.2.tgz", - "integrity": "sha512-Yz1fZj+0Pn0yWHFv32XYSXKd8eC3/B50fyj7adUHvgkejl9GS/MBMnvI8rNdZHhKL0m38tdyL0A6PJqVzM0anA==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.49.6.tgz", + "integrity": "sha512-xDfgexV8y5Lp7Ftk8i+DWgERTSmwdLxUIOs5/9yTQTHdecdTZ0gNm5iGTWWdNvGCAX5wqd74Cg4Fwvjok1JeuQ==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.6.0" } }, "node_modules/@babylonjs/serializers": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.46.2.tgz", - "integrity": "sha512-N+pz2NnnO3rWWfikjyIsekv7HWQZHApsFAuAi0oKpBfrv1LJIdvSLrhECpHr/BNcFo5RZG7cOWjxq1NUSGbtdQ==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.49.6.tgz", + "integrity": "sha512-D1uCl7bhl2vMEjZU/dK9mus2sSxviBk85QvDXTUtLKHlpcGDZLzeN8WJkKJZRLTISAZtTvmJotJx1V94Os3T5A==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0", @@ -992,58 +992,49 @@ } }, "node_modules/@bitbybit-dev/babylonjs": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.0.tgz", - "integrity": "sha512-DmpEz9s91A+Q0ATXTn/3iZ1skS6QCN0v6Mm9Slsuf72WqQGmuZwaK0cLTTv52zWC0GVgUwC2uwnqYJminQfnUQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.1.tgz", + "integrity": "sha512-rROt4riF7V0rPvud2rUyXCZXLye3XVCzk3Ju+rhtlJEGljH45Mma2T9x1rzmxFUnqN8kaha5HKYjJBeJjs3h4A==", "license": "MIT", "dependencies": { - "@babylonjs/core": "8.46.2", - "@babylonjs/gui": "8.46.2", + "@babylonjs/core": "8.49.6", + "@babylonjs/gui": "8.49.6", "@babylonjs/havok": "1.3.10", - "@babylonjs/loaders": "8.46.2", - "@babylonjs/materials": "8.46.2", - "@babylonjs/serializers": "8.46.2", - "@bitbybit-dev/core": "1.0.0-rc.0", + "@babylonjs/loaders": "8.49.6", + "@babylonjs/materials": "8.49.6", + "@babylonjs/serializers": "8.49.6", + "@bitbybit-dev/core": "1.0.0-rc.1", "earcut": "2.2.3" } }, "node_modules/@bitbybit-dev/base": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.0.tgz", - "integrity": "sha512-t93K7kNq48A1IZkzsEEFsbbZlxhNPpYBrfEZjnYUOCuZGkFJPjUfWm0zFV081s3fMRINpeKXNyYFBL+HQX2G4Q==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.1.tgz", + "integrity": "sha512-0xaTf1c+u+GRdUfOZMbUkOV8n5GJef9xcKRlWjFtfy4R450yMqmDxRppJ9RLf4T11ZVvhHG9RMqBIiKT1obLgg==", "license": "MIT" }, "node_modules/@bitbybit-dev/core": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.0.tgz", - "integrity": "sha512-HXZAl51rSwlneKzuwqpYmGH/Ngqr8KW1/EyUfhKeLZyHxryfhYuxnvzZXK6jN9dR6mYczo1nE6LFx7V/377AQg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.1.tgz", + "integrity": "sha512-gxKVLMxlfVF99E+weS0S0gAxJNm9u/BJ8pw/mjUGJIFiAS0KkxXy7V0xPiFcBxfRUwoCTNzRT38s8DMk5su0mg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/jscad-worker": "1.0.0-rc.0", - "@bitbybit-dev/manifold-worker": "1.0.0-rc.0", - "@bitbybit-dev/occt-worker": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/jscad-worker": "1.0.0-rc.1", + "@bitbybit-dev/manifold-worker": "1.0.0-rc.1", + "@bitbybit-dev/occt-worker": "1.0.0-rc.1", "jsonpath-plus": "10.3.0", - "rxjs": "7.5.5", + "rxjs": "7.8.2", "verb-nurbs-web": "2.1.3" } }, - "node_modules/@bitbybit-dev/core/node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, "node_modules/@bitbybit-dev/jscad": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.0.tgz", - "integrity": "sha512-9AvLGyoE0/qK6Z4BryrQIer1Dci2VMw6zWWikHV4F7U4VHc7PkcEbpqEPFeesOL63VUdNyTg16L3RGLdLcuRJg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.1.tgz", + "integrity": "sha512-+3w5WFw+vcQ+0rD9Zzq0K7lXxTydkjt+Bz4CgoUim82KaKSLE8ykfkBL/8+JspoJMfo2Tx9O3Gnh7MBmwX5DxA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "@jscad/3mf-serializer": "2.1.12", "@jscad/dxf-serializer": "2.1.18", "@jscad/io-utils": "2.0.28", @@ -1052,79 +1043,52 @@ } }, "node_modules/@bitbybit-dev/jscad-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-xTnu7Rsz4Funa6ihw2sEQC0nDG9QHSZjRq5Uz/yEcOzlW2dGpONWoPXWTPV3kfi/fLYFaBOlTyzbjg5MjQM6xg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-dWy6zbeJPwDQHiruSRd8OzI4hXbhhgAbVGmz6GBHWCYw3NyAW3yc1VaKURsKLk4dJm+wchlCHnXgPqWEoHddvg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "rxjs": "7.5.5" - } - }, - "node_modules/@bitbybit-dev/jscad-worker/node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/manifold": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.0.tgz", - "integrity": "sha512-klXymu41Nt38Bk8/46vukmzkDY6m2WWvNMZBTBMEkmYQSlo4DRpsMJ7rxGpvC5ecwusTieOl3lke6gi1/83tfw==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.1.tgz", + "integrity": "sha512-fwhNMTaQ3sHyzLnjR1+gmfxezhm5kcXXWf6GTlToI/z7q1lasVQlchw9QQYVclI1j1TtJYQd4hNl7HIhNLy9LQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "manifold-3d": "3.3.2" } }, "node_modules/@bitbybit-dev/manifold-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-yllVGubpCWQ0LT2EWrjPS6of3SjUQu4zqz3k8nTFsFU/mqFr9T4fDJw+7kSzGL4JaYVB7T+KTGkca+kFSQd7XQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-AVAucSbH35GlXAaMq729UN9WJY+nUSQRXEQGzWG7Kq6rmLKf15O1j/YDCeqkmTLNIbImeOuL+cpBM/xuwaiemA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "rxjs": "7.5.5" - } - }, - "node_modules/@bitbybit-dev/manifold-worker/node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/occt": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.0.tgz", - "integrity": "sha512-9NtYzYtVnH22W/RiG49UG95s2FCpWaetSOFOAbuz7M+qH44GFkSO18Wy++2w/5rgCbBnHU3Vnp8EvZaL+/5w8g==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.1.tgz", + "integrity": "sha512-DVFqbNiRWnYBLEA1P9imWTIMFl0zi+EUusGTCI166wm2phUb55XxpGkbiWiQ85LmUykORUWoBj/beWkDlwkHbQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0" + "@bitbybit-dev/base": "1.0.0-rc.1" } }, "node_modules/@bitbybit-dev/occt-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-4fpVi/lDgMe0/69IbEU6UycmQXa/7D3S307V2W/gRO0k1okwd2OcKy44jZ1JNYbVN/XFfQwJg1/bnfuOoYgbng==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-Xq0yqdKNyQT0nhJlRVL8IAtv+JteQJWd8UJU8YYV5J8bSs5c05h4ztzCcTwQfVBnVLauzKPurrXAhQ/gY28aRA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/occt": "1.0.0-rc.0", - "rxjs": "7.5.5" - } - }, - "node_modules/@bitbybit-dev/occt-worker/node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" + "@bitbybit-dev/occt": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@emnapi/core": { @@ -4680,9 +4644,9 @@ } }, "node_modules/babylonjs-gltf2interface": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.46.2.tgz", - "integrity": "sha512-w0e4lCvTf4bQ/66aiJMBZPLoi1FEHuX8Puyqi2N/AWMmolAo5cDGR7j1/jMa1QHI8gO4LVBhl0uR5UDw66xkDw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.49.6.tgz", + "integrity": "sha512-7qxi48GxEgX9SIZf1Eze+25YCUUY9X6ZIuoozg0rHZyY9gQBso7HUIWLznsQHeUXey19QS/zirrP1spm1PW8Vw==", "license": "Apache-2.0", "peer": true }, @@ -5135,9 +5099,9 @@ } }, "node_modules/core-js": { - "version": "3.47.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.47.0.tgz", - "integrity": "sha512-c3Q2VVkGAUyupsjRnaNX6u8Dq2vAdzm9iuPj5FW0fRxzlxgq9Q39MDq10IvmQSpLgHQNyQzQmOo6bgGHmH3NNg==", + "version": "3.48.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.48.0.tgz", + "integrity": "sha512-zpEHTy1fjTMZCKLHUZoVeylt9XrzaIN2rbPXEt0k+q7JE5CkCZdo6bNq55bn24a69CH7ErAVLKijxJja4fw+UQ==", "hasInstallScript": true, "license": "MIT", "funding": { @@ -6925,9 +6889,9 @@ } }, "node_modules/nan": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.24.0.tgz", - "integrity": "sha512-Vpf9qnVW1RaDkoNKFUvfxqAbtI8ncb8OJlqZ9wwpXzWPEsvsB1nvdUi6oYrHIkQ1Y/tMDnr1h4nczS0VB9Xykg==", + "version": "2.25.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.25.0.tgz", + "integrity": "sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g==", "license": "MIT", "optional": true }, diff --git a/examples/angular/babylonjs/laptop-holder/package.json b/examples/angular/babylonjs/laptop-holder/package.json index 819787075..245eb601a 100644 --- a/examples/angular/babylonjs/laptop-holder/package.json +++ b/examples/angular/babylonjs/laptop-holder/package.json @@ -16,7 +16,7 @@ "@angular/material":"21.1.0", "@angular/platform-browser": "21.1.0", "@angular/router": "21.1.0", - "@bitbybit-dev/babylonjs": "1.0.0-rc.0", + "@bitbybit-dev/babylonjs": "1.0.0-rc.1", "rxjs": "^7.8.1", "tslib": "^2.8.0", "zone.js": "~0.15.0" diff --git a/examples/angular/babylonjs/laptop-holder/src/main.ts b/examples/angular/babylonjs/laptop-holder/src/main.ts index 9b74cb470..916bf69df 100644 --- a/examples/angular/babylonjs/laptop-holder/src/main.ts +++ b/examples/angular/babylonjs/laptop-holder/src/main.ts @@ -300,25 +300,25 @@ export class App { async ngOnInit() { const canvas = document.getElementById("renderCanvas") as HTMLCanvasElement; - + this.engine = new Engine(canvas, true); this.engine.setHardwareScalingLevel(0.5); this.scene = new Scene(this.engine); this.scene.clearColor = new Color4(0.73, 0.73, 0.73, 1); - + const camera = new ArcRotateCamera("Camera", 1.2, 1.0, 50, new Vector3(0, 11, 5), this.scene); camera.attachControl(canvas, true); camera.wheelPrecision = 30; camera.panningSensibility = 1000; - + const light = new HemisphericLight("HemiLight", new Vector3(0, 1, 0), this.scene); light.intensityMode = Light.INTENSITYMODE_ILLUMINANCE; light.intensity = 1; - + const pointLight = new PointLight("PointLight", new Vector3(-15, 20, -5), this.scene); pointLight.intensity = 8000; pointLight.diffuse = new Color3(0.2, 0.2, 1); - + this.scene.metadata = { shadowGenerators: [] }; const options: InitBitByBitOptions = { @@ -342,7 +342,7 @@ export class App { this.showSpinner.set(false); this.bitbybitInitialised.set(true); this.engine.resize(); - + this.laptopService = new LaptopLogic(this.bitbybit); await this.laptopService.do(); diff --git a/examples/angular/threejs/vite-basic-example/package-lock.json b/examples/angular/threejs/vite-basic-example/package-lock.json index c91038854..1c5fe12c2 100644 --- a/examples/angular/threejs/vite-basic-example/package-lock.json +++ b/examples/angular/threejs/vite-basic-example/package-lock.json @@ -13,8 +13,8 @@ "@angular/forms": "^20.0.0", "@angular/platform-browser": "^20.0.0", "@angular/router": "^20.0.0", - "@bitbybit-dev/threejs": "1.0.0-rc.0", - "rxjs": "7.5.5", + "@bitbybit-dev/threejs": "1.0.0-rc.1", + "rxjs": "7.8.2", "tslib": "^2.5.0", "zone.js": "~0.15.0" }, @@ -265,16 +265,6 @@ "yarn": ">= 1.13.0" } }, - "node_modules/@angular-devkit/architect/node_modules/rxjs": { - "version": "7.8.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", - "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, "node_modules/@angular-devkit/core": { "version": "20.3.13", "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.13.tgz", @@ -303,16 +293,6 @@ } } }, - "node_modules/@angular-devkit/core/node_modules/rxjs": { - "version": "7.8.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", - "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, "node_modules/@angular-devkit/schematics": { "version": "20.3.13", "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-20.3.13.tgz", @@ -332,16 +312,6 @@ "yarn": ">= 1.13.0" } }, - "node_modules/@angular-devkit/schematics/node_modules/rxjs": { - "version": "7.8.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", - "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, "node_modules/@angular/animations": { "version": "20.3.15", "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-20.3.15.tgz", @@ -929,33 +899,33 @@ } }, "node_modules/@bitbybit-dev/base": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.0.tgz", - "integrity": "sha512-t93K7kNq48A1IZkzsEEFsbbZlxhNPpYBrfEZjnYUOCuZGkFJPjUfWm0zFV081s3fMRINpeKXNyYFBL+HQX2G4Q==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.1.tgz", + "integrity": "sha512-0xaTf1c+u+GRdUfOZMbUkOV8n5GJef9xcKRlWjFtfy4R450yMqmDxRppJ9RLf4T11ZVvhHG9RMqBIiKT1obLgg==", "license": "MIT" }, "node_modules/@bitbybit-dev/core": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.0.tgz", - "integrity": "sha512-HXZAl51rSwlneKzuwqpYmGH/Ngqr8KW1/EyUfhKeLZyHxryfhYuxnvzZXK6jN9dR6mYczo1nE6LFx7V/377AQg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.1.tgz", + "integrity": "sha512-gxKVLMxlfVF99E+weS0S0gAxJNm9u/BJ8pw/mjUGJIFiAS0KkxXy7V0xPiFcBxfRUwoCTNzRT38s8DMk5su0mg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/jscad-worker": "1.0.0-rc.0", - "@bitbybit-dev/manifold-worker": "1.0.0-rc.0", - "@bitbybit-dev/occt-worker": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/jscad-worker": "1.0.0-rc.1", + "@bitbybit-dev/manifold-worker": "1.0.0-rc.1", + "@bitbybit-dev/occt-worker": "1.0.0-rc.1", "jsonpath-plus": "10.3.0", - "rxjs": "7.5.5", + "rxjs": "7.8.2", "verb-nurbs-web": "2.1.3" } }, "node_modules/@bitbybit-dev/jscad": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.0.tgz", - "integrity": "sha512-9AvLGyoE0/qK6Z4BryrQIer1Dci2VMw6zWWikHV4F7U4VHc7PkcEbpqEPFeesOL63VUdNyTg16L3RGLdLcuRJg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.1.tgz", + "integrity": "sha512-+3w5WFw+vcQ+0rD9Zzq0K7lXxTydkjt+Bz4CgoUim82KaKSLE8ykfkBL/8+JspoJMfo2Tx9O3Gnh7MBmwX5DxA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "@jscad/3mf-serializer": "2.1.12", "@jscad/dxf-serializer": "2.1.18", "@jscad/io-utils": "2.0.28", @@ -964,61 +934,61 @@ } }, "node_modules/@bitbybit-dev/jscad-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-xTnu7Rsz4Funa6ihw2sEQC0nDG9QHSZjRq5Uz/yEcOzlW2dGpONWoPXWTPV3kfi/fLYFaBOlTyzbjg5MjQM6xg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-dWy6zbeJPwDQHiruSRd8OzI4hXbhhgAbVGmz6GBHWCYw3NyAW3yc1VaKURsKLk4dJm+wchlCHnXgPqWEoHddvg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/manifold": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.0.tgz", - "integrity": "sha512-klXymu41Nt38Bk8/46vukmzkDY6m2WWvNMZBTBMEkmYQSlo4DRpsMJ7rxGpvC5ecwusTieOl3lke6gi1/83tfw==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.1.tgz", + "integrity": "sha512-fwhNMTaQ3sHyzLnjR1+gmfxezhm5kcXXWf6GTlToI/z7q1lasVQlchw9QQYVclI1j1TtJYQd4hNl7HIhNLy9LQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "manifold-3d": "3.3.2" } }, "node_modules/@bitbybit-dev/manifold-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-yllVGubpCWQ0LT2EWrjPS6of3SjUQu4zqz3k8nTFsFU/mqFr9T4fDJw+7kSzGL4JaYVB7T+KTGkca+kFSQd7XQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-AVAucSbH35GlXAaMq729UN9WJY+nUSQRXEQGzWG7Kq6rmLKf15O1j/YDCeqkmTLNIbImeOuL+cpBM/xuwaiemA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/occt": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.0.tgz", - "integrity": "sha512-9NtYzYtVnH22W/RiG49UG95s2FCpWaetSOFOAbuz7M+qH44GFkSO18Wy++2w/5rgCbBnHU3Vnp8EvZaL+/5w8g==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.1.tgz", + "integrity": "sha512-DVFqbNiRWnYBLEA1P9imWTIMFl0zi+EUusGTCI166wm2phUb55XxpGkbiWiQ85LmUykORUWoBj/beWkDlwkHbQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0" + "@bitbybit-dev/base": "1.0.0-rc.1" } }, "node_modules/@bitbybit-dev/occt-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-4fpVi/lDgMe0/69IbEU6UycmQXa/7D3S307V2W/gRO0k1okwd2OcKy44jZ1JNYbVN/XFfQwJg1/bnfuOoYgbng==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-Xq0yqdKNyQT0nhJlRVL8IAtv+JteQJWd8UJU8YYV5J8bSs5c05h4ztzCcTwQfVBnVLauzKPurrXAhQ/gY28aRA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/occt": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/occt": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/threejs": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/threejs/-/threejs-1.0.0-rc.0.tgz", - "integrity": "sha512-rTqroOnabSaPjMrls6w+1W4Ba8xWHs2Zxn8CoqbctNNlT+AYx0Eo2fhvSAYvxhuM2UBD+WC04MVsNt8WR9s5Bg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/threejs/-/threejs-1.0.0-rc.1.tgz", + "integrity": "sha512-zu8rSVai4Jt7OuuK1H7H1E4Bm8q63kxPas0b+Ccbv0C4I6/SnFf5syJ23h/oB8VWZRbRPs+9+UaaKZr+rUTqhQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/core": "1.0.0-rc.0", + "@bitbybit-dev/core": "1.0.0-rc.1", "three": "0.182.0" } }, @@ -4860,9 +4830,9 @@ } }, "node_modules/core-js": { - "version": "3.47.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.47.0.tgz", - "integrity": "sha512-c3Q2VVkGAUyupsjRnaNX6u8Dq2vAdzm9iuPj5FW0fRxzlxgq9Q39MDq10IvmQSpLgHQNyQzQmOo6bgGHmH3NNg==", + "version": "3.48.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.48.0.tgz", + "integrity": "sha512-zpEHTy1fjTMZCKLHUZoVeylt9XrzaIN2rbPXEt0k+q7JE5CkCZdo6bNq55bn24a69CH7ErAVLKijxJja4fw+UQ==", "hasInstallScript": true, "license": "MIT", "funding": { @@ -6766,9 +6736,9 @@ } }, "node_modules/nan": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.24.0.tgz", - "integrity": "sha512-Vpf9qnVW1RaDkoNKFUvfxqAbtI8ncb8OJlqZ9wwpXzWPEsvsB1nvdUi6oYrHIkQ1Y/tMDnr1h4nczS0VB9Xykg==", + "version": "2.25.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.25.0.tgz", + "integrity": "sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g==", "license": "MIT", "optional": true }, @@ -7805,9 +7775,9 @@ } }, "node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.1.0" diff --git a/examples/angular/threejs/vite-basic-example/package.json b/examples/angular/threejs/vite-basic-example/package.json index 31470326b..8aacbdbef 100644 --- a/examples/angular/threejs/vite-basic-example/package.json +++ b/examples/angular/threejs/vite-basic-example/package.json @@ -14,7 +14,7 @@ "@angular/forms": "^20.0.0", "@angular/platform-browser": "^20.0.0", "@angular/router": "^20.0.0", - "@bitbybit-dev/threejs": "1.0.0-rc.0", + "@bitbybit-dev/threejs": "1.0.0-rc.1", "rxjs": "7.8.2", "tslib": "^2.5.0", "zone.js": "~0.15.0" diff --git a/examples/angular/threejs/vite-basic-example/src/workers/manifold.worker.ts b/examples/angular/threejs/vite-basic-example/src/workers/manifold.worker.ts index c518673a9..15e007907 100644 --- a/examples/angular/threejs/vite-basic-example/src/workers/manifold.worker.ts +++ b/examples/angular/threejs/vite-basic-example/src/workers/manifold.worker.ts @@ -7,7 +7,7 @@ import Module from "manifold-3d"; const init = async () => { const wasm = await Module({ locateFile: () => { - return "https://git-cdn.bitbybit.dev/v1.0.0-rc.0/wasm/manifold-3-3-2.wasm"; + return "https://git-cdn.bitbybit.dev/v1.0.0-rc.1/wasm/manifold-3-3-2.wasm"; }, }); wasm.setup(); diff --git a/examples/nextjs/babylonjs/simple/package-lock.json b/examples/nextjs/babylonjs/simple/package-lock.json index 320d0e4eb..f2923616c 100644 --- a/examples/nextjs/babylonjs/simple/package-lock.json +++ b/examples/nextjs/babylonjs/simple/package-lock.json @@ -8,7 +8,7 @@ "name": "simple", "version": "0.1.0", "dependencies": { - "@bitbybit-dev/babylonjs": "1.0.0-rc.0", + "@bitbybit-dev/babylonjs": "1.0.0-rc.1", "file-loader": "6.2.0", "next": "15.0.1", "react": "19.0.0-rc-69d4b800-20241021", @@ -38,15 +38,15 @@ } }, "node_modules/@babylonjs/core": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.46.2.tgz", - "integrity": "sha512-CrRpd05C6+bQjrmnel4NzNxDCRCHuBCua0cIHxtugGumonTIu9/7D8Dpz/X0X3NWU92dL7qETE1QdPaqlsCJig==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.49.6.tgz", + "integrity": "sha512-Q0wsDfDQhwXhE22ltb89hL+XYaDzBLGDr/sSlKUEsHtALK+u36Ttwa8wVD0XJP30pgFpKIrd1LvdSB9FemNwzg==", "license": "Apache-2.0" }, "node_modules/@babylonjs/gui": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.46.2.tgz", - "integrity": "sha512-1V+aeu/42mWDuYAFvGzeBBHKL2n4f7jZA8Q9QjCJs8VYN/+gsQ5XJekWZZ0z0TV7u8SC9Uw3rsrI/HePn06faw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.49.6.tgz", + "integrity": "sha512-pPFQQtjs3pcqMjC6rkcm8wazznt/rvwOtoSBINFl/zJTaOWlAtMeMOFb+bmCsSwJsXgraymzQjZLfixGkYLdsA==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0" @@ -61,9 +61,9 @@ } }, "node_modules/@babylonjs/loaders": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.46.2.tgz", - "integrity": "sha512-fOATzKPzUmrcB0TuYLU4JEZPs2QONykecf5rb84lRm/MXyHTKfZFuccSS/89xrR43ytYPWQatkg87/+2dSbquw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.49.6.tgz", + "integrity": "sha512-KsguPMqonctgvyjCcR8A3izGaoQoQrEdG3n4mZ4scX/WHskAciW5P/zsE3AUYugOAb+TL7iBW5VCb+sz/uEkVw==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0", @@ -71,18 +71,18 @@ } }, "node_modules/@babylonjs/materials": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.46.2.tgz", - "integrity": "sha512-Yz1fZj+0Pn0yWHFv32XYSXKd8eC3/B50fyj7adUHvgkejl9GS/MBMnvI8rNdZHhKL0m38tdyL0A6PJqVzM0anA==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.49.6.tgz", + "integrity": "sha512-xDfgexV8y5Lp7Ftk8i+DWgERTSmwdLxUIOs5/9yTQTHdecdTZ0gNm5iGTWWdNvGCAX5wqd74Cg4Fwvjok1JeuQ==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.6.0" } }, "node_modules/@babylonjs/serializers": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.46.2.tgz", - "integrity": "sha512-N+pz2NnnO3rWWfikjyIsekv7HWQZHApsFAuAi0oKpBfrv1LJIdvSLrhECpHr/BNcFo5RZG7cOWjxq1NUSGbtdQ==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.49.6.tgz", + "integrity": "sha512-D1uCl7bhl2vMEjZU/dK9mus2sSxviBk85QvDXTUtLKHlpcGDZLzeN8WJkKJZRLTISAZtTvmJotJx1V94Os3T5A==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0", @@ -90,49 +90,49 @@ } }, "node_modules/@bitbybit-dev/babylonjs": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.0.tgz", - "integrity": "sha512-DmpEz9s91A+Q0ATXTn/3iZ1skS6QCN0v6Mm9Slsuf72WqQGmuZwaK0cLTTv52zWC0GVgUwC2uwnqYJminQfnUQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.1.tgz", + "integrity": "sha512-rROt4riF7V0rPvud2rUyXCZXLye3XVCzk3Ju+rhtlJEGljH45Mma2T9x1rzmxFUnqN8kaha5HKYjJBeJjs3h4A==", "license": "MIT", "dependencies": { - "@babylonjs/core": "8.46.2", - "@babylonjs/gui": "8.46.2", + "@babylonjs/core": "8.49.6", + "@babylonjs/gui": "8.49.6", "@babylonjs/havok": "1.3.10", - "@babylonjs/loaders": "8.46.2", - "@babylonjs/materials": "8.46.2", - "@babylonjs/serializers": "8.46.2", - "@bitbybit-dev/core": "1.0.0-rc.0", + "@babylonjs/loaders": "8.49.6", + "@babylonjs/materials": "8.49.6", + "@babylonjs/serializers": "8.49.6", + "@bitbybit-dev/core": "1.0.0-rc.1", "earcut": "2.2.3" } }, "node_modules/@bitbybit-dev/base": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.0.tgz", - "integrity": "sha512-t93K7kNq48A1IZkzsEEFsbbZlxhNPpYBrfEZjnYUOCuZGkFJPjUfWm0zFV081s3fMRINpeKXNyYFBL+HQX2G4Q==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.1.tgz", + "integrity": "sha512-0xaTf1c+u+GRdUfOZMbUkOV8n5GJef9xcKRlWjFtfy4R450yMqmDxRppJ9RLf4T11ZVvhHG9RMqBIiKT1obLgg==", "license": "MIT" }, "node_modules/@bitbybit-dev/core": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.0.tgz", - "integrity": "sha512-HXZAl51rSwlneKzuwqpYmGH/Ngqr8KW1/EyUfhKeLZyHxryfhYuxnvzZXK6jN9dR6mYczo1nE6LFx7V/377AQg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.1.tgz", + "integrity": "sha512-gxKVLMxlfVF99E+weS0S0gAxJNm9u/BJ8pw/mjUGJIFiAS0KkxXy7V0xPiFcBxfRUwoCTNzRT38s8DMk5su0mg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/jscad-worker": "1.0.0-rc.0", - "@bitbybit-dev/manifold-worker": "1.0.0-rc.0", - "@bitbybit-dev/occt-worker": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/jscad-worker": "1.0.0-rc.1", + "@bitbybit-dev/manifold-worker": "1.0.0-rc.1", + "@bitbybit-dev/occt-worker": "1.0.0-rc.1", "jsonpath-plus": "10.3.0", - "rxjs": "7.5.5", + "rxjs": "7.8.2", "verb-nurbs-web": "2.1.3" } }, "node_modules/@bitbybit-dev/jscad": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.0.tgz", - "integrity": "sha512-9AvLGyoE0/qK6Z4BryrQIer1Dci2VMw6zWWikHV4F7U4VHc7PkcEbpqEPFeesOL63VUdNyTg16L3RGLdLcuRJg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.1.tgz", + "integrity": "sha512-+3w5WFw+vcQ+0rD9Zzq0K7lXxTydkjt+Bz4CgoUim82KaKSLE8ykfkBL/8+JspoJMfo2Tx9O3Gnh7MBmwX5DxA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "@jscad/3mf-serializer": "2.1.12", "@jscad/dxf-serializer": "2.1.18", "@jscad/io-utils": "2.0.28", @@ -141,52 +141,52 @@ } }, "node_modules/@bitbybit-dev/jscad-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-xTnu7Rsz4Funa6ihw2sEQC0nDG9QHSZjRq5Uz/yEcOzlW2dGpONWoPXWTPV3kfi/fLYFaBOlTyzbjg5MjQM6xg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-dWy6zbeJPwDQHiruSRd8OzI4hXbhhgAbVGmz6GBHWCYw3NyAW3yc1VaKURsKLk4dJm+wchlCHnXgPqWEoHddvg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/manifold": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.0.tgz", - "integrity": "sha512-klXymu41Nt38Bk8/46vukmzkDY6m2WWvNMZBTBMEkmYQSlo4DRpsMJ7rxGpvC5ecwusTieOl3lke6gi1/83tfw==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.1.tgz", + "integrity": "sha512-fwhNMTaQ3sHyzLnjR1+gmfxezhm5kcXXWf6GTlToI/z7q1lasVQlchw9QQYVclI1j1TtJYQd4hNl7HIhNLy9LQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "manifold-3d": "3.3.2" } }, "node_modules/@bitbybit-dev/manifold-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-yllVGubpCWQ0LT2EWrjPS6of3SjUQu4zqz3k8nTFsFU/mqFr9T4fDJw+7kSzGL4JaYVB7T+KTGkca+kFSQd7XQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-AVAucSbH35GlXAaMq729UN9WJY+nUSQRXEQGzWG7Kq6rmLKf15O1j/YDCeqkmTLNIbImeOuL+cpBM/xuwaiemA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/occt": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.0.tgz", - "integrity": "sha512-9NtYzYtVnH22W/RiG49UG95s2FCpWaetSOFOAbuz7M+qH44GFkSO18Wy++2w/5rgCbBnHU3Vnp8EvZaL+/5w8g==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.1.tgz", + "integrity": "sha512-DVFqbNiRWnYBLEA1P9imWTIMFl0zi+EUusGTCI166wm2phUb55XxpGkbiWiQ85LmUykORUWoBj/beWkDlwkHbQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0" + "@bitbybit-dev/base": "1.0.0-rc.1" } }, "node_modules/@bitbybit-dev/occt-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-4fpVi/lDgMe0/69IbEU6UycmQXa/7D3S307V2W/gRO0k1okwd2OcKy44jZ1JNYbVN/XFfQwJg1/bnfuOoYgbng==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-Xq0yqdKNyQT0nhJlRVL8IAtv+JteQJWd8UJU8YYV5J8bSs5c05h4ztzCcTwQfVBnVLauzKPurrXAhQ/gY28aRA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/occt": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/occt": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@emnapi/runtime": { @@ -1934,9 +1934,9 @@ } }, "node_modules/babylonjs-gltf2interface": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.46.2.tgz", - "integrity": "sha512-w0e4lCvTf4bQ/66aiJMBZPLoi1FEHuX8Puyqi2N/AWMmolAo5cDGR7j1/jMa1QHI8gO4LVBhl0uR5UDw66xkDw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.49.6.tgz", + "integrity": "sha512-7qxi48GxEgX9SIZf1Eze+25YCUUY9X6ZIuoozg0rHZyY9gQBso7HUIWLznsQHeUXey19QS/zirrP1spm1PW8Vw==", "license": "Apache-2.0", "peer": true }, @@ -2232,9 +2232,9 @@ "license": "MIT" }, "node_modules/core-js": { - "version": "3.47.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.47.0.tgz", - "integrity": "sha512-c3Q2VVkGAUyupsjRnaNX6u8Dq2vAdzm9iuPj5FW0fRxzlxgq9Q39MDq10IvmQSpLgHQNyQzQmOo6bgGHmH3NNg==", + "version": "3.48.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.48.0.tgz", + "integrity": "sha512-zpEHTy1fjTMZCKLHUZoVeylt9XrzaIN2rbPXEt0k+q7JE5CkCZdo6bNq55bn24a69CH7ErAVLKijxJja4fw+UQ==", "hasInstallScript": true, "license": "MIT", "funding": { @@ -4494,9 +4494,9 @@ } }, "node_modules/nan": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.24.0.tgz", - "integrity": "sha512-Vpf9qnVW1RaDkoNKFUvfxqAbtI8ncb8OJlqZ9wwpXzWPEsvsB1nvdUi6oYrHIkQ1Y/tMDnr1h4nczS0VB9Xykg==", + "version": "2.25.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.25.0.tgz", + "integrity": "sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g==", "license": "MIT", "optional": true }, @@ -5754,9 +5754,9 @@ } }, "node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.1.0" diff --git a/examples/nextjs/babylonjs/simple/package.json b/examples/nextjs/babylonjs/simple/package.json index 1a515d43b..be07487fa 100644 --- a/examples/nextjs/babylonjs/simple/package.json +++ b/examples/nextjs/babylonjs/simple/package.json @@ -9,7 +9,7 @@ "lint": "next lint" }, "dependencies": { - "@bitbybit-dev/babylonjs": "1.0.0-rc.0", + "@bitbybit-dev/babylonjs": "1.0.0-rc.1", "react": "19.0.0-rc-69d4b800-20241021", "react-dom": "19.0.0-rc-69d4b800-20241021", "next": "15.0.1", diff --git a/examples/node/basic/index.ts b/examples/node/basic/index.ts index 478560a1d..002cc76c9 100644 --- a/examples/node/basic/index.ts +++ b/examples/node/basic/index.ts @@ -11,7 +11,7 @@ async function run() { console.log("initializing..."); // For Node.js, we need to specify the path to the WASM file - const wasmPath = require.resolve("@bitbybit-dev/occt/bitbybit-dev-occt/bitbybit-dev-occt.5e93f201.wasm"); + const wasmPath = require.resolve("@bitbybit-dev/occt/bitbybit-dev-occt/bitbybit-dev-occt.dec37f82.wasm"); const occ = await initOpenCascade({ locateFile: (path: string) => { diff --git a/examples/node/basic/package-lock.json b/examples/node/basic/package-lock.json index da66a1ba7..0455e1bd2 100644 --- a/examples/node/basic/package-lock.json +++ b/examples/node/basic/package-lock.json @@ -9,13 +9,13 @@ "version": "1.0.0", "license": "MIT", "dependencies": { - "@bitbybit-dev/occt": "^1.0.0-rc.0" + "@bitbybit-dev/occt": "1.0.0-rc.1" }, "devDependencies": { "concurrently": "^7.6.0", "extensionless": "1.9.9", "nodemon": "^2.0.20", - "typescript": "^4.9.4" + "typescript": "~5.8.0" }, "engines": { "node": ">=20.19.4" @@ -34,18 +34,18 @@ } }, "node_modules/@bitbybit-dev/base": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.0.tgz", - "integrity": "sha512-t93K7kNq48A1IZkzsEEFsbbZlxhNPpYBrfEZjnYUOCuZGkFJPjUfWm0zFV081s3fMRINpeKXNyYFBL+HQX2G4Q==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.1.tgz", + "integrity": "sha512-0xaTf1c+u+GRdUfOZMbUkOV8n5GJef9xcKRlWjFtfy4R450yMqmDxRppJ9RLf4T11ZVvhHG9RMqBIiKT1obLgg==", "license": "MIT" }, "node_modules/@bitbybit-dev/occt": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.0.tgz", - "integrity": "sha512-9NtYzYtVnH22W/RiG49UG95s2FCpWaetSOFOAbuz7M+qH44GFkSO18Wy++2w/5rgCbBnHU3Vnp8EvZaL+/5w8g==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.1.tgz", + "integrity": "sha512-DVFqbNiRWnYBLEA1P9imWTIMFl0zi+EUusGTCI166wm2phUb55XxpGkbiWiQ85LmUykORUWoBj/beWkDlwkHbQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0" + "@bitbybit-dev/base": "1.0.0-rc.1" } }, "node_modules/ansi-regex": { @@ -664,16 +664,17 @@ "dev": true }, "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", "dev": true, + "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=4.2.0" + "node": ">=14.17" } }, "node_modules/undefsafe": { diff --git a/examples/node/basic/package.json b/examples/node/basic/package.json index cecf3df6b..591014fbe 100644 --- a/examples/node/basic/package.json +++ b/examples/node/basic/package.json @@ -15,7 +15,7 @@ "node": ">=20.19.4" }, "dependencies": { - "@bitbybit-dev/occt": "^1.0.0" + "@bitbybit-dev/occt": "1.0.0-rc.1" }, "devDependencies": { "extensionless": "1.9.9", diff --git a/examples/node/express-app/bitbybit.ts b/examples/node/express-app/bitbybit.ts index 2963fb927..2bfc08487 100644 --- a/examples/node/express-app/bitbybit.ts +++ b/examples/node/express-app/bitbybit.ts @@ -64,7 +64,7 @@ export class BitByBitBase { async init() { // Initialize OCCT (OpenCascade) with locateFile for Node.js WASM loading - const wasmPath = require.resolve("@bitbybit-dev/occt/bitbybit-dev-occt/bitbybit-dev-occt.5e93f201.wasm"); + const wasmPath = require.resolve("@bitbybit-dev/occt/bitbybit-dev-occt/bitbybit-dev-occt.dec37f82.wasm"); const occ = await (initOpenCascade as (options?: { locateFile?: (path: string) => string }) => Promise)({ locateFile: (path: string) => { if (path.endsWith(".wasm")) { diff --git a/examples/node/express-app/package-lock.json b/examples/node/express-app/package-lock.json index 1d22d4cd2..bf5d628da 100644 --- a/examples/node/express-app/package-lock.json +++ b/examples/node/express-app/package-lock.json @@ -9,11 +9,11 @@ "version": "1.0.0", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/core": "1.0.0-rc.0", - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "@bitbybit-dev/occt": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/core": "1.0.0-rc.1", + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "@bitbybit-dev/occt": "1.0.0-rc.1", "dotenv": "^16.0.3", "express": "^4.18.2", "jsonpath-plus": "^10.3.0", @@ -31,33 +31,33 @@ } }, "node_modules/@bitbybit-dev/base": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.0.tgz", - "integrity": "sha512-t93K7kNq48A1IZkzsEEFsbbZlxhNPpYBrfEZjnYUOCuZGkFJPjUfWm0zFV081s3fMRINpeKXNyYFBL+HQX2G4Q==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.1.tgz", + "integrity": "sha512-0xaTf1c+u+GRdUfOZMbUkOV8n5GJef9xcKRlWjFtfy4R450yMqmDxRppJ9RLf4T11ZVvhHG9RMqBIiKT1obLgg==", "license": "MIT" }, "node_modules/@bitbybit-dev/core": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.0.tgz", - "integrity": "sha512-HXZAl51rSwlneKzuwqpYmGH/Ngqr8KW1/EyUfhKeLZyHxryfhYuxnvzZXK6jN9dR6mYczo1nE6LFx7V/377AQg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.1.tgz", + "integrity": "sha512-gxKVLMxlfVF99E+weS0S0gAxJNm9u/BJ8pw/mjUGJIFiAS0KkxXy7V0xPiFcBxfRUwoCTNzRT38s8DMk5su0mg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/jscad-worker": "1.0.0-rc.0", - "@bitbybit-dev/manifold-worker": "1.0.0-rc.0", - "@bitbybit-dev/occt-worker": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/jscad-worker": "1.0.0-rc.1", + "@bitbybit-dev/manifold-worker": "1.0.0-rc.1", + "@bitbybit-dev/occt-worker": "1.0.0-rc.1", "jsonpath-plus": "10.3.0", - "rxjs": "7.5.5", + "rxjs": "7.8.2", "verb-nurbs-web": "2.1.3" } }, "node_modules/@bitbybit-dev/jscad": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.0.tgz", - "integrity": "sha512-9AvLGyoE0/qK6Z4BryrQIer1Dci2VMw6zWWikHV4F7U4VHc7PkcEbpqEPFeesOL63VUdNyTg16L3RGLdLcuRJg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.1.tgz", + "integrity": "sha512-+3w5WFw+vcQ+0rD9Zzq0K7lXxTydkjt+Bz4CgoUim82KaKSLE8ykfkBL/8+JspoJMfo2Tx9O3Gnh7MBmwX5DxA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "@jscad/3mf-serializer": "2.1.12", "@jscad/dxf-serializer": "2.1.18", "@jscad/io-utils": "2.0.28", @@ -66,52 +66,52 @@ } }, "node_modules/@bitbybit-dev/jscad-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-xTnu7Rsz4Funa6ihw2sEQC0nDG9QHSZjRq5Uz/yEcOzlW2dGpONWoPXWTPV3kfi/fLYFaBOlTyzbjg5MjQM6xg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-dWy6zbeJPwDQHiruSRd8OzI4hXbhhgAbVGmz6GBHWCYw3NyAW3yc1VaKURsKLk4dJm+wchlCHnXgPqWEoHddvg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/manifold": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.0.tgz", - "integrity": "sha512-klXymu41Nt38Bk8/46vukmzkDY6m2WWvNMZBTBMEkmYQSlo4DRpsMJ7rxGpvC5ecwusTieOl3lke6gi1/83tfw==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.1.tgz", + "integrity": "sha512-fwhNMTaQ3sHyzLnjR1+gmfxezhm5kcXXWf6GTlToI/z7q1lasVQlchw9QQYVclI1j1TtJYQd4hNl7HIhNLy9LQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "manifold-3d": "3.3.2" } }, "node_modules/@bitbybit-dev/manifold-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-yllVGubpCWQ0LT2EWrjPS6of3SjUQu4zqz3k8nTFsFU/mqFr9T4fDJw+7kSzGL4JaYVB7T+KTGkca+kFSQd7XQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-AVAucSbH35GlXAaMq729UN9WJY+nUSQRXEQGzWG7Kq6rmLKf15O1j/YDCeqkmTLNIbImeOuL+cpBM/xuwaiemA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/occt": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.0.tgz", - "integrity": "sha512-9NtYzYtVnH22W/RiG49UG95s2FCpWaetSOFOAbuz7M+qH44GFkSO18Wy++2w/5rgCbBnHU3Vnp8EvZaL+/5w8g==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.1.tgz", + "integrity": "sha512-DVFqbNiRWnYBLEA1P9imWTIMFl0zi+EUusGTCI166wm2phUb55XxpGkbiWiQ85LmUykORUWoBj/beWkDlwkHbQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0" + "@bitbybit-dev/base": "1.0.0-rc.1" } }, "node_modules/@bitbybit-dev/occt-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-4fpVi/lDgMe0/69IbEU6UycmQXa/7D3S307V2W/gRO0k1okwd2OcKy44jZ1JNYbVN/XFfQwJg1/bnfuOoYgbng==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-Xq0yqdKNyQT0nhJlRVL8IAtv+JteQJWd8UJU8YYV5J8bSs5c05h4ztzCcTwQfVBnVLauzKPurrXAhQ/gY28aRA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/occt": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/occt": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@emnapi/runtime": { @@ -2120,9 +2120,10 @@ } }, "node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", + "license": "Apache-2.0", "dependencies": { "tslib": "^2.1.0" } @@ -2435,30 +2436,30 @@ }, "dependencies": { "@bitbybit-dev/base": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.0.tgz", - "integrity": "sha512-t93K7kNq48A1IZkzsEEFsbbZlxhNPpYBrfEZjnYUOCuZGkFJPjUfWm0zFV081s3fMRINpeKXNyYFBL+HQX2G4Q==" + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.1.tgz", + "integrity": "sha512-0xaTf1c+u+GRdUfOZMbUkOV8n5GJef9xcKRlWjFtfy4R450yMqmDxRppJ9RLf4T11ZVvhHG9RMqBIiKT1obLgg==" }, "@bitbybit-dev/core": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.0.tgz", - "integrity": "sha512-HXZAl51rSwlneKzuwqpYmGH/Ngqr8KW1/EyUfhKeLZyHxryfhYuxnvzZXK6jN9dR6mYczo1nE6LFx7V/377AQg==", - "requires": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/jscad-worker": "1.0.0-rc.0", - "@bitbybit-dev/manifold-worker": "1.0.0-rc.0", - "@bitbybit-dev/occt-worker": "1.0.0-rc.0", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.1.tgz", + "integrity": "sha512-gxKVLMxlfVF99E+weS0S0gAxJNm9u/BJ8pw/mjUGJIFiAS0KkxXy7V0xPiFcBxfRUwoCTNzRT38s8DMk5su0mg==", + "requires": { + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/jscad-worker": "1.0.0-rc.1", + "@bitbybit-dev/manifold-worker": "1.0.0-rc.1", + "@bitbybit-dev/occt-worker": "1.0.0-rc.1", "jsonpath-plus": "10.3.0", - "rxjs": "7.5.5", + "rxjs": "7.8.2", "verb-nurbs-web": "2.1.3" } }, "@bitbybit-dev/jscad": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.0.tgz", - "integrity": "sha512-9AvLGyoE0/qK6Z4BryrQIer1Dci2VMw6zWWikHV4F7U4VHc7PkcEbpqEPFeesOL63VUdNyTg16L3RGLdLcuRJg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.1.tgz", + "integrity": "sha512-+3w5WFw+vcQ+0rD9Zzq0K7lXxTydkjt+Bz4CgoUim82KaKSLE8ykfkBL/8+JspoJMfo2Tx9O3Gnh7MBmwX5DxA==", "requires": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "@jscad/3mf-serializer": "2.1.12", "@jscad/dxf-serializer": "2.1.18", "@jscad/io-utils": "2.0.28", @@ -2467,47 +2468,47 @@ } }, "@bitbybit-dev/jscad-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-xTnu7Rsz4Funa6ihw2sEQC0nDG9QHSZjRq5Uz/yEcOzlW2dGpONWoPXWTPV3kfi/fLYFaBOlTyzbjg5MjQM6xg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-dWy6zbeJPwDQHiruSRd8OzI4hXbhhgAbVGmz6GBHWCYw3NyAW3yc1VaKURsKLk4dJm+wchlCHnXgPqWEoHddvg==", "requires": { - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "@bitbybit-dev/manifold": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.0.tgz", - "integrity": "sha512-klXymu41Nt38Bk8/46vukmzkDY6m2WWvNMZBTBMEkmYQSlo4DRpsMJ7rxGpvC5ecwusTieOl3lke6gi1/83tfw==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.1.tgz", + "integrity": "sha512-fwhNMTaQ3sHyzLnjR1+gmfxezhm5kcXXWf6GTlToI/z7q1lasVQlchw9QQYVclI1j1TtJYQd4hNl7HIhNLy9LQ==", "requires": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "manifold-3d": "3.3.2" } }, "@bitbybit-dev/manifold-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-yllVGubpCWQ0LT2EWrjPS6of3SjUQu4zqz3k8nTFsFU/mqFr9T4fDJw+7kSzGL4JaYVB7T+KTGkca+kFSQd7XQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-AVAucSbH35GlXAaMq729UN9WJY+nUSQRXEQGzWG7Kq6rmLKf15O1j/YDCeqkmTLNIbImeOuL+cpBM/xuwaiemA==", "requires": { - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "@bitbybit-dev/occt": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.0.tgz", - "integrity": "sha512-9NtYzYtVnH22W/RiG49UG95s2FCpWaetSOFOAbuz7M+qH44GFkSO18Wy++2w/5rgCbBnHU3Vnp8EvZaL+/5w8g==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.1.tgz", + "integrity": "sha512-DVFqbNiRWnYBLEA1P9imWTIMFl0zi+EUusGTCI166wm2phUb55XxpGkbiWiQ85LmUykORUWoBj/beWkDlwkHbQ==", "requires": { - "@bitbybit-dev/base": "1.0.0-rc.0" + "@bitbybit-dev/base": "1.0.0-rc.1" } }, "@bitbybit-dev/occt-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-4fpVi/lDgMe0/69IbEU6UycmQXa/7D3S307V2W/gRO0k1okwd2OcKy44jZ1JNYbVN/XFfQwJg1/bnfuOoYgbng==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-Xq0yqdKNyQT0nhJlRVL8IAtv+JteQJWd8UJU8YYV5J8bSs5c05h4ztzCcTwQfVBnVLauzKPurrXAhQ/gY28aRA==", "requires": { - "@bitbybit-dev/occt": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/occt": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "@emnapi/runtime": { @@ -3704,9 +3705,9 @@ "dev": true }, "rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "requires": { "tslib": "^2.1.0" } diff --git a/examples/node/express-app/package.json b/examples/node/express-app/package.json index 3e3e8dd3c..5a28148d2 100644 --- a/examples/node/express-app/package.json +++ b/examples/node/express-app/package.json @@ -12,11 +12,11 @@ "author": "Bit By Bit Developers", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/core": "1.0.0-rc.0", - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "@bitbybit-dev/occt": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/core": "1.0.0-rc.1", + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "@bitbybit-dev/occt": "1.0.0-rc.1", "dotenv": "^16.0.3", "express": "^4.18.2", "jsonpath-plus": "^10.3.0", diff --git a/examples/nuxt/babylonjs/basic/package-lock.json b/examples/nuxt/babylonjs/basic/package-lock.json index 1b83319d1..62982cd04 100644 --- a/examples/nuxt/babylonjs/basic/package-lock.json +++ b/examples/nuxt/babylonjs/basic/package-lock.json @@ -8,7 +8,7 @@ "hasInstallScript": true, "license": "MIT", "dependencies": { - "@bitbybit-dev/babylonjs": "1.0.0-rc.0", + "@bitbybit-dev/babylonjs": "1.0.0-rc.1", "@pinia/nuxt": "^0.5.4", "nuxt": "^3.13.0", "pinia": "^2.2.2", @@ -486,15 +486,15 @@ } }, "node_modules/@babylonjs/core": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.46.2.tgz", - "integrity": "sha512-CrRpd05C6+bQjrmnel4NzNxDCRCHuBCua0cIHxtugGumonTIu9/7D8Dpz/X0X3NWU92dL7qETE1QdPaqlsCJig==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.49.6.tgz", + "integrity": "sha512-Q0wsDfDQhwXhE22ltb89hL+XYaDzBLGDr/sSlKUEsHtALK+u36Ttwa8wVD0XJP30pgFpKIrd1LvdSB9FemNwzg==", "license": "Apache-2.0" }, "node_modules/@babylonjs/gui": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.46.2.tgz", - "integrity": "sha512-1V+aeu/42mWDuYAFvGzeBBHKL2n4f7jZA8Q9QjCJs8VYN/+gsQ5XJekWZZ0z0TV7u8SC9Uw3rsrI/HePn06faw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.49.6.tgz", + "integrity": "sha512-pPFQQtjs3pcqMjC6rkcm8wazznt/rvwOtoSBINFl/zJTaOWlAtMeMOFb+bmCsSwJsXgraymzQjZLfixGkYLdsA==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0" @@ -509,9 +509,9 @@ } }, "node_modules/@babylonjs/loaders": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.46.2.tgz", - "integrity": "sha512-fOATzKPzUmrcB0TuYLU4JEZPs2QONykecf5rb84lRm/MXyHTKfZFuccSS/89xrR43ytYPWQatkg87/+2dSbquw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.49.6.tgz", + "integrity": "sha512-KsguPMqonctgvyjCcR8A3izGaoQoQrEdG3n4mZ4scX/WHskAciW5P/zsE3AUYugOAb+TL7iBW5VCb+sz/uEkVw==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0", @@ -519,18 +519,18 @@ } }, "node_modules/@babylonjs/materials": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.46.2.tgz", - "integrity": "sha512-Yz1fZj+0Pn0yWHFv32XYSXKd8eC3/B50fyj7adUHvgkejl9GS/MBMnvI8rNdZHhKL0m38tdyL0A6PJqVzM0anA==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.49.6.tgz", + "integrity": "sha512-xDfgexV8y5Lp7Ftk8i+DWgERTSmwdLxUIOs5/9yTQTHdecdTZ0gNm5iGTWWdNvGCAX5wqd74Cg4Fwvjok1JeuQ==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.6.0" } }, "node_modules/@babylonjs/serializers": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.46.2.tgz", - "integrity": "sha512-N+pz2NnnO3rWWfikjyIsekv7HWQZHApsFAuAi0oKpBfrv1LJIdvSLrhECpHr/BNcFo5RZG7cOWjxq1NUSGbtdQ==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.49.6.tgz", + "integrity": "sha512-D1uCl7bhl2vMEjZU/dK9mus2sSxviBk85QvDXTUtLKHlpcGDZLzeN8WJkKJZRLTISAZtTvmJotJx1V94Os3T5A==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0", @@ -538,49 +538,49 @@ } }, "node_modules/@bitbybit-dev/babylonjs": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.0.tgz", - "integrity": "sha512-DmpEz9s91A+Q0ATXTn/3iZ1skS6QCN0v6Mm9Slsuf72WqQGmuZwaK0cLTTv52zWC0GVgUwC2uwnqYJminQfnUQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.1.tgz", + "integrity": "sha512-rROt4riF7V0rPvud2rUyXCZXLye3XVCzk3Ju+rhtlJEGljH45Mma2T9x1rzmxFUnqN8kaha5HKYjJBeJjs3h4A==", "license": "MIT", "dependencies": { - "@babylonjs/core": "8.46.2", - "@babylonjs/gui": "8.46.2", + "@babylonjs/core": "8.49.6", + "@babylonjs/gui": "8.49.6", "@babylonjs/havok": "1.3.10", - "@babylonjs/loaders": "8.46.2", - "@babylonjs/materials": "8.46.2", - "@babylonjs/serializers": "8.46.2", - "@bitbybit-dev/core": "1.0.0-rc.0", + "@babylonjs/loaders": "8.49.6", + "@babylonjs/materials": "8.49.6", + "@babylonjs/serializers": "8.49.6", + "@bitbybit-dev/core": "1.0.0-rc.1", "earcut": "2.2.3" } }, "node_modules/@bitbybit-dev/base": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.0.tgz", - "integrity": "sha512-t93K7kNq48A1IZkzsEEFsbbZlxhNPpYBrfEZjnYUOCuZGkFJPjUfWm0zFV081s3fMRINpeKXNyYFBL+HQX2G4Q==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.1.tgz", + "integrity": "sha512-0xaTf1c+u+GRdUfOZMbUkOV8n5GJef9xcKRlWjFtfy4R450yMqmDxRppJ9RLf4T11ZVvhHG9RMqBIiKT1obLgg==", "license": "MIT" }, "node_modules/@bitbybit-dev/core": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.0.tgz", - "integrity": "sha512-HXZAl51rSwlneKzuwqpYmGH/Ngqr8KW1/EyUfhKeLZyHxryfhYuxnvzZXK6jN9dR6mYczo1nE6LFx7V/377AQg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.1.tgz", + "integrity": "sha512-gxKVLMxlfVF99E+weS0S0gAxJNm9u/BJ8pw/mjUGJIFiAS0KkxXy7V0xPiFcBxfRUwoCTNzRT38s8DMk5su0mg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/jscad-worker": "1.0.0-rc.0", - "@bitbybit-dev/manifold-worker": "1.0.0-rc.0", - "@bitbybit-dev/occt-worker": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/jscad-worker": "1.0.0-rc.1", + "@bitbybit-dev/manifold-worker": "1.0.0-rc.1", + "@bitbybit-dev/occt-worker": "1.0.0-rc.1", "jsonpath-plus": "10.3.0", - "rxjs": "7.5.5", + "rxjs": "7.8.2", "verb-nurbs-web": "2.1.3" } }, "node_modules/@bitbybit-dev/jscad": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.0.tgz", - "integrity": "sha512-9AvLGyoE0/qK6Z4BryrQIer1Dci2VMw6zWWikHV4F7U4VHc7PkcEbpqEPFeesOL63VUdNyTg16L3RGLdLcuRJg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.1.tgz", + "integrity": "sha512-+3w5WFw+vcQ+0rD9Zzq0K7lXxTydkjt+Bz4CgoUim82KaKSLE8ykfkBL/8+JspoJMfo2Tx9O3Gnh7MBmwX5DxA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "@jscad/3mf-serializer": "2.1.12", "@jscad/dxf-serializer": "2.1.18", "@jscad/io-utils": "2.0.28", @@ -589,52 +589,52 @@ } }, "node_modules/@bitbybit-dev/jscad-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-xTnu7Rsz4Funa6ihw2sEQC0nDG9QHSZjRq5Uz/yEcOzlW2dGpONWoPXWTPV3kfi/fLYFaBOlTyzbjg5MjQM6xg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-dWy6zbeJPwDQHiruSRd8OzI4hXbhhgAbVGmz6GBHWCYw3NyAW3yc1VaKURsKLk4dJm+wchlCHnXgPqWEoHddvg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/manifold": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.0.tgz", - "integrity": "sha512-klXymu41Nt38Bk8/46vukmzkDY6m2WWvNMZBTBMEkmYQSlo4DRpsMJ7rxGpvC5ecwusTieOl3lke6gi1/83tfw==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.1.tgz", + "integrity": "sha512-fwhNMTaQ3sHyzLnjR1+gmfxezhm5kcXXWf6GTlToI/z7q1lasVQlchw9QQYVclI1j1TtJYQd4hNl7HIhNLy9LQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "manifold-3d": "3.3.2" } }, "node_modules/@bitbybit-dev/manifold-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-yllVGubpCWQ0LT2EWrjPS6of3SjUQu4zqz3k8nTFsFU/mqFr9T4fDJw+7kSzGL4JaYVB7T+KTGkca+kFSQd7XQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-AVAucSbH35GlXAaMq729UN9WJY+nUSQRXEQGzWG7Kq6rmLKf15O1j/YDCeqkmTLNIbImeOuL+cpBM/xuwaiemA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/occt": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.0.tgz", - "integrity": "sha512-9NtYzYtVnH22W/RiG49UG95s2FCpWaetSOFOAbuz7M+qH44GFkSO18Wy++2w/5rgCbBnHU3Vnp8EvZaL+/5w8g==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.1.tgz", + "integrity": "sha512-DVFqbNiRWnYBLEA1P9imWTIMFl0zi+EUusGTCI166wm2phUb55XxpGkbiWiQ85LmUykORUWoBj/beWkDlwkHbQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0" + "@bitbybit-dev/base": "1.0.0-rc.1" } }, "node_modules/@bitbybit-dev/occt-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-4fpVi/lDgMe0/69IbEU6UycmQXa/7D3S307V2W/gRO0k1okwd2OcKy44jZ1JNYbVN/XFfQwJg1/bnfuOoYgbng==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-Xq0yqdKNyQT0nhJlRVL8IAtv+JteQJWd8UJU8YYV5J8bSs5c05h4ztzCcTwQfVBnVLauzKPurrXAhQ/gY28aRA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/occt": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/occt": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@cloudflare/kv-asset-handler": { @@ -3559,9 +3559,9 @@ "integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==" }, "node_modules/babylonjs-gltf2interface": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.46.2.tgz", - "integrity": "sha512-w0e4lCvTf4bQ/66aiJMBZPLoi1FEHuX8Puyqi2N/AWMmolAo5cDGR7j1/jMa1QHI8gO4LVBhl0uR5UDw66xkDw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.49.6.tgz", + "integrity": "sha512-7qxi48GxEgX9SIZf1Eze+25YCUUY9X6ZIuoozg0rHZyY9gQBso7HUIWLznsQHeUXey19QS/zirrP1spm1PW8Vw==", "license": "Apache-2.0", "peer": true }, @@ -4092,9 +4092,9 @@ } }, "node_modules/core-js": { - "version": "3.47.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.47.0.tgz", - "integrity": "sha512-c3Q2VVkGAUyupsjRnaNX6u8Dq2vAdzm9iuPj5FW0fRxzlxgq9Q39MDq10IvmQSpLgHQNyQzQmOo6bgGHmH3NNg==", + "version": "3.48.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.48.0.tgz", + "integrity": "sha512-zpEHTy1fjTMZCKLHUZoVeylt9XrzaIN2rbPXEt0k+q7JE5CkCZdo6bNq55bn24a69CH7ErAVLKijxJja4fw+UQ==", "hasInstallScript": true, "license": "MIT", "funding": { @@ -6134,9 +6134,9 @@ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/nan": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.24.0.tgz", - "integrity": "sha512-Vpf9qnVW1RaDkoNKFUvfxqAbtI8ncb8OJlqZ9wwpXzWPEsvsB1nvdUi6oYrHIkQ1Y/tMDnr1h4nczS0VB9Xykg==", + "version": "2.25.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.25.0.tgz", + "integrity": "sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g==", "license": "MIT", "optional": true }, @@ -8135,9 +8135,9 @@ } }, "node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.1.0" diff --git a/examples/nuxt/babylonjs/basic/package.json b/examples/nuxt/babylonjs/basic/package.json index b309fcfdb..0b1e5082d 100644 --- a/examples/nuxt/babylonjs/basic/package.json +++ b/examples/nuxt/babylonjs/basic/package.json @@ -11,7 +11,7 @@ "postinstall": "nuxt prepare" }, "dependencies": { - "@bitbybit-dev/babylonjs": "1.0.0-rc.0", + "@bitbybit-dev/babylonjs": "1.0.0-rc.1", "@pinia/nuxt": "^0.5.4", "nuxt": "^3.13.0", "pinia": "^2.2.2", diff --git a/examples/package-lock.json b/examples/package-lock.json new file mode 100644 index 000000000..073c26767 --- /dev/null +++ b/examples/package-lock.json @@ -0,0 +1,629 @@ +{ + "name": "bitbybit-examples", + "version": "1.0.0-rc.1", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "bitbybit-examples", + "version": "1.0.0-rc.1", + "license": "MIT", + "devDependencies": { + "shx": "^0.4.0", + "typescript": "^4.3.5" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cross-spawn": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fastq": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz", + "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "license": "MIT", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pump": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", + "integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dev": true, + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/resolve": { + "version": "1.22.11", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shelljs": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.9.2.tgz", + "integrity": "sha512-S3I64fEiKgTZzKCC46zT/Ib9meqofLrQVbpSswtjFfAVDW+AZ54WTnAM/3/yENoxz/V1Cy6u3kiiEbQ4DNphvw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "execa": "^1.0.0", + "fast-glob": "^3.3.2", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/shx": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/shx/-/shx-0.4.0.tgz", + "integrity": "sha512-Z0KixSIlGPpijKgcH6oCMCbltPImvaKy0sGH8AkLRXw1KyzpKtaCTizP2xen+hNDqVF4xxgvA0KXSb9o4Q6hnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.8", + "shelljs": "^0.9.2" + }, + "bin": { + "shx": "lib/cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC" + } + } +} diff --git a/examples/package.json b/examples/package.json index 78ebe7df6..38f71f0be 100644 --- a/examples/package.json +++ b/examples/package.json @@ -1,6 +1,6 @@ { "name": "bitbybit-examples", - "version": "1.0.0-rc.0", + "version": "1.0.0-rc.1", "description": "Monorepo for browser CAD which holds bitbybit.dev npm packages", "main": "index.js", "scripts": { diff --git a/examples/react/babylonjs/cup/package-lock.json b/examples/react/babylonjs/cup/package-lock.json index 9c283e3ae..8edc39cd5 100644 --- a/examples/react/babylonjs/cup/package-lock.json +++ b/examples/react/babylonjs/cup/package-lock.json @@ -8,7 +8,7 @@ "name": "cup", "version": "0.1.0", "dependencies": { - "@bitbybit-dev/babylonjs": "1.0.0-rc.0", + "@bitbybit-dev/babylonjs": "1.0.0-rc.1", "@emotion/react": "11.9.0", "@emotion/styled": "11.8.1", "@mui/icons-material": "5.6.2", @@ -1809,15 +1809,15 @@ } }, "node_modules/@babylonjs/core": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.46.2.tgz", - "integrity": "sha512-CrRpd05C6+bQjrmnel4NzNxDCRCHuBCua0cIHxtugGumonTIu9/7D8Dpz/X0X3NWU92dL7qETE1QdPaqlsCJig==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.49.6.tgz", + "integrity": "sha512-Q0wsDfDQhwXhE22ltb89hL+XYaDzBLGDr/sSlKUEsHtALK+u36Ttwa8wVD0XJP30pgFpKIrd1LvdSB9FemNwzg==", "license": "Apache-2.0" }, "node_modules/@babylonjs/gui": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.46.2.tgz", - "integrity": "sha512-1V+aeu/42mWDuYAFvGzeBBHKL2n4f7jZA8Q9QjCJs8VYN/+gsQ5XJekWZZ0z0TV7u8SC9Uw3rsrI/HePn06faw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.49.6.tgz", + "integrity": "sha512-pPFQQtjs3pcqMjC6rkcm8wazznt/rvwOtoSBINFl/zJTaOWlAtMeMOFb+bmCsSwJsXgraymzQjZLfixGkYLdsA==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0" @@ -1832,9 +1832,9 @@ } }, "node_modules/@babylonjs/loaders": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.46.2.tgz", - "integrity": "sha512-fOATzKPzUmrcB0TuYLU4JEZPs2QONykecf5rb84lRm/MXyHTKfZFuccSS/89xrR43ytYPWQatkg87/+2dSbquw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.49.6.tgz", + "integrity": "sha512-KsguPMqonctgvyjCcR8A3izGaoQoQrEdG3n4mZ4scX/WHskAciW5P/zsE3AUYugOAb+TL7iBW5VCb+sz/uEkVw==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0", @@ -1842,18 +1842,18 @@ } }, "node_modules/@babylonjs/materials": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.46.2.tgz", - "integrity": "sha512-Yz1fZj+0Pn0yWHFv32XYSXKd8eC3/B50fyj7adUHvgkejl9GS/MBMnvI8rNdZHhKL0m38tdyL0A6PJqVzM0anA==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.49.6.tgz", + "integrity": "sha512-xDfgexV8y5Lp7Ftk8i+DWgERTSmwdLxUIOs5/9yTQTHdecdTZ0gNm5iGTWWdNvGCAX5wqd74Cg4Fwvjok1JeuQ==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.6.0" } }, "node_modules/@babylonjs/serializers": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.46.2.tgz", - "integrity": "sha512-N+pz2NnnO3rWWfikjyIsekv7HWQZHApsFAuAi0oKpBfrv1LJIdvSLrhECpHr/BNcFo5RZG7cOWjxq1NUSGbtdQ==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.49.6.tgz", + "integrity": "sha512-D1uCl7bhl2vMEjZU/dK9mus2sSxviBk85QvDXTUtLKHlpcGDZLzeN8WJkKJZRLTISAZtTvmJotJx1V94Os3T5A==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0", @@ -1866,49 +1866,49 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" }, "node_modules/@bitbybit-dev/babylonjs": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.0.tgz", - "integrity": "sha512-DmpEz9s91A+Q0ATXTn/3iZ1skS6QCN0v6Mm9Slsuf72WqQGmuZwaK0cLTTv52zWC0GVgUwC2uwnqYJminQfnUQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.1.tgz", + "integrity": "sha512-rROt4riF7V0rPvud2rUyXCZXLye3XVCzk3Ju+rhtlJEGljH45Mma2T9x1rzmxFUnqN8kaha5HKYjJBeJjs3h4A==", "license": "MIT", "dependencies": { - "@babylonjs/core": "8.46.2", - "@babylonjs/gui": "8.46.2", + "@babylonjs/core": "8.49.6", + "@babylonjs/gui": "8.49.6", "@babylonjs/havok": "1.3.10", - "@babylonjs/loaders": "8.46.2", - "@babylonjs/materials": "8.46.2", - "@babylonjs/serializers": "8.46.2", - "@bitbybit-dev/core": "1.0.0-rc.0", + "@babylonjs/loaders": "8.49.6", + "@babylonjs/materials": "8.49.6", + "@babylonjs/serializers": "8.49.6", + "@bitbybit-dev/core": "1.0.0-rc.1", "earcut": "2.2.3" } }, "node_modules/@bitbybit-dev/base": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.0.tgz", - "integrity": "sha512-t93K7kNq48A1IZkzsEEFsbbZlxhNPpYBrfEZjnYUOCuZGkFJPjUfWm0zFV081s3fMRINpeKXNyYFBL+HQX2G4Q==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.1.tgz", + "integrity": "sha512-0xaTf1c+u+GRdUfOZMbUkOV8n5GJef9xcKRlWjFtfy4R450yMqmDxRppJ9RLf4T11ZVvhHG9RMqBIiKT1obLgg==", "license": "MIT" }, "node_modules/@bitbybit-dev/core": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.0.tgz", - "integrity": "sha512-HXZAl51rSwlneKzuwqpYmGH/Ngqr8KW1/EyUfhKeLZyHxryfhYuxnvzZXK6jN9dR6mYczo1nE6LFx7V/377AQg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.1.tgz", + "integrity": "sha512-gxKVLMxlfVF99E+weS0S0gAxJNm9u/BJ8pw/mjUGJIFiAS0KkxXy7V0xPiFcBxfRUwoCTNzRT38s8DMk5su0mg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/jscad-worker": "1.0.0-rc.0", - "@bitbybit-dev/manifold-worker": "1.0.0-rc.0", - "@bitbybit-dev/occt-worker": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/jscad-worker": "1.0.0-rc.1", + "@bitbybit-dev/manifold-worker": "1.0.0-rc.1", + "@bitbybit-dev/occt-worker": "1.0.0-rc.1", "jsonpath-plus": "10.3.0", - "rxjs": "7.5.5", + "rxjs": "7.8.2", "verb-nurbs-web": "2.1.3" } }, "node_modules/@bitbybit-dev/jscad": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.0.tgz", - "integrity": "sha512-9AvLGyoE0/qK6Z4BryrQIer1Dci2VMw6zWWikHV4F7U4VHc7PkcEbpqEPFeesOL63VUdNyTg16L3RGLdLcuRJg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.1.tgz", + "integrity": "sha512-+3w5WFw+vcQ+0rD9Zzq0K7lXxTydkjt+Bz4CgoUim82KaKSLE8ykfkBL/8+JspoJMfo2Tx9O3Gnh7MBmwX5DxA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "@jscad/3mf-serializer": "2.1.12", "@jscad/dxf-serializer": "2.1.18", "@jscad/io-utils": "2.0.28", @@ -1917,52 +1917,52 @@ } }, "node_modules/@bitbybit-dev/jscad-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-xTnu7Rsz4Funa6ihw2sEQC0nDG9QHSZjRq5Uz/yEcOzlW2dGpONWoPXWTPV3kfi/fLYFaBOlTyzbjg5MjQM6xg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-dWy6zbeJPwDQHiruSRd8OzI4hXbhhgAbVGmz6GBHWCYw3NyAW3yc1VaKURsKLk4dJm+wchlCHnXgPqWEoHddvg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/manifold": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.0.tgz", - "integrity": "sha512-klXymu41Nt38Bk8/46vukmzkDY6m2WWvNMZBTBMEkmYQSlo4DRpsMJ7rxGpvC5ecwusTieOl3lke6gi1/83tfw==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.1.tgz", + "integrity": "sha512-fwhNMTaQ3sHyzLnjR1+gmfxezhm5kcXXWf6GTlToI/z7q1lasVQlchw9QQYVclI1j1TtJYQd4hNl7HIhNLy9LQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "manifold-3d": "3.3.2" } }, "node_modules/@bitbybit-dev/manifold-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-yllVGubpCWQ0LT2EWrjPS6of3SjUQu4zqz3k8nTFsFU/mqFr9T4fDJw+7kSzGL4JaYVB7T+KTGkca+kFSQd7XQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-AVAucSbH35GlXAaMq729UN9WJY+nUSQRXEQGzWG7Kq6rmLKf15O1j/YDCeqkmTLNIbImeOuL+cpBM/xuwaiemA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/occt": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.0.tgz", - "integrity": "sha512-9NtYzYtVnH22W/RiG49UG95s2FCpWaetSOFOAbuz7M+qH44GFkSO18Wy++2w/5rgCbBnHU3Vnp8EvZaL+/5w8g==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.1.tgz", + "integrity": "sha512-DVFqbNiRWnYBLEA1P9imWTIMFl0zi+EUusGTCI166wm2phUb55XxpGkbiWiQ85LmUykORUWoBj/beWkDlwkHbQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0" + "@bitbybit-dev/base": "1.0.0-rc.1" } }, "node_modules/@bitbybit-dev/occt-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-4fpVi/lDgMe0/69IbEU6UycmQXa/7D3S307V2W/gRO0k1okwd2OcKy44jZ1JNYbVN/XFfQwJg1/bnfuOoYgbng==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-Xq0yqdKNyQT0nhJlRVL8IAtv+JteQJWd8UJU8YYV5J8bSs5c05h4ztzCcTwQfVBnVLauzKPurrXAhQ/gY28aRA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/occt": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/occt": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@csstools/normalize.css": { @@ -6225,9 +6225,9 @@ } }, "node_modules/babylonjs-gltf2interface": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.46.2.tgz", - "integrity": "sha512-w0e4lCvTf4bQ/66aiJMBZPLoi1FEHuX8Puyqi2N/AWMmolAo5cDGR7j1/jMa1QHI8gO4LVBhl0uR5UDw66xkDw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.49.6.tgz", + "integrity": "sha512-7qxi48GxEgX9SIZf1Eze+25YCUUY9X6ZIuoozg0rHZyY9gQBso7HUIWLznsQHeUXey19QS/zirrP1spm1PW8Vw==", "license": "Apache-2.0", "peer": true }, @@ -13266,9 +13266,9 @@ } }, "node_modules/nan": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.24.0.tgz", - "integrity": "sha512-Vpf9qnVW1RaDkoNKFUvfxqAbtI8ncb8OJlqZ9wwpXzWPEsvsB1nvdUi6oYrHIkQ1Y/tMDnr1h4nczS0VB9Xykg==", + "version": "2.25.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.25.0.tgz", + "integrity": "sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g==", "license": "MIT", "optional": true }, @@ -16137,9 +16137,9 @@ } }, "node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.1.0" @@ -19819,14 +19819,14 @@ } }, "@babylonjs/core": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.46.2.tgz", - "integrity": "sha512-CrRpd05C6+bQjrmnel4NzNxDCRCHuBCua0cIHxtugGumonTIu9/7D8Dpz/X0X3NWU92dL7qETE1QdPaqlsCJig==" + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.49.6.tgz", + "integrity": "sha512-Q0wsDfDQhwXhE22ltb89hL+XYaDzBLGDr/sSlKUEsHtALK+u36Ttwa8wVD0XJP30pgFpKIrd1LvdSB9FemNwzg==" }, "@babylonjs/gui": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.46.2.tgz", - "integrity": "sha512-1V+aeu/42mWDuYAFvGzeBBHKL2n4f7jZA8Q9QjCJs8VYN/+gsQ5XJekWZZ0z0TV7u8SC9Uw3rsrI/HePn06faw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.49.6.tgz", + "integrity": "sha512-pPFQQtjs3pcqMjC6rkcm8wazznt/rvwOtoSBINFl/zJTaOWlAtMeMOFb+bmCsSwJsXgraymzQjZLfixGkYLdsA==", "requires": {} }, "@babylonjs/havok": { @@ -19838,21 +19838,21 @@ } }, "@babylonjs/loaders": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.46.2.tgz", - "integrity": "sha512-fOATzKPzUmrcB0TuYLU4JEZPs2QONykecf5rb84lRm/MXyHTKfZFuccSS/89xrR43ytYPWQatkg87/+2dSbquw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.49.6.tgz", + "integrity": "sha512-KsguPMqonctgvyjCcR8A3izGaoQoQrEdG3n4mZ4scX/WHskAciW5P/zsE3AUYugOAb+TL7iBW5VCb+sz/uEkVw==", "requires": {} }, "@babylonjs/materials": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.46.2.tgz", - "integrity": "sha512-Yz1fZj+0Pn0yWHFv32XYSXKd8eC3/B50fyj7adUHvgkejl9GS/MBMnvI8rNdZHhKL0m38tdyL0A6PJqVzM0anA==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.49.6.tgz", + "integrity": "sha512-xDfgexV8y5Lp7Ftk8i+DWgERTSmwdLxUIOs5/9yTQTHdecdTZ0gNm5iGTWWdNvGCAX5wqd74Cg4Fwvjok1JeuQ==", "requires": {} }, "@babylonjs/serializers": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.46.2.tgz", - "integrity": "sha512-N+pz2NnnO3rWWfikjyIsekv7HWQZHApsFAuAi0oKpBfrv1LJIdvSLrhECpHr/BNcFo5RZG7cOWjxq1NUSGbtdQ==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.49.6.tgz", + "integrity": "sha512-D1uCl7bhl2vMEjZU/dK9mus2sSxviBk85QvDXTUtLKHlpcGDZLzeN8WJkKJZRLTISAZtTvmJotJx1V94Os3T5A==", "requires": {} }, "@bcoe/v8-coverage": { @@ -19861,45 +19861,45 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" }, "@bitbybit-dev/babylonjs": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.0.tgz", - "integrity": "sha512-DmpEz9s91A+Q0ATXTn/3iZ1skS6QCN0v6Mm9Slsuf72WqQGmuZwaK0cLTTv52zWC0GVgUwC2uwnqYJminQfnUQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.1.tgz", + "integrity": "sha512-rROt4riF7V0rPvud2rUyXCZXLye3XVCzk3Ju+rhtlJEGljH45Mma2T9x1rzmxFUnqN8kaha5HKYjJBeJjs3h4A==", "requires": { - "@babylonjs/core": "8.46.2", - "@babylonjs/gui": "8.46.2", + "@babylonjs/core": "8.49.6", + "@babylonjs/gui": "8.49.6", "@babylonjs/havok": "1.3.10", - "@babylonjs/loaders": "8.46.2", - "@babylonjs/materials": "8.46.2", - "@babylonjs/serializers": "8.46.2", - "@bitbybit-dev/core": "1.0.0-rc.0", + "@babylonjs/loaders": "8.49.6", + "@babylonjs/materials": "8.49.6", + "@babylonjs/serializers": "8.49.6", + "@bitbybit-dev/core": "1.0.0-rc.1", "earcut": "2.2.3" } }, "@bitbybit-dev/base": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.0.tgz", - "integrity": "sha512-t93K7kNq48A1IZkzsEEFsbbZlxhNPpYBrfEZjnYUOCuZGkFJPjUfWm0zFV081s3fMRINpeKXNyYFBL+HQX2G4Q==" + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.1.tgz", + "integrity": "sha512-0xaTf1c+u+GRdUfOZMbUkOV8n5GJef9xcKRlWjFtfy4R450yMqmDxRppJ9RLf4T11ZVvhHG9RMqBIiKT1obLgg==" }, "@bitbybit-dev/core": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.0.tgz", - "integrity": "sha512-HXZAl51rSwlneKzuwqpYmGH/Ngqr8KW1/EyUfhKeLZyHxryfhYuxnvzZXK6jN9dR6mYczo1nE6LFx7V/377AQg==", - "requires": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/jscad-worker": "1.0.0-rc.0", - "@bitbybit-dev/manifold-worker": "1.0.0-rc.0", - "@bitbybit-dev/occt-worker": "1.0.0-rc.0", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.1.tgz", + "integrity": "sha512-gxKVLMxlfVF99E+weS0S0gAxJNm9u/BJ8pw/mjUGJIFiAS0KkxXy7V0xPiFcBxfRUwoCTNzRT38s8DMk5su0mg==", + "requires": { + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/jscad-worker": "1.0.0-rc.1", + "@bitbybit-dev/manifold-worker": "1.0.0-rc.1", + "@bitbybit-dev/occt-worker": "1.0.0-rc.1", "jsonpath-plus": "10.3.0", - "rxjs": "7.5.5", + "rxjs": "7.8.2", "verb-nurbs-web": "2.1.3" } }, "@bitbybit-dev/jscad": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.0.tgz", - "integrity": "sha512-9AvLGyoE0/qK6Z4BryrQIer1Dci2VMw6zWWikHV4F7U4VHc7PkcEbpqEPFeesOL63VUdNyTg16L3RGLdLcuRJg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.1.tgz", + "integrity": "sha512-+3w5WFw+vcQ+0rD9Zzq0K7lXxTydkjt+Bz4CgoUim82KaKSLE8ykfkBL/8+JspoJMfo2Tx9O3Gnh7MBmwX5DxA==", "requires": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "@jscad/3mf-serializer": "2.1.12", "@jscad/dxf-serializer": "2.1.18", "@jscad/io-utils": "2.0.28", @@ -19908,47 +19908,47 @@ } }, "@bitbybit-dev/jscad-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-xTnu7Rsz4Funa6ihw2sEQC0nDG9QHSZjRq5Uz/yEcOzlW2dGpONWoPXWTPV3kfi/fLYFaBOlTyzbjg5MjQM6xg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-dWy6zbeJPwDQHiruSRd8OzI4hXbhhgAbVGmz6GBHWCYw3NyAW3yc1VaKURsKLk4dJm+wchlCHnXgPqWEoHddvg==", "requires": { - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "@bitbybit-dev/manifold": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.0.tgz", - "integrity": "sha512-klXymu41Nt38Bk8/46vukmzkDY6m2WWvNMZBTBMEkmYQSlo4DRpsMJ7rxGpvC5ecwusTieOl3lke6gi1/83tfw==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.1.tgz", + "integrity": "sha512-fwhNMTaQ3sHyzLnjR1+gmfxezhm5kcXXWf6GTlToI/z7q1lasVQlchw9QQYVclI1j1TtJYQd4hNl7HIhNLy9LQ==", "requires": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "manifold-3d": "3.3.2" } }, "@bitbybit-dev/manifold-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-yllVGubpCWQ0LT2EWrjPS6of3SjUQu4zqz3k8nTFsFU/mqFr9T4fDJw+7kSzGL4JaYVB7T+KTGkca+kFSQd7XQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-AVAucSbH35GlXAaMq729UN9WJY+nUSQRXEQGzWG7Kq6rmLKf15O1j/YDCeqkmTLNIbImeOuL+cpBM/xuwaiemA==", "requires": { - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "@bitbybit-dev/occt": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.0.tgz", - "integrity": "sha512-9NtYzYtVnH22W/RiG49UG95s2FCpWaetSOFOAbuz7M+qH44GFkSO18Wy++2w/5rgCbBnHU3Vnp8EvZaL+/5w8g==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.1.tgz", + "integrity": "sha512-DVFqbNiRWnYBLEA1P9imWTIMFl0zi+EUusGTCI166wm2phUb55XxpGkbiWiQ85LmUykORUWoBj/beWkDlwkHbQ==", "requires": { - "@bitbybit-dev/base": "1.0.0-rc.0" + "@bitbybit-dev/base": "1.0.0-rc.1" } }, "@bitbybit-dev/occt-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-4fpVi/lDgMe0/69IbEU6UycmQXa/7D3S307V2W/gRO0k1okwd2OcKy44jZ1JNYbVN/XFfQwJg1/bnfuOoYgbng==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-Xq0yqdKNyQT0nhJlRVL8IAtv+JteQJWd8UJU8YYV5J8bSs5c05h4ztzCcTwQfVBnVLauzKPurrXAhQ/gY28aRA==", "requires": { - "@bitbybit-dev/occt": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/occt": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "@csstools/normalize.css": { @@ -22807,9 +22807,9 @@ } }, "babylonjs-gltf2interface": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.46.2.tgz", - "integrity": "sha512-w0e4lCvTf4bQ/66aiJMBZPLoi1FEHuX8Puyqi2N/AWMmolAo5cDGR7j1/jMa1QHI8gO4LVBhl0uR5UDw66xkDw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.49.6.tgz", + "integrity": "sha512-7qxi48GxEgX9SIZf1Eze+25YCUUY9X6ZIuoozg0rHZyY9gQBso7HUIWLznsQHeUXey19QS/zirrP1spm1PW8Vw==", "peer": true }, "balanced-match": { @@ -27919,9 +27919,9 @@ } }, "nan": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.24.0.tgz", - "integrity": "sha512-Vpf9qnVW1RaDkoNKFUvfxqAbtI8ncb8OJlqZ9wwpXzWPEsvsB1nvdUi6oYrHIkQ1Y/tMDnr1h4nczS0VB9Xykg==", + "version": "2.25.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.25.0.tgz", + "integrity": "sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g==", "optional": true }, "nanoid": { @@ -29813,9 +29813,9 @@ } }, "rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "requires": { "tslib": "^2.1.0" } diff --git a/examples/react/babylonjs/cup/package.json b/examples/react/babylonjs/cup/package.json index 73166ccd4..637ea8a6c 100644 --- a/examples/react/babylonjs/cup/package.json +++ b/examples/react/babylonjs/cup/package.json @@ -4,7 +4,7 @@ "private": true, "homepage": "https://app-store.bitbybit.dev/cup", "dependencies": { - "@bitbybit-dev/babylonjs": "1.0.0-rc.0", + "@bitbybit-dev/babylonjs": "1.0.0-rc.1", "@emotion/react": "11.9.0", "@emotion/styled": "11.8.1", "web-ifc": "0.0.68", diff --git a/examples/react/babylonjs/laptop-holder/package-lock.json b/examples/react/babylonjs/laptop-holder/package-lock.json index 66db11ffa..172c596c1 100644 --- a/examples/react/babylonjs/laptop-holder/package-lock.json +++ b/examples/react/babylonjs/laptop-holder/package-lock.json @@ -8,7 +8,7 @@ "name": "laptop-holder", "version": "0.1.0", "dependencies": { - "@bitbybit-dev/babylonjs": "1.0.0-rc.0", + "@bitbybit-dev/babylonjs": "1.0.0-rc.1", "@emotion/react": "11.9.0", "@emotion/styled": "11.8.1", "@mui/icons-material": "5.6.2", @@ -1847,15 +1847,15 @@ } }, "node_modules/@babylonjs/core": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.46.2.tgz", - "integrity": "sha512-CrRpd05C6+bQjrmnel4NzNxDCRCHuBCua0cIHxtugGumonTIu9/7D8Dpz/X0X3NWU92dL7qETE1QdPaqlsCJig==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.49.6.tgz", + "integrity": "sha512-Q0wsDfDQhwXhE22ltb89hL+XYaDzBLGDr/sSlKUEsHtALK+u36Ttwa8wVD0XJP30pgFpKIrd1LvdSB9FemNwzg==", "license": "Apache-2.0" }, "node_modules/@babylonjs/gui": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.46.2.tgz", - "integrity": "sha512-1V+aeu/42mWDuYAFvGzeBBHKL2n4f7jZA8Q9QjCJs8VYN/+gsQ5XJekWZZ0z0TV7u8SC9Uw3rsrI/HePn06faw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.49.6.tgz", + "integrity": "sha512-pPFQQtjs3pcqMjC6rkcm8wazznt/rvwOtoSBINFl/zJTaOWlAtMeMOFb+bmCsSwJsXgraymzQjZLfixGkYLdsA==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0" @@ -1870,9 +1870,9 @@ } }, "node_modules/@babylonjs/loaders": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.46.2.tgz", - "integrity": "sha512-fOATzKPzUmrcB0TuYLU4JEZPs2QONykecf5rb84lRm/MXyHTKfZFuccSS/89xrR43ytYPWQatkg87/+2dSbquw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.49.6.tgz", + "integrity": "sha512-KsguPMqonctgvyjCcR8A3izGaoQoQrEdG3n4mZ4scX/WHskAciW5P/zsE3AUYugOAb+TL7iBW5VCb+sz/uEkVw==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0", @@ -1880,18 +1880,18 @@ } }, "node_modules/@babylonjs/materials": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.46.2.tgz", - "integrity": "sha512-Yz1fZj+0Pn0yWHFv32XYSXKd8eC3/B50fyj7adUHvgkejl9GS/MBMnvI8rNdZHhKL0m38tdyL0A6PJqVzM0anA==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.49.6.tgz", + "integrity": "sha512-xDfgexV8y5Lp7Ftk8i+DWgERTSmwdLxUIOs5/9yTQTHdecdTZ0gNm5iGTWWdNvGCAX5wqd74Cg4Fwvjok1JeuQ==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.6.0" } }, "node_modules/@babylonjs/serializers": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.46.2.tgz", - "integrity": "sha512-N+pz2NnnO3rWWfikjyIsekv7HWQZHApsFAuAi0oKpBfrv1LJIdvSLrhECpHr/BNcFo5RZG7cOWjxq1NUSGbtdQ==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.49.6.tgz", + "integrity": "sha512-D1uCl7bhl2vMEjZU/dK9mus2sSxviBk85QvDXTUtLKHlpcGDZLzeN8WJkKJZRLTISAZtTvmJotJx1V94Os3T5A==", "license": "Apache-2.0", "peerDependencies": { "@babylonjs/core": "^8.0.0", @@ -1904,49 +1904,49 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" }, "node_modules/@bitbybit-dev/babylonjs": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.0.tgz", - "integrity": "sha512-DmpEz9s91A+Q0ATXTn/3iZ1skS6QCN0v6Mm9Slsuf72WqQGmuZwaK0cLTTv52zWC0GVgUwC2uwnqYJminQfnUQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.1.tgz", + "integrity": "sha512-rROt4riF7V0rPvud2rUyXCZXLye3XVCzk3Ju+rhtlJEGljH45Mma2T9x1rzmxFUnqN8kaha5HKYjJBeJjs3h4A==", "license": "MIT", "dependencies": { - "@babylonjs/core": "8.46.2", - "@babylonjs/gui": "8.46.2", + "@babylonjs/core": "8.49.6", + "@babylonjs/gui": "8.49.6", "@babylonjs/havok": "1.3.10", - "@babylonjs/loaders": "8.46.2", - "@babylonjs/materials": "8.46.2", - "@babylonjs/serializers": "8.46.2", - "@bitbybit-dev/core": "1.0.0-rc.0", + "@babylonjs/loaders": "8.49.6", + "@babylonjs/materials": "8.49.6", + "@babylonjs/serializers": "8.49.6", + "@bitbybit-dev/core": "1.0.0-rc.1", "earcut": "2.2.3" } }, "node_modules/@bitbybit-dev/base": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.0.tgz", - "integrity": "sha512-t93K7kNq48A1IZkzsEEFsbbZlxhNPpYBrfEZjnYUOCuZGkFJPjUfWm0zFV081s3fMRINpeKXNyYFBL+HQX2G4Q==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.1.tgz", + "integrity": "sha512-0xaTf1c+u+GRdUfOZMbUkOV8n5GJef9xcKRlWjFtfy4R450yMqmDxRppJ9RLf4T11ZVvhHG9RMqBIiKT1obLgg==", "license": "MIT" }, "node_modules/@bitbybit-dev/core": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.0.tgz", - "integrity": "sha512-HXZAl51rSwlneKzuwqpYmGH/Ngqr8KW1/EyUfhKeLZyHxryfhYuxnvzZXK6jN9dR6mYczo1nE6LFx7V/377AQg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.1.tgz", + "integrity": "sha512-gxKVLMxlfVF99E+weS0S0gAxJNm9u/BJ8pw/mjUGJIFiAS0KkxXy7V0xPiFcBxfRUwoCTNzRT38s8DMk5su0mg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/jscad-worker": "1.0.0-rc.0", - "@bitbybit-dev/manifold-worker": "1.0.0-rc.0", - "@bitbybit-dev/occt-worker": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/jscad-worker": "1.0.0-rc.1", + "@bitbybit-dev/manifold-worker": "1.0.0-rc.1", + "@bitbybit-dev/occt-worker": "1.0.0-rc.1", "jsonpath-plus": "10.3.0", - "rxjs": "7.5.5", + "rxjs": "7.8.2", "verb-nurbs-web": "2.1.3" } }, "node_modules/@bitbybit-dev/jscad": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.0.tgz", - "integrity": "sha512-9AvLGyoE0/qK6Z4BryrQIer1Dci2VMw6zWWikHV4F7U4VHc7PkcEbpqEPFeesOL63VUdNyTg16L3RGLdLcuRJg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.1.tgz", + "integrity": "sha512-+3w5WFw+vcQ+0rD9Zzq0K7lXxTydkjt+Bz4CgoUim82KaKSLE8ykfkBL/8+JspoJMfo2Tx9O3Gnh7MBmwX5DxA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "@jscad/3mf-serializer": "2.1.12", "@jscad/dxf-serializer": "2.1.18", "@jscad/io-utils": "2.0.28", @@ -1955,52 +1955,52 @@ } }, "node_modules/@bitbybit-dev/jscad-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-xTnu7Rsz4Funa6ihw2sEQC0nDG9QHSZjRq5Uz/yEcOzlW2dGpONWoPXWTPV3kfi/fLYFaBOlTyzbjg5MjQM6xg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-dWy6zbeJPwDQHiruSRd8OzI4hXbhhgAbVGmz6GBHWCYw3NyAW3yc1VaKURsKLk4dJm+wchlCHnXgPqWEoHddvg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/manifold": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.0.tgz", - "integrity": "sha512-klXymu41Nt38Bk8/46vukmzkDY6m2WWvNMZBTBMEkmYQSlo4DRpsMJ7rxGpvC5ecwusTieOl3lke6gi1/83tfw==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.1.tgz", + "integrity": "sha512-fwhNMTaQ3sHyzLnjR1+gmfxezhm5kcXXWf6GTlToI/z7q1lasVQlchw9QQYVclI1j1TtJYQd4hNl7HIhNLy9LQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "manifold-3d": "3.3.2" } }, "node_modules/@bitbybit-dev/manifold-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-yllVGubpCWQ0LT2EWrjPS6of3SjUQu4zqz3k8nTFsFU/mqFr9T4fDJw+7kSzGL4JaYVB7T+KTGkca+kFSQd7XQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-AVAucSbH35GlXAaMq729UN9WJY+nUSQRXEQGzWG7Kq6rmLKf15O1j/YDCeqkmTLNIbImeOuL+cpBM/xuwaiemA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/occt": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.0.tgz", - "integrity": "sha512-9NtYzYtVnH22W/RiG49UG95s2FCpWaetSOFOAbuz7M+qH44GFkSO18Wy++2w/5rgCbBnHU3Vnp8EvZaL+/5w8g==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.1.tgz", + "integrity": "sha512-DVFqbNiRWnYBLEA1P9imWTIMFl0zi+EUusGTCI166wm2phUb55XxpGkbiWiQ85LmUykORUWoBj/beWkDlwkHbQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0" + "@bitbybit-dev/base": "1.0.0-rc.1" } }, "node_modules/@bitbybit-dev/occt-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-4fpVi/lDgMe0/69IbEU6UycmQXa/7D3S307V2W/gRO0k1okwd2OcKy44jZ1JNYbVN/XFfQwJg1/bnfuOoYgbng==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-Xq0yqdKNyQT0nhJlRVL8IAtv+JteQJWd8UJU8YYV5J8bSs5c05h4ztzCcTwQfVBnVLauzKPurrXAhQ/gY28aRA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/occt": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/occt": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@csstools/normalize.css": { @@ -5933,9 +5933,9 @@ } }, "node_modules/babylonjs-gltf2interface": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.46.2.tgz", - "integrity": "sha512-w0e4lCvTf4bQ/66aiJMBZPLoi1FEHuX8Puyqi2N/AWMmolAo5cDGR7j1/jMa1QHI8gO4LVBhl0uR5UDw66xkDw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.49.6.tgz", + "integrity": "sha512-7qxi48GxEgX9SIZf1Eze+25YCUUY9X6ZIuoozg0rHZyY9gQBso7HUIWLznsQHeUXey19QS/zirrP1spm1PW8Vw==", "license": "Apache-2.0", "peer": true }, @@ -12510,9 +12510,9 @@ "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=" }, "node_modules/nan": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.24.0.tgz", - "integrity": "sha512-Vpf9qnVW1RaDkoNKFUvfxqAbtI8ncb8OJlqZ9wwpXzWPEsvsB1nvdUi6oYrHIkQ1Y/tMDnr1h4nczS0VB9Xykg==", + "version": "2.25.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.25.0.tgz", + "integrity": "sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g==", "license": "MIT", "optional": true }, @@ -15223,9 +15223,9 @@ } }, "node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.1.0" @@ -18897,14 +18897,14 @@ } }, "@babylonjs/core": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.46.2.tgz", - "integrity": "sha512-CrRpd05C6+bQjrmnel4NzNxDCRCHuBCua0cIHxtugGumonTIu9/7D8Dpz/X0X3NWU92dL7qETE1QdPaqlsCJig==" + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/core/-/core-8.49.6.tgz", + "integrity": "sha512-Q0wsDfDQhwXhE22ltb89hL+XYaDzBLGDr/sSlKUEsHtALK+u36Ttwa8wVD0XJP30pgFpKIrd1LvdSB9FemNwzg==" }, "@babylonjs/gui": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.46.2.tgz", - "integrity": "sha512-1V+aeu/42mWDuYAFvGzeBBHKL2n4f7jZA8Q9QjCJs8VYN/+gsQ5XJekWZZ0z0TV7u8SC9Uw3rsrI/HePn06faw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/gui/-/gui-8.49.6.tgz", + "integrity": "sha512-pPFQQtjs3pcqMjC6rkcm8wazznt/rvwOtoSBINFl/zJTaOWlAtMeMOFb+bmCsSwJsXgraymzQjZLfixGkYLdsA==", "requires": {} }, "@babylonjs/havok": { @@ -18916,21 +18916,21 @@ } }, "@babylonjs/loaders": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.46.2.tgz", - "integrity": "sha512-fOATzKPzUmrcB0TuYLU4JEZPs2QONykecf5rb84lRm/MXyHTKfZFuccSS/89xrR43ytYPWQatkg87/+2dSbquw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/loaders/-/loaders-8.49.6.tgz", + "integrity": "sha512-KsguPMqonctgvyjCcR8A3izGaoQoQrEdG3n4mZ4scX/WHskAciW5P/zsE3AUYugOAb+TL7iBW5VCb+sz/uEkVw==", "requires": {} }, "@babylonjs/materials": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.46.2.tgz", - "integrity": "sha512-Yz1fZj+0Pn0yWHFv32XYSXKd8eC3/B50fyj7adUHvgkejl9GS/MBMnvI8rNdZHhKL0m38tdyL0A6PJqVzM0anA==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/materials/-/materials-8.49.6.tgz", + "integrity": "sha512-xDfgexV8y5Lp7Ftk8i+DWgERTSmwdLxUIOs5/9yTQTHdecdTZ0gNm5iGTWWdNvGCAX5wqd74Cg4Fwvjok1JeuQ==", "requires": {} }, "@babylonjs/serializers": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.46.2.tgz", - "integrity": "sha512-N+pz2NnnO3rWWfikjyIsekv7HWQZHApsFAuAi0oKpBfrv1LJIdvSLrhECpHr/BNcFo5RZG7cOWjxq1NUSGbtdQ==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/@babylonjs/serializers/-/serializers-8.49.6.tgz", + "integrity": "sha512-D1uCl7bhl2vMEjZU/dK9mus2sSxviBk85QvDXTUtLKHlpcGDZLzeN8WJkKJZRLTISAZtTvmJotJx1V94Os3T5A==", "requires": {} }, "@bcoe/v8-coverage": { @@ -18939,45 +18939,45 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" }, "@bitbybit-dev/babylonjs": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.0.tgz", - "integrity": "sha512-DmpEz9s91A+Q0ATXTn/3iZ1skS6QCN0v6Mm9Slsuf72WqQGmuZwaK0cLTTv52zWC0GVgUwC2uwnqYJminQfnUQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/babylonjs/-/babylonjs-1.0.0-rc.1.tgz", + "integrity": "sha512-rROt4riF7V0rPvud2rUyXCZXLye3XVCzk3Ju+rhtlJEGljH45Mma2T9x1rzmxFUnqN8kaha5HKYjJBeJjs3h4A==", "requires": { - "@babylonjs/core": "8.46.2", - "@babylonjs/gui": "8.46.2", + "@babylonjs/core": "8.49.6", + "@babylonjs/gui": "8.49.6", "@babylonjs/havok": "1.3.10", - "@babylonjs/loaders": "8.46.2", - "@babylonjs/materials": "8.46.2", - "@babylonjs/serializers": "8.46.2", - "@bitbybit-dev/core": "1.0.0-rc.0", + "@babylonjs/loaders": "8.49.6", + "@babylonjs/materials": "8.49.6", + "@babylonjs/serializers": "8.49.6", + "@bitbybit-dev/core": "1.0.0-rc.1", "earcut": "2.2.3" } }, "@bitbybit-dev/base": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.0.tgz", - "integrity": "sha512-t93K7kNq48A1IZkzsEEFsbbZlxhNPpYBrfEZjnYUOCuZGkFJPjUfWm0zFV081s3fMRINpeKXNyYFBL+HQX2G4Q==" + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.1.tgz", + "integrity": "sha512-0xaTf1c+u+GRdUfOZMbUkOV8n5GJef9xcKRlWjFtfy4R450yMqmDxRppJ9RLf4T11ZVvhHG9RMqBIiKT1obLgg==" }, "@bitbybit-dev/core": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.0.tgz", - "integrity": "sha512-HXZAl51rSwlneKzuwqpYmGH/Ngqr8KW1/EyUfhKeLZyHxryfhYuxnvzZXK6jN9dR6mYczo1nE6LFx7V/377AQg==", - "requires": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/jscad-worker": "1.0.0-rc.0", - "@bitbybit-dev/manifold-worker": "1.0.0-rc.0", - "@bitbybit-dev/occt-worker": "1.0.0-rc.0", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.1.tgz", + "integrity": "sha512-gxKVLMxlfVF99E+weS0S0gAxJNm9u/BJ8pw/mjUGJIFiAS0KkxXy7V0xPiFcBxfRUwoCTNzRT38s8DMk5su0mg==", + "requires": { + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/jscad-worker": "1.0.0-rc.1", + "@bitbybit-dev/manifold-worker": "1.0.0-rc.1", + "@bitbybit-dev/occt-worker": "1.0.0-rc.1", "jsonpath-plus": "10.3.0", - "rxjs": "7.5.5", + "rxjs": "7.8.2", "verb-nurbs-web": "2.1.3" } }, "@bitbybit-dev/jscad": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.0.tgz", - "integrity": "sha512-9AvLGyoE0/qK6Z4BryrQIer1Dci2VMw6zWWikHV4F7U4VHc7PkcEbpqEPFeesOL63VUdNyTg16L3RGLdLcuRJg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.1.tgz", + "integrity": "sha512-+3w5WFw+vcQ+0rD9Zzq0K7lXxTydkjt+Bz4CgoUim82KaKSLE8ykfkBL/8+JspoJMfo2Tx9O3Gnh7MBmwX5DxA==", "requires": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "@jscad/3mf-serializer": "2.1.12", "@jscad/dxf-serializer": "2.1.18", "@jscad/io-utils": "2.0.28", @@ -18986,47 +18986,47 @@ } }, "@bitbybit-dev/jscad-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-xTnu7Rsz4Funa6ihw2sEQC0nDG9QHSZjRq5Uz/yEcOzlW2dGpONWoPXWTPV3kfi/fLYFaBOlTyzbjg5MjQM6xg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-dWy6zbeJPwDQHiruSRd8OzI4hXbhhgAbVGmz6GBHWCYw3NyAW3yc1VaKURsKLk4dJm+wchlCHnXgPqWEoHddvg==", "requires": { - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "@bitbybit-dev/manifold": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.0.tgz", - "integrity": "sha512-klXymu41Nt38Bk8/46vukmzkDY6m2WWvNMZBTBMEkmYQSlo4DRpsMJ7rxGpvC5ecwusTieOl3lke6gi1/83tfw==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.1.tgz", + "integrity": "sha512-fwhNMTaQ3sHyzLnjR1+gmfxezhm5kcXXWf6GTlToI/z7q1lasVQlchw9QQYVclI1j1TtJYQd4hNl7HIhNLy9LQ==", "requires": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "manifold-3d": "3.3.2" } }, "@bitbybit-dev/manifold-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-yllVGubpCWQ0LT2EWrjPS6of3SjUQu4zqz3k8nTFsFU/mqFr9T4fDJw+7kSzGL4JaYVB7T+KTGkca+kFSQd7XQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-AVAucSbH35GlXAaMq729UN9WJY+nUSQRXEQGzWG7Kq6rmLKf15O1j/YDCeqkmTLNIbImeOuL+cpBM/xuwaiemA==", "requires": { - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "@bitbybit-dev/occt": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.0.tgz", - "integrity": "sha512-9NtYzYtVnH22W/RiG49UG95s2FCpWaetSOFOAbuz7M+qH44GFkSO18Wy++2w/5rgCbBnHU3Vnp8EvZaL+/5w8g==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.1.tgz", + "integrity": "sha512-DVFqbNiRWnYBLEA1P9imWTIMFl0zi+EUusGTCI166wm2phUb55XxpGkbiWiQ85LmUykORUWoBj/beWkDlwkHbQ==", "requires": { - "@bitbybit-dev/base": "1.0.0-rc.0" + "@bitbybit-dev/base": "1.0.0-rc.1" } }, "@bitbybit-dev/occt-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-4fpVi/lDgMe0/69IbEU6UycmQXa/7D3S307V2W/gRO0k1okwd2OcKy44jZ1JNYbVN/XFfQwJg1/bnfuOoYgbng==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-Xq0yqdKNyQT0nhJlRVL8IAtv+JteQJWd8UJU8YYV5J8bSs5c05h4ztzCcTwQfVBnVLauzKPurrXAhQ/gY28aRA==", "requires": { - "@bitbybit-dev/occt": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/occt": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "@csstools/normalize.css": { @@ -21688,9 +21688,9 @@ } }, "babylonjs-gltf2interface": { - "version": "8.46.2", - "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.46.2.tgz", - "integrity": "sha512-w0e4lCvTf4bQ/66aiJMBZPLoi1FEHuX8Puyqi2N/AWMmolAo5cDGR7j1/jMa1QHI8gO4LVBhl0uR5UDw66xkDw==", + "version": "8.49.6", + "resolved": "https://registry.npmjs.org/babylonjs-gltf2interface/-/babylonjs-gltf2interface-8.49.6.tgz", + "integrity": "sha512-7qxi48GxEgX9SIZf1Eze+25YCUUY9X6ZIuoozg0rHZyY9gQBso7HUIWLznsQHeUXey19QS/zirrP1spm1PW8Vw==", "peer": true }, "balanced-match": { @@ -26459,9 +26459,9 @@ "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=" }, "nan": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.24.0.tgz", - "integrity": "sha512-Vpf9qnVW1RaDkoNKFUvfxqAbtI8ncb8OJlqZ9wwpXzWPEsvsB1nvdUi6oYrHIkQ1Y/tMDnr1h4nczS0VB9Xykg==", + "version": "2.25.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.25.0.tgz", + "integrity": "sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g==", "optional": true }, "nanoid": { @@ -28292,9 +28292,9 @@ } }, "rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "requires": { "tslib": "^2.1.0" } diff --git a/examples/react/babylonjs/laptop-holder/package.json b/examples/react/babylonjs/laptop-holder/package.json index 74e37c557..46d4f8836 100644 --- a/examples/react/babylonjs/laptop-holder/package.json +++ b/examples/react/babylonjs/laptop-holder/package.json @@ -16,7 +16,7 @@ "react-scripts": "5.0.1", "typescript": "^4.6.2", "web-vitals": "^2.1.4", - "@bitbybit-dev/babylonjs": "1.0.0-rc.0", + "@bitbybit-dev/babylonjs": "1.0.0-rc.1", "file-loader": "6.2.0", "@mui/icons-material": "5.6.2", "@mui/material": "5.6.4", diff --git a/examples/react/threejs/vase/package-lock.json b/examples/react/threejs/vase/package-lock.json index e86c13c66..7aa034372 100644 --- a/examples/react/threejs/vase/package-lock.json +++ b/examples/react/threejs/vase/package-lock.json @@ -9,7 +9,7 @@ "version": "0.1.0", "dependencies": { "@babel/plugin-proposal-private-property-in-object": "7.21.11", - "@bitbybit-dev/threejs": "1.0.0-rc.0", + "@bitbybit-dev/threejs": "1.0.0-rc.1", "@emotion/react": "11.11.0", "@emotion/styled": "11.11.0", "@mui/icons-material": "5.11.16", @@ -1995,33 +1995,33 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" }, "node_modules/@bitbybit-dev/base": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.0.tgz", - "integrity": "sha512-t93K7kNq48A1IZkzsEEFsbbZlxhNPpYBrfEZjnYUOCuZGkFJPjUfWm0zFV081s3fMRINpeKXNyYFBL+HQX2G4Q==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/base/-/base-1.0.0-rc.1.tgz", + "integrity": "sha512-0xaTf1c+u+GRdUfOZMbUkOV8n5GJef9xcKRlWjFtfy4R450yMqmDxRppJ9RLf4T11ZVvhHG9RMqBIiKT1obLgg==", "license": "MIT" }, "node_modules/@bitbybit-dev/core": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.0.tgz", - "integrity": "sha512-HXZAl51rSwlneKzuwqpYmGH/Ngqr8KW1/EyUfhKeLZyHxryfhYuxnvzZXK6jN9dR6mYczo1nE6LFx7V/377AQg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/core/-/core-1.0.0-rc.1.tgz", + "integrity": "sha512-gxKVLMxlfVF99E+weS0S0gAxJNm9u/BJ8pw/mjUGJIFiAS0KkxXy7V0xPiFcBxfRUwoCTNzRT38s8DMk5su0mg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", - "@bitbybit-dev/jscad-worker": "1.0.0-rc.0", - "@bitbybit-dev/manifold-worker": "1.0.0-rc.0", - "@bitbybit-dev/occt-worker": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", + "@bitbybit-dev/jscad-worker": "1.0.0-rc.1", + "@bitbybit-dev/manifold-worker": "1.0.0-rc.1", + "@bitbybit-dev/occt-worker": "1.0.0-rc.1", "jsonpath-plus": "10.3.0", - "rxjs": "7.5.5", + "rxjs": "7.8.2", "verb-nurbs-web": "2.1.3" } }, "node_modules/@bitbybit-dev/jscad": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.0.tgz", - "integrity": "sha512-9AvLGyoE0/qK6Z4BryrQIer1Dci2VMw6zWWikHV4F7U4VHc7PkcEbpqEPFeesOL63VUdNyTg16L3RGLdLcuRJg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad/-/jscad-1.0.0-rc.1.tgz", + "integrity": "sha512-+3w5WFw+vcQ+0rD9Zzq0K7lXxTydkjt+Bz4CgoUim82KaKSLE8ykfkBL/8+JspoJMfo2Tx9O3Gnh7MBmwX5DxA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "@jscad/3mf-serializer": "2.1.12", "@jscad/dxf-serializer": "2.1.18", "@jscad/io-utils": "2.0.28", @@ -2030,61 +2030,61 @@ } }, "node_modules/@bitbybit-dev/jscad-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-xTnu7Rsz4Funa6ihw2sEQC0nDG9QHSZjRq5Uz/yEcOzlW2dGpONWoPXWTPV3kfi/fLYFaBOlTyzbjg5MjQM6xg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/jscad-worker/-/jscad-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-dWy6zbeJPwDQHiruSRd8OzI4hXbhhgAbVGmz6GBHWCYw3NyAW3yc1VaKURsKLk4dJm+wchlCHnXgPqWEoHddvg==", "license": "MIT", "dependencies": { - "@bitbybit-dev/jscad": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/jscad": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/manifold": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.0.tgz", - "integrity": "sha512-klXymu41Nt38Bk8/46vukmzkDY6m2WWvNMZBTBMEkmYQSlo4DRpsMJ7rxGpvC5ecwusTieOl3lke6gi1/83tfw==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold/-/manifold-1.0.0-rc.1.tgz", + "integrity": "sha512-fwhNMTaQ3sHyzLnjR1+gmfxezhm5kcXXWf6GTlToI/z7q1lasVQlchw9QQYVclI1j1TtJYQd4hNl7HIhNLy9LQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0", + "@bitbybit-dev/base": "1.0.0-rc.1", "manifold-3d": "3.3.2" } }, "node_modules/@bitbybit-dev/manifold-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-yllVGubpCWQ0LT2EWrjPS6of3SjUQu4zqz3k8nTFsFU/mqFr9T4fDJw+7kSzGL4JaYVB7T+KTGkca+kFSQd7XQ==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/manifold-worker/-/manifold-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-AVAucSbH35GlXAaMq729UN9WJY+nUSQRXEQGzWG7Kq6rmLKf15O1j/YDCeqkmTLNIbImeOuL+cpBM/xuwaiemA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/manifold": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/manifold": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/occt": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.0.tgz", - "integrity": "sha512-9NtYzYtVnH22W/RiG49UG95s2FCpWaetSOFOAbuz7M+qH44GFkSO18Wy++2w/5rgCbBnHU3Vnp8EvZaL+/5w8g==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt/-/occt-1.0.0-rc.1.tgz", + "integrity": "sha512-DVFqbNiRWnYBLEA1P9imWTIMFl0zi+EUusGTCI166wm2phUb55XxpGkbiWiQ85LmUykORUWoBj/beWkDlwkHbQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/base": "1.0.0-rc.0" + "@bitbybit-dev/base": "1.0.0-rc.1" } }, "node_modules/@bitbybit-dev/occt-worker": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.0.tgz", - "integrity": "sha512-4fpVi/lDgMe0/69IbEU6UycmQXa/7D3S307V2W/gRO0k1okwd2OcKy44jZ1JNYbVN/XFfQwJg1/bnfuOoYgbng==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/occt-worker/-/occt-worker-1.0.0-rc.1.tgz", + "integrity": "sha512-Xq0yqdKNyQT0nhJlRVL8IAtv+JteQJWd8UJU8YYV5J8bSs5c05h4ztzCcTwQfVBnVLauzKPurrXAhQ/gY28aRA==", "license": "MIT", "dependencies": { - "@bitbybit-dev/occt": "1.0.0-rc.0", - "rxjs": "7.5.5" + "@bitbybit-dev/occt": "1.0.0-rc.1", + "rxjs": "7.8.2" } }, "node_modules/@bitbybit-dev/threejs": { - "version": "1.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@bitbybit-dev/threejs/-/threejs-1.0.0-rc.0.tgz", - "integrity": "sha512-rTqroOnabSaPjMrls6w+1W4Ba8xWHs2Zxn8CoqbctNNlT+AYx0Eo2fhvSAYvxhuM2UBD+WC04MVsNt8WR9s5Bg==", + "version": "1.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@bitbybit-dev/threejs/-/threejs-1.0.0-rc.1.tgz", + "integrity": "sha512-zu8rSVai4Jt7OuuK1H7H1E4Bm8q63kxPas0b+Ccbv0C4I6/SnFf5syJ23h/oB8VWZRbRPs+9+UaaKZr+rUTqhQ==", "license": "MIT", "dependencies": { - "@bitbybit-dev/core": "1.0.0-rc.0", + "@bitbybit-dev/core": "1.0.0-rc.1", "three": "0.182.0" } }, @@ -13538,9 +13538,9 @@ } }, "node_modules/nan": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.24.0.tgz", - "integrity": "sha512-Vpf9qnVW1RaDkoNKFUvfxqAbtI8ncb8OJlqZ9wwpXzWPEsvsB1nvdUi6oYrHIkQ1Y/tMDnr1h4nczS0VB9Xykg==", + "version": "2.25.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.25.0.tgz", + "integrity": "sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g==", "license": "MIT", "optional": true }, @@ -16352,9 +16352,9 @@ } }, "node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.1.0" diff --git a/examples/react/threejs/vase/package.json b/examples/react/threejs/vase/package.json index cc7acfdc1..f03807f18 100644 --- a/examples/react/threejs/vase/package.json +++ b/examples/react/threejs/vase/package.json @@ -4,7 +4,7 @@ "private": true, "homepage": "https://app-store.bitbybit.dev/bitbybit-threejs", "dependencies": { - "@bitbybit-dev/threejs": "1.0.0-rc.0", + "@bitbybit-dev/threejs": "1.0.0-rc.1", "@testing-library/jest-dom": "5.16.5", "@testing-library/react": "14.0.0", "@testing-library/user-event": "14.4.3", diff --git a/examples/runner/babylon/full/inline-include/index.html b/examples/runner/babylon/full/inline-include/index.html index 8214a2a88..dede8612d 100644 --- a/examples/runner/babylon/full/inline-include/index.html +++ b/examples/runner/babylon/full/inline-include/index.html @@ -34,7 +34,7 @@ // This function simply outputs the script that was exported from the Rete editor by clicking "Export to Runner" and selecting Minify option. function exportedScript() { - return '{\"type\":\"rete\",\"version\":\"1.0.0-rc.0\",\"script\":\"!async function(e,t,s,n,r){let a={};a={x:[0],y:[0],z:[1],...a};const o=[{result:e.HS.executeBasedOnType(a,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let i={};i={text:[\\"[true,false]\\"],...i};const c=[{result:e.HS.executeBasedOnType(i,!1,(e=>t.json.parse(e))),transformers:[]}];let p={};p={text:[\\"[false,true]\\"],...p};const u=[{result:e.HS.executeBasedOnType(p,!1,(e=>t.json.parse(e))),transformers:[]}],l=[{result:[5],transformers:[]}];let d={};d={x:[1],y:[0],z:[0],...d};const m=[{result:e.HS.executeBasedOnType(d,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}],y=[{result:[12],transformers:[]}],S=[{result:[7],transformers:[]}];let H={};H={x:[0],y:[1],z:[0],...H};const f=[{result:e.HS.executeBasedOnType(H,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let h={};h={x:[0],y:[0],z:[1],...h};const x=[{result:e.HS.executeBasedOnType(h,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let v={};v={number:[.4],...v};const O=[{result:e.HS.executeBasedOnType(v,!1,(e=>t.math.number(e))),transformers:[]}];let I={};I={x:[0],y:[0],z:[-1],...I};const L=[{result:e.HS.executeBasedOnType(I,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let B={};B={x:[0],y:[0],z:[-2],...B};const w=[{result:e.HS.executeBasedOnType(B,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let T={};T={x:[0],y:[0],z:[1],...T};const g=[{result:e.HS.executeBasedOnType(T,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let A={};A={x:[0],y:[1.5],z:[0],...A};const E=[{result:e.HS.executeBasedOnType(A,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let b={};b={...{faceOpacity:[.5],edgeOpacity:[.5],edgeColour:[\\"#000000\\"],faceColour:[\\"#212121\\"],vertexColour:[\\"#ff00ff\\"],faceMaterial:[void 0],edgeWidth:[2],vertexSize:[.03],drawEdges:[!0],drawFaces:[!0],drawVertices:[!1],precision:[.02],drawEdgeIndexes:[!1],edgeIndexHeight:[.06],edgeIndexColour:[\\"ff00ff\\"],drawFaceIndexes:[!1],faceIndexHeight:[.06],faceIndexColour:[\\"#0000ff\\"]},...b};const z=[{result:e.HS.executeBasedOnType(b,!1,(e=>t.draw.optionsOcctShape(e))),transformers:[]}];let W={};W={name:[\\"Custom Material\\"],baseColor:[\\"#9c9cba\\"],emissiveColor:[\\"#000000\\"],metallic:[.9],roughness:[.1],alpha:[1],backFaceCulling:[!1],zOffset:[2],...W};const C=[{result:e.HS.executeBasedOnType(W,!1,(e=>t.babylon.material.pbrMetallicRoughness.create(e))),transformers:[]}];let P={};P={x:[0],y:[0],z:[-1],...P};const X=[{result:e.HS.executeBasedOnType(P,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let Y={};Y={x:[0],y:[0],z:[-1.5],...Y};const Z=[{result:e.HS.executeBasedOnType(Y,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let N={};N={x:[0],y:[0],z:[1],...N};const k=[{result:e.HS.executeBasedOnType(N,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let M={};M={skybox:[\\"city\\"],size:[1e3],blur:[.4],environmentIntensity:[.4],...M};e.HS.executeBasedOnType(M,!1,(e=>t.babylon.scene.enableSkybox(e)));let F={number:[{result:[20],transformers:[]}]};e.HS.updateListInputs(F),F={number:[20],...F};const D=[{result:e.HS.executeBasedOnType(F,!1,(e=>t.math.number(e))),transformers:[]}];let R={};R.y=y,e.HS.updateListInputs(R),R={x:[0],y:[0],z:[0],...R};const j=[{result:e.HS.executeBasedOnType(R,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let q={};q.item=y,e.HS.updateListInputs(q),q={...q};const V=[{result:q.item}];let G={};G.first=S,e.HS.updateListInputs(G),G={first:[1],second:[-2],operation:[\\"divide\\"],...G};const J=[{result:e.HS.executeBasedOnType(G,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let K={};K.first=S,e.HS.updateListInputs(K),K={first:[1],second:[-4],operation:[\\"divide\\"],...K};const Q=[{result:e.HS.executeBasedOnType(K,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let U={};U.first=y,U.second=O,e.HS.updateListInputs(U),U={first:[1],second:[.4],operation:[\\"add\\"],...U};const $=[{result:e.HS.executeBasedOnType(U,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let _={};_.item=S,e.HS.updateListInputs(_),_={..._};const ee=[{result:_.item}],te={faceOpacity:[1],edgeOpacity:[1],edgeColour:[\\"#1c1c1c\\"],faceColour:[\\"#bdbdbd\\"],vertexColour:[\\"#ff00ff\\"],faceMaterial:[void 0],edgeWidth:[2],vertexSize:[.03],drawEdges:[!0],drawFaces:[!0],drawVertices:[!1],precision:[.01],drawEdgeIndexes:[!1],edgeIndexHeight:[.06],edgeIndexColour:[\\"ff00ff\\"],drawFaceIndexes:[!1],faceIndexHeight:[.06],faceIndexColour:[\\"#0000ff\\"]};let se={};se.faceMaterial=C,e.HS.updateListInputs(se),se={...te,...se};const ne=[{result:e.HS.executeBasedOnType(se,!1,(e=>t.draw.optionsOcctShape(e))),transformers:[]}];let re={};re.center=Z,re.direction=X,e.HS.updateListInputs(re),re={radius:[3],height:[1.9],center:[[0,0,0]],direction:[[0,1,0]],...re};const ae=[{result:await e.HS.executeBasedOnTypeAsync(re,!1,(e=>t.occt.shapes.solid.createCylinder(e))),transformers:[]}];let oe={};oe.y=$,e.HS.updateListInputs(oe),oe={x:[0],y:[12],z:[0],...oe};const ie=[{result:e.HS.executeBasedOnType(oe,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let ce={};ce.first=D,e.HS.updateListInputs(ce),ce={first:[1],second:[3],operation:[\\"multiply\\"],...ce};const pe=[{result:e.HS.executeBasedOnType(ce,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let ue={};ue.first=V,ue.second=O,e.HS.updateListInputs(ue),ue={first:[1],second:[.4],operation:[\\"add\\"],...ue};const le=[{result:e.HS.executeBasedOnType(ue,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let de={};de.first=V,de.second=O,e.HS.updateListInputs(de),de={first:[1],second:[.4],operation:[\\"subtract\\"],...de};const me=[{result:e.HS.executeBasedOnType(de,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let ye={};ye.first=ee,e.HS.updateListInputs(ye),ye={first:[1],second:[-.2],operation:[\\"multiply\\"],...ye};const Se=[{result:e.HS.executeBasedOnType(ye,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let He={};He.second=D,e.HS.updateListInputs(He),He={first:[360],second:[1],operation:[\\"divide\\"],...He};const fe=[{result:e.HS.executeBasedOnType(He,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}],he={shape:[void 0],radius:[.3],radiusList:[void 0],indexes:[void 0]};let xe={};xe.shape=ae,e.HS.updateListInputs(xe),xe={...he,...xe};const ve=[{result:await e.HS.executeBasedOnTypeAsync(xe,!1,(e=>t.occt.fillets.filletEdges(e))),transformers:[]}];let Oe={};Oe.start=L,Oe.end=ie,e.HS.updateListInputs(Oe),Oe={start:[[0,0,0]],end:[[0,1,0]],...Oe};const Ie=[{result:await e.HS.executeBasedOnTypeAsync(Oe,!1,(e=>t.occt.shapes.wire.createLineWire(e))),transformers:[]}];let Le={};Le.second=pe,e.HS.updateListInputs(Le),Le={first:[360],second:[1],operation:[\\"divide\\"],...Le};const Be=[{result:e.HS.executeBasedOnType(Le,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let we={};we.start=w,we.end=ie,e.HS.updateListInputs(we),we={start:[[0,0,0]],end:[[0,1,0]],...we};const Te=[{result:await e.HS.executeBasedOnTypeAsync(we,!1,(e=>t.occt.shapes.wire.createLineWire(e))),transformers:[]}];let ge={};ge.y=le,e.HS.updateListInputs(ge),ge={x:[0],y:[0],z:[.05],...ge};const Ae=[{result:e.HS.executeBasedOnType(ge,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let Ee={};Ee.y=me,Ee.z=Q,e.HS.updateListInputs(Ee),Ee={x:[0],y:[0],z:[-1],...Ee};const be=[{result:e.HS.executeBasedOnType(Ee,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let ze={};ze.y=me,ze.z=J,e.HS.updateListInputs(ze),ze={x:[0],y:[0],z:[0],...ze};const We=[{result:e.HS.executeBasedOnType(ze,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let Ce={};Ce.z=Se,e.HS.updateListInputs(Ce),Ce={x:[0],y:[0],z:[0],...Ce};const Pe=[{result:e.HS.executeBasedOnType(Ce,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let Xe={};Xe.step=fe,e.HS.updateListInputs(Xe),Xe={step:[.1],min:[0],max:[360],...Xe};const Ye=e.HS.executeBasedOnType(Xe,!1,(e=>t.vector.span(e))),Ze=[];for(let e=0;e<1;e++)Ze.push({type:\\"flat\\"});const Ne=[{result:Ye,transformers:Ze}];let ke={};ke.first=Se,e.HS.updateListInputs(ke),ke={first:[2],second:[-2],operation:[\\"multiply\\"],...ke};e.HS.executeBasedOnType(ke,!1,(e=>t.math.twoNrOperation(e)));let Me={};Me.listElements=ve,e.HS.updateListInputs(Me),Me={...Me};const Fe=[{result:[Me.listElements?Me.listElements:[]]}],De={shape:[void 0],axis:[[0,0,1]],angle:[0]};let Re={};Re.shape=Ie,Re.axis=o,Re.angle=Be,e.HS.updateListInputs(Re),Re={...De,...Re};const je=[{result:await e.HS.executeBasedOnTypeAsync(Re,!1,(e=>t.occt.transforms.rotate(e))),transformers:[]}];let qe={};qe.first=Be,e.HS.updateListInputs(qe),qe={first:[1],second:[.4],operation:[\\"multiply\\"],...qe};const Ve=[{result:e.HS.executeBasedOnType(qe,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let Ge={};Ge.first=Be,e.HS.updateListInputs(Ge),Ge={first:[1],second:[.6],operation:[\\"multiply\\"],...Ge};const Je=[{result:e.HS.executeBasedOnType(Ge,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let Ke={};Ke.listElements=[Ae[0],j[0],be[0],We[0]],e.HS.updateListInputs(Ke),Ke={...Ke};const Qe=[{result:[Ke.listElements?Ke.listElements:[]]}];let Ue={};Ue.item=Ne,e.HS.updateListInputs(Ue),Ue={...Ue};const $e=[{result:Ue.item}],_e={shape:[void 0],nrOfDivisions:[11],removeStartPoint:[!1],removeEndPoint:[!1]};let et={};et.shape=je,et.nrOfDivisions=l,e.HS.updateListInputs(et),et={..._e,...et};const tt=[{result:await e.HS.executeBasedOnTypeAsync(et,!1,(e=>t.occt.shapes.wire.divideWireByEqualDistanceToPoints(e))),transformers:[]}],st={shape:[void 0],axis:[[0,0,1]],angle:[0]};let nt={};nt.shape=Te,nt.axis=o,nt.angle=[Ve[0],Je[0]],e.HS.updateListInputs(nt),nt={...st,...nt};const rt=[{result:await e.HS.executeBasedOnTypeAsync(nt,!1,(e=>t.occt.transforms.rotate(e))),transformers:[]}];let at={};at.number=Ve,e.HS.updateListInputs(at),at={number:[1],operation:[\\"negate\\"],...at};const ot=[{result:e.HS.executeBasedOnType(at,!1,(e=>t.math.oneNrOperation(e))),transformers:[]}],it={points:[void 0]};let ct={};ct.points=Qe,e.HS.updateListInputs(ct),ct={...it,...ct};const pt=[{result:await e.HS.executeBasedOnTypeAsync(ct,!1,(e=>t.occt.shapes.wire.createPolylineWire(e))),transformers:[]}];e.HS.drawNodeMeshes(pt,t);const ut={list:[void 0],pattern:[[!0,!0,!1]]};let lt={};lt.list=tt,lt.pattern=u,e.HS.updateListInputs(lt),lt={...ut,...lt};const dt=[{result:e.HS.executeBasedOnType(lt,!0,(e=>t.lists.getByPattern(e))),transformers:[]}];let mt={};mt.listElements=rt,e.HS.updateListInputs(mt),mt={...mt};const yt=[{result:[mt.listElements?mt.listElements:[]]}],St={shape:[void 0],origin:[[0,0,0]],direction:[[0,0,1]]};let Ht={};Ht.shape=pt,Ht.origin=We,Ht.direction=f,e.HS.updateListInputs(Ht),Ht={...St,...Ht};const ft=[{result:await e.HS.executeBasedOnTypeAsync(Ht,!1,(e=>t.occt.transforms.mirror(e))),transformers:[]}],ht={shape:[void 0]};let xt={};xt.shape=pt,e.HS.updateListInputs(xt),xt={...ht,...xt};const vt=await e.HS.executeBasedOnTypeAsync(xt,!1,(e=>t.occt.shapes.edge.getCornerPointsOfEdgesForShape(e))),Ot=[];for(let e=0;e<1;e++)Ot.push({type:\\"flat\\"});const It=[{result:vt,transformers:Ot}],Lt={list:[void 0],index:[0],clone:[!0]};let Bt={};Bt.list=yt,e.HS.updateListInputs(Bt),Bt={...Lt,...Bt};const wt=[{result:e.HS.executeBasedOnType(Bt,!1,(e=>t.lists.getItem(e))),transformers:[]}],Tt={shape:[void 0]};let gt={};gt.shape=ft,e.HS.updateListInputs(gt),gt={...Tt,...gt};const At=[{result:await e.HS.executeBasedOnTypeAsync(gt,!1,(e=>t.occt.shapes.edge.getCornerPointsOfEdgesForShape(e))),transformers:[]}],Et={shape:[void 0],nrOfDivisions:[11],removeStartPoint:[!1],removeEndPoint:[!1]};let bt={};bt.shape=wt,bt.nrOfDivisions=l,e.HS.updateListInputs(bt),bt={...Et,...bt};const zt=[{result:await e.HS.executeBasedOnTypeAsync(bt,!1,(e=>t.occt.shapes.wire.divideWireByEqualDistanceToPoints(e))),transformers:[]}],Wt={list:[void 0],index:[3],clone:[!0]};let Ct={};Ct.list=At,e.HS.updateListInputs(Ct),Ct={...Wt,...Ct};const Pt=[{result:e.HS.executeBasedOnType(Ct,!1,(e=>t.lists.removeItemAtIndex(e))),transformers:[]}],Xt={list:[void 0],pattern:[[!0,!0,!1]]};let Yt={};Yt.list=zt,Yt.pattern=c,e.HS.updateListInputs(Yt),Yt={...Xt,...Yt};const Zt=[{result:e.HS.executeBasedOnType(Yt,!1,(e=>t.lists.getByPattern(e))),transformers:[]}],Nt={list:[void 0],clone:[!0]};let kt={};kt.list=Pt,e.HS.updateListInputs(kt),kt={...Nt,...kt};const Mt=e.HS.executeBasedOnType(kt,!1,(e=>t.lists.reverse(e))),Ft=[];for(let e=0;e<1;e++)Ft.push({type:\\"flat\\"});const Dt=[{result:Mt,transformers:Ft}];let Rt={};Rt.listElements=[Zt[0],dt[0]],e.HS.updateListInputs(Rt),Rt={...Rt};const jt=[{result:[Rt.listElements?Rt.listElements:[]]}];let qt={};qt.listElements=[It[0],Dt[0]],e.HS.updateListInputs(qt),qt={...qt};const Vt=[{result:[qt.listElements?qt.listElements:[]]}],Gt={list:[void 0],clone:[!0]};let Jt={};Jt.list=jt,e.HS.updateListInputs(Jt),Jt={...Gt,...Jt};const Kt=e.HS.executeBasedOnType(Jt,!1,(e=>t.lists.flipLists(e))),Qt=[];for(let e=0;e<2;e++)Qt.push({type:\\"flat\\"});const Ut=[{result:Kt,transformers:Qt}],$t={points:[void 0]};let _t={};_t.points=Vt,e.HS.updateListInputs(_t),_t={...$t,..._t};const es=[{result:await e.HS.executeBasedOnTypeAsync(_t,!1,(e=>t.occt.shapes.wire.createPolylineWire(e))),transformers:[]}];let ts={};ts.listElements=Ut,e.HS.updateListInputs(ts),ts={...ts};const ss=[{result:[ts.listElements?ts.listElements:[]]}],ns={shape:[void 0],radius:[.3],radiusList:[void 0],indexes:[void 0]};let rs={};rs.shape=es,e.HS.updateListInputs(rs),rs={...ns,...rs};const as=[{result:await e.HS.executeBasedOnTypeAsync(rs,!1,(e=>t.occt.fillets.fillet2d(e))),transformers:[]}],os={points:[void 0]};let is={};is.points=ss,e.HS.updateListInputs(is),is={...os,...is};const cs=[{result:await e.HS.executeBasedOnTypeAsync(is,!1,(e=>t.occt.shapes.wire.createPolylineWire(e))),transformers:[]}],ps={shape:[void 0],angle:[360],direction:[[0,1,0]],copy:[!1]};let us={};us.shape=as,us.direction=x,e.HS.updateListInputs(us),us={...ps,...us};const ls=[{result:await e.HS.executeBasedOnTypeAsync(us,!1,(e=>t.occt.operations.revolve(e))),transformers:[]}],ds={shape:[void 0]};let ms={};ms.shape=as,e.HS.updateListInputs(ms),ms={...ds,...ms};const ys=[{result:await e.HS.executeBasedOnTypeAsync(ms,!1,(e=>t.occt.shapes.wire.startPointOnWire(e))),transformers:[]}],Ss={shape:[void 0]};let Hs={};Hs.shape=as,e.HS.updateListInputs(Hs),Hs={...Ss,...Hs};const fs=[{result:await e.HS.executeBasedOnTypeAsync(Hs,!1,(e=>t.occt.shapes.wire.endPointOnWire(e))),transformers:[]}],hs={shape:[void 0]};let xs={};xs.shape=as,e.HS.updateListInputs(xs),xs={...hs,...xs};const vs=[{result:await e.HS.executeBasedOnTypeAsync(xs,!1,(e=>t.occt.shapes.wire.closeOpenWire(e))),transformers:[]}],Os={shape:[void 0],angle:[360],direction:[[0,1,0]],copy:[!1]};let Is={};Is.shape=vs,Is.direction=x,e.HS.updateListInputs(Is),Is={...Os,...Is};const Ls=[{result:await e.HS.executeBasedOnTypeAsync(Is,!1,(e=>t.occt.operations.revolve(e))),transformers:[]}],Bs={shape:[void 0],radius:[1],radiusList:[void 0],indexes:[void 0],direction:[[0,1,0]]};let ws={};ws.shape=cs,ws.direction=g,e.HS.updateListInputs(ws),ws={...Bs,...ws};const Ts=[{result:await e.HS.executeBasedOnTypeAsync(ws,!1,(e=>t.occt.fillets.fillet3DWire(e))),transformers:[]}],gs={shape:[void 0],face:[void 0],distance:[-.2],tolerance:[.1]};let As={};As.shape=ls,e.HS.updateListInputs(As),As={...gs,...As};const Es=[{result:await e.HS.executeBasedOnTypeAsync(As,!1,(e=>t.occt.operations.offset(e))),transformers:[]}],bs={shape:[void 0],index:[0]};let zs={};zs.shape=ls,e.HS.updateListInputs(zs),zs={...bs,...zs};const Ws=[{result:await e.HS.executeBasedOnTypeAsync(zs,!1,(e=>t.occt.shapes.wire.getWire(e))),transformers:[]}];let Cs={};Cs.item=ys,e.HS.updateListInputs(Cs),Cs={...Cs};const Ps=[{result:Cs.item}];let Xs={};Xs.item=fs,e.HS.updateListInputs(Xs),Xs={...Xs};const Ys=[{result:Xs.item}];let Zs={};Zs.start=fs,Zs.end=ys,e.HS.updateListInputs(Zs),Zs={start:[[0,0,0]],end:[[0,1,0]],...Zs};const Ns=[{result:await e.HS.executeBasedOnTypeAsync(Zs,!1,(e=>t.occt.shapes.wire.createLineWire(e))),transformers:[]}];e.HS.drawNodeMeshes(Ns,t);const ks={shape:[void 0],angle:[360],direction:[[0,1,0]],copy:[!1]};let Ms={};Ms.shape=Ts,Ms.angle=ot,Ms.direction=o,e.HS.updateListInputs(Ms),Ms={...ks,...Ms};const Fs=[{result:await e.HS.executeBasedOnTypeAsync(Ms,!1,(e=>t.occt.operations.revolve(e))),transformers:[]}],Ds={shape:[void 0]};let Rs={};Rs.shape=Ls,e.HS.updateListInputs(Rs),Rs={...Ds,...Rs};const js=[{result:await e.HS.executeBasedOnTypeAsync(Rs,!1,(e=>t.occt.shapes.solid.fromClosedShell(e))),transformers:[]}],qs={shape:[void 0],index:[1]};let Vs={};Vs.shape=Ws,e.HS.updateListInputs(Vs),Vs={...qs,...Vs};const Gs=[{result:await e.HS.executeBasedOnTypeAsync(Vs,!1,(e=>t.occt.shapes.edge.getEdge(e))),transformers:[]}],Js={shape:[void 0],index:[0]};let Ks={};Ks.shape=Es,e.HS.updateListInputs(Ks),Ks={...Js,...Ks};const Qs=[{result:await e.HS.executeBasedOnTypeAsync(Ks,!1,(e=>t.occt.shapes.wire.getWire(e))),transformers:[]}],Us={shape:[void 0],translation:[[0,0,0]]};let $s={};$s.shape=Ns,$s.translation=E,e.HS.updateListInputs($s),$s={...Us,...$s};const _s=[{result:await e.HS.executeBasedOnTypeAsync($s,!1,(e=>t.occt.transforms.translate(e))),transformers:[]}],en={shape:[void 0],direction:[[0,1,0]]};let tn={};tn.shape=Fs,tn.direction=Pe,e.HS.updateListInputs(tn),tn={...en,...tn};const sn=[{result:await e.HS.executeBasedOnTypeAsync(tn,!1,(e=>t.occt.operations.extrude(e))),transformers:[]}];let nn={};nn.listElements=js,e.HS.updateListInputs(nn),nn={...nn};const rn=[{result:[nn.listElements?nn.listElements:[]]}],an={shape:[void 0],index:[1]};let on={};on.shape=Qs,e.HS.updateListInputs(on),on={...an,...on};const cn=[{result:await e.HS.executeBasedOnTypeAsync(on,!1,(e=>t.occt.shapes.edge.getEdge(e))),transformers:[]}];let pn={};pn.listElements=Gs,e.HS.updateListInputs(pn),pn={...pn};const un=[{result:[pn.listElements?pn.listElements:[]]}],ln={shape:[void 0]};let dn={};dn.shape=_s,e.HS.updateListInputs(dn),dn={...ln,...dn};const mn=[{result:await e.HS.executeBasedOnTypeAsync(dn,!1,(e=>t.occt.shapes.wire.startPointOnWire(e))),transformers:[]}],yn={shape:[void 0]};let Sn={};Sn.shape=_s,e.HS.updateListInputs(Sn),Sn={...yn,...Sn};const Hn=[{result:await e.HS.executeBasedOnTypeAsync(Sn,!1,(e=>t.occt.shapes.wire.endPointOnWire(e))),transformers:[]}],fn={shapes:[void 0]};let hn={};hn.shapes=un,e.HS.updateListInputs(hn),hn={...fn,...hn};const xn=[{result:await e.HS.executeBasedOnTypeAsync(hn,!1,(e=>t.occt.shapes.wire.combineEdgesAndWiresIntoAWire(e))),transformers:[]}];let vn={};vn.listElements=cn,e.HS.updateListInputs(vn),vn={...vn};const On=[{result:[vn.listElements?vn.listElements:[]]}],In={shape:[void 0],shapes:[void 0],keepEdges:[!1]};let Ln={};Ln.shape=sn,Ln.shapes=Fe,e.HS.updateListInputs(Ln),Ln={...In,...Ln};const Bn=[{result:await e.HS.executeBasedOnTypeAsync(Ln,!1,(e=>t.occt.booleans.difference(e))),transformers:[]}];let wn={};wn.item=Hn,e.HS.updateListInputs(wn),wn={...wn};const Tn=[{result:wn.item}];let gn={};gn.item=mn,e.HS.updateListInputs(gn),gn={...gn};const An=[{result:gn.item}],En={shape:[void 0],shapes:[void 0],keepEdges:[!1]};let bn={};bn.shape=Bn,bn.shapes=rn,e.HS.updateListInputs(bn),bn={...En,...bn};const zn=[{result:await e.HS.executeBasedOnTypeAsync(bn,!1,(e=>t.occt.booleans.difference(e))),transformers:[]}],Wn={shapes:[void 0]};let Cn={};Cn.shapes=On,e.HS.updateListInputs(Cn),Cn={...Wn,...Cn};const Pn=[{result:await e.HS.executeBasedOnTypeAsync(Cn,!1,(e=>t.occt.shapes.wire.combineEdgesAndWiresIntoAWire(e))),transformers:[]}];let Xn={};Xn.listElements=[Ps[0],Tn[0],An[0],Ys[0]],e.HS.updateListInputs(Xn),Xn={...Xn};const Yn=[{result:[Xn.listElements?Xn.listElements:[]]}],Zn={shape:[void 0],origin:[[0,0,0]],normal:[[0,0,1]]};let Nn={};Nn.shape=zn,Nn.normal=m,e.HS.updateListInputs(Nn),Nn={...Zn,...Nn};const kn=[{result:await e.HS.executeBasedOnTypeAsync(Nn,!1,(e=>t.occt.transforms.mirrorAlongNormal(e))),transformers:[]}];let Mn={};Mn.listElements=[xn[0],Pn[0]],e.HS.updateListInputs(Mn),Mn={...Mn};const Fn=[{result:[Mn.listElements?Mn.listElements:[]]}],Dn={points:[void 0]};let Rn={};Rn.points=Yn,e.HS.updateListInputs(Rn),Rn={...Dn,...Rn};const jn=[{result:await e.HS.executeBasedOnTypeAsync(Rn,!1,(e=>t.occt.shapes.wire.createPolylineWire(e))),transformers:[]}];let qn={};qn.listElements=[kn[0],zn[0]],e.HS.updateListInputs(qn),qn={...qn};const Vn=[{result:[qn.listElements?qn.listElements:[]]}],Gn={shapes:[void 0],makeSolid:[!1]};let Jn={};Jn.shapes=Fn,e.HS.updateListInputs(Jn),Jn={...Gn,...Jn};const Kn=[{result:await e.HS.executeBasedOnTypeAsync(Jn,!1,(e=>t.occt.operations.loft(e))),transformers:[]}],Qn={shape:[void 0],radius:[.5],radiusList:[void 0],indexes:[void 0]};let Un={};Un.shape=jn,e.HS.updateListInputs(Un),Un={...Qn,...Un};const $n=[{result:await e.HS.executeBasedOnTypeAsync(Un,!1,(e=>t.occt.fillets.fillet2d(e))),transformers:[]}],_n={shapes:[void 0]};let er={};er.shapes=Vn,e.HS.updateListInputs(er),er={..._n,...er};const tr=[{result:await e.HS.executeBasedOnTypeAsync(er,!1,(e=>t.occt.shapes.compound.makeCompound(e))),transformers:[]}],sr={shape:[void 0],origin:[[0,0,0]],direction:[[0,0,1]]};let nr={};nr.shape=Kn,nr.origin=We,nr.direction=f,e.HS.updateListInputs(nr),nr={...sr,...nr};const rr=[{result:await e.HS.executeBasedOnTypeAsync(nr,!1,(e=>t.occt.transforms.mirror(e))),transformers:[]}],ar={shape:[void 0],angle:[360],direction:[[0,1,0]],copy:[!1]};let or={};or.shape=$n,or.direction=x,e.HS.updateListInputs(or),or={...ar,...or};const ir=[{result:await e.HS.executeBasedOnTypeAsync(or,!1,(e=>t.occt.operations.revolve(e))),transformers:[]}];let cr={};cr.listElements=[ls[0],Es[0],Kn[0],rr[0]],e.HS.updateListInputs(cr),cr={...cr};const pr=[{result:[cr.listElements?cr.listElements:[]]}],ur={shape:[void 0],offset:[-.1]};let lr={};lr.shape=ir,e.HS.updateListInputs(lr),lr={...ur,...lr};const dr=[{result:await e.HS.executeBasedOnTypeAsync(lr,!1,(e=>t.occt.operations.makeThickSolidSimple(e))),transformers:[]}],mr={shape:[void 0],angle:[0],center:[[0,0,0]],axis:[[0,0,1]]};let yr={};yr.shape=tr,yr.angle=$e,yr.axis=k,e.HS.updateListInputs(yr),yr={...mr,...yr};const Sr=[{result:await e.HS.executeBasedOnTypeAsync(yr,!1,(e=>t.occt.transforms.rotateAroundCenter(e))),transformers:[]}],Hr={shapes:[void 0],tolerance:[1e-7]};let fr={};fr.shapes=pr,e.HS.updateListInputs(fr),fr={...Hr,...fr};const hr=[{result:await e.HS.executeBasedOnTypeAsync(fr,!1,(e=>t.occt.shapes.shell.sewFaces(e))),transformers:[]}],xr={entity:[void 0],options:[void 0],babylonMesh:[void 0]};let vr={};vr.entity=dr,vr.options=z,e.HS.updateListInputs(vr),vr={...xr,...vr};await e.HS.executeBasedOnTypeAsync(vr,!1,(e=>t.draw.drawAnyAsync(e)));let Or={};Or.listElements=Sr,e.HS.updateListInputs(Or),Or={...Or};const Ir=[{result:[Or.listElements?Or.listElements:[]]}],Lr={shapes:[void 0]};let Br={};Br.shapes=Ir,e.HS.updateListInputs(Br),Br={...Lr,...Br};const wr=[{result:await e.HS.executeBasedOnTypeAsync(Br,!1,(e=>t.occt.shapes.compound.makeCompound(e))),transformers:[]}];let Tr={};Tr.listElements=[hr[0],ve[0],wr[0]],e.HS.updateListInputs(Tr),Tr={...Tr};const gr=[{result:[Tr.listElements?Tr.listElements:[]]}],Ar={shapes:[void 0]};let Er={};Er.shapes=gr,e.HS.updateListInputs(Er),Er={...Ar,...Er};const br=[{result:await e.HS.executeBasedOnTypeAsync(Er,!1,(e=>t.occt.shapes.compound.makeCompound(e))),transformers:[]}],zr={entity:[void 0],options:[void 0],babylonMesh:[void 0]};let Wr={};Wr.entity=br,Wr.options=ne,e.HS.updateListInputs(Wr),Wr={...zr,...Wr};await e.HS.executeBasedOnTypeAsync(Wr,!1,(e=>t.draw.drawAnyAsync(e)))}(BitByBit,bitbybit,bitbybitRunnerResult,bitbybitRunnerInputs,Bit);\"}' + return '{\"type\":\"rete\",\"version\":\"1.0.0-rc.1\",\"script\":\"!async function(e,t,s,n,r){let a={};a={x:[0],y:[0],z:[1],...a};const o=[{result:e.HS.executeBasedOnType(a,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let i={};i={text:[\\"[true,false]\\"],...i};const c=[{result:e.HS.executeBasedOnType(i,!1,(e=>t.json.parse(e))),transformers:[]}];let p={};p={text:[\\"[false,true]\\"],...p};const u=[{result:e.HS.executeBasedOnType(p,!1,(e=>t.json.parse(e))),transformers:[]}],l=[{result:[5],transformers:[]}];let d={};d={x:[1],y:[0],z:[0],...d};const m=[{result:e.HS.executeBasedOnType(d,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}],y=[{result:[12],transformers:[]}],S=[{result:[7],transformers:[]}];let H={};H={x:[0],y:[1],z:[0],...H};const f=[{result:e.HS.executeBasedOnType(H,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let h={};h={x:[0],y:[0],z:[1],...h};const x=[{result:e.HS.executeBasedOnType(h,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let v={};v={number:[.4],...v};const O=[{result:e.HS.executeBasedOnType(v,!1,(e=>t.math.number(e))),transformers:[]}];let I={};I={x:[0],y:[0],z:[-1],...I};const L=[{result:e.HS.executeBasedOnType(I,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let B={};B={x:[0],y:[0],z:[-2],...B};const w=[{result:e.HS.executeBasedOnType(B,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let T={};T={x:[0],y:[0],z:[1],...T};const g=[{result:e.HS.executeBasedOnType(T,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let A={};A={x:[0],y:[1.5],z:[0],...A};const E=[{result:e.HS.executeBasedOnType(A,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let b={};b={...{faceOpacity:[.5],edgeOpacity:[.5],edgeColour:[\\"#000000\\"],faceColour:[\\"#212121\\"],vertexColour:[\\"#ff00ff\\"],faceMaterial:[void 0],edgeWidth:[2],vertexSize:[.03],drawEdges:[!0],drawFaces:[!0],drawVertices:[!1],precision:[.02],drawEdgeIndexes:[!1],edgeIndexHeight:[.06],edgeIndexColour:[\\"ff00ff\\"],drawFaceIndexes:[!1],faceIndexHeight:[.06],faceIndexColour:[\\"#0000ff\\"]},...b};const z=[{result:e.HS.executeBasedOnType(b,!1,(e=>t.draw.optionsOcctShape(e))),transformers:[]}];let W={};W={name:[\\"Custom Material\\"],baseColor:[\\"#9c9cba\\"],emissiveColor:[\\"#000000\\"],metallic:[.9],roughness:[.1],alpha:[1],backFaceCulling:[!1],zOffset:[2],...W};const C=[{result:e.HS.executeBasedOnType(W,!1,(e=>t.babylon.material.pbrMetallicRoughness.create(e))),transformers:[]}];let P={};P={x:[0],y:[0],z:[-1],...P};const X=[{result:e.HS.executeBasedOnType(P,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let Y={};Y={x:[0],y:[0],z:[-1.5],...Y};const Z=[{result:e.HS.executeBasedOnType(Y,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let N={};N={x:[0],y:[0],z:[1],...N};const k=[{result:e.HS.executeBasedOnType(N,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let M={};M={skybox:[\\"city\\"],size:[1e3],blur:[.4],environmentIntensity:[.4],...M};e.HS.executeBasedOnType(M,!1,(e=>t.babylon.scene.enableSkybox(e)));let F={number:[{result:[20],transformers:[]}]};e.HS.updateListInputs(F),F={number:[20],...F};const D=[{result:e.HS.executeBasedOnType(F,!1,(e=>t.math.number(e))),transformers:[]}];let R={};R.y=y,e.HS.updateListInputs(R),R={x:[0],y:[0],z:[0],...R};const j=[{result:e.HS.executeBasedOnType(R,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let q={};q.item=y,e.HS.updateListInputs(q),q={...q};const V=[{result:q.item}];let G={};G.first=S,e.HS.updateListInputs(G),G={first:[1],second:[-2],operation:[\\"divide\\"],...G};const J=[{result:e.HS.executeBasedOnType(G,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let K={};K.first=S,e.HS.updateListInputs(K),K={first:[1],second:[-4],operation:[\\"divide\\"],...K};const Q=[{result:e.HS.executeBasedOnType(K,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let U={};U.first=y,U.second=O,e.HS.updateListInputs(U),U={first:[1],second:[.4],operation:[\\"add\\"],...U};const $=[{result:e.HS.executeBasedOnType(U,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let _={};_.item=S,e.HS.updateListInputs(_),_={..._};const ee=[{result:_.item}],te={faceOpacity:[1],edgeOpacity:[1],edgeColour:[\\"#1c1c1c\\"],faceColour:[\\"#bdbdbd\\"],vertexColour:[\\"#ff00ff\\"],faceMaterial:[void 0],edgeWidth:[2],vertexSize:[.03],drawEdges:[!0],drawFaces:[!0],drawVertices:[!1],precision:[.01],drawEdgeIndexes:[!1],edgeIndexHeight:[.06],edgeIndexColour:[\\"ff00ff\\"],drawFaceIndexes:[!1],faceIndexHeight:[.06],faceIndexColour:[\\"#0000ff\\"]};let se={};se.faceMaterial=C,e.HS.updateListInputs(se),se={...te,...se};const ne=[{result:e.HS.executeBasedOnType(se,!1,(e=>t.draw.optionsOcctShape(e))),transformers:[]}];let re={};re.center=Z,re.direction=X,e.HS.updateListInputs(re),re={radius:[3],height:[1.9],center:[[0,0,0]],direction:[[0,1,0]],...re};const ae=[{result:await e.HS.executeBasedOnTypeAsync(re,!1,(e=>t.occt.shapes.solid.createCylinder(e))),transformers:[]}];let oe={};oe.y=$,e.HS.updateListInputs(oe),oe={x:[0],y:[12],z:[0],...oe};const ie=[{result:e.HS.executeBasedOnType(oe,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let ce={};ce.first=D,e.HS.updateListInputs(ce),ce={first:[1],second:[3],operation:[\\"multiply\\"],...ce};const pe=[{result:e.HS.executeBasedOnType(ce,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let ue={};ue.first=V,ue.second=O,e.HS.updateListInputs(ue),ue={first:[1],second:[.4],operation:[\\"add\\"],...ue};const le=[{result:e.HS.executeBasedOnType(ue,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let de={};de.first=V,de.second=O,e.HS.updateListInputs(de),de={first:[1],second:[.4],operation:[\\"subtract\\"],...de};const me=[{result:e.HS.executeBasedOnType(de,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let ye={};ye.first=ee,e.HS.updateListInputs(ye),ye={first:[1],second:[-.2],operation:[\\"multiply\\"],...ye};const Se=[{result:e.HS.executeBasedOnType(ye,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let He={};He.second=D,e.HS.updateListInputs(He),He={first:[360],second:[1],operation:[\\"divide\\"],...He};const fe=[{result:e.HS.executeBasedOnType(He,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}],he={shape:[void 0],radius:[.3],radiusList:[void 0],indexes:[void 0]};let xe={};xe.shape=ae,e.HS.updateListInputs(xe),xe={...he,...xe};const ve=[{result:await e.HS.executeBasedOnTypeAsync(xe,!1,(e=>t.occt.fillets.filletEdges(e))),transformers:[]}];let Oe={};Oe.start=L,Oe.end=ie,e.HS.updateListInputs(Oe),Oe={start:[[0,0,0]],end:[[0,1,0]],...Oe};const Ie=[{result:await e.HS.executeBasedOnTypeAsync(Oe,!1,(e=>t.occt.shapes.wire.createLineWire(e))),transformers:[]}];let Le={};Le.second=pe,e.HS.updateListInputs(Le),Le={first:[360],second:[1],operation:[\\"divide\\"],...Le};const Be=[{result:e.HS.executeBasedOnType(Le,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let we={};we.start=w,we.end=ie,e.HS.updateListInputs(we),we={start:[[0,0,0]],end:[[0,1,0]],...we};const Te=[{result:await e.HS.executeBasedOnTypeAsync(we,!1,(e=>t.occt.shapes.wire.createLineWire(e))),transformers:[]}];let ge={};ge.y=le,e.HS.updateListInputs(ge),ge={x:[0],y:[0],z:[.05],...ge};const Ae=[{result:e.HS.executeBasedOnType(ge,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let Ee={};Ee.y=me,Ee.z=Q,e.HS.updateListInputs(Ee),Ee={x:[0],y:[0],z:[-1],...Ee};const be=[{result:e.HS.executeBasedOnType(Ee,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let ze={};ze.y=me,ze.z=J,e.HS.updateListInputs(ze),ze={x:[0],y:[0],z:[0],...ze};const We=[{result:e.HS.executeBasedOnType(ze,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let Ce={};Ce.z=Se,e.HS.updateListInputs(Ce),Ce={x:[0],y:[0],z:[0],...Ce};const Pe=[{result:e.HS.executeBasedOnType(Ce,!1,(e=>t.vector.vectorXYZ(e))),transformers:[]}];let Xe={};Xe.step=fe,e.HS.updateListInputs(Xe),Xe={step:[.1],min:[0],max:[360],...Xe};const Ye=e.HS.executeBasedOnType(Xe,!1,(e=>t.vector.span(e))),Ze=[];for(let e=0;e<1;e++)Ze.push({type:\\"flat\\"});const Ne=[{result:Ye,transformers:Ze}];let ke={};ke.first=Se,e.HS.updateListInputs(ke),ke={first:[2],second:[-2],operation:[\\"multiply\\"],...ke};e.HS.executeBasedOnType(ke,!1,(e=>t.math.twoNrOperation(e)));let Me={};Me.listElements=ve,e.HS.updateListInputs(Me),Me={...Me};const Fe=[{result:[Me.listElements?Me.listElements:[]]}],De={shape:[void 0],axis:[[0,0,1]],angle:[0]};let Re={};Re.shape=Ie,Re.axis=o,Re.angle=Be,e.HS.updateListInputs(Re),Re={...De,...Re};const je=[{result:await e.HS.executeBasedOnTypeAsync(Re,!1,(e=>t.occt.transforms.rotate(e))),transformers:[]}];let qe={};qe.first=Be,e.HS.updateListInputs(qe),qe={first:[1],second:[.4],operation:[\\"multiply\\"],...qe};const Ve=[{result:e.HS.executeBasedOnType(qe,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let Ge={};Ge.first=Be,e.HS.updateListInputs(Ge),Ge={first:[1],second:[.6],operation:[\\"multiply\\"],...Ge};const Je=[{result:e.HS.executeBasedOnType(Ge,!1,(e=>t.math.twoNrOperation(e))),transformers:[]}];let Ke={};Ke.listElements=[Ae[0],j[0],be[0],We[0]],e.HS.updateListInputs(Ke),Ke={...Ke};const Qe=[{result:[Ke.listElements?Ke.listElements:[]]}];let Ue={};Ue.item=Ne,e.HS.updateListInputs(Ue),Ue={...Ue};const $e=[{result:Ue.item}],_e={shape:[void 0],nrOfDivisions:[11],removeStartPoint:[!1],removeEndPoint:[!1]};let et={};et.shape=je,et.nrOfDivisions=l,e.HS.updateListInputs(et),et={..._e,...et};const tt=[{result:await e.HS.executeBasedOnTypeAsync(et,!1,(e=>t.occt.shapes.wire.divideWireByEqualDistanceToPoints(e))),transformers:[]}],st={shape:[void 0],axis:[[0,0,1]],angle:[0]};let nt={};nt.shape=Te,nt.axis=o,nt.angle=[Ve[0],Je[0]],e.HS.updateListInputs(nt),nt={...st,...nt};const rt=[{result:await e.HS.executeBasedOnTypeAsync(nt,!1,(e=>t.occt.transforms.rotate(e))),transformers:[]}];let at={};at.number=Ve,e.HS.updateListInputs(at),at={number:[1],operation:[\\"negate\\"],...at};const ot=[{result:e.HS.executeBasedOnType(at,!1,(e=>t.math.oneNrOperation(e))),transformers:[]}],it={points:[void 0]};let ct={};ct.points=Qe,e.HS.updateListInputs(ct),ct={...it,...ct};const pt=[{result:await e.HS.executeBasedOnTypeAsync(ct,!1,(e=>t.occt.shapes.wire.createPolylineWire(e))),transformers:[]}];e.HS.drawNodeMeshes(pt,t);const ut={list:[void 0],pattern:[[!0,!0,!1]]};let lt={};lt.list=tt,lt.pattern=u,e.HS.updateListInputs(lt),lt={...ut,...lt};const dt=[{result:e.HS.executeBasedOnType(lt,!0,(e=>t.lists.getByPattern(e))),transformers:[]}];let mt={};mt.listElements=rt,e.HS.updateListInputs(mt),mt={...mt};const yt=[{result:[mt.listElements?mt.listElements:[]]}],St={shape:[void 0],origin:[[0,0,0]],direction:[[0,0,1]]};let Ht={};Ht.shape=pt,Ht.origin=We,Ht.direction=f,e.HS.updateListInputs(Ht),Ht={...St,...Ht};const ft=[{result:await e.HS.executeBasedOnTypeAsync(Ht,!1,(e=>t.occt.transforms.mirror(e))),transformers:[]}],ht={shape:[void 0]};let xt={};xt.shape=pt,e.HS.updateListInputs(xt),xt={...ht,...xt};const vt=await e.HS.executeBasedOnTypeAsync(xt,!1,(e=>t.occt.shapes.edge.getCornerPointsOfEdgesForShape(e))),Ot=[];for(let e=0;e<1;e++)Ot.push({type:\\"flat\\"});const It=[{result:vt,transformers:Ot}],Lt={list:[void 0],index:[0],clone:[!0]};let Bt={};Bt.list=yt,e.HS.updateListInputs(Bt),Bt={...Lt,...Bt};const wt=[{result:e.HS.executeBasedOnType(Bt,!1,(e=>t.lists.getItem(e))),transformers:[]}],Tt={shape:[void 0]};let gt={};gt.shape=ft,e.HS.updateListInputs(gt),gt={...Tt,...gt};const At=[{result:await e.HS.executeBasedOnTypeAsync(gt,!1,(e=>t.occt.shapes.edge.getCornerPointsOfEdgesForShape(e))),transformers:[]}],Et={shape:[void 0],nrOfDivisions:[11],removeStartPoint:[!1],removeEndPoint:[!1]};let bt={};bt.shape=wt,bt.nrOfDivisions=l,e.HS.updateListInputs(bt),bt={...Et,...bt};const zt=[{result:await e.HS.executeBasedOnTypeAsync(bt,!1,(e=>t.occt.shapes.wire.divideWireByEqualDistanceToPoints(e))),transformers:[]}],Wt={list:[void 0],index:[3],clone:[!0]};let Ct={};Ct.list=At,e.HS.updateListInputs(Ct),Ct={...Wt,...Ct};const Pt=[{result:e.HS.executeBasedOnType(Ct,!1,(e=>t.lists.removeItemAtIndex(e))),transformers:[]}],Xt={list:[void 0],pattern:[[!0,!0,!1]]};let Yt={};Yt.list=zt,Yt.pattern=c,e.HS.updateListInputs(Yt),Yt={...Xt,...Yt};const Zt=[{result:e.HS.executeBasedOnType(Yt,!1,(e=>t.lists.getByPattern(e))),transformers:[]}],Nt={list:[void 0],clone:[!0]};let kt={};kt.list=Pt,e.HS.updateListInputs(kt),kt={...Nt,...kt};const Mt=e.HS.executeBasedOnType(kt,!1,(e=>t.lists.reverse(e))),Ft=[];for(let e=0;e<1;e++)Ft.push({type:\\"flat\\"});const Dt=[{result:Mt,transformers:Ft}];let Rt={};Rt.listElements=[Zt[0],dt[0]],e.HS.updateListInputs(Rt),Rt={...Rt};const jt=[{result:[Rt.listElements?Rt.listElements:[]]}];let qt={};qt.listElements=[It[0],Dt[0]],e.HS.updateListInputs(qt),qt={...qt};const Vt=[{result:[qt.listElements?qt.listElements:[]]}],Gt={list:[void 0],clone:[!0]};let Jt={};Jt.list=jt,e.HS.updateListInputs(Jt),Jt={...Gt,...Jt};const Kt=e.HS.executeBasedOnType(Jt,!1,(e=>t.lists.flipLists(e))),Qt=[];for(let e=0;e<2;e++)Qt.push({type:\\"flat\\"});const Ut=[{result:Kt,transformers:Qt}],$t={points:[void 0]};let _t={};_t.points=Vt,e.HS.updateListInputs(_t),_t={...$t,..._t};const es=[{result:await e.HS.executeBasedOnTypeAsync(_t,!1,(e=>t.occt.shapes.wire.createPolylineWire(e))),transformers:[]}];let ts={};ts.listElements=Ut,e.HS.updateListInputs(ts),ts={...ts};const ss=[{result:[ts.listElements?ts.listElements:[]]}],ns={shape:[void 0],radius:[.3],radiusList:[void 0],indexes:[void 0]};let rs={};rs.shape=es,e.HS.updateListInputs(rs),rs={...ns,...rs};const as=[{result:await e.HS.executeBasedOnTypeAsync(rs,!1,(e=>t.occt.fillets.fillet2d(e))),transformers:[]}],os={points:[void 0]};let is={};is.points=ss,e.HS.updateListInputs(is),is={...os,...is};const cs=[{result:await e.HS.executeBasedOnTypeAsync(is,!1,(e=>t.occt.shapes.wire.createPolylineWire(e))),transformers:[]}],ps={shape:[void 0],angle:[360],direction:[[0,1,0]],copy:[!1]};let us={};us.shape=as,us.direction=x,e.HS.updateListInputs(us),us={...ps,...us};const ls=[{result:await e.HS.executeBasedOnTypeAsync(us,!1,(e=>t.occt.operations.revolve(e))),transformers:[]}],ds={shape:[void 0]};let ms={};ms.shape=as,e.HS.updateListInputs(ms),ms={...ds,...ms};const ys=[{result:await e.HS.executeBasedOnTypeAsync(ms,!1,(e=>t.occt.shapes.wire.startPointOnWire(e))),transformers:[]}],Ss={shape:[void 0]};let Hs={};Hs.shape=as,e.HS.updateListInputs(Hs),Hs={...Ss,...Hs};const fs=[{result:await e.HS.executeBasedOnTypeAsync(Hs,!1,(e=>t.occt.shapes.wire.endPointOnWire(e))),transformers:[]}],hs={shape:[void 0]};let xs={};xs.shape=as,e.HS.updateListInputs(xs),xs={...hs,...xs};const vs=[{result:await e.HS.executeBasedOnTypeAsync(xs,!1,(e=>t.occt.shapes.wire.closeOpenWire(e))),transformers:[]}],Os={shape:[void 0],angle:[360],direction:[[0,1,0]],copy:[!1]};let Is={};Is.shape=vs,Is.direction=x,e.HS.updateListInputs(Is),Is={...Os,...Is};const Ls=[{result:await e.HS.executeBasedOnTypeAsync(Is,!1,(e=>t.occt.operations.revolve(e))),transformers:[]}],Bs={shape:[void 0],radius:[1],radiusList:[void 0],indexes:[void 0],direction:[[0,1,0]]};let ws={};ws.shape=cs,ws.direction=g,e.HS.updateListInputs(ws),ws={...Bs,...ws};const Ts=[{result:await e.HS.executeBasedOnTypeAsync(ws,!1,(e=>t.occt.fillets.fillet3DWire(e))),transformers:[]}],gs={shape:[void 0],face:[void 0],distance:[-.2],tolerance:[.1]};let As={};As.shape=ls,e.HS.updateListInputs(As),As={...gs,...As};const Es=[{result:await e.HS.executeBasedOnTypeAsync(As,!1,(e=>t.occt.operations.offset(e))),transformers:[]}],bs={shape:[void 0],index:[0]};let zs={};zs.shape=ls,e.HS.updateListInputs(zs),zs={...bs,...zs};const Ws=[{result:await e.HS.executeBasedOnTypeAsync(zs,!1,(e=>t.occt.shapes.wire.getWire(e))),transformers:[]}];let Cs={};Cs.item=ys,e.HS.updateListInputs(Cs),Cs={...Cs};const Ps=[{result:Cs.item}];let Xs={};Xs.item=fs,e.HS.updateListInputs(Xs),Xs={...Xs};const Ys=[{result:Xs.item}];let Zs={};Zs.start=fs,Zs.end=ys,e.HS.updateListInputs(Zs),Zs={start:[[0,0,0]],end:[[0,1,0]],...Zs};const Ns=[{result:await e.HS.executeBasedOnTypeAsync(Zs,!1,(e=>t.occt.shapes.wire.createLineWire(e))),transformers:[]}];e.HS.drawNodeMeshes(Ns,t);const ks={shape:[void 0],angle:[360],direction:[[0,1,0]],copy:[!1]};let Ms={};Ms.shape=Ts,Ms.angle=ot,Ms.direction=o,e.HS.updateListInputs(Ms),Ms={...ks,...Ms};const Fs=[{result:await e.HS.executeBasedOnTypeAsync(Ms,!1,(e=>t.occt.operations.revolve(e))),transformers:[]}],Ds={shape:[void 0]};let Rs={};Rs.shape=Ls,e.HS.updateListInputs(Rs),Rs={...Ds,...Rs};const js=[{result:await e.HS.executeBasedOnTypeAsync(Rs,!1,(e=>t.occt.shapes.solid.fromClosedShell(e))),transformers:[]}],qs={shape:[void 0],index:[1]};let Vs={};Vs.shape=Ws,e.HS.updateListInputs(Vs),Vs={...qs,...Vs};const Gs=[{result:await e.HS.executeBasedOnTypeAsync(Vs,!1,(e=>t.occt.shapes.edge.getEdge(e))),transformers:[]}],Js={shape:[void 0],index:[0]};let Ks={};Ks.shape=Es,e.HS.updateListInputs(Ks),Ks={...Js,...Ks};const Qs=[{result:await e.HS.executeBasedOnTypeAsync(Ks,!1,(e=>t.occt.shapes.wire.getWire(e))),transformers:[]}],Us={shape:[void 0],translation:[[0,0,0]]};let $s={};$s.shape=Ns,$s.translation=E,e.HS.updateListInputs($s),$s={...Us,...$s};const _s=[{result:await e.HS.executeBasedOnTypeAsync($s,!1,(e=>t.occt.transforms.translate(e))),transformers:[]}],en={shape:[void 0],direction:[[0,1,0]]};let tn={};tn.shape=Fs,tn.direction=Pe,e.HS.updateListInputs(tn),tn={...en,...tn};const sn=[{result:await e.HS.executeBasedOnTypeAsync(tn,!1,(e=>t.occt.operations.extrude(e))),transformers:[]}];let nn={};nn.listElements=js,e.HS.updateListInputs(nn),nn={...nn};const rn=[{result:[nn.listElements?nn.listElements:[]]}],an={shape:[void 0],index:[1]};let on={};on.shape=Qs,e.HS.updateListInputs(on),on={...an,...on};const cn=[{result:await e.HS.executeBasedOnTypeAsync(on,!1,(e=>t.occt.shapes.edge.getEdge(e))),transformers:[]}];let pn={};pn.listElements=Gs,e.HS.updateListInputs(pn),pn={...pn};const un=[{result:[pn.listElements?pn.listElements:[]]}],ln={shape:[void 0]};let dn={};dn.shape=_s,e.HS.updateListInputs(dn),dn={...ln,...dn};const mn=[{result:await e.HS.executeBasedOnTypeAsync(dn,!1,(e=>t.occt.shapes.wire.startPointOnWire(e))),transformers:[]}],yn={shape:[void 0]};let Sn={};Sn.shape=_s,e.HS.updateListInputs(Sn),Sn={...yn,...Sn};const Hn=[{result:await e.HS.executeBasedOnTypeAsync(Sn,!1,(e=>t.occt.shapes.wire.endPointOnWire(e))),transformers:[]}],fn={shapes:[void 0]};let hn={};hn.shapes=un,e.HS.updateListInputs(hn),hn={...fn,...hn};const xn=[{result:await e.HS.executeBasedOnTypeAsync(hn,!1,(e=>t.occt.shapes.wire.combineEdgesAndWiresIntoAWire(e))),transformers:[]}];let vn={};vn.listElements=cn,e.HS.updateListInputs(vn),vn={...vn};const On=[{result:[vn.listElements?vn.listElements:[]]}],In={shape:[void 0],shapes:[void 0],keepEdges:[!1]};let Ln={};Ln.shape=sn,Ln.shapes=Fe,e.HS.updateListInputs(Ln),Ln={...In,...Ln};const Bn=[{result:await e.HS.executeBasedOnTypeAsync(Ln,!1,(e=>t.occt.booleans.difference(e))),transformers:[]}];let wn={};wn.item=Hn,e.HS.updateListInputs(wn),wn={...wn};const Tn=[{result:wn.item}];let gn={};gn.item=mn,e.HS.updateListInputs(gn),gn={...gn};const An=[{result:gn.item}],En={shape:[void 0],shapes:[void 0],keepEdges:[!1]};let bn={};bn.shape=Bn,bn.shapes=rn,e.HS.updateListInputs(bn),bn={...En,...bn};const zn=[{result:await e.HS.executeBasedOnTypeAsync(bn,!1,(e=>t.occt.booleans.difference(e))),transformers:[]}],Wn={shapes:[void 0]};let Cn={};Cn.shapes=On,e.HS.updateListInputs(Cn),Cn={...Wn,...Cn};const Pn=[{result:await e.HS.executeBasedOnTypeAsync(Cn,!1,(e=>t.occt.shapes.wire.combineEdgesAndWiresIntoAWire(e))),transformers:[]}];let Xn={};Xn.listElements=[Ps[0],Tn[0],An[0],Ys[0]],e.HS.updateListInputs(Xn),Xn={...Xn};const Yn=[{result:[Xn.listElements?Xn.listElements:[]]}],Zn={shape:[void 0],origin:[[0,0,0]],normal:[[0,0,1]]};let Nn={};Nn.shape=zn,Nn.normal=m,e.HS.updateListInputs(Nn),Nn={...Zn,...Nn};const kn=[{result:await e.HS.executeBasedOnTypeAsync(Nn,!1,(e=>t.occt.transforms.mirrorAlongNormal(e))),transformers:[]}];let Mn={};Mn.listElements=[xn[0],Pn[0]],e.HS.updateListInputs(Mn),Mn={...Mn};const Fn=[{result:[Mn.listElements?Mn.listElements:[]]}],Dn={points:[void 0]};let Rn={};Rn.points=Yn,e.HS.updateListInputs(Rn),Rn={...Dn,...Rn};const jn=[{result:await e.HS.executeBasedOnTypeAsync(Rn,!1,(e=>t.occt.shapes.wire.createPolylineWire(e))),transformers:[]}];let qn={};qn.listElements=[kn[0],zn[0]],e.HS.updateListInputs(qn),qn={...qn};const Vn=[{result:[qn.listElements?qn.listElements:[]]}],Gn={shapes:[void 0],makeSolid:[!1]};let Jn={};Jn.shapes=Fn,e.HS.updateListInputs(Jn),Jn={...Gn,...Jn};const Kn=[{result:await e.HS.executeBasedOnTypeAsync(Jn,!1,(e=>t.occt.operations.loft(e))),transformers:[]}],Qn={shape:[void 0],radius:[.5],radiusList:[void 0],indexes:[void 0]};let Un={};Un.shape=jn,e.HS.updateListInputs(Un),Un={...Qn,...Un};const $n=[{result:await e.HS.executeBasedOnTypeAsync(Un,!1,(e=>t.occt.fillets.fillet2d(e))),transformers:[]}],_n={shapes:[void 0]};let er={};er.shapes=Vn,e.HS.updateListInputs(er),er={..._n,...er};const tr=[{result:await e.HS.executeBasedOnTypeAsync(er,!1,(e=>t.occt.shapes.compound.makeCompound(e))),transformers:[]}],sr={shape:[void 0],origin:[[0,0,0]],direction:[[0,0,1]]};let nr={};nr.shape=Kn,nr.origin=We,nr.direction=f,e.HS.updateListInputs(nr),nr={...sr,...nr};const rr=[{result:await e.HS.executeBasedOnTypeAsync(nr,!1,(e=>t.occt.transforms.mirror(e))),transformers:[]}],ar={shape:[void 0],angle:[360],direction:[[0,1,0]],copy:[!1]};let or={};or.shape=$n,or.direction=x,e.HS.updateListInputs(or),or={...ar,...or};const ir=[{result:await e.HS.executeBasedOnTypeAsync(or,!1,(e=>t.occt.operations.revolve(e))),transformers:[]}];let cr={};cr.listElements=[ls[0],Es[0],Kn[0],rr[0]],e.HS.updateListInputs(cr),cr={...cr};const pr=[{result:[cr.listElements?cr.listElements:[]]}],ur={shape:[void 0],offset:[-.1]};let lr={};lr.shape=ir,e.HS.updateListInputs(lr),lr={...ur,...lr};const dr=[{result:await e.HS.executeBasedOnTypeAsync(lr,!1,(e=>t.occt.operations.makeThickSolidSimple(e))),transformers:[]}],mr={shape:[void 0],angle:[0],center:[[0,0,0]],axis:[[0,0,1]]};let yr={};yr.shape=tr,yr.angle=$e,yr.axis=k,e.HS.updateListInputs(yr),yr={...mr,...yr};const Sr=[{result:await e.HS.executeBasedOnTypeAsync(yr,!1,(e=>t.occt.transforms.rotateAroundCenter(e))),transformers:[]}],Hr={shapes:[void 0],tolerance:[1e-7]};let fr={};fr.shapes=pr,e.HS.updateListInputs(fr),fr={...Hr,...fr};const hr=[{result:await e.HS.executeBasedOnTypeAsync(fr,!1,(e=>t.occt.shapes.shell.sewFaces(e))),transformers:[]}],xr={entity:[void 0],options:[void 0],babylonMesh:[void 0]};let vr={};vr.entity=dr,vr.options=z,e.HS.updateListInputs(vr),vr={...xr,...vr};await e.HS.executeBasedOnTypeAsync(vr,!1,(e=>t.draw.drawAnyAsync(e)));let Or={};Or.listElements=Sr,e.HS.updateListInputs(Or),Or={...Or};const Ir=[{result:[Or.listElements?Or.listElements:[]]}],Lr={shapes:[void 0]};let Br={};Br.shapes=Ir,e.HS.updateListInputs(Br),Br={...Lr,...Br};const wr=[{result:await e.HS.executeBasedOnTypeAsync(Br,!1,(e=>t.occt.shapes.compound.makeCompound(e))),transformers:[]}];let Tr={};Tr.listElements=[hr[0],ve[0],wr[0]],e.HS.updateListInputs(Tr),Tr={...Tr};const gr=[{result:[Tr.listElements?Tr.listElements:[]]}],Ar={shapes:[void 0]};let Er={};Er.shapes=gr,e.HS.updateListInputs(Er),Er={...Ar,...Er};const br=[{result:await e.HS.executeBasedOnTypeAsync(Er,!1,(e=>t.occt.shapes.compound.makeCompound(e))),transformers:[]}],zr={entity:[void 0],options:[void 0],babylonMesh:[void 0]};let Wr={};Wr.entity=br,Wr.options=ne,e.HS.updateListInputs(Wr),Wr={...zr,...Wr};await e.HS.executeBasedOnTypeAsync(Wr,!1,(e=>t.draw.drawAnyAsync(e)))}(BitByBit,bitbybit,bitbybitRunnerResult,bitbybitRunnerInputs,Bit);\"}' };