@bldrs-ai/conway 0.7.766 → 0.8.782

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/README.md +30 -31
  2. package/compiled/dependencies/conway-geom/Dist/ConwayGeomWasmNode.js +1 -1
  3. package/compiled/dependencies/conway-geom/Dist/ConwayGeomWasmWeb.js +1 -1
  4. package/compiled/dependencies/conway-geom/interface/conway_geometry.d.ts +19 -0
  5. package/compiled/dependencies/conway-geom/interface/conway_geometry.d.ts.map +1 -1
  6. package/compiled/dependencies/conway-geom/interface/conway_geometry.js +31 -0
  7. package/compiled/dependencies/conway-geom/interface/geometry_object.d.ts +4 -0
  8. package/compiled/dependencies/conway-geom/interface/geometry_object.d.ts.map +1 -1
  9. package/compiled/dependencies/conway-geom/interface/parameters/params_get_boolean_result.d.ts +1 -0
  10. package/compiled/dependencies/conway-geom/interface/parameters/params_get_boolean_result.d.ts.map +1 -1
  11. package/compiled/dependencies/conway-geom/interface/parse_buffer.d.ts +11 -0
  12. package/compiled/dependencies/conway-geom/interface/parse_buffer.d.ts.map +1 -0
  13. package/compiled/dependencies/conway-geom/interface/parse_buffer.js +1 -0
  14. package/compiled/src/AP214E3_2010/ap214_command_line_main.js +11 -13
  15. package/compiled/src/AP214E3_2010/ap214_geometry_extraction.js +0 -1
  16. package/compiled/src/AP214E3_2010/ap214_geometry_extraction.test.js +15 -13
  17. package/compiled/src/AP214E3_2010/ap214_step_model.d.ts.map +1 -1
  18. package/compiled/src/AP214E3_2010/ap214_step_model.test.js +12 -1
  19. package/compiled/src/AP214E3_2010/ap214_step_parser.d.ts.map +1 -1
  20. package/compiled/src/core/canonical_mesh.d.ts +1 -1
  21. package/compiled/src/core/canonical_mesh.d.ts.map +1 -1
  22. package/compiled/src/core/geometry_aggregator.test.js +7 -7
  23. package/compiled/src/core/packed_mesh.test.js +4 -4
  24. package/compiled/src/ifc/ifc_command_line_main.js +17 -16
  25. package/compiled/src/ifc/ifc_geometry_extraction.d.ts +6 -4
  26. package/compiled/src/ifc/ifc_geometry_extraction.d.ts.map +1 -1
  27. package/compiled/src/ifc/ifc_geometry_extraction.js +107 -102
  28. package/compiled/src/ifc/ifc_geometry_extraction.test.js +4 -4
  29. package/compiled/src/ifc/ifc_model_geometry.d.ts +4 -0
  30. package/compiled/src/ifc/ifc_model_geometry.d.ts.map +1 -1
  31. package/compiled/src/ifc/ifc_model_geometry.js +13 -0
  32. package/compiled/src/ifc/ifc_property_extraction.test.js +12 -1
  33. package/compiled/src/ifc/ifc_regression_main.js +5 -3
  34. package/compiled/src/ifc/ifc_scene_builder.test.js +11 -8
  35. package/compiled/src/ifc/ifc_step_model.d.ts +1 -0
  36. package/compiled/src/ifc/ifc_step_model.d.ts.map +1 -1
  37. package/compiled/src/ifc/ifc_step_model.js +1 -0
  38. package/compiled/src/ifc/ifc_step_model.test.js +12 -1
  39. package/compiled/src/ifc/ifc_step_parser.d.ts +1 -0
  40. package/compiled/src/ifc/ifc_step_parser.d.ts.map +1 -1
  41. package/compiled/src/ifc/ifc_step_parser.js +1 -0
  42. package/compiled/src/step/parsing/step_deserialization_functions.d.ts +1 -1
  43. package/compiled/src/step/parsing/step_deserialization_functions.d.ts.map +1 -1
  44. package/compiled/src/step/parsing/step_deserialization_functions.js +1 -1
  45. package/compiled/src/step/parsing/step_parser.d.ts +1 -1
  46. package/compiled/src/step/parsing/step_parser.d.ts.map +1 -1
  47. package/compiled/src/step/parsing/step_parser.js +3 -3
  48. package/compiled/src/step/parsing/step_vtable_builder.d.ts +4 -3
  49. package/compiled/src/step/parsing/step_vtable_builder.d.ts.map +1 -1
  50. package/compiled/src/step/parsing/step_vtable_builder.js +5 -4
  51. package/compiled/src/step/step_entity_base.d.ts +27 -2
  52. package/compiled/src/step/step_entity_base.d.ts.map +1 -1
  53. package/compiled/src/step/step_entity_base.js +77 -15
  54. package/compiled/src/step/step_entity_internal_reference.d.ts +1 -0
  55. package/compiled/src/step/step_entity_internal_reference.d.ts.map +1 -1
  56. package/compiled/src/step/step_external_mapping.test.js +12 -1
  57. package/compiled/src/step/step_model_base.d.ts.map +1 -1
  58. package/compiled/src/step/step_model_base.js +1 -0
  59. package/compiled/src/version/version.js +1 -1
  60. package/compiled/tsconfig.tsbuildinfo +1 -1
  61. package/package.json +6 -1
  62. package/compiled/src/examples/browser.d.ts +0 -3
  63. package/compiled/src/examples/browser.d.ts.map +0 -1
  64. package/compiled/src/examples/browser.js +0 -388
  65. package/compiled/src/examples/validator.d.ts +0 -8
  66. package/compiled/src/examples/validator.d.ts.map +0 -1
  67. package/compiled/src/examples/validator.js +0 -378
