@ifc-lite/export 3.0.0 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -0
- package/dist/anonymize-export.d.ts +60 -0
- package/dist/anonymize-export.d.ts.map +1 -0
- package/dist/anonymize-export.js +117 -0
- package/dist/anonymize-export.js.map +1 -0
- package/dist/anonymize-placement.d.ts +71 -0
- package/dist/anonymize-placement.d.ts.map +1 -0
- package/dist/anonymize-placement.js +266 -0
- package/dist/anonymize-placement.js.map +1 -0
- package/dist/anonymize-scrub.d.ts +64 -0
- package/dist/anonymize-scrub.d.ts.map +1 -0
- package/dist/anonymize-scrub.js +312 -0
- package/dist/anonymize-scrub.js.map +1 -0
- package/dist/anonymize-types.d.ts +212 -0
- package/dist/anonymize-types.d.ts.map +1 -0
- package/dist/anonymize-types.js +5 -0
- package/dist/anonymize-types.js.map +1 -0
- package/dist/declared-property-type.d.ts +19 -8
- package/dist/declared-property-type.d.ts.map +1 -1
- package/dist/declared-property-type.js +31 -9
- package/dist/declared-property-type.js.map +1 -1
- package/dist/entity-type-sets.d.ts +47 -0
- package/dist/entity-type-sets.d.ts.map +1 -0
- package/dist/entity-type-sets.js +91 -0
- package/dist/entity-type-sets.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/merged-exporter.d.ts +19 -0
- package/dist/merged-exporter.d.ts.map +1 -1
- package/dist/merged-exporter.js +1 -1
- package/dist/merged-exporter.js.map +1 -1
- package/dist/parquet-exporter.d.ts +1 -3
- package/dist/parquet-exporter.d.ts.map +1 -1
- package/dist/parquet-exporter.js +11 -10
- package/dist/parquet-exporter.js.map +1 -1
- package/dist/property-value-serialization.d.ts +54 -0
- package/dist/property-value-serialization.d.ts.map +1 -0
- package/dist/property-value-serialization.js +134 -0
- package/dist/property-value-serialization.js.map +1 -0
- package/dist/reference-collector.d.ts +47 -0
- package/dist/reference-collector.d.ts.map +1 -1
- package/dist/reference-collector.js +88 -156
- package/dist/reference-collector.js.map +1 -1
- package/dist/related-entities.d.ts +10 -0
- package/dist/related-entities.d.ts.map +1 -0
- package/dist/related-entities.js +259 -0
- package/dist/related-entities.js.map +1 -0
- package/dist/schema-converter.d.ts.map +1 -1
- package/dist/schema-converter.js +46 -96
- package/dist/schema-converter.js.map +1 -1
- package/dist/source-ref-bounds.d.ts +3 -3
- package/dist/source-ref-bounds.js +3 -3
- package/dist/step-attribute-mutations.d.ts +0 -42
- package/dist/step-attribute-mutations.d.ts.map +1 -1
- package/dist/step-attribute-mutations.js +17 -147
- package/dist/step-attribute-mutations.js.map +1 -1
- package/dist/step-attribute-serializers.d.ts +41 -0
- package/dist/step-attribute-serializers.d.ts.map +1 -0
- package/dist/step-attribute-serializers.js +74 -0
- package/dist/step-attribute-serializers.js.map +1 -0
- package/dist/step-collection.d.ts +2 -2
- package/dist/step-collection.d.ts.map +1 -1
- package/dist/step-collection.js +38 -8
- package/dist/step-collection.js.map +1 -1
- package/dist/step-export-contexts.d.ts +5 -7
- package/dist/step-export-contexts.d.ts.map +1 -1
- package/dist/step-export-contexts.js +6 -7
- package/dist/step-export-contexts.js.map +1 -1
- package/dist/step-export-types.d.ts +27 -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 +3 -3
- package/dist/step-exporter.js +4 -4
- package/dist/step-exporter.js.map +1 -1
- package/dist/step-geometry-types.d.ts +1 -17
- package/dist/step-geometry-types.d.ts.map +1 -1
- package/dist/step-geometry-types.js +51 -35
- package/dist/step-geometry-types.js.map +1 -1
- package/dist/step-georeferencing.d.ts +0 -10
- package/dist/step-georeferencing.d.ts.map +1 -1
- package/dist/step-georeferencing.js +46 -94
- package/dist/step-georeferencing.js.map +1 -1
- package/dist/step-header.d.ts +11 -1
- package/dist/step-header.d.ts.map +1 -1
- package/dist/step-header.js +2 -9
- package/dist/step-header.js.map +1 -1
- package/dist/step-map-unit.d.ts +90 -0
- package/dist/step-map-unit.d.ts.map +1 -0
- package/dist/step-map-unit.js +277 -0
- package/dist/step-map-unit.js.map +1 -0
- package/dist/step-overlay-attribute-overrides.d.ts +32 -0
- package/dist/step-overlay-attribute-overrides.d.ts.map +1 -0
- package/dist/step-overlay-attribute-overrides.js +83 -0
- package/dist/step-overlay-attribute-overrides.js.map +1 -0
- package/dist/step-overlay-entities.d.ts +3 -3
- package/dist/step-pass-builder.d.ts +4 -3
- package/dist/step-pass-builder.d.ts.map +1 -1
- package/dist/step-pass-builder.js.map +1 -1
- package/dist/step-property-set-collection.d.ts +24 -0
- package/dist/step-property-set-collection.d.ts.map +1 -0
- package/dist/step-property-set-collection.js +286 -0
- package/dist/step-property-set-collection.js.map +1 -0
- package/dist/step-property-set-generators.d.ts +20 -0
- package/dist/step-property-set-generators.d.ts.map +1 -0
- package/dist/step-property-set-generators.js +98 -0
- package/dist/step-property-set-generators.js.map +1 -0
- package/dist/step-property-set-index.d.ts +25 -0
- package/dist/step-property-set-index.d.ts.map +1 -0
- package/dist/step-property-set-index.js +69 -0
- package/dist/step-property-set-index.js.map +1 -0
- package/dist/step-property-set-readers.d.ts +158 -0
- package/dist/step-property-set-readers.d.ts.map +1 -0
- package/dist/step-property-set-readers.js +251 -0
- package/dist/step-property-set-readers.js.map +1 -0
- package/dist/step-property-sets.d.ts +2 -186
- package/dist/step-property-sets.d.ts.map +1 -1
- package/dist/step-property-sets.js +22 -674
- package/dist/step-property-sets.js.map +1 -1
- package/dist/step-serialization.d.ts +17 -51
- package/dist/step-serialization.d.ts.map +1 -1
- package/dist/step-serialization.js +19 -128
- package/dist/step-serialization.js.map +1 -1
- package/dist/step-source-iteration.d.ts +7 -5
- package/dist/step-source-iteration.d.ts.map +1 -1
- package/dist/step-source-iteration.js +3 -3
- package/dist/step-source-iteration.js.map +1 -1
- package/dist/subset-entity-reader.d.ts +103 -0
- package/dist/subset-entity-reader.d.ts.map +1 -0
- package/dist/subset-entity-reader.js +102 -0
- package/dist/subset-entity-reader.js.map +1 -0
- package/dist/subset-roots.d.ts +58 -0
- package/dist/subset-roots.d.ts.map +1 -0
- package/dist/subset-roots.js +103 -0
- package/dist/subset-roots.js.map +1 -0
- package/package.json +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-property-sets.js","sourceRoot":"","sources":["../src/step-property-sets.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"step-property-sets.js","sourceRoot":"","sources":["../src/step-property-sets.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,2BAA2B,GAC5B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAA2B,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAC7F,OAAO,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAI7G;;;;;;;;;GASG;AACH,MAAM,UAAU,sCAAsC,CACpD,IAAgB,EAChB,OAA0B,EAC1B,GAAuB;IAEvB,gFAAgF;IAChF,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAA+B,CAAC;IACzE,KAAK,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACvD,oEAAoE;QACpE,6CAA6C;QAC7C,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;YAAE,SAAS;QAC5C,MAAM,WAAW,GAAG,2BAA2B,CAC7C,GAAG,EACH,QAAQ,EACR,KAAK,EACL,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,QAAQ,CAAC,EAC7C,OAAO,CAAC,UAAU,CACnB,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,cAAc,IAAI,WAAW,CAAC,KAAK,CAAC;QACzC,uEAAuE;QACvE,wEAAwE;QACxE,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAC7F,yBAAyB,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,yBAAyB,CAAC,CAAC;IACjF,CAAC;IAED,uEAAuE;IACvE,2EAA2E;IAC3E,wEAAwE;IACxE,iCAAiC;IACjC,KAAK,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,IAAI,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAC7E,2EAA2E;QAC3E,wCAAwC;QACxC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;YAAE,SAAS;QAC5C,MAAM,QAAQ,GAAG,uBAAuB,CACtC,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,EACjD,kBAAkB,EAClB,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,GAAG,EAAE,EACpD,CAAC,MAAM,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,CAC5C,CAAC;QACF,IAAI,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9C,sEAAsE;YACtE,sEAAsE;YACtE,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAC5B,QAAQ,EACR,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAC5D,CAAC;YACF,SAAS;QACX,CAAC;QACD,kEAAkE;QAClE,yEAAyE;QACzE,sEAAsE;QACtE,sEAAsE;QACtE,4DAA4D;QAC5D,oEAAoE;QACpE,qEAAqE;QACrE,iEAAiE;QACjE,sDAAsD;QACtD,oCAAoC;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,UAAU,GAAkB,IAAI,CAAC;QACrC,IAAI,OAAO,GAA+B,IAAI,CAAC;QAC/C,yEAAyE;QACzE,yEAAyE;QACzE,uEAAuE;QACvE,oEAAoE;QACpE,uEAAuE;QACvE,gEAAgE;QAChE,yEAAyE;QACzE,wEAAwE;QACxE,qBAAqB;QACrB,IAAI,MAAM,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/C,UAAU,GAAG,WAAW,CACtB,GAAG,CAAC,SAAS,CAAC,MAAM,EACpB,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CACtC,CAAC;YACF,sEAAsE;YACtE,+DAA+D;YAC/D,OAAO,GAAG,GAAG,CAAC,wBAAwB,CACpC,QAAQ,EACR,UAAU,EACV,MAAM,CAAC,IAAI,EACX,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,EACrC,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,aAAa,EAClB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACd,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChB,WAAW,QAAQ,eAAe,IAAI,iBAAiB;gBACrD,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,6CAA6C,CACxE,CACJ,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,uEAAuE;YACvE,mEAAmE;YACnE,wEAAwE;YACxE,wEAAwE;YACxE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,2BAA2B,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC;YAC7E,qEAAqE;YACrE,oEAAoE;YACpE,SAAS;YACT,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YACpE,SAAS;QACX,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,wBAAwB,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC7E,IAAI,SAAS,EAAE,CAAC;YACd,qEAAqE;YACrE,qEAAqE;YACrE,uEAAuE;YACvE,sEAAsE;YACtE,mEAAmE;YACnE,wEAAwE;YACxE,uEAAuE;YACvE,oEAAoE;YACpE,wEAAwE;YACxE,iDAAiD;YACjD,MAAM,OAAO,GAAG,IAAI,KAAK,UAAU,CAAC;YACpC,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,IAAI,OAAO,EAAE,CAAC;gBAC1C,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAChD,CAAC;YACD,sEAAsE;YACtE,kEAAkE;YAClE,oEAAoE;YACpE,qEAAqE;YACrE,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;gBAC3D,wBAAwB,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAChE,gEAAgE;gBAChE,iEAAiE;gBACjE,kEAAkE;gBAClE,6BAA6B,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YAC7F,CAAC;YACD,SAAS;QACX,CAAC;QACD,uEAAuE;QACvE,qEAAqE;QACrE,kEAAkE;QAClE,yEAAyE;QACzE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,2BAA2B,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAC9E,iEAAiE;QACjE,0EAA0E;QAC1E,0EAA0E;QAC1E,uEAAuE;QACvE,yEAAyE;QACzE,uEAAuE;QACvE,oBAAoB;QACpB,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACpE,oEAAoE;QACpE,+DAA+D;QAC/D,qEAAqE;QACrE,wEAAwE;QACxE,MAAM,OAAO,GAAG,IAAI,KAAK,UAAU,CAAC;QACpC,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,IAAI,OAAO,EAAE,CAAC;YAC1C,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAChD,CAAC;QACD,+DAA+D;QAC/D,oEAAoE;QACpE,uEAAuE;QACvE,kEAAkE;QAClE,sEAAsE;QACtE,yCAAyC;QACzC,IAAI,OAAO,EAAE,CAAC;YACZ,wBAAwB,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAChE,oEAAoE;YACpE,wEAAwE;YACxE,6BAA6B,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;IAED,+CAA+C;IAC/C,KAAK,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;YAAE,SAAS;QAC5C,MAAM,WAAW,GAAG,2BAA2B,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;QAC9G,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,cAAc,IAAI,WAAW,CAAC,KAAK,CAAC;QACzC,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC/F,CAAC;AACH,CAAC"}
|
|
@@ -4,16 +4,20 @@
|
|
|
4
4
|
* All functions in this module are pure (no side-effects, no external state)
|
|
5
5
|
* and deal exclusively with converting data to ISO 10303-21 STEP format strings.
|
|
6
6
|
*
|
|
7
|
-
*
|
|
8
|
-
* a token and
|
|
7
|
+
* Three neighbours are deliberately NOT here, because none turns a value into
|
|
8
|
+
* a token and each has rules of its own worth finding on its own:
|
|
9
9
|
* - `step-argument-parser.ts` reads a record's arguments back OUT of a line
|
|
10
10
|
* and writes one slot by index (`splitTopLevelArgs`, `replaceStepArgument`,
|
|
11
11
|
* `splitTopLevelStepArguments`);
|
|
12
12
|
* - `step-file-assembly.ts` joins a finished header and finished entity lines
|
|
13
|
-
* into the delivered file (`assembleStepBytes`, `assembleStepBlob`)
|
|
13
|
+
* into the delivered file (`assembleStepBytes`, `assembleStepBlob`);
|
|
14
|
+
* - `property-value-serialization.ts` (split out by #3184) is the IFC
|
|
15
|
+
* property `NominalValue` token for a `PropertyValueType`
|
|
16
|
+
* (`serializePropertyValue`) — the property-TYPE-NAME mapping table, not a
|
|
17
|
+
* generic STEP token, and worth reading on its own.
|
|
14
18
|
*/
|
|
15
19
|
import { type IfcAttributeValue } from '@ifc-lite/parser';
|
|
16
|
-
import {
|
|
20
|
+
import { QuantityType } from '@ifc-lite/data';
|
|
17
21
|
/**
|
|
18
22
|
* Resolve an IFC defined type (`IfcLengthMeasure`, `IfcPositiveLengthMeasure`,
|
|
19
23
|
* `IfcBoolean`, …) to its underlying EXPRESS primitive (`REAL`, `BOOLEAN`, …)
|
|
@@ -32,9 +36,15 @@ export declare function serializeTypedMarker(type: string, value: string | numbe
|
|
|
32
36
|
* Escape a string for STEP format: backslash and single-quote doubling, plus
|
|
33
37
|
* non-ASCII directive encoding.
|
|
34
38
|
*
|
|
35
|
-
* Control characters (CR/LF and other C0 codes) are
|
|
36
|
-
* space
|
|
37
|
-
*
|
|
39
|
+
* Control characters (CR/LF and other C0 codes, plus DEL) are each replaced by
|
|
40
|
+
* ONE space — a run of n control characters becomes n spaces, not one — so
|
|
41
|
+
* every generated STEP entity stays on one physical line and round-trips
|
|
42
|
+
* through the line-oriented merge/convert paths without losing length.
|
|
43
|
+
* Collapsing a run (`/[...]+/`, which this did until #3284) disagreed with
|
|
44
|
+
* `ifc_lite_export::step_text::escape`, which has always mapped each control
|
|
45
|
+
* character to its own space: the same value written by the two halves came
|
|
46
|
+
* out different. ISO 10303-21 6.3.3.4 mandates neither, but preserving the
|
|
47
|
+
* count loses no information.
|
|
38
48
|
*
|
|
39
49
|
* ISO 10303-21 6.3.3.4 restricts a string literal's plain-text bytes to the
|
|
40
50
|
* "basic graphic" range 32-126; every other character is a control directive
|
|
@@ -64,50 +74,6 @@ export declare function toStepReal(v: number): string;
|
|
|
64
74
|
* Map QuantityType enum to IFC STEP entity type name.
|
|
65
75
|
*/
|
|
66
76
|
export declare function quantityTypeToIfcType(type: QuantityType): string;
|
|
67
|
-
/**
|
|
68
|
-
* Serialize a property value to STEP format (e.g. IFCLABEL, IFCREAL, etc.).
|
|
69
|
-
*
|
|
70
|
-
* The token this writes is the property's DECLARED TYPE in the exported file, so
|
|
71
|
-
* every member below has to name the IFC primitive the value was authored as —
|
|
72
|
-
* not merely one that can hold the characters. Two did not (#2472):
|
|
73
|
-
*
|
|
74
|
-
* - `Text` was written as `IFCLABEL`. `IfcLabel` is a bounded, name-like
|
|
75
|
-
* string; `IfcText` is unbounded prose. A consumer read a different type
|
|
76
|
-
* than the property was created with, and a long value exceeded what
|
|
77
|
-
* `IfcLabel` is specified to carry.
|
|
78
|
-
* - `Logical` was written as `IFCBOOLEAN` for its two definite states.
|
|
79
|
-
* `IfcBoolean` has two values; `IfcLogical` has three, and `.U.` is the
|
|
80
|
-
* reason a property is Logical rather than Boolean in the first place.
|
|
81
|
-
*
|
|
82
|
-
* Neither could be caught by a value-level round-trip: the extractor collapses
|
|
83
|
-
* every string-valued token (`IFCLABEL`, `IFCTEXT`, `IFCIDENTIFIER`) to
|
|
84
|
-
* `PropertyValueType.String` and keeps the token name only in `dataType`, so
|
|
85
|
-
* the VALUE survives export/re-import through the wrong wrapper unchanged. Only
|
|
86
|
-
* an assertion on the emitted token sees the difference — which is what
|
|
87
|
-
* `property-value-serialization.test.ts` makes.
|
|
88
|
-
*
|
|
89
|
-
* `@ifc-lite/collab`'s `PROPERTY_TYPE_NAMES` is the same table for a different
|
|
90
|
-
* transport, and it already named `Text` and `Logical` correctly — so on THOSE
|
|
91
|
-
* TWO MEMBERS the two agree now. Not on the table as a whole, and this pass does
|
|
92
|
-
* not make them agree:
|
|
93
|
-
*
|
|
94
|
-
* - `String`: collab says `IfcText`, this says `IFCLABEL`. Both are guesses
|
|
95
|
-
* about a token the extractor did not keep, and they guess in opposite
|
|
96
|
-
* directions (unbounded prose vs the conservative bounded name). Changing
|
|
97
|
-
* either is a behaviour change to the OTHER transport's payload, out of
|
|
98
|
-
* #2472's scope, and it needs the argument about which guess is right made
|
|
99
|
-
* first — not a silent alignment.
|
|
100
|
-
* - `List`: collab says `IfcText`; this writes a STEP aggregate `(...)` of
|
|
101
|
-
* `IFCLABEL` items, which is not a NominalValue token at all.
|
|
102
|
-
*
|
|
103
|
-
* `Enum` was the third disagreement — collab said `IfcLabel`, this wrote a bare
|
|
104
|
-
* `.TOKEN.` — and #2488 settled it on collab's side, for the reason the case
|
|
105
|
-
* below states: the bare token is not a member of the SELECT at all.
|
|
106
|
-
*
|
|
107
|
-
* `Label`, `Identifier`, `Real`, `Integer`, `Boolean`, `Text`, `Logical`, `Enum`
|
|
108
|
-
* and `Reference` agree.
|
|
109
|
-
*/
|
|
110
|
-
export declare function serializePropertyValue(value: unknown, type: PropertyValueType): string;
|
|
111
77
|
/**
|
|
112
78
|
* True when a STEP source token is a REAL literal — a numeric token carrying a
|
|
113
79
|
* decimal point or an exponent (`0.4`, `+0.4`, `1.5E-7`, `4.`). Used to
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-serialization.d.ts","sourceRoot":"","sources":["../src/step-serialization.ts"],"names":[],"mappings":"AAIA
|
|
1
|
+
{"version":3,"file":"step-serialization.d.ts","sourceRoot":"","sources":["../src/step-serialization.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAmC,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAkB,MAAM,gBAAgB,CAAC;AAK9D;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqBlE;AAiDD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAI3F;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAOpD;AAwBD;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAG5C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAWhE;AAGD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAGzD;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAsCnF;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,UAAQ,GAAG,MAAM,CA0BtF;AAED,+EAA+E;AAC/E,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAExD"}
|
|
@@ -7,16 +7,20 @@
|
|
|
7
7
|
* All functions in this module are pure (no side-effects, no external state)
|
|
8
8
|
* and deal exclusively with converting data to ISO 10303-21 STEP format strings.
|
|
9
9
|
*
|
|
10
|
-
*
|
|
11
|
-
* a token and
|
|
10
|
+
* Three neighbours are deliberately NOT here, because none turns a value into
|
|
11
|
+
* a token and each has rules of its own worth finding on its own:
|
|
12
12
|
* - `step-argument-parser.ts` reads a record's arguments back OUT of a line
|
|
13
13
|
* and writes one slot by index (`splitTopLevelArgs`, `replaceStepArgument`,
|
|
14
14
|
* `splitTopLevelStepArguments`);
|
|
15
15
|
* - `step-file-assembly.ts` joins a finished header and finished entity lines
|
|
16
|
-
* into the delivered file (`assembleStepBytes`, `assembleStepBlob`)
|
|
16
|
+
* into the delivered file (`assembleStepBytes`, `assembleStepBlob`);
|
|
17
|
+
* - `property-value-serialization.ts` (split out by #3184) is the IFC
|
|
18
|
+
* property `NominalValue` token for a `PropertyValueType`
|
|
19
|
+
* (`serializePropertyValue`) — the property-TYPE-NAME mapping table, not a
|
|
20
|
+
* generic STEP token, and worth reading on its own.
|
|
17
21
|
*/
|
|
18
22
|
import { serializeValue, SCHEMA_REGISTRY } from '@ifc-lite/parser';
|
|
19
|
-
import {
|
|
23
|
+
import { QuantityType, formatStepReal } from '@ifc-lite/data';
|
|
20
24
|
/** EXPRESS base primitives a defined type ultimately resolves to. */
|
|
21
25
|
const EXPRESS_PRIMITIVES = new Set(['BOOLEAN', 'LOGICAL', 'INTEGER', 'REAL', 'NUMBER', 'STRING', 'BINARY']);
|
|
22
26
|
/**
|
|
@@ -116,9 +120,15 @@ export function serializeTypedMarker(type, value) {
|
|
|
116
120
|
* Escape a string for STEP format: backslash and single-quote doubling, plus
|
|
117
121
|
* non-ASCII directive encoding.
|
|
118
122
|
*
|
|
119
|
-
* Control characters (CR/LF and other C0 codes) are
|
|
120
|
-
* space
|
|
121
|
-
*
|
|
123
|
+
* Control characters (CR/LF and other C0 codes, plus DEL) are each replaced by
|
|
124
|
+
* ONE space — a run of n control characters becomes n spaces, not one — so
|
|
125
|
+
* every generated STEP entity stays on one physical line and round-trips
|
|
126
|
+
* through the line-oriented merge/convert paths without losing length.
|
|
127
|
+
* Collapsing a run (`/[...]+/`, which this did until #3284) disagreed with
|
|
128
|
+
* `ifc_lite_export::step_text::escape`, which has always mapped each control
|
|
129
|
+
* character to its own space: the same value written by the two halves came
|
|
130
|
+
* out different. ISO 10303-21 6.3.3.4 mandates neither, but preserving the
|
|
131
|
+
* count loses no information.
|
|
122
132
|
*
|
|
123
133
|
* ISO 10303-21 6.3.3.4 restricts a string literal's plain-text bytes to the
|
|
124
134
|
* "basic graphic" range 32-126; every other character is a control directive
|
|
@@ -139,7 +149,7 @@ export function escapeStepString(str) {
|
|
|
139
149
|
.replace(/\\/g, '\\\\')
|
|
140
150
|
.replace(/'/g, "''")
|
|
141
151
|
// eslint-disable-next-line no-control-regex
|
|
142
|
-
.replace(/[\x00-\x1F\x7F]
|
|
152
|
+
.replace(/[\x00-\x1F\x7F]/g, ' ');
|
|
143
153
|
return encodeNonAsciiStepDirectives(escaped);
|
|
144
154
|
}
|
|
145
155
|
/**
|
|
@@ -189,129 +199,10 @@ export function quantityTypeToIfcType(type) {
|
|
|
189
199
|
case QuantityType.Count: return 'IFCQUANTITYCOUNT';
|
|
190
200
|
case QuantityType.Weight: return 'IFCQUANTITYWEIGHT';
|
|
191
201
|
case QuantityType.Time: return 'IFCQUANTITYTIME';
|
|
202
|
+
case QuantityType.Number: return 'IFCQUANTITYNUMBER';
|
|
192
203
|
default: return 'IFCQUANTITYCOUNT';
|
|
193
204
|
}
|
|
194
205
|
}
|
|
195
|
-
/**
|
|
196
|
-
* Serialize a property value to STEP format (e.g. IFCLABEL, IFCREAL, etc.).
|
|
197
|
-
*
|
|
198
|
-
* The token this writes is the property's DECLARED TYPE in the exported file, so
|
|
199
|
-
* every member below has to name the IFC primitive the value was authored as —
|
|
200
|
-
* not merely one that can hold the characters. Two did not (#2472):
|
|
201
|
-
*
|
|
202
|
-
* - `Text` was written as `IFCLABEL`. `IfcLabel` is a bounded, name-like
|
|
203
|
-
* string; `IfcText` is unbounded prose. A consumer read a different type
|
|
204
|
-
* than the property was created with, and a long value exceeded what
|
|
205
|
-
* `IfcLabel` is specified to carry.
|
|
206
|
-
* - `Logical` was written as `IFCBOOLEAN` for its two definite states.
|
|
207
|
-
* `IfcBoolean` has two values; `IfcLogical` has three, and `.U.` is the
|
|
208
|
-
* reason a property is Logical rather than Boolean in the first place.
|
|
209
|
-
*
|
|
210
|
-
* Neither could be caught by a value-level round-trip: the extractor collapses
|
|
211
|
-
* every string-valued token (`IFCLABEL`, `IFCTEXT`, `IFCIDENTIFIER`) to
|
|
212
|
-
* `PropertyValueType.String` and keeps the token name only in `dataType`, so
|
|
213
|
-
* the VALUE survives export/re-import through the wrong wrapper unchanged. Only
|
|
214
|
-
* an assertion on the emitted token sees the difference — which is what
|
|
215
|
-
* `property-value-serialization.test.ts` makes.
|
|
216
|
-
*
|
|
217
|
-
* `@ifc-lite/collab`'s `PROPERTY_TYPE_NAMES` is the same table for a different
|
|
218
|
-
* transport, and it already named `Text` and `Logical` correctly — so on THOSE
|
|
219
|
-
* TWO MEMBERS the two agree now. Not on the table as a whole, and this pass does
|
|
220
|
-
* not make them agree:
|
|
221
|
-
*
|
|
222
|
-
* - `String`: collab says `IfcText`, this says `IFCLABEL`. Both are guesses
|
|
223
|
-
* about a token the extractor did not keep, and they guess in opposite
|
|
224
|
-
* directions (unbounded prose vs the conservative bounded name). Changing
|
|
225
|
-
* either is a behaviour change to the OTHER transport's payload, out of
|
|
226
|
-
* #2472's scope, and it needs the argument about which guess is right made
|
|
227
|
-
* first — not a silent alignment.
|
|
228
|
-
* - `List`: collab says `IfcText`; this writes a STEP aggregate `(...)` of
|
|
229
|
-
* `IFCLABEL` items, which is not a NominalValue token at all.
|
|
230
|
-
*
|
|
231
|
-
* `Enum` was the third disagreement — collab said `IfcLabel`, this wrote a bare
|
|
232
|
-
* `.TOKEN.` — and #2488 settled it on collab's side, for the reason the case
|
|
233
|
-
* below states: the bare token is not a member of the SELECT at all.
|
|
234
|
-
*
|
|
235
|
-
* `Label`, `Identifier`, `Real`, `Integer`, `Boolean`, `Text`, `Logical`, `Enum`
|
|
236
|
-
* and `Reference` agree.
|
|
237
|
-
*/
|
|
238
|
-
export function serializePropertyValue(value, type) {
|
|
239
|
-
if (value === null || value === undefined) {
|
|
240
|
-
// `Logical` is the one member with a value FOR "no value": the extractor
|
|
241
|
-
// reads `.U.` / `.X.` back as a null-valued Logical, so `$` here would
|
|
242
|
-
// turn an explicit unknown into an omitted attribute on re-export.
|
|
243
|
-
if (type === PropertyValueType.Logical)
|
|
244
|
-
return `IFCLOGICAL(.U.)`;
|
|
245
|
-
return '$';
|
|
246
|
-
}
|
|
247
|
-
switch (type) {
|
|
248
|
-
// `String` is the extractor's catch-all for any string-valued token whose
|
|
249
|
-
// declared type it did not keep, so it stays the bounded `IfcLabel`: the
|
|
250
|
-
// conservative direction for an unknown short string, and what
|
|
251
|
-
// `PROPERTY_TYPE_NAMES` calls `Enum` and `Reference` too.
|
|
252
|
-
case PropertyValueType.String:
|
|
253
|
-
case PropertyValueType.Label:
|
|
254
|
-
return `IFCLABEL('${escapeStepString(String(value))}')`;
|
|
255
|
-
case PropertyValueType.Text:
|
|
256
|
-
return `IFCTEXT('${escapeStepString(String(value))}')`;
|
|
257
|
-
case PropertyValueType.Identifier:
|
|
258
|
-
return `IFCIDENTIFIER('${escapeStepString(String(value))}')`;
|
|
259
|
-
case PropertyValueType.Real: {
|
|
260
|
-
const num = Number(value);
|
|
261
|
-
if (!Number.isFinite(num))
|
|
262
|
-
return '$';
|
|
263
|
-
return `IFCREAL(${formatStepReal(num)})`;
|
|
264
|
-
}
|
|
265
|
-
case PropertyValueType.Integer:
|
|
266
|
-
return `IFCINTEGER(${Math.round(Number(value))})`;
|
|
267
|
-
case PropertyValueType.Boolean:
|
|
268
|
-
if (value === true)
|
|
269
|
-
return `IFCBOOLEAN(.T.)`;
|
|
270
|
-
if (value === false)
|
|
271
|
-
return `IFCBOOLEAN(.F.)`;
|
|
272
|
-
// A Boolean whose value is neither: no `IfcBoolean` literal says that, and
|
|
273
|
-
// `.U.` is not in its domain, so the three-state primitive is the only
|
|
274
|
-
// thing that can carry it. Unchanged from before #2472 — the Logical case
|
|
275
|
-
// below is what stopped borrowing IfcBoolean's name for it.
|
|
276
|
-
return `IFCLOGICAL(.U.)`;
|
|
277
|
-
case PropertyValueType.Logical:
|
|
278
|
-
if (value === true)
|
|
279
|
-
return `IFCLOGICAL(.T.)`;
|
|
280
|
-
if (value === false)
|
|
281
|
-
return `IFCLOGICAL(.F.)`;
|
|
282
|
-
return `IFCLOGICAL(.U.)`;
|
|
283
|
-
// `NominalValue` is declared `IfcValue`, and `IfcValue` has no ENUMERATION
|
|
284
|
-
// leaf in any schema this exporter targets (IFC2X3 / IFC4 / IFC4X3 all
|
|
285
|
-
// resolve it to IfcMeasureValue | IfcSimpleValue | IfcDerivedMeasureValue).
|
|
286
|
-
// So there is no wrapper for an enumeration token and a bare `.EXTERNAL.`
|
|
287
|
-
// is not a member of the SELECT at all — this was the one branch writing an
|
|
288
|
-
// unqualified token into a slot every other branch type-qualifies (#2488).
|
|
289
|
-
// `IfcLabel` is what the value can be expressed as, and what
|
|
290
|
-
// `@ifc-lite/collab`'s `PROPERTY_TYPE_NAMES` has always called this member.
|
|
291
|
-
//
|
|
292
|
-
// No `.toUpperCase()`: it existed to build an EXPRESS enumeration name,
|
|
293
|
-
// which is upper-case by construction. A label is not, and folding the case
|
|
294
|
-
// means an authored `'external'` reads back as `'EXTERNAL'`. Nothing
|
|
295
|
-
// EXTRACTS an `Enum` (the extractor collapses every string-valued token to
|
|
296
|
-
// `String`), so this branch only ever serializes a value a session authored
|
|
297
|
-
// through `setProperty(…, PropertyValueType.Enum)` — the value the caller
|
|
298
|
-
// wrote is the one to keep.
|
|
299
|
-
case PropertyValueType.Enum:
|
|
300
|
-
return `IFCLABEL('${escapeStepString(String(value))}')`;
|
|
301
|
-
case PropertyValueType.List:
|
|
302
|
-
if (Array.isArray(value)) {
|
|
303
|
-
const items = value.map(v => serializePropertyValue(v, PropertyValueType.String));
|
|
304
|
-
return `(${items.join(',')})`;
|
|
305
|
-
}
|
|
306
|
-
return '$';
|
|
307
|
-
// Includes `Reference`, which no extraction path produces (an
|
|
308
|
-
// `IfcPropertyReferenceValue` comes back as a String holding `#id`) and
|
|
309
|
-
// which this function could not express anyway: an entity reference is a
|
|
310
|
-
// different property CLASS, not a different `NominalValue` token.
|
|
311
|
-
default:
|
|
312
|
-
return `IFCLABEL('${escapeStepString(String(value))}')`;
|
|
313
|
-
}
|
|
314
|
-
}
|
|
315
206
|
/**
|
|
316
207
|
* True when a STEP source token is a REAL literal — a numeric token carrying a
|
|
317
208
|
* decimal point or an exponent (`0.4`, `+0.4`, `1.5E-7`, `4.`). Used to
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-serialization.js","sourceRoot":"","sources":["../src/step-serialization.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D
|
|
1
|
+
{"version":3,"file":"step-serialization.js","sourceRoot":"","sources":["../src/step-serialization.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,15 +14,17 @@
|
|
|
14
14
|
*
|
|
15
15
|
* What is injected rather than moved, and why: the
|
|
16
16
|
* `applySourceLineMutations` pipeline (and its `applyAttributeMutations` /
|
|
17
|
-
* `applyPositionalMutations`
|
|
18
|
-
*
|
|
19
|
-
*
|
|
17
|
+
* `applyPositionalMutations` — free functions in `step-attribute-
|
|
18
|
+
* mutations.ts`, with the two per-slot serialize helpers they share with the
|
|
19
|
+
* overlay-created path in `step-attribute-serializers.ts` — #2475's
|
|
20
|
+
* "remaining private helpers" step, split further by #3184) is shared
|
|
21
|
+
* verbatim with the type-object `HasPropertySets` rewrite in
|
|
20
22
|
* `step-property-sets.ts` and with `step-overlay-entities.ts`, so it belongs
|
|
21
23
|
* to no single phase; `isGeometryEntity` is likewise read by the setup
|
|
22
24
|
* closure and by that module. `applyOverlayEntityOverrides` is NOT a
|
|
23
25
|
* dependency of this phase at all — it is reached only from
|
|
24
26
|
* `step-overlay-entities.ts` — and is injected there instead, though it too
|
|
25
|
-
* now lives in `step-attribute-
|
|
27
|
+
* now lives in its own file, `step-overlay-attribute-overrides.ts`.
|
|
26
28
|
*
|
|
27
29
|
* Unlike `step-georeferencing.ts` this phase needs no `allocateExpressId`
|
|
28
30
|
* callback: it never allocates an id, it only rewrites lines that already have
|
|
@@ -47,7 +49,7 @@
|
|
|
47
49
|
*/
|
|
48
50
|
import type { IfcDataStore } from '@ifc-lite/parser';
|
|
49
51
|
import { type IfcSchemaVersion } from './schema-converter.js';
|
|
50
|
-
import { type PropertySetContext } from './step-property-
|
|
52
|
+
import { type PropertySetContext } from './step-property-set-readers.js';
|
|
51
53
|
import type { ExportPass, SourceLineMutations, StepExportOptions } from './step-exporter.js';
|
|
52
54
|
/**
|
|
53
55
|
* The exporter state this phase cannot read off the {@link ExportPass}.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-source-iteration.d.ts","sourceRoot":"","sources":["../src/step-source-iteration.ts"],"names":[],"mappings":"AAIA
|
|
1
|
+
{"version":3,"file":"step-source-iteration.d.ts","sourceRoot":"","sources":["../src/step-source-iteration.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAmB,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAG/E,OAAO,EAAuB,KAAK,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAC9F,OAAO,KAAK,EAAE,UAAU,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE7F;;;;;;;;GAQG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IACjC;;mCAE+B;IAC/B,QAAQ,CAAC,wBAAwB,EAAE,CACjC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EACnD,YAAY,EAAE,gBAAgB,EAC9B,aAAa,EAAE,OAAO,EACtB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,KACnD,mBAAmB,CAAC;IACzB;8CAC0C;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACrD;2EACuE;IACvE,QAAQ,CAAC,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;IACtD;;;4DAGwD;IACxD,QAAQ,CAAC,2BAA2B,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CACnF;AA0CD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,iBAAiB,EAC1B,kBAAkB,EAAE,OAAO,EAC3B,mBAAmB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,EAC5C,GAAG,EAAE,sBAAsB,GAC1B,IAAI,CAwIN"}
|
|
@@ -5,7 +5,7 @@ import { filterHiddenRefsFromRelationshipLine } from './reference-collector.js';
|
|
|
5
5
|
import { convertStepLine } from './schema-converter.js';
|
|
6
6
|
import { nominateDeliveredInPlaceEdits } from './in-place-nomination.js';
|
|
7
7
|
import { decodeRange } from './source-ref-bounds.js';
|
|
8
|
-
import { getPropertyIdsInSet } from './step-property-
|
|
8
|
+
import { getPropertyIdsInSet } from './step-property-set-readers.js';
|
|
9
9
|
/**
|
|
10
10
|
* Un-skip property/quantity atoms that a surviving (non-skipped, and — under
|
|
11
11
|
* visible-only export — still-included) IfcPropertySet / IfcElementQuantity
|
|
@@ -23,8 +23,8 @@ function retainSharedAtoms(skipIds, allowedEntityIds, ctxOf) {
|
|
|
23
23
|
if (skipIds.size === 0)
|
|
24
24
|
return;
|
|
25
25
|
// Built once for the whole sweep rather than per container: the readers in
|
|
26
|
-
// `step-property-
|
|
27
|
-
// once per IfcPropertySet / IfcElementQuantity in the file.
|
|
26
|
+
// `step-property-set-readers.ts` take the context, and this loop calls one
|
|
27
|
+
// of them once per IfcPropertySet / IfcElementQuantity in the file.
|
|
28
28
|
const ctx = ctxOf.propertySetContext();
|
|
29
29
|
const byType = ctxOf.dataStore.entityIndex.byType;
|
|
30
30
|
const containerIds = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-source-iteration.js","sourceRoot":"","sources":["../src/step-source-iteration.ts"],"names":[],"mappings":"AAAA;;+DAE+D;
|
|
1
|
+
{"version":3,"file":"step-source-iteration.js","sourceRoot":"","sources":["../src/step-source-iteration.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Read one entity's parsed STEP arguments and resolve a named attribute to
|
|
3
|
+
* its positional slot — the two primitives `anonymize-placement.ts` and
|
|
4
|
+
* `anonymize-scrub.ts` (#2934) need to walk a placement chain and locate a
|
|
5
|
+
* `Name`/`LongName`/`GlobalId` slot by EXPRESS name rather than a hardcoded
|
|
6
|
+
* index that would silently drift from the schema.
|
|
7
|
+
*
|
|
8
|
+
* Deliberately thin: this module owns none of the parsing rules itself. It
|
|
9
|
+
* composes `decodeRange` (`source-ref-bounds.ts`, the same readability gate
|
|
10
|
+
* every other byte-range read in this package uses — #2491) with
|
|
11
|
+
* `splitTopLevelArgs` (`step-argument-parser.ts`, the same quote/paren-aware
|
|
12
|
+
* splitter `filterHiddenRefsFromRelationshipLine` uses) so a second,
|
|
13
|
+
* independent STEP-line parser cannot disagree with the ones the rest of the
|
|
14
|
+
* exporter already relies on.
|
|
15
|
+
*/
|
|
16
|
+
import type { IfcSourceBytes } from '@ifc-lite/parser';
|
|
17
|
+
/** One entity's parsed STEP record: its type token and top-level arguments,
|
|
18
|
+
* in declaration order (still raw STEP tokens — `#N`, `'text'`, `$`, `.T.`,
|
|
19
|
+
* a nested `(...)` list — not decoded values). */
|
|
20
|
+
export interface SubsetEntityArgs {
|
|
21
|
+
/** UPPERCASE STEP type token, e.g. `IFCLOCALPLACEMENT`. */
|
|
22
|
+
readonly type: string;
|
|
23
|
+
readonly args: readonly string[];
|
|
24
|
+
}
|
|
25
|
+
/** The slice of an entity index this module reads: a byte-range lookup, same
|
|
26
|
+
* shape `collectReferencedEntityIds` and `collectStyleEntities` already take. */
|
|
27
|
+
export interface EntityByteRangeIndex {
|
|
28
|
+
get(id: number): {
|
|
29
|
+
byteOffset: number;
|
|
30
|
+
byteLength: number;
|
|
31
|
+
type?: string;
|
|
32
|
+
} | undefined;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Read entity `id`'s STEP record out of `store`'s source and split it into
|
|
36
|
+
* its type token and top-level argument list. Returns `null` when the id has
|
|
37
|
+
* no entry in `index`, or when `index`'s byte range cannot actually be read
|
|
38
|
+
* out of `store.source` (`createSourceRefReader` — the same gate
|
|
39
|
+
* `step-pass-builder.ts`'s `isReadableSourceRef` applies), or when the bytes
|
|
40
|
+
* at that range do not parse as a single `#N=TYPE(...);` record.
|
|
41
|
+
*
|
|
42
|
+
* Only reads SOURCE-backed records. An overlay-created entity (no bytes to
|
|
43
|
+
* decode) is out of scope for this module: `anonymize-placement.ts` and
|
|
44
|
+
* `anonymize-scrub.ts` only ever walk/mutate the entities a freshly-parsed
|
|
45
|
+
* source model contains, never ones the private `MutablePropertyView` they
|
|
46
|
+
* build has itself just created.
|
|
47
|
+
*/
|
|
48
|
+
export declare function readEntityArgs(store: {
|
|
49
|
+
readonly source: IfcSourceBytes;
|
|
50
|
+
}, index: EntityByteRangeIndex, id: number): SubsetEntityArgs | null;
|
|
51
|
+
/**
|
|
52
|
+
* A STEP source schema `attrIndex` can resolve slots against DIRECTLY, one
|
|
53
|
+
* per bundled EXPRESS table (`@ifc-lite/data`'s `ENTITIES_IFC2X3` /
|
|
54
|
+
* `ENTITIES_IFC4` / `ENTITIES_IFC4X3`). `IFC5` (ifcx — JSON-native, no
|
|
55
|
+
* positional STEP records at all) never reaches this module, so it has no
|
|
56
|
+
* table and is deliberately not a member.
|
|
57
|
+
*/
|
|
58
|
+
export type SourceStepSchema = 'IFC2X3' | 'IFC4' | 'IFC4X3';
|
|
59
|
+
/**
|
|
60
|
+
* Narrow an `IfcDataStore.schemaVersion` to a {@link SourceStepSchema}
|
|
61
|
+
* `attrIndex` can resolve against, or `undefined` for anything that isn't
|
|
62
|
+
* one of the three bundled STEP schemas (`IFC5`, or an absent/unrecognized
|
|
63
|
+
* value) — callers pass that straight through to `attrIndex`, which then
|
|
64
|
+
* falls back to the pinned-first cross-schema union exactly as it always did.
|
|
65
|
+
*/
|
|
66
|
+
export declare function stepSourceSchema(schemaVersion: string | undefined): SourceStepSchema | undefined;
|
|
67
|
+
/**
|
|
68
|
+
* Zero-based positional index of attribute `name` on `type`, or `-1` when
|
|
69
|
+
* `type` declares no such attribute (an unknown type, or a genuine typo).
|
|
70
|
+
*
|
|
71
|
+
* When `schema` is given (the exported model's OWN schema, via
|
|
72
|
+
* {@link stepSourceSchema}), resolves against THAT schema's table first: the
|
|
73
|
+
* three bundled schemas do not always agree on a class's attribute order —
|
|
74
|
+
* e.g. IFC2X3's `IfcApprovalRelationship` puts `Name` at slot 3, IFC4 puts it
|
|
75
|
+
* at slot 0 — so a caller walking an arbitrary, non-fixed type (anything
|
|
76
|
+
* `pseudonymizeAllNames` reaches in `anonymize-scrub.ts`) has to resolve
|
|
77
|
+
* against the source model's actual schema or it silently reads/writes the
|
|
78
|
+
* wrong slot on every class the schemas disagree about. Falls back to
|
|
79
|
+
* `getAttributeNamesAcrossSchemas` — the pinned-IFC4-first cross-schema
|
|
80
|
+
* union this function always used before schema-aware resolution existed —
|
|
81
|
+
* when `schema` is omitted, or when `schema`'s own table doesn't know `type`
|
|
82
|
+
* (e.g. an IFC4X3-only class read out of an `IFC4` store).
|
|
83
|
+
*
|
|
84
|
+
* A caller that resolves a slot declared on a FIXED, verified-stable type —
|
|
85
|
+
* `IfcRoot.GlobalId` (slot 0 on every bundled schema), or a literal type
|
|
86
|
+
* token whose declared order was checked directly against all three
|
|
87
|
+
* `ENTITIES_*` tables — may omit `schema`: the union answers identically to
|
|
88
|
+
* a schema-specific lookup for those, and several call sites in
|
|
89
|
+
* `anonymize-placement.ts` and `anonymize-scrub.ts` do exactly that, each
|
|
90
|
+
* noting at the call site why its type is fixed rather than caller-supplied.
|
|
91
|
+
*
|
|
92
|
+
* WRITE-SIDE PITFALL a caller resolving a slot via this function must not
|
|
93
|
+
* fall into: `MutablePropertyView.setAttribute(id, name, value)` re-resolves
|
|
94
|
+
* `name` to a slot by ITS OWN lookup at STEP-serialize time
|
|
95
|
+
* (`step-attribute-mutations.ts`'s `applyAttributeMutations`), which is not
|
|
96
|
+
* schema-aware — so an edit queued that way can still land on the wrong slot
|
|
97
|
+
* even after reading the right one here. Write with
|
|
98
|
+
* `MutablePropertyView.setPositionalAttribute(id, index, value)` and this
|
|
99
|
+
* function's resolved `index` instead; `anonymize-scrub.ts` does exactly
|
|
100
|
+
* that for every slot it resolves through a `schema` argument (#3309).
|
|
101
|
+
*/
|
|
102
|
+
export declare function attrIndex(type: string, name: string, schema?: SourceStepSchema): number;
|
|
103
|
+
//# sourceMappingURL=subset-entity-reader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subset-entity-reader.d.ts","sourceRoot":"","sources":["../src/subset-entity-reader.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAMvD;;mDAEmD;AACnD,MAAM,WAAW,gBAAgB;IAC/B,2DAA2D;IAC3D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;CAClC;AAED;kFACkF;AAClF,MAAM,WAAW,oBAAoB;IACnC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;CACxF;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE;IAAE,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;CAAE,EAC1C,KAAK,EAAE,oBAAoB,EAC3B,EAAE,EAAE,MAAM,GACT,gBAAgB,GAAG,IAAI,CAWzB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AAc5D;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS,CAIhG;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAMvF"}
|