@ifc-lite/cli 0.26.0 → 0.27.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 (128) hide show
  1. package/dist/commands/ask.d.ts +8 -0
  2. package/dist/commands/ask.d.ts.map +1 -1
  3. package/dist/commands/ask.js +10 -9
  4. package/dist/commands/ask.js.map +1 -1
  5. package/dist/commands/bsdd.d.ts.map +1 -1
  6. package/dist/commands/bsdd.js +49 -13
  7. package/dist/commands/bsdd.js.map +1 -1
  8. package/dist/commands/diff-classification-label.d.ts +12 -0
  9. package/dist/commands/diff-classification-label.d.ts.map +1 -0
  10. package/dist/commands/diff-classification-label.js +20 -0
  11. package/dist/commands/diff-classification-label.js.map +1 -0
  12. package/dist/commands/diff-engine.d.ts.map +1 -1
  13. package/dist/commands/diff-engine.js +33 -11
  14. package/dist/commands/diff-engine.js.map +1 -1
  15. package/dist/commands/diff-test-helpers.d.ts +12 -0
  16. package/dist/commands/diff-test-helpers.d.ts.map +1 -1
  17. package/dist/commands/diff-test-helpers.js +68 -0
  18. package/dist/commands/diff-test-helpers.js.map +1 -1
  19. package/dist/commands/diff-unit-scale-fixtures.d.ts +34 -0
  20. package/dist/commands/diff-unit-scale-fixtures.d.ts.map +1 -0
  21. package/dist/commands/diff-unit-scale-fixtures.js +94 -0
  22. package/dist/commands/diff-unit-scale-fixtures.js.map +1 -0
  23. package/dist/commands/export.d.ts +11 -0
  24. package/dist/commands/export.d.ts.map +1 -1
  25. package/dist/commands/export.js +9 -14
  26. package/dist/commands/export.js.map +1 -1
  27. package/dist/commands/merge.d.ts.map +1 -1
  28. package/dist/commands/merge.js +8 -0
  29. package/dist/commands/merge.js.map +1 -1
  30. package/dist/commands/query-aggregation.d.ts +27 -4
  31. package/dist/commands/query-aggregation.d.ts.map +1 -1
  32. package/dist/commands/query-aggregation.js +67 -6
  33. package/dist/commands/query-aggregation.js.map +1 -1
  34. package/dist/commands/query-output.d.ts +7 -0
  35. package/dist/commands/query-output.d.ts.map +1 -1
  36. package/dist/commands/query-output.js +63 -27
  37. package/dist/commands/query-output.js.map +1 -1
  38. package/dist/commands/query-storey.d.ts +24 -0
  39. package/dist/commands/query-storey.d.ts.map +1 -0
  40. package/dist/commands/query-storey.js +71 -0
  41. package/dist/commands/query-storey.js.map +1 -0
  42. package/dist/commands/query.d.ts +2 -25
  43. package/dist/commands/query.d.ts.map +1 -1
  44. package/dist/commands/query.js +39 -158
  45. package/dist/commands/query.js.map +1 -1
  46. package/dist/commands/schedule-aggregate.d.ts +51 -0
  47. package/dist/commands/schedule-aggregate.d.ts.map +1 -0
  48. package/dist/commands/schedule-aggregate.js +121 -0
  49. package/dist/commands/schedule-aggregate.js.map +1 -0
  50. package/dist/commands/schedule-columns.d.ts +15 -0
  51. package/dist/commands/schedule-columns.d.ts.map +1 -0
  52. package/dist/commands/schedule-columns.js +63 -0
  53. package/dist/commands/schedule-columns.js.map +1 -0
  54. package/dist/commands/schedule-group.d.ts +65 -0
  55. package/dist/commands/schedule-group.d.ts.map +1 -0
  56. package/dist/commands/schedule-group.js +0 -0
  57. package/dist/commands/schedule-group.js.map +1 -0
  58. package/dist/commands/schedule-presets.d.ts +21 -0
  59. package/dist/commands/schedule-presets.d.ts.map +1 -0
  60. package/dist/commands/schedule-presets.js +62 -0
  61. package/dist/commands/schedule-presets.js.map +1 -0
  62. package/dist/commands/schedule-render-html.d.ts +13 -0
  63. package/dist/commands/schedule-render-html.d.ts.map +1 -0
  64. package/dist/commands/schedule-render-html.js +100 -0
  65. package/dist/commands/schedule-render-html.js.map +1 -0
  66. package/dist/commands/schedule-render-md.d.ts +12 -0
  67. package/dist/commands/schedule-render-md.d.ts.map +1 -0
  68. package/dist/commands/schedule-render-md.js +77 -0
  69. package/dist/commands/schedule-render-md.js.map +1 -0
  70. package/dist/commands/schedule-render.d.ts +51 -0
  71. package/dist/commands/schedule-render.d.ts.map +1 -0
  72. package/dist/commands/schedule-render.js +205 -0
  73. package/dist/commands/schedule-render.js.map +1 -0
  74. package/dist/commands/schedule-spec.d.ts +29 -0
  75. package/dist/commands/schedule-spec.d.ts.map +1 -0
  76. package/dist/commands/schedule-spec.js +111 -0
  77. package/dist/commands/schedule-spec.js.map +1 -0
  78. package/dist/commands/schedule.d.ts +23 -0
  79. package/dist/commands/schedule.d.ts.map +1 -0
  80. package/dist/commands/schedule.js +249 -0
  81. package/dist/commands/schedule.js.map +1 -0
  82. package/dist/commands/schema.d.ts.map +1 -1
  83. package/dist/commands/schema.js +192 -17
  84. package/dist/commands/schema.js.map +1 -1
  85. package/dist/commands/stats-aggregation.d.ts +31 -6
  86. package/dist/commands/stats-aggregation.d.ts.map +1 -1
  87. package/dist/commands/stats-aggregation.js +79 -11
  88. package/dist/commands/stats-aggregation.js.map +1 -1
  89. package/dist/commands/stats.d.ts.map +1 -1
  90. package/dist/commands/stats.js +4 -4
  91. package/dist/commands/stats.js.map +1 -1
  92. package/dist/commands/validate.d.ts +7 -4
  93. package/dist/commands/validate.d.ts.map +1 -1
  94. package/dist/commands/validate.js +9 -6
  95. package/dist/commands/validate.js.map +1 -1
  96. package/dist/commands/where-filter.d.ts +42 -0
  97. package/dist/commands/where-filter.d.ts.map +1 -0
  98. package/dist/commands/where-filter.js +88 -0
  99. package/dist/commands/where-filter.js.map +1 -0
  100. package/dist/energy-export.d.ts.map +1 -1
  101. package/dist/energy-export.js +12 -2
  102. package/dist/energy-export.js.map +1 -1
  103. package/dist/geometry-report.d.ts.map +1 -1
  104. package/dist/geometry-report.js +15 -3
  105. package/dist/geometry-report.js.map +1 -1
  106. package/dist/headless-backend.d.ts +20 -5
  107. package/dist/headless-backend.d.ts.map +1 -1
  108. package/dist/headless-backend.js +131 -90
  109. package/dist/headless-backend.js.map +1 -1
  110. package/dist/index.js +22 -0
  111. package/dist/index.js.map +1 -1
  112. package/dist/output.d.ts +13 -0
  113. package/dist/output.d.ts.map +1 -1
  114. package/dist/output.js +21 -0
  115. package/dist/output.js.map +1 -1
  116. package/dist/property-filter-match.d.ts +12 -0
  117. package/dist/property-filter-match.d.ts.map +1 -0
  118. package/dist/property-filter-match.js +17 -0
  119. package/dist/property-filter-match.js.map +1 -0
  120. package/dist/query-overlay-relations.d.ts +29 -0
  121. package/dist/query-overlay-relations.d.ts.map +1 -0
  122. package/dist/query-overlay-relations.js +88 -0
  123. package/dist/query-overlay-relations.js.map +1 -0
  124. package/dist/query-overlay.d.ts +44 -0
  125. package/dist/query-overlay.d.ts.map +1 -0
  126. package/dist/query-overlay.js +100 -0
  127. package/dist/query-overlay.js.map +1 -0
  128. package/package.json +21 -21
