@ifc-lite/export 4.3.1 → 4.3.3
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/generated/ifc2x3-required-slots.d.ts +23 -0
- package/dist/generated/ifc2x3-required-slots.d.ts.map +1 -0
- package/dist/generated/ifc2x3-required-slots.js +527 -0
- package/dist/generated/ifc2x3-required-slots.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/merged-exporter.d.ts +3 -3
- package/dist/merged-exporter.d.ts.map +1 -1
- package/dist/merged-exporter.js +23 -18
- package/dist/merged-exporter.js.map +1 -1
- package/dist/parquet-exporter.js +2 -26
- package/dist/parquet-exporter.js.map +1 -1
- package/dist/schema-converter-attr-remap.d.ts +16 -7
- package/dist/schema-converter-attr-remap.d.ts.map +1 -1
- package/dist/schema-converter-attr-remap.js +17 -29
- package/dist/schema-converter-attr-remap.js.map +1 -1
- package/dist/schema-converter-ifc2x3-slots.d.ts +60 -0
- package/dist/schema-converter-ifc2x3-slots.d.ts.map +1 -0
- package/dist/schema-converter-ifc2x3-slots.js +104 -0
- package/dist/schema-converter-ifc2x3-slots.js.map +1 -0
- package/dist/schema-converter-owner-history.d.ts +44 -0
- package/dist/schema-converter-owner-history.d.ts.map +1 -0
- package/dist/schema-converter-owner-history.js +90 -0
- package/dist/schema-converter-owner-history.js.map +1 -0
- package/dist/schema-converter.d.ts +6 -1
- package/dist/schema-converter.d.ts.map +1 -1
- package/dist/schema-converter.js +12 -1
- package/dist/schema-converter.js.map +1 -1
- package/dist/step-export-types.d.ts +6 -0
- package/dist/step-export-types.d.ts.map +1 -1
- package/dist/step-export-types.js.map +1 -1
- package/dist/step-exporter.d.ts.map +1 -1
- package/dist/step-exporter.js +6 -0
- package/dist/step-exporter.js.map +1 -1
- package/dist/step-header.d.ts.map +1 -1
- package/dist/step-header.js +1 -0
- package/dist/step-header.js.map +1 -1
- package/dist/step-overlay-entities.d.ts.map +1 -1
- package/dist/step-overlay-entities.js +2 -5
- package/dist/step-overlay-entities.js.map +1 -1
- package/dist/step-pass-builder.d.ts.map +1 -1
- package/dist/step-pass-builder.js +2 -0
- package/dist/step-pass-builder.js.map +1 -1
- package/dist/step-property-set-generators.d.ts +1 -1
- package/dist/step-property-set-generators.d.ts.map +1 -1
- package/dist/step-property-set-generators.js +7 -5
- package/dist/step-property-set-generators.js.map +1 -1
- package/dist/step-property-set-readers.d.ts +14 -3
- package/dist/step-property-set-readers.d.ts.map +1 -1
- package/dist/step-property-set-readers.js +23 -9
- package/dist/step-property-set-readers.js.map +1 -1
- package/dist/step-property-sets.js +1 -1
- package/dist/step-property-sets.js.map +1 -1
- package/dist/step-source-iteration.d.ts.map +1 -1
- package/dist/step-source-iteration.js +1 -5
- package/dist/step-source-iteration.js.map +1 -1
- package/dist/zero-content.d.ts +32 -0
- package/dist/zero-content.d.ts.map +1 -0
- package/dist/zero-content.js +64 -0
- package/dist/zero-content.js.map +1 -0
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parquet-exporter.js","sourceRoot":"","sources":["../src/parquet-exporter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parquet-exporter.js","sourceRoot":"","sources":["../src/parquet-exporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,8 +15,10 @@
|
|
|
15
15
|
* without retaining a fourth parser (LTplus-AG/ifc-lite#4125/#4200).
|
|
16
16
|
*
|
|
17
17
|
* The validated splitter preserves an empty trailing slot so malformed
|
|
18
|
-
* fixed-arity records cannot shift positional meaning
|
|
19
|
-
* whitespace around
|
|
18
|
+
* fixed-arity records cannot shift positional meaning. It does NOT trim
|
|
19
|
+
* whitespace around a token, whatever this comment used to say: measured,
|
|
20
|
+
* `splitTopLevelStepArguments("'a' , $ , #3 ")` returns
|
|
21
|
+
* `["'a' ", " $ ", " #3 "]`, and no test pinned the trimming half.
|
|
20
22
|
*/
|
|
21
23
|
export declare function splitTopLevelAttributes(attrsRaw: string): string[] | null;
|
|
22
24
|
/**
|
|
@@ -54,11 +56,18 @@ export declare const BY_NAME_ATTR_REMAP_TYPES: Set<string>;
|
|
|
54
56
|
* prefix of the other.
|
|
55
57
|
*
|
|
56
58
|
* A target attribute with no same-named source attribute becomes `$`
|
|
57
|
-
* (unknown) rather than a guess
|
|
58
|
-
*
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
59
|
+
* (unknown) rather than a guess; a source attribute with no same-named target
|
|
60
|
+
* slot is dropped. Both are honest data loss for attributes the target
|
|
61
|
+
* schema's OWN shape does not carry under that name — never a misplaced value.
|
|
62
|
+
*
|
|
63
|
+
* That `$` is not the last word on a slot IFC2X3 requires a value in.
|
|
64
|
+
* `IfcDoorStyle`/`IfcWindowStyle` declare `OperationType`, `ConstructionType`,
|
|
65
|
+
* `ParameterTakesPrecedence` and `Sizeable` mandatory, and
|
|
66
|
+
* `IfcDoorType`/`IfcWindowType` have no `ConstructionType` or `Sizeable` at
|
|
67
|
+
* all; `Ifc2x3SlotFill` settles all four from the generated required-slot
|
|
68
|
+
* table straight after this runs — on every conversion to IFC2X3, fill
|
|
69
|
+
* argument or not — because this output carries exactly the target's
|
|
70
|
+
* attribute count. Same policy and shape as the Rust `remap_attrs_by_name`.
|
|
62
71
|
*/
|
|
63
72
|
export declare function remapRenamedAttributesByName(attrsRaw: string, srcNames: readonly string[], tgtNames: readonly string[]): string | null;
|
|
64
73
|
//# sourceMappingURL=schema-converter-attr-remap.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-converter-attr-remap.d.ts","sourceRoot":"","sources":["../src/schema-converter-attr-remap.ts"],"names":[],"mappings":"AAMA;;;;;GAKG;AAEH
|
|
1
|
+
{"version":3,"file":"schema-converter-attr-remap.d.ts","sourceRoot":"","sources":["../src/schema-converter-attr-remap.ts"],"names":[],"mappings":"AAMA;;;;;GAKG;AAEH;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAEzE;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,wBAAwB,aAA4C,CAAC;AAElF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,QAAQ,EAAE,SAAS,MAAM,EAAE,GAC1B,MAAM,GAAG,IAAI,CAQf"}
|
|
@@ -19,8 +19,10 @@ import { splitTopLevelStepArguments } from './step-argument-parser.js';
|
|
|
19
19
|
* without retaining a fourth parser (LTplus-AG/ifc-lite#4125/#4200).
|
|
20
20
|
*
|
|
21
21
|
* The validated splitter preserves an empty trailing slot so malformed
|
|
22
|
-
* fixed-arity records cannot shift positional meaning
|
|
23
|
-
* whitespace around
|
|
22
|
+
* fixed-arity records cannot shift positional meaning. It does NOT trim
|
|
23
|
+
* whitespace around a token, whatever this comment used to say: measured,
|
|
24
|
+
* `splitTopLevelStepArguments("'a' , $ , #3 ")` returns
|
|
25
|
+
* `["'a' ", " $ ", " #3 "]`, and no test pinned the trimming half.
|
|
24
26
|
*/
|
|
25
27
|
export function splitTopLevelAttributes(attrsRaw) {
|
|
26
28
|
return splitTopLevelStepArguments(attrsRaw);
|
|
@@ -48,22 +50,6 @@ export function splitTopLevelAttributes(attrsRaw) {
|
|
|
48
50
|
* differently shaped) representation for it.
|
|
49
51
|
*/
|
|
50
52
|
export const BY_NAME_ATTR_REMAP_TYPES = new Set(['IFCDOORTYPE', 'IFCWINDOWTYPE']);
|
|
51
|
-
/**
|
|
52
|
-
* The value written into a remap target slot that IFC2X3 declares mandatory
|
|
53
|
-
* when the source has nothing for it. `IfcDoorStyle`/`IfcWindowStyle` require
|
|
54
|
-
* `OperationType`, `ConstructionType`, `ParameterTakesPrecedence` and
|
|
55
|
-
* `Sizeable`; IFC4's types have no `ConstructionType` or `Sizeable` and leave
|
|
56
|
-
* `ParameterTakesPrecedence` optional, so a plain `$` there made a record a
|
|
57
|
-
* strict Part 21 reader rejects. `.NOTDEFINED.` is a member of every one of
|
|
58
|
-
* those enums and `.F.` is the BOOLEAN that claims nothing. Same table as
|
|
59
|
-
* `ifc2x3_mandatory_default` in the Rust `schema_convert.rs`.
|
|
60
|
-
*/
|
|
61
|
-
const IFC2X3_MANDATORY_DEFAULTS = new Map([
|
|
62
|
-
['OperationType', '.NOTDEFINED.'],
|
|
63
|
-
['ConstructionType', '.NOTDEFINED.'],
|
|
64
|
-
['ParameterTakesPrecedence', '.F.'],
|
|
65
|
-
['Sizeable', '.F.'],
|
|
66
|
-
]);
|
|
67
53
|
/**
|
|
68
54
|
* Reconcile a renamed entity's attribute list by matching attribute NAMES
|
|
69
55
|
* between the source and target schema tables, rather than by position.
|
|
@@ -76,11 +62,18 @@ const IFC2X3_MANDATORY_DEFAULTS = new Map([
|
|
|
76
62
|
* prefix of the other.
|
|
77
63
|
*
|
|
78
64
|
* A target attribute with no same-named source attribute becomes `$`
|
|
79
|
-
* (unknown) rather than a guess
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
*
|
|
65
|
+
* (unknown) rather than a guess; a source attribute with no same-named target
|
|
66
|
+
* slot is dropped. Both are honest data loss for attributes the target
|
|
67
|
+
* schema's OWN shape does not carry under that name — never a misplaced value.
|
|
68
|
+
*
|
|
69
|
+
* That `$` is not the last word on a slot IFC2X3 requires a value in.
|
|
70
|
+
* `IfcDoorStyle`/`IfcWindowStyle` declare `OperationType`, `ConstructionType`,
|
|
71
|
+
* `ParameterTakesPrecedence` and `Sizeable` mandatory, and
|
|
72
|
+
* `IfcDoorType`/`IfcWindowType` have no `ConstructionType` or `Sizeable` at
|
|
73
|
+
* all; `Ifc2x3SlotFill` settles all four from the generated required-slot
|
|
74
|
+
* table straight after this runs — on every conversion to IFC2X3, fill
|
|
75
|
+
* argument or not — because this output carries exactly the target's
|
|
76
|
+
* attribute count. Same policy and shape as the Rust `remap_attrs_by_name`.
|
|
84
77
|
*/
|
|
85
78
|
export function remapRenamedAttributesByName(attrsRaw, srcNames, tgtNames) {
|
|
86
79
|
const values = splitTopLevelAttributes(attrsRaw);
|
|
@@ -90,11 +83,6 @@ export function remapRenamedAttributesByName(attrsRaw, srcNames, tgtNames) {
|
|
|
90
83
|
for (let i = 0; i < srcNames.length && i < values.length; i++) {
|
|
91
84
|
byName.set(srcNames[i], values[i]);
|
|
92
85
|
}
|
|
93
|
-
return tgtNames
|
|
94
|
-
.map((name) => {
|
|
95
|
-
const given = byName.get(name);
|
|
96
|
-
return given !== undefined && given !== '$' ? given : (IFC2X3_MANDATORY_DEFAULTS.get(name) ?? '$');
|
|
97
|
-
})
|
|
98
|
-
.join(',');
|
|
86
|
+
return tgtNames.map((name) => byName.get(name) ?? '$').join(',');
|
|
99
87
|
}
|
|
100
88
|
//# sourceMappingURL=schema-converter-attr-remap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-converter-attr-remap.js","sourceRoot":"","sources":["../src/schema-converter-attr-remap.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAEvE;;;;;GAKG;AAEH
|
|
1
|
+
{"version":3,"file":"schema-converter-attr-remap.js","sourceRoot":"","sources":["../src/schema-converter-attr-remap.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAEvE;;;;;GAKG;AAEH;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAAgB;IACtD,OAAO,0BAA0B,CAAC,QAAQ,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;AAElF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,4BAA4B,CAC1C,QAAgB,EAChB,QAA2B,EAC3B,QAA2B;IAE3B,MAAM,MAAM,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnE,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/** Re-exported so an exporter has ONE door to the IFC2X3 slot fills: which
|
|
2
|
+
* owner history to {@link Ifc2x3SlotFill.prefer} is part of the same job. */
|
|
3
|
+
export { firstWrittenOwnerHistoryRef } from './schema-converter-owner-history.js';
|
|
4
|
+
/**
|
|
5
|
+
* Slots IFC2X3 requires a value in, on a downgrade to IFC2X3 (#4714).
|
|
6
|
+
*
|
|
7
|
+
* IFC4 made attributes optional that IFC2X3 declares mandatory, so a valid
|
|
8
|
+
* IFC4 record legitimately carries `$` where the IFC2X3 target requires a
|
|
9
|
+
* value. Two policies settle those slots, and this is the one object an
|
|
10
|
+
* exporter threads through {@link convertStepLine} to apply both:
|
|
11
|
+
*
|
|
12
|
+
* - `IfcRoot.OwnerHistory` is REUSED from an `IfcOwnerHistory` the export
|
|
13
|
+
* already writes ({@link OwnerHistoryFill}, #4686). Nothing is invented,
|
|
14
|
+
* because an owner history asserts who made the model, with which
|
|
15
|
+
* application, when.
|
|
16
|
+
* - Every other required slot is read from the generated
|
|
17
|
+
* `IFC2X3_REQUIRED_SLOTS` table. An enum with a `NOTDEFINED` member takes
|
|
18
|
+
* `.NOTDEFINED.` and a BOOLEAN takes `.F.`, the values that claim nothing. A
|
|
19
|
+
* measure, label, identifier or entity reference has no such value, so the
|
|
20
|
+
* slot keeps `$` and is COUNTED: the caller learns the file is not valid
|
|
21
|
+
* IFC2X3 rather than receiving a fabricated dimension.
|
|
22
|
+
*
|
|
23
|
+
* One per export: the exporter settles the owner history before the first
|
|
24
|
+
* record and reads {@link warnings} after the last.
|
|
25
|
+
*
|
|
26
|
+
* Twin of `rust/export/src/schema_ifc2x3_slots.rs`.
|
|
27
|
+
*/
|
|
28
|
+
export declare class Ifc2x3SlotFill {
|
|
29
|
+
private readonly ownerHistory;
|
|
30
|
+
/** Slots other than `OwnerHistory` written with `$` where IFC2X3 requires a
|
|
31
|
+
* value and the schema offers no honest default. Counted per SLOT, not per
|
|
32
|
+
* record: one record can leave several. */
|
|
33
|
+
private requiredUnfilled;
|
|
34
|
+
/** Switch to `ref` when there is one; otherwise keep the current reference.
|
|
35
|
+
* The merged exporter calls this per model, so a model without an owner
|
|
36
|
+
* history of its own reuses one an earlier model wrote. */
|
|
37
|
+
prefer(ref: string | null): void;
|
|
38
|
+
/** Apply both fills to an already-converted IFC2X3 line `#id=TYPE(attrs);`. */
|
|
39
|
+
apply(line: string): string;
|
|
40
|
+
/** One warning per non-zero counter, in the channel the exporters already
|
|
41
|
+
* carry. Same texts as the Rust twin's. */
|
|
42
|
+
warnings(): string[];
|
|
43
|
+
/**
|
|
44
|
+
* Write the recorded fill into every required slot of `line` that holds `$`,
|
|
45
|
+
* counting the ones with no fill. The line is returned as it is when it does
|
|
46
|
+
* not parse (the converter already passed it through for the same reason),
|
|
47
|
+
* when IFC2X3 declares no required slot for its type, or when its ARITY is
|
|
48
|
+
* not the one IFC2X3 declares.
|
|
49
|
+
*
|
|
50
|
+
* That last guard is what keeps a fill from landing on the wrong attribute.
|
|
51
|
+
* The table's indexes are positions in the IFC2X3 attribute list; a record
|
|
52
|
+
* carrying a different number of slots was not reconciled to that list (the
|
|
53
|
+
* downgrade only trims and pads the types whose attribute-name lists are
|
|
54
|
+
* prefix-related), so position `i` there need not be attribute `i` here.
|
|
55
|
+
* Such a record is left alone AND not counted: nothing about its required
|
|
56
|
+
* slots was established.
|
|
57
|
+
*/
|
|
58
|
+
private fillRequired;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=schema-converter-ifc2x3-slots.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-converter-ifc2x3-slots.d.ts","sourceRoot":"","sources":["../src/schema-converter-ifc2x3-slots.ts"],"names":[],"mappings":"AAQA;8EAC8E;AAC9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAMlF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0B;IAEvD;;gDAE4C;IAC5C,OAAO,CAAC,gBAAgB,CAAK;IAE7B;;gEAE4D;IAC5D,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAIhC,+EAA+E;IAC/E,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI3B;gDAC4C;IAC5C,QAAQ,IAAI,MAAM,EAAE;IAYpB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,YAAY;CAqBrB"}
|
|
@@ -0,0 +1,104 @@
|
|
|
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 { splitTopLevelStepArguments } from './step-argument-parser.js';
|
|
5
|
+
import { OwnerHistoryFill } from './schema-converter-owner-history.js';
|
|
6
|
+
import { IFC2X3_REQUIRED_SLOTS } from './generated/ifc2x3-required-slots.js';
|
|
7
|
+
/** Re-exported so an exporter has ONE door to the IFC2X3 slot fills: which
|
|
8
|
+
* owner history to {@link Ifc2x3SlotFill.prefer} is part of the same job. */
|
|
9
|
+
export { firstWrittenOwnerHistoryRef } from './schema-converter-owner-history.js';
|
|
10
|
+
/** The generated rows keyed by UPPERCASE entity type, built once. */
|
|
11
|
+
const BY_TYPE = new Map(IFC2X3_REQUIRED_SLOTS.map(([type, arity, slots]) => [type, { arity, slots }]));
|
|
12
|
+
/**
|
|
13
|
+
* Slots IFC2X3 requires a value in, on a downgrade to IFC2X3 (#4714).
|
|
14
|
+
*
|
|
15
|
+
* IFC4 made attributes optional that IFC2X3 declares mandatory, so a valid
|
|
16
|
+
* IFC4 record legitimately carries `$` where the IFC2X3 target requires a
|
|
17
|
+
* value. Two policies settle those slots, and this is the one object an
|
|
18
|
+
* exporter threads through {@link convertStepLine} to apply both:
|
|
19
|
+
*
|
|
20
|
+
* - `IfcRoot.OwnerHistory` is REUSED from an `IfcOwnerHistory` the export
|
|
21
|
+
* already writes ({@link OwnerHistoryFill}, #4686). Nothing is invented,
|
|
22
|
+
* because an owner history asserts who made the model, with which
|
|
23
|
+
* application, when.
|
|
24
|
+
* - Every other required slot is read from the generated
|
|
25
|
+
* `IFC2X3_REQUIRED_SLOTS` table. An enum with a `NOTDEFINED` member takes
|
|
26
|
+
* `.NOTDEFINED.` and a BOOLEAN takes `.F.`, the values that claim nothing. A
|
|
27
|
+
* measure, label, identifier or entity reference has no such value, so the
|
|
28
|
+
* slot keeps `$` and is COUNTED: the caller learns the file is not valid
|
|
29
|
+
* IFC2X3 rather than receiving a fabricated dimension.
|
|
30
|
+
*
|
|
31
|
+
* One per export: the exporter settles the owner history before the first
|
|
32
|
+
* record and reads {@link warnings} after the last.
|
|
33
|
+
*
|
|
34
|
+
* Twin of `rust/export/src/schema_ifc2x3_slots.rs`.
|
|
35
|
+
*/
|
|
36
|
+
export class Ifc2x3SlotFill {
|
|
37
|
+
ownerHistory = new OwnerHistoryFill();
|
|
38
|
+
/** Slots other than `OwnerHistory` written with `$` where IFC2X3 requires a
|
|
39
|
+
* value and the schema offers no honest default. Counted per SLOT, not per
|
|
40
|
+
* record: one record can leave several. */
|
|
41
|
+
requiredUnfilled = 0;
|
|
42
|
+
/** Switch to `ref` when there is one; otherwise keep the current reference.
|
|
43
|
+
* The merged exporter calls this per model, so a model without an owner
|
|
44
|
+
* history of its own reuses one an earlier model wrote. */
|
|
45
|
+
prefer(ref) {
|
|
46
|
+
this.ownerHistory.prefer(ref);
|
|
47
|
+
}
|
|
48
|
+
/** Apply both fills to an already-converted IFC2X3 line `#id=TYPE(attrs);`. */
|
|
49
|
+
apply(line) {
|
|
50
|
+
return this.fillRequired(this.ownerHistory.apply(line));
|
|
51
|
+
}
|
|
52
|
+
/** One warning per non-zero counter, in the channel the exporters already
|
|
53
|
+
* carry. Same texts as the Rust twin's. */
|
|
54
|
+
warnings() {
|
|
55
|
+
const out = this.ownerHistory.unfilledWarnings();
|
|
56
|
+
if (this.requiredUnfilled > 0) {
|
|
57
|
+
out.push(`${this.requiredUnfilled} slot(s) keep $ where IFC2X3 requires a value and the schema ` +
|
|
58
|
+
'offers no default that claims nothing (measures, labels, references, and enums with no ' +
|
|
59
|
+
'NOTDEFINED member); the file is not valid IFC2X3 (#4714).');
|
|
60
|
+
}
|
|
61
|
+
return out;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Write the recorded fill into every required slot of `line` that holds `$`,
|
|
65
|
+
* counting the ones with no fill. The line is returned as it is when it does
|
|
66
|
+
* not parse (the converter already passed it through for the same reason),
|
|
67
|
+
* when IFC2X3 declares no required slot for its type, or when its ARITY is
|
|
68
|
+
* not the one IFC2X3 declares.
|
|
69
|
+
*
|
|
70
|
+
* That last guard is what keeps a fill from landing on the wrong attribute.
|
|
71
|
+
* The table's indexes are positions in the IFC2X3 attribute list; a record
|
|
72
|
+
* carrying a different number of slots was not reconciled to that list (the
|
|
73
|
+
* downgrade only trims and pads the types whose attribute-name lists are
|
|
74
|
+
* prefix-related), so position `i` there need not be attribute `i` here.
|
|
75
|
+
* Such a record is left alone AND not counted: nothing about its required
|
|
76
|
+
* slots was established.
|
|
77
|
+
*/
|
|
78
|
+
fillRequired(line) {
|
|
79
|
+
const open = line.indexOf('(');
|
|
80
|
+
const close = line.lastIndexOf(')');
|
|
81
|
+
const eq = line.indexOf('=');
|
|
82
|
+
if (eq < 0 || open <= eq || close <= open)
|
|
83
|
+
return line;
|
|
84
|
+
const row = BY_TYPE.get(line.slice(eq + 1, open).trim().toUpperCase());
|
|
85
|
+
if (row === undefined)
|
|
86
|
+
return line;
|
|
87
|
+
const values = splitTopLevelStepArguments(line.slice(open + 1, close));
|
|
88
|
+
if (values === null || values.length !== row.arity)
|
|
89
|
+
return line;
|
|
90
|
+
let changed = false;
|
|
91
|
+
for (const [index, , fill] of row.slots) {
|
|
92
|
+
if (values[index].trim() !== '$')
|
|
93
|
+
continue;
|
|
94
|
+
if (fill === null) {
|
|
95
|
+
this.requiredUnfilled++;
|
|
96
|
+
continue;
|
|
97
|
+
}
|
|
98
|
+
values[index] = fill;
|
|
99
|
+
changed = true;
|
|
100
|
+
}
|
|
101
|
+
return changed ? `${line.slice(0, open + 1)}${values.join(',')}${line.slice(close)}` : line;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=schema-converter-ifc2x3-slots.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-converter-ifc2x3-slots.js","sourceRoot":"","sources":["../src/schema-converter-ifc2x3-slots.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `IfcRoot.OwnerHistory` on a downgrade to IFC2X3 (#4686).
|
|
3
|
+
*
|
|
4
|
+
* OwnerHistory is OPTIONAL in IFC4 and IFC4X3 but MANDATORY in IFC2X3, so a
|
|
5
|
+
* record the source wrote with `$` there is invalid once the header says
|
|
6
|
+
* IFC2X3. The downgrade reuses an `IfcOwnerHistory` the export already writes;
|
|
7
|
+
* it never invents one, because an owner history asserts who made the model
|
|
8
|
+
* with which application and when, and the source did not say. When the
|
|
9
|
+
* export keeps none, the slot stays `$` and the record is counted, so the
|
|
10
|
+
* exporter can report that the file is not valid IFC2X3.
|
|
11
|
+
*
|
|
12
|
+
* One per export: the exporter settles the reference before the first record
|
|
13
|
+
* and reads {@link unfilledWarning} after the last.
|
|
14
|
+
*
|
|
15
|
+
* Twin of `rust/export/src/schema_owner_history.rs`.
|
|
16
|
+
*/
|
|
17
|
+
export declare class OwnerHistoryFill {
|
|
18
|
+
/** Records written with `$` in a mandatory OwnerHistory slot because there
|
|
19
|
+
* was no reference to write. */
|
|
20
|
+
unfilled: number;
|
|
21
|
+
/** `#N` of an `IfcOwnerHistory` the export writes, as numbered in the
|
|
22
|
+
* OUTPUT, or null while it has none; set through {@link prefer}. */
|
|
23
|
+
private ref;
|
|
24
|
+
/** Switch to `ref` when there is one; otherwise keep the current reference.
|
|
25
|
+
* The merged exporter calls this per model, so a model without an owner
|
|
26
|
+
* history of its own reuses one an earlier model wrote. */
|
|
27
|
+
prefer(ref: string | null): void;
|
|
28
|
+
/**
|
|
29
|
+
* Fill slot 1 of an already-converted IFC2X3 line `#id=TYPE(attrs);` when
|
|
30
|
+
* `TYPE` is an `IfcRoot` subtype and the slot is `$`. Every other byte of
|
|
31
|
+
* the line is kept; a line that does not parse is returned unchanged.
|
|
32
|
+
*/
|
|
33
|
+
apply(line: string): string;
|
|
34
|
+
/** The warning for {@link unfilled}, or none when every slot was filled.
|
|
35
|
+
* Same text as the Rust twin's. */
|
|
36
|
+
unfilledWarnings(): string[];
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* `#id` of the first owner history in `ids` (source order) that `written`
|
|
40
|
+
* accepts, numbered in the output (`offset` added), or null when none is.
|
|
41
|
+
* `ids` is a store's `byType.get('IFCOWNERHISTORY')`.
|
|
42
|
+
*/
|
|
43
|
+
export declare function firstWrittenOwnerHistoryRef(ids: readonly number[] | undefined, written: (id: number) => boolean, offset: number): string | null;
|
|
44
|
+
//# sourceMappingURL=schema-converter-owner-history.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-converter-owner-history.d.ts","sourceRoot":"","sources":["../src/schema-converter-owner-history.ts"],"names":[],"mappings":"AAoBA;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,gBAAgB;IAC3B;qCACiC;IACjC,QAAQ,SAAK;IAEb;yEACqE;IACrE,OAAO,CAAC,GAAG,CAAuB;IAElC;;gEAE4D;IAC5D,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAIhC;;;;OAIG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAgB3B;wCACoC;IACpC,gBAAgB,IAAI,MAAM,EAAE;CAO7B;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EAClC,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,EAChC,MAAM,EAAE,MAAM,GACb,MAAM,GAAG,IAAI,CAGf"}
|
|
@@ -0,0 +1,90 @@
|
|
|
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 { splitTopLevelStepArguments } from './step-argument-parser.js';
|
|
5
|
+
import { isRootedType } from './merged-guid.js';
|
|
6
|
+
/** {@link isRootedType} per type name: `apply` asks once per converted line,
|
|
7
|
+
* and the inheritance walk allocates per step. */
|
|
8
|
+
const ROOTED_BY_TYPE = new Map();
|
|
9
|
+
function isRooted(type) {
|
|
10
|
+
let rooted = ROOTED_BY_TYPE.get(type);
|
|
11
|
+
if (rooted === undefined) {
|
|
12
|
+
rooted = isRootedType(type);
|
|
13
|
+
ROOTED_BY_TYPE.set(type, rooted);
|
|
14
|
+
}
|
|
15
|
+
return rooted;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* `IfcRoot.OwnerHistory` on a downgrade to IFC2X3 (#4686).
|
|
19
|
+
*
|
|
20
|
+
* OwnerHistory is OPTIONAL in IFC4 and IFC4X3 but MANDATORY in IFC2X3, so a
|
|
21
|
+
* record the source wrote with `$` there is invalid once the header says
|
|
22
|
+
* IFC2X3. The downgrade reuses an `IfcOwnerHistory` the export already writes;
|
|
23
|
+
* it never invents one, because an owner history asserts who made the model
|
|
24
|
+
* with which application and when, and the source did not say. When the
|
|
25
|
+
* export keeps none, the slot stays `$` and the record is counted, so the
|
|
26
|
+
* exporter can report that the file is not valid IFC2X3.
|
|
27
|
+
*
|
|
28
|
+
* One per export: the exporter settles the reference before the first record
|
|
29
|
+
* and reads {@link unfilledWarning} after the last.
|
|
30
|
+
*
|
|
31
|
+
* Twin of `rust/export/src/schema_owner_history.rs`.
|
|
32
|
+
*/
|
|
33
|
+
export class OwnerHistoryFill {
|
|
34
|
+
/** Records written with `$` in a mandatory OwnerHistory slot because there
|
|
35
|
+
* was no reference to write. */
|
|
36
|
+
unfilled = 0;
|
|
37
|
+
/** `#N` of an `IfcOwnerHistory` the export writes, as numbered in the
|
|
38
|
+
* OUTPUT, or null while it has none; set through {@link prefer}. */
|
|
39
|
+
ref = null;
|
|
40
|
+
/** Switch to `ref` when there is one; otherwise keep the current reference.
|
|
41
|
+
* The merged exporter calls this per model, so a model without an owner
|
|
42
|
+
* history of its own reuses one an earlier model wrote. */
|
|
43
|
+
prefer(ref) {
|
|
44
|
+
if (ref !== null)
|
|
45
|
+
this.ref = ref;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Fill slot 1 of an already-converted IFC2X3 line `#id=TYPE(attrs);` when
|
|
49
|
+
* `TYPE` is an `IfcRoot` subtype and the slot is `$`. Every other byte of
|
|
50
|
+
* the line is kept; a line that does not parse is returned unchanged.
|
|
51
|
+
*/
|
|
52
|
+
apply(line) {
|
|
53
|
+
const open = line.indexOf('(');
|
|
54
|
+
const close = line.lastIndexOf(')');
|
|
55
|
+
const eq = line.indexOf('=');
|
|
56
|
+
if (eq < 0 || open <= eq || close <= open)
|
|
57
|
+
return line;
|
|
58
|
+
if (!isRooted(line.slice(eq + 1, open).trim()))
|
|
59
|
+
return line;
|
|
60
|
+
const slots = splitTopLevelStepArguments(line.slice(open + 1, close));
|
|
61
|
+
if (slots === null || slots.length < 2 || slots[1].trim() !== '$')
|
|
62
|
+
return line;
|
|
63
|
+
if (this.ref === null) {
|
|
64
|
+
this.unfilled++;
|
|
65
|
+
return line;
|
|
66
|
+
}
|
|
67
|
+
slots[1] = this.ref;
|
|
68
|
+
return `${line.slice(0, open + 1)}${slots.join(',')}${line.slice(close)}`;
|
|
69
|
+
}
|
|
70
|
+
/** The warning for {@link unfilled}, or none when every slot was filled.
|
|
71
|
+
* Same text as the Rust twin's. */
|
|
72
|
+
unfilledWarnings() {
|
|
73
|
+
if (this.unfilled === 0)
|
|
74
|
+
return [];
|
|
75
|
+
return [
|
|
76
|
+
`${this.unfilled} record(s) keep $ in OwnerHistory, which IFC2X3 requires, because the ` +
|
|
77
|
+
'export writes no IfcOwnerHistory to point them at; the file is not valid IFC2X3 (#4686).',
|
|
78
|
+
];
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* `#id` of the first owner history in `ids` (source order) that `written`
|
|
83
|
+
* accepts, numbered in the output (`offset` added), or null when none is.
|
|
84
|
+
* `ids` is a store's `byType.get('IFCOWNERHISTORY')`.
|
|
85
|
+
*/
|
|
86
|
+
export function firstWrittenOwnerHistoryRef(ids, written, offset) {
|
|
87
|
+
const id = ids?.find(written);
|
|
88
|
+
return id === undefined ? null : `#${id + offset}`;
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=schema-converter-owner-history.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-converter-owner-history.js","sourceRoot":"","sources":["../src/schema-converter-owner-history.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;mDACmD;AACnD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAmB,CAAC;AAElD,SAAS,QAAQ,CAAC,IAAY;IAC5B,IAAI,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5B,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,gBAAgB;IAC3B;qCACiC;IACjC,QAAQ,GAAG,CAAC,CAAC;IAEb;yEACqE;IAC7D,GAAG,GAAkB,IAAI,CAAC;IAElC;;gEAE4D;IAC5D,MAAM,CAAC,GAAkB;QACvB,IAAI,GAAG,KAAK,IAAI;YAAE,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAY;QAChB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QACvD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5D,MAAM,KAAK,GAAG,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACtE,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QAC/E,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC;QACpB,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;IAC5E,CAAC;IAED;wCACoC;IACpC,gBAAgB;QACd,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACnC,OAAO;YACL,GAAG,IAAI,CAAC,QAAQ,wEAAwE;gBACxF,0FAA0F;SAC3F,CAAC;IACJ,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CACzC,GAAkC,EAClC,OAAgC,EAChC,MAAc;IAEd,MAAM,EAAE,GAAG,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,OAAO,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;AACrD,CAAC"}
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
* and adjusts attribute counts via regex replacement on raw STEP lines.
|
|
17
17
|
*/
|
|
18
18
|
import { type RandomSource } from '@ifc-lite/encoding';
|
|
19
|
+
import { Ifc2x3SlotFill } from './schema-converter-ifc2x3-slots.js';
|
|
19
20
|
export type IfcSchemaVersion = 'IFC2X3' | 'IFC4' | 'IFC4X3' | 'IFC5';
|
|
20
21
|
/**
|
|
21
22
|
* Convert an entity type name from one IFC schema version to another.
|
|
@@ -42,9 +43,13 @@ export declare function convertEntityType(entityType: string, fromSchema: IfcSch
|
|
|
42
43
|
* @param random - Optional seeded `RandomSource` for the GlobalId of any
|
|
43
44
|
* IFCPROXY placeholder minted here. Omit for the default random path; pass
|
|
44
45
|
* a seeded source when the caller needs byte-reproducible output.
|
|
46
|
+
* @param slots - This package's exporters pass one; it carries the owner
|
|
47
|
+
* history they reuse (#4686) and collects what they could not settle.
|
|
48
|
+
* Omitted, a throwaway stands in, so the generated table's own defaults are
|
|
49
|
+
* still written but the OwnerHistory reuse and both counts are lost.
|
|
45
50
|
* @returns Converted line (entities without valid target representation become IFCPROXY placeholders)
|
|
46
51
|
*/
|
|
47
|
-
export declare function convertStepLine(line: string, fromSchema: IfcSchemaVersion, toSchema: IfcSchemaVersion, random?: RandomSource): string;
|
|
52
|
+
export declare function convertStepLine(line: string, fromSchema: IfcSchemaVersion, toSchema: IfcSchemaVersion, random?: RandomSource, slots?: Ifc2x3SlotFill): string;
|
|
48
53
|
/**
|
|
49
54
|
* Check if a conversion between two schema versions requires entity type changes.
|
|
50
55
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-converter.d.ts","sourceRoot":"","sources":["../src/schema-converter.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"schema-converter.d.ts","sourceRoot":"","sources":["../src/schema-converter.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMxE,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEpE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;AA4GrE;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,gBAAgB,GACzB,MAAM,CAQR;AAwGD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,CAAC,EAAE,YAAY,EACrB,KAAK,CAAC,EAAE,cAAc,GACrB,MAAM,CAIR;AA0JD;;GAEG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,gBAAgB,GACzB,MAAM,CAqBR"}
|
package/dist/schema-converter.js
CHANGED
|
@@ -24,6 +24,7 @@ import { ENTITIES_IFC2X3, ENTITIES_IFC4, ENTITIES_IFC4X3 } from '@ifc-lite/data'
|
|
|
24
24
|
import { resolveUnrepresentedEntity } from './schema-untranslatable.js';
|
|
25
25
|
import { BY_NAME_ATTR_REMAP_TYPES, remapRenamedAttributesByName } from './schema-converter-attr-remap.js';
|
|
26
26
|
import { splitTopLevelStepArguments } from './step-argument-parser.js';
|
|
27
|
+
import { Ifc2x3SlotFill } from './schema-converter-ifc2x3-slots.js';
|
|
27
28
|
/**
|
|
28
29
|
* Entity type name mappings between schema versions.
|
|
29
30
|
*
|
|
@@ -258,11 +259,21 @@ function requireTopLevelAttributes(attrsRaw) {
|
|
|
258
259
|
* @param random - Optional seeded `RandomSource` for the GlobalId of any
|
|
259
260
|
* IFCPROXY placeholder minted here. Omit for the default random path; pass
|
|
260
261
|
* a seeded source when the caller needs byte-reproducible output.
|
|
262
|
+
* @param slots - This package's exporters pass one; it carries the owner
|
|
263
|
+
* history they reuse (#4686) and collects what they could not settle.
|
|
264
|
+
* Omitted, a throwaway stands in, so the generated table's own defaults are
|
|
265
|
+
* still written but the OwnerHistory reuse and both counts are lost.
|
|
261
266
|
* @returns Converted line (entities without valid target representation become IFCPROXY placeholders)
|
|
262
267
|
*/
|
|
263
|
-
export function convertStepLine(line, fromSchema, toSchema, random) {
|
|
268
|
+
export function convertStepLine(line, fromSchema, toSchema, random, slots) {
|
|
264
269
|
if (fromSchema === toSchema)
|
|
265
270
|
return line;
|
|
271
|
+
const converted = convertRecord(line, fromSchema, toSchema, random);
|
|
272
|
+
return toSchema === 'IFC2X3' ? (slots ?? new Ifc2x3SlotFill()).apply(converted) : converted;
|
|
273
|
+
}
|
|
274
|
+
/** {@link convertStepLine} before the IFC2X3 required-slot fills, between two
|
|
275
|
+
* different schemas. */
|
|
276
|
+
function convertRecord(line, fromSchema, toSchema, random) {
|
|
266
277
|
// Parse: #ID=TYPE(attrs); — tolerate whitespace around `=` and before the
|
|
267
278
|
// type (some exporters, e.g. Tekla, write `#34498= IFCOPENINGELEMENT(...)`).
|
|
268
279
|
// Without this those lines passed through unconverted, so neither type renames
|