nodi-modular 0.0.6 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.d.ts CHANGED
@@ -1,16 +1,39 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
3
  export function do_nothing_just_tell_wasm_bindgen_to_generate_types(): void;
4
+ export interface NodeConnectionInterop {
5
+ outputNodeId: string;
6
+ outputIndex: number;
7
+ inputNodeId: string;
8
+ inputIndex: number;
9
+ inputConnectionIndex: number | undefined;
10
+ }
11
+
4
12
  /**
5
- * Interop struct for transform
6
- * Represents a 4x4 matrix as a 16-element array
13
+ * Interop struct for evaluation results
7
14
  */
8
- export type TransformInterop = number[];
15
+ export interface EvaluationInterop {
16
+ /**
17
+ * Processed nodes in the latest evaluation
18
+ */
19
+ processedNodes: NodeId[];
20
+ /**
21
+ * Geometry identifiers in the latest evaluation
22
+ */
23
+ geometryIdentifiers: GeometryIdentifier[];
24
+ }
9
25
 
10
- export interface CurveInteropHandle {
11
- count: number;
12
- vertices: number;
13
- transform: TransformInterop | undefined;
26
+ export type NodeSectionInterop = { type: "section"; content: NodeFolderInterop } | { type: "item"; content: NodeItemInterop };
27
+
28
+ export interface NodeItemInterop {
29
+ key: string;
30
+ name: string;
31
+ }
32
+
33
+ export type NodeFolderInterop = IndexMap<string, NodeSectionInterop>;
34
+
35
+ export interface NodeMapInterop {
36
+ folder: NodeFolderInterop;
14
37
  }
15
38
 
16
39
  export interface GeometrySpreadsheet {
@@ -20,10 +43,6 @@ export interface GeometrySpreadsheet {
20
43
  meshes: MeshInterop[];
21
44
  }
22
45
 
23
- export interface GroupInteropHandle {
24
- objects: GeometryInteropHandleProxy[];
25
- }
26
-
27
46
  /**
28
47
  * Interop struct for node
29
48
  */
@@ -89,23 +108,13 @@ export interface NodeMetaInterop {
89
108
  hasGeometry: boolean;
90
109
  }
91
110
 
92
- export type NodeSectionInterop = { type: "section"; content: NodeFolderInterop } | { type: "item"; content: NodeItemInterop };
93
-
94
- export interface NodeItemInterop {
95
- key: string;
96
- name: string;
97
- }
98
-
99
- export type NodeFolderInterop = IndexMap<string, NodeSectionInterop>;
100
-
101
- export interface NodeMapInterop {
102
- folder: NodeFolderInterop;
103
- }
111
+ /**
112
+ * Interop struct for transform
113
+ * Represents a 4x4 matrix as a 16-element array
114
+ */
115
+ export type TransformInterop = number[];
104
116
 
105
- export interface IndicesInteropHandle {
106
- count: number;
107
- indices: number;
108
- }
117
+ export type GeometryInteropHandleProxy = { variant: "Mesh"; data: MeshInteropHandle } | { variant: "Curve"; data: CurveInteropHandle } | { variant: "Group"; data: GroupInteropHandle };
109
118
 
110
119
  /**
111
120
  * Geometry identifier
@@ -129,24 +138,15 @@ export interface GeometryIdentifier {
129
138
  transform: TransformInterop;
130
139
  }
131
140
 
132
- export interface NodeCreationSetting {
133
- id: NodeId;
134
- variant: string;
135
- name?: string;
136
- label?: string;
137
- inputs?: number;
138
- outputs?: number;
139
- properties: NodePropertyInterop[];
140
- enabled?: boolean;
141
- visible?: boolean;
141
+ export interface IOInterop {
142
+ id: string;
143
+ name: string;
144
+ accessType: string;
145
+ connections: string[];
142
146
  }
143
147
 
144
- export interface MeshInteropHandle {
145
- count: number;
146
- vertices: number;
147
- normals: number;
148
- indices: IndicesInteropHandle | undefined;
149
- transform: TransformInterop | undefined;
148
+ export interface GroupInteropHandle {
149
+ objects: GeometryInteropHandleProxy[];
150
150
  }
151
151
 
152
152
  /**
@@ -201,14 +201,6 @@ export interface AdaptiveTessellationOptions {
201
201
  maxDepth: number;
202
202
  }
203
203
 
204
- export interface DataTreeInterop {
205
- branches: IndexMap<string, string[]>;
206
- }
207
-
208
- export interface DataTreeFormatInterop {
209
- outputs: IndexMap<string, string>;
210
- }
211
-
212
204
  export type GeometryInteropVec = GeometryInterop[];
213
205
 
214
206
  export type NodeConnectionInteropVec = NodeConnectionInterop[];
@@ -219,29 +211,42 @@ export type NodeInteropVec = NodeInterop[];
219
211
 
220
212
  export type EdgeInteropVec = EdgeInterop[];
221
213
 
222
- export interface IOInterop {
223
- id: string;
224
- name: string;
225
- accessType: string;
226
- connections: string[];
214
+ export interface NodeCreationSetting {
215
+ id: NodeId;
216
+ variant: string;
217
+ name?: string;
218
+ label?: string;
219
+ inputs?: number;
220
+ outputs?: number;
221
+ properties: NodePropertyInterop[];
222
+ enabled?: boolean;
223
+ visible?: boolean;
227
224
  }
228
225
 
229
- export type GeometryInteropHandleProxy = { variant: "Mesh"; data: MeshInteropHandle } | { variant: "Curve"; data: CurveInteropHandle } | { variant: "Group"; data: GroupInteropHandle };
226
+ export interface IndicesInteropHandle {
227
+ count: number;
228
+ indices: number;
229
+ }
230
+
231
+ export interface DataTreeInterop {
232
+ branches: IndexMap<string, string[]>;
233
+ }
234
+
235
+ export interface DataTreeFormatInterop {
236
+ outputs: IndexMap<string, string>;
237
+ }
230
238
 
231
239
  /**
232
- * Interop struct for evaluation results
240
+ * Vector display handle for wasm interop
241
+ * stride = 6 (3 for point, 3 for vector)
233
242
  */
234
- export interface EvaluationInterop {
235
- /**
236
- * Processed nodes in the latest evaluation
237
- */
238
- processedNodes: NodeId[];
239
- /**
240
- * Geometry identifiers in the latest evaluation
241
- */
242
- geometryIdentifiers: GeometryIdentifier[];
243
+ export interface VectorDisplayHandle {
244
+ count: number;
245
+ vertices: number;
243
246
  }
244
247
 
248
+ export type DisplayProxyHandle = { variant: "Vector"; data: VectorDisplayHandle };
249
+
245
250
 
246
251
  /// Manually added types due to limitations in the `wasm-bindgen` & `tsify` crates.
247
252
  export type ID<T = any> = string;
@@ -271,14 +276,6 @@ export type Vector4<T = number> = SVector<T, 4>;
271
276
  export type Transform3<T = number> = FixedLengthArray<T, 16>;
272
277
 
273
278
 
274
- export interface NodeConnectionInterop {
275
- outputNodeId: string;
276
- outputIndex: number;
277
- inputNodeId: string;
278
- inputIndex: number;
279
- inputConnectionIndex: number | undefined;
280
- }
281
-
282
279
  export interface EdgeInterop {
283
280
  source: EdgeUnitInterop<OutputId>;
284
281
  destination: EdgeUnitInterop<InputId>;
@@ -291,13 +288,21 @@ export interface EdgeUnitInterop<IO> {
291
288
  }
292
289
 
293
290
  /**
294
- * Defines the dynamics of an IO parameter.
291
+ * Curve interop handle for wasm interop
292
+ * stride = 3 (x, y, z)
295
293
  */
296
- export interface IOVariables {
297
- minCount: number;
298
- maxCount: number;
299
- defaultCount: number;
300
- offset: number;
294
+ export interface CurveInteropHandle {
295
+ count: number;
296
+ vertices: number;
297
+ transform: TransformInterop | undefined;
298
+ }
299
+
300
+ export interface MeshInteropHandle {
301
+ count: number;
302
+ vertices: number;
303
+ normals: number;
304
+ indices: IndicesInteropHandle | undefined;
305
+ transform: TransformInterop | undefined;
301
306
  }
302
307
 
303
308
  export interface NodePropertyCategoryValue {
@@ -314,6 +319,16 @@ export interface NodePropertyRangeValue {
314
319
 
315
320
  export type NodePropertyValue = { type: "Number"; content: number } | { type: "Range"; content: NodePropertyRangeValue } | { type: "Range2d"; content: [NodePropertyRangeValue, NodePropertyRangeValue] } | { type: "String"; content: string } | { type: "Bool"; content: boolean } | { type: "NumberVector"; content: number[] } | { type: "Category"; content: NodePropertyCategoryValue } | { type: "Vector2d"; content: [number, number] } | { type: "Vector3d"; content: [number, number, number] } | { type: "Point2d"; content: [number, number] } | { type: "Point3d"; content: [number, number, number] } | { type: "Points2d"; content: [number, number][] } | { type: "Buffer"; content: number[] };
316
321
 
322
+ /**
323
+ * Defines the dynamics of an IO parameter.
324
+ */
325
+ export interface IOVariables {
326
+ minCount: number;
327
+ maxCount: number;
328
+ defaultCount: number;
329
+ offset: number;
330
+ }
331
+
317
332
  /**
318
333
  * Graph structure
319
334
  */
@@ -324,26 +339,6 @@ export interface Graph<T, U> {
324
339
  nodes: IndexMap<NodeId, Node<T, U>>;
325
340
  }
326
341
 
327
- export interface Prune<T, U> {
328
- connectedComponents: SubGraph<T, U>[];
329
- bypass: Connection[] | undefined;
330
- }
331
-
332
- export interface SubGraphNode {
333
- sources: NodeId[];
334
- destinations: NodeId[];
335
- }
336
-
337
- export interface SubGraph<T, U> {
338
- nodes: IndexMap<NodeId, SubGraphNode<T, U>>;
339
- }
340
-
341
- export interface IOManager<T, U> {
342
- parameters: IOParameter<T, U>[];
343
- }
344
-
345
- export type GraphMappingTypes = "None" | "Bezier" | "Linear" | "Sine";
346
-
347
342
  export interface Node<T> {
348
343
  id: NodeId;
349
344
  name: string;
@@ -370,98 +365,75 @@ export interface NodeParameter<T> {
370
365
  parameterIndex: number;
371
366
  }
372
367
 
373
- /**
374
- * Plane representation with origin, normal, x axis, and y axis
375
- */
376
- export interface Plane {
377
- /**
378
- * Origin coordinate of the plane
379
- */
380
- origin: Point3<number>;
381
- /**
382
- * Normal vector of the plane
383
- */
384
- normal: Vector3<number>;
385
- /**
386
- * X axis of the plane
387
- */
388
- xAxis: Vector3<number>;
389
- /**
390
- * Y axis of the plane
391
- */
392
- yAxis: Vector3<number>;
368
+ export interface IOManager<T, U> {
369
+ parameters: IOParameter<T, U>[];
393
370
  }
394
371
 
395
- /**
396
- * Geometry proxy for various geometry types
397
- */
398
- export type GeometryProxy = { variant: "Curve"; data: CurveProxy } | { variant: "Surface"; data: SurfaceProxy } | { variant: "Brep"; data: Brep } | { variant: "Mesh"; data: Mesh } | { variant: "BBox"; data: OrientedBox } | { variant: "Group"; data: Group };
372
+ export interface Prune<T, U> {
373
+ connectedComponents: SubGraph<T, U>[];
374
+ bypass: Connection[] | undefined;
375
+ }
399
376
 
377
+ export interface SubGraphNode {
378
+ sources: NodeId[];
379
+ destinations: NodeId[];
380
+ }
400
381
 
401
- export type BoundingBox3D = {
402
- min: Vector3;
403
- max: Vector3;
382
+ export interface SubGraph<T, U> {
383
+ nodes: IndexMap<NodeId, SubGraphNode<T, U>>;
384
+ }
385
+
386
+ export type GraphMappingTypes = "None" | "Bezier" | "Linear" | "Sine";
387
+
388
+
389
+ export type Triangle3D = {
390
+ a: Point3;
391
+ b: Point3;
392
+ c: Point3;
404
393
  };
405
394
 
406
395
  /**
407
- * Mesh representation with vertices, normals, uv, and index
396
+ * A circular surface
408
397
  */
409
- export interface Mesh {
410
- /**
411
- * Vertices of the mesh
412
- */
413
- vertices: Point3<number>[];
414
- /**
415
- * Normals of the mesh
416
- */
417
- normals: Vector3<number>[] | undefined;
398
+ export interface CircularSurface {
418
399
  /**
419
- * UV coordinates of the mesh
400
+ * The base plane of the circle
420
401
  */
421
- uv: Vector2<number>[] | undefined;
402
+ plane: Plane;
422
403
  /**
423
- * Index of the mesh
404
+ * The radius of the circle
424
405
  */
425
- index: [number, number, number][];
406
+ radius: number;
426
407
  }
427
408
 
428
409
  /**
429
- * Proxy for various curve types
430
- */
431
- export type CurveProxy = { variant: "Line"; data: LineCurve3D } | { variant: "Arc"; data: ArcCurve } | { variant: "Circle"; data: CircleCurve } | { variant: "Ellipse"; data: EllipseCurve } | { variant: "Rectangle"; data: RectangleCurve } | { variant: "Polyline"; data: PolylineCurve3D } | { variant: "NURBS"; data: NurbsCurve };
432
-
433
- /**
434
- * An arc curve in 3D space
410
+ * Interop struct for point cloud data
435
411
  */
436
- export interface ArcCurve {
437
- /**
438
- * The base plane of the arc
439
- */
440
- plane: Plane;
441
- /**
442
- * The start angle of the arc
443
- */
444
- startAngle: number;
412
+ export interface PointCloudInterop {
445
413
  /**
446
- * The end angle of the arc
414
+ * Vertices of the point cloud
447
415
  */
448
- endAngle: number;
416
+ vertices: [number, number, number][];
449
417
  /**
450
- * The radius of the arc
418
+ * Transform matrix of the point cloud
451
419
  */
452
- radius: number;
420
+ transform: Transform3<number>;
453
421
  }
454
422
 
423
+ /**
424
+ * A surface defined by three points
425
+ */
426
+ export type TriangleSurface = Triangle3D;
455
427
 
456
- export type LineCurve3D = {
457
- a: Point3;
458
- b: Point3;
459
- };
428
+ /**
429
+ * Proxy for various surface types
430
+ */
431
+ export type SurfaceProxy = { variant: "Circular"; data: CircularSurface } | { variant: "Triangle"; data: TriangleSurface } | { variant: "Plane"; data: PlaneSurface } | { variant: "NURBS"; data: NurbsSurface } | { variant: "Trimmed"; data: TrimmedSurface };
460
432
 
461
- export interface Domain {
462
- min: number;
463
- max: number;
464
- }
433
+ /**
434
+ * Proxy for various curve types
435
+ */
436
+ export type CurveProxy = { variant: "Line"; data: LineCurve3D } | { variant: "Arc"; data: ArcCurve } | { variant: "Circle"; data: CircleCurve } | { variant: "Ellipse"; data: EllipseCurve } | { variant: "Rectangle"; data: RectangleCurve } | { variant: "Polyline"; data: PolylineCurve3D } | { variant: "NURBS"; data: NurbsCurve };
465
437
 
466
438
  /**
467
439
  * A surface defined by a plane and two domains in x and y directions
@@ -482,26 +454,48 @@ export interface PlaneSurface {
482
454
  }
483
455
 
484
456
 
485
- export type NurbsCurve3D<T = number> = {
486
- control_points: Point4<T>[];
487
- knots: T[];
488
- degree: T;
457
+ export type NurbsSurface3D<T = number> = {
458
+ control_points: Point4<T>[][];
459
+ u_knots: T[];
460
+ v_knots: T[];
461
+ u_degree: T;
462
+ v_degree: T;
489
463
  };
490
464
 
491
465
  /**
492
- * Interop struct for point cloud data
466
+ * Plane representation with origin, normal, x axis, and y axis
493
467
  */
494
- export interface PointCloudInterop {
468
+ export interface Plane {
495
469
  /**
496
- * Vertices of the point cloud
470
+ * Origin coordinate of the plane
497
471
  */
498
- vertices: [number, number, number][];
472
+ origin: Point3<number>;
499
473
  /**
500
- * Transform matrix of the point cloud
474
+ * Normal vector of the plane
501
475
  */
502
- transform: Transform3<number>;
476
+ normal: Vector3<number>;
477
+ /**
478
+ * X axis of the plane
479
+ */
480
+ xAxis: Vector3<number>;
481
+ /**
482
+ * Y axis of the plane
483
+ */
484
+ yAxis: Vector3<number>;
503
485
  }
504
486
 
487
+ /**
488
+ * A NURBS surface
489
+ */
490
+ export type NurbsSurface = NurbsSurface3D<number>;
491
+
492
+
493
+ export type NurbsCurve3D<T = number> = {
494
+ control_points: Point4<T>[];
495
+ knots: T[];
496
+ degree: T;
497
+ };
498
+
505
499
  /**
506
500
  * Interop struct for mesh data
507
501
  */
@@ -529,33 +523,44 @@ export interface MeshInterop {
529
523
  }
530
524
 
531
525
  /**
532
- * Proxy for various surface types
533
- */
534
- export type SurfaceProxy = { variant: "Circular"; data: CircularSurface } | { variant: "Triangle"; data: TriangleSurface } | { variant: "Plane"; data: PlaneSurface } | { variant: "NURBS"; data: NurbsSurface } | { variant: "Trimmed"; data: TrimmedSurface<SurfaceProxy, CurveProxy> };
535
-
536
- export type NurbsCurve = NurbsCurve3D<number>;
537
-
538
- /**
539
- * Interop struct for curve data
526
+ * A rectangle curve in 3D space
540
527
  */
541
- export interface CurveInterop {
528
+ export interface RectangleCurve {
542
529
  /**
543
- * Vertices of the curve
530
+ * The base plane of the rectangle
544
531
  */
545
- vertices: [number, number, number][];
532
+ plane: Plane;
546
533
  /**
547
- * Transform matrix of the curve
534
+ * The domain of the rectangle in the plane x axis
548
535
  */
549
- transform: Transform3<number> | undefined;
536
+ x: Domain;
537
+ /**
538
+ * The domain of the rectangle in the plane y axis
539
+ */
540
+ y: Domain;
550
541
  }
551
542
 
543
+ export type NurbsCurve = NurbsCurve3D<number>;
552
544
 
553
- export type Triangle3D = {
554
- a: Point3;
555
- b: Point3;
556
- c: Point3;
545
+
546
+ export type PolylineCurve2D = {
547
+ points: Point2[];
548
+ };
549
+ export type PolylineCurve3D = {
550
+ points: Point3[];
551
+ };
552
+
553
+
554
+ export type BoundingBox3D = {
555
+ min: Vector3;
556
+ max: Vector3;
557
557
  };
558
558
 
559
+ export interface Domain {
560
+ min: number;
561
+ max: number;
562
+ }
563
+
559
564
  /**
560
565
  * A ellipse curve in 3D space
561
566
  */
@@ -575,37 +580,40 @@ export interface EllipseCurve {
575
580
  }
576
581
 
577
582
  /**
578
- * An oriented box in 3D space
583
+ * A circle curve in 3D space
579
584
  */
580
- export interface OrientedBox {
585
+ export interface CircleCurve {
581
586
  /**
582
- * The plane that the box is aligned to
587
+ * The base plane of the circle
583
588
  */
584
589
  plane: Plane;
585
590
  /**
586
- * The bounding box in the local coordinate system
591
+ * The radius of the circle
587
592
  */
588
- bounds: BoundingBox3D;
593
+ radius: number;
589
594
  }
590
595
 
591
-
592
- export type PolylineCurve3D = {
593
- points: Point3[];
594
- };
595
-
596
596
  /**
597
- * A surface defined by three points
597
+ * An arc curve in 3D space
598
598
  */
599
- export type TriangleSurface = Triangle3D;
600
-
601
-
602
- export type NurbsSurface3D<T = number> = {
603
- control_points: Point4<T>[][];
604
- u_knots: T[];
605
- v_knots: T[];
606
- u_degree: T;
607
- v_degree: T;
608
- };
599
+ export interface ArcCurve {
600
+ /**
601
+ * The base plane of the arc
602
+ */
603
+ plane: Plane;
604
+ /**
605
+ * The start angle of the arc
606
+ */
607
+ startAngle: number;
608
+ /**
609
+ * The end angle of the arc
610
+ */
611
+ endAngle: number;
612
+ /**
613
+ * The radius of the arc
614
+ */
615
+ radius: number;
616
+ }
609
617
 
610
618
  /**
611
619
  * Interop proxy for various geometry types
@@ -613,54 +621,64 @@ export type NurbsSurface3D<T = number> = {
613
621
  export type GeometryInterop = { variant: "Mesh"; data: MeshInterop } | { variant: "Curve"; data: CurveInterop } | { variant: "Point"; data: PointCloudInterop } | { variant: "Plane"; data: Plane } | { variant: "Group"; data: GeometryInterop[] };
614
622
 
615
623
  /**
616
- * A NURBS surface
624
+ * Geometry proxy for various geometry types
617
625
  */
618
- export type NurbsSurface = NurbsSurface3D<number>;
626
+ export type GeometryProxy = { variant: "Curve"; data: CurveProxy } | { variant: "Surface"; data: SurfaceProxy } | { variant: "Brep"; data: Brep } | { variant: "Mesh"; data: Mesh } | { variant: "BBox"; data: OrientedBox } | { variant: "Group"; data: Group };
627
+
628
+
629
+ export type LineCurve3D = {
630
+ a: Point3;
631
+ b: Point3;
632
+ };
619
633
 
620
634
  /**
621
- * A circular surface
635
+ * Interop struct for curve data
622
636
  */
623
- export interface CircularSurface {
637
+ export interface CurveInterop {
624
638
  /**
625
- * The base plane of the circle
639
+ * Vertices of the curve
626
640
  */
627
- plane: Plane;
641
+ vertices: [number, number, number][];
628
642
  /**
629
- * The radius of the circle
643
+ * Transform matrix of the curve
630
644
  */
631
- radius: number;
645
+ transform: Transform3<number> | undefined;
632
646
  }
633
647
 
634
648
  /**
635
- * A rectangle curve in 3D space
649
+ * An oriented box in 3D space
636
650
  */
637
- export interface RectangleCurve {
651
+ export interface OrientedBox {
638
652
  /**
639
- * The base plane of the rectangle
653
+ * The plane that the box is aligned to
640
654
  */
641
655
  plane: Plane;
642
656
  /**
643
- * The domain of the rectangle in the plane x axis
644
- */
645
- x: Domain;
646
- /**
647
- * The domain of the rectangle in the plane y axis
657
+ * The bounding box in the local coordinate system
648
658
  */
649
- y: Domain;
659
+ bounds: BoundingBox3D;
650
660
  }
651
661
 
652
662
  /**
653
- * A circle curve in 3D space
663
+ * Mesh representation with vertices, normals, uv, and index
654
664
  */
655
- export interface CircleCurve {
665
+ export interface Mesh {
656
666
  /**
657
- * The base plane of the circle
667
+ * Vertices of the mesh
658
668
  */
659
- plane: Plane;
669
+ vertices: Point3<number>[];
660
670
  /**
661
- * The radius of the circle
671
+ * Normals of the mesh
662
672
  */
663
- radius: number;
673
+ normals: Vector3<number>[] | undefined;
674
+ /**
675
+ * UV coordinates of the mesh
676
+ */
677
+ uv: Vector2<number>[] | undefined;
678
+ /**
679
+ * Index of the mesh
680
+ */
681
+ index: [number, number, number][];
664
682
  }
665
683
 
666
684
  /**
@@ -692,7 +710,7 @@ export class Modular {
692
710
  /**
693
711
  * Get all nodes in the graph
694
712
  */
695
- getNodes(): (NodeInterop)[];
713
+ getNodes(): NodeInterop[];
696
714
  /**
697
715
  * Change a node property with node id and property
698
716
  */
@@ -708,7 +726,7 @@ export class Modular {
708
726
  /**
709
727
  * Update the tessellation options to modify the tessellation quality for geometry interoperability
710
728
  */
711
- updateTessellationOptions(options?: AdaptiveTessellationOptions): void;
729
+ updateTessellationOptions(options?: AdaptiveTessellationOptions | null): void;
712
730
  }
713
731
 
714
732
  export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
@@ -736,8 +754,8 @@ export interface InitOutput {
736
754
  readonly __externref_table_dealloc: (a: number) => void;
737
755
  readonly __externref_drop_slice: (a: number, b: number) => void;
738
756
  readonly __wbindgen_free: (a: number, b: number, c: number) => void;
739
- readonly closure730_externref_shim: (a: number, b: number, c: any) => void;
740
- readonly closure3354_externref_shim: (a: number, b: number, c: any, d: any) => void;
757
+ readonly closure765_externref_shim: (a: number, b: number, c: any) => void;
758
+ readonly closure3426_externref_shim: (a: number, b: number, c: any, d: any) => void;
741
759
  readonly __wbindgen_start: () => void;
742
760
  }
743
761
 
package/index.js CHANGED
@@ -220,11 +220,11 @@ export function do_nothing_just_tell_wasm_bindgen_to_generate_types() {
220
220
  }
221
221
 
222
222
  function __wbg_adapter_52(arg0, arg1, arg2) {
223
- wasm.closure730_externref_shim(arg0, arg1, arg2);
223
+ wasm.closure765_externref_shim(arg0, arg1, arg2);
224
224
  }
225
225
 
226
226
  function __wbg_adapter_142(arg0, arg1, arg2, arg3) {
227
- wasm.closure3354_externref_shim(arg0, arg1, arg2, arg3);
227
+ wasm.closure3426_externref_shim(arg0, arg1, arg2, arg3);
228
228
  }
229
229
 
230
230
  const ModularFinalization = (typeof FinalizationRegistry === 'undefined')
@@ -298,7 +298,7 @@ export class Modular {
298
298
  }
299
299
  /**
300
300
  * Get all nodes in the graph
301
- * @returns {(NodeInterop)[]}
301
+ * @returns {NodeInterop[]}
302
302
  */
303
303
  getNodes() {
304
304
  const ret = wasm.modular_getNodes(this.__wbg_ptr);
@@ -338,7 +338,7 @@ export class Modular {
338
338
  }
339
339
  /**
340
340
  * Update the tessellation options to modify the tessellation quality for geometry interoperability
341
- * @param {AdaptiveTessellationOptions | undefined} [options]
341
+ * @param {AdaptiveTessellationOptions | null} [options]
342
342
  */
343
343
  updateTessellationOptions(options) {
344
344
  wasm.modular_updateTessellationOptions(this.__wbg_ptr, isLikeNone(options) ? 0 : addToExternrefTable0(options));
@@ -386,62 +386,54 @@ function __wbg_get_imports() {
386
386
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
387
387
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
388
388
  };
389
- imports.wbg.__wbg_buffer_6e1d53ff183194fc = function(arg0) {
389
+ imports.wbg.__wbg_buffer_609cc3eee51ed158 = function(arg0) {
390
390
  const ret = arg0.buffer;
391
391
  return ret;
392
392
  };
393
- imports.wbg.__wbg_call_0411c0c3c424db9a = function() { return handleError(function (arg0, arg1, arg2) {
394
- const ret = arg0.call(arg1, arg2);
393
+ imports.wbg.__wbg_call_672a4d21634d4a24 = function() { return handleError(function (arg0, arg1) {
394
+ const ret = arg0.call(arg1);
395
395
  return ret;
396
396
  }, arguments) };
397
- imports.wbg.__wbg_call_3114932863209ca6 = function() { return handleError(function (arg0, arg1) {
398
- const ret = arg0.call(arg1);
397
+ imports.wbg.__wbg_call_7cccdd69e0791ae2 = function() { return handleError(function (arg0, arg1, arg2) {
398
+ const ret = arg0.call(arg1, arg2);
399
399
  return ret;
400
400
  }, arguments) };
401
401
  imports.wbg.__wbg_crypto_ed58b8e10a292839 = function(arg0) {
402
402
  const ret = arg0.crypto;
403
403
  return ret;
404
404
  };
405
- imports.wbg.__wbg_done_adfd3f40364def50 = function(arg0) {
405
+ imports.wbg.__wbg_done_769e5ede4b31c67b = function(arg0) {
406
406
  const ret = arg0.done;
407
407
  return ret;
408
408
  };
409
- imports.wbg.__wbg_entries_ce82e236f8300a53 = function(arg0) {
409
+ imports.wbg.__wbg_entries_3265d4158b33e5dc = function(arg0) {
410
410
  const ret = Object.entries(arg0);
411
411
  return ret;
412
412
  };
413
413
  imports.wbg.__wbg_getRandomValues_bcb4912f16000dc4 = function() { return handleError(function (arg0, arg1) {
414
414
  arg0.getRandomValues(arg1);
415
415
  }, arguments) };
416
- imports.wbg.__wbg_getTime_701326a7a826723f = function(arg0) {
416
+ imports.wbg.__wbg_getTime_46267b1c24877e30 = function(arg0) {
417
417
  const ret = arg0.getTime();
418
418
  return ret;
419
419
  };
420
- imports.wbg.__wbg_getTimezoneOffset_e564c972d25502d1 = function(arg0) {
420
+ imports.wbg.__wbg_getTimezoneOffset_6b5752021c499c47 = function(arg0) {
421
421
  const ret = arg0.getTimezoneOffset();
422
422
  return ret;
423
423
  };
424
- imports.wbg.__wbg_get_68aa371864aa301a = function(arg0, arg1) {
425
- const ret = arg0[arg1 >>> 0];
426
- return ret;
427
- };
428
- imports.wbg.__wbg_get_92a4780a3beb5fe9 = function() { return handleError(function (arg0, arg1) {
424
+ imports.wbg.__wbg_get_67b2ba62fc30de12 = function() { return handleError(function (arg0, arg1) {
429
425
  const ret = Reflect.get(arg0, arg1);
430
426
  return ret;
431
427
  }, arguments) };
428
+ imports.wbg.__wbg_get_b9b93047fe3cf45b = function(arg0, arg1) {
429
+ const ret = arg0[arg1 >>> 0];
430
+ return ret;
431
+ };
432
432
  imports.wbg.__wbg_getwithrefkey_1dc361bd10053bfe = function(arg0, arg1) {
433
433
  const ret = arg0[arg1];
434
434
  return ret;
435
435
  };
436
- imports.wbg.__wbg_globalThis_1e2ac1d6eee845b3 = function() { return handleError(function () {
437
- const ret = globalThis.globalThis;
438
- return ret;
439
- }, arguments) };
440
- imports.wbg.__wbg_global_f25a574ae080367c = function() { return handleError(function () {
441
- const ret = global.global;
442
- return ret;
443
- }, arguments) };
444
- imports.wbg.__wbg_instanceof_ArrayBuffer_435fcead703e2827 = function(arg0) {
436
+ imports.wbg.__wbg_instanceof_ArrayBuffer_e14585432e3737fc = function(arg0) {
445
437
  let result;
446
438
  try {
447
439
  result = arg0 instanceof ArrayBuffer;
@@ -451,7 +443,7 @@ function __wbg_get_imports() {
451
443
  const ret = result;
452
444
  return ret;
453
445
  };
454
- imports.wbg.__wbg_instanceof_Map_77fd223783fe0068 = function(arg0) {
446
+ imports.wbg.__wbg_instanceof_Map_f3469ce2244d2430 = function(arg0) {
455
447
  let result;
456
448
  try {
457
449
  result = arg0 instanceof Map;
@@ -461,7 +453,7 @@ function __wbg_get_imports() {
461
453
  const ret = result;
462
454
  return ret;
463
455
  };
464
- imports.wbg.__wbg_instanceof_Uint8Array_9b67296cab48238f = function(arg0) {
456
+ imports.wbg.__wbg_instanceof_Uint8Array_17156bcf118086a9 = function(arg0) {
465
457
  let result;
466
458
  try {
467
459
  result = arg0 instanceof Uint8Array;
@@ -471,23 +463,23 @@ function __wbg_get_imports() {
471
463
  const ret = result;
472
464
  return ret;
473
465
  };
474
- imports.wbg.__wbg_isArray_fcd559a3bcfde1e9 = function(arg0) {
466
+ imports.wbg.__wbg_isArray_a1eab7e0d067391b = function(arg0) {
475
467
  const ret = Array.isArray(arg0);
476
468
  return ret;
477
469
  };
478
- imports.wbg.__wbg_isSafeInteger_4de146aa53f6e470 = function(arg0) {
470
+ imports.wbg.__wbg_isSafeInteger_343e2beeeece1bb0 = function(arg0) {
479
471
  const ret = Number.isSafeInteger(arg0);
480
472
  return ret;
481
473
  };
482
- imports.wbg.__wbg_iterator_7a20c20ce22add0f = function() {
474
+ imports.wbg.__wbg_iterator_9a24c88df860dc65 = function() {
483
475
  const ret = Symbol.iterator;
484
476
  return ret;
485
477
  };
486
- imports.wbg.__wbg_length_2e63ba34c4121df5 = function(arg0) {
478
+ imports.wbg.__wbg_length_a446193dc22c12f8 = function(arg0) {
487
479
  const ret = arg0.length;
488
480
  return ret;
489
481
  };
490
- imports.wbg.__wbg_length_e74df4881604f1d9 = function(arg0) {
482
+ imports.wbg.__wbg_length_e2d2a49132c1b256 = function(arg0) {
491
483
  const ret = arg0.length;
492
484
  return ret;
493
485
  };
@@ -495,19 +487,11 @@ function __wbg_get_imports() {
495
487
  const ret = arg0.msCrypto;
496
488
  return ret;
497
489
  };
498
- imports.wbg.__wbg_new0_207938728f108bf6 = function() {
490
+ imports.wbg.__wbg_new0_f788a2397c7ca929 = function() {
499
491
  const ret = new Date();
500
492
  return ret;
501
493
  };
502
- imports.wbg.__wbg_new_076cac58bb698dd4 = function() {
503
- const ret = new Object();
504
- return ret;
505
- };
506
- imports.wbg.__wbg_new_0c28e72025e00594 = function() {
507
- const ret = new Array();
508
- return ret;
509
- };
510
- imports.wbg.__wbg_new_1e8ca58d170d6ad0 = function(arg0, arg1) {
494
+ imports.wbg.__wbg_new_23a2665fac83c611 = function(arg0, arg1) {
511
495
  try {
512
496
  var state0 = {a: arg0, b: arg1};
513
497
  var cb0 = (arg0, arg1) => {
@@ -525,47 +509,55 @@ function __wbg_get_imports() {
525
509
  state0.a = state0.b = 0;
526
510
  }
527
511
  };
528
- imports.wbg.__wbg_new_23362fa370a0a372 = function(arg0) {
529
- const ret = new Uint8Array(arg0);
512
+ imports.wbg.__wbg_new_31a97dac4f10fab7 = function(arg0) {
513
+ const ret = new Date(arg0);
530
514
  return ret;
531
515
  };
532
- imports.wbg.__wbg_new_2f2bde6bba4a5707 = function(arg0) {
533
- const ret = new Date(arg0);
516
+ imports.wbg.__wbg_new_405e22f390576ce2 = function() {
517
+ const ret = new Object();
534
518
  return ret;
535
519
  };
536
- imports.wbg.__wbg_new_3f616ed16821b4c5 = function() {
520
+ imports.wbg.__wbg_new_5e0be73521bc8c17 = function() {
537
521
  const ret = new Map();
538
522
  return ret;
539
523
  };
540
- imports.wbg.__wbg_newnoargs_19a249f4eceaaac3 = function(arg0, arg1) {
524
+ imports.wbg.__wbg_new_78feb108b6472713 = function() {
525
+ const ret = new Array();
526
+ return ret;
527
+ };
528
+ imports.wbg.__wbg_new_a12002a7f91c75be = function(arg0) {
529
+ const ret = new Uint8Array(arg0);
530
+ return ret;
531
+ };
532
+ imports.wbg.__wbg_newnoargs_105ed471475aaf50 = function(arg0, arg1) {
541
533
  const ret = new Function(getStringFromWasm0(arg0, arg1));
542
534
  return ret;
543
535
  };
544
- imports.wbg.__wbg_newwithbyteoffsetandlength_ee8def7000b7b2be = function(arg0, arg1, arg2) {
536
+ imports.wbg.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a = function(arg0, arg1, arg2) {
545
537
  const ret = new Uint8Array(arg0, arg1 >>> 0, arg2 >>> 0);
546
538
  return ret;
547
539
  };
548
- imports.wbg.__wbg_newwithlength_91de49dea5643c87 = function(arg0) {
540
+ imports.wbg.__wbg_newwithlength_a381634e90c276d4 = function(arg0) {
549
541
  const ret = new Uint8Array(arg0 >>> 0);
550
542
  return ret;
551
543
  };
552
- imports.wbg.__wbg_newwithyearmonthdayhrminsec_31d5cba1a2e85b57 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
544
+ imports.wbg.__wbg_newwithyearmonthdayhrminsec_72c204d952ef4426 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
553
545
  const ret = new Date(arg0 >>> 0, arg1, arg2, arg3, arg4, arg5);
554
546
  return ret;
555
547
  };
556
- imports.wbg.__wbg_next_c591766a7286b02a = function() { return handleError(function (arg0) {
557
- const ret = arg0.next();
558
- return ret;
559
- }, arguments) };
560
- imports.wbg.__wbg_next_f387ecc56a94ba00 = function(arg0) {
548
+ imports.wbg.__wbg_next_25feadfc0913fea9 = function(arg0) {
561
549
  const ret = arg0.next;
562
550
  return ret;
563
551
  };
552
+ imports.wbg.__wbg_next_6574e1a8a62d1055 = function() { return handleError(function (arg0) {
553
+ const ret = arg0.next();
554
+ return ret;
555
+ }, arguments) };
564
556
  imports.wbg.__wbg_node_02999533c4ea02e3 = function(arg0) {
565
557
  const ret = arg0.node;
566
558
  return ret;
567
559
  };
568
- imports.wbg.__wbg_now_5b0cbad8de553ec4 = function(arg0) {
560
+ imports.wbg.__wbg_now_d18023d54d4e5500 = function(arg0) {
569
561
  const ret = arg0.now();
570
562
  return ret;
571
563
  };
@@ -573,13 +565,13 @@ function __wbg_get_imports() {
573
565
  const ret = arg0.process;
574
566
  return ret;
575
567
  };
576
- imports.wbg.__wbg_queueMicrotask_3d422e1ba49c2500 = function(arg0) {
568
+ imports.wbg.__wbg_queueMicrotask_97d92b4fcc8a61c5 = function(arg0) {
569
+ queueMicrotask(arg0);
570
+ };
571
+ imports.wbg.__wbg_queueMicrotask_d3219def82552485 = function(arg0) {
577
572
  const ret = arg0.queueMicrotask;
578
573
  return ret;
579
574
  };
580
- imports.wbg.__wbg_queueMicrotask_f301663ccadbb7d0 = function(arg0) {
581
- queueMicrotask(arg0);
582
- };
583
575
  imports.wbg.__wbg_randomFillSync_ab2cfe79ebbf2740 = function() { return handleError(function (arg0, arg1) {
584
576
  arg0.randomFillSync(arg1);
585
577
  }, arguments) };
@@ -587,36 +579,48 @@ function __wbg_get_imports() {
587
579
  const ret = module.require;
588
580
  return ret;
589
581
  }, arguments) };
590
- imports.wbg.__wbg_resolve_6a311e8bb26423ab = function(arg0) {
582
+ imports.wbg.__wbg_resolve_4851785c9c5f573d = function(arg0) {
591
583
  const ret = Promise.resolve(arg0);
592
584
  return ret;
593
585
  };
594
- imports.wbg.__wbg_self_ac4343e4047b83cc = function() { return handleError(function () {
595
- const ret = self.self;
596
- return ret;
597
- }, arguments) };
598
- imports.wbg.__wbg_set_1d975b42d95fd6c6 = function(arg0, arg1, arg2) {
599
- const ret = arg0.set(arg1, arg2);
600
- return ret;
586
+ imports.wbg.__wbg_set_37837023f3d740e8 = function(arg0, arg1, arg2) {
587
+ arg0[arg1 >>> 0] = arg2;
601
588
  };
602
589
  imports.wbg.__wbg_set_3f1d0b984ed272ed = function(arg0, arg1, arg2) {
603
590
  arg0[arg1] = arg2;
604
591
  };
605
- imports.wbg.__wbg_set_7b70226104a82921 = function(arg0, arg1, arg2) {
592
+ imports.wbg.__wbg_set_65595bdd868b3009 = function(arg0, arg1, arg2) {
606
593
  arg0.set(arg1, arg2 >>> 0);
607
594
  };
608
- imports.wbg.__wbg_set_a1fb6291729caffb = function(arg0, arg1, arg2) {
609
- arg0[arg1 >>> 0] = arg2;
595
+ imports.wbg.__wbg_set_8fc6bf8a5b1071d1 = function(arg0, arg1, arg2) {
596
+ const ret = arg0.set(arg1, arg2);
597
+ return ret;
610
598
  };
611
- imports.wbg.__wbg_subarray_b4e9772c34a7f5ba = function(arg0, arg1, arg2) {
599
+ imports.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07 = function() {
600
+ const ret = typeof global === 'undefined' ? null : global;
601
+ return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
602
+ };
603
+ imports.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0 = function() {
604
+ const ret = typeof globalThis === 'undefined' ? null : globalThis;
605
+ return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
606
+ };
607
+ imports.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819 = function() {
608
+ const ret = typeof self === 'undefined' ? null : self;
609
+ return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
610
+ };
611
+ imports.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40 = function() {
612
+ const ret = typeof window === 'undefined' ? null : window;
613
+ return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
614
+ };
615
+ imports.wbg.__wbg_subarray_aa9065fa9dc5df96 = function(arg0, arg1, arg2) {
612
616
  const ret = arg0.subarray(arg1 >>> 0, arg2 >>> 0);
613
617
  return ret;
614
618
  };
615
- imports.wbg.__wbg_then_5c6469c1e1da9e59 = function(arg0, arg1) {
619
+ imports.wbg.__wbg_then_44b73946d2fb3e7d = function(arg0, arg1) {
616
620
  const ret = arg0.then(arg1);
617
621
  return ret;
618
622
  };
619
- imports.wbg.__wbg_value_30db1d77772f3236 = function(arg0) {
623
+ imports.wbg.__wbg_value_cd1ffa7b1ab794f1 = function(arg0) {
620
624
  const ret = arg0.value;
621
625
  return ret;
622
626
  };
@@ -624,10 +628,6 @@ function __wbg_get_imports() {
624
628
  const ret = arg0.versions;
625
629
  return ret;
626
630
  };
627
- imports.wbg.__wbg_window_1a23defd102c72f4 = function() { return handleError(function () {
628
- const ret = window.window;
629
- return ret;
630
- }, arguments) };
631
631
  imports.wbg.__wbindgen_as_number = function(arg0) {
632
632
  const ret = +arg0;
633
633
  return ret;
@@ -660,8 +660,8 @@ function __wbg_get_imports() {
660
660
  const ret = false;
661
661
  return ret;
662
662
  };
663
- imports.wbg.__wbindgen_closure_wrapper3166 = function(arg0, arg1, arg2) {
664
- const ret = makeMutClosure(arg0, arg1, 731, __wbg_adapter_52);
663
+ imports.wbg.__wbindgen_closure_wrapper3236 = function(arg0, arg1, arg2) {
664
+ const ret = makeMutClosure(arg0, arg1, 766, __wbg_adapter_52);
665
665
  return ret;
666
666
  };
667
667
  imports.wbg.__wbindgen_debug_string = function(arg0, arg1) {
package/index_bg.wasm CHANGED
Binary file
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "Masatatsu Nakamura <masatatsu.nakamura@gmail.com"
6
6
  ],
7
7
  "description": "Modular is a module project designed to import node graphs created in Nodi in JSON format, enabling the extraction of geometric data generated based on the node graph structure.",
8
- "version": "0.0.6",
8
+ "version": "0.0.8",
9
9
  "license": "MIT",
10
10
  "repository": {
11
11
  "type": "git",