@ifc-lite/export 3.1.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/README.md +3 -1
  2. package/dist/anonymize-export.d.ts.map +1 -1
  3. package/dist/anonymize-export.js +108 -8
  4. package/dist/anonymize-export.js.map +1 -1
  5. package/dist/anonymize-placement.js +4 -4
  6. package/dist/anonymize-scrub.d.ts.map +1 -1
  7. package/dist/anonymize-scrub.js +5 -2
  8. package/dist/anonymize-scrub.js.map +1 -1
  9. package/dist/anonymize-types.d.ts +30 -7
  10. package/dist/anonymize-types.d.ts.map +1 -1
  11. package/dist/declared-property-type.d.ts +15 -0
  12. package/dist/declared-property-type.d.ts.map +1 -1
  13. package/dist/declared-property-type.js +43 -0
  14. package/dist/declared-property-type.js.map +1 -1
  15. package/dist/georef-closure.d.ts +55 -0
  16. package/dist/georef-closure.d.ts.map +1 -0
  17. package/dist/georef-closure.js +95 -0
  18. package/dist/georef-closure.js.map +1 -0
  19. package/dist/glb.d.ts.map +1 -1
  20. package/dist/glb.js +26 -2
  21. package/dist/glb.js.map +1 -1
  22. package/dist/ifc5-classification.d.ts +36 -0
  23. package/dist/ifc5-classification.d.ts.map +1 -0
  24. package/dist/ifc5-classification.js +46 -0
  25. package/dist/ifc5-classification.js.map +1 -0
  26. package/dist/ifc5-export-helpers.d.ts +32 -0
  27. package/dist/ifc5-export-helpers.d.ts.map +1 -0
  28. package/dist/ifc5-export-helpers.js +84 -0
  29. package/dist/ifc5-export-helpers.js.map +1 -0
  30. package/dist/ifc5-exporter.d.ts.map +1 -1
  31. package/dist/ifc5-exporter.js +14 -86
  32. package/dist/ifc5-exporter.js.map +1 -1
  33. package/dist/ifc5-material.d.ts +38 -0
  34. package/dist/ifc5-material.d.ts.map +1 -0
  35. package/dist/ifc5-material.js +32 -0
  36. package/dist/ifc5-material.js.map +1 -0
  37. package/dist/index.d.ts +2 -1
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +2 -1
  40. package/dist/index.js.map +1 -1
  41. package/dist/merged-context.d.ts +100 -0
  42. package/dist/merged-context.d.ts.map +1 -0
  43. package/dist/merged-context.js +211 -0
  44. package/dist/merged-context.js.map +1 -0
  45. package/dist/merged-empty-containers.d.ts +63 -0
  46. package/dist/merged-empty-containers.d.ts.map +1 -0
  47. package/dist/merged-empty-containers.js +354 -0
  48. package/dist/merged-empty-containers.js.map +1 -0
  49. package/dist/merged-exporter.d.ts +28 -67
  50. package/dist/merged-exporter.d.ts.map +1 -1
  51. package/dist/merged-exporter.js +134 -258
  52. package/dist/merged-exporter.js.map +1 -1
  53. package/dist/merged-guid.d.ts +48 -0
  54. package/dist/merged-guid.d.ts.map +1 -0
  55. package/dist/merged-guid.js +128 -0
  56. package/dist/merged-guid.js.map +1 -0
  57. package/dist/merged-rel-aggregates.d.ts +63 -0
  58. package/dist/merged-rel-aggregates.d.ts.map +1 -0
  59. package/dist/merged-rel-aggregates.js +122 -0
  60. package/dist/merged-rel-aggregates.js.map +1 -0
  61. package/dist/merged-remap.d.ts +18 -0
  62. package/dist/merged-remap.d.ts.map +1 -0
  63. package/dist/merged-remap.js +66 -0
  64. package/dist/merged-remap.js.map +1 -0
  65. package/dist/merged-subcontext.d.ts +41 -0
  66. package/dist/merged-subcontext.d.ts.map +1 -0
  67. package/dist/merged-subcontext.js +99 -0
  68. package/dist/merged-subcontext.js.map +1 -0
  69. package/dist/parquet-exporter-ondemand.d.ts +34 -0
  70. package/dist/parquet-exporter-ondemand.d.ts.map +1 -0
  71. package/dist/parquet-exporter-ondemand.js +89 -0
  72. package/dist/parquet-exporter-ondemand.js.map +1 -0
  73. package/dist/parquet-exporter.d.ts +1 -29
  74. package/dist/parquet-exporter.d.ts.map +1 -1
  75. package/dist/parquet-exporter.js +59 -81
  76. package/dist/parquet-exporter.js.map +1 -1
  77. package/dist/parquet-type-strings.d.ts +11 -0
  78. package/dist/parquet-type-strings.d.ts.map +1 -0
  79. package/dist/parquet-type-strings.js +40 -0
  80. package/dist/parquet-type-strings.js.map +1 -0
  81. package/dist/parquet-uint32-columns.d.ts +30 -0
  82. package/dist/parquet-uint32-columns.d.ts.map +1 -0
  83. package/dist/parquet-uint32-columns.js +38 -0
  84. package/dist/parquet-uint32-columns.js.map +1 -0
  85. package/dist/reference-collector.d.ts +0 -31
  86. package/dist/reference-collector.d.ts.map +1 -1
  87. package/dist/reference-collector.js +27 -82
  88. package/dist/reference-collector.js.map +1 -1
  89. package/dist/related-entities.d.ts.map +1 -1
  90. package/dist/related-entities.js +19 -4
  91. package/dist/related-entities.js.map +1 -1
  92. package/dist/schema-converter-attr-remap.d.ts +53 -0
  93. package/dist/schema-converter-attr-remap.d.ts.map +1 -0
  94. package/dist/schema-converter-attr-remap.js +106 -0
  95. package/dist/schema-converter-attr-remap.js.map +1 -0
  96. package/dist/schema-converter.d.ts.map +1 -1
  97. package/dist/schema-converter.js +24 -1
  98. package/dist/schema-converter.js.map +1 -1
  99. package/dist/schema-untranslatable.d.ts +35 -0
  100. package/dist/schema-untranslatable.d.ts.map +1 -0
  101. package/dist/schema-untranslatable.js +60 -0
  102. package/dist/schema-untranslatable.js.map +1 -0
  103. package/dist/step-argument-parser.d.ts.map +1 -1
  104. package/dist/step-argument-parser.js +11 -1
  105. package/dist/step-argument-parser.js.map +1 -1
  106. package/dist/step-attribute-mutations.js +14 -11
  107. package/dist/step-attribute-mutations.js.map +1 -1
  108. package/dist/step-collection.d.ts.map +1 -1
  109. package/dist/step-collection.js +20 -6
  110. package/dist/step-collection.js.map +1 -1
  111. package/dist/step-export-types.d.ts +15 -0
  112. package/dist/step-export-types.d.ts.map +1 -1
  113. package/dist/step-export-types.js +10 -0
  114. package/dist/step-export-types.js.map +1 -1
  115. package/dist/step-exporter.d.ts.map +1 -1
  116. package/dist/step-exporter.js +9 -1
  117. package/dist/step-exporter.js.map +1 -1
  118. package/dist/step-map-unit.d.ts +2 -1
  119. package/dist/step-map-unit.d.ts.map +1 -1
  120. package/dist/step-map-unit.js.map +1 -1
  121. package/dist/step-serialization.d.ts +10 -30
  122. package/dist/step-serialization.d.ts.map +1 -1
  123. package/dist/step-serialization.js +10 -60
  124. package/dist/step-serialization.js.map +1 -1
  125. package/dist/step-source-iteration.d.ts.map +1 -1
  126. package/dist/step-source-iteration.js +21 -0
  127. package/dist/step-source-iteration.js.map +1 -1
  128. package/dist/style-closure.d.ts +91 -0
  129. package/dist/style-closure.d.ts.map +1 -0
  130. package/dist/style-closure.js +164 -0
  131. package/dist/style-closure.js.map +1 -0
  132. package/dist/subset-entity-reader.d.ts +10 -9
  133. package/dist/subset-entity-reader.d.ts.map +1 -1
  134. package/dist/subset-entity-reader.js +21 -11
  135. package/dist/subset-entity-reader.js.map +1 -1
  136. package/dist/subset-roots.d.ts +17 -1
  137. package/dist/subset-roots.d.ts.map +1 -1
  138. package/dist/subset-roots.js +67 -2
  139. package/dist/subset-roots.js.map +1 -1
  140. package/dist/type-owned-psets.d.ts +19 -0
  141. package/dist/type-owned-psets.d.ts.map +1 -1
  142. package/dist/type-owned-psets.js +31 -0
  143. package/dist/type-owned-psets.js.map +1 -1
  144. package/dist/unit-normalize.d.ts.map +1 -1
  145. package/dist/unit-normalize.js +10 -2
  146. package/dist/unit-normalize.js.map +1 -1
  147. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"merged-exporter.js","sourceRoot":"","sources":["../src/merged-exporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"merged-exporter.js","sourceRoot":"","sources":["../src/merged-exporter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import type { IfcSourceBytes } from '@ifc-lite/parser';
2
+ import type { ExportEntityRef } from './entity-iteration.js';
3
+ /**
4
+ * Whether `type` is an IfcRoot subtype — a schema-derived replacement for a
5
+ * hand-maintained denylist of "non-rooted types whose first attribute happens
6
+ * to be a string". A denylist has to be told about every such type by hand and
7
+ * silently under-covers as the schema grows — `IfcMaterialProfileWithOffsets`
8
+ * and several other resource types were missing and got their leading Name
9
+ * treated as a GlobalId, corrupting ordinary model data on a collision.
10
+ *
11
+ * `getInheritanceChainAcrossSchemas` walks the bundled IFC2X3/IFC4/IFC4X3
12
+ * schema union to the entity's root ancestor; a rooted entity's chain always
13
+ * ends in `IfcRoot`. This mirrors the Rust side's `IfcType::is_subtype_of`
14
+ * schema check, so the two implementations of "is this rooted" agree instead
15
+ * of drifting apart as separate hand-maintained lists.
16
+ *
17
+ * A type unknown to every bundled schema (typo, vendor extension) yields an
18
+ * empty chain and is treated as non-rooted — the same safe-miss direction the
19
+ * old denylist documented: it just skips one GlobalId reconciliation.
20
+ */
21
+ export declare function isRootedType(type: string): boolean;
22
+ /**
23
+ * Read the GlobalId (first quoted attribute) from an already-rendered STEP
24
+ * line. Used to register the id that was actually emitted, after any id
25
+ * remap, GlobalId re-stamp, or schema conversion. Returns null if the first
26
+ * quoted token is not a 22-char GlobalId.
27
+ */
28
+ export declare function readLeadingGuid(entityText: string): string | null;
29
+ /**
30
+ * Mint a fresh, deterministic, collision-free GlobalId for an entity whose id
31
+ * collides. Seeded from the original GlobalId and the model's stable id so the
32
+ * output is reproducible and does not churn when an unrelated earlier model
33
+ * changes size; checked against both already-emitted ids and the ids minted
34
+ * so far for this model.
35
+ */
36
+ export declare function mintUniqueGuid(original: string, modelId: string, emitted: ReadonlyMap<string, unknown>, pendingMinted: Set<string>): string;
37
+ /**
38
+ * Read an entity's GlobalId (first attribute) by decoding only its head.
39
+ * Returns the 22-char id for a rooted entity, or `null` for any entity whose
40
+ * first attribute is not a GlobalId (geometry, lists, property atoms, …).
41
+ */
42
+ export declare function extractGlobalIdFast(ref: ExportEntityRef, source: Uint8Array | IfcSourceBytes): string | null;
43
+ /**
44
+ * Replace an entity's GlobalId (first quoted attribute) with `newGuid`.
45
+ * `newGuid` is a 22-char IFC id (no quote in its charset), so this is safe.
46
+ */
47
+ export declare function replaceGlobalId(entityText: string, newGuid: string): string;
48
+ //# sourceMappingURL=merged-guid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merged-guid.d.ts","sourceRoot":"","sources":["../src/merged-guid.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAc7D;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CASjE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,GACzB,MAAM,CAQR;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,eAAe,EACpB,MAAM,EAAE,UAAU,GAAG,cAAc,GAClC,MAAM,GAAG,IAAI,CAoBf;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAQ3E"}
@@ -0,0 +1,128 @@
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
+ * GlobalId reading, minting and re-stamping for the merged exporter — the JS
6
+ * twin of `rust/export/src/merged/guid.rs`.
7
+ *
8
+ * Split out of `merged-exporter.ts` (none of it used `this`) so the rules for
9
+ * recognising and reconciling an `IfcGloballyUniqueId` live in one module rather
10
+ * than inside the merge loop.
11
+ */
12
+ import { deterministicGlobalId, getInheritanceChainAcrossSchemas } from '@ifc-lite/parser';
13
+ import { asSourceBytes } from '@ifc-lite/parser';
14
+ /**
15
+ * An IfcGloballyUniqueId is exactly 22 characters of the buildingSMART base64
16
+ * alphabet. We use this to recognise a rooted entity (IfcRoot subtype) by its
17
+ * first attribute. Geometry/list entities never carry a string there, but some
18
+ * non-rooted RESOURCE entities lead with a Name/Identifier string that can
19
+ * legitimately be 22 charset chars (e.g. a coded property key). Those are
20
+ * excluded with a schema-derived rootedness check ({@link isRootedType}) so
21
+ * their Name is never mistaken for a GlobalId — otherwise the GlobalId
22
+ * reconciliation could drop or rename them.
23
+ */
24
+ const GLOBAL_ID_RE = /^[0-9A-Za-z_$]{22}$/;
25
+ /**
26
+ * Whether `type` is an IfcRoot subtype — a schema-derived replacement for a
27
+ * hand-maintained denylist of "non-rooted types whose first attribute happens
28
+ * to be a string". A denylist has to be told about every such type by hand and
29
+ * silently under-covers as the schema grows — `IfcMaterialProfileWithOffsets`
30
+ * and several other resource types were missing and got their leading Name
31
+ * treated as a GlobalId, corrupting ordinary model data on a collision.
32
+ *
33
+ * `getInheritanceChainAcrossSchemas` walks the bundled IFC2X3/IFC4/IFC4X3
34
+ * schema union to the entity's root ancestor; a rooted entity's chain always
35
+ * ends in `IfcRoot`. This mirrors the Rust side's `IfcType::is_subtype_of`
36
+ * schema check, so the two implementations of "is this rooted" agree instead
37
+ * of drifting apart as separate hand-maintained lists.
38
+ *
39
+ * A type unknown to every bundled schema (typo, vendor extension) yields an
40
+ * empty chain and is treated as non-rooted — the same safe-miss direction the
41
+ * old denylist documented: it just skips one GlobalId reconciliation.
42
+ */
43
+ export function isRootedType(type) {
44
+ return getInheritanceChainAcrossSchemas(type).includes('IfcRoot');
45
+ }
46
+ /**
47
+ * Read the GlobalId (first quoted attribute) from an already-rendered STEP
48
+ * line. Used to register the id that was actually emitted, after any id
49
+ * remap, GlobalId re-stamp, or schema conversion. Returns null if the first
50
+ * quoted token is not a 22-char GlobalId.
51
+ */
52
+ export function readLeadingGuid(entityText) {
53
+ const open = entityText.indexOf('(');
54
+ if (open === -1)
55
+ return null;
56
+ const q1 = entityText.indexOf("'", open + 1);
57
+ if (q1 === -1)
58
+ return null;
59
+ const q2 = entityText.indexOf("'", q1 + 1);
60
+ if (q2 === -1)
61
+ return null;
62
+ const raw = entityText.slice(q1 + 1, q2);
63
+ return GLOBAL_ID_RE.test(raw) ? raw : null;
64
+ }
65
+ /**
66
+ * Mint a fresh, deterministic, collision-free GlobalId for an entity whose id
67
+ * collides. Seeded from the original GlobalId and the model's stable id so the
68
+ * output is reproducible and does not churn when an unrelated earlier model
69
+ * changes size; checked against both already-emitted ids and the ids minted
70
+ * so far for this model.
71
+ */
72
+ export function mintUniqueGuid(original, modelId, emitted, pendingMinted) {
73
+ let candidate = deterministicGlobalId(`${original}#${modelId}`);
74
+ let n = 0;
75
+ while (emitted.has(candidate) || pendingMinted.has(candidate)) {
76
+ candidate = deterministicGlobalId(`${original}#${modelId}#${n++}`);
77
+ }
78
+ pendingMinted.add(candidate);
79
+ return candidate;
80
+ }
81
+ /**
82
+ * Read an entity's GlobalId (first attribute) by decoding only its head.
83
+ * Returns the 22-char id for a rooted entity, or `null` for any entity whose
84
+ * first attribute is not a GlobalId (geometry, lists, property atoms, …).
85
+ */
86
+ export function extractGlobalIdFast(ref, source) {
87
+ // Non-rooted resource entities (property/quantity/material/style/actor …)
88
+ // lead with a Name string that can itself be 22 charset chars; never treat
89
+ // those as a GlobalId or reconciliation would drop/rename them.
90
+ if (!isRootedType(ref.type ?? ''))
91
+ return null;
92
+ // 128 bytes comfortably spans `#<id>=<LONGEST_TYPE_NAME>('<22-char id>'`,
93
+ // so the GlobalId is always fully inside the window.
94
+ const end = Math.min(ref.byteOffset + 128, ref.byteOffset + ref.byteLength);
95
+ const head = asSourceBytes(source).decodeUtf8(ref.byteOffset, end);
96
+ const open = head.indexOf('(');
97
+ if (open === -1)
98
+ return null;
99
+ let i = open + 1;
100
+ while (i < head.length && (head[i] === ' ' || head[i] === '\t' || head[i] === '\n' || head[i] === '\r'))
101
+ i++;
102
+ if (head[i] !== "'")
103
+ return null;
104
+ // A GlobalId never contains a quote (charset excludes it), so the next
105
+ // quote closes it.
106
+ const close = head.indexOf("'", i + 1);
107
+ if (close === -1)
108
+ return null;
109
+ const raw = head.slice(i + 1, close);
110
+ return GLOBAL_ID_RE.test(raw) ? raw : null;
111
+ }
112
+ /**
113
+ * Replace an entity's GlobalId (first quoted attribute) with `newGuid`.
114
+ * `newGuid` is a 22-char IFC id (no quote in its charset), so this is safe.
115
+ */
116
+ export function replaceGlobalId(entityText, newGuid) {
117
+ const open = entityText.indexOf('(');
118
+ if (open === -1)
119
+ return entityText;
120
+ const q1 = entityText.indexOf("'", open + 1);
121
+ if (q1 === -1)
122
+ return entityText;
123
+ const q2 = entityText.indexOf("'", q1 + 1);
124
+ if (q2 === -1)
125
+ return entityText;
126
+ return entityText.slice(0, q1 + 1) + newGuid + entityText.slice(q2);
127
+ }
128
+ //# sourceMappingURL=merged-guid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merged-guid.js","sourceRoot":"","sources":["../src/merged-guid.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;;;;GAOG;AAEH,OAAO,EAAE,qBAAqB,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AAE3F,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;;;;;;;;;GASG;AACH,MAAM,YAAY,GAAG,qBAAqB,CAAC;AAE3C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,gCAAgC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACpE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkB;IAChD,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,IAAI,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7B,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;IAC7C,IAAI,EAAE,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3B,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;IAC3C,IAAI,EAAE,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3B,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IACzC,OAAO,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,QAAgB,EAChB,OAAe,EACf,OAAqC,EACrC,aAA0B;IAE1B,IAAI,SAAS,GAAG,qBAAqB,CAAC,GAAG,QAAQ,IAAI,OAAO,EAAE,CAAC,CAAC;IAChE,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9D,SAAS,GAAG,qBAAqB,CAAC,GAAG,QAAQ,IAAI,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7B,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAoB,EACpB,MAAmC;IAEnC,0EAA0E;IAC1E,2EAA2E;IAC3E,gEAAgE;IAChE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/C,0EAA0E;IAC1E,qDAAqD;IACrD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,GAAG,EAAE,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC;IAC5E,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACnE,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC/B,IAAI,IAAI,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7B,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;IACjB,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;QAAE,CAAC,EAAE,CAAC;IAC7G,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IACjC,uEAAuE;IACvE,mBAAmB;IACnB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkB,EAAE,OAAe;IACjE,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,IAAI,KAAK,CAAC,CAAC;QAAE,OAAO,UAAU,CAAC;IACnC,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;IAC7C,IAAI,EAAE,KAAK,CAAC,CAAC;QAAE,OAAO,UAAU,CAAC;IACjC,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;IAC3C,IAAI,EAAE,KAAK,CAAC,CAAC;QAAE,OAAO,UAAU,CAAC;IACjC,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AACtE,CAAC"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Partial-redundancy bookkeeping for IFCRELAGGREGATES during a merge.
3
+ *
4
+ * Split out of {@link ../merged-exporter.ts} (kept under its module-size
5
+ * budget) rather than duplicated: `findEntitiesByType`/`extractStepAttribute`
6
+ * stay the single source of truth in `MergedExporter` and are passed in here,
7
+ * so this file has no data-model logic of its own to drift from it.
8
+ */
9
+ import type { IfcDataStore } from '@ifc-lite/parser';
10
+ /**
11
+ * Skip IfcRelAggregates that become fully redundant after spatial
12
+ * unification, and mark the individually-redundant members of ones only
13
+ * PARTIALLY so for stripping.
14
+ *
15
+ * When Model2's `IfcRelAggregates(Project, (Site))` gets remapped to
16
+ * `IfcRelAggregates(FirstProject, (FirstSite))`, it duplicates Model1's
17
+ * existing relationship, causing viewers to show Site multiple times.
18
+ *
19
+ * An IfcRelAggregates is fully redundant (skipped entirely) when its
20
+ * RelatingObject (attr 4) AND ALL its RelatedObjects (attr 5) remap to an
21
+ * edge the primary model already declares. When only the RelatingObject and
22
+ * SOME (not all) of its RelatedObjects have such a primary edge — e.g. Model2's Building
23
+ * unifies with Model1's, and one of its two Storeys matches Model1's by
24
+ * name while the other is new — the rel is genuinely needed for its new
25
+ * member(s), but Model1's own relationship already lists the remapped
26
+ * one(s) under the same (now-shared) RelatingObject: emitting them again
27
+ * here would duplicate that membership. Those specific ids are recorded in
28
+ * `relAggregateStrip` so {@link applyRelAggregateStrip} drops them from the
29
+ * emitted RelatedObjects list, keeping only the genuinely new members.
30
+ */
31
+ export declare function skipRedundantRelAggregates(dataStore: IfcDataStore, sharedRemap: Map<number, number>, skipEntityIds: Set<number>, relAggregateStrip: Map<number, Set<number>>, primaryAggregatePairs: ReadonlySet<string>, findEntitiesByType: (dataStore: IfcDataStore, typeUpper: string) => number[], extractStepAttribute: (expressId: number, dataStore: IfcDataStore, attrIndex: number) => string | null): void;
32
+ /** Encode one `RelatingObject → RelatedObject` aggregation edge for set lookup. */
33
+ export declare function aggregatePairKey(relatingObjectId: number, relatedObjectId: number): string;
34
+ /**
35
+ * Collect the aggregation edges actually declared by the primary model.
36
+ *
37
+ * A later model may unify both endpoint entities without the primary model
38
+ * declaring their relationship. Callers use this set to distinguish a truly
39
+ * duplicate edge from the only surviving statement of parentage.
40
+ */
41
+ export declare function collectRelAggregatePairs(dataStore: IfcDataStore, findEntitiesByType: (dataStore: IfcDataStore, typeUpper: string) => number[], extractStepAttribute: (expressId: number, dataStore: IfcDataStore, attrIndex: number) => string | null, idOffset: number): Set<string>;
42
+ /**
43
+ * Render-time counterpart of {@link skipRedundantRelAggregates}: drop
44
+ * RelatedObjects members a partially redundant IFCRELAGGREGATES already
45
+ * shares with the first model's OWN relationship to the same (now-unified)
46
+ * RelatingObject. Reuses the same list/scalar-aware ref filter the
47
+ * `visibleOnly`/deletion dangling-ref path uses. Must run in LOCAL id
48
+ * space, before any id offset/remap — `localId` and the ids inside
49
+ * `relAggregateStrip` are both local to the model being rendered.
50
+ *
51
+ * Returns `entityText` unchanged when `localId` has no strip entry, and
52
+ * `null` when the filter would withhold the whole line — a strip set built
53
+ * by {@link skipRedundantRelAggregates} is a strict subset of the
54
+ * RelatedObjects list, so for well-formed input the filter only narrows,
55
+ * but a degenerate file (a stripped member id that also appears as a
56
+ * single-valued ref, e.g. self-aggregation) can null the line. The caller
57
+ * must withhold it, like every other user of the filter: every edge the
58
+ * line declared is already declared by the primary model, and emitting the
59
+ * unfiltered bytes instead would reintroduce the duplicate membership this
60
+ * module exists to remove.
61
+ */
62
+ export declare function applyRelAggregateStrip(entityText: string, localId: number, relAggregateStrip: ReadonlyMap<number, ReadonlySet<number>>): string | null;
63
+ //# sourceMappingURL=merged-rel-aggregates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merged-rel-aggregates.d.ts","sourceRoot":"","sources":["../src/merged-rel-aggregates.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGrD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,YAAY,EACvB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAChC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,EAC1B,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EAC3C,qBAAqB,EAAE,WAAW,CAAC,MAAM,CAAC,EAC1C,kBAAkB,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,EAAE,EAC5E,oBAAoB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GACrG,IAAI,CAoCN;AAED,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAE1F;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,YAAY,EACvB,kBAAkB,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,EAAE,EAC5E,oBAAoB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,EACtG,QAAQ,EAAE,MAAM,GACf,GAAG,CAAC,MAAM,CAAC,CAgBb;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,iBAAiB,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,GAC1D,MAAM,GAAG,IAAI,CAIf"}
@@ -0,0 +1,122 @@
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 { filterHiddenRefsFromRelationshipLine } from './reference-collector.js';
5
+ /**
6
+ * Skip IfcRelAggregates that become fully redundant after spatial
7
+ * unification, and mark the individually-redundant members of ones only
8
+ * PARTIALLY so for stripping.
9
+ *
10
+ * When Model2's `IfcRelAggregates(Project, (Site))` gets remapped to
11
+ * `IfcRelAggregates(FirstProject, (FirstSite))`, it duplicates Model1's
12
+ * existing relationship, causing viewers to show Site multiple times.
13
+ *
14
+ * An IfcRelAggregates is fully redundant (skipped entirely) when its
15
+ * RelatingObject (attr 4) AND ALL its RelatedObjects (attr 5) remap to an
16
+ * edge the primary model already declares. When only the RelatingObject and
17
+ * SOME (not all) of its RelatedObjects have such a primary edge — e.g. Model2's Building
18
+ * unifies with Model1's, and one of its two Storeys matches Model1's by
19
+ * name while the other is new — the rel is genuinely needed for its new
20
+ * member(s), but Model1's own relationship already lists the remapped
21
+ * one(s) under the same (now-shared) RelatingObject: emitting them again
22
+ * here would duplicate that membership. Those specific ids are recorded in
23
+ * `relAggregateStrip` so {@link applyRelAggregateStrip} drops them from the
24
+ * emitted RelatedObjects list, keeping only the genuinely new members.
25
+ */
26
+ export function skipRedundantRelAggregates(dataStore, sharedRemap, skipEntityIds, relAggregateStrip, primaryAggregatePairs, findEntitiesByType, extractStepAttribute) {
27
+ for (const relId of findEntitiesByType(dataStore, 'IFCRELAGGREGATES')) {
28
+ // RelatingObject is attr 4 — single #ref
29
+ const relatingAttr = extractStepAttribute(relId, dataStore, 4);
30
+ if (!relatingAttr)
31
+ continue;
32
+ const relatingRef = relatingAttr.match(/^#(\d+)$/);
33
+ if (!relatingRef || !sharedRemap.has(parseInt(relatingRef[1], 10)))
34
+ continue;
35
+ // RelatedObjects is attr 5 — list of #refs like (#2,#3)
36
+ const relatedAttr = extractStepAttribute(relId, dataStore, 5);
37
+ if (!relatedAttr)
38
+ continue;
39
+ const refs = [];
40
+ const refRegex = /#(\d+)/g;
41
+ let m;
42
+ while ((m = refRegex.exec(relatedAttr)) !== null) {
43
+ refs.push(parseInt(m[1], 10));
44
+ }
45
+ if (refs.length === 0)
46
+ continue;
47
+ const remappedRelatingObject = sharedRemap.get(parseInt(relatingRef[1], 10));
48
+ // An object identity match alone does not prove that the primary model
49
+ // already owns this aggregation edge. Preserve a matched member when this
50
+ // is the only relationship that establishes its parentage (#3550).
51
+ const redundantRefs = refs.filter(ref => {
52
+ const remappedRef = sharedRemap.get(ref);
53
+ return remappedRef !== undefined && primaryAggregatePairs.has(aggregatePairKey(remappedRelatingObject, remappedRef));
54
+ });
55
+ if (redundantRefs.length === refs.length) {
56
+ // Every edge already exists in the primary model — this rel is fully redundant.
57
+ skipEntityIds.add(relId);
58
+ }
59
+ else if (redundantRefs.length > 0) {
60
+ // Some, not all — keep the rel for its new member(s), but drop the
61
+ // ones Model1's own relationship already aggregates.
62
+ relAggregateStrip.set(relId, new Set(redundantRefs));
63
+ }
64
+ }
65
+ }
66
+ /** Encode one `RelatingObject → RelatedObject` aggregation edge for set lookup. */
67
+ export function aggregatePairKey(relatingObjectId, relatedObjectId) {
68
+ return `${relatingObjectId}:${relatedObjectId}`;
69
+ }
70
+ /**
71
+ * Collect the aggregation edges actually declared by the primary model.
72
+ *
73
+ * A later model may unify both endpoint entities without the primary model
74
+ * declaring their relationship. Callers use this set to distinguish a truly
75
+ * duplicate edge from the only surviving statement of parentage.
76
+ */
77
+ export function collectRelAggregatePairs(dataStore, findEntitiesByType, extractStepAttribute, idOffset) {
78
+ const pairs = new Set();
79
+ for (const relId of findEntitiesByType(dataStore, 'IFCRELAGGREGATES')) {
80
+ const relatingAttr = extractStepAttribute(relId, dataStore, 4);
81
+ const relatingRef = relatingAttr?.match(/^#(\d+)$/);
82
+ if (!relatingRef)
83
+ continue;
84
+ const relatedAttr = extractStepAttribute(relId, dataStore, 5);
85
+ if (!relatedAttr)
86
+ continue;
87
+ const relatingId = parseInt(relatingRef[1], 10) + idOffset;
88
+ const refRegex = /#(\d+)/g;
89
+ let match;
90
+ while ((match = refRegex.exec(relatedAttr)) !== null) {
91
+ pairs.add(aggregatePairKey(relatingId, parseInt(match[1], 10) + idOffset));
92
+ }
93
+ }
94
+ return pairs;
95
+ }
96
+ /**
97
+ * Render-time counterpart of {@link skipRedundantRelAggregates}: drop
98
+ * RelatedObjects members a partially redundant IFCRELAGGREGATES already
99
+ * shares with the first model's OWN relationship to the same (now-unified)
100
+ * RelatingObject. Reuses the same list/scalar-aware ref filter the
101
+ * `visibleOnly`/deletion dangling-ref path uses. Must run in LOCAL id
102
+ * space, before any id offset/remap — `localId` and the ids inside
103
+ * `relAggregateStrip` are both local to the model being rendered.
104
+ *
105
+ * Returns `entityText` unchanged when `localId` has no strip entry, and
106
+ * `null` when the filter would withhold the whole line — a strip set built
107
+ * by {@link skipRedundantRelAggregates} is a strict subset of the
108
+ * RelatedObjects list, so for well-formed input the filter only narrows,
109
+ * but a degenerate file (a stripped member id that also appears as a
110
+ * single-valued ref, e.g. self-aggregation) can null the line. The caller
111
+ * must withhold it, like every other user of the filter: every edge the
112
+ * line declared is already declared by the primary model, and emitting the
113
+ * unfiltered bytes instead would reintroduce the duplicate membership this
114
+ * module exists to remove.
115
+ */
116
+ export function applyRelAggregateStrip(entityText, localId, relAggregateStrip) {
117
+ const toStrip = relAggregateStrip.get(localId);
118
+ if (toStrip === undefined)
119
+ return entityText;
120
+ return filterHiddenRefsFromRelationshipLine(entityText, id => toStrip.has(id));
121
+ }
122
+ //# sourceMappingURL=merged-rel-aggregates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merged-rel-aggregates.js","sourceRoot":"","sources":["../src/merged-rel-aggregates.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Express-id remapping for the merged exporter: rewrite every `#N` reference of
3
+ * one model's STEP line into the merged file's id space.
4
+ *
5
+ * Split out of `merged-exporter.ts` (it never used `this`) so the id-rewriting
6
+ * rule lives in one small module next to the other merge-time line surgery
7
+ * (`merged-empty-containers.ts`, `merged-subcontext.ts`).
8
+ */
9
+ /**
10
+ * Remap all #ID references in a STEP entity line.
11
+ * Applies offset to all IDs, then overrides with specific remappings.
12
+ *
13
+ * Only `#<digits>` tokens in code positions are rewritten; tokens inside
14
+ * single-quoted STEP strings (e.g. a 'Room #205' Name or a 'http://x#42'
15
+ * URL) are left untouched so string attribute values are not corrupted.
16
+ */
17
+ export declare function remapEntityText(entityText: string, offset: number, sharedRemap: ReadonlyMap<number, number>): string;
18
+ //# sourceMappingURL=merged-remap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merged-remap.d.ts","sourceRoot":"","sources":["../src/merged-remap.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AAEH;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GACvC,MAAM,CAgDR"}