@ifc-lite/parser 3.12.0 → 3.15.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.
- package/dist/ifc-schema.d.ts +54 -1
- package/dist/ifc-schema.d.ts.map +1 -1
- package/dist/ifc-schema.js +118 -6
- package/dist/ifc-schema.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +23 -1
- package/dist/index.js.map +1 -1
- package/dist/iso8601-duration.d.ts +44 -0
- package/dist/iso8601-duration.d.ts.map +1 -0
- package/dist/iso8601-duration.js +145 -0
- package/dist/iso8601-duration.js.map +1 -0
- package/dist/schedule-extractor.d.ts +2 -5
- package/dist/schedule-extractor.d.ts.map +1 -1
- package/dist/schedule-extractor.js +8 -27
- package/dist/schedule-extractor.js.map +1 -1
- package/dist/schedule-serializer.d.ts.map +1 -1
- package/dist/schedule-serializer.js +11 -24
- package/dist/schedule-serializer.js.map +1 -1
- package/package.json +4 -4
package/dist/ifc-schema.d.ts
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolve an entity name through {@link ENTITY_NAME_ALIASES}, returning the
|
|
3
|
+
* name unchanged when it is not an alias.
|
|
4
|
+
*
|
|
5
|
+
* Exported because consumers that index the bundled schema union themselves
|
|
6
|
+
* (the STEP exporter's enum-slot resolution) have to canonicalize the SAME way
|
|
7
|
+
* {@link getAttributeNamesAcrossSchemas} does, or their indices refer to a
|
|
8
|
+
* different attribute list than the names they are indices into. Copying the
|
|
9
|
+
* table into another package would give it a third home — this one and
|
|
10
|
+
* `rust/core/src/legacy_entities.rs` are already two.
|
|
11
|
+
*/
|
|
12
|
+
export declare function resolveEntityNameAlias(type: string): string;
|
|
1
13
|
/**
|
|
2
14
|
* Get all attribute names for an IFC entity type in STEP positional order.
|
|
3
15
|
* Walks the inheritance chain (root → leaf) via the generated schema registry.
|
|
@@ -15,9 +27,43 @@ export declare function getAttributeNames(type: string): string[];
|
|
|
15
27
|
*/
|
|
16
28
|
export declare function getAttributeNamesAcrossSchemas(type: string): string[];
|
|
17
29
|
/**
|
|
18
|
-
* Check if a type is
|
|
30
|
+
* Check if a type is a real IFC entity class in any bundled schema.
|
|
31
|
+
*
|
|
32
|
+
* Answers for the union of every bundled IFC schema (2X3 + 4 + 4X3), falling
|
|
33
|
+
* back to the parser's IFC4_ADD2_TC1 codegen pin — the same union-first,
|
|
34
|
+
* pin-second order as {@link getInheritanceChain}. Answering from the pin alone
|
|
35
|
+
* rejected roughly 251 perfectly valid classes: the IFC2X3 ones IFC4 dropped
|
|
36
|
+
* (`IfcMove`, `IfcScheduleTimeControl`, `IfcSpaceProgram`, …) and the IFC4X3
|
|
37
|
+
* infrastructure ones it never had (`IfcRoad`, `IfcSignal`, `IfcAlignment`, …).
|
|
38
|
+
* That made `@ifc-lite/sdk`'s `addEntity` refuse to author them at all (#2003).
|
|
39
|
+
*
|
|
40
|
+
* Still a real guard, not a pass-through: a typo (`IfcWal`), a vendor extension
|
|
41
|
+
* and an EXPRESS defined type (`IfcLengthMeasure`, `IfcArcIndex`) are all
|
|
42
|
+
* rejected.
|
|
43
|
+
*
|
|
44
|
+
* Known-ness, not instantiability: abstract supertypes (`IfcProduct`,
|
|
45
|
+
* `IfcRoot`) answer `true`, as they always have — that is a different
|
|
46
|
+
* predicate, {@link isInstantiable}, and it belongs at the authoring
|
|
47
|
+
* boundary, not in a name-registry check (#2035).
|
|
19
48
|
*/
|
|
20
49
|
export declare function isKnownType(type: string): boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Check whether a type is a real IFC entity class that can actually be
|
|
52
|
+
* instantiated — `known && !abstract`.
|
|
53
|
+
*
|
|
54
|
+
* {@link isKnownType} answers a different question ("is this a real EXPRESS
|
|
55
|
+
* class name") and always has: `IfcProduct`, `IfcRoot` and `IfcRelationship`
|
|
56
|
+
* are real classes and abstract EXPRESS supertypes, so `isKnownType` answers
|
|
57
|
+
* `true` for them, and authoring code that only checked known-ness could
|
|
58
|
+
* write `#N=IFCPRODUCT(...)` into an exported file, which is not valid IFC
|
|
59
|
+
* (#2035).
|
|
60
|
+
*
|
|
61
|
+
* Same union-first, pin-second resolution order as {@link isKnownType}: the
|
|
62
|
+
* bundled schema union's `abstract` flag and the codegen pin's `isAbstract`
|
|
63
|
+
* flag agree on every class both know, so there is no reconciliation
|
|
64
|
+
* question, only which table happens to carry the name.
|
|
65
|
+
*/
|
|
66
|
+
export declare function isInstantiable(type: string): boolean;
|
|
21
67
|
/**
|
|
22
68
|
* Get the full inheritance chain for an IFC entity type.
|
|
23
69
|
* Returns PascalCase names, leaf → root order (e.g. `['IfcAirTerminal',
|
|
@@ -40,8 +86,15 @@ export declare function getAttributeNameAt(type: string, index: number): string
|
|
|
40
86
|
*
|
|
41
87
|
* - `'IFCWALL'` → `'IfcWall'`
|
|
42
88
|
* - `'IfcWall'` → `'IfcWall'` (unchanged)
|
|
89
|
+
* - `'IFCROAD'` → `'IfcRoad'` (IFC4X3, outside the codegen pin)
|
|
90
|
+
* - `'ifcmove'` → `'IfcMove'` (IFC2X3, dropped in IFC4)
|
|
43
91
|
* - `'IfcVendorExtensionFoo'` → `'IfcVendorExtensionFoo'` (unchanged — unknown to registry)
|
|
44
92
|
*
|
|
93
|
+
* Resolves against the bundled schema union first and the IFC4_ADD2_TC1 pin
|
|
94
|
+
* second, matching {@link isKnownType} — the pin alone left every class outside
|
|
95
|
+
* it falling through to "preserve as-is", so an IFC4X3 class kept whatever
|
|
96
|
+
* casing the caller happened to type instead of being canonicalized (#2003).
|
|
97
|
+
*
|
|
45
98
|
* Used at user-facing API boundaries to keep the public contract on
|
|
46
99
|
* canonical PascalCase regardless of how the caller spells the type.
|
|
47
100
|
*/
|
package/dist/ifc-schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ifc-schema.d.ts","sourceRoot":"","sources":["../src/ifc-schema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ifc-schema.d.ts","sourceRoot":"","sources":["../src/ifc-schema.ts"],"names":[],"mappings":"AA8CA;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3D;AAoED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAGxD;AAED;;;;;;;;;GASG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAMrE;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGjD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAMpD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAI1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG7E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQzD"}
|
package/dist/ifc-schema.js
CHANGED
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
* The registry is code-generated from the IFC EXPRESS schema via `@ifc-lite/codegen`.
|
|
8
8
|
* Do NOT hardcode entity types or attributes here; regenerate instead.
|
|
9
9
|
*/
|
|
10
|
-
import { getAllAttributesForEntity, isKnownEntity, getInheritanceChainForEntity, getEntityMetadata } from './generated/schema-registry.js';
|
|
11
|
-
import { ENTITIES_IFC2X3, ENTITIES_IFC4, ENTITIES_IFC4X3 } from '@ifc-lite/data';
|
|
10
|
+
import { SCHEMA_REGISTRY, getAllAttributesForEntity, isKnownEntity, getInheritanceChainForEntity, getEntityMetadata } from './generated/schema-registry.js';
|
|
11
|
+
import { ENTITIES_IFC2X3, ENTITIES_IFC4, ENTITIES_IFC4X3, IFC_DATA_TYPES } from '@ifc-lite/data';
|
|
12
12
|
// Union map across every bundled IFC schema (2X3 + 4 + 4X3). The parser
|
|
13
13
|
// has to categorize entities from ANY schema the user loads — so the
|
|
14
14
|
// inheritance walk must consult more than the IFC4 registry the parser's
|
|
@@ -39,9 +39,68 @@ const ENTITY_NAME_ALIASES = {
|
|
|
39
39
|
IFCVOIDSTRATUM: 'IfcGeotechnicalStratum',
|
|
40
40
|
IFCWATERSTRATUM: 'IfcGeotechnicalStratum',
|
|
41
41
|
};
|
|
42
|
+
/**
|
|
43
|
+
* Resolve an entity name through {@link ENTITY_NAME_ALIASES}, returning the
|
|
44
|
+
* name unchanged when it is not an alias.
|
|
45
|
+
*
|
|
46
|
+
* Exported because consumers that index the bundled schema union themselves
|
|
47
|
+
* (the STEP exporter's enum-slot resolution) have to canonicalize the SAME way
|
|
48
|
+
* {@link getAttributeNamesAcrossSchemas} does, or their indices refer to a
|
|
49
|
+
* different attribute list than the names they are indices into. Copying the
|
|
50
|
+
* table into another package would give it a third home — this one and
|
|
51
|
+
* `rust/core/src/legacy_entities.rs` are already two.
|
|
52
|
+
*/
|
|
53
|
+
export function resolveEntityNameAlias(type) {
|
|
54
|
+
return ENTITY_NAME_ALIASES[type.toUpperCase()] ?? type;
|
|
55
|
+
}
|
|
56
|
+
// The bundled `ENTITIES_*` tables are generated from buildingSMART's
|
|
57
|
+
// SchemaInfo dumps, which list EXPRESS *defined types* (IfcLengthMeasure,
|
|
58
|
+
// IfcBoolean, IfcCountMeasure, …) alongside real ENTITY declarations. Those
|
|
59
|
+
// are not instantiable, so an "is this a class?" predicate has to subtract
|
|
60
|
+
// them or it would start answering yes for `IfcLengthMeasure`, which the IFC4
|
|
61
|
+
// codegen pin has always answered no for.
|
|
62
|
+
//
|
|
63
|
+
// Two authoritative tables say which names are not ENTITY declarations, and
|
|
64
|
+
// both are needed — measured over the 1159 union rows:
|
|
65
|
+
// - `IFC_DATA_TYPES` (cross-schema, IDS-derived): 132 rows.
|
|
66
|
+
// - `SCHEMA_REGISTRY.types` (the pin's own EXPRESS TYPE map): 6 more that
|
|
67
|
+
// the IDS table omits — IfcBinary, IfcArcIndex, IfcLineIndex,
|
|
68
|
+
// IfcComplexNumber, IfcCompoundPlaneAngleMeasure, IfcPropertySetDefinitionSet.
|
|
69
|
+
// `.enums` and `.selects` subtract nothing today and are folded in because the
|
|
70
|
+
// question is "does the pin classify this name as a non-ENTITY declaration",
|
|
71
|
+
// and answering it from two thirds of the pin's own classification would be
|
|
72
|
+
// the arbitrary choice. Asserted in `known-type-across-schemas.test.ts`.
|
|
73
|
+
//
|
|
74
|
+
// None of the pin's 776 ENTITY names appears in any of these tables, so the
|
|
75
|
+
// subtraction cannot change an IFC4 answer — and could not reject a pinned
|
|
76
|
+
// class even if it did, because `isKnownType` falls back to `isKnownEntity`.
|
|
77
|
+
const NON_ENTITY_NAMES_UPPER = new Set([
|
|
78
|
+
...IFC_DATA_TYPES.map(t => t.name.toUpperCase()),
|
|
79
|
+
...Object.keys(SCHEMA_REGISTRY.types).map(n => n.toUpperCase()),
|
|
80
|
+
...Object.keys(SCHEMA_REGISTRY.enums).map(n => n.toUpperCase()),
|
|
81
|
+
...Object.keys(SCHEMA_REGISTRY.selects).map(n => n.toUpperCase()),
|
|
82
|
+
]);
|
|
83
|
+
/**
|
|
84
|
+
* Entity-metadata lookup across the bundled schema union (2X3 + 4 + 4X3) —
|
|
85
|
+
* the counterpart of the generated `getEntityMetadata`, which only knows the
|
|
86
|
+
* IFC4_ADD2_TC1 codegen pin and so answers `undefined` for the 251 classes
|
|
87
|
+
* outside it (`IfcMove`, `IfcScheduleTimeControl`, `IfcRoad`, `IfcSignal`, …).
|
|
88
|
+
*
|
|
89
|
+
* Deliberately does NOT resolve {@link ENTITY_NAME_ALIASES}: an alias maps a
|
|
90
|
+
* leaf to its nearest schema-known *supertype*, which is what an inheritance
|
|
91
|
+
* walk wants and the opposite of what a name-canonicalizer wants — resolving
|
|
92
|
+
* it here would turn `normalizeIfcTypeName('IfcSolidStratum')` into
|
|
93
|
+
* `'IfcGeotechnicalStratum'`, silently changing the caller's class.
|
|
94
|
+
*/
|
|
95
|
+
function getEntityInfoAcrossSchemas(type) {
|
|
96
|
+
const upper = type.toUpperCase();
|
|
97
|
+
if (NON_ENTITY_NAMES_UPPER.has(upper))
|
|
98
|
+
return undefined;
|
|
99
|
+
return ENTITY_INFO_BY_UPPER.get(upper);
|
|
100
|
+
}
|
|
42
101
|
function getInheritanceChainFromSchemaUnion(type) {
|
|
43
102
|
const upper = type.toUpperCase();
|
|
44
|
-
const canonical =
|
|
103
|
+
const canonical = resolveEntityNameAlias(type);
|
|
45
104
|
const start = ENTITY_INFO_BY_UPPER.get(canonical.toUpperCase());
|
|
46
105
|
if (!start)
|
|
47
106
|
return null;
|
|
@@ -82,17 +141,60 @@ export function getAttributeNamesAcrossSchemas(type) {
|
|
|
82
141
|
const pinned = getAttributeNames(type);
|
|
83
142
|
if (pinned.length > 0)
|
|
84
143
|
return pinned;
|
|
85
|
-
const
|
|
86
|
-
const canonical = ENTITY_NAME_ALIASES[upper] ?? type;
|
|
144
|
+
const canonical = resolveEntityNameAlias(type);
|
|
87
145
|
const info = ENTITY_INFO_BY_UPPER.get(canonical.toUpperCase());
|
|
88
146
|
return info ? [...info.attributes] : [];
|
|
89
147
|
}
|
|
90
148
|
/**
|
|
91
|
-
* Check if a type is
|
|
149
|
+
* Check if a type is a real IFC entity class in any bundled schema.
|
|
150
|
+
*
|
|
151
|
+
* Answers for the union of every bundled IFC schema (2X3 + 4 + 4X3), falling
|
|
152
|
+
* back to the parser's IFC4_ADD2_TC1 codegen pin — the same union-first,
|
|
153
|
+
* pin-second order as {@link getInheritanceChain}. Answering from the pin alone
|
|
154
|
+
* rejected roughly 251 perfectly valid classes: the IFC2X3 ones IFC4 dropped
|
|
155
|
+
* (`IfcMove`, `IfcScheduleTimeControl`, `IfcSpaceProgram`, …) and the IFC4X3
|
|
156
|
+
* infrastructure ones it never had (`IfcRoad`, `IfcSignal`, `IfcAlignment`, …).
|
|
157
|
+
* That made `@ifc-lite/sdk`'s `addEntity` refuse to author them at all (#2003).
|
|
158
|
+
*
|
|
159
|
+
* Still a real guard, not a pass-through: a typo (`IfcWal`), a vendor extension
|
|
160
|
+
* and an EXPRESS defined type (`IfcLengthMeasure`, `IfcArcIndex`) are all
|
|
161
|
+
* rejected.
|
|
162
|
+
*
|
|
163
|
+
* Known-ness, not instantiability: abstract supertypes (`IfcProduct`,
|
|
164
|
+
* `IfcRoot`) answer `true`, as they always have — that is a different
|
|
165
|
+
* predicate, {@link isInstantiable}, and it belongs at the authoring
|
|
166
|
+
* boundary, not in a name-registry check (#2035).
|
|
92
167
|
*/
|
|
93
168
|
export function isKnownType(type) {
|
|
169
|
+
if (getEntityInfoAcrossSchemas(type))
|
|
170
|
+
return true;
|
|
94
171
|
return isKnownEntity(type);
|
|
95
172
|
}
|
|
173
|
+
/**
|
|
174
|
+
* Check whether a type is a real IFC entity class that can actually be
|
|
175
|
+
* instantiated — `known && !abstract`.
|
|
176
|
+
*
|
|
177
|
+
* {@link isKnownType} answers a different question ("is this a real EXPRESS
|
|
178
|
+
* class name") and always has: `IfcProduct`, `IfcRoot` and `IfcRelationship`
|
|
179
|
+
* are real classes and abstract EXPRESS supertypes, so `isKnownType` answers
|
|
180
|
+
* `true` for them, and authoring code that only checked known-ness could
|
|
181
|
+
* write `#N=IFCPRODUCT(...)` into an exported file, which is not valid IFC
|
|
182
|
+
* (#2035).
|
|
183
|
+
*
|
|
184
|
+
* Same union-first, pin-second resolution order as {@link isKnownType}: the
|
|
185
|
+
* bundled schema union's `abstract` flag and the codegen pin's `isAbstract`
|
|
186
|
+
* flag agree on every class both know, so there is no reconciliation
|
|
187
|
+
* question, only which table happens to carry the name.
|
|
188
|
+
*/
|
|
189
|
+
export function isInstantiable(type) {
|
|
190
|
+
const info = getEntityInfoAcrossSchemas(type);
|
|
191
|
+
if (info)
|
|
192
|
+
return !info.abstract;
|
|
193
|
+
const metadata = getEntityMetadata(type);
|
|
194
|
+
if (metadata)
|
|
195
|
+
return !metadata.isAbstract;
|
|
196
|
+
return false;
|
|
197
|
+
}
|
|
96
198
|
/**
|
|
97
199
|
* Get the full inheritance chain for an IFC entity type.
|
|
98
200
|
* Returns PascalCase names, leaf → root order (e.g. `['IfcAirTerminal',
|
|
@@ -123,14 +225,24 @@ export function getAttributeNameAt(type, index) {
|
|
|
123
225
|
*
|
|
124
226
|
* - `'IFCWALL'` → `'IfcWall'`
|
|
125
227
|
* - `'IfcWall'` → `'IfcWall'` (unchanged)
|
|
228
|
+
* - `'IFCROAD'` → `'IfcRoad'` (IFC4X3, outside the codegen pin)
|
|
229
|
+
* - `'ifcmove'` → `'IfcMove'` (IFC2X3, dropped in IFC4)
|
|
126
230
|
* - `'IfcVendorExtensionFoo'` → `'IfcVendorExtensionFoo'` (unchanged — unknown to registry)
|
|
127
231
|
*
|
|
232
|
+
* Resolves against the bundled schema union first and the IFC4_ADD2_TC1 pin
|
|
233
|
+
* second, matching {@link isKnownType} — the pin alone left every class outside
|
|
234
|
+
* it falling through to "preserve as-is", so an IFC4X3 class kept whatever
|
|
235
|
+
* casing the caller happened to type instead of being canonicalized (#2003).
|
|
236
|
+
*
|
|
128
237
|
* Used at user-facing API boundaries to keep the public contract on
|
|
129
238
|
* canonical PascalCase regardless of how the caller spells the type.
|
|
130
239
|
*/
|
|
131
240
|
export function normalizeIfcTypeName(type) {
|
|
132
241
|
if (typeof type !== 'string' || type.length === 0)
|
|
133
242
|
return type;
|
|
243
|
+
const info = getEntityInfoAcrossSchemas(type);
|
|
244
|
+
if (info)
|
|
245
|
+
return info.name;
|
|
134
246
|
const metadata = getEntityMetadata(type);
|
|
135
247
|
if (metadata)
|
|
136
248
|
return metadata.name;
|
package/dist/ifc-schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ifc-schema.js","sourceRoot":"","sources":["../src/ifc-schema.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;;GAKG;AAEH,OAAO,EAAE,yBAAyB,EAAE,aAAa,EAAE,4BAA4B,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"ifc-schema.js","sourceRoot":"","sources":["../src/ifc-schema.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -24,13 +24,14 @@ export { extractGeoreferencing, transformToWorld, transformToLocal, getCoordinat
|
|
|
24
24
|
export { extractClassifications, getClassificationsForElement, getClassificationCodeForElement, getClassificationPath, groupElementsByClassification, type ClassificationsData, type Classification, type ClassificationReference } from './classification-extractor.js';
|
|
25
25
|
export { extractScheduleOnDemand, parseIso8601Duration, type ScheduleExtraction, type ScheduleTaskInfo, type ScheduleTaskTimeInfo, type ScheduleSequenceInfo, type WorkScheduleInfo, type SequenceTypeEnum, type TaskDurationType, } from './schedule-extractor.js';
|
|
26
26
|
export { serializeScheduleToStep, type SerializeScheduleOptions, type SerializeScheduleResult, } from './schedule-serializer.js';
|
|
27
|
+
export { secondsToIso8601Duration } from './iso8601-duration.js';
|
|
27
28
|
export { deterministicGlobalId } from './deterministic-global-id.js';
|
|
28
29
|
export { SCHEMA_REGISTRY, getEntityMetadata, getAllAttributesForEntity, getInheritanceChainForEntity, isKnownEntity } from './generated/schema-registry.js';
|
|
29
30
|
export type * from './generated/entities.js';
|
|
30
31
|
export * from './generated/enums.js';
|
|
31
32
|
export { serializeValue, toStepLine, generateHeader, generateStepFile, parseStepValue, ref, enumVal, isEntityRef, isEnumValue, type StepValue, type StepEntity, type EntityRef as StepEntityRef, type EnumValue, } from './generated/serializers.js';
|
|
32
33
|
export * from './types.js';
|
|
33
|
-
export { getAttributeNames, getAttributeNamesAcrossSchemas, getAttributeNameAt, isKnownType, normalizeIfcTypeName } from './ifc-schema.js';
|
|
34
|
+
export { getAttributeNames, getAttributeNamesAcrossSchemas, getAttributeNameAt, isKnownType, isInstantiable, normalizeIfcTypeName, resolveEntityNameAlias, getInheritanceChain as getInheritanceChainAcrossSchemas } from './ifc-schema.js';
|
|
34
35
|
import type { ParseResult } from './types.js';
|
|
35
36
|
import { type IfcDataStore } from './columnar-parser.js';
|
|
36
37
|
import { type PreScannedEntityIndex, type WasmScanApi } from './entity-scanner.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -42,6 +42,11 @@ export { extractScheduleOnDemand, parseIso8601Duration, } from './schedule-extra
|
|
|
42
42
|
// IFC4 STEP serializer for schedule entities — produces ready-to-splice
|
|
43
43
|
// `#N=IFC...(...)` lines from a `ScheduleExtraction`.
|
|
44
44
|
export { serializeScheduleToStep, } from './schedule-serializer.js';
|
|
45
|
+
// Signed ISO 8601 duration codec — shared by the schedule extractor (decode)
|
|
46
|
+
// and serializer (encode), and by any other schedule consumer that needs to
|
|
47
|
+
// go from seconds to an `IfcDuration` string or back. See the module doc
|
|
48
|
+
// comment for the signed-duration interop tradeoff.
|
|
49
|
+
export { secondsToIso8601Duration } from './iso8601-duration.js';
|
|
45
50
|
// Deterministic 22-char GlobalId generator — shared by every call site
|
|
46
51
|
// that mints a synthetic IFC-style id (serializer fallback, schedule
|
|
47
52
|
// generator, user-authored tasks). Never re-implement this; always
|
|
@@ -53,7 +58,24 @@ export * from './generated/enums.js';
|
|
|
53
58
|
// STEP serialization support for IFC export
|
|
54
59
|
export { serializeValue, toStepLine, generateHeader, generateStepFile, parseStepValue, ref, enumVal, isEntityRef, isEnumValue, } from './generated/serializers.js';
|
|
55
60
|
export * from './types.js';
|
|
56
|
-
|
|
61
|
+
// `getInheritanceChainAcrossSchemas` is the counterpart of
|
|
62
|
+
// `getAttributeNamesAcrossSchemas`: it answers for every bundled schema
|
|
63
|
+
// (IFC2X3 + IFC4 + IFC4X3), where the generated `getInheritanceChainForEntity`
|
|
64
|
+
// above only knows the codegen pin (IFC4_ADD2_TC1) and returns an empty chain
|
|
65
|
+
// for a class the pin does not carry — `IfcMove`, `IfcSpaceProgram`, `IfcRoad`.
|
|
66
|
+
// Anything that decides *what kind of thing* an entity is must use this one.
|
|
67
|
+
// `isKnownType` and `normalizeIfcTypeName` are cross-schema too, despite the
|
|
68
|
+
// unqualified names — they were pin-only until #2003.
|
|
69
|
+
//
|
|
70
|
+
// NAMING FOOTGUN, recorded rather than fixed here: the pinned helper has the
|
|
71
|
+
// shorter, more obvious name (`getInheritanceChainForEntity`) and the correct
|
|
72
|
+
// one carries the qualifier, so reaching for the wrong one is the path of least
|
|
73
|
+
// resistance — five call sites have now been fixed after the fact (#2001, #2003,
|
|
74
|
+
// #2014, this one). The qualifier belongs on the *pinned* function
|
|
75
|
+
// (`…ForEntityInIfc4Pin`), leaving the union walker the plain name, so the easy
|
|
76
|
+
// choice is the safe one. That is a rename across every consumer and does not
|
|
77
|
+
// belong in a fix PR; it needs its own.
|
|
78
|
+
export { getAttributeNames, getAttributeNamesAcrossSchemas, getAttributeNameAt, isKnownType, isInstantiable, normalizeIfcTypeName, resolveEntityNameAlias, getInheritanceChain as getInheritanceChainAcrossSchemas } from './ifc-schema.js';
|
|
57
79
|
import { EntityIndexBuilder } from './entity-index.js';
|
|
58
80
|
import { EntityExtractor } from './entity-extractor.js';
|
|
59
81
|
import { PropertyExtractor } from './property-extractor.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Signed ISO 8601 duration codec, shared by the schedule extractor (decode,
|
|
3
|
+
* for `IfcLagTime`/`IfcTaskTime` durations coming out of a STEP file) and the
|
|
4
|
+
* schedule serializer (encode, for durations going back in).
|
|
5
|
+
*
|
|
6
|
+
* Kept as one pair of functions rather than two private copies so the
|
|
7
|
+
* round-trip property — `parseIso8601Duration(secondsToIso8601Duration(s)) ===
|
|
8
|
+
* s` for any representable `s` — is visible in one place instead of having to
|
|
9
|
+
* be checked twice against drifting implementations.
|
|
10
|
+
*
|
|
11
|
+
* The sign is a deliberate, documented departure from strict ISO 8601 (which
|
|
12
|
+
* has no negative durations): IFC schedule lag can be a lead time (a
|
|
13
|
+
* successor starting before its predecessor finishes), and losing that sign
|
|
14
|
+
* silently turns a lead into a lag of the same magnitude — a swing of twice
|
|
15
|
+
* the lag's size for anyone reading the exported file. ISO 8601-2 does define
|
|
16
|
+
* a signed extension (`-P2D`), which is what `IfcDuration`'s `STRING` type
|
|
17
|
+
* accepts here. Some third-party `^P...` IfcDuration parsers reject the
|
|
18
|
+
* leading `-` outright; that tradeoff is accepted deliberately in exchange
|
|
19
|
+
* for a lossless round trip through this codec. See
|
|
20
|
+
* `.changeset/lag-time-lead-magnitude.md` and `docs/guide/schedule-import.md`.
|
|
21
|
+
*/
|
|
22
|
+
/**
|
|
23
|
+
* Parse an ISO-8601 duration string (e.g. "P1D", "PT2H30M", "P1Y2M3DT4H5M6S",
|
|
24
|
+
* or the signed extension "-P2D") into a number of seconds. Returns
|
|
25
|
+
* undefined on invalid input, including a bare "P"/"PT" (no components) or a
|
|
26
|
+
* bare "-P"/"-PT" with a sign but nothing else to negate.
|
|
27
|
+
*/
|
|
28
|
+
export declare function parseIso8601Duration(value: string | undefined): number | undefined;
|
|
29
|
+
/**
|
|
30
|
+
* Format seconds (signed) as an ISO 8601 duration string suitable for
|
|
31
|
+
* `IfcDuration`. Prefers the coarsest integer unit that divides cleanly to
|
|
32
|
+
* avoid noisy "PT432000S" style output for round values like "P5D". Negative
|
|
33
|
+
* input emits the ISO 8601-2 signed form ("-P2D") — see the module doc
|
|
34
|
+
* comment for why.
|
|
35
|
+
*
|
|
36
|
+
* Non-finite input (`NaN`, `±Infinity`) returns `undefined` rather than
|
|
37
|
+
* `PT0S`: a zero lag is a legitimate value, so returning it for broken
|
|
38
|
+
* input would fabricate a real-looking answer from a malformed one (e.g. an
|
|
39
|
+
* unparsable MSPDI `LinkLag` propagating as `NaN` through `Math.round` in
|
|
40
|
+
* `build.ts`). `undefined` here means "emit no IFCLAGTIME", matching how an
|
|
41
|
+
* unrepresentable lag is already handled by the caller.
|
|
42
|
+
*/
|
|
43
|
+
export declare function secondsToIso8601Duration(seconds: number): string | undefined;
|
|
44
|
+
//# sourceMappingURL=iso8601-duration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iso8601-duration.d.ts","sourceRoot":"","sources":["../src/iso8601-duration.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAsClF;AAiCD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAsB5E"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
2
|
+
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
3
|
+
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
|
4
|
+
/**
|
|
5
|
+
* Signed ISO 8601 duration codec, shared by the schedule extractor (decode,
|
|
6
|
+
* for `IfcLagTime`/`IfcTaskTime` durations coming out of a STEP file) and the
|
|
7
|
+
* schedule serializer (encode, for durations going back in).
|
|
8
|
+
*
|
|
9
|
+
* Kept as one pair of functions rather than two private copies so the
|
|
10
|
+
* round-trip property — `parseIso8601Duration(secondsToIso8601Duration(s)) ===
|
|
11
|
+
* s` for any representable `s` — is visible in one place instead of having to
|
|
12
|
+
* be checked twice against drifting implementations.
|
|
13
|
+
*
|
|
14
|
+
* The sign is a deliberate, documented departure from strict ISO 8601 (which
|
|
15
|
+
* has no negative durations): IFC schedule lag can be a lead time (a
|
|
16
|
+
* successor starting before its predecessor finishes), and losing that sign
|
|
17
|
+
* silently turns a lead into a lag of the same magnitude — a swing of twice
|
|
18
|
+
* the lag's size for anyone reading the exported file. ISO 8601-2 does define
|
|
19
|
+
* a signed extension (`-P2D`), which is what `IfcDuration`'s `STRING` type
|
|
20
|
+
* accepts here. Some third-party `^P...` IfcDuration parsers reject the
|
|
21
|
+
* leading `-` outright; that tradeoff is accepted deliberately in exchange
|
|
22
|
+
* for a lossless round trip through this codec. See
|
|
23
|
+
* `.changeset/lag-time-lead-magnitude.md` and `docs/guide/schedule-import.md`.
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* Parse an ISO-8601 duration string (e.g. "P1D", "PT2H30M", "P1Y2M3DT4H5M6S",
|
|
27
|
+
* or the signed extension "-P2D") into a number of seconds. Returns
|
|
28
|
+
* undefined on invalid input, including a bare "P"/"PT" (no components) or a
|
|
29
|
+
* bare "-P"/"-PT" with a sign but nothing else to negate.
|
|
30
|
+
*/
|
|
31
|
+
export function parseIso8601Duration(value) {
|
|
32
|
+
if (!value)
|
|
33
|
+
return undefined;
|
|
34
|
+
const match = value.match(/^(-)?P(?:(\d+(?:\.\d+)?)Y)?(?:(\d+(?:\.\d+)?)M)?(?:(\d+(?:\.\d+)?)W)?(?:(\d+(?:\.\d+)?)D)?(?:T(?:(\d+(?:\.\d+)?)H)?(?:(\d+(?:\.\d+)?)M)?(?:(\d+(?:\.\d+)?)S)?)?$/);
|
|
35
|
+
if (!match)
|
|
36
|
+
return undefined;
|
|
37
|
+
const [, sign, y, mo, w, d, h, mi, s] = match;
|
|
38
|
+
// Reject bare "P" / "PT" (and the signed "-P" / "-PT") which would
|
|
39
|
+
// otherwise silently return 0 and mask malformed IfcLagTime / IfcTaskTime
|
|
40
|
+
// durations.
|
|
41
|
+
if (y === undefined && mo === undefined && w === undefined && d === undefined
|
|
42
|
+
&& h === undefined && mi === undefined && s === undefined) {
|
|
43
|
+
return undefined;
|
|
44
|
+
}
|
|
45
|
+
// Reject a trailing bare "T" with no time component (e.g. "P1DT"): the
|
|
46
|
+
// date part is present so the block above doesn't catch it, but a "T"
|
|
47
|
+
// that introduces nothing is malformed for the same reason bare "P"/"PT"
|
|
48
|
+
// is — it's cheap to emit and easy to misread as having a time part.
|
|
49
|
+
if (/T$/.test(value)) {
|
|
50
|
+
return undefined;
|
|
51
|
+
}
|
|
52
|
+
const yearSec = 365.2425 * 86400;
|
|
53
|
+
const monthSec = yearSec / 12;
|
|
54
|
+
const magnitude = (y ? parseFloat(y) * yearSec : 0) +
|
|
55
|
+
(mo ? parseFloat(mo) * monthSec : 0) +
|
|
56
|
+
(w ? parseFloat(w) * 7 * 86400 : 0) +
|
|
57
|
+
(d ? parseFloat(d) * 86400 : 0) +
|
|
58
|
+
(h ? parseFloat(h) * 3600 : 0) +
|
|
59
|
+
(mi ? parseFloat(mi) * 60 : 0) +
|
|
60
|
+
(s ? parseFloat(s) : 0);
|
|
61
|
+
// Refuse a magnitude large enough to overflow to Infinity, before the
|
|
62
|
+
// sign is applied — otherwise "-P<huge>Y" would slip through as
|
|
63
|
+
// -Infinity while "P<huge>Y" is caught. secondsToIso8601Duration already
|
|
64
|
+
// refuses non-finite input on encode, so accepting it here would be the
|
|
65
|
+
// decoder taking a value its own encoder will never produce.
|
|
66
|
+
if (!Number.isFinite(magnitude))
|
|
67
|
+
return undefined;
|
|
68
|
+
return sign ? -magnitude : magnitude;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Render a finite number as plain decimal — never JS exponent notation —
|
|
72
|
+
* using the shortest round-trip digit string (`Number#toString`) as the
|
|
73
|
+
* source of digits. `Number#toString` already picks the shortest decimal
|
|
74
|
+
* that round-trips back to the same float; the only thing it gets "wrong"
|
|
75
|
+
* for our purposes is switching to exponent notation ("1e+21", "1e-7")
|
|
76
|
+
* outside a certain magnitude range, which is exactly the range that
|
|
77
|
+
* matters for large or tiny lag values. This shifts the decimal point by
|
|
78
|
+
* hand instead of using `toFixed`, which either truncates precision (small
|
|
79
|
+
* fixed digit count) or throws (`toFixed` is limited to 100 fraction
|
|
80
|
+
* digits and doesn't help with large integer exponents at all).
|
|
81
|
+
*/
|
|
82
|
+
function toPlainDecimalString(n) {
|
|
83
|
+
const s = n.toString();
|
|
84
|
+
const expMatch = s.match(/^(-?)(\d+)(?:\.(\d+))?e([+-]\d+)$/i);
|
|
85
|
+
if (!expMatch)
|
|
86
|
+
return s;
|
|
87
|
+
const [, sign, intDigits, fracDigits = '', expStr] = expMatch;
|
|
88
|
+
const exp = parseInt(expStr, 10);
|
|
89
|
+
const digits = intDigits + fracDigits;
|
|
90
|
+
const pointPos = intDigits.length + exp;
|
|
91
|
+
let result;
|
|
92
|
+
if (pointPos <= 0) {
|
|
93
|
+
result = `0.${'0'.repeat(-pointPos)}${digits}`;
|
|
94
|
+
}
|
|
95
|
+
else if (pointPos >= digits.length) {
|
|
96
|
+
result = digits + '0'.repeat(pointPos - digits.length);
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
result = `${digits.slice(0, pointPos)}.${digits.slice(pointPos)}`;
|
|
100
|
+
}
|
|
101
|
+
return sign + result;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Format seconds (signed) as an ISO 8601 duration string suitable for
|
|
105
|
+
* `IfcDuration`. Prefers the coarsest integer unit that divides cleanly to
|
|
106
|
+
* avoid noisy "PT432000S" style output for round values like "P5D". Negative
|
|
107
|
+
* input emits the ISO 8601-2 signed form ("-P2D") — see the module doc
|
|
108
|
+
* comment for why.
|
|
109
|
+
*
|
|
110
|
+
* Non-finite input (`NaN`, `±Infinity`) returns `undefined` rather than
|
|
111
|
+
* `PT0S`: a zero lag is a legitimate value, so returning it for broken
|
|
112
|
+
* input would fabricate a real-looking answer from a malformed one (e.g. an
|
|
113
|
+
* unparsable MSPDI `LinkLag` propagating as `NaN` through `Math.round` in
|
|
114
|
+
* `build.ts`). `undefined` here means "emit no IFCLAGTIME", matching how an
|
|
115
|
+
* unrepresentable lag is already handled by the caller.
|
|
116
|
+
*/
|
|
117
|
+
export function secondsToIso8601Duration(seconds) {
|
|
118
|
+
if (!Number.isFinite(seconds))
|
|
119
|
+
return undefined;
|
|
120
|
+
if (seconds === 0)
|
|
121
|
+
return 'PT0S';
|
|
122
|
+
const sign = seconds < 0 ? '-' : '';
|
|
123
|
+
const abs = Math.abs(seconds);
|
|
124
|
+
// Only a whole number of seconds can promote to a coarser unit — rounding
|
|
125
|
+
// a fractional value into days/hours/minutes here would be the same silent
|
|
126
|
+
// precision loss as the seconds case below, just hidden behind a coarser
|
|
127
|
+
// label.
|
|
128
|
+
if (Number.isInteger(abs)) {
|
|
129
|
+
if (abs % 86_400 === 0)
|
|
130
|
+
return `${sign}P${toPlainDecimalString(abs / 86_400)}D`;
|
|
131
|
+
if (abs % 3_600 === 0)
|
|
132
|
+
return `${sign}PT${toPlainDecimalString(abs / 3_600)}H`;
|
|
133
|
+
if (abs % 60 === 0)
|
|
134
|
+
return `${sign}PT${toPlainDecimalString(abs / 60)}M`;
|
|
135
|
+
return `${sign}PT${toPlainDecimalString(abs)}S`;
|
|
136
|
+
}
|
|
137
|
+
// A fractional lag survives as a decimal on the seconds component (ISO
|
|
138
|
+
// 8601 permits a decimal fraction there) instead of being rounded away.
|
|
139
|
+
// Uses the shortest round-trip representation (see `toPlainDecimalString`)
|
|
140
|
+
// rather than a fixed nine-decimal floor, so precision beyond nine
|
|
141
|
+
// fractional digits — and magnitudes that would otherwise force exponent
|
|
142
|
+
// notation, like 1e21 or 1e-10 — both survive intact.
|
|
143
|
+
return `${sign}PT${toPlainDecimalString(abs)}S`;
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=iso8601-duration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iso8601-duration.js","sourceRoot":"","sources":["../src/iso8601-duration.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { IfcDataStore } from './columnar-parser.js';
|
|
2
|
+
import { parseIso8601Duration } from './iso8601-duration.js';
|
|
3
|
+
export { parseIso8601Duration };
|
|
2
4
|
export type SequenceTypeEnum = 'START_START' | 'START_FINISH' | 'FINISH_START' | 'FINISH_FINISH' | 'USERDEFINED' | 'NOTDEFINED';
|
|
3
5
|
export type TaskDurationType = 'WORKTIME' | 'ELAPSEDTIME' | 'NOTDEFINED';
|
|
4
6
|
export interface ScheduleTaskTimeInfo {
|
|
@@ -79,11 +81,6 @@ export interface ScheduleExtraction {
|
|
|
79
81
|
/** True if we encountered any scheduling entity (useful for empty-state UI). */
|
|
80
82
|
hasSchedule: boolean;
|
|
81
83
|
}
|
|
82
|
-
/**
|
|
83
|
-
* Parse an ISO-8601 duration string (e.g. "P1D", "PT2H30M", "P1Y2M3DT4H5M6S")
|
|
84
|
-
* into a number of seconds. Returns undefined on invalid input.
|
|
85
|
-
*/
|
|
86
|
-
export declare function parseIso8601Duration(value: string | undefined): number | undefined;
|
|
87
84
|
/**
|
|
88
85
|
* Extract all scheduling data from a parsed IFC store.
|
|
89
86
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule-extractor.d.ts","sourceRoot":"","sources":["../src/schedule-extractor.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"schedule-extractor.d.ts","sourceRoot":"","sources":["../src/schedule-extractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,14 @@
|
|
|
12
12
|
* with best-effort degradation.
|
|
13
13
|
*/
|
|
14
14
|
import { EntityExtractor } from './entity-extractor.js';
|
|
15
|
+
import { parseIso8601Duration } from './iso8601-duration.js';
|
|
16
|
+
// Re-exported for backward compatibility — this is where consumers
|
|
17
|
+
// (including this package's own public surface, see index.ts) have always
|
|
18
|
+
// imported it from. The implementation itself now lives in
|
|
19
|
+
// `iso8601-duration.ts`, alongside its encode counterpart
|
|
20
|
+
// `secondsToIso8601Duration`, so the round-trip property between the two is
|
|
21
|
+
// visible in one place.
|
|
22
|
+
export { parseIso8601Duration };
|
|
15
23
|
/** IFC4 STEP attribute indices for IfcTask. */
|
|
16
24
|
const TASK_ATTR = {
|
|
17
25
|
GlobalId: 0,
|
|
@@ -172,33 +180,6 @@ function durationTypeFromString(s) {
|
|
|
172
180
|
return undefined;
|
|
173
181
|
}
|
|
174
182
|
}
|
|
175
|
-
/**
|
|
176
|
-
* Parse an ISO-8601 duration string (e.g. "P1D", "PT2H30M", "P1Y2M3DT4H5M6S")
|
|
177
|
-
* into a number of seconds. Returns undefined on invalid input.
|
|
178
|
-
*/
|
|
179
|
-
export function parseIso8601Duration(value) {
|
|
180
|
-
if (!value)
|
|
181
|
-
return undefined;
|
|
182
|
-
const match = value.match(/^P(?:(\d+(?:\.\d+)?)Y)?(?:(\d+(?:\.\d+)?)M)?(?:(\d+(?:\.\d+)?)W)?(?:(\d+(?:\.\d+)?)D)?(?:T(?:(\d+(?:\.\d+)?)H)?(?:(\d+(?:\.\d+)?)M)?(?:(\d+(?:\.\d+)?)S)?)?$/);
|
|
183
|
-
if (!match)
|
|
184
|
-
return undefined;
|
|
185
|
-
const [, y, mo, w, d, h, mi, s] = match;
|
|
186
|
-
// Reject bare "P" / "PT" which would otherwise silently return 0 and mask
|
|
187
|
-
// malformed IfcLagTime / IfcTaskTime durations.
|
|
188
|
-
if (y === undefined && mo === undefined && w === undefined && d === undefined
|
|
189
|
-
&& h === undefined && mi === undefined && s === undefined) {
|
|
190
|
-
return undefined;
|
|
191
|
-
}
|
|
192
|
-
const yearSec = 365.2425 * 86400;
|
|
193
|
-
const monthSec = yearSec / 12;
|
|
194
|
-
return ((y ? parseFloat(y) * yearSec : 0) +
|
|
195
|
-
(mo ? parseFloat(mo) * monthSec : 0) +
|
|
196
|
-
(w ? parseFloat(w) * 7 * 86400 : 0) +
|
|
197
|
-
(d ? parseFloat(d) * 86400 : 0) +
|
|
198
|
-
(h ? parseFloat(h) * 3600 : 0) +
|
|
199
|
-
(mi ? parseFloat(mi) * 60 : 0) +
|
|
200
|
-
(s ? parseFloat(s) : 0));
|
|
201
|
-
}
|
|
202
183
|
function extractTaskTime(extractor, store, taskTimeId) {
|
|
203
184
|
const ref = store.entityIndex.byId.get(taskTimeId);
|
|
204
185
|
if (!ref)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule-extractor.js","sourceRoot":"","sources":["../src/schedule-extractor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schedule-extractor.js","sourceRoot":"","sources":["../src/schedule-extractor.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;;;;;;GASG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,mEAAmE;AACnE,0EAA0E;AAC1E,2DAA2D;AAC3D,0DAA0D;AAC1D,4EAA4E;AAC5E,wBAAwB;AACxB,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAEhC,+CAA+C;AAC/C,MAAM,SAAS,GAAG;IAChB,QAAQ,EAAE,CAAC;IACX,IAAI,EAAE,CAAC;IACP,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,CAAC;IACb,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,CAAC;IAClB,MAAM,EAAE,CAAC;IACT,UAAU,EAAE,CAAC;IACb,WAAW,EAAE,CAAC;IACd,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,EAAE;IACZ,cAAc,EAAE,EAAE;CACV,CAAC;AAEX;;;;;;GAMG;AACH,MAAM,aAAa,GAAG;IACpB,QAAQ,EAAE,CAAC;IACX,IAAI,EAAE,CAAC;IACP,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,CAAC;IACb,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,UAAU,EAAE,CAAC;IACb,WAAW,EAAE,CAAC;IACd,QAAQ,EAAE,CAAC;CACH,CAAC;AAEX,MAAM,cAAc,GAAG;IACrB,IAAI,EAAE,CAAC;IACP,YAAY,EAAE,CAAC;IACf,gBAAgB,EAAE,CAAC;IACnB,aAAa,EAAE,CAAC;IAChB,cAAc,EAAE,CAAC;IACjB,UAAU,EAAE,CAAC;IACb,WAAW,EAAE,CAAC;IACd,SAAS,EAAE,CAAC;IACZ,UAAU,EAAE,EAAE;IACd,SAAS,EAAE,EAAE;IACb,UAAU,EAAE,EAAE;IACd,UAAU,EAAE,EAAE;IACd,UAAU,EAAE,EAAE;IACd,cAAc,EAAE,EAAE;IAClB,WAAW,EAAE,EAAE;IACf,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE,EAAE;IACjB,UAAU,EAAE,EAAE;CACN,CAAC;AAEX,MAAM,iBAAiB,GAAG;IACxB,QAAQ,EAAE,CAAC;IACX,eAAe,EAAE,CAAC;IAClB,cAAc,EAAE,CAAC;IACjB,OAAO,EAAE,CAAC;IACV,YAAY,EAAE,CAAC;IACf,uBAAuB,EAAE,CAAC;CAClB,CAAC;AAEX,MAAM,2BAA2B,GAAG;IAClC,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,CAAC;CACV,CAAC;AAEX,MAAM,2BAA2B,GAAG;IAClC,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,CAAC;CACV,CAAC;AAEX,MAAM,cAAc,GAAG;IACrB,cAAc,EAAE,CAAC;IACjB,cAAc,EAAE,CAAC;CACT,CAAC;AAEX,MAAM,kBAAkB,GAAG;IACzB,QAAQ,EAAE,CAAC;IACX,IAAI,EAAE,CAAC;IACP,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,CAAC;IACb,cAAc,EAAE,CAAC;IACjB,YAAY,EAAE,CAAC;IACf,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,EAAE;IACd,SAAS,EAAE,EAAE;IACb,UAAU,EAAE,EAAE;IACd,cAAc,EAAE,EAAE;CACV,CAAC;AAEX,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAE1C,MAAM,aAAa,GAAG;IACpB,QAAQ,EAAE,CAAC;IACX,YAAY,EAAE,CAAC;CACP,CAAC;AA+FX,SAAS,QAAQ,CAAC,CAAU;IAC1B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IACpD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,QAAQ,CAAC,CAAU;IAC1B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC;IAC1D,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,SAAS,CAAC,CAAU;IAC3B,IAAI,OAAO,CAAC,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC;IACrC,oEAAoE;IACpE,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QAC1C,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,GAAG;YAAE,OAAO,KAAK,CAAC;IAC7C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,MAAM,CAAC,CAAU;IACxB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC9D,iCAAiC;IACjC,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACzC,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACtC,CAAC;AAED,SAAS,KAAK,CAAC,CAAU;IACvB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IACpE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,SAAS,CAAC,CAAU;IAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAClB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,EAAE,KAAK,SAAS;YAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,sBAAsB,CAAC,CAAqB;IACnD,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,aAAa,CAAC;QACnB,KAAK,cAAc,CAAC;QACpB,KAAK,cAAc,CAAC;QACpB,KAAK,eAAe,CAAC;QACrB,KAAK,aAAa,CAAC;QACnB,KAAK,YAAY;YACf,OAAO,CAAC,CAAC;QACX;YACE,OAAO,cAAc,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,CAAqB;IACnD,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,UAAU,CAAC;QAChB,KAAK,aAAa,CAAC;QACnB,KAAK,YAAY;YACf,OAAO,CAAC,CAAC;QACX;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CACtB,SAA0B,EAC1B,KAAmB,EACnB,UAAkB;IAElB,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnD,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACpC,IAAI,CAAC,KAAK,aAAa,IAAI,CAAC,KAAK,sBAAsB;QAAE,OAAO,SAAS,CAAC;IAC1E,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAClC,OAAO;QACL,YAAY,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC;QAC5E,gBAAgB,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;QAC9D,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;QACxD,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAC1D,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAClD,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACpD,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChD,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAClD,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChD,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAClD,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACnD,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAClD,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAC1D,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACpD,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACtD,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;QACxD,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,SAA0B,EAC1B,KAAmB,EACnB,KAAa;IAEb,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACpB,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,YAAY;QAAE,OAAO,EAAE,CAAC;IAC1D,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC3C,oEAAoE;IACpE,mDAAmD;IACnD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACnD,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,QAAQ,KAAK,aAAa,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5D,OAAO,EAAE,OAAO,EAAE,oBAAoB,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QACnE,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,EAAE,OAAO,EAAE,oBAAoB,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACzE,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAmB;IACzD,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAC1B,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;IAC7E,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC;IACxC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC5C,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IAC5D,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IACpD,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;IACrD,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,IAAI,EAAE,CAAC;IACxE,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,IAAI,EAAE,CAAC;IACxE,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IAEpD,MAAM,MAAM,GACV,OAAO,CAAC,MAAM;QACZ,eAAe,CAAC,MAAM;QACtB,WAAW,CAAC,MAAM;QAClB,SAAS,CAAC,MAAM;QAClB,CAAC,CAAC;IAEJ,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;IAC7E,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,KAAK,QAAQ,CAAC;IAErD,mDAAmD;IACnD,MAAM,eAAe,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC5D,+DAA+D;IAC/D,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEtD,wCAAwC;IACxC,KAAK,MAAM,SAAS,IAAI,OAAO,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAElC,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;YAC3D,MAAM,IAAI,GAAqB;gBAC7B,SAAS;gBACT,QAAQ;gBACR,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;gBAC3C,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;gBACnD,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;gBACjD,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBACjD,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBACzC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;gBACjD,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,IAAI,KAAK;gBAC7D,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;gBAC7C,cAAc,EAAE,EAAE;gBAClB,iBAAiB,EAAE,EAAE;gBACrB,gBAAgB,EAAE,EAAE;gBACpB,4BAA4B,EAAE,EAAE;aACjC,CAAC;YACF,IAAI,QAAQ;gBAAE,mBAAmB,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAC3D,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACvC,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;YACvD,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;YAChD,MAAM,IAAI,GAAqB;gBAC7B,SAAS;gBACT,QAAQ;gBACR,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;gBACvC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;gBAC/C,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;gBAC7C,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;gBACrD,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;gBACvD,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACrC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;gBAC7C,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI,KAAK;gBACzD,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBACzC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;gBACnD,QAAQ,EAAE,UAAU,KAAK,SAAS;oBAChC,CAAC,CAAC,eAAe,CAAC,SAAS,EAAE,KAAK,EAAE,UAAU,CAAC;oBAC/C,CAAC,CAAC,SAAS;gBACb,cAAc,EAAE,EAAE;gBAClB,iBAAiB,EAAE,EAAE;gBACrB,gBAAgB,EAAE,EAAE;gBACpB,4BAA4B,EAAE,EAAE;aACjC,CAAC;YACF,IAAI,QAAQ;gBAAE,mBAAmB,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAC3D,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,mDAAmD;IACnD,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC;QAC7D,IAAI,MAAM,KAAK,SAAS;YAAE,SAAS;QACnC,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU;YAAE,SAAS,CAAC,0CAA0C;QACrE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC/C,IAAI,CAAC,SAAS;gBAAE,SAAS;YACzB,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;gBAC9B,SAAS,CAAC,cAAc,GAAG,UAAU,CAAC,QAAQ,CAAC;YACjD,CAAC;QACH,CAAC;IACH,CAAC;IAED,uEAAuE;IACvE,KAAK,MAAM,KAAK,IAAI,oBAAoB,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,2BAA2B,CAAC,eAAe,CAAC,CAAC,CAAC;QACrE,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,2BAA2B,CAAC,cAAc,CAAC,CAAC,CAAC;QAC1E,IAAI,MAAM,KAAK,SAAS;YAAE,SAAS;QACnC,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,KAAK,MAAM,SAAS,IAAI,QAAQ,EAAE,CAAC;YACjC,qEAAqE;YACrE,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC;YAClE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACvC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;YACtC,IAAI,GAAG;gBAAE,mBAAmB,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,+CAA+C;IAC/C,MAAM,aAAa,GAAuB,EAAE,CAAC;IAC7C,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAA4B,CAAC;IAEhE,MAAM,eAAe,GAAG,CACtB,SAAiB,EACjB,IAAiC,EACR,EAAE;QAC3B,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QACtB,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACzB,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAC;QACzE,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACpD,MAAM,IAAI,GAAqB;YAC7B,SAAS;YACT,IAAI;YACJ,QAAQ;YACR,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI;YACtC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC5C,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAClD,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC9C,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACpC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACtC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACxC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC1C,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAChD,aAAa,EAAE,EAAE;SAClB,CAAC;QACF,IAAI,QAAQ;YAAE,mBAAmB,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,KAAK,MAAM,EAAE,IAAI,eAAe,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;QACjD,IAAI,IAAI,EAAE,CAAC;YACT,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzB,mBAAmB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC7C,IAAI,IAAI,EAAE,CAAC;YACT,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzB,mBAAmB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,KAAK,MAAM,KAAK,IAAI,oBAAoB,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,2BAA2B,CAAC,eAAe,CAAC,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,2BAA2B,CAAC,cAAc,CAAC,CAAC,CAAC;QACzE,IAAI,SAAS,KAAK,SAAS;YAAE,SAAS;QACtC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,QAAQ;YAAE,SAAS;QACxB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC3C,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,MAAM,SAAS,GAA2B,EAAE,CAAC;IAC7C,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC,CAAC;QAC/D,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC;QAC7D,IAAI,UAAU,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS;YAAE,SAAS;QAClE,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO;YAAE,SAAS;QACpC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;QAClD,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,eAAe,EAAE,GAC1D,KAAK,KAAK,SAAS;YACjB,CAAC,CAAC,qBAAqB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC;YAChD,CAAC,CAAC,EAAE,CAAC;QACT,SAAS,CAAC,IAAI,CAAC;YACb,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE;YACvD,oBAAoB,EAAE,QAAQ,CAAC,QAAQ;YACvC,mBAAmB,EAAE,OAAO,CAAC,QAAQ;YACrC,YAAY,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC;YAC/E,uBAAuB,EAAE,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;YAC/E,cAAc;YACd,eAAe;SAChB,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,aAAa;QACb,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;QAC3C,SAAS;QACT,WAAW,EAAE,IAAI;KAClB,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule-serializer.d.ts","sourceRoot":"","sources":["../src/schedule-serializer.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAInB,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"schedule-serializer.d.ts","sourceRoot":"","sources":["../src/schedule-serializer.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAInB,MAAM,yBAAyB,CAAC;AAIjC,MAAM,WAAW,wBAAwB;IACvC,0DAA0D;IAC1D,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,CAAC,eAAe,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;CAC3E;AAED,MAAM,WAAW,uBAAuB;IACtC,oDAAoD;IACpD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,KAAK,EAAE;QACL,aAAa,EAAE,MAAM,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,gBAAgB,EAAE,MAAM,CAAC;QACzB,gBAAgB,EAAE,MAAM,CAAC;QACzB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAgDD,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE,wBAAwB,GAChC,uBAAuB,CAmIzB"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
3
3
|
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
|
4
4
|
import { deterministicGlobalId } from './deterministic-global-id.js';
|
|
5
|
+
import { secondsToIso8601Duration } from './iso8601-duration.js';
|
|
5
6
|
// ─────────────────────────────────────────────────────────────────────────
|
|
6
7
|
// STEP encoding helpers (kept local — same convention as @ifc-lite/create)
|
|
7
8
|
// ─────────────────────────────────────────────────────────────────────────
|
|
@@ -26,22 +27,6 @@ function optReal(v) {
|
|
|
26
27
|
function ownerRef(ownerHistoryId) {
|
|
27
28
|
return ownerHistoryId !== undefined ? `#${ownerHistoryId}` : '$';
|
|
28
29
|
}
|
|
29
|
-
/**
|
|
30
|
-
* Format seconds as an ISO 8601 duration string suitable for IfcDuration.
|
|
31
|
-
* Prefers the coarsest integer unit that divides cleanly to avoid noisy
|
|
32
|
-
* "PT432000S" style output for round values like "P5D".
|
|
33
|
-
*/
|
|
34
|
-
function secondsToIso8601Duration(seconds) {
|
|
35
|
-
if (!Number.isFinite(seconds) || seconds <= 0)
|
|
36
|
-
return 'PT0S';
|
|
37
|
-
if (seconds % 86_400 === 0)
|
|
38
|
-
return `P${seconds / 86_400}D`;
|
|
39
|
-
if (seconds % 3_600 === 0)
|
|
40
|
-
return `PT${seconds / 3_600}H`;
|
|
41
|
-
if (seconds % 60 === 0)
|
|
42
|
-
return `PT${seconds / 60}M`;
|
|
43
|
-
return `PT${Math.round(seconds)}S`;
|
|
44
|
-
}
|
|
45
30
|
function refList(ids) {
|
|
46
31
|
return ids.length === 0 ? '$' : `(${ids.map(id => `#${id}`).join(',')})`;
|
|
47
32
|
}
|
|
@@ -153,14 +138,16 @@ export function serializeScheduleToStep(data, options) {
|
|
|
153
138
|
const relatedId = taskExpressIdByGlobalId.get(seq.relatedTaskGlobalId);
|
|
154
139
|
if (relatingId === undefined || relatedId === undefined)
|
|
155
140
|
continue;
|
|
156
|
-
// Preserve lag on export even when the upstream extractor
|
|
157
|
-
// numeric seconds value (e.g. IFC2X3 round-trips where the
|
|
158
|
-
// IfcDuration string got dropped
|
|
159
|
-
//
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
141
|
+
// Preserve lag (and lead) on export even when the upstream extractor
|
|
142
|
+
// only knew the numeric seconds value (e.g. IFC2X3 round-trips where the
|
|
143
|
+
// original IfcDuration string got dropped, or a schedule built in
|
|
144
|
+
// memory that only ever set `timeLagSeconds`). `secondsToIso8601Duration`
|
|
145
|
+
// is signed — a lead (negative `timeLagSeconds`) emits the ISO 8601-2
|
|
146
|
+
// signed form (`-P2D`) rather than losing its sign or its magnitude. See
|
|
147
|
+
// `iso8601-duration.ts` for why: a dropped or wrongly-signed lag is
|
|
148
|
+
// silently lossy in our own round trip, which is the worse failure.
|
|
149
|
+
const lagDuration = seq.timeLagDuration ??
|
|
150
|
+
(seq.timeLagSeconds !== undefined ? secondsToIso8601Duration(seq.timeLagSeconds) : undefined);
|
|
164
151
|
let lagRef = '$';
|
|
165
152
|
if (lagDuration) {
|
|
166
153
|
const lagId = nextId++;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule-serializer.js","sourceRoot":"","sources":["../src/schedule-serializer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schedule-serializer.js","sourceRoot":"","sources":["../src/schedule-serializer.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AA+B/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAoCjE,4EAA4E;AAC5E,2EAA2E;AAC3E,4EAA4E;AAE5E,SAAS,MAAM,CAAC,CAAS;IACvB,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,MAAM,CAAC,CAA4B;IAC1C,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;AAC5E,CAAC;AAED,SAAS,OAAO,CAAC,CAA4B;IAC3C,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AACpE,CAAC;AAED,SAAS,OAAO,CAAC,CAA6B;IAC5C,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;AACjE,CAAC;AAED,SAAS,OAAO,CAAC,CAA4B;IAC3C,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,CAAC;IACrE,2EAA2E;IAC3E,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,QAAQ,CAAC,cAAkC;IAClD,OAAO,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,cAAc,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;AACnE,CAAC;AAED,SAAS,OAAO,CAAC,GAAa;IAC5B,OAAO,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AAC3E,CAAC;AAED,SAAS,cAAc,CAAC,QAA4B,EAAE,IAAY;IAChE,2EAA2E;IAC3E,sEAAsE;IACtE,2EAA2E;IAC3E,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,QAAQ,CAAC;IACrD,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC;AAED,4EAA4E;AAC5E,mCAAmC;AACnC,4EAA4E;AAE5E,MAAM,UAAU,uBAAuB,CACrC,IAAwB,EACxB,OAAiC;IAEjC,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC5B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG;QACZ,aAAa,EAAE,CAAC;QAChB,KAAK,EAAE,CAAC;QACR,SAAS,EAAE,CAAC;QACZ,SAAS,EAAE,CAAC;QACZ,QAAQ,EAAE,CAAC;QACX,gBAAgB,EAAE,CAAC;QACnB,gBAAgB,EAAE,CAAC;QACnB,QAAQ,EAAE,CAAC;KACZ,CAAC;IAEF,sEAAsE;IACtE,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1D,sEAAsE;IACtE,MAAM,2BAA2B,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE9D,qEAAqE;IACrE,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACpC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QACpB,2BAA2B,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjD,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;QAC5C,KAAK,CAAC,aAAa,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,qEAAqE;IACrE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,UAA8B,CAAC;QACnC,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,UAAU,GAAG,MAAM,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;YAC5C,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC;QACvB,CAAC;QACD,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QACpB,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;QACnD,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,qEAAqE;IACrE,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACpC,MAAM,SAAS,GAAG,2BAA2B,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC/D,IAAI,SAAS,KAAK,SAAS;YAAE,SAAS;QACtC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,OAAO,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC;YACvC,MAAM,GAAG,GAAG,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACjD,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACnC,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,qBAAqB,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnE,KAAK,CAAC,IAAI,CACR,IAAI,KAAK,4BAA4B,MAAM,KAAK,KAAK,QAAQ,OAAO,CAAC,OAAO,CAAC,OAAO,SAAS,IAAI,CAClG,CAAC;QACF,KAAK,CAAC,gBAAgB,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,oEAAoE;IACpE,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACjD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9D,IAAI,QAAQ,KAAK,SAAS;YAAE,SAAS;QACrC,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YAC7C,MAAM,GAAG,GAAG,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClD,IAAI,GAAG,KAAK,SAAS;gBAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACpC,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,qBAAqB,CAAC,aAAa,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACrE,KAAK,CAAC,IAAI,CACR,IAAI,KAAK,iBAAiB,MAAM,KAAK,KAAK,SAAS,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CACrF,CAAC;QACF,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC;IACtB,CAAC;IAED,oEAAoE;IACpE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACxF,MAAM,MAAM,GAAG,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,MAAM,KAAK,SAAS;YAAE,SAAS;QACnC,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC5E,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACtC,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,qBAAqB,CAAC,eAAe,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACrE,KAAK,CAAC,IAAI,CACR,IAAI,KAAK,4BAA4B,MAAM,KAAK,KAAK,QAAQ,OAAO,CAAC,UAAU,CAAC,OAAO,MAAM,MAAM,CACpG,CAAC;QACF,KAAK,CAAC,gBAAgB,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,oEAAoE;IACpE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACjC,MAAM,UAAU,GAAG,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QACzE,MAAM,SAAS,GAAG,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACvE,IAAI,UAAU,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS;YAAE,SAAS;QAElE,qEAAqE;QACrE,yEAAyE;QACzE,kEAAkE;QAClE,0EAA0E;QAC1E,sEAAsE;QACtE,yEAAyE;QACzE,oEAAoE;QACpE,oEAAoE;QACpE,MAAM,WAAW,GACf,GAAG,CAAC,eAAe;YACnB,CAAC,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAChG,IAAI,MAAM,GAAG,GAAG,CAAC;QACjB,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CACR,IAAI,KAAK,kCAAkC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAChF,CAAC;YACF,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACrB,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC;QACtB,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,GAAG,CAAC,oBAAoB,IAAI,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAC9G,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,cAAc,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACpD,KAAK,CAAC,IAAI,CACR,IAAI,KAAK,oBAAoB,MAAM,KAAK,KAAK,SAAS,UAAU,KAAK,SAAS,IAAI,MAAM,IAAI,OAAO,IAAI,OAAO,IAAI,CACnH,CAAC;QACF,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAClC,CAAC;AAED,4EAA4E;AAC5E,oBAAoB;AACpB,4EAA4E;AAE5E,SAAS,gBAAgB,CAAC,EAAU,EAAE,EAAoB,EAAE,KAAa;IACvE,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,iBAAiB,CAAC;IAC1E,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACzE,4EAA4E;IAC5E,0EAA0E;IAC1E,yEAAyE;IACzE,gDAAgD;IAChD,MAAM,YAAY,GAAG,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,UAAU,IAAI,qBAAqB,CAAC;IAC/F,2EAA2E;IAC3E,gEAAgE;IAChE,yEAAyE;IACzE,wEAAwE;IACxE,yEAAyE;IACzE,6BAA6B;IAC7B,MAAM,SAAS,GAAG,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,UAAU,IAAI,YAAY,CAAC;IAChE,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,IAAI,SAAS,CAAC;IAC9C,+DAA+D;IAC/D,yDAAyD;IACzD,oEAAoE;IACpE,OAAO;QACL,IAAI,EAAE,IAAI,MAAM,GAAG;QACnB,IAAI,QAAQ,IAAI;QAChB,GAAG,KAAK,GAAG;QACX,IAAI,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI;QACvB,GAAG,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG;QAC5B,IAAI;QACJ,GAAG,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,GAAG;QAC/B,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI;QAC5B,IAAI;QACJ,GAAG,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG;QACxB,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG;QACzB,IAAI;QACJ,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI;QACzB,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI;QAC1B,GAAG,OAAO,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI;KAClC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC;AAED,SAAS,eAAe,CAAC,IAAsB;IAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;IACxB,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACrB,OAAO,OAAO,CACZ,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,gBAAgB;WACtD,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,cAAc;WACnD,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,UAAU;WAC5D,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,UAAU;WAC9D,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS,CAC9E,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EAAU,EAAE,IAAsB;IACvD,MAAM,CAAC,GAAG,IAAI,CAAC,QAAS,CAAC;IACzB,sDAAsD;IACtD,yDAAyD;IACzD,oEAAoE;IACpE,+DAA+D;IAC/D,kCAAkC;IAClC,OAAO;QACL,IAAI,EAAE,eAAe;QACrB,QAAQ;QACR,GAAG,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG;QAC7B,GAAG,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG;QAChC,GAAG,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG;QAC7B,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG;QAC9B,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG;QAC1B,GAAG,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG;QAC3B,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG;QACzB,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG;QAC1B,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG;QACzB,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG;QAC1B,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG;QAC3B,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG;QAC1B,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG;QAC9B,GAAG,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG;QAC3B,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG;QAC5B,GAAG,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG;QAC7B,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI;KAC7B,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC;AAED,SAAS,SAAS,CAChB,EAAU,EACV,IAAsB,EACtB,KAAa,EACb,UAA8B;IAE9B,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACpE,MAAM,WAAW,GAAG,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IACtE,+DAA+D;IAC/D,0EAA0E;IAC1E,2CAA2C;IAC3C,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,IAAI,QAAQ,IAAI;QAChB,GAAG,KAAK,GAAG;QACX,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QACzB,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;QAC9B,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG;QAC7B,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG;QACjC,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG;QAClC,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG;QACzB,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG;QAC7B,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG;QACtC,GAAG,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;QACnE,GAAG,WAAW,GAAG;QACjB,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI;KACpC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC;AAED,SAAS,iBAAiB,CACxB,IAAsB,EACtB,QAA8C;IAE9C,8EAA8E;IAC9E,4EAA4E;IAC5E,0EAA0E;IAC1E,yEAAyE;IACzE,aAAa;IACb,EAAE;IACF,sEAAsE;IACtE,yEAAyE;IACzE,8CAA8C;IAC9C,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACpF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAC1C,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACpC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBAC3C,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACnB,SAAS;YACX,CAAC;QACH,CAAC;QACD,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,GAAG,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ifc-lite/parser",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.15.0",
|
|
4
4
|
"description": "IFC/STEP parser for IFC-Lite",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -18,10 +18,10 @@
|
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"jszip": "^3.10.0",
|
|
21
|
-
"@ifc-lite/data": "^3.
|
|
21
|
+
"@ifc-lite/data": "^3.2.0",
|
|
22
22
|
"@ifc-lite/encoding": "^1.15.0",
|
|
23
|
-
"@ifc-lite/
|
|
24
|
-
"@ifc-lite/
|
|
23
|
+
"@ifc-lite/ifcx": "^2.3.2",
|
|
24
|
+
"@ifc-lite/wasm": "^4.3.0"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
27
|
"typescript": "^6.0.3",
|