@ifc-lite/parser 9.1.0 → 9.4.0

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 (201) hide show
  1. package/README.md +35 -0
  2. package/dist/abort-error.d.ts +7 -0
  3. package/dist/abort-error.d.ts.map +1 -0
  4. package/dist/abort-error.js +17 -0
  5. package/dist/abort-error.js.map +1 -0
  6. package/dist/classification-overlay.d.ts +13 -0
  7. package/dist/classification-overlay.d.ts.map +1 -0
  8. package/dist/classification-overlay.js +65 -0
  9. package/dist/classification-overlay.js.map +1 -0
  10. package/dist/classification-resolver.d.ts +13 -9
  11. package/dist/classification-resolver.d.ts.map +1 -1
  12. package/dist/classification-resolver.js +109 -74
  13. package/dist/classification-resolver.js.map +1 -1
  14. package/dist/columnar-parser-attributes.d.ts +1 -1
  15. package/dist/columnar-parser-attributes.d.ts.map +1 -1
  16. package/dist/columnar-parser-attributes.js +16 -6
  17. package/dist/columnar-parser-attributes.js.map +1 -1
  18. package/dist/columnar-parser-root-attributes.d.ts +15 -1
  19. package/dist/columnar-parser-root-attributes.d.ts.map +1 -1
  20. package/dist/columnar-parser-root-attributes.js +26 -11
  21. package/dist/columnar-parser-root-attributes.js.map +1 -1
  22. package/dist/columnar-parser.d.ts +13 -15
  23. package/dist/columnar-parser.d.ts.map +1 -1
  24. package/dist/columnar-parser.js +11 -23
  25. package/dist/columnar-parser.js.map +1 -1
  26. package/dist/current-occurrence-quantities.d.ts +13 -0
  27. package/dist/current-occurrence-quantities.d.ts.map +1 -0
  28. package/dist/current-occurrence-quantities.js +69 -0
  29. package/dist/current-occurrence-quantities.js.map +1 -0
  30. package/dist/current-project-units.d.ts +11 -0
  31. package/dist/current-project-units.d.ts.map +1 -0
  32. package/dist/current-project-units.js +41 -0
  33. package/dist/current-project-units.js.map +1 -0
  34. package/dist/current-type-quantities.d.ts +13 -0
  35. package/dist/current-type-quantities.d.ts.map +1 -0
  36. package/dist/current-type-quantities.js +274 -0
  37. package/dist/current-type-quantities.js.map +1 -0
  38. package/dist/data-store-transport.d.ts +1 -0
  39. package/dist/data-store-transport.d.ts.map +1 -1
  40. package/dist/data-store-transport.js +4 -4
  41. package/dist/data-store-transport.js.map +1 -1
  42. package/dist/document-resolver.d.ts +23 -0
  43. package/dist/document-resolver.d.ts.map +1 -0
  44. package/dist/document-resolver.js +122 -0
  45. package/dist/document-resolver.js.map +1 -0
  46. package/dist/effective-entity-record.d.ts +3 -2
  47. package/dist/effective-entity-record.d.ts.map +1 -1
  48. package/dist/effective-entity-record.js +5 -5
  49. package/dist/effective-entity-record.js.map +1 -1
  50. package/dist/effective-metadata-record.d.ts +23 -0
  51. package/dist/effective-metadata-record.d.ts.map +1 -0
  52. package/dist/effective-metadata-record.js +50 -0
  53. package/dist/effective-metadata-record.js.map +1 -0
  54. package/dist/effective-storey.d.ts.map +1 -1
  55. package/dist/effective-storey.js +5 -0
  56. package/dist/effective-storey.js.map +1 -1
  57. package/dist/entity-scanner.d.ts +6 -8
  58. package/dist/entity-scanner.d.ts.map +1 -1
  59. package/dist/entity-scanner.js +26 -13
  60. package/dist/entity-scanner.js.map +1 -1
  61. package/dist/georef-extractor.d.ts +1 -1
  62. package/dist/georef-extractor.d.ts.map +1 -1
  63. package/dist/georef-extractor.js +1 -1
  64. package/dist/georef-extractor.js.map +1 -1
  65. package/dist/ifc-schema.d.ts +2 -1
  66. package/dist/ifc-schema.d.ts.map +1 -1
  67. package/dist/ifc-schema.js +4 -3
  68. package/dist/ifc-schema.js.map +1 -1
  69. package/dist/index.d.ts +9 -12
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +9 -12
  72. package/dist/index.js.map +1 -1
  73. package/dist/length-unit-source.d.ts +25 -0
  74. package/dist/length-unit-source.d.ts.map +1 -0
  75. package/dist/length-unit-source.js +14 -0
  76. package/dist/length-unit-source.js.map +1 -0
  77. package/dist/material-definitions.d.ts +10 -0
  78. package/dist/material-definitions.d.ts.map +1 -0
  79. package/dist/material-definitions.js +224 -0
  80. package/dist/material-definitions.js.map +1 -0
  81. package/dist/material-overlay.d.ts +38 -0
  82. package/dist/material-overlay.d.ts.map +1 -0
  83. package/dist/material-overlay.js +146 -0
  84. package/dist/material-overlay.js.map +1 -0
  85. package/dist/material-properties-extractor.d.ts +2 -11
  86. package/dist/material-properties-extractor.d.ts.map +1 -1
  87. package/dist/material-properties-extractor.js +21 -38
  88. package/dist/material-properties-extractor.js.map +1 -1
  89. package/dist/material-resolver.d.ts +6 -4
  90. package/dist/material-resolver.d.ts.map +1 -1
  91. package/dist/material-resolver.js +176 -386
  92. package/dist/material-resolver.js.map +1 -1
  93. package/dist/measure-unit-scale.d.ts +2 -0
  94. package/dist/measure-unit-scale.d.ts.map +1 -1
  95. package/dist/measure-unit-scale.js +7 -1
  96. package/dist/measure-unit-scale.js.map +1 -1
  97. package/dist/metadata-edit-value.d.ts +4 -0
  98. package/dist/metadata-edit-value.d.ts.map +1 -0
  99. package/dist/metadata-edit-value.js +57 -0
  100. package/dist/metadata-edit-value.js.map +1 -0
  101. package/dist/native-metadata-public.d.ts +9 -0
  102. package/dist/native-metadata-public.d.ts.map +1 -0
  103. package/dist/native-metadata-public.js +12 -0
  104. package/dist/native-metadata-public.js.map +1 -0
  105. package/dist/occurrence-quantity-read-error.d.ts +7 -0
  106. package/dist/occurrence-quantity-read-error.d.ts.map +1 -0
  107. package/dist/occurrence-quantity-read-error.js +13 -0
  108. package/dist/occurrence-quantity-read-error.js.map +1 -0
  109. package/dist/on-demand-extractors.d.ts +3 -38
  110. package/dist/on-demand-extractors.d.ts.map +1 -1
  111. package/dist/on-demand-extractors.js +4 -184
  112. package/dist/on-demand-extractors.js.map +1 -1
  113. package/dist/on-demand-georeferencing.d.ts.map +1 -1
  114. package/dist/on-demand-georeferencing.js +2 -0
  115. package/dist/on-demand-georeferencing.js.map +1 -1
  116. package/dist/parser-worker-trace.d.ts +18 -0
  117. package/dist/parser-worker-trace.d.ts.map +1 -0
  118. package/dist/parser-worker-trace.js +32 -0
  119. package/dist/parser-worker-trace.js.map +1 -0
  120. package/dist/parser.worker.d.ts.map +1 -1
  121. package/dist/parser.worker.js +34 -13
  122. package/dist/parser.worker.js.map +1 -1
  123. package/dist/project-units.d.ts +17 -4
  124. package/dist/project-units.d.ts.map +1 -1
  125. package/dist/project-units.js +104 -37
  126. package/dist/project-units.js.map +1 -1
  127. package/dist/property-complex-value.d.ts.map +1 -1
  128. package/dist/property-complex-value.js +1 -0
  129. package/dist/property-complex-value.js.map +1 -1
  130. package/dist/property-unit.d.ts +2 -0
  131. package/dist/property-unit.d.ts.map +1 -1
  132. package/dist/property-unit.js +4 -1
  133. package/dist/property-unit.js.map +1 -1
  134. package/dist/property-value-parser.d.ts +14 -1
  135. package/dist/property-value-parser.d.ts.map +1 -1
  136. package/dist/property-value-parser.js +42 -22
  137. package/dist/property-value-parser.js.map +1 -1
  138. package/dist/quantity-collect.d.ts +14 -2
  139. package/dist/quantity-collect.d.ts.map +1 -1
  140. package/dist/quantity-collect.js +19 -8
  141. package/dist/quantity-collect.js.map +1 -1
  142. package/dist/relationship-schema-slots.d.ts.map +1 -1
  143. package/dist/relationship-schema-slots.js +2 -1
  144. package/dist/relationship-schema-slots.js.map +1 -1
  145. package/dist/scan-worker-inline.d.ts.map +1 -1
  146. package/dist/scan-worker-inline.js +2 -1
  147. package/dist/scan-worker-inline.js.map +1 -1
  148. package/dist/schedule-extractor.d.ts +2 -1
  149. package/dist/schedule-extractor.d.ts.map +1 -1
  150. package/dist/schedule-extractor.js +11 -2
  151. package/dist/schedule-extractor.js.map +1 -1
  152. package/dist/schedule-serializer-builders.d.ts +7 -0
  153. package/dist/schedule-serializer-builders.d.ts.map +1 -1
  154. package/dist/schedule-serializer-builders.js +17 -17
  155. package/dist/schedule-serializer-builders.js.map +1 -1
  156. package/dist/schedule-serializer.d.ts +8 -3
  157. package/dist/schedule-serializer.d.ts.map +1 -1
  158. package/dist/schedule-serializer.js +36 -1
  159. package/dist/schedule-serializer.js.map +1 -1
  160. package/dist/schedule-task-products.d.ts +38 -0
  161. package/dist/schedule-task-products.d.ts.map +1 -0
  162. package/dist/schedule-task-products.js +69 -0
  163. package/dist/schedule-task-products.js.map +1 -0
  164. package/dist/schedule-types.d.ts +11 -1
  165. package/dist/schedule-types.d.ts.map +1 -1
  166. package/dist/schedule-types.js.map +1 -1
  167. package/dist/schema-entity-name.d.ts +14 -0
  168. package/dist/schema-entity-name.d.ts.map +1 -0
  169. package/dist/schema-entity-name.js +34 -0
  170. package/dist/schema-entity-name.js.map +1 -0
  171. package/dist/schema-exports.d.ts +7 -0
  172. package/dist/schema-exports.d.ts.map +1 -0
  173. package/dist/schema-exports.js +10 -0
  174. package/dist/schema-exports.js.map +1 -0
  175. package/dist/source-project-length-unit.d.ts +53 -0
  176. package/dist/source-project-length-unit.d.ts.map +1 -0
  177. package/dist/source-project-length-unit.js +201 -0
  178. package/dist/source-project-length-unit.js.map +1 -0
  179. package/dist/structural-extractor.js +2 -2
  180. package/dist/structural-extractor.js.map +1 -1
  181. package/dist/structural-load-extractor.d.ts +9 -3
  182. package/dist/structural-load-extractor.d.ts.map +1 -1
  183. package/dist/structural-load-extractor.js +26 -20
  184. package/dist/structural-load-extractor.js.map +1 -1
  185. package/dist/structural-step-values.d.ts +0 -9
  186. package/dist/structural-step-values.d.ts.map +1 -1
  187. package/dist/structural-step-values.js +13 -1
  188. package/dist/structural-step-values.js.map +1 -1
  189. package/dist/type-own-quantity-source.d.ts +37 -0
  190. package/dist/type-own-quantity-source.d.ts.map +1 -0
  191. package/dist/type-own-quantity-source.js +204 -0
  192. package/dist/type-own-quantity-source.js.map +1 -0
  193. package/dist/unit-extractor.d.ts +14 -1
  194. package/dist/unit-extractor.d.ts.map +1 -1
  195. package/dist/unit-extractor.js +34 -31
  196. package/dist/unit-extractor.js.map +1 -1
  197. package/dist/worker-parser.d.ts +7 -0
  198. package/dist/worker-parser.d.ts.map +1 -1
  199. package/dist/worker-parser.js +14 -16
  200. package/dist/worker-parser.js.map +1 -1
  201. package/package.json +6 -5
