@ifc-lite/parser 9.1.0 → 9.5.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/README.md +35 -0
- package/dist/abort-error.d.ts +7 -0
- package/dist/abort-error.d.ts.map +1 -0
- package/dist/abort-error.js +17 -0
- package/dist/abort-error.js.map +1 -0
- package/dist/classification-overlay.d.ts +13 -0
- package/dist/classification-overlay.d.ts.map +1 -0
- package/dist/classification-overlay.js +65 -0
- package/dist/classification-overlay.js.map +1 -0
- package/dist/classification-resolver.d.ts +13 -9
- package/dist/classification-resolver.d.ts.map +1 -1
- package/dist/classification-resolver.js +109 -74
- package/dist/classification-resolver.js.map +1 -1
- package/dist/columnar-parser-attributes.d.ts +1 -1
- package/dist/columnar-parser-attributes.d.ts.map +1 -1
- package/dist/columnar-parser-attributes.js +16 -6
- package/dist/columnar-parser-attributes.js.map +1 -1
- package/dist/columnar-parser-root-attributes.d.ts +15 -1
- package/dist/columnar-parser-root-attributes.d.ts.map +1 -1
- package/dist/columnar-parser-root-attributes.js +26 -11
- package/dist/columnar-parser-root-attributes.js.map +1 -1
- package/dist/columnar-parser.d.ts +13 -15
- package/dist/columnar-parser.d.ts.map +1 -1
- package/dist/columnar-parser.js +11 -23
- package/dist/columnar-parser.js.map +1 -1
- package/dist/current-occurrence-quantities.d.ts +13 -0
- package/dist/current-occurrence-quantities.d.ts.map +1 -0
- package/dist/current-occurrence-quantities.js +69 -0
- package/dist/current-occurrence-quantities.js.map +1 -0
- package/dist/current-project-units.d.ts +11 -0
- package/dist/current-project-units.d.ts.map +1 -0
- package/dist/current-project-units.js +41 -0
- package/dist/current-project-units.js.map +1 -0
- package/dist/current-type-quantities.d.ts +13 -0
- package/dist/current-type-quantities.d.ts.map +1 -0
- package/dist/current-type-quantities.js +274 -0
- package/dist/current-type-quantities.js.map +1 -0
- package/dist/data-store-transport.d.ts +1 -0
- package/dist/data-store-transport.d.ts.map +1 -1
- package/dist/data-store-transport.js +4 -4
- package/dist/data-store-transport.js.map +1 -1
- package/dist/document-resolver.d.ts +23 -0
- package/dist/document-resolver.d.ts.map +1 -0
- package/dist/document-resolver.js +122 -0
- package/dist/document-resolver.js.map +1 -0
- package/dist/effective-entity-record.d.ts +3 -2
- package/dist/effective-entity-record.d.ts.map +1 -1
- package/dist/effective-entity-record.js +5 -5
- package/dist/effective-entity-record.js.map +1 -1
- package/dist/effective-metadata-record.d.ts +23 -0
- package/dist/effective-metadata-record.d.ts.map +1 -0
- package/dist/effective-metadata-record.js +50 -0
- package/dist/effective-metadata-record.js.map +1 -0
- package/dist/effective-storey.d.ts.map +1 -1
- package/dist/effective-storey.js +5 -0
- package/dist/effective-storey.js.map +1 -1
- package/dist/entity-scanner.d.ts +6 -8
- package/dist/entity-scanner.d.ts.map +1 -1
- package/dist/entity-scanner.js +26 -13
- package/dist/entity-scanner.js.map +1 -1
- package/dist/georef-extractor.d.ts +1 -1
- package/dist/georef-extractor.d.ts.map +1 -1
- package/dist/georef-extractor.js +1 -1
- package/dist/georef-extractor.js.map +1 -1
- package/dist/ifc-schema.d.ts +2 -1
- package/dist/ifc-schema.d.ts.map +1 -1
- package/dist/ifc-schema.js +4 -3
- package/dist/ifc-schema.js.map +1 -1
- package/dist/index.d.ts +9 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -12
- package/dist/index.js.map +1 -1
- package/dist/length-unit-source.d.ts +25 -0
- package/dist/length-unit-source.d.ts.map +1 -0
- package/dist/length-unit-source.js +14 -0
- package/dist/length-unit-source.js.map +1 -0
- package/dist/material-definitions.d.ts +10 -0
- package/dist/material-definitions.d.ts.map +1 -0
- package/dist/material-definitions.js +224 -0
- package/dist/material-definitions.js.map +1 -0
- package/dist/material-overlay.d.ts +38 -0
- package/dist/material-overlay.d.ts.map +1 -0
- package/dist/material-overlay.js +146 -0
- package/dist/material-overlay.js.map +1 -0
- package/dist/material-properties-extractor.d.ts +2 -11
- package/dist/material-properties-extractor.d.ts.map +1 -1
- package/dist/material-properties-extractor.js +21 -38
- package/dist/material-properties-extractor.js.map +1 -1
- package/dist/material-resolver.d.ts +6 -4
- package/dist/material-resolver.d.ts.map +1 -1
- package/dist/material-resolver.js +176 -386
- package/dist/material-resolver.js.map +1 -1
- package/dist/measure-unit-scale.d.ts +2 -0
- package/dist/measure-unit-scale.d.ts.map +1 -1
- package/dist/measure-unit-scale.js +7 -1
- package/dist/measure-unit-scale.js.map +1 -1
- package/dist/metadata-edit-value.d.ts +4 -0
- package/dist/metadata-edit-value.d.ts.map +1 -0
- package/dist/metadata-edit-value.js +57 -0
- package/dist/metadata-edit-value.js.map +1 -0
- package/dist/native-metadata-public.d.ts +9 -0
- package/dist/native-metadata-public.d.ts.map +1 -0
- package/dist/native-metadata-public.js +12 -0
- package/dist/native-metadata-public.js.map +1 -0
- package/dist/occurrence-quantity-read-error.d.ts +7 -0
- package/dist/occurrence-quantity-read-error.d.ts.map +1 -0
- package/dist/occurrence-quantity-read-error.js +13 -0
- package/dist/occurrence-quantity-read-error.js.map +1 -0
- package/dist/on-demand-extractors.d.ts +3 -38
- package/dist/on-demand-extractors.d.ts.map +1 -1
- package/dist/on-demand-extractors.js +4 -184
- package/dist/on-demand-extractors.js.map +1 -1
- package/dist/on-demand-georeferencing.d.ts.map +1 -1
- package/dist/on-demand-georeferencing.js +2 -0
- package/dist/on-demand-georeferencing.js.map +1 -1
- package/dist/parser-worker-trace.d.ts +18 -0
- package/dist/parser-worker-trace.d.ts.map +1 -0
- package/dist/parser-worker-trace.js +32 -0
- package/dist/parser-worker-trace.js.map +1 -0
- package/dist/parser.worker.d.ts.map +1 -1
- package/dist/parser.worker.js +34 -13
- package/dist/parser.worker.js.map +1 -1
- package/dist/project-units.d.ts +17 -4
- package/dist/project-units.d.ts.map +1 -1
- package/dist/project-units.js +104 -37
- package/dist/project-units.js.map +1 -1
- package/dist/property-complex-value.d.ts.map +1 -1
- package/dist/property-complex-value.js +1 -0
- package/dist/property-complex-value.js.map +1 -1
- package/dist/property-unit.d.ts +2 -0
- package/dist/property-unit.d.ts.map +1 -1
- package/dist/property-unit.js +4 -1
- package/dist/property-unit.js.map +1 -1
- package/dist/property-value-parser.d.ts +14 -1
- package/dist/property-value-parser.d.ts.map +1 -1
- package/dist/property-value-parser.js +42 -22
- package/dist/property-value-parser.js.map +1 -1
- package/dist/quantity-collect.d.ts +14 -2
- package/dist/quantity-collect.d.ts.map +1 -1
- package/dist/quantity-collect.js +19 -8
- package/dist/quantity-collect.js.map +1 -1
- package/dist/relationship-schema-slots.d.ts.map +1 -1
- package/dist/relationship-schema-slots.js +2 -1
- package/dist/relationship-schema-slots.js.map +1 -1
- package/dist/scan-worker-inline.d.ts.map +1 -1
- package/dist/scan-worker-inline.js +2 -1
- package/dist/scan-worker-inline.js.map +1 -1
- package/dist/schedule-extractor.d.ts +2 -1
- package/dist/schedule-extractor.d.ts.map +1 -1
- package/dist/schedule-extractor.js +11 -2
- package/dist/schedule-extractor.js.map +1 -1
- package/dist/schedule-serializer-builders.d.ts +7 -0
- package/dist/schedule-serializer-builders.d.ts.map +1 -1
- package/dist/schedule-serializer-builders.js +17 -17
- package/dist/schedule-serializer-builders.js.map +1 -1
- package/dist/schedule-serializer.d.ts +8 -3
- package/dist/schedule-serializer.d.ts.map +1 -1
- package/dist/schedule-serializer.js +36 -1
- package/dist/schedule-serializer.js.map +1 -1
- package/dist/schedule-task-products.d.ts +38 -0
- package/dist/schedule-task-products.d.ts.map +1 -0
- package/dist/schedule-task-products.js +69 -0
- package/dist/schedule-task-products.js.map +1 -0
- package/dist/schedule-types.d.ts +11 -1
- package/dist/schedule-types.d.ts.map +1 -1
- package/dist/schedule-types.js.map +1 -1
- package/dist/schema-entity-name.d.ts +14 -0
- package/dist/schema-entity-name.d.ts.map +1 -0
- package/dist/schema-entity-name.js +34 -0
- package/dist/schema-entity-name.js.map +1 -0
- package/dist/schema-exports.d.ts +7 -0
- package/dist/schema-exports.d.ts.map +1 -0
- package/dist/schema-exports.js +10 -0
- package/dist/schema-exports.js.map +1 -0
- package/dist/source-project-length-unit.d.ts +53 -0
- package/dist/source-project-length-unit.d.ts.map +1 -0
- package/dist/source-project-length-unit.js +201 -0
- package/dist/source-project-length-unit.js.map +1 -0
- package/dist/structural-extractor.js +2 -2
- package/dist/structural-extractor.js.map +1 -1
- package/dist/structural-load-extractor.d.ts +9 -3
- package/dist/structural-load-extractor.d.ts.map +1 -1
- package/dist/structural-load-extractor.js +26 -20
- package/dist/structural-load-extractor.js.map +1 -1
- package/dist/structural-step-values.d.ts +0 -9
- package/dist/structural-step-values.d.ts.map +1 -1
- package/dist/structural-step-values.js +13 -1
- package/dist/structural-step-values.js.map +1 -1
- package/dist/type-own-quantity-source.d.ts +37 -0
- package/dist/type-own-quantity-source.d.ts.map +1 -0
- package/dist/type-own-quantity-source.js +204 -0
- package/dist/type-own-quantity-source.js.map +1 -0
- package/dist/unit-extractor.d.ts +14 -1
- package/dist/unit-extractor.d.ts.map +1 -1
- package/dist/unit-extractor.js +34 -31
- package/dist/unit-extractor.js.map +1 -1
- package/dist/worker-parser.d.ts +7 -0
- package/dist/worker-parser.d.ts.map +1 -1
- package/dist/worker-parser.js +14 -16
- package/dist/worker-parser.js.map +1 -1
- package/package.json +6 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule-serializer.js","sourceRoot":"","sources":["../src/schedule-serializer.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAoC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EACL,MAAM,EACN,MAAM,EACN,OAAO,EACP,QAAQ,EACR,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,SAAS,EACT,iBAAiB,
|
|
1
|
+
{"version":3,"file":"schedule-serializer.js","sourceRoot":"","sources":["../src/schedule-serializer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Task OUTPUT products — IfcRelAssignsToProduct with an IfcTask in
|
|
3
|
+
* RelatedObjects and the product it builds in RelatingProduct (#6749).
|
|
4
|
+
*
|
|
5
|
+
* buildingSMART's construction-scheduling examples bind every task to its
|
|
6
|
+
* product this way; IfcRelAssignsToProcess (the task in RelatingProcess)
|
|
7
|
+
* binds the task's INPUTS instead. The extractor keeps the two lists apart
|
|
8
|
+
* so a round trip writes each assignment back as the relationship it came
|
|
9
|
+
* from, and every consumer that just wants "the products this task touches"
|
|
10
|
+
* reads the union through {@link taskProductExpressIds}.
|
|
11
|
+
*/
|
|
12
|
+
import type { CostEntityReader } from './cost-reader.js';
|
|
13
|
+
import type { ScheduleTaskInfo } from './schedule-types.js';
|
|
14
|
+
/** IfcRelAssignsToProduct STEP attribute indices (same in IFC2X3, IFC4, IFC4X3). */
|
|
15
|
+
export declare const REL_ASSIGNS_TO_PRODUCT_ATTR: {
|
|
16
|
+
readonly RelatedObjects: 4;
|
|
17
|
+
readonly RelatingProduct: 6;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Fill `outputProductExpressIds` / `outputProductGlobalIds` on every task
|
|
21
|
+
* named in an IfcRelAssignsToProduct's RelatedObjects. Relations whose
|
|
22
|
+
* RelatedObjects hold no task (cost items pricing a product, resources) are
|
|
23
|
+
* skipped untouched.
|
|
24
|
+
*
|
|
25
|
+
* Deduped per task, unlike the IfcRelAssignsToProcess inputs:
|
|
26
|
+
* IfcRelAssignsToProduct carries no quantity attribute, so a repeated
|
|
27
|
+
* (task, product) pair is the same identity edge stated twice.
|
|
28
|
+
*/
|
|
29
|
+
export declare function assignTaskOutputProducts(reader: CostEntityReader, relIds: readonly number[], taskByExpressId: ReadonlyMap<number, ScheduleTaskInfo>, globalIdByExpressId: Map<number, string>): void;
|
|
30
|
+
/**
|
|
31
|
+
* Every product a task touches: its IfcRelAssignsToProcess inputs followed by
|
|
32
|
+
* its IfcRelAssignsToProduct outputs. Returns the input array itself when
|
|
33
|
+
* there are no outputs, so per-frame callers (the 4D animator) don't allocate.
|
|
34
|
+
*/
|
|
35
|
+
export declare function taskProductExpressIds(task: Pick<ScheduleTaskInfo, 'productExpressIds' | 'outputProductExpressIds'>): readonly number[];
|
|
36
|
+
/** GlobalIds aligned with {@link taskProductExpressIds} by index. */
|
|
37
|
+
export declare function taskProductGlobalIds(task: Pick<ScheduleTaskInfo, 'productGlobalIds' | 'outputProductGlobalIds'>): readonly string[];
|
|
38
|
+
//# sourceMappingURL=schedule-task-products.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schedule-task-products.d.ts","sourceRoot":"","sources":["../src/schedule-task-products.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,oFAAoF;AACpF,eAAO,MAAM,2BAA2B;;;CAG9B,CAAC;AAEX;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,gBAAgB,EACxB,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,eAAe,EAAE,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,EACtD,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GACvC,IAAI,CA4BN;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,mBAAmB,GAAG,yBAAyB,CAAC,GAC5E,SAAS,MAAM,EAAE,CAGnB;AAED,qEAAqE;AACrE,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,kBAAkB,GAAG,wBAAwB,CAAC,GAC1E,SAAS,MAAM,EAAE,CAGnB"}
|
|
@@ -0,0 +1,69 @@
|
|
|
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
|
+
import { asRef, asRefList } from './schedule-types.js';
|
|
5
|
+
/** IfcRelAssignsToProduct STEP attribute indices (same in IFC2X3, IFC4, IFC4X3). */
|
|
6
|
+
export const REL_ASSIGNS_TO_PRODUCT_ATTR = {
|
|
7
|
+
RelatedObjects: 4,
|
|
8
|
+
RelatingProduct: 6,
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Fill `outputProductExpressIds` / `outputProductGlobalIds` on every task
|
|
12
|
+
* named in an IfcRelAssignsToProduct's RelatedObjects. Relations whose
|
|
13
|
+
* RelatedObjects hold no task (cost items pricing a product, resources) are
|
|
14
|
+
* skipped untouched.
|
|
15
|
+
*
|
|
16
|
+
* Deduped per task, unlike the IfcRelAssignsToProcess inputs:
|
|
17
|
+
* IfcRelAssignsToProduct carries no quantity attribute, so a repeated
|
|
18
|
+
* (task, product) pair is the same identity edge stated twice.
|
|
19
|
+
*/
|
|
20
|
+
export function assignTaskOutputProducts(reader, relIds, taskByExpressId, globalIdByExpressId) {
|
|
21
|
+
for (const relId of relIds) {
|
|
22
|
+
const entity = reader.get(relId);
|
|
23
|
+
if (!entity)
|
|
24
|
+
continue;
|
|
25
|
+
const a = entity.attributes || [];
|
|
26
|
+
const productId = asRef(a[REL_ASSIGNS_TO_PRODUCT_ATTR.RelatingProduct]);
|
|
27
|
+
if (productId === undefined)
|
|
28
|
+
continue;
|
|
29
|
+
let gid;
|
|
30
|
+
let resolved = false;
|
|
31
|
+
for (const relatedId of asRefList(a[REL_ASSIGNS_TO_PRODUCT_ATTR.RelatedObjects])) {
|
|
32
|
+
const task = taskByExpressId.get(relatedId);
|
|
33
|
+
if (!task)
|
|
34
|
+
continue;
|
|
35
|
+
if (!resolved) {
|
|
36
|
+
// A product deleted (overlay tombstone) or absent from the file is
|
|
37
|
+
// no output at all: keeping its id would let an edited export write
|
|
38
|
+
// a reference to a record that no longer exists.
|
|
39
|
+
if (!reader.get(productId))
|
|
40
|
+
break;
|
|
41
|
+
gid = reader.globalId(productId);
|
|
42
|
+
if (gid)
|
|
43
|
+
globalIdByExpressId.set(productId, gid);
|
|
44
|
+
resolved = true;
|
|
45
|
+
}
|
|
46
|
+
const expressIds = (task.outputProductExpressIds ??= []);
|
|
47
|
+
const globalIds = (task.outputProductGlobalIds ??= []);
|
|
48
|
+
if (expressIds.includes(productId))
|
|
49
|
+
continue;
|
|
50
|
+
expressIds.push(productId);
|
|
51
|
+
globalIds.push(gid ?? '');
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Every product a task touches: its IfcRelAssignsToProcess inputs followed by
|
|
57
|
+
* its IfcRelAssignsToProduct outputs. Returns the input array itself when
|
|
58
|
+
* there are no outputs, so per-frame callers (the 4D animator) don't allocate.
|
|
59
|
+
*/
|
|
60
|
+
export function taskProductExpressIds(task) {
|
|
61
|
+
const outputs = task.outputProductExpressIds;
|
|
62
|
+
return outputs?.length ? [...task.productExpressIds, ...outputs] : task.productExpressIds;
|
|
63
|
+
}
|
|
64
|
+
/** GlobalIds aligned with {@link taskProductExpressIds} by index. */
|
|
65
|
+
export function taskProductGlobalIds(task) {
|
|
66
|
+
const outputs = task.outputProductGlobalIds;
|
|
67
|
+
return outputs?.length ? [...task.productGlobalIds, ...outputs] : task.productGlobalIds;
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=schedule-task-products.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schedule-task-products.js","sourceRoot":"","sources":["../src/schedule-task-products.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAe/D,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGvD,oFAAoF;AACpF,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,CAAC;CACV,CAAC;AAEX;;;;;;;;;GASG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAAwB,EACxB,MAAyB,EACzB,eAAsD,EACtD,mBAAwC;IAExC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjC,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,IAAI,SAAS,KAAK,SAAS;YAAE,SAAS;QACtC,IAAI,GAAuB,CAAC;QAC5B,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,KAAK,MAAM,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,2BAA2B,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC;YACjF,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC5C,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,mEAAmE;gBACnE,oEAAoE;gBACpE,iDAAiD;gBACjD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC;oBAAE,MAAM;gBAClC,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACjC,IAAI,GAAG;oBAAE,mBAAmB,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBACjD,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;YACD,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,uBAAuB,KAAK,EAAE,CAAC,CAAC;YACzD,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAC;YACvD,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,SAAS;YAC7C,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3B,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAA6E;IAE7E,MAAM,OAAO,GAAG,IAAI,CAAC,uBAAuB,CAAC;IAC7C,OAAO,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;AAC5F,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,oBAAoB,CAClC,IAA2E;IAE3E,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC;IAC5C,OAAO,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;AAC1F,CAAC"}
|
package/dist/schedule-types.d.ts
CHANGED
|
@@ -136,10 +136,20 @@ export interface ScheduleTaskInfo {
|
|
|
136
136
|
parentGlobalId?: string;
|
|
137
137
|
/** Child task globalIds (from IfcRelNests where this task is RelatingObject). */
|
|
138
138
|
childGlobalIds: string[];
|
|
139
|
-
/** expressIds of products assigned
|
|
139
|
+
/** expressIds of products assigned via IfcRelAssignsToProcess: the task's INPUTS. */
|
|
140
140
|
productExpressIds: number[];
|
|
141
141
|
/** globalIds of the same products (aligned with productExpressIds by index). */
|
|
142
142
|
productGlobalIds: string[];
|
|
143
|
+
/**
|
|
144
|
+
* expressIds of products this task OUTPUTS via IfcRelAssignsToProduct (the
|
|
145
|
+
* task in RelatedObjects): the buildingSMART "task builds this product"
|
|
146
|
+
* convention (#6749). Separate from the inputs so a round trip writes each
|
|
147
|
+
* back as the relationship it came from. Absent ≡ `[]`. Read both lists
|
|
148
|
+
* through `taskProductExpressIds` (schedule-task-products.ts).
|
|
149
|
+
*/
|
|
150
|
+
outputProductExpressIds?: number[];
|
|
151
|
+
/** globalIds of the same products (aligned with outputProductExpressIds by index). */
|
|
152
|
+
outputProductGlobalIds?: string[];
|
|
143
153
|
/** WorkSchedule globalIds that control this task via IfcRelAssignsToControl. */
|
|
144
154
|
controllingScheduleGlobalIds: string[];
|
|
145
155
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule-types.d.ts","sourceRoot":"","sources":["../src/schedule-types.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE,+CAA+C;AAC/C,eAAO,MAAM,SAAS;;;;;;;;;;;;;CAaZ,CAAC;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;CAUhB,CAAC;AAuBX,eAAO,MAAM,iBAAiB;;;;;;;CAOpB,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;CAG9B,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;CAG9B,CAAC;AAEX,eAAO,MAAM,cAAc;;;CAGjB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;CAarB,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;;;;;;;;;CAAqB,CAAC;AAOjD,MAAM,MAAM,gBAAgB,GACxB,aAAa,GACb,cAAc,GACd,cAAc,GACd,eAAe,GACf,aAAa,GACb,YAAY,CAAC;AAEjB,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,aAAa,GAAG,YAAY,CAAC;AAEzE,MAAM,WAAW,oBAAoB;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,oFAAoF;IACpF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iFAAiF;IACjF,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB
|
|
1
|
+
{"version":3,"file":"schedule-types.d.ts","sourceRoot":"","sources":["../src/schedule-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule-types.js","sourceRoot":"","sources":["../src/schedule-types.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAoB/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAG7D,+CAA+C;AAC/C,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,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,CAAC,MAAM,aAAa,GAAG;IAC3B,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,CAAC,MAAM,iBAAiB,GAAG;IAC/B,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,CAAC,MAAM,2BAA2B,GAAG;IACzC,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,CAAC;CACV,CAAC;AAEX,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,CAAC;CACV,CAAC;AAEX,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,cAAc,EAAE,CAAC;IACjB,cAAc,EAAE,CAAC;CACT,CAAC;AAEX,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,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,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAEjD,MAAM,aAAa,GAAG;IACpB,QAAQ,EAAE,CAAC;IACX,YAAY,EAAE,CAAC;CACP,CAAC;
|
|
1
|
+
{"version":3,"file":"schedule-types.js","sourceRoot":"","sources":["../src/schedule-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { SchemaRegistry } from './generated/schema-registry-by-version.js';
|
|
2
|
+
/** Ordered entity keys captured for one finite operation; definitions remain live. */
|
|
3
|
+
export interface SchemaEntityNameSnapshot {
|
|
4
|
+
readonly registry: SchemaRegistry;
|
|
5
|
+
resolve(type: string): string | undefined;
|
|
6
|
+
}
|
|
7
|
+
/** Capture key order once. Create a fresh snapshot after registry key changes. */
|
|
8
|
+
export declare function createSchemaEntityNameSnapshot(registry: SchemaRegistry): SchemaEntityNameSnapshot;
|
|
9
|
+
/** Resolve the first own registry key matching the IFC name, case-insensitively.
|
|
10
|
+
* Without a snapshot, additions, deletions and key order invalidate
|
|
11
|
+
* the index; replacing a definition never caches its old metadata.
|
|
12
|
+
*/
|
|
13
|
+
export declare function getCanonicalEntityName(registry: SchemaRegistry, type: string, snapshot?: SchemaEntityNameSnapshot): string | undefined;
|
|
14
|
+
//# sourceMappingURL=schema-entity-name.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-entity-name.d.ts","sourceRoot":"","sources":["../src/schema-entity-name.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAIhF,sFAAsF;AACtF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC3C;AAWD,kFAAkF;AAClF,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,cAAc,GAAG,wBAAwB,CAGjG;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,wBAAwB,GAAG,MAAM,GAAG,SAAS,CAYtI"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
const indexes = new WeakMap();
|
|
2
|
+
function indexNames(keys) {
|
|
3
|
+
const names = new Map();
|
|
4
|
+
for (const key of keys) {
|
|
5
|
+
const upper = key.toUpperCase();
|
|
6
|
+
if (!names.has(upper))
|
|
7
|
+
names.set(upper, key);
|
|
8
|
+
}
|
|
9
|
+
return names;
|
|
10
|
+
}
|
|
11
|
+
/** Capture key order once. Create a fresh snapshot after registry key changes. */
|
|
12
|
+
export function createSchemaEntityNameSnapshot(registry) {
|
|
13
|
+
const names = indexNames(Object.keys(registry.entities));
|
|
14
|
+
return { registry, resolve: type => names.get(type.toUpperCase()) };
|
|
15
|
+
}
|
|
16
|
+
/** Resolve the first own registry key matching the IFC name, case-insensitively.
|
|
17
|
+
* Without a snapshot, additions, deletions and key order invalidate
|
|
18
|
+
* the index; replacing a definition never caches its old metadata.
|
|
19
|
+
*/
|
|
20
|
+
export function getCanonicalEntityName(registry, type, snapshot) {
|
|
21
|
+
if (snapshot?.registry === registry)
|
|
22
|
+
return snapshot.resolve(type);
|
|
23
|
+
const entities = registry.entities;
|
|
24
|
+
const keys = Object.keys(entities);
|
|
25
|
+
const signature = JSON.stringify(keys);
|
|
26
|
+
let index = indexes.get(entities);
|
|
27
|
+
if (!index || index.signature !== signature) {
|
|
28
|
+
const names = indexNames(keys);
|
|
29
|
+
index = { signature, names };
|
|
30
|
+
indexes.set(entities, index);
|
|
31
|
+
}
|
|
32
|
+
return index.names.get(type.toUpperCase());
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=schema-entity-name.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-entity-name.js","sourceRoot":"","sources":["../src/schema-entity-name.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,GAAG,IAAI,OAAO,EAAiF,CAAC;AAQ7G,SAAS,UAAU,CAAC,IAAuB;IACzC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,8BAA8B,CAAC,QAAwB;IACrE,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;AACtE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAwB,EAAE,IAAY,EAAE,QAAmC;IAChH,IAAI,QAAQ,EAAE,QAAQ,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IACnC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/B,KAAK,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;AAC7C,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** Public schema metadata and canonical-name exports. */
|
|
2
|
+
export { SCHEMA_REGISTRY, getEntityMetadata, getAllAttributesForEntity, getInheritanceChainForEntity, isKnownEntity } from './generated/schema-registry.js';
|
|
3
|
+
export { getSchemaRegistryForVersion, type SchemaVersionWithRegistry, type SchemaRegistry, } from './generated/schema-registry-by-version.js';
|
|
4
|
+
export { getCanonicalEntityName, createSchemaEntityNameSnapshot, type SchemaEntityNameSnapshot } from './schema-entity-name.js';
|
|
5
|
+
export type * from './generated/entities.js';
|
|
6
|
+
export * from './generated/enums.js';
|
|
7
|
+
//# sourceMappingURL=schema-exports.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-exports.d.ts","sourceRoot":"","sources":["../src/schema-exports.ts"],"names":[],"mappings":"AAIA,yDAAyD;AAEzD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC5J,OAAO,EACL,2BAA2B,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,cAAc,GACpB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,8BAA8B,EAAE,KAAK,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAChI,mBAAmB,yBAAyB,CAAC;AAC7C,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
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
|
+
/** Public schema metadata and canonical-name exports. */
|
|
5
|
+
// Generated IFC4 schema (100% coverage - 776 entities, 397 types, 207 enums)
|
|
6
|
+
export { SCHEMA_REGISTRY, getEntityMetadata, getAllAttributesForEntity, getInheritanceChainForEntity, isKnownEntity } from './generated/schema-registry.js';
|
|
7
|
+
export { getSchemaRegistryForVersion, } from './generated/schema-registry-by-version.js';
|
|
8
|
+
export { getCanonicalEntityName, createSchemaEntityNameSnapshot } from './schema-entity-name.js';
|
|
9
|
+
export * from './generated/enums.js';
|
|
10
|
+
//# sourceMappingURL=schema-exports.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-exports.js","sourceRoot":"","sources":["../src/schema-exports.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D,yDAAyD;AACzD,6EAA6E;AAC7E,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC5J,OAAO,EACL,2BAA2B,GAG5B,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,8BAA8B,EAAiC,MAAM,yBAAyB,CAAC;AAEhI,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { IfcDataStore } from './columnar-parser.js';
|
|
2
|
+
/**
|
|
3
|
+
* Canonicalize a map-unit label to the spelling the rest of this module
|
|
4
|
+
* compares against: American `METER` to `METRE`, the foot spellings to `FOOT`,
|
|
5
|
+
* the US survey foot to `US SURVEY FOOT`, and an SI prefix kept rather than
|
|
6
|
+
* swallowed. Anything not recognised is returned normalised-but-unchanged, for
|
|
7
|
+
* the caller to REFUSE rather than guess at.
|
|
8
|
+
*
|
|
9
|
+
* The label is NORMALISED and then matched EXACTLY — never substring-matched.
|
|
10
|
+
*
|
|
11
|
+
* What the normalisation accepts:
|
|
12
|
+
* - any case and any separators: `metres`, `Meters`, `MILLI-METRE`;
|
|
13
|
+
* - `METRE` and `METER`, each carrying any `IfcSIPrefix` member;
|
|
14
|
+
* - `FOOT` and `FEET`;
|
|
15
|
+
* - one English plural suffix, stripped once and re-matched exactly;
|
|
16
|
+
* - the US survey foot, glued or separated in any word order.
|
|
17
|
+
*
|
|
18
|
+
* What it REFUSES, by leaving the label alone so `resolveMapUnitReference`
|
|
19
|
+
* returns `null` and `MapUnit` stays `$` with a warning:
|
|
20
|
+
* - a label that merely CONTAINS a unit. `MILLIMETRE`, `CENTIMETRE` and
|
|
21
|
+
* `KILOMETRE` all contain `METRE`, and an `includes('METRE')` test wrote all
|
|
22
|
+
* three into the file as a plain `.METRE.` — a silent 1000x error in the CRS
|
|
23
|
+
* scale (#3274). The foot half of that same test was `includes('FOOT')`, and
|
|
24
|
+
* it was satisfied by `FOOTCANDLE` (an illuminance), `FOOT-POUND` (an
|
|
25
|
+
* energy), `FOOTPRINT`, and by `SQUARE FOOT` and `CUBIC FEET` — an area and
|
|
26
|
+
* a volume written as a LENGTH unit, which is a wrong DIMENSION rather than
|
|
27
|
+
* a wrong magnitude, and no scale factor can be right for it;
|
|
28
|
+
* - a survey foot with no nationality: `SURVEY FOOT`, `CLARKE'S FOOT`,
|
|
29
|
+
* `INDIAN FOOT`, `SEARS FOOT`, `BRITISH FOOT (1936)` are five different
|
|
30
|
+
* ratios, and `includes('FOOT')` gave every one of them the international
|
|
31
|
+
* 0.3048;
|
|
32
|
+
* - `INCH`, `YARD`, `MILE` and anything else this exporter cannot express.
|
|
33
|
+
*
|
|
34
|
+
* Normalising a recognisable spelling onto a table entry is NOT that
|
|
35
|
+
* approximation: the answer is still one exact table hit, so `MILLIMETERS`
|
|
36
|
+
* resolves to `MILLIMETRE` and not to `METRE`.
|
|
37
|
+
*
|
|
38
|
+
* Sibling of `inferMapUnitScaleFromLabel` in
|
|
39
|
+
* packages/parser/src/map-unit-label.ts and `infer_map_unit_scale` in
|
|
40
|
+
* rust/core/src/unit_labels.rs, which apply these same rules on the reading
|
|
41
|
+
* side. This exporter's accepted set is the smaller one — it writes only what
|
|
42
|
+
* it can express as an `IfcNamedUnit` — but no spelling may be accepted here
|
|
43
|
+
* that those refuse, or refused here that those accept as a length.
|
|
44
|
+
*/
|
|
45
|
+
export declare function normalizeMapUnitName(unitName: string): string;
|
|
46
|
+
/** Resolve only an assigned source length unit, matching STEP writer eligibility.
|
|
47
|
+
* Overlay-created projects/assignments/units cannot supply source STEP bytes;
|
|
48
|
+
* `projectIds` must already contain only current effective IfcProject ids,
|
|
49
|
+
* with deleted/retyped projects excluded (use iterateEffectiveEntities).
|
|
50
|
+
* `isDeleted` filters assignment/unit references, not the project inventory.
|
|
51
|
+
* Deleted references and unsupported names return null. #7355 */
|
|
52
|
+
export declare function findSourceProjectLengthUnit(preferredUnitName: string, store: IfcDataStore, projectIds: readonly number[], isDeleted: (id: number) => boolean): number | null;
|
|
53
|
+
//# sourceMappingURL=source-project-length-unit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-project-length-unit.d.ts","sourceRoot":"","sources":["../src/source-project-length-unit.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAuEzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAkB7D;AAED;;;;;iEAKiE;AACjE,wBAAgB,2BAA2B,CAAC,iBAAiB,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,GAAG,MAAM,GAAG,IAAI,CA4D5K"}
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
import { EntityExtractor } from './entity-extractor.js';
|
|
2
|
+
import { SI_PREFIX_MULTIPLIERS } from './unit-extractor.js';
|
|
3
|
+
/** Split a map-unit label into upper-cased alphanumeric tokens. */
|
|
4
|
+
function tokenizeUnitLabel(label) {
|
|
5
|
+
return label.toUpperCase().split(/[^A-Z0-9]+/).filter((token) => token.length > 0);
|
|
6
|
+
}
|
|
7
|
+
/** The foot/feet spellings a US-survey qualifier may be attached to. */
|
|
8
|
+
const FOOT_TOKENS = new Set(['FOOT', 'FEET', 'FT']);
|
|
9
|
+
/**
|
|
10
|
+
* Order-insensitive recogniser for the separated US-survey foot spellings —
|
|
11
|
+
* `foot (US survey)`, `SURVEY FEET (US)`, `US survey foot`. The glued
|
|
12
|
+
* spellings (`USSURVEYFOOT`, `FTUS`, …) are in {@link MAP_UNIT_CANONICAL_NAME}
|
|
13
|
+
* and matched exactly there; once an exporter puts separators in, the word
|
|
14
|
+
* order varies and gluing alone cannot see it.
|
|
15
|
+
*
|
|
16
|
+
* Accepts exactly one foot token plus either `US` (or the glued `USSURVEY`)
|
|
17
|
+
* or both `US` and `SURVEY`. A bare `SURVEY FOOT` without `US` is REFUSED:
|
|
18
|
+
* other national survey feet exist and are different ratios — Clarke's foot is
|
|
19
|
+
* 0.3047972654 m, the Indian foot 0.304799514 m — so the qualifier alone does
|
|
20
|
+
* not identify a value. `US FOOT` on its own IS accepted: EPSG 9003 is the
|
|
21
|
+
* only US foot, so the nationality does identify it.
|
|
22
|
+
*
|
|
23
|
+
* The requirement that exactly ONE foot token be present, with nothing else
|
|
24
|
+
* beside the qualifier, is what refuses `SQUARE US SURVEY FOOT` (an area) and
|
|
25
|
+
* `NON-US SURVEY FOOT` (a label that says it is not this unit).
|
|
26
|
+
*
|
|
27
|
+
* Sibling of `isUsSurveyFootTokens` in packages/parser/src/map-unit-label.ts
|
|
28
|
+
* and `is_us_survey_foot_tokens` in rust/core/src/unit_labels.rs — those two
|
|
29
|
+
* answer a metre scale for the georeferencing READER, this one answers the
|
|
30
|
+
* canonical name the STEP writer emits, but the accepted spellings are the
|
|
31
|
+
* same set and must stay the same set.
|
|
32
|
+
*/
|
|
33
|
+
function isUsSurveyFootTokens(tokens) {
|
|
34
|
+
const feet = tokens.filter((token) => FOOT_TOKENS.has(token));
|
|
35
|
+
if (feet.length !== 1)
|
|
36
|
+
return false;
|
|
37
|
+
const rest = tokens.filter((token) => !FOOT_TOKENS.has(token));
|
|
38
|
+
if (rest.length === 1)
|
|
39
|
+
return rest[0] === 'US' || rest[0] === 'USSURVEY';
|
|
40
|
+
return rest.length === 2 && rest.includes('US') && rest.includes('SURVEY');
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Exact-match table from a folded label to the canonical unit name the rest of
|
|
44
|
+
* this module compares against. DERIVED rather than hand-written: the two base
|
|
45
|
+
* spellings crossed with {@link SI_PREFIXES} — the same list {@link siPrefixOf}
|
|
46
|
+
* reads, so the two cannot drift — plus the foot spellings this exporter can
|
|
47
|
+
* write as an `IfcConversionBasedUnit`.
|
|
48
|
+
*
|
|
49
|
+
* A `Map` rather than an object literal so a label like `CONSTRUCTOR` cannot
|
|
50
|
+
* resolve through `Object.prototype`.
|
|
51
|
+
*/
|
|
52
|
+
const MAP_UNIT_CANONICAL_NAME = (() => {
|
|
53
|
+
const table = new Map();
|
|
54
|
+
for (const spelling of ['METRE', 'METER']) {
|
|
55
|
+
table.set(spelling, 'METRE');
|
|
56
|
+
for (const prefix of Object.keys(SI_PREFIX_MULTIPLIERS))
|
|
57
|
+
table.set(`${prefix}${spelling}`, `${prefix}METRE`);
|
|
58
|
+
}
|
|
59
|
+
for (const foot of ['FOOT', 'FEET'])
|
|
60
|
+
table.set(foot, 'FOOT');
|
|
61
|
+
// The US survey foot is a different ratio from the international foot
|
|
62
|
+
// (1200/3937 vs 0.3048) and is spelled several ways in the wild. These are
|
|
63
|
+
// the accepted glued spellings, matched exactly rather than sniffed for; the
|
|
64
|
+
// separated ones go through {@link isUsSurveyFootTokens}.
|
|
65
|
+
for (const alias of ['USSURVEYFOOT', 'USSURVEYFEET', 'USSURVEYFT', 'USFOOT', 'USFEET', 'USFT', 'FTUS']) {
|
|
66
|
+
table.set(alias, 'US SURVEY FOOT');
|
|
67
|
+
}
|
|
68
|
+
return table;
|
|
69
|
+
})();
|
|
70
|
+
/**
|
|
71
|
+
* Canonicalize a map-unit label to the spelling the rest of this module
|
|
72
|
+
* compares against: American `METER` to `METRE`, the foot spellings to `FOOT`,
|
|
73
|
+
* the US survey foot to `US SURVEY FOOT`, and an SI prefix kept rather than
|
|
74
|
+
* swallowed. Anything not recognised is returned normalised-but-unchanged, for
|
|
75
|
+
* the caller to REFUSE rather than guess at.
|
|
76
|
+
*
|
|
77
|
+
* The label is NORMALISED and then matched EXACTLY — never substring-matched.
|
|
78
|
+
*
|
|
79
|
+
* What the normalisation accepts:
|
|
80
|
+
* - any case and any separators: `metres`, `Meters`, `MILLI-METRE`;
|
|
81
|
+
* - `METRE` and `METER`, each carrying any `IfcSIPrefix` member;
|
|
82
|
+
* - `FOOT` and `FEET`;
|
|
83
|
+
* - one English plural suffix, stripped once and re-matched exactly;
|
|
84
|
+
* - the US survey foot, glued or separated in any word order.
|
|
85
|
+
*
|
|
86
|
+
* What it REFUSES, by leaving the label alone so `resolveMapUnitReference`
|
|
87
|
+
* returns `null` and `MapUnit` stays `$` with a warning:
|
|
88
|
+
* - a label that merely CONTAINS a unit. `MILLIMETRE`, `CENTIMETRE` and
|
|
89
|
+
* `KILOMETRE` all contain `METRE`, and an `includes('METRE')` test wrote all
|
|
90
|
+
* three into the file as a plain `.METRE.` — a silent 1000x error in the CRS
|
|
91
|
+
* scale (#3274). The foot half of that same test was `includes('FOOT')`, and
|
|
92
|
+
* it was satisfied by `FOOTCANDLE` (an illuminance), `FOOT-POUND` (an
|
|
93
|
+
* energy), `FOOTPRINT`, and by `SQUARE FOOT` and `CUBIC FEET` — an area and
|
|
94
|
+
* a volume written as a LENGTH unit, which is a wrong DIMENSION rather than
|
|
95
|
+
* a wrong magnitude, and no scale factor can be right for it;
|
|
96
|
+
* - a survey foot with no nationality: `SURVEY FOOT`, `CLARKE'S FOOT`,
|
|
97
|
+
* `INDIAN FOOT`, `SEARS FOOT`, `BRITISH FOOT (1936)` are five different
|
|
98
|
+
* ratios, and `includes('FOOT')` gave every one of them the international
|
|
99
|
+
* 0.3048;
|
|
100
|
+
* - `INCH`, `YARD`, `MILE` and anything else this exporter cannot express.
|
|
101
|
+
*
|
|
102
|
+
* Normalising a recognisable spelling onto a table entry is NOT that
|
|
103
|
+
* approximation: the answer is still one exact table hit, so `MILLIMETERS`
|
|
104
|
+
* resolves to `MILLIMETRE` and not to `METRE`.
|
|
105
|
+
*
|
|
106
|
+
* Sibling of `inferMapUnitScaleFromLabel` in
|
|
107
|
+
* packages/parser/src/map-unit-label.ts and `infer_map_unit_scale` in
|
|
108
|
+
* rust/core/src/unit_labels.rs, which apply these same rules on the reading
|
|
109
|
+
* side. This exporter's accepted set is the smaller one — it writes only what
|
|
110
|
+
* it can express as an `IfcNamedUnit` — but no spelling may be accepted here
|
|
111
|
+
* that those refuse, or refused here that those accept as a length.
|
|
112
|
+
*/
|
|
113
|
+
export function normalizeMapUnitName(unitName) {
|
|
114
|
+
const normalized = unitName.trim().toUpperCase().replace(/\s+/g, ' ');
|
|
115
|
+
const tokens = tokenizeUnitLabel(normalized);
|
|
116
|
+
if (tokens.length === 0)
|
|
117
|
+
return normalized;
|
|
118
|
+
if (isUsSurveyFootTokens(tokens))
|
|
119
|
+
return 'US SURVEY FOOT';
|
|
120
|
+
const key = tokens.join('');
|
|
121
|
+
const exact = MAP_UNIT_CANONICAL_NAME.get(key);
|
|
122
|
+
if (exact !== undefined)
|
|
123
|
+
return exact;
|
|
124
|
+
// One English plural suffix, removed once and re-matched exactly. `ES`
|
|
125
|
+
// covers spellings whose singular is not reachable by dropping a single `S`.
|
|
126
|
+
for (const suffix of ['S', 'ES']) {
|
|
127
|
+
if (!key.endsWith(suffix))
|
|
128
|
+
continue;
|
|
129
|
+
const singular = MAP_UNIT_CANONICAL_NAME.get(key.slice(0, -suffix.length));
|
|
130
|
+
if (singular !== undefined)
|
|
131
|
+
return singular;
|
|
132
|
+
}
|
|
133
|
+
return normalized;
|
|
134
|
+
}
|
|
135
|
+
/** Resolve only an assigned source length unit, matching STEP writer eligibility.
|
|
136
|
+
* Overlay-created projects/assignments/units cannot supply source STEP bytes;
|
|
137
|
+
* `projectIds` must already contain only current effective IfcProject ids,
|
|
138
|
+
* with deleted/retyped projects excluded (use iterateEffectiveEntities).
|
|
139
|
+
* `isDeleted` filters assignment/unit references, not the project inventory.
|
|
140
|
+
* Deleted references and unsupported names return null. #7355 */
|
|
141
|
+
export function findSourceProjectLengthUnit(preferredUnitName, store, projectIds, isDeleted) {
|
|
142
|
+
const extractor = new EntityExtractor(store.source);
|
|
143
|
+
// An empty label is not a unit name, and it is reachable: the caller guards
|
|
144
|
+
// `crs.mapUnit !== undefined`, not `!== ''`, and `normalizeMapUnitName('')`
|
|
145
|
+
// is `''`. Both comparisons below fold a non-string Name attribute to `''`
|
|
146
|
+
// too, so without this an empty MapUnit binds to whichever unit happens to
|
|
147
|
+
// have a malformed name rather than to nothing.
|
|
148
|
+
if (preferredUnitName === '')
|
|
149
|
+
return null;
|
|
150
|
+
// Only source records carry the bytes `extractEntity` reads, so an
|
|
151
|
+
// overlay-created project is skipped rather than shadowing the file's own.
|
|
152
|
+
// @raw-entity-enumeration-ok the effective project set is filtered to source records because this fallback must decode source STEP bytes
|
|
153
|
+
const projectId = projectIds.find((id) => store.entityIndex.byId.has(id));
|
|
154
|
+
// @raw-entity-enumeration-ok point lookup for the chosen source project's byte span
|
|
155
|
+
const projectRef = projectId !== undefined ? store.entityIndex.byId.get(projectId) : undefined;
|
|
156
|
+
const project = projectRef ? extractor.extractEntity(projectRef) : null;
|
|
157
|
+
const unitAssignmentId = project?.attributes?.[8];
|
|
158
|
+
if (typeof unitAssignmentId !== 'number' || isDeleted(unitAssignmentId))
|
|
159
|
+
return null;
|
|
160
|
+
// @raw-entity-enumeration-ok point lookup for the source UnitAssignment referenced by that project
|
|
161
|
+
const unitAssignmentRef = store.entityIndex.byId.get(unitAssignmentId);
|
|
162
|
+
const unitAssignment = unitAssignmentRef ? extractor.extractEntity(unitAssignmentRef) : null;
|
|
163
|
+
const units = unitAssignment?.attributes?.[0];
|
|
164
|
+
if (!Array.isArray(units))
|
|
165
|
+
return null;
|
|
166
|
+
for (const unitId of units) {
|
|
167
|
+
if (typeof unitId !== 'number' || isDeleted(unitId))
|
|
168
|
+
continue;
|
|
169
|
+
// @raw-entity-enumeration-ok point lookup for each referenced source unit after effective deletion filtering
|
|
170
|
+
const unitRef = store.entityIndex.byId.get(unitId);
|
|
171
|
+
const unit = unitRef ? extractor.extractEntity(unitRef) : null;
|
|
172
|
+
if (!unit)
|
|
173
|
+
continue;
|
|
174
|
+
const typeName = unit.type.toUpperCase();
|
|
175
|
+
const attrs = unit.attributes ?? [];
|
|
176
|
+
const unitType = typeof attrs[1] === 'string' ? attrs[1].replace(/\./g, '').toUpperCase() : '';
|
|
177
|
+
if (unitType !== 'LENGTHUNIT')
|
|
178
|
+
continue;
|
|
179
|
+
if (typeName === 'IFCSIUNIT') {
|
|
180
|
+
const prefix = typeof attrs[2] === 'string' ? attrs[2].replace(/\./g, '').toUpperCase() : '';
|
|
181
|
+
const name = typeof attrs[3] === 'string' ? attrs[3].replace(/\./g, '').toUpperCase() : '';
|
|
182
|
+
// The prefix is part of the unit, so it is part of the comparison. The
|
|
183
|
+
// old test asked only whether the preferred name was `METRE` and the
|
|
184
|
+
// file's unit was a metre of any prefix, which both missed a reusable
|
|
185
|
+
// `.MILLI.` unit and would have matched one for a plain-metre request
|
|
186
|
+
// had `combined` been read (#3274).
|
|
187
|
+
const combined = prefix ? `${prefix}${name}` : name;
|
|
188
|
+
if (normalizeMapUnitName(combined) === preferredUnitName) {
|
|
189
|
+
return unitId;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
if (typeName === 'IFCCONVERSIONBASEDUNIT') {
|
|
193
|
+
const name = typeof attrs[2] === 'string' ? normalizeMapUnitName(attrs[2]) : '';
|
|
194
|
+
if (name === preferredUnitName) {
|
|
195
|
+
return unitId;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
return null;
|
|
200
|
+
}
|
|
201
|
+
//# sourceMappingURL=source-project-length-unit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-project-length-unit.js","sourceRoot":"","sources":["../src/source-project-length-unit.ts"],"names":[],"mappings":"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"}
|
|
@@ -226,7 +226,7 @@ export function extractStructuralOnDemand(store, view) {
|
|
|
226
226
|
...rootFields(e),
|
|
227
227
|
appliedCondition: conditionId === undefined
|
|
228
228
|
? undefined
|
|
229
|
-
: extractBoundaryCondition(extractor, store, conditionId),
|
|
229
|
+
: extractBoundaryCondition(extractor, store, conditionId, view ? id => readRaw(id, effectiveTypeById.get(id) ?? store.entities.getTypeName(id)) : undefined),
|
|
230
230
|
memberGlobalIds: membersOfConnection.get(e.expressId) ?? [],
|
|
231
231
|
activityGlobalIds: activitiesOfItem.get(e.expressId) ?? [],
|
|
232
232
|
analysisModelGlobalIds: modelsOf(e.expressId),
|
|
@@ -243,7 +243,7 @@ export function extractStructuralOnDemand(store, view) {
|
|
|
243
243
|
predefinedType: asEnum(readAttr(e.type, e.attrs, 'PredefinedType')),
|
|
244
244
|
globalOrLocal: asEnum(readAttr(e.type, e.attrs, 'GlobalOrLocal')),
|
|
245
245
|
destabilizingLoad: asBoolean(readAttr(e.type, e.attrs, 'DestabilizingLoad')),
|
|
246
|
-
appliedLoad: loadId === undefined ? undefined : extractStructuralLoad(extractor, store, loadId),
|
|
246
|
+
appliedLoad: loadId === undefined ? undefined : extractStructuralLoad(extractor, store, loadId, view ? id => readRaw(id, effectiveTypeById.get(id) ?? store.entities.getTypeName(id)) : undefined),
|
|
247
247
|
appliesToGlobalId: itemOfActivity.get(e.expressId),
|
|
248
248
|
groupGlobalIds: groupsOfObject.get(e.expressId) ?? [],
|
|
249
249
|
};
|