@@ -20,6 +20,7 @@ export default class IfcStepParser extends StepParser<EntityTypesIfc> {
20
20
  /**
21
21
  * Parse data to the model
22
22
  *
23
+ * @param wasmModule A conway-geom wasm module environnment for this.
23
24
  * @param input The parsing buffer, set to user data, to read.
24
25
  * @return {[ParseResult, IfcStepModel | undefined]} The parse result as well as the model,
25
26
  * if it can be extracted.
@@ -1 +1 @@
1
- {"version":3,"file":"ifc_step_parser.d.ts","sourceRoot":"","sources":["../../../src/ifc/ifc_step_parser.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,2BAA2B,CAAA;AACrD,OAAO,UAAU,EAAE,EAAC,WAAW,EAAC,MAAM,6BAA6B,CAAA;AACnE,OAAO,cAAc,MAAM,iCAAiC,CAAA;AAE5D,OAAO,YAAY,MAAM,kBAAkB,CAAA;AAE3C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,UAAU,CAAE,cAAc,CAAE;IACrE;;OAEG;;IAKH;;;;;OAKG;IACH,gBAAuB,QAAQ,gBAAsB;IAErD;;;;;;OAMG;IACI,gBAAgB,CAAE,KAAK,EAAE,aAAa,GAAI,CAAC,WAAW,EAAE,YAAY,GAAG,SAAS,CAAC;CAKzF"}
1
+ {"version":3,"file":"ifc_step_parser.d.ts","sourceRoot":"","sources":["../../../src/ifc/ifc_step_parser.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,2BAA2B,CAAA;AACrD,OAAO,UAAU,EAAE,EAAC,WAAW,EAAC,MAAM,6BAA6B,CAAA;AACnE,OAAO,cAAc,MAAM,iCAAiC,CAAA;AAE5D,OAAO,YAAY,MAAM,kBAAkB,CAAA;AAE3C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,UAAU,CAAE,cAAc,CAAE;IACrE;;OAEG;;IAKH;;;;;OAKG;IACH,gBAAuB,QAAQ,gBAAsB;IAErD;;;;;;;OAOG;IACI,gBAAgB,CACnB,KAAK,EAAE,aAAa,GAAI,CAAC,WAAW,EAAE,YAAY,GAAG,SAAS,CAAC;CAKpE"}
@@ -14,6 +14,7 @@ export default class IfcStepParser extends StepParser {
14
14
  /**
15
15
  * Parse data to the model
16
16
  *
17
+ * @param wasmModule A conway-geom wasm module environnment for this.
17
18
  * @param input The parsing buffer, set to user data, to read.
18
19
  * @return {[ParseResult, IfcStepModel | undefined]} The parse result as well as the model,
19
20
  * if it can be extracted.
@@ -89,7 +89,7 @@ export declare function stepExtractArrayBegin(buffer: Uint8Array, cursor: number
89
89
  * @param endCursor The last position accessible for this read in the buffer.
90
90
  * @return {number} Returns a negative number on termination/error
91
91
  * matching the values in IncermentalParseEndState, or the new cursor
92
- * if there is a value in .
92
+ * if there is a value in the token.
93
93
  */
94
94
  export declare function stepExtractArrayToken(buffer: Uint8Array, cursor: number, endCursor: number): number;
95
95
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"step_deserialization_functions.d.ts","sourceRoot":"","sources":["../../../../src/step/parsing/step_deserialization_functions.ts"],"names":[],"mappings":"AAgCA;;;;;;GAMG;AACH,wBAAgB,GAAG,CAAE,CAAC,EAAI,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,EAAE,YAAY,EAAE,CAAC,GAAI,CAAC,CAE9E;AAGD;;;;;GAKG;AACH,wBAAgB,OAAO,CAAE,CAAC,EAAI,SAAS,EAAE,CAAC,EAAE,GAAG,IAAI,GAAG,SAAS,GAAI,MAAM,CAExE;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAE,CAAC,EAAI,SAAS,EAAE,CAAC,EAAE,GAAG,IAAI,GAAG,SAAS,GAAI,MAAM,CAEvE;AAGD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAC/B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAUvC;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,MAAM,GAAG,SAAS,CAM1C;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAC9B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,OAAO,GAAG,IAAI,GAAG,SAAS,CAwBlD;AAGD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAC9B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,OAAO,GAAG,SAAS,CAgB3C;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CACrB,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAK,MAAM,CA2E/B;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACjC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,MAAM,CA0B9B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACjC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,MAAM,CA0C9B;AAED;;;;;;;;;GASG;AACH,wBAAiB,gBAAgB,CAC7B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,gBAAgB,CAAE,MAAM,CAAE,CAkGlD;AAGD;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACtC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,MAAM,GAAG,SAAS,CA4C1C;AAID;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAChC,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAK,MAAM,GAAG,SAAS,CAsC3C;AAED,QAAA,MAAM,eAAe,8JAAkC,CAAA;AAEvD,OAAO,EAAE,eAAe,EAAE,CAAA;AAE1B,QAAA,MAAM,iBAAiB,iGAAoC,CAAA;AAE3D,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAE5B,QAAA,MAAM,iBAAiB,4FAAiC,CAAA;AAExD,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
1
+ {"version":3,"file":"step_deserialization_functions.d.ts","sourceRoot":"","sources":["../../../../src/step/parsing/step_deserialization_functions.ts"],"names":[],"mappings":"AAiCA;;;;;;GAMG;AACH,wBAAgB,GAAG,CAAE,CAAC,EAAI,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,EAAE,YAAY,EAAE,CAAC,GAAI,CAAC,CAE9E;AAGD;;;;;GAKG;AACH,wBAAgB,OAAO,CAAE,CAAC,EAAI,SAAS,EAAE,CAAC,EAAE,GAAG,IAAI,GAAG,SAAS,GAAI,MAAM,CAExE;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAE,CAAC,EAAI,SAAS,EAAE,CAAC,EAAE,GAAG,IAAI,GAAG,SAAS,GAAI,MAAM,CAEvE;AAGD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAC/B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAUvC;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,MAAM,GAAG,SAAS,CAM1C;AAGD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAC9B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,OAAO,GAAG,IAAI,GAAG,SAAS,CAwBlD;AAGD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAC9B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,OAAO,GAAG,SAAS,CAgB3C;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CACrB,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAK,MAAM,CA2E/B;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACjC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,MAAM,CA0B9B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACjC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,MAAM,CA0C9B;AAED;;;;;;;;;GASG;AACH,wBAAiB,gBAAgB,CAC7B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,gBAAgB,CAAE,MAAM,CAAE,CAkGlD;AAGD;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACtC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAI,MAAM,GAAG,SAAS,CA4C1C;AAID;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAChC,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAK,MAAM,GAAG,SAAS,CAsC3C;AAED,QAAA,MAAM,eAAe,8JAAkC,CAAA;AAEvD,OAAO,EAAE,eAAe,EAAE,CAAA;AAE1B,QAAA,MAAM,iBAAiB,iGAAoC,CAAA;AAE3D,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAE5B,QAAA,MAAM,iBAAiB,4FAAiC,CAAA;AAExD,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
@@ -233,7 +233,7 @@ export function stepExtractArrayBegin(buffer, cursor, endCursor) {
233
233
  * @param endCursor The last position accessible for this read in the buffer.
234
234
  * @return {number} Returns a negative number on termination/error
235
235
  * matching the values in IncermentalParseEndState, or the new cursor
236
- * if there is a value in .
236
+ * if there is a value in the token.
237
237
  */
238
238
  export function stepExtractArrayToken(buffer, cursor, endCursor) {
239
239
  let previousCursor;
@@ -82,7 +82,7 @@ export default class StepParser<TypeIDType> extends StepHeaderParser {
82
82
  * @return {[IndexMark, number] | undefined} The vtable slice or undefined if it's not
83
83
  * defined due to an error.
84
84
  */
85
- extractDataEntry(input: Uint8Array, cursor: number, endCursor: number, vtableBuilder: StepVtableBuilder): [IndexMark, number] | undefined;
85
+ extractDataEntry(input: Uint8Array, cursor: number, endCursor: number, vtableBuilder: StepVtableBuilder): [IndexMark, number, number] | undefined;
86
86
  /**
87
87
  * Parse the data block of a step file, indexing it.,
88
88
  *
@@ -1 +1 @@
1
- {"version":3,"file":"step_parser.d.ts","sourceRoot":"","sources":["../../../../src/step/parsing/step_parser.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,2BAA2B,CAAA;AAEjD,OAAO,aAAa,MAAM,8BAA8B,CAAA;AAaxD,OAAO,iBAAiB,EAAE,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAGpE,MAAM,WAAW,kBAAkB,CAAC,UAAU;IAE5C,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAAA;CACpD;AAED,MAAM,WAAW,oBAAoB,CAAC,UAAU,CAAE,SAAQ,kBAAkB,CAAC,UAAU,CAAC;IAEtF,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB;AAED,MAAM,WAAW,cAAc,CAAC,UAAU,CAAE,SAAQ,kBAAkB,CAAC,UAAU,CAAC;IAEhF,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,SAAS,CAAC,UAAU;IAEnC,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,EAAE,CAAA;CAEvC;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,GAAG,CAAA;CACX;AAID;;GAEG;AAGH,oBAAY,WAAW;IAErB,QAAQ,IAAI;IACZ,UAAU,IAAI;IACd,YAAY,IAAI;IAChB,YAAY,IAAI;IAChB,YAAY,IAAI;CACjB;AAyBD,MAAM,MAAM,gBAAgB,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,CAAA;AAC/E,MAAM,MAAM,uBAAuB,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,CAAA;AAEtF,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC7B;AAED,MAAM,MAAM,iBAAiB,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;AAIzD;;GAEG;AACH,qBAAa,gBAAgB;IAE3B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAkB;IAE3C;;;;OAIG;IACH,WAAkB,QAAQ,IAAI,gBAAgB,CAQ7C;IAED;;;;;OAKG;IACI,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,iBAAiB;CA0L5D;AACD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,UAAU,CAAC,UAAU,CAAE,SAAQ,gBAAgB;IAQtD,OAAO,CAAC,QAAQ,CAAC,MAAM;IANnC;;;;;OAKG;gBAC0B,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAKpE;;;;;;;;;;;;;OAaG;IACI,gBAAgB,CACnB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,iBAAiB,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,SAAS;IA+DtE;;;;;OAKG;IACI,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC;IA2XzE;;;;;;OAMG;IACI,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC;CAiarF"}
1
+ {"version":3,"file":"step_parser.d.ts","sourceRoot":"","sources":["../../../../src/step/parsing/step_parser.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,2BAA2B,CAAA;AAEjD,OAAO,aAAa,MAAM,8BAA8B,CAAA;AAaxD,OAAO,iBAAiB,EAAE,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAGpE,MAAM,WAAW,kBAAkB,CAAC,UAAU;IAE5C,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAAA;CACpD;AAED,MAAM,WAAW,oBAAoB,CAAC,UAAU,CAAE,SAAQ,kBAAkB,CAAC,UAAU,CAAC;IAEtF,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB;AAED,MAAM,WAAW,cAAc,CAAC,UAAU,CAAE,SAAQ,kBAAkB,CAAC,UAAU,CAAC;IAEhF,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,SAAS,CAAC,UAAU;IAEnC,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,EAAE,CAAA;CAEvC;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,GAAG,CAAA;CACX;AAID;;GAEG;AAGH,oBAAY,WAAW;IAErB,QAAQ,IAAI;IACZ,UAAU,IAAI;IACd,YAAY,IAAI;IAChB,YAAY,IAAI;IAChB,YAAY,IAAI;CACjB;AAyBD,MAAM,MAAM,gBAAgB,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,CAAA;AAC/E,MAAM,MAAM,uBAAuB,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,CAAA;AAEtF,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC7B;AAED,MAAM,MAAM,iBAAiB,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;AAIzD;;GAEG;AACH,qBAAa,gBAAgB;IAE3B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAkB;IAE3C;;;;OAIG;IACH,WAAkB,QAAQ,IAAI,gBAAgB,CAQ7C;IAED;;;;;OAKG;IACI,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,iBAAiB;CA0L5D;AACD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,UAAU,CAAC,UAAU,CAAE,SAAQ,gBAAgB;IAQtD,OAAO,CAAC,QAAQ,CAAC,MAAM;IANnC;;;;;OAKG;gBAC0B,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAKpE;;;;;;;;;;;;;OAaG;IACI,gBAAgB,CACnB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,iBAAiB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS;IA+D9E;;;;;OAKG;IACI,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC;IA2XzE;;;;;;OAMG;IACI,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC;CAiarF"}
@@ -238,7 +238,7 @@ export default class StepParser extends StepHeaderParser {
238
238
  }
239
239
  if (cursor === endCursor) {
240
240
  if (stackDepth === 1) {
241
- return vtableBuilder.complete();
241
+ return vtableBuilder.complete(cursor);
242
242
  }
243
243
  else {
244
244
  return;
@@ -267,7 +267,7 @@ export default class StepParser extends StepHeaderParser {
267
267
  break;
268
268
  }
269
269
  else if (readChar === SEMICOLON) {
270
- return vtableBuilder.complete();
270
+ return vtableBuilder.complete(cursor - 1);
271
271
  // Will effectively terminate if this is the end of the entity,
272
272
  // or simply end the inline entity/container case otherwise.
273
273
  }
@@ -281,7 +281,7 @@ export default class StepParser extends StepHeaderParser {
281
281
  }
282
282
  }
283
283
  }
284
- return vtableBuilder.complete();
284
+ return vtableBuilder.complete(cursor);
285
285
  }
286
286
  /**
287
287
  * Parse the data block of a step file, indexing it.,
@@ -37,9 +37,10 @@ export default class StepVtableBuilder {
37
37
  * Complete a row of vtable entries in the buffer, returning the index mark of the vtable run +
38
38
  * the number of entries.
39
39
  *
40
- * @return {[IndexMark, number]} The index mark (i.e. location in the buffer this run exists)
41
- * and the number of entries.
40
+ * @return {[IndexMark, number, number]} The index mark (i.e. location in the buffer this run
41
+ * exists),
42
+ * the number of entries, and the last cursor position.
42
43
  */
43
- complete(): [IndexMark, number];
44
+ complete(endCursor: number): [IndexMark, number, number];
44
45
  }
45
46
  //# sourceMappingURL=step_vtable_builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"step_vtable_builder.d.ts","sourceRoot":"","sources":["../../../../src/step/parsing/step_vtable_builder.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACpC,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,UAAU,CAAQ;IAE1B;;;;;OAKG;IACH,IAAW,MAAM,IAAI,WAAW,CAE/B;IAED;;;;OAIG;gBACU,kBAAkB,GAAE,MAAW;IAM5C;;;;;OAKG;IACI,KAAK,CAAE,UAAU,GAAE,OAAe,GAAI,IAAI;IAWjD;;;;OAIG;IACI,IAAI,CAAE,OAAO,EAAE,MAAM,GAAK,IAAI;IAcrC;;;;;;OAMG;IACI,QAAQ,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC;CAOvC"}
1
+ {"version":3,"file":"step_vtable_builder.d.ts","sourceRoot":"","sources":["../../../../src/step/parsing/step_vtable_builder.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACpC,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,UAAU,CAAQ;IAE1B;;;;;OAKG;IACH,IAAW,MAAM,IAAI,WAAW,CAE/B;IAED;;;;OAIG;gBACU,kBAAkB,GAAE,MAAW;IAM5C;;;;;OAKG;IACI,KAAK,CAAE,UAAU,GAAE,OAAe,GAAI,IAAI;IAWjD;;;;OAIG;IACI,IAAI,CAAE,OAAO,EAAE,MAAM,GAAK,IAAI;IAcrC;;;;;;;OAOG;IACI,QAAQ,CAAE,SAAS,EAAE,MAAM,GAAI,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC;CAOlE"}
@@ -55,12 +55,13 @@ export default class StepVtableBuilder {
55
55
  * Complete a row of vtable entries in the buffer, returning the index mark of the vtable run +
56
56
  * the number of entries.
57
57
  *
58
- * @return {[IndexMark, number]} The index mark (i.e. location in the buffer this run exists)
59
- * and the number of entries.
58
+ * @return {[IndexMark, number, number]} The index mark (i.e. location in the buffer this run
59
+ * exists),
60
+ * the number of entries, and the last cursor position.
60
61
  */
61
- complete() {
62
+ complete(endCursor) {
62
63
  const indexMark = this.indexMark_;
63
64
  this.indexMark_ = this.bufferMark_;
64
- return [indexMark, this.indexMark_ - indexMark];
65
+ return [indexMark, this.indexMark_ - indexMark, endCursor];
65
66
  }
66
67
  }
@@ -1,3 +1,4 @@
1
+ import { ParseBuffer } from '../../dependencies/conway-geom/interface/parse_buffer';
1
2
  import { Entity } from '../core/entity';
2
3
  import { EntityDescription, EntityFieldsDescription } from '../core/entity_description';
3
4
  import { EntityFieldDescription } from '../core/entity_field_description';
@@ -84,8 +85,8 @@ export default abstract class StepEntityBase<EntityTypeIDs extends number> imple
84
85
  * @param optional Whether this is a potentially optional field
85
86
  * @return {number | null | undefined} The extracted number.
86
87
  */
87
- extractNumber(offset: number, optional: true): number | null;
88
- extractNumber(offset: number, optional: false): number;
88
+ extractNumber(vtableOffset: number, optional: true): number | null;
89
+ extractNumber(vtableOffset: number, optional: false): number;
89
90
  /**
90
91
  * Extract a string at the particular vtable offset (i.e. the position
91
92
  * in the matching step object).
@@ -247,6 +248,15 @@ export default abstract class StepEntityBase<EntityTypeIDs extends number> imple
247
248
  * Make it so this particular object is not held in the cache.
248
249
  */
249
250
  invalidate(): void;
251
+ /**
252
+ * Extract a parse buffer at a particular vtable offset.
253
+ *
254
+ * @param offset
255
+ * @param buffer
256
+ * @param optional
257
+ * @return {boolean} True if this extracts, false (usually because this is optional)
258
+ */
259
+ extractParseBuffer(offset: number, result: ParseBuffer, nativeBuffer: Uint8Array, optional: boolean): boolean;
250
260
  /**
251
261
  * Extract a number at the particular vtable offset (i.e. the position
252
262
  * in the matching step object).
@@ -279,6 +289,14 @@ export default abstract class StepEntityBase<EntityTypeIDs extends number> imple
279
289
  * @return {Uint8Array} The buffer for this.
280
290
  */
281
291
  protected get buffer(): Uint8Array;
292
+ /**
293
+ * Get both the buffer offset and end cursor for
294
+ * a particular vtable offset.
295
+ *
296
+ * @param vtableOffset The vtable offset to get the cursor/endcursor for.
297
+ * @return {[number,number]} The cursor and end cursor in the read buffer.
298
+ */
299
+ protected getOffsetAndEndCursor(vtableOffset: number): [number, number];
282
300
  /**
283
301
  * Get the buffer cursor for a particular offset.
284
302
  *
@@ -286,6 +304,13 @@ export default abstract class StepEntityBase<EntityTypeIDs extends number> imple
286
304
  * @return {number} The cursor.
287
305
  */
288
306
  protected getOffsetCursor(offset: number): number;
307
+ /**
308
+ * Get the buffer cursor for a particular offset.
309
+ *
310
+ * @param offset The offset in the v-table.
311
+ * @return {number} The cursor.
312
+ */
313
+ protected getEndCursor(offset: number): number;
289
314
  /**
290
315
  * Construct this with the local ID, internal reference and
291
316
  * the model.
@@ -1 +1 @@
1
- {"version":3,"file":"step_entity_base.d.ts","sourceRoot":"","sources":["../../../src/step/step_entity_base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"step_entity_base.d.ts","sourceRoot":"","sources":["../../../src/step/step_entity_base.ts"],"names":[],"mappings":"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"}
@@ -116,15 +116,16 @@ export default class StepEntityBase {
116
116
  return `#${this.expressID ?? `inline(${this.localID})`}`;
117
117
  }
118
118
  // eslint-disable-next-line no-dupe-class-members, require-jsdoc
119
- extractNumber(offset, optional) {
120
- const cursor = this.getOffsetCursor(offset);
119
+ extractNumber(vtableOffset, optional) {
120
+ this.guaranteeVTable();
121
+ const [cursor, endCursor] = this.getOffsetAndEndCursor(vtableOffset);
121
122
  const buffer = this.buffer;
122
- const endCursor = buffer.length;
123
123
  const value = stepExtractNumber(buffer, cursor, endCursor);
124
124
  if (value === void 0) {
125
125
  if (!optional) {
126
126
  throw new Error('Value in STEP was incorrectly typed');
127
127
  }
128
+ const buffer = this.buffer;
128
129
  if (!this.model.nullOnErrors && stepExtractOptional(buffer, cursor, endCursor) !== null) {
129
130
  throw new Error('Value in STEP was incorrectly typed');
130
131
  }
@@ -134,9 +135,8 @@ export default class StepEntityBase {
134
135
  }
135
136
  // eslint-disable-next-line no-dupe-class-members, require-jsdoc
136
137
  extractString(offset, optional) {
137
- const cursor = this.getOffsetCursor(offset);
138
+ const [cursor, endCursor] = this.getOffsetAndEndCursor(offset);
138
139
  const buffer = this.buffer;
139
- const endCursor = buffer.length;
140
140
  const value = stepExtractString(buffer, cursor, endCursor);
141
141
  if (value === void 0) {
142
142
  if (!optional) {
@@ -151,9 +151,8 @@ export default class StepEntityBase {
151
151
  }
152
152
  // eslint-disable-next-line no-dupe-class-members, require-jsdoc
153
153
  extractLogical(offset, optional) {
154
- const cursor = this.getOffsetCursor(offset);
154
+ const [cursor, endCursor] = this.getOffsetAndEndCursor(offset);
155
155
  const buffer = this.buffer;
156
- const endCursor = buffer.length;
157
156
  const value = stepExtractLogical(buffer, cursor, endCursor);
158
157
  if (value === void 0) {
159
158
  if (!optional) {
@@ -290,9 +289,8 @@ export default class StepEntityBase {
290
289
  */
291
290
  // eslint-disable-next-line no-dupe-class-members, require-jsdoc
292
291
  extractLambda(offset, extractor, optional) {
293
- const cursor = this.getOffsetCursor(offset);
292
+ const [cursor, endCursor] = this.getOffsetAndEndCursor(offset);
294
293
  const buffer = this.buffer;
295
- const endCursor = buffer.length;
296
294
  const value = extractor(buffer, cursor, endCursor);
297
295
  if (value === void 0) {
298
296
  if (!optional) {
@@ -319,9 +317,8 @@ export default class StepEntityBase {
319
317
  */
320
318
  // eslint-disable-next-line no-dupe-class-members, require-jsdoc
321
319
  extractElement(offset, optional, entityConstructor) {
322
- const cursor = this.getOffsetCursor(offset);
320
+ const [cursor, endCursor] = this.getOffsetAndEndCursor(offset);
323
321
  const buffer = this.buffer;
324
- const endCursor = buffer.length;
325
322
  const model = this.model;
326
323
  const expressID = stepExtractReference(buffer, cursor, endCursor);
327
324
  const value = expressID !== void 0 ? model.getElementByExpressID(expressID) :
@@ -369,9 +366,8 @@ export default class StepEntityBase {
369
366
  }
370
367
  // eslint-disable-next-line no-dupe-class-members, require-jsdoc
371
368
  extractBinary(vtableOffset, optional) {
372
- const cursor = this.getOffsetCursor(vtableOffset);
369
+ const [cursor, endCursor] = this.getOffsetAndEndCursor(vtableOffset);
373
370
  const buffer = this.buffer;
374
- const endCursor = buffer.length;
375
371
  const value = stepExtractBinary(buffer, cursor, endCursor);
376
372
  if (value === void 0) {
377
373
  if (!optional) {
@@ -391,6 +387,34 @@ export default class StepEntityBase {
391
387
  this.internalReference_.entity =
392
388
  void 0;
393
389
  }
390
+ /**
391
+ * Extract a parse buffer at a particular vtable offset.
392
+ *
393
+ * @param offset
394
+ * @param buffer
395
+ * @param optional
396
+ * @return {boolean} True if this extracts, false (usually because this is optional)
397
+ */
398
+ extractParseBuffer(offset, result, nativeBuffer, optional) {
399
+ this.guaranteeVTable();
400
+ const internalReference = this.internalReference_;
401
+ if (offset >= internalReference.vtableCount) {
402
+ throw new Error('Couldn\'t read field due to too few fields in record');
403
+ }
404
+ const buffer = this.buffer;
405
+ const vtableSlot = internalReference.vtableIndex + offset;
406
+ const cursor = internalReference.vtable[vtableSlot];
407
+ const nextSlot = vtableSlot + 1;
408
+ const endCursor = nextSlot < internalReference.vtableCount ?
409
+ (internalReference.vtable[nextSlot] - 1) :
410
+ internalReference.endCursor;
411
+ if (optional && stepExtractOptional(buffer, cursor, endCursor) === null) {
412
+ return false;
413
+ }
414
+ const dataPtr = result.resize(endCursor - cursor);
415
+ nativeBuffer.set(buffer.subarray(cursor, endCursor), dataPtr);
416
+ return true;
417
+ }
394
418
  /**
395
419
  * Extract a number at the particular vtable offset (i.e. the position
396
420
  * in the matching step object).
@@ -405,9 +429,8 @@ export default class StepEntityBase {
405
429
  */
406
430
  // eslint-disable-next-line no-dupe-class-members, require-jsdoc
407
431
  extractBoolean(offset, optional) {
408
- const cursor = this.getOffsetCursor(offset);
432
+ const [cursor, endCursor] = this.getOffsetAndEndCursor(offset);
409
433
  const buffer = this.buffer;
410
- const endCursor = buffer.length;
411
434
  const value = stepExtractBoolean(buffer, cursor, endCursor);
412
435
  if (value === void 0) {
413
436
  if (!optional) {
@@ -429,6 +452,27 @@ export default class StepEntityBase {
429
452
  get buffer() {
430
453
  return this.internalReference_.buffer;
431
454
  }
455
+ /**
456
+ * Get both the buffer offset and end cursor for
457
+ * a particular vtable offset.
458
+ *
459
+ * @param vtableOffset The vtable offset to get the cursor/endcursor for.
460
+ * @return {[number,number]} The cursor and end cursor in the read buffer.
461
+ */
462
+ getOffsetAndEndCursor(vtableOffset) {
463
+ this.guaranteeVTable();
464
+ const internalReference = this.internalReference_;
465
+ if (vtableOffset >= internalReference.vtableCount) {
466
+ throw new Error('Couldn\'t read field due to too few fields in record');
467
+ }
468
+ const vtableSlot = internalReference.vtableIndex + vtableOffset;
469
+ return [
470
+ internalReference.vtable[vtableSlot],
471
+ ((vtableOffset + 1) !== internalReference.vtableCount) ?
472
+ (internalReference.vtable[vtableSlot + 1] - 1) :
473
+ internalReference.endCursor,
474
+ ];
475
+ }
432
476
  /**
433
477
  * Get the buffer cursor for a particular offset.
434
478
  *
@@ -444,6 +488,24 @@ export default class StepEntityBase {
444
488
  const vtableSlot = internalReference.vtableIndex + offset;
445
489
  return internalReference.vtable[vtableSlot];
446
490
  }
491
+ /**
492
+ * Get the buffer cursor for a particular offset.
493
+ *
494
+ * @param offset The offset in the v-table.
495
+ * @return {number} The cursor.
496
+ */
497
+ getEndCursor(offset) {
498
+ const internalReference = this.internalReference_;
499
+ ++offset;
500
+ if (offset === internalReference.vtableCount) {
501
+ return internalReference.endCursor;
502
+ }
503
+ if (offset > internalReference.vtableCount) {
504
+ throw new Error('Couldn\'t read field due to too few fields in record');
505
+ }
506
+ const vtableSlot = internalReference.vtableIndex + offset;
507
+ return internalReference.vtable[vtableSlot];
508
+ }
447
509
  /**
448
510
  * Construct this with the local ID, internal reference and
449
511
  * the model.
@@ -8,6 +8,7 @@ import StepEntityBase from './step_entity_base';
8
8
  export default interface StepEntityInternalReference<EntityTypeIDs extends number> extends StepIndexEntryBase<EntityTypeIDs> {
9
9
  vtableIndex?: IndexMark;
10
10
  vtableCount?: number;
11
+ endCursor?: number;
11
12
  buffer?: Uint8Array;
12
13
  vtable?: Uint32Array;
13
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"step_entity_internal_reference.d.ts","sourceRoot":"","sources":["../../../src/step/step_entity_internal_reference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAC,SAAS,EAAC,MAAM,+BAA+B,CAAA;AACvD,OAAO,cAAc,MAAM,oBAAoB,CAAA;AAE/C;;;GAGG;AACH,MAAM,CAAC,OAAO,WAAW,2BAA2B,CAAE,aAAa,SAAS,MAAM,CAAG,SACnF,kBAAkB,CAAE,aAAa,CAAE;IACnC,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,kCAAkC,CACjD,aAAa,SAAS,MAAM,EAC5B,UAAU,SAAS,cAAc,CAAE,aAAa,CAAE,CAAG,SACrD,2BAA2B,CAAE,aAAa,CAAE;IAC5C,MAAM,CAAC,EAAE,UAAU,CAAA;CACpB"}
1
+ {"version":3,"file":"step_entity_internal_reference.d.ts","sourceRoot":"","sources":["../../../src/step/step_entity_internal_reference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAC,SAAS,EAAC,MAAM,+BAA+B,CAAA;AACvD,OAAO,cAAc,MAAM,oBAAoB,CAAA;AAE/C;;;GAGG;AACH,MAAM,CAAC,OAAO,WAAW,2BAA2B,CAAE,aAAa,SAAS,MAAM,CAAG,SACnF,kBAAkB,CAAE,aAAa,CAAE;IACnC,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,kCAAkC,CACjD,aAAa,SAAS,MAAM,EAC5B,UAAU,SAAS,cAAc,CAAE,aAAa,CAAE,CAAG,SACrD,2BAA2B,CAAE,aAAa,CAAE;IAC5C,MAAM,CAAC,EAAE,UAAU,CAAA;CACpB"}
@@ -1,15 +1,23 @@
1
1
  /* eslint-disable camelcase */
2
- import { describe, expect, test } from '@jest/globals';
2
+ import { beforeAll, describe, expect, test } from '@jest/globals';
3
3
  import AP214StepExternalMapping from '../AP214E3_2010/ap214_step_external_mapping';
4
4
  import AP214StepParser from '../AP214E3_2010/ap214_step_parser';
5
5
  import ParsingBuffer from '../parsing/parsing_buffer';
6
6
  import { ParseResult } from './parsing/step_parser';
7
7
  import { geometric_representation_context, parametric_representation_context, representation_context, } from '../AP214E3_2010/AP214E3_2010_gen';
8
+ import { ConwayGeometry } from '../../dependencies/conway-geom';
8
9
  const parser = AP214StepParser.Instance;
9
10
  // eslint-disable-next-line max-len
10
11
  const externalMappingString = '#42 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT(\'2D SPACE\',\'\' ) );';
11
12
  const externalMappingStringBuffer = new TextEncoder().encode(externalMappingString);
12
13
  const EXTERNAL_REFERENCE_EXPRESS_ID = 42;
14
+ const conwayGeometry = new ConwayGeometry();
15
+ /**
16
+ * Intialize conway geom.
17
+ */
18
+ async function initializeConwayGeom() {
19
+ await conwayGeometry.initialize();
20
+ }
13
21
  /**
14
22
  * Test for extracting an external mapping.
15
23
  *
@@ -38,6 +46,9 @@ function extractExternalMapping() {
38
46
  return true;
39
47
  }
40
48
  describe('External Mapping Test', () => {
49
+ beforeAll(async () => {
50
+ await initializeConwayGeom();
51
+ });
41
52
  test('extractExternalMapping()', () => {
42
53
  expect(extractExternalMapping()).toBe(true);
43
54
  });
@@ -1 +1 @@
1
- {"version":3,"file":"step_model_base.d.ts","sourceRoot":"","sources":["../../../src/step/step_model_base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"step_model_base.d.ts","sourceRoot":"","sources":["../../../src/step/step_model_base.ts"],"names":[],"mappings":"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"}
@@ -120,6 +120,7 @@ export default class StepModelBase {
120
120
  }
121
121
  element.vtableIndex = extratedEntry[0];
122
122
  element.vtableCount = extratedEntry[1];
123
+ element.endCursor = extratedEntry[2];
123
124
  element.buffer = this.buffer_;
124
125
  element.vtable = this.vtableBuilder_.buffer;
125
126
  return true;
@@ -1,2 +1,2 @@
1
- const versionString = 'Conway Web-Ifc Shim v0.7.766';
1
+ const versionString = 'Conway Web-Ifc Shim v0.8.782';
2
2
  export { versionString };