@ifc-lite/export 3.0.0 → 3.0.1

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 (97) hide show
  1. package/dist/declared-property-type.d.ts +19 -8
  2. package/dist/declared-property-type.d.ts.map +1 -1
  3. package/dist/declared-property-type.js +31 -9
  4. package/dist/declared-property-type.js.map +1 -1
  5. package/dist/merged-exporter.d.ts +19 -0
  6. package/dist/merged-exporter.d.ts.map +1 -1
  7. package/dist/merged-exporter.js +1 -1
  8. package/dist/merged-exporter.js.map +1 -1
  9. package/dist/parquet-exporter.d.ts +1 -3
  10. package/dist/parquet-exporter.d.ts.map +1 -1
  11. package/dist/parquet-exporter.js +1 -0
  12. package/dist/parquet-exporter.js.map +1 -1
  13. package/dist/property-value-serialization.d.ts +54 -0
  14. package/dist/property-value-serialization.d.ts.map +1 -0
  15. package/dist/property-value-serialization.js +134 -0
  16. package/dist/property-value-serialization.js.map +1 -0
  17. package/dist/reference-collector.d.ts +20 -0
  18. package/dist/reference-collector.d.ts.map +1 -1
  19. package/dist/reference-collector.js +45 -112
  20. package/dist/reference-collector.js.map +1 -1
  21. package/dist/schema-converter.d.ts.map +1 -1
  22. package/dist/schema-converter.js +46 -96
  23. package/dist/schema-converter.js.map +1 -1
  24. package/dist/source-ref-bounds.d.ts +3 -3
  25. package/dist/source-ref-bounds.js +3 -3
  26. package/dist/step-attribute-mutations.d.ts +0 -42
  27. package/dist/step-attribute-mutations.d.ts.map +1 -1
  28. package/dist/step-attribute-mutations.js +17 -147
  29. package/dist/step-attribute-mutations.js.map +1 -1
  30. package/dist/step-attribute-serializers.d.ts +41 -0
  31. package/dist/step-attribute-serializers.d.ts.map +1 -0
  32. package/dist/step-attribute-serializers.js +74 -0
  33. package/dist/step-attribute-serializers.js.map +1 -0
  34. package/dist/step-collection.d.ts +2 -2
  35. package/dist/step-collection.d.ts.map +1 -1
  36. package/dist/step-collection.js +2 -1
  37. package/dist/step-collection.js.map +1 -1
  38. package/dist/step-export-contexts.d.ts +5 -7
  39. package/dist/step-export-contexts.d.ts.map +1 -1
  40. package/dist/step-export-contexts.js +6 -7
  41. package/dist/step-export-contexts.js.map +1 -1
  42. package/dist/step-exporter.d.ts +3 -3
  43. package/dist/step-exporter.js +4 -4
  44. package/dist/step-exporter.js.map +1 -1
  45. package/dist/step-geometry-types.d.ts +1 -17
  46. package/dist/step-geometry-types.d.ts.map +1 -1
  47. package/dist/step-geometry-types.js +51 -35
  48. package/dist/step-geometry-types.js.map +1 -1
  49. package/dist/step-georeferencing.d.ts +0 -10
  50. package/dist/step-georeferencing.d.ts.map +1 -1
  51. package/dist/step-georeferencing.js +46 -94
  52. package/dist/step-georeferencing.js.map +1 -1
  53. package/dist/step-header.d.ts +11 -1
  54. package/dist/step-header.d.ts.map +1 -1
  55. package/dist/step-header.js +0 -7
  56. package/dist/step-header.js.map +1 -1
  57. package/dist/step-map-unit.d.ts +90 -0
  58. package/dist/step-map-unit.d.ts.map +1 -0
  59. package/dist/step-map-unit.js +277 -0
  60. package/dist/step-map-unit.js.map +1 -0
  61. package/dist/step-overlay-attribute-overrides.d.ts +32 -0
  62. package/dist/step-overlay-attribute-overrides.d.ts.map +1 -0
  63. package/dist/step-overlay-attribute-overrides.js +83 -0
  64. package/dist/step-overlay-attribute-overrides.js.map +1 -0
  65. package/dist/step-overlay-entities.d.ts +3 -3
  66. package/dist/step-pass-builder.d.ts +4 -3
  67. package/dist/step-pass-builder.d.ts.map +1 -1
  68. package/dist/step-pass-builder.js.map +1 -1
  69. package/dist/step-property-set-collection.d.ts +24 -0
  70. package/dist/step-property-set-collection.d.ts.map +1 -0
  71. package/dist/step-property-set-collection.js +286 -0
  72. package/dist/step-property-set-collection.js.map +1 -0
  73. package/dist/step-property-set-generators.d.ts +20 -0
  74. package/dist/step-property-set-generators.d.ts.map +1 -0
  75. package/dist/step-property-set-generators.js +98 -0
  76. package/dist/step-property-set-generators.js.map +1 -0
  77. package/dist/step-property-set-index.d.ts +25 -0
  78. package/dist/step-property-set-index.d.ts.map +1 -0
  79. package/dist/step-property-set-index.js +69 -0
  80. package/dist/step-property-set-index.js.map +1 -0
  81. package/dist/step-property-set-readers.d.ts +158 -0
  82. package/dist/step-property-set-readers.d.ts.map +1 -0
  83. package/dist/step-property-set-readers.js +251 -0
  84. package/dist/step-property-set-readers.js.map +1 -0
  85. package/dist/step-property-sets.d.ts +2 -186
  86. package/dist/step-property-sets.d.ts.map +1 -1
  87. package/dist/step-property-sets.js +22 -674
  88. package/dist/step-property-sets.js.map +1 -1
  89. package/dist/step-serialization.d.ts +17 -51
  90. package/dist/step-serialization.d.ts.map +1 -1
  91. package/dist/step-serialization.js +19 -128
  92. package/dist/step-serialization.js.map +1 -1
  93. package/dist/step-source-iteration.d.ts +7 -5
  94. package/dist/step-source-iteration.d.ts.map +1 -1
  95. package/dist/step-source-iteration.js +3 -3
  96. package/dist/step-source-iteration.js.map +1 -1
  97. package/package.json +6 -6