@@ -4,6 +4,7 @@
4
4
  import { EntityExtractor } from './entity-extractor.js';
5
5
  import { resolveOwningIfcProjectId } from './owning-project.js';
6
6
  import { extractProjectUnits } from './project-units.js';
7
+ import { declared, defaulted, unknownUnitMessage } from './length-unit-source.js';
7
8
  export { resolveOwningIfcProjectId } from './owning-project.js';
8
9
  /**
9
10
  * SI Prefix multipliers, keyed by the members of the `IfcSIPrefix` EXPRESS
@@ -17,7 +18,7 @@ export { resolveOwningIfcProjectId } from './owning-project.js';
17
18
  * a private four-entry copy (MILLI/CENTI/DECI/KILO), so a MapUnit in any
18
19
  * other prefix read back as plain metres.
19
20
  */
20
- export const SI_PREFIX_MULTIPLIERS = {
21
+ export const SI_PREFIX_MULTIPLIERS = Object.freeze({
21
22
  'ATTO': 1e-18,
22
23
  'FEMTO': 1e-15,
23
24
  'PICO': 1e-12,
@@ -34,7 +35,7 @@ export const SI_PREFIX_MULTIPLIERS = {
34
35
  'TERA': 1e12,
35
36
  'PETA': 1e15,
36
37
  'EXA': 1e18,
37
- };
38
+ });
38
39
  /**
39
40
  * Known conversion factors for imperial/conversion-based units to meters.
40
41
  *
@@ -80,7 +81,7 @@ function warnUnknownUnit(entityIndex, reason) {
80
81
  if (warnedEntityIndexes.has(entityIndex))
81
82
  return;
82
83
  warnedEntityIndexes.add(entityIndex);
83
- console.warn(`[UnitExtractor] ${reason}, defaulting to meters (unconfirmed — see issue #2104)`);
84
+ console.warn(`[UnitExtractor] ${unknownUnitMessage(reason)}`);
84
85
  }
85
86
  /**
86
87
  * Extract length unit scale factor from IFC file
@@ -106,36 +107,45 @@ function warnUnknownUnit(entityIndex, reason) {
106
107
  * @returns Scale factor to apply to length values (e.g., 0.001 for millimeters)
107
108
  */
108
109
  export function extractLengthUnitScale(source, entityIndex, projectId) {
110
+ return resolveLengthUnit(source, entityIndex, projectId).scale;
111
+ }
112
+ /**
113
+ * {@link extractLengthUnitScale} plus where the scale came from (#7395, see
114
+ * `LengthUnitSource`). A defaulted unit warns to the console once per
115
+ * `entityIndex`, as before, and is also sent to `onDiagnostic` when given.
116
+ */
117
+ export function resolveLengthUnit(source, entityIndex, projectId, onDiagnostic) {
109
118
  // Find IFCPROJECT
110
119
  // @raw-entity-enumeration-ok source parser selects the file's IfcProject to establish its declared units
111
120
  const projectIds = entityIndex.byType.get('IFCPROJECT') || [];
112
121
  const resolvedProjectId = projectId ?? projectIds[0];
113
- if (resolvedProjectId === undefined) {
114
- warnUnknownUnit(entityIndex, 'No IFCPROJECT found');
115
- return 1.0;
122
+ const resolved = resolvedProjectId === undefined
123
+ ? defaulted('No IFCPROJECT found')
124
+ : resolveLengthUnitForProjectId(resolvedProjectId, source, entityIndex);
125
+ if (resolved.reason !== undefined) {
126
+ warnUnknownUnit(entityIndex, resolved.reason);
127
+ onDiagnostic?.(`units: ${unknownUnitMessage(resolved.reason)}`);
116
128
  }
117
- return extractLengthUnitScaleForProjectId(resolvedProjectId, source, entityIndex);
129
+ return resolved;
118
130
  }
119
131
  /**
120
- * Same resolution as {@link extractLengthUnitScale}, but for an EXPLICIT
132
+ * Same resolution as {@link resolveLengthUnit}, but for an EXPLICIT
121
133
  * `IFCPROJECT` id rather than always the first one found. Factored out so
122
134
  * {@link resolveEntityLengthUnitScale} and other {@link resolveOwningIfcProjectId}
123
135
  * callers can resolve the scale of a specific project in a multi-project
124
136
  * file (a {@link MergedExporter} federated output — see that module)
125
137
  * without duplicating the unit-chain walk.
126
138
  */
127
- function extractLengthUnitScaleForProjectId(projectId, source, entityIndex) {
139
+ function resolveLengthUnitForProjectId(projectId, source, entityIndex) {
128
140
  const extractor = new EntityExtractor(source);
129
141
  // @raw-entity-enumeration-ok dereference the parsed IfcProject before reading UnitsInContext
130
142
  const projectRef = entityIndex.byId.get(projectId);
131
143
  if (!projectRef) {
132
- warnUnknownUnit(entityIndex, 'IFCPROJECT reference could not be resolved');
133
- return 1.0;
144
+ return defaulted('IFCPROJECT reference could not be resolved');
134
145
  }
135
146
  const projectEntity = extractor.extractEntity(projectRef);
136
147
  if (!projectEntity) {
137
- warnUnknownUnit(entityIndex, 'IFCPROJECT entity could not be read');
138
- return 1.0;
148
+ return defaulted('IFCPROJECT entity could not be read');
139
149
  }
140
150
  // IFCPROJECT attributes:
141
151
  // [0] GlobalId, [1] OwnerHistory, [2] Name, [3] Description, [4] ObjectType,
@@ -143,31 +153,26 @@ function extractLengthUnitScaleForProjectId(projectId, source, entityIndex) {
143
153
  const attrs = projectEntity.attributes || [];
144
154
  const unitsRef = attrs[8];
145
155
  if (typeof unitsRef !== 'number') {
146
- warnUnknownUnit(entityIndex, 'No UnitsInContext reference');
147
- return 1.0;
156
+ return defaulted('No UnitsInContext reference');
148
157
  }
149
158
  // Resolve IFCUNITASSIGNMENT
150
159
  // @raw-entity-enumeration-ok follow the source IfcUnitAssignment reference
151
160
  const unitAssignmentRef = entityIndex.byId.get(unitsRef);
152
161
  if (!unitAssignmentRef) {
153
- warnUnknownUnit(entityIndex, 'UnitsInContext reference could not be resolved');
154
- return 1.0;
162
+ return defaulted('UnitsInContext reference could not be resolved');
155
163
  }
156
164
  const unitAssignment = extractor.extractEntity(unitAssignmentRef);
157
165
  if (!unitAssignment || unitAssignment.type.toUpperCase() !== 'IFCUNITASSIGNMENT') {
158
- warnUnknownUnit(entityIndex, 'UnitsInContext did not resolve to an IFCUNITASSIGNMENT');
159
- return 1.0;
166
+ return defaulted('UnitsInContext did not resolve to an IFCUNITASSIGNMENT');
160
167
  }
161
168
  // Guard against missing attributes
162
169
  if (!unitAssignment.attributes || !Array.isArray(unitAssignment.attributes)) {
163
- warnUnknownUnit(entityIndex, 'IFCUNITASSIGNMENT has no readable attributes');
164
- return 1.0;
170
+ return defaulted('IFCUNITASSIGNMENT has no readable attributes');
165
171
  }
166
172
  // IFCUNITASSIGNMENT has a single attribute: Units (list of references)
167
173
  const unitsList = unitAssignment.attributes[0];
168
174
  if (!Array.isArray(unitsList)) {
169
- warnUnknownUnit(entityIndex, 'IFCUNITASSIGNMENT.Units is not a list');
170
- return 1.0;
175
+ return defaulted('IFCUNITASSIGNMENT.Units is not a list');
171
176
  }
172
177
  // Search for length unit
173
178
  for (const unitRef of unitsList) {
@@ -195,7 +200,7 @@ function extractLengthUnitScaleForProjectId(projectId, source, entityIndex) {
195
200
  const prefix = unitAttrs[2];
196
201
  if (prefix === null || prefix === undefined || prefix === '$') {
197
202
  // No prefix = base meters
198
- return 1.0;
203
+ return declared(1.0);
199
204
  }
200
205
  // Clean up enum value (remove dots)
201
206
  const prefixStr = typeof prefix === 'string'
@@ -203,10 +208,9 @@ function extractLengthUnitScaleForProjectId(projectId, source, entityIndex) {
203
208
  : '';
204
209
  const multiplier = SI_PREFIX_MULTIPLIERS[prefixStr];
205
210
  if (multiplier !== undefined) {
206
- return multiplier;
211
+ return declared(multiplier);
207
212
  }
208
- warnUnknownUnit(entityIndex, `Unrecognized SI prefix "${prefixStr}"`);
209
- return 1.0;
213
+ return defaulted(`Unrecognized SI prefix "${prefixStr}"`);
210
214
  }
211
215
  // Handle IFCCONVERSIONBASEDUNIT (imperial units)
212
216
  if (unitType === 'IFCCONVERSIONBASEDUNIT') {
@@ -222,7 +226,7 @@ function extractLengthUnitScaleForProjectId(projectId, source, entityIndex) {
222
226
  const nameUpper = unitName.toUpperCase();
223
227
  const knownFactor = CONVERSION_BASED_UNIT_FACTORS[nameUpper];
224
228
  if (knownFactor !== undefined) {
225
- return knownFactor;
229
+ return declared(knownFactor);
226
230
  }
227
231
  }
228
232
  // Try to extract from ConversionFactor (IFCMEASUREWITHUNIT reference)
@@ -279,7 +283,7 @@ function extractLengthUnitScaleForProjectId(projectId, source, entityIndex) {
279
283
  }
280
284
  }
281
285
  }
282
- return conversionValue * unitComponentScale;
286
+ return declared(conversionValue * unitComponentScale);
283
287
  }
284
288
  }
285
289
  }
@@ -287,8 +291,7 @@ function extractLengthUnitScaleForProjectId(projectId, source, entityIndex) {
287
291
  }
288
292
  }
289
293
  // No length unit found, default to meters
290
- warnUnknownUnit(entityIndex, 'No LENGTHUNIT found in IFCUNITASSIGNMENT');
291
- return 1.0;
294
+ return defaulted('No LENGTHUNIT found in IFCUNITASSIGNMENT');
292
295
  }
293
296
  /**
294
297
  * Resolve the length unit scale that applies to ONE entity, correctly for a
@@ -1 +1 @@
1
- {"version":3,"file":"unit-extractor.js","sourceRoot":"","sources":["../src/unit-extractor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unit-extractor.js","sourceRoot":"","sources":["../src/unit-extractor.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@
18
18
  import type { IfcDataStore } from './columnar-parser.js';
19
19
  import type { ParseOptions } from './index.js';
20
20
  import type { ParserMemorySnapshot } from './data-store-transport.js';
21
+ import { type LoadTrace } from '@ifc-lite/load-trace';
21
22
  export interface WorkerParserOptions extends ParseOptions {
22
23
  /** Fresh per-request 16-byte prepass fingerprint cell; never awaited. */
23
24
  sourceFingerprint?: SharedArrayBuffer;
@@ -39,6 +40,12 @@ export interface WorkerParserOptions extends ParseOptions {
39
40
  * `abort(reason)` is passed through as-is, the default is an `AbortError`.
40
41
  */
41
42
  signal?: AbortSignal;
43
+ /**
44
+ * The caller's load trace (#6979). Records `parser.worker` (spawn to settle)
45
+ * with the worker's own phase spans merged under it, plus the main-thread
46
+ * `parser.hydrate` / `parser.hydratePartial`. Absent or disabled: no-op.
47
+ */
48
+ trace?: LoadTrace;
42
49
  }
43
50
  export declare class WorkerParser {
44
51
  private worker;
@@ -1 +1 @@
1
- {"version":3,"file":"worker-parser.d.ts","sourceRoot":"","sources":["../src/worker-parser.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAsBtE,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,yEAAyE;IACzE,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,6EAA6E;IAC7E,SAAS,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;IACzB,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC5D;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsB;IAChD;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAyC;IACvE;;;;OAIG;IACH,OAAO,CAAC,iBAAiB,CAMT;IAEhB;;;;;;;OAOG;IACH,MAAM,CAAC,WAAW,IAAI,OAAO;gBAOjB,OAAO,GAAE;QAAE,SAAS,CAAC,EAAE,GAAG,GAAG,MAAM,CAAA;KAAO;IAQtD;;;;;;OAMG;IACH,aAAa,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,YAAY,CAAC;IAwMlG;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CACZ,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,WAAW,EACpB,gBAAgB,CAAC,EAAE,MAAM,EACzB,oBAAoB,CAAC,EAAE,MAAM,GAC5B,IAAI;IAmBP;;;;;;;;;;;OAWG;IACH,SAAS,IAAI,IAAI;CAclB"}
1
+ {"version":3,"file":"worker-parser.d.ts","sourceRoot":"","sources":["../src/worker-parser.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAQtE,OAAO,EAAkF,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEtI,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,yEAAyE;IACzE,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,6EAA6E;IAC7E,SAAS,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;IACzB,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC5D;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsB;IAChD;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAyC;IACvE;;;;OAIG;IACH,OAAO,CAAC,iBAAiB,CAMT;IAEhB;;;;;;;OAOG;IACH,MAAM,CAAC,WAAW,IAAI,OAAO;gBAOjB,OAAO,GAAE;QAAE,SAAS,CAAC,EAAE,GAAG,GAAG,MAAM,CAAA;KAAO;IAQtD;;;;;;OAMG;IACH,aAAa,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,YAAY,CAAC;IA8MlG;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CACZ,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,WAAW,EACpB,gBAAgB,CAAC,EAAE,MAAM,EACzB,oBAAoB,CAAC,EAAE,MAAM,GAC5B,IAAI;IAmBP;;;;;;;;;;;OAWG;IACH,SAAS,IAAI,IAAI;CAclB"}
@@ -4,19 +4,8 @@
4
4
  import { WorkerIndexReceiver } from './worker-index-publication.js';
5
5
  import { contiguousSourceBytes } from './source-bytes.js';
6
6
  import { restashWasmPanicLocation } from './wasm-panic-forward.js';
7
- /**
8
- * Build an `AbortError`-shaped error for a cancelled parse. Uses `DOMException`
9
- * when available (browsers, modern Node) so `err.name === 'AbortError'` matches
10
- * the same check callers already use for `fetch`/`AbortController` cancellation.
11
- */
12
- function makeAbortError(message = 'Parser worker terminated') {
13
- if (typeof DOMException !== 'undefined') {
14
- return new DOMException(message, 'AbortError');
15
- }
16
- const err = new Error(message);
17
- err.name = 'AbortError';
18
- return err;
19
- }
7
+ import { makeAbortError } from './abort-error.js';
8
+ import { NOOP_LOAD_TRACE, accountWorkerMessages, enableWorkerTrace, isTraceSpansMessage } from '@ifc-lite/load-trace';
20
9
  export class WorkerParser {
21
10
  worker = null;
22
11
  requestCounter = 0;
@@ -70,8 +59,10 @@ export class WorkerParser {
70
59
  if (options.signal?.aborted) {
71
60
  return Promise.reject(options.signal.reason ?? makeAbortError('Parse aborted before start'));
72
61
  }
62
+ const trace = options.trace ?? NOOP_LOAD_TRACE;
73
63
  return new Promise((resolve, reject) => {
74
64
  const id = `parse_${Date.now()}_${++this.requestCounter}`;
65
+ const parseSpan = trace.begin('parser.worker');
75
66
  let onSignalAbort = null;
76
67
  let worker;
77
68
  try {
@@ -89,7 +80,7 @@ export class WorkerParser {
89
80
  // `this.worker` is only the `setEntityIndex` target: the most recently
90
81
  // spawned worker. Every path below clears it only while it still points
91
82
  // at THIS request's worker, so settling one request never detaches another.
92
- this.worker = worker;
83
+ this.worker = accountWorkerMessages(worker, 'parser'); // #6957 message counters (no-op unless traced)
93
84
  // Reject + terminate THIS request on demand, invoked by terminate() and by
94
85
  // this request's own 'abort' listener. Removed from `activeCancels` in
95
86
  // settle(), and the `settled` guard makes a stray late call a no-op.
@@ -124,6 +115,7 @@ export class WorkerParser {
124
115
  };
125
116
  const settle = (cleanup) => {
126
117
  settled = true;
118
+ trace.end(parseSpan);
127
119
  indexReceiver.clear();
128
120
  worker.onmessage = null;
129
121
  worker.onerror = null;
@@ -139,6 +131,11 @@ export class WorkerParser {
139
131
  options.signal.addEventListener('abort', onSignalAbort, { once: true });
140
132
  }
141
133
  worker.onmessage = (event) => {
134
+ const raw = event.data;
135
+ if (isTraceSpansMessage(raw)) {
136
+ trace.merge(raw.payload, parseSpan);
137
+ return;
138
+ }
142
139
  const msg = event.data;
143
140
  if (!msg || msg.id !== id)
144
141
  return;
@@ -154,7 +151,7 @@ export class WorkerParser {
154
151
  indexReceiver.capturePartial(msg.payload);
155
152
  if (!options.onSpatialReady)
156
153
  return;
157
- const partial = hydrate(msg.payload);
154
+ const partial = trace.span('parser.hydratePartial', () => hydrate(msg.payload));
158
155
  options.onSpatialReady(partial);
159
156
  }
160
157
  catch (err) {
@@ -172,7 +169,7 @@ export class WorkerParser {
172
169
  worker.terminate();
173
170
  if (this.worker === worker)
174
171
  this.worker = null;
175
- const dataStore = hydrate(msg.payload);
172
+ const dataStore = trace.span('parser.hydrate', () => hydrate(msg.payload));
176
173
  options.onMemorySnapshot?.(msg.memory);
177
174
  settle(() => { });
178
175
  resolve(dataStore);
@@ -238,6 +235,7 @@ export class WorkerParser {
238
235
  console.warn('[WorkerParser] queued setEntityIndex failed:', err);
239
236
  }
240
237
  }
238
+ enableWorkerTrace(worker, trace, 'parser');
241
239
  const input = {
242
240
  type: 'parse',
243
241
  sourceFingerprint: options.sourceFingerprint,
@@ -1 +1 @@
1
- {"version":3,"file":"worker-parser.js","sourceRoot":"","sources":["../src/worker-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker-parser.js","sourceRoot":"","sources":["../src/worker-parser.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAsB/D,OAAO,EAAE,mBAAmB,EAA2B,MAAM,+BAA+B,CAAC;AAE7F,OAAO,EAAE,qBAAqB,EAAuB,MAAM,mBAAmB,CAAC;AAK/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,mBAAmB,EAAkB,MAAM,sBAAsB,CAAC;AA+BtI,MAAM,OAAO,YAAY;IACf,MAAM,GAAkB,IAAI,CAAC;IAC7B,cAAc,GAAG,CAAC,CAAC;IACV,SAAS,CAAsB;IAChD;;;;;;;OAOG;IACc,aAAa,GAAG,IAAI,GAAG,EAA8B,CAAC;IACvE;;;;OAIG;IACK,iBAAiB,GAMd,IAAI,CAAC;IAEhB;;;;;;;OAOG;IACH,MAAM,CAAC,WAAW;QAChB,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,OAAO,KAAK,CAAC;QAChD,IAAI,OAAO,iBAAiB,KAAK,WAAW;YAAE,OAAO,KAAK,CAAC;QAC3D,MAAM,GAAG,GAAI,UAAgD,CAAC,mBAAmB,CAAC;QAClF,OAAO,GAAG,KAAK,KAAK,CAAC;IACvB,CAAC;IAED,YAAY,UAAwC,EAAE;QACpD,mEAAmE;QACnE,oEAAoE;QACpE,sEAAsE;QACtE,8CAA8C;QAC9C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;IAC7C,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CAAC,MAAyB,EAAE,UAA+B,EAAE;QACxE,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YAC5B,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,cAAc,CAAC,4BAA4B,CAAC,CAAC,CAAC;QAC/F,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,eAAe,CAAC;QAC/C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,EAAE,GAAG,SAAS,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC;YAC1D,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAC/C,IAAI,aAAa,GAAwB,IAAI,CAAC;YAC9C,IAAI,MAAc,CAAC;YACnB,IAAI,CAAC;gBACH,oEAAoE;gBACpE,gEAAgE;gBAChE,0CAA0C;gBAC1C,MAAM,GAAG,IAAI,CAAC,SAAS,KAAK,IAAI;oBAC9B,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;oBAChD,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YACrF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBACxG,OAAO;YACT,CAAC;YACD,uEAAuE;YACvE,wEAAwE;YACxE,4EAA4E;YAC5E,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,+CAA+C;YAEtG,2EAA2E;YAC3E,uEAAuE;YACvE,qEAAqE;YACrE,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,MAAM,MAAM,GAAG,CAAC,MAAgB,EAAE,EAAE;gBAClC,IAAI,OAAO;oBAAE,OAAO;gBACpB,MAAM,CAAC,GAAG,EAAE;oBACV,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;wBAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;oBAC/C,MAAM,CAAC,SAAS,EAAE,CAAC;gBACrB,CAAC,CAAC,CAAC;gBACH,MAAM,CAAC,MAAM,IAAI,cAAc,EAAE,CAAC,CAAC;YACrC,CAAC,CAAC;YACF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAE/B,oEAAoE;YACpE,kEAAkE;YAClE,yEAAyE;YACzE,0EAA0E;YAC1E,0EAA0E;YAC1E,yEAAyE;YACzE,0EAA0E;YAC1E,uEAAuE;YACvE,oCAAoC;YACpC,IAAI,WAAuC,CAAC;YAC5C,MAAM,aAAa,GAAG,IAAI,mBAAmB,EAAE,CAAC;YAChD,MAAM,OAAO,GAAG,CAAC,OAA2B,EAAE,EAAE;gBAC9C,uEAAuE;gBACvE,wEAAwE;gBACxE,WAAW,KAAK,qBAAqB,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,IAAI,SAAS,CAAC,CAAC;gBACrG,OAAO,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YACrD,CAAC,CAAC;YAEF,MAAM,MAAM,GAAG,CAAC,OAAmB,EAAE,EAAE;gBACrC,OAAO,GAAG,IAAI,CAAC;gBACf,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACrB,aAAa,CAAC,KAAK,EAAE,CAAC;gBACtB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;gBACxB,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;gBACtB,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC7B,IAAI,aAAa,IAAI,OAAO,CAAC,MAAM;oBAAE,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;gBAChG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAClC,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC;YAEF,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;gBAC9B,aAAa,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC5C,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1E,CAAC;YAED,MAAM,CAAC,SAAS,GAAG,CAAC,KAA8C,EAAE,EAAE;gBACpE,MAAM,GAAG,GAAY,KAAK,CAAC,IAAI,CAAC;gBAChC,IAAI,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC;oBAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;oBAAC,OAAO;gBAAC,CAAC;gBAC9E,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC;gBACvB,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,KAAK,EAAE;oBAAE,OAAO;gBAElC,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;oBACjB,KAAK,UAAU;wBACb,OAAO,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;wBACnC,OAAO;oBAET,KAAK,YAAY;wBACf,OAAO,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;wBACpC,OAAO;oBAET,KAAK,eAAe,CAAC,CAAC,CAAC;wBACrB,IAAI,CAAC;4BACH,aAAa,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BAC1C,IAAI,CAAC,OAAO,CAAC,cAAc;gCAAE,OAAO;4BACpC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;4BAChF,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;wBAClC,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,wDAAwD;4BACxD,yCAAyC;4BACzC,OAAO,CAAC,IAAI,CAAC,8CAA8C,EAAE,GAAG,CAAC,CAAC;wBACpE,CAAC;wBACD,OAAO;oBACT,CAAC;oBAED,KAAK,UAAU,CAAC,CAAC,CAAC;wBAChB,IAAI,CAAC;4BACH,iEAAiE;4BACjE,+DAA+D;4BAC/D,iEAAiE;4BACjE,MAAM,CAAC,SAAS,EAAE,CAAC;4BACnB,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;gCAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;4BAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;4BAC3E,OAAO,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;4BACvC,MAAM,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;4BACjB,OAAO,CAAC,SAAS,CAAC,CAAC;wBACrB,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,MAAM,CAAC,GAAG,EAAE;gCACV,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;oCAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;4BACjD,CAAC,CAAC,CAAC;4BACH,MAAM,CAAC,IAAI,KAAK,CAAC,4BAA4B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;wBACpG,CAAC;wBACD,OAAO;oBACT,CAAC;oBAED,KAAK,OAAO;wBACV,8DAA8D;wBAC9D,gEAAgE;wBAChE,4CAA4C;wBAC5C,0DAA0D;wBAC1D,0CAA0C;wBAC1C,wBAAwB,CAAC,UAAU,EAAE,GAAG,CAAC,iBAAiB,EAAE,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;wBAC1F,MAAM,CAAC,GAAG,EAAE;4BACV,MAAM,CAAC,SAAS,EAAE,CAAC;4BACnB,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;gCAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;wBACjD,CAAC,CAAC,CAAC;wBACH,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC/B,OAAO;gBACX,CAAC;YACH,CAAC,CAAC;YAEF,MAAM,CAAC,OAAO,GAAG,CAAC,GAAG,EAAE,EAAE;gBACvB,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,CAAC,SAAS,EAAE,CAAC;oBACnB,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;wBAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACjD,CAAC,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,KAAK,CAAC,wBAAwB,GAAG,CAAC,OAAO,IAAI,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAChF,CAAC,CAAC;YAEF,MAAM,CAAC,cAAc,GAAG,GAAG,EAAE;gBAC3B,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,CAAC,SAAS,EAAE,CAAC;oBACnB,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;wBAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACjD,CAAC,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC,CAAC;YACvF,CAAC,CAAC;YAEF,mEAAmE;YACnE,mEAAmE;YACnE,yBAAyB;YACzB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC;gBACtC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;gBAC9B,IAAI,CAAC;oBACH,MAAM,CAAC,WAAW,CAAC;wBACjB,IAAI,EAAE,kBAAkB;wBACxB,GAAG,EAAE,MAAM,CAAC,GAAG;wBACf,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;wBACzC,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;qBAClD,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,IAAI,CAAC,8CAA8C,EAAE,GAAG,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;YAED,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC3C,MAAM,KAAK,GAA6B;gBACtC,IAAI,EAAE,OAAO;gBACb,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;gBAC5C,cAAc,EAAE,iBAAiB;gBACjC,EAAE;gBACF,MAAM;gBACN,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;gBACtD,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;aAC/C,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,sEAAsE;gBACtE,+DAA+D;gBAC/D,sEAAsE;gBACtE,iEAAiE;gBACjE,mEAAmE;gBACnE,gEAAgE;gBAChE,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,CAAC,SAAS,EAAE,CAAC;oBACnB,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;wBAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACjD,CAAC,CAAC,CAAC;gBACH,MAAM,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CACZ,GAAgB,EAChB,MAAmB,EACnB,OAAoB,EACpB,gBAAyB,EACzB,oBAA6B;QAE7B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,iBAAiB,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,CAAC;YAC1F,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBACtB,IAAI,EAAE,kBAAkB;gBACxB,GAAG;gBACH,MAAM;gBACN,OAAO;gBACP,gBAAgB;gBAChB,oBAAoB;aACrB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,mDAAmD,EAAE,GAAG,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACH,SAAS;QACP,sEAAsE;QACtE,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC;YAAE,MAAM,EAAE,CAAC;QACvD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,sEAAsE;YACtE,kEAAkE;YAClE,iCAAiC;YACjC,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,CAAC;IACH,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ifc-lite/parser",
3
- "version": "9.1.0",
3
+ "version": "9.4.0",
4
4
  "description": "IFC/STEP parser for IFC-Lite",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -20,15 +20,16 @@
20
20
  "decimal.js": "^10.6.0",
21
21
  "fflate": "^0.8.3",
22
22
  "jszip": "^3.10.2",
23
+ "@ifc-lite/data": "^6.2.0",
23
24
  "@ifc-lite/encoding": "^2.3.0",
24
- "@ifc-lite/data": "^6.1.0",
25
- "@ifc-lite/ifcx": "^4.3.0",
26
- "@ifc-lite/wasm": "^10.2.0",
25
+ "@ifc-lite/ifcx": "^4.4.0",
26
+ "@ifc-lite/load-trace": "^0.2.0",
27
+ "@ifc-lite/wasm": "^10.4.0",
27
28
  "@ifc-lite/wasm-lifecycle": "^0.2.0"
28
29
  },
29
30
  "devDependencies": {
30
31
  "typescript": "^6.0.3",
31
- "vitest": "^5.0.2"
32
+ "vitest": "^5.0.3"
32
33
  },
33
34
  "license": "MPL-2.0",
34
35
  "author": "Louis True",