@@ -0,0 +1,34 @@
1
+ /**
2
+ * One wall, same `GlobalId` throughout, carrying a `Pset_X.Width` typed as
3
+ * `IfcLengthMeasure` — for probing whether a diff scales a project-scoped
4
+ * measure PROPERTY the way it already scales a `Qto_` quantity. `unitDef` is
5
+ * the file's `IFCUNITASSIGNMENT` member (metre vs. millimetre `IFCSIUNIT`) and
6
+ * `widthValue` is the raw author-unit number stored in the STEP record.
7
+ */
8
+ export declare function unitScaledPropertyModel(unitDef: string, widthValue: string): string;
9
+ /** `unitScaledPropertyModel`, declared in whole metres. */
10
+ export declare const UNIT_SCALE_METRE_MODEL: string;
11
+ /** Same wall, same physical width, re-authored in a millimetre-declared project. */
12
+ export declare const UNIT_SCALE_MILLIMETRE_MODEL: string;
13
+ /** Same millimetre project, but the width genuinely changed (2.5 m -> 3.0 m). */
14
+ export declare const UNIT_SCALE_MILLIMETRE_EDITED_MODEL: string;
15
+ /**
16
+ * One wall carrying BOTH a `Qto_` quantity (`quantitySiScale`'s path) and a
17
+ * `Pset_X.Width` measure property (`scaledPropertyValue`'s path) — the two
18
+ * scaling fixes model-diff applies before hashing, which a rebase combined
19
+ * into one shared `units` value (`buildDataInput`). Lets a test independently
20
+ * flip only the quantity or only the property and confirm each is scaled
21
+ * exactly once: a value scaled twice by an accidentally-chained path would
22
+ * report `unchanged` as `modified`, or vice versa, on re-export into a
23
+ * differently-unit-declared project.
24
+ */
25
+ export declare function unitScaledCombinedModel(unitDef: string, qtyValue: string, widthValue: string): string;
26
+ /** `unitScaledCombinedModel`, declared in whole metres: quantity 4.0 m, width 2.5 m. */
27
+ export declare const UNIT_SCALE_COMBINED_METRE_MODEL: string;
28
+ /** Same wall, same physical quantity and width, re-authored in millimetres. */
29
+ export declare const UNIT_SCALE_COMBINED_MILLIMETRE_MODEL: string;
30
+ /** Millimetre re-export, but ONLY the quantity genuinely changed (4.0 m -> 5.0 m). */
31
+ export declare const UNIT_SCALE_COMBINED_QUANTITY_EDITED_MODEL: string;
32
+ /** Millimetre re-export, but ONLY the property genuinely changed (2.5 m -> 3.0 m). */
33
+ export declare const UNIT_SCALE_COMBINED_PROPERTY_EDITED_MODEL: string;
34
+ //# sourceMappingURL=diff-unit-scale-fixtures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff-unit-scale-fixtures.d.ts","sourceRoot":"","sources":["../../src/commands/diff-unit-scale-fixtures.ts"],"names":[],"mappings":"AAYA;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAwBnF;AAED,2DAA2D;AAC3D,eAAO,MAAM,sBAAsB,QAGlC,CAAC;AACF,oFAAoF;AACpF,eAAO,MAAM,2BAA2B,QAGvC,CAAC;AACF,iFAAiF;AACjF,eAAO,MAAM,kCAAkC,QAG9C,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CA2BrG;AAED,wFAAwF;AACxF,eAAO,MAAM,+BAA+B,QAI3C,CAAC;AACF,+EAA+E;AAC/E,eAAO,MAAM,oCAAoC,QAIhD,CAAC;AACF,sFAAsF;AACtF,eAAO,MAAM,yCAAyC,QAIrD,CAAC;AACF,sFAAsF;AACtF,eAAO,MAAM,yCAAyC,QAIrD,CAAC"}
@@ -0,0 +1,94 @@
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
+ * Unit-scale STEP fixtures for the `diff --by-content` measure/quantity
6
+ * scaling suites (split out of `diff-test-helpers.ts`, AGENTS.md's ~400-line
7
+ * module-size house rule).
8
+ */
9
+ import { guid } from './diff-test-helpers.js';
10
+ /**
11
+ * One wall, same `GlobalId` throughout, carrying a `Pset_X.Width` typed as
12
+ * `IfcLengthMeasure` — for probing whether a diff scales a project-scoped
13
+ * measure PROPERTY the way it already scales a `Qto_` quantity. `unitDef` is
14
+ * the file's `IFCUNITASSIGNMENT` member (metre vs. millimetre `IFCSIUNIT`) and
15
+ * `widthValue` is the raw author-unit number stored in the STEP record.
16
+ */
17
+ export function unitScaledPropertyModel(unitDef, widthValue) {
18
+ return `ISO-10303-21;
19
+ HEADER;
20
+ FILE_DESCRIPTION((''),'2;1');
21
+ FILE_NAME('m','2026',(''),(''),'','','');
22
+ FILE_SCHEMA(('IFC4'));
23
+ ENDSEC;
24
+ DATA;
25
+ #1= IFCPROJECT('${guid('PROJ')}',$,'Proj',$,$,$,$,(#20),#30);
26
+ #20= IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,1.E-5,#21,$);
27
+ #21= IFCAXIS2PLACEMENT3D(#22,$,$);
28
+ #22= IFCCARTESIANPOINT((0.,0.,0.));
29
+ #30= IFCUNITASSIGNMENT((#31));
30
+ ${unitDef}
31
+ #40= IFCLOCALPLACEMENT($,#21);
32
+ #41= IFCBUILDINGSTOREY('${guid('STOR')}',$,'L01',$,$,#40,$,$,.ELEMENT.,0.);
33
+ #70= IFCWALL('${guid('WALL')}',$,'Wall A',$,$,#40,$,'tagA',$);
34
+ #81= IFCPROPERTYSET('${guid('PSET')}',$,'Pset_X',$,(#82));
35
+ #82= IFCPROPERTYSINGLEVALUE('Width',$,IFCLENGTHMEASURE(${widthValue}),$);
36
+ #83= IFCRELDEFINESBYPROPERTIES('${guid('RELP')}',$,$,$,(#70),#81);
37
+ #96= IFCRELCONTAINEDINSPATIALSTRUCTURE('${guid('RELC')}',$,$,$,(#70),#41);
38
+ ENDSEC;
39
+ END-ISO-10303-21;
40
+ `;
41
+ }
42
+ /** `unitScaledPropertyModel`, declared in whole metres. */
43
+ export const UNIT_SCALE_METRE_MODEL = unitScaledPropertyModel('#31= IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.);', '2.5');
44
+ /** Same wall, same physical width, re-authored in a millimetre-declared project. */
45
+ export const UNIT_SCALE_MILLIMETRE_MODEL = unitScaledPropertyModel('#31= IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.);', '2500.');
46
+ /** Same millimetre project, but the width genuinely changed (2.5 m -> 3.0 m). */
47
+ export const UNIT_SCALE_MILLIMETRE_EDITED_MODEL = unitScaledPropertyModel('#31= IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.);', '3000.');
48
+ /**
49
+ * One wall carrying BOTH a `Qto_` quantity (`quantitySiScale`'s path) and a
50
+ * `Pset_X.Width` measure property (`scaledPropertyValue`'s path) — the two
51
+ * scaling fixes model-diff applies before hashing, which a rebase combined
52
+ * into one shared `units` value (`buildDataInput`). Lets a test independently
53
+ * flip only the quantity or only the property and confirm each is scaled
54
+ * exactly once: a value scaled twice by an accidentally-chained path would
55
+ * report `unchanged` as `modified`, or vice versa, on re-export into a
56
+ * differently-unit-declared project.
57
+ */
58
+ export function unitScaledCombinedModel(unitDef, qtyValue, widthValue) {
59
+ return `ISO-10303-21;
60
+ HEADER;
61
+ FILE_DESCRIPTION((''),'2;1');
62
+ FILE_NAME('m','2026',(''),(''),'','','');
63
+ FILE_SCHEMA(('IFC4'));
64
+ ENDSEC;
65
+ DATA;
66
+ #1= IFCPROJECT('${guid('PROJ')}',$,'Proj',$,$,$,$,(#20),#30);
67
+ #20= IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,1.E-5,#21,$);
68
+ #21= IFCAXIS2PLACEMENT3D(#22,$,$);
69
+ #22= IFCCARTESIANPOINT((0.,0.,0.));
70
+ #30= IFCUNITASSIGNMENT((#31));
71
+ ${unitDef}
72
+ #40= IFCLOCALPLACEMENT($,#21);
73
+ #41= IFCBUILDINGSTOREY('${guid('STOR')}',$,'L01',$,$,#40,$,$,.ELEMENT.,0.);
74
+ #70= IFCWALL('${guid('WALL')}',$,'Wall A',$,$,#40,$,'tagA',$);
75
+ #80= IFCELEMENTQUANTITY('${guid('QSET')}',$,'Qto_WallBaseQuantities',$,$,(#81));
76
+ #81= IFCQUANTITYLENGTH('Length',$,$,${qtyValue});
77
+ #82= IFCRELDEFINESBYPROPERTIES('${guid('RELQ')}',$,$,$,(#70),#80);
78
+ #83= IFCPROPERTYSET('${guid('PSET')}',$,'Pset_X',$,(#84));
79
+ #84= IFCPROPERTYSINGLEVALUE('Width',$,IFCLENGTHMEASURE(${widthValue}),$);
80
+ #85= IFCRELDEFINESBYPROPERTIES('${guid('RELP')}',$,$,$,(#70),#83);
81
+ #96= IFCRELCONTAINEDINSPATIALSTRUCTURE('${guid('RELC')}',$,$,$,(#70),#41);
82
+ ENDSEC;
83
+ END-ISO-10303-21;
84
+ `;
85
+ }
86
+ /** `unitScaledCombinedModel`, declared in whole metres: quantity 4.0 m, width 2.5 m. */
87
+ export const UNIT_SCALE_COMBINED_METRE_MODEL = unitScaledCombinedModel('#31= IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.);', '4.0', '2.5');
88
+ /** Same wall, same physical quantity and width, re-authored in millimetres. */
89
+ export const UNIT_SCALE_COMBINED_MILLIMETRE_MODEL = unitScaledCombinedModel('#31= IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.);', '4000.', '2500.');
90
+ /** Millimetre re-export, but ONLY the quantity genuinely changed (4.0 m -> 5.0 m). */
91
+ export const UNIT_SCALE_COMBINED_QUANTITY_EDITED_MODEL = unitScaledCombinedModel('#31= IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.);', '5000.', '2500.');
92
+ /** Millimetre re-export, but ONLY the property genuinely changed (2.5 m -> 3.0 m). */
93
+ export const UNIT_SCALE_COMBINED_PROPERTY_EDITED_MODEL = unitScaledCombinedModel('#31= IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.);', '4000.', '3000.');
94
+ //# sourceMappingURL=diff-unit-scale-fixtures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff-unit-scale-fixtures.js","sourceRoot":"","sources":["../../src/commands/diff-unit-scale-fixtures.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,UAAkB;IACzE,OAAO;;;;;;;kBAOS,IAAI,CAAC,MAAM,CAAC;;;;;EAK5B,OAAO;;0BAEiB,IAAI,CAAC,MAAM,CAAC;gBACtB,IAAI,CAAC,MAAM,CAAC;uBACL,IAAI,CAAC,MAAM,CAAC;yDACsB,UAAU;kCACjC,IAAI,CAAC,MAAM,CAAC;0CACJ,IAAI,CAAC,MAAM,CAAC;;;CAGrD,CAAC;AACF,CAAC;AAED,2DAA2D;AAC3D,MAAM,CAAC,MAAM,sBAAsB,GAAG,uBAAuB,CAC3D,2CAA2C,EAC3C,KAAK,CACN,CAAC;AACF,oFAAoF;AACpF,MAAM,CAAC,MAAM,2BAA2B,GAAG,uBAAuB,CAChE,iDAAiD,EACjD,OAAO,CACR,CAAC;AACF,iFAAiF;AACjF,MAAM,CAAC,MAAM,kCAAkC,GAAG,uBAAuB,CACvE,iDAAiD,EACjD,OAAO,CACR,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,QAAgB,EAAE,UAAkB;IAC3F,OAAO;;;;;;;kBAOS,IAAI,CAAC,MAAM,CAAC;;;;;EAK5B,OAAO;;0BAEiB,IAAI,CAAC,MAAM,CAAC;gBACtB,IAAI,CAAC,MAAM,CAAC;2BACD,IAAI,CAAC,MAAM,CAAC;sCACD,QAAQ;kCACZ,IAAI,CAAC,MAAM,CAAC;uBACvB,IAAI,CAAC,MAAM,CAAC;yDACsB,UAAU;kCACjC,IAAI,CAAC,MAAM,CAAC;0CACJ,IAAI,CAAC,MAAM,CAAC;;;CAGrD,CAAC;AACF,CAAC;AAED,wFAAwF;AACxF,MAAM,CAAC,MAAM,+BAA+B,GAAG,uBAAuB,CACpE,2CAA2C,EAC3C,KAAK,EACL,KAAK,CACN,CAAC;AACF,+EAA+E;AAC/E,MAAM,CAAC,MAAM,oCAAoC,GAAG,uBAAuB,CACzE,iDAAiD,EACjD,OAAO,EACP,OAAO,CACR,CAAC;AACF,sFAAsF;AACtF,MAAM,CAAC,MAAM,yCAAyC,GAAG,uBAAuB,CAC9E,iDAAiD,EACjD,OAAO,EACP,OAAO,CACR,CAAC;AACF,sFAAsF;AACtF,MAAM,CAAC,MAAM,yCAAyC,GAAG,uBAAuB,CAC9E,iDAAiD,EACjD,OAAO,EACP,OAAO,CACR,CAAC"}
@@ -1,2 +1,13 @@
1
+ /**
2
+ * B5: Resolve a column value from an entity, searching entity attributes,
3
+ * property sets, AND quantity sets (by bare quantity name or QsetName.QuantityName).
4
+ */
5
+ /**
6
+ * Resolve a column value from an entity, returning the raw value
7
+ * (number, boolean, string, or null) to preserve types in JSON output.
8
+ */
9
+ export declare function resolveColumnValue(entity: any, col: string, bim: any): unknown;
10
+ /** Stringify a column value for CSV output */
11
+ export declare function columnValueToCsv(value: unknown): string;
1
12
  export declare function exportCommand(args: string[]): Promise<void>;