@@ -0,0 +1,134 @@
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
+ * `serializePropertyValue`: the IFC property `NominalValue` token for a
6
+ * `PropertyValueType`. Split out of `step-serialization.ts` (#3184) — the
7
+ * rest of that module is generic STEP token serialization (escaping, typed
8
+ * markers, attribute-value inference), while this one function is the IFC
9
+ * property-type-name mapping table its own doc comment discusses at length
10
+ * (#2472, #2488).
11
+ */
12
+ import { PropertyValueType, formatStepReal } from '@ifc-lite/data';
13
+ import { escapeStepString } from './step-serialization.js';
14
+ /**
15
+ * Serialize a property value to STEP format (e.g. IFCLABEL, IFCREAL, etc.).
16
+ *
17
+ * The token this writes is the property's DECLARED TYPE in the exported file, so
18
+ * every member below has to name the IFC primitive the value was authored as —
19
+ * not merely one that can hold the characters. Two did not (#2472):
20
+ *
21
+ * - `Text` was written as `IFCLABEL`. `IfcLabel` is a bounded, name-like
22
+ * string; `IfcText` is unbounded prose. A consumer read a different type
23
+ * than the property was created with, and a long value exceeded what
24
+ * `IfcLabel` is specified to carry.
25
+ * - `Logical` was written as `IFCBOOLEAN` for its two definite states.
26
+ * `IfcBoolean` has two values; `IfcLogical` has three, and `.U.` is the
27
+ * reason a property is Logical rather than Boolean in the first place.
28
+ *
29
+ * Neither could be caught by a value-level round-trip: the extractor collapses
30
+ * every string-valued token (`IFCLABEL`, `IFCTEXT`, `IFCIDENTIFIER`) to
31
+ * `PropertyValueType.String` and keeps the token name only in `dataType`, so
32
+ * the VALUE survives export/re-import through the wrong wrapper unchanged. Only
33
+ * an assertion on the emitted token sees the difference — which is what
34
+ * `property-value-serialization.test.ts` makes.
35
+ *
36
+ * `@ifc-lite/collab`'s `PROPERTY_TYPE_NAMES` is the same table for a different
37
+ * transport, and it already named `Text` and `Logical` correctly — so on THOSE
38
+ * TWO MEMBERS the two agree now. Not on the table as a whole, and this pass does
39
+ * not make them agree:
40
+ *
41
+ * - `String`: collab says `IfcText`, this says `IFCLABEL`. Both are guesses
42
+ * about a token the extractor did not keep, and they guess in opposite
43
+ * directions (unbounded prose vs the conservative bounded name). Changing
44
+ * either is a behaviour change to the OTHER transport's payload, out of
45
+ * #2472's scope, and it needs the argument about which guess is right made
46
+ * first — not a silent alignment.
47
+ * - `List`: collab says `IfcText`; this writes a STEP aggregate `(...)` of
48
+ * `IFCLABEL` items, which is not a NominalValue token at all.
49
+ *
50
+ * `Enum` was the third disagreement — collab said `IfcLabel`, this wrote a bare
51
+ * `.TOKEN.` — and #2488 settled it on collab's side, for the reason the case
52
+ * below states: the bare token is not a member of the SELECT at all.
53
+ *
54
+ * `Label`, `Identifier`, `Real`, `Integer`, `Boolean`, `Text`, `Logical`, `Enum`
55
+ * and `Reference` agree.
56
+ */
57
+ export function serializePropertyValue(value, type) {
58
+ if (value === null || value === undefined) {
59
+ // `Logical` is the one member with a value FOR "no value": the extractor
60
+ // reads `.U.` / `.X.` back as a null-valued Logical, so `$` here would
61
+ // turn an explicit unknown into an omitted attribute on re-export.
62
+ if (type === PropertyValueType.Logical)
63
+ return `IFCLOGICAL(.U.)`;
64
+ return '$';
65
+ }
66
+ switch (type) {
67
+ // `String` is the extractor's catch-all for any string-valued token whose
68
+ // declared type it did not keep, so it stays the bounded `IfcLabel`: the
69
+ // conservative direction for an unknown short string, and what
70
+ // `PROPERTY_TYPE_NAMES` calls `Enum` and `Reference` too.
71
+ case PropertyValueType.String:
72
+ case PropertyValueType.Label:
73
+ return `IFCLABEL('${escapeStepString(String(value))}')`;
74
+ case PropertyValueType.Text:
75
+ return `IFCTEXT('${escapeStepString(String(value))}')`;
76
+ case PropertyValueType.Identifier:
77
+ return `IFCIDENTIFIER('${escapeStepString(String(value))}')`;
78
+ case PropertyValueType.Real: {
79
+ const num = Number(value);
80
+ if (!Number.isFinite(num))
81
+ return '$';
82
+ return `IFCREAL(${formatStepReal(num)})`;
83
+ }
84
+ case PropertyValueType.Integer:
85
+ return `IFCINTEGER(${Math.round(Number(value))})`;
86
+ case PropertyValueType.Boolean:
87
+ if (value === true)
88
+ return `IFCBOOLEAN(.T.)`;
89
+ if (value === false)
90
+ return `IFCBOOLEAN(.F.)`;
91
+ // A Boolean whose value is neither: no `IfcBoolean` literal says that, and
92
+ // `.U.` is not in its domain, so the three-state primitive is the only
93
+ // thing that can carry it. Unchanged from before #2472 — the Logical case
94
+ // below is what stopped borrowing IfcBoolean's name for it.
95
+ return `IFCLOGICAL(.U.)`;
96
+ case PropertyValueType.Logical:
97
+ if (value === true)
98
+ return `IFCLOGICAL(.T.)`;
99
+ if (value === false)
100
+ return `IFCLOGICAL(.F.)`;
101
+ return `IFCLOGICAL(.U.)`;
102
+ // `NominalValue` is declared `IfcValue`, and `IfcValue` has no ENUMERATION
103
+ // leaf in any schema this exporter targets (IFC2X3 / IFC4 / IFC4X3 all
104
+ // resolve it to IfcMeasureValue | IfcSimpleValue | IfcDerivedMeasureValue).
105
+ // So there is no wrapper for an enumeration token and a bare `.EXTERNAL.`
106
+ // is not a member of the SELECT at all — this was the one branch writing an
107
+ // unqualified token into a slot every other branch type-qualifies (#2488).
108
+ // `IfcLabel` is what the value can be expressed as, and what
109
+ // `@ifc-lite/collab`'s `PROPERTY_TYPE_NAMES` has always called this member.
110
+ //
111
+ // No `.toUpperCase()`: it existed to build an EXPRESS enumeration name,
112
+ // which is upper-case by construction. A label is not, and folding the case
113
+ // means an authored `'external'` reads back as `'EXTERNAL'`. Nothing
114
+ // EXTRACTS an `Enum` (the extractor collapses every string-valued token to
115
+ // `String`), so this branch only ever serializes a value a session authored
116
+ // through `setProperty(…, PropertyValueType.Enum)` — the value the caller
117
+ // wrote is the one to keep.
118
+ case PropertyValueType.Enum:
119
+ return `IFCLABEL('${escapeStepString(String(value))}')`;
120
+ case PropertyValueType.List:
121
+ if (Array.isArray(value)) {
122
+ const items = value.map(v => serializePropertyValue(v, PropertyValueType.String));
123
+ return `(${items.join(',')})`;
124
+ }
125
+ return '$';
126
+ // Includes `Reference`, which no extraction path produces (an
127
+ // `IfcPropertyReferenceValue` comes back as a String holding `#id`) and
128
+ // which this function could not express anyway: an entity reference is a
129
+ // different property CLASS, not a different `NominalValue` token.
130
+ default:
131
+ return `IFCLABEL('${escapeStepString(String(value))}')`;
132
+ }
133
+ }
134
+ //# sourceMappingURL=property-value-serialization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"property-value-serialization.js","sourceRoot":"","sources":["../src/property-value-serialization.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,26 @@
24
24
  */
25
25
  import type { IfcDataStore, IfcSourceBytes } from '@ifc-lite/parser';
26
26
  import type { EffectiveEntityIndex } from './effective-index.js';
27
+ /**
28
+ * Every IfcProduct subtype in every schema this package can export, derived
29
+ * from `@ifc-lite/data`'s generated entity tables rather than hand-listed.
30
+ *
31
+ * A product type missing from this set is not classified as a product, so under
32
+ * `visibleOnly` it never becomes a root: the element — and the geometry only it
33
+ * references — is silently absent from the exported file even though the user
34
+ * never hid it. The hand-written predecessor was derived from IFC4 + IFC4X3
35
+ * alone and therefore dropped every IFC2X3-only product
36
+ * (`IfcElectricDistributionPoint`, `IfcElectricalElement`,
37
+ * `IfcEquipmentElement`, the edge features, the varying structural actions)
38
+ * from a visible-only export of a legacy model.
39
+ *
40
+ * Deriving it means a schema-table regeneration cannot leave this classifier
41
+ * behind. Spatial structure and infrastructure are matched before this set, so
42
+ * its overlap with `SPATIAL_STRUCTURE_TYPES` is harmless. The `hiddenIds`
43
+ * fallback below still catches types no bundled schema declares.
44
+ */
45
+ /** Exported for the drift test that diffs it against the schema tables. */
46
+ export declare const PRODUCT_TYPES: ReadonlySet<string>;
27
47
  /**
28
48
  * Collect the `#ID` references inside one entity's byte range (fresh array
29
49
  * per call). Exported for consumers that need per-entity edges — e.g. the
@@ -1 +1 @@
1
- {"version":3,"file":"reference-collector.d.ts","sourceRoot":"","sources":["../src/reference-collector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reference-collector.d.ts","sourceRoot":"","sources":["../src/reference-collector.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  * License, v. 2.0. If a copy of the MPL was not distributed with this
3
3
  * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
4
  import { asSourceBytes } from '@ifc-lite/parser';
5
+ import { ENTITIES_IFC2X3, ENTITIES_IFC4, ENTITIES_IFC4X3, } from '@ifc-lite/data';
5
6
  import { splitTopLevelArgs } from './step-argument-parser.js';
6
7
  /**
7
8
  * UTF-8 decode of `[start, end)` of the source. Mirrors `step-exporter.ts` /
@@ -57,120 +58,52 @@ const SPATIAL_STRUCTURE_TYPES = new Set([
57
58
  'IFCEXTERNALSPATIALELEMENT', 'IFCEXTERNALSPATIALSTRUCTUREELEMENT',
58
59
  ]);
59
60
  /**
60
- * Complete set of all IfcProduct subtypes from the IFC4 + IFC4X3 schemas,
61
- * excluding spatial structure types (handled above). Generated from the
62
- * schema registry's inheritanceChain metadata.
61
+ * Every IfcProduct subtype in every schema this package can export, derived
62
+ * from `@ifc-lite/data`'s generated entity tables rather than hand-listed.
63
63
  *
64
- * 202 types full IFC schema coverage. The hiddenIds fallback below
65
- * catches any types that may exist in future schema versions.
64
+ * A product type missing from this set is not classified as a product, so under
65
+ * `visibleOnly` it never becomes a root: the element and the geometry only it
66
+ * references — is silently absent from the exported file even though the user
67
+ * never hid it. The hand-written predecessor was derived from IFC4 + IFC4X3
68
+ * alone and therefore dropped every IFC2X3-only product
69
+ * (`IfcElectricDistributionPoint`, `IfcElectricalElement`,
70
+ * `IfcEquipmentElement`, the edge features, the varying structural actions)
71
+ * from a visible-only export of a legacy model.
72
+ *
73
+ * Deriving it means a schema-table regeneration cannot leave this classifier
74
+ * behind. Spatial structure and infrastructure are matched before this set, so
75
+ * its overlap with `SPATIAL_STRUCTURE_TYPES` is harmless. The `hiddenIds`
76
+ * fallback below still catches types no bundled schema declares.
66
77
  */
67
- const PRODUCT_TYPES = new Set([
68
- // IfcElement > IfcBuildingElement
69
- 'IFCBEAM', 'IFCBEAMSTANDARDCASE', 'IFCBUILDINGELEMENT',
70
- 'IFCBUILDINGELEMENTPART', 'IFCBUILDINGELEMENTPROXY', 'IFCBUILTELEMENT',
71
- 'IFCCHIMNEY', 'IFCCOLUMN', 'IFCCOLUMNSTANDARDCASE',
72
- 'IFCCOVERING', 'IFCCURTAINWALL',
73
- 'IFCDEEPFOUNDATION', 'IFCDOOR', 'IFCDOORSTANDARDCASE',
74
- 'IFCFOOTING', 'IFCMEMBER', 'IFCMEMBERSTANDARDCASE',
75
- 'IFCPILE', 'IFCPLATE', 'IFCPLATESTANDARDCASE',
76
- 'IFCRAILING', 'IFCRAMP', 'IFCRAMPFLIGHT',
77
- 'IFCROOF', 'IFCSHADINGDEVICE',
78
- 'IFCSLAB', 'IFCSLABELEMENTEDCASE', 'IFCSLABSTANDARDCASE',
79
- 'IFCSTAIR', 'IFCSTAIRFLIGHT',
80
- 'IFCWALL', 'IFCWALLELEMENTEDCASE', 'IFCWALLSTANDARDCASE',
81
- 'IFCWINDOW', 'IFCWINDOWSTANDARDCASE',
82
- // IfcElement > IfcDistributionElement
83
- 'IFCDISTRIBUTIONELEMENT', 'IFCDISTRIBUTIONCONTROLELEMENT',
84
- 'IFCDISTRIBUTIONFLOWELEMENT', 'IFCDISTRIBUTIONCHAMBERELEMENT',
85
- 'IFCDISTRIBUTIONPORT', 'IFCDISTRIBUTIONBOARD',
86
- // IfcDistributionControlElement subtypes
87
- 'IFCACTUATOR', 'IFCALARM', 'IFCCONTROLLER',
88
- 'IFCFLOWINSTRUMENT', 'IFCPROTECTIVEDEVICETRIPPINGUNIT',
89
- 'IFCSENSOR', 'IFCUNITARYCONTROLELEMENT',
90
- // IfcFlowController subtypes
91
- 'IFCAIRTERMINALBOX', 'IFCDAMPER', 'IFCELECTRICDISTRIBUTIONBOARD',
92
- 'IFCELECTRICTIMECONTROL', 'IFCFLOWCONTROLLER', 'IFCFLOWMETER',
93
- 'IFCPROTECTIVEDEVICE', 'IFCSWITCHINGDEVICE', 'IFCVALVE',
94
- // IfcFlowFitting subtypes
95
- 'IFCCABLECARRIERFITTING', 'IFCCABLEFITTING',
96
- 'IFCDUCTFITTING', 'IFCFLOWFITTING', 'IFCJUNCTIONBOX', 'IFCPIPEFITTING',
97
- // IfcFlowMovingDevice subtypes
98
- 'IFCCOMPRESSOR', 'IFCFAN', 'IFCFLOWMOVINGDEVICE', 'IFCPUMP',
99
- // IfcFlowSegment subtypes
100
- 'IFCCABLECARRIERSEGMENT', 'IFCCABLESEGMENT', 'IFCCONVEYORSEGMENT',
101
- 'IFCDUCTSEGMENT', 'IFCFLOWSEGMENT', 'IFCPIPESEGMENT',
102
- // IfcFlowStorageDevice subtypes
103
- 'IFCELECTRICFLOWSTORAGEDEVICE', 'IFCFLOWSTORAGEDEVICE', 'IFCTANK',
104
- // IfcFlowTerminal subtypes
105
- 'IFCAIRTERMINAL', 'IFCAUDIOVISUALAPPLIANCE', 'IFCCOMMUNICATIONSAPPLIANCE',
106
- 'IFCELECTRICAPPLIANCE', 'IFCFIRESUPPRESSIONTERMINAL', 'IFCFLOWTERMINAL',
107
- 'IFCLAMP', 'IFCLIGHTFIXTURE', 'IFCLIQUIDTERMINAL',
108
- 'IFCMEDICALDEVICE', 'IFCMOBILETELECOMMUNICATIONSAPPLIANCE',
109
- 'IFCOUTLET', 'IFCSANITARYTERMINAL', 'IFCSPACEHEATER',
110
- 'IFCSTACKTERMINAL', 'IFCWASTETERMINAL',
111
- // IfcFlowTreatmentDevice subtypes
112
- 'IFCDUCTSILENCER', 'IFCELECTRICFLOWTREATMENTDEVICE',
113
- 'IFCFILTER', 'IFCFLOWTREATMENTDEVICE', 'IFCINTERCEPTOR',
114
- // IfcEnergyConversionDevice subtypes
115
- 'IFCAIRTOAIRHEATRECOVERY', 'IFCBOILER', 'IFCBURNER',
116
- 'IFCCHILLER', 'IFCCOIL', 'IFCCONDENSER',
117
- 'IFCCOOLEDBEAM', 'IFCCOOLINGTOWER',
118
- 'IFCELECTRICGENERATOR', 'IFCELECTRICMOTOR',
119
- 'IFCENERGYCONVERSIONDEVICE', 'IFCENGINE',
120
- 'IFCEVAPORATIVECOOLER', 'IFCEVAPORATOR',
121
- 'IFCHEATEXCHANGER', 'IFCHUMIDIFIER', 'IFCMOTORCONNECTION',
122
- 'IFCSOLARDEVICE', 'IFCTRANSFORMER', 'IFCTUBEBUNDLE',
123
- 'IFCUNITARYEQUIPMENT',
124
- // IfcElement > IfcElementAssembly
125
- 'IFCELEMENT', 'IFCELEMENTASSEMBLY',
126
- // IfcElement > IfcElementComponent
127
- 'IFCELEMENTCOMPONENT', 'IFCFASTENER',
128
- 'IFCMECHANICALFASTENER', 'IFCDISCRETEACCESSORY',
129
- 'IFCVIBRATIONDAMPER', 'IFCVIBRATIONISOLATOR',
130
- 'IFCIMPACTPROTECTIONDEVICE',
131
- // IfcElement > IfcFeatureElement
132
- 'IFCFEATUREELEMENT', 'IFCFEATUREELEMENTADDITION', 'IFCFEATUREELEMENTSUBTRACTION',
133
- 'IFCOPENINGELEMENT', 'IFCOPENINGSTANDARDCASE',
134
- 'IFCPROJECTIONELEMENT', 'IFCSURFACEFEATURE', 'IFCVOIDINGFEATURE',
135
- // IfcElement > IfcFurnishingElement
136
- 'IFCFURNISHINGELEMENT', 'IFCFURNITURE', 'IFCSYSTEMFURNITUREELEMENT',
137
- // IfcElement > IfcGeographicElement / IfcCivilElement
138
- 'IFCGEOGRAPHICELEMENT', 'IFCCIVILELEMENT',
139
- // IfcElement > IfcTransportElement / IfcTransportationDevice / IfcVehicle
140
- 'IFCTRANSPORTELEMENT', 'IFCTRANSPORTATIONDEVICE', 'IFCVEHICLE',
141
- // IfcElement > IfcReinforcingElement
142
- 'IFCREINFORCINGELEMENT', 'IFCREINFORCINGBAR', 'IFCREINFORCINGMESH',
143
- 'IFCTENDON', 'IFCTENDONANCHOR', 'IFCTENDONCONDUIT',
144
- // IfcElement > IFC4X3 additions
145
- 'IFCBEARING', 'IFCCAISSONFOUNDATION', 'IFCCOURSE',
146
- 'IFCEARTHWORKSCUT', 'IFCEARTHWORKSELEMENT', 'IFCEARTHWORKSFILL',
147
- 'IFCKERB', 'IFCMOORINGDEVICE', 'IFCNAVIGATIONELEMENT',
148
- 'IFCPAVEMENT', 'IFCRAIL', 'IFCREINFORCEDSOIL', 'IFCSIGN', 'IFCSIGNAL',
149
- 'IFCTRACKELEMENT',
150
- // IFC4X3 alignment and positioning
151
- 'IFCALIGNMENT', 'IFCALIGNMENTCANT', 'IFCALIGNMENTHORIZONTAL',
152
- 'IFCALIGNMENTSEGMENT', 'IFCALIGNMENTVERTICAL',
153
- 'IFCLINEARELEMENT', 'IFCLINEARPOSITIONINGELEMENT',
154
- 'IFCPOSITIONINGELEMENT', 'IFCREFERENT',
155
- // IFC4X3 geotechnical
156
- 'IFCBOREHOLE', 'IFCGEOMODEL', 'IFCGEOSLICE',
157
- 'IFCGEOTECHNICALASSEMBLY', 'IFCGEOTECHNICALELEMENT', 'IFCGEOTECHNICALSTRATUM',
158
- // IfcProduct (non-element)
159
- 'IFCANNOTATION', 'IFCGRID', 'IFCPORT', 'IFCPROXY',
160
- 'IFCSPACE', 'IFCVIRTUALELEMENT',
161
- // IfcStructuralItem / IfcStructuralActivity
162
- 'IFCSTRUCTURALACTION', 'IFCSTRUCTURALACTIVITY',
163
- 'IFCSTRUCTURALCONNECTION', 'IFCSTRUCTURALCURVEACTION',
164
- 'IFCSTRUCTURALCURVECONNECTION', 'IFCSTRUCTURALCURVEMEMBER',
165
- 'IFCSTRUCTURALCURVEMEMBERVARYING', 'IFCSTRUCTURALCURVEREACTION',
166
- 'IFCSTRUCTURALITEM', 'IFCSTRUCTURALLINEARACTION',
167
- 'IFCSTRUCTURALMEMBER', 'IFCSTRUCTURALPLANARACTION',
168
- 'IFCSTRUCTURALPOINTACTION', 'IFCSTRUCTURALPOINTCONNECTION',
169
- 'IFCSTRUCTURALPOINTREACTION', 'IFCSTRUCTURALREACTION',
170
- 'IFCSTRUCTURALSURFACEACTION', 'IFCSTRUCTURALSURFACECONNECTION',
171
- 'IFCSTRUCTURALSURFACEMEMBER', 'IFCSTRUCTURALSURFACEMEMBERVARYING',
172
- 'IFCSTRUCTURALSURFACEREACTION',
173
- ]);
78
+ /** Exported for the drift test that diffs it against the schema tables. */
79
+ export const PRODUCT_TYPES = buildProductTypes();
80
+ function buildProductTypes() {
81
+ const products = new Set();
82
+ for (const table of [ENTITIES_IFC2X3, ENTITIES_IFC4, ENTITIES_IFC4X3]) {
83
+ collectProductNames(table, products);
84
+ }
85
+ return products;
86
+ }
87
+ /** Add the upper-cased name of every `IfcProduct` descendant declared in `table`. */
88
+ function collectProductNames(table, out) {
89
+ const parentOf = new Map();
90
+ for (const entity of table)
91
+ parentOf.set(entity.name, entity.parent);
92
+ for (const entity of table) {
93
+ // The walk starts at the parent, so `IfcProduct` itself — abstract, and
94
+ // never instantiated — is not added, while every descendant is.
95
+ let cursor = parentOf.get(entity.name) ?? null;
96
+ // Depth-bounded so a malformed table cannot spin here; the deepest IFC
97
+ // inheritance chain is far under this bound.
98
+ for (let depth = 0; cursor !== null && depth < 64; depth++) {
99
+ if (cursor === 'IfcProduct') {
100
+ out.add(entity.name.toUpperCase());
101
+ break;
102
+ }
103
+ cursor = parentOf.get(cursor) ?? null;
104
+ }
105
+ }
106
+ }
174
107
  // ---------------------------------------------------------------------------
175
108
  // Byte-level #ID reference extraction
176
109
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"reference-collector.js","sourceRoot":"","sources":["../src/reference-collector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reference-collector.js","sourceRoot":"","sources":["../src/reference-collector.ts"],"names":[],"mappings":"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"}
@@ -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;AAIxE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;AA0JrE;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,gBAAgB,GACzB,MAAM,CAQR;AA6HD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,CAAC,EAAE,YAAY,GACpB,MAAM,CAmFR;AAsFD;;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"}
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;AAIxE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;AAmGrE;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,gBAAgB,GACzB,MAAM,CAQR;AAsHD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,CAAC,EAAE,YAAY,GACpB,MAAM,CAsFR;AA0FD;;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"}