2
13
  //# sourceMappingURL=export.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"AAoKA,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+QjE"}
1
+ {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"AAgEA;;;GAGG;AACH;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CA2C9E;AAED,8CAA8C;AAC9C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAGvD;AAsCD,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+QjE"}
@@ -12,6 +12,7 @@ import { writeFile, readFile } from 'node:fs/promises';
12
12
  import { basename } from 'node:path';
13
13
  import { GeometryProcessor, isNoRenderGeometryError } from '@ifc-lite/geometry';
14
14
  import { countGlbMeshes, escapeCsvCell } from '@ifc-lite/export';
15
+ import { findPropertyInSets, findQuantityInSets } from '@ifc-lite/query';
15
16
  import { createHeadlessContext } from '../loader.js';
16
17
  import { getFlag, hasFlag, fatal, writeOutput, validateLimit } from '../output.js';
17
18
  import { logger } from '../logger.js';
@@ -59,7 +60,7 @@ function normalizeTypeName(typeStr) {
59
60
  * Resolve a column value from an entity, returning the raw value
60
61
  * (number, boolean, string, or null) to preserve types in JSON output.
61
62
  */
62
- function resolveColumnValue(entity, col, bim) {
63
+ export function resolveColumnValue(entity, col, bim) {
63
64
  // Native entity attributes
64
65
  if (col === 'Name' || col === 'name')
65
66
  return entity.name ?? null;
@@ -78,20 +79,14 @@ function resolveColumnValue(entity, col, bim) {
78
79
  const valueName = col.slice(dotIdx + 1);
79
80
  // Search property sets
80
81
  const props = bim.properties(entity.ref);
81
- const pset = props.find((p) => p.name === setName);
82
- if (pset) {
83
- const prop = pset.properties.find((p) => p.name === valueName);
84
- if (prop?.value != null)
85
- return prop.value;
86
- }
82
+ const prop = findPropertyInSets(props, setName, valueName);
83
+ if (prop?.value != null)
84
+ return prop.value;
87
85
  // Search quantity sets
88
86
  const qsets = bim.quantities(entity.ref);
89
- const qset = qsets.find((q) => q.name === setName);
90
- if (qset) {
91
- const qty = qset.quantities.find((q) => q.name === valueName);
92
- if (qty?.value != null)
93
- return qty.value;
94
- }
87
+ const qty = findQuantityInSets(qsets, setName, valueName);
88
+ if (qty?.value != null)
89
+ return qty.value;
95
90
  return null;
96
91
  }
97
92
  // B5: Bare quantity name (e.g., "GrossSideArea") — search all quantity sets
@@ -113,7 +108,7 @@ function resolveColumnValue(entity, col, bim) {
113
108
  return null;
114
109
  }
115
110
  /** Stringify a column value for CSV output */
116
- function columnValueToCsv(value) {
111
+ export function columnValueToCsv(value) {
117
112
  if (value == null)
118
113
  return '';
119
114
  return String(value);
@@ -1 +1 @@
1
- {"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;;;GAMG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAIlF;;GAEG;AACH,SAAS,gBAAgB,CAAC,MAAc;IACtC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QAChB,KAAK,CAAC,4BAA4B,MAAM,wCAAwC,CAAC,CAAC;IACpF,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEtC,KAAK,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;QACxD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC;YAC5C,MAAM,QAAQ,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,OAAe;IACxC,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QAChC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACxF,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,GAAG,OAAO,CAAC;QACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,OAAO,QAAQ,QAAQ,KAAK,CAAC,CAAC;QACjF,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED;;;GAGG;AACH;;;GAGG;AACH,SAAS,kBAAkB,CAAC,MAAW,EAAE,GAAW,EAAE,GAAQ;IAC5D,2BAA2B;IAC3B,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC;IACjE,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC;IACjE,IAAI,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,UAAU;QAAE,OAAO,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC;IAC7E,IAAI,GAAG,KAAK,aAAa,IAAI,GAAG,KAAK,aAAa;QAAE,OAAO,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC;IACtF,IAAI,GAAG,KAAK,YAAY,IAAI,GAAG,KAAK,YAAY;QAAE,OAAO,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC;IAEnF,4DAA4D;IAC5D,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACrC,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAExC,uBAAuB;QACvB,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;QACxD,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;YACpE,IAAI,IAAI,EAAE,KAAK,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC,KAAK,CAAC;QAC7C,CAAC;QAED,uBAAuB;QACvB,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;QACxD,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;YACnE,IAAI,GAAG,EAAE,KAAK,IAAI,IAAI;gBAAE,OAAO,GAAG,CAAC,KAAK,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4EAA4E;IAC5E,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAChC,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI;gBAAE,OAAO,CAAC,CAAC,KAAK,CAAC;QACxD,CAAC;IACH,CAAC;IAED,uDAAuD;IACvD,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAChC,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI;gBAAE,OAAO,CAAC,CAAC,KAAK,CAAC;QACxD,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8CAA8C;AAC9C,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IAC7B,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,iBAAiB,CAC9B,KAAmB,EACnB,QAAgB;IAEhB,IAAI,KAAiB,CAAC;IACtB,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;QAChC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrC,KAAK,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,EAAE,GAAG,IAAI,iBAAiB,EAAE,CAAC;IACnC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;IAChB,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AACvB,CAAC;AAED;;;;;GAKG;AACH,SAAS,SAAS,CAAC,KAAa,EAAE,GAAW;IAC3C,OAAO,aAAa,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAc;IAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,KAAK,CAAC;IAClD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACnC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,GAAG,CAAC;IACtD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5C,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC/C,6EAA6E;IAC7E,gFAAgF;IAChF,2EAA2E;IAC3E,8EAA8E;IAC9E,2EAA2E;IAC3E,MAAM,gBAAgB,GACpB,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,QAAQ,CAAC;IACtF,MAAM,eAAe,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,UAAU,IAAI,YAAY,IAAI,KAAK,CAAC,CAAC;IAExE,IAAI,CAAC,QAAQ;QAAE,KAAK,CAAC,mOAAmO,CAAC,CAAC;IAE1P,yBAAyB;IACzB,IAAI,IAAI,EAAE,CAAC;QACT,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,MAAM,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAE7D,oFAAoF;IACpF,4CAA4C;IAC5C,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;IACpB,IAAI,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9B,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,UAAU,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC5C,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAwB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/F,CAAC;IACD,0EAA0E;IAC1E,IAAI,QAAQ,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IAE3B,0FAA0F;IAC1F,IAAI,YAAY,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAC5C,CAAC,CAAC,IAAI,KAAK,YAAY;YACvB,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;YACzD,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,YAAY,CACzC,CAAC;QACF,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzE,KAAK,CAAC,WAAW,YAAY,2BAA2B,KAAK,IAAI,QAAQ,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QACtE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,0EAA0E;IAC1E,2EAA2E;IAC3E,2EAA2E;IAC3E,wDAAwD;IACxD,EAAE;IACF,6EAA6E;IAC7E,yEAAyE;IACzE,4EAA4E;IAC5E,uEAAuE;IACvE,2EAA2E;IAC3E,wDAAwD;IACxD,MAAM,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACxE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAE7C,MAAM,OAAO,GAAG,UAAU;QACxB,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC;QACvB,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;IAE9D,8EAA8E;IAC9E,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;IAClJ,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAElE,gFAAgF;IAChF,8EAA8E;IAC9E,2EAA2E;IAC3E,IAAI,eAAe,IAAI,gBAAgB,EAAE,CAAC;QACxC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yDAAyD,MAAM,CAAC,WAAW,EAAE,gCAAgC,CAAC,CAAC;IACtI,CAAC;IAED,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,IAAI,gBAAgB,EAAE,CAAC;gBACrB,gEAAgE;gBAChE,MAAM,IAAI,GAAe,CAAC,OAAO,CAAC,CAAC;gBACnC,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;oBAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxF,CAAC;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChG,MAAM,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;gBACzD,MAAM,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAClC,CAAC;YACD,MAAM;QACR,CAAC;QACD,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,IAAI,gBAAgB,EAAE,CAAC;gBACrB,wFAAwF;gBACxF,MAAM,MAAM,GAA8B,EAAE,CAAC;gBAC7C,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;oBAC9B,MAAM,GAAG,GAA4B,EAAE,CAAC;oBACxC,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;wBAC1B,GAAG,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;oBAClD,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACnB,CAAC;gBACD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAChD,MAAM,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC9C,MAAM,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACtC,CAAC;YACD,MAAM;QACR,CAAC;QACD,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,UAAU,CAA6C,CAAC;YACrF,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACjD,IAAI,CAAC,OAAO;gBAAE,KAAK,CAAC,kCAAkC,CAAC,CAAC;YACxD,MAAM,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,IAAI,CAAC,CAAC;YAChD,MAAM;QACR,CAAC;QACD,6EAA6E;QAC7E,8EAA8E;QAC9E,2EAA2E;QAC3E,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK,CAAC;QACX,KAAK,QAAQ,CAAC;QACd,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,kFAAkF;YAClF,uFAAuF;YACvF,MAAM,YAAY,GAAG,CAAC,gBAAgB,IAAI,eAAe,CAAC;YAC1D,MAAM,QAAQ,GAAG,YAAY;gBAC3B,CAAC,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBACpD,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;YACtB,+EAA+E;YAC/E,+EAA+E;YAC/E,8DAA8D;YAC9D,IAAI,YAAY,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1C,KAAK,CAAC,uFAAuF,CAAC,CAAC;YACjG,CAAC;YACD,iEAAiE;YACjE,iEAAiE;YACjE,kEAAkE;YAClE,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YAC/C,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAChC,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,MAAM,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC/D,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC3F,CAAC;YACD,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;oBACtB,MAAM,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;oBACjC,IAAI,GAAG,IAAI,IAAI;wBAAE,KAAK,CAAC,wDAAwD,CAAC,CAAC;oBACjF,MAAM,WAAW,CAAC,GAAiB,EAAE,OAAO,CAAC,CAAC;gBAChD,CAAC;qBAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;oBAC5B,wEAAwE;oBACxE,MAAM,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;oBAChC,IAAI,GAAG,IAAI,IAAI;wBAAE,KAAK,CAAC,uDAAuD,CAAC,CAAC;oBAChF,MAAM,WAAW,CAAC,GAAiB,EAAE,OAAO,CAAC,CAAC;gBAChD,CAAC;qBAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC7B,4EAA4E;oBAC5E,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC;oBAC/C,MAAM,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;oBACnD,IAAI,GAAG,IAAI,IAAI;wBAAE,KAAK,CAAC,wDAAwD,CAAC,CAAC;oBACjF,MAAM,WAAW,CAAC,GAAiB,EAAE,OAAO,CAAC,CAAC;gBAChD,CAAC;qBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;oBAC/B,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;oBACrE,IAAI,GAAG,IAAI,IAAI;wBAAE,KAAK,CAAC,2DAA2D,CAAC,CAAC;oBACpF,MAAM,WAAW,CAAC,GAAiB,EAAE,OAAO,CAAC,CAAC;gBAChD,CAAC;qBAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;oBAC5B,MAAM,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,WAAW,EAAE,EAAE,QAAQ,CAAC,CAAC;oBACnE,IAAI,GAAG,IAAI,IAAI;wBAAE,KAAK,CAAC,uDAAuD,CAAC,CAAC;oBAChF,MAAM,WAAW,CAAC,GAAiB,EAAE,OAAO,CAAC,CAAC;gBAChD,CAAC;qBAAM,CAAC;oBACN,0BAA0B;oBAC1B,IAAI,CAAC,OAAO;wBAAE,KAAK,CAAC,uDAAuD,CAAC,CAAC;oBAC7E,IAAI,GAAsB,CAAC;oBAC3B,IAAI,CAAC;wBACH,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,WAAW,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;oBACpE,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,mEAAmE;wBACnE,iDAAiD;wBACjD,IAAI,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC;4BACjC,KAAK,CACH,YAAY;gCACV,CAAC,CAAC,gIAAgI;gCAClI,CAAC,CAAC,6GAA6G,CAClH,CAAC;wBACJ,CAAC;wBACD,MAAM,GAAG,CAAC;oBACZ,CAAC;oBACD,IAAI,GAAG,IAAI,IAAI;wBAAE,KAAK,CAAC,uDAAuD,CAAC,CAAC;oBAChF,sEAAsE;oBACtE,yDAAyD;oBACzD,IAAI,cAAc,CAAC,GAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC5C,KAAK,CACH,YAAY;4BACV,CAAC,CAAC,gIAAgI;4BAClI,CAAC,CAAC,6GAA6G,CAClH,CAAC;oBACJ,CAAC;oBACD,MAAM,CAAC,KAAK,CAAC,eAAe,cAAc,CAAC,GAAiB,CAAC,EAAE,CAAC,CAAC;oBACjE,MAAM,SAAS,CAAC,OAAO,EAAE,GAAiB,CAAC,CAAC;oBAC5C,MAAM,CAAC,IAAI,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC;gBACvC,CAAC;gBACD,IAAI,WAAW,EAAE,CAAC;oBAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,YAAY,MAAM,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAC1E,CAAC;gBACJ,CAAC;gBACD,oEAAoE;gBACpE,uEAAuE;gBACvE,uEAAuE;gBACvE,iEAAiE;gBACjE,IAAI,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC;oBACjE,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;wBACtB,MAAM,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;oBACzE,CAAC;yBAAM,CAAC;wBACN,mEAAmE;wBACnE,2CAA2C;wBAC3C,IAAI,CAAC;4BACH,MAAM,IAAI,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;4BACxC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;wBACvE,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,MAAM,CAAC,IAAI,CACT,gCAAgC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACnF,CAAC;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,EAAE,CAAC,OAAO,EAAE,CAAC;YACf,CAAC;YACD,MAAM;QACR,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,gFAAgF;YAChF,4EAA4E;YAC5E,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;YAChG,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;YACjD,MAAM,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,8EAA8E;YAC9E,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;YAChG,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;YACjD,MAAM,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,CAAC;QACD;YACE,KAAK,CAAC,mBAAmB,MAAM,sFAAsF,CAAC,CAAC;IAC3H,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../../src/commands/merge.ts"],"names":[],"mappings":"AA2BA,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAyGhE"}
1
+ {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../../src/commands/merge.ts"],"names":[],"mappings":"AA2BA,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAkHhE"}
@@ -58,6 +58,9 @@ export async function mergeCommand(args) {
58
58
  if (mergeStoreysFlag !== undefined && !STOREY_MODES.includes(mergeStoreysFlag)) {
59
59
  fatal(`--merge-storeys must be one of: ${STOREY_MODES.join(', ')}`);
60
60
  }
61
+ // Leave out spatial containers the merge finds holding nothing — the step of
62
+ // the "Merge Projects" recipe the matching flags above do not cover (#3643).
63
+ const dropEmptyContainers = hasFlag(args, '--drop-empty-containers');
61
64
  // Collect all positional args as input files
62
65
  const files = [];
63
66
  for (let i = 0; i < args.length; i++) {
@@ -91,6 +94,7 @@ export async function mergeCommand(args) {
91
94
  mergeSites: mergeSitesFlag,
92
95
  mergeBuildings: mergeBuildingsFlag,
93
96
  mergeStoreys: mergeStoreysFlag,
97
+ dropEmptyContainers,
94
98
  });
95
99
  await writeFile(outPath, result.content, 'utf-8');
96
100
  if (jsonOutput) {
@@ -101,6 +105,7 @@ export async function mergeCommand(args) {
101
105
  fileSize: result.stats.fileSize,
102
106
  federatedModelCount: result.stats.federatedModelCount,
103
107
  normalizedModelCount: result.stats.normalizedModelCount,
108
+ droppedContainerCount: result.stats.droppedContainerCount,
104
109
  warnings: result.stats.warnings,
105
110
  });
106
111
  }
@@ -109,6 +114,9 @@ export async function mergeCommand(args) {
109
114
  if (result.stats.normalizedModelCount > 0) {
110
115
  process.stderr.write(`Normalized ${result.stats.normalizedModelCount} model(s) into the first file's unit\n`);
111
116
  }
117
+ if (result.stats.droppedContainerCount > 0) {
118
+ process.stderr.write(`Dropped ${result.stats.droppedContainerCount} empty spatial container(s)\n`);
119
+ }
112
120
  for (const warning of result.stats.warnings) {
113
121
  process.stderr.write(`Warning: ${warning}\n`);
114
122
  }
@@ -1 +1 @@
1
- {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/commands/merge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/commands/merge.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAElE,MAAM,yBAAyB,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,eAAe,CAAU,CAAC;AAGlF,MAAM,oBAAoB,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAU,CAAC;AAG5D,MAAM,YAAY,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,wBAAwB,CAAU,CAAC;AAGpF,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAc;IAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvC,IAAI,CAAC,OAAO;QAAE,KAAK,CAAC,4EAA4E,CAAC,CAAC;IAElG,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,UAAU,CAA6C,CAAC;IACrF,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAE3C,2EAA2E;IAC3E,6EAA6E;IAC7E,+EAA+E;IAC/E,wCAAwC;IACxC,MAAM,kBAAkB,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,uBAAuB,CAAC,IAAI,MAAM,CAAuB,CAAC;IACpG,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC5D,KAAK,CAAC,yCAAyC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,sEAAsE;IACtE,6EAA6E;IAC7E,sEAAsE;IACtE,0EAA0E;IAC1E,2EAA2E;IAC3E,yEAAyE;IACzE,mCAAmC;IACnC,IAAI,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,KAAK,SAAS,EAAE,CAAC;QACnF,KAAK,CAAC,0CAA0C,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrF,CAAC;IACD,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,EAAE,eAAe,CAAkC,CAAC;IACvF,IAAI,cAAc,KAAK,SAAS,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QACnF,KAAK,CAAC,iCAAiC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,mBAAmB,CAAC,KAAK,SAAS,EAAE,CAAC;QAC3F,KAAK,CAAC,8CAA8C,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzF,CAAC;IACD,MAAM,kBAAkB,GAAG,OAAO,CAAC,IAAI,EAAE,mBAAmB,CAAkC,CAAC;IAC/F,IAAI,kBAAkB,KAAK,SAAS,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC3F,KAAK,CAAC,qCAAqC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,iBAAiB,CAAC,KAAK,SAAS,EAAE,CAAC;QACvF,KAAK,CAAC,4CAA4C,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,EAAE,iBAAiB,CAA2B,CAAC;IACpF,IAAI,gBAAgB,KAAK,SAAS,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC/E,KAAK,CAAC,mCAAmC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,6EAA6E;IAC7E,6EAA6E;IAC7E,MAAM,mBAAmB,GAAG,OAAO,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC;IAErE,6CAA6C;IAC7C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,IACE,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,uBAAuB;gBACpF,IAAI,CAAC,CAAC,CAAC,KAAK,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,mBAAmB,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,iBAAiB;gBAC/F,CAAC,EAAE,CAAC,CAAC,aAAa;YACpB,SAAS;QACX,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAE3E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,KAAK,CAAC,MAAM,aAAa,CAAC,CAAC;IAE3D,MAAM,MAAM,GAAG,EAAE,CAAC;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,IAAI,CAAC;YACV,EAAE,EAAE,SAAS,CAAC,EAAE;YAChB,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACxB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,WAAW,cAAc,CAAC,CAAC;IACjF,CAAC;IAED,6DAA6D;IAC7D,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC7B,MAAM,EAAE,CAAC,MAAM,IAAI,MAAM,CAA0C;QACnE,kBAAkB;QAClB,UAAU,EAAE,cAAc;QAC1B,cAAc,EAAE,kBAAkB;QAClC,YAAY,EAAE,gBAAgB;QAC9B,mBAAmB;KACpB,CAAC,CAAC;IAEH,MAAM,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAElD,IAAI,UAAU,EAAE,CAAC;QACf,SAAS,CAAC;YACR,IAAI,EAAE,OAAO;YACb,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;YACnC,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB;YAC/C,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;YAC/B,mBAAmB,EAAE,MAAM,CAAC,KAAK,CAAC,mBAAmB;YACrD,oBAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,oBAAoB;YACvD,qBAAqB,EAAE,MAAM,CAAC,KAAK,CAAC,qBAAqB;YACzD,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;SAChC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,MAAM,CAAC,KAAK,CAAC,UAAU,aAAa,OAAO,KAAK,MAAM,CAAC,KAAK,CAAC,gBAAgB,cAAc,CAAC,CAAC;QAC5H,IAAI,MAAM,CAAC,KAAK,CAAC,oBAAoB,GAAG,CAAC,EAAE,CAAC;YAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,MAAM,CAAC,KAAK,CAAC,oBAAoB,wCAAwC,CAAC,CAAC;QAChH,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,CAAC,qBAAqB,GAAG,CAAC,EAAE,CAAC;YAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,MAAM,CAAC,KAAK,CAAC,qBAAqB,+BAA+B,CAAC,CAAC;QACrG,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,OAAO,IAAI,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,7 +1,3 @@
1
- /**
2
- * Aggregation utilities for query command — quantity lookup, sorting,
3
- * and standard QTO maps.
4
- */
5
1
  /**
6
2
  * Standard IFC quantity set definitions — maps entity type to its standard Qto_ sets
7
3
  * and the quantities within each set. Used for disambiguation warnings.
@@ -11,6 +7,33 @@ export declare const STANDARD_QTO_MAP: Record<string, Record<string, string[]>>;
11
7
  * Helper: get a quantity value for an entity by name (searching all qsets).
12
8
  */
13
9
  export declare function getQuantityValue(bim: any, ref: any, quantityName: string): number | null;
10
+ /** The numeric reductions `query --group-by`'s aggregation mode and `schedule --subtotals` share. */
11
+ export type NumericAggMode = 'sum' | 'avg' | 'min' | 'max';
12
+ /**
13
+ * Reduce a list of numbers to a single sum/avg/min/max, skipping every
14
+ * non-finite entry (`Infinity`, `-Infinity`, `NaN`) so one poisoned value can
15
+ * neither dominate a min/max nor turn a sum into `NaN`. Returns `null` when no
16
+ * finite value was seen (an empty list, or one that is all non-finite), which
17
+ * the caller renders as a blank cell / `null` rather than a fabricated `0`.
18
+ *
19
+ * This is the single numeric core `query --group-by`'s aggregation mode
20
+ * (`outputGroupBy` in `query-output.ts`) and `schedule --subtotals`
21
+ * (`schedule-aggregate.ts`) share, so the two cannot drift from each other.
22
+ *
23
+ * It is NOT what protects the flat, ungrouped `query --sum/--avg/--min/--max`
24
+ * (`outputSum`/`outputAggregation`) from a poisoned value — those read
25
+ * straight from `getQuantityValue`, which already substitutes `0` for a
26
+ * non-finite value at the source, before this function (or its caller) ever
27
+ * sees it. `outputGroupBy` calls `getQuantityValue` too, so by the time its
28
+ * values reach `aggregateFinite` here they have ALREADY been zeroed, not
29
+ * dropped. `schedule-aggregate.ts`'s `computeValues` pre-filters the same
30
+ * way with its own `cellToNumber` (also `Number.isFinite`-guarded) before
31
+ * ever building the array passed in here. In both of today's call sites
32
+ * this function's own `!Number.isFinite(v)` guard is consequently
33
+ * unreachable in practice — a defence in depth, exercised directly by this
34
+ * function's own unit tests, not currently by either caller's inputs.
35
+ */
36
+ export declare function aggregateFinite(values: number[], mode: NumericAggMode): number | null;
14
37
  /**
15
38
  * F7: Sort entities by quantity, attribute, or property value.
16
39
  * Supports: quantity names, entity attributes (name/type/globalId), PsetName.PropName
@@ -1 +1 @@
1
- {"version":3,"file":"query-aggregation.d.ts","sourceRoot":"","sources":["../../src/commands/query-aggregation.ts"],"names":[],"mappings":"AAIA;;;GAGG;AAEH;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CA2CrE,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQxF;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,EAAE,CA8ClG"}
1
+ {"version":3,"file":"query-aggregation.d.ts","sourceRoot":"","sources":["../../src/commands/query-aggregation.ts"],"names":[],"mappings":"AAWA;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CA2CrE,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAmBxF;AAED,qGAAqG;AACrG,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAE3D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CAuBrF;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,EAAE,CA4ClG"}
@@ -5,6 +5,7 @@
5
5
  * Aggregation utilities for query command — quantity lookup, sorting,
6
6
  * and standard QTO maps.
7
7
  */
8
+ import { findPropertyInSets, findQuantityInSets } from '@ifc-lite/query';
8
9
  /**
9
10
  * Standard IFC quantity set definitions — maps entity type to its standard Qto_ sets
10
11
  * and the quantities within each set. Used for disambiguation warnings.
@@ -60,12 +61,74 @@ export function getQuantityValue(bim, ref, quantityName) {
60
61
  const qsets = bim.quantities(ref);
61
62
  for (const qset of qsets) {
62
63
  for (const q of qset.quantities) {
63
- if (q.name === quantityName)
64
- return Number(q.value) || 0;
64
+ if (q.name === quantityName) {
65
+ // `Number(x) || 0` only catches NaN (an unparseable value): an
66
+ // extreme STEP REAL literal (e.g. 1.0E400) parses to Infinity
67
+ // without erroring at the decode boundary, and `Number(Infinity) ||
68
+ // 0` stays Infinity because Infinity is truthy. Left uncaught, that
69
+ // one entity poisons every downstream sum/avg/min/max over the
70
+ // whole result set. Number.isFinite catches NaN and both infinities
71
+ // alike, so a present-but-non-finite value is treated the same as
72
+ // the existing present-but-unparseable case: substituted with 0.
73
+ const n = Number(q.value);
74
+ return Number.isFinite(n) ? n : 0;
75
+ }
65
76
  }
66
77
  }
67
78
  return null;
68
79
  }
80
+ /**
81
+ * Reduce a list of numbers to a single sum/avg/min/max, skipping every
82
+ * non-finite entry (`Infinity`, `-Infinity`, `NaN`) so one poisoned value can
83
+ * neither dominate a min/max nor turn a sum into `NaN`. Returns `null` when no
84
+ * finite value was seen (an empty list, or one that is all non-finite), which
85
+ * the caller renders as a blank cell / `null` rather than a fabricated `0`.
86
+ *
87
+ * This is the single numeric core `query --group-by`'s aggregation mode
88
+ * (`outputGroupBy` in `query-output.ts`) and `schedule --subtotals`
89
+ * (`schedule-aggregate.ts`) share, so the two cannot drift from each other.
90
+ *
91
+ * It is NOT what protects the flat, ungrouped `query --sum/--avg/--min/--max`
92
+ * (`outputSum`/`outputAggregation`) from a poisoned value — those read
93
+ * straight from `getQuantityValue`, which already substitutes `0` for a
94
+ * non-finite value at the source, before this function (or its caller) ever
95
+ * sees it. `outputGroupBy` calls `getQuantityValue` too, so by the time its
96
+ * values reach `aggregateFinite` here they have ALREADY been zeroed, not
97
+ * dropped. `schedule-aggregate.ts`'s `computeValues` pre-filters the same
98
+ * way with its own `cellToNumber` (also `Number.isFinite`-guarded) before
99
+ * ever building the array passed in here. In both of today's call sites
100
+ * this function's own `!Number.isFinite(v)` guard is consequently
101
+ * unreachable in practice — a defence in depth, exercised directly by this
102
+ * function's own unit tests, not currently by either caller's inputs.
103
+ */
104
+ export function aggregateFinite(values, mode) {
105
+ let sum = 0;
106
+ let count = 0;
107
+ let min = Infinity;
108
+ let max = -Infinity;
109
+ for (const v of values) {
110
+ if (!Number.isFinite(v))
111
+ continue;
112
+ sum += v;
113
+ count++;
114
+ if (v < min)
115
+ min = v;
116
+ if (v > max)
117
+ max = v;
118
+ }
119
+ if (count === 0)
120
+ return null;
121
+ switch (mode) {
122
+ case 'sum':
123
+ return sum;
124
+ case 'avg':
125
+ return sum / count;
126
+ case 'min':
127
+ return min;
128
+ case 'max':
129
+ return max;
130
+ }
131
+ }
69
132
  /**
70
133
  * F7: Sort entities by quantity, attribute, or property value.
71
134
  * Supports: quantity names, entity attributes (name/type/globalId), PsetName.PropName
@@ -92,14 +155,12 @@ export function sortEntities(entities, sortBy, descending, bim) {
92
155
  const [psetName, propName] = sortBy.split('.', 2);
93
156
  const getVal = (e) => {
94
157
  const props = bim.properties(e.ref);
95
- const pset = props.find((p) => p.name === psetName);
96
- const prop = pset?.properties?.find((p) => p.name === propName);
158
+ const prop = findPropertyInSets(props, psetName, propName);
97
159
  if (prop?.value != null)
98
160
  return prop.value;
99
161
  // Also check quantity sets
100
162
  const qsets = bim.quantities(e.ref);
101
- const qset = qsets.find((q) => q.name === psetName);
102
- const qty = qset?.quantities?.find((q) => q.name === propName);
163
+ const qty = findQuantityInSets(qsets, psetName, propName);
103
164
  return qty?.value ?? null;
104
165
  };
105
166
  valA = getVal(a);
@@ -1 +1 @@
1
- {"version":3,"file":"query-aggregation.js","sourceRoot":"","sources":["../../src/commands/query-aggregation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-aggregation.js","sourceRoot":"","sources":["../../src/commands/query-aggregation.ts"],"names":[],"mappings":"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"}
@@ -7,5 +7,12 @@ export declare function outputSum(entities: any[], quantityName: string, bim: an
7
7
  */
8
8
  export declare function outputAggregation(entities: any[], quantityName: string, mode: 'avg' | 'min' | 'max', bim: any, jsonOutput: boolean): void;
9
9
  export declare function outputGroupBy(entities: any[], groupByKey: string, sumQuantity: string | undefined, bim: any, jsonOutput: boolean, groupLimit?: number, aggMode?: 'sum' | 'avg' | 'min' | 'max'): void;
10
+ /**
11
+ * B6/F8: `--unique` distinct-value counts for `material`, `storey`, `type`,
12
+ * or a `PsetName.PropName` path. Pulled out of `queryCommand` so the
13
+ * blank/whitespace-name handling (`firstNonBlank`) is unit-testable without
14
+ * a fixture model.
15
+ */
16
+ export declare function computeUniqueValues(entities: any[], uniqueProp: string, bim: any): Map<string, number>;
10
17
  export declare function outputEntities(entities: any[], args: string[], bim: any, jsonOutput: boolean): void;
11
18
  //# sourceMappingURL=query-output.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-output.d.ts","sourceRoot":"","sources":["../../src/commands/query-output.ts"],"names":[],"mappings":"AAYA,mCAAmC;AACnC,eAAO,MAAM,mBAAmB,UAAiC,CAAC;AAElE,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAMpE;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAgGpG;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAwDzI;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,CAqGrM;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAyCnG"}
1
+ {"version":3,"file":"query-output.d.ts","sourceRoot":"","sources":["../../src/commands/query-output.ts"],"names":[],"mappings":"AAaA,mCAAmC;AACnC,eAAO,MAAM,mBAAmB,UAAiC,CAAC;AAElE,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAMpE;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAqGpG;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAwDzI;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,CA4FrM;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAoCtG;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAyCnG"}