@ifc-lite/cli 0.28.0 → 0.29.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +9 -2
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/bcf.js +1 -1
- package/dist/commands/bcf.js.map +1 -1
- package/dist/commands/diff-test-helpers.d.ts +7 -4
- package/dist/commands/diff-test-helpers.d.ts.map +1 -1
- package/dist/commands/diff-test-helpers.js +7 -4
- package/dist/commands/diff-test-helpers.js.map +1 -1
- package/dist/commands/export-rust-formats.d.ts +11 -0
- package/dist/commands/export-rust-formats.d.ts.map +1 -0
- package/dist/commands/export-rust-formats.js +185 -0
- package/dist/commands/export-rust-formats.js.map +1 -0
- package/dist/commands/export.d.ts +9 -0
- package/dist/commands/export.d.ts.map +1 -1
- package/dist/commands/export.js +36 -148
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/extract-entities.d.ts +23 -18
- package/dist/commands/extract-entities.d.ts.map +1 -1
- package/dist/commands/extract-entities.js +86 -133
- package/dist/commands/extract-entities.js.map +1 -1
- package/dist/commands/info.d.ts.map +1 -1
- package/dist/commands/info.js +56 -0
- package/dist/commands/info.js.map +1 -1
- package/dist/commands/mutate-step-record.d.ts +33 -0
- package/dist/commands/mutate-step-record.d.ts.map +1 -0
- package/dist/commands/mutate-step-record.js +267 -0
- package/dist/commands/mutate-step-record.js.map +1 -0
- package/dist/commands/mutate.d.ts +2 -13
- package/dist/commands/mutate.d.ts.map +1 -1
- package/dist/commands/mutate.js +4 -105
- package/dist/commands/mutate.js.map +1 -1
- package/dist/commands/query-output.d.ts.map +1 -1
- package/dist/commands/query-output.js +33 -6
- package/dist/commands/query-output.js.map +1 -1
- package/dist/commands/spatial-ancestors.d.ts +26 -0
- package/dist/commands/spatial-ancestors.d.ts.map +1 -0
- package/dist/commands/spatial-ancestors.js +102 -0
- package/dist/commands/spatial-ancestors.js.map +1 -0
- package/dist/commands/step-args.d.ts +140 -0
- package/dist/commands/step-args.d.ts.map +1 -0
- package/dist/commands/step-args.js +333 -0
- package/dist/commands/step-args.js.map +1 -0
- package/dist/commands/storey-selection.d.ts +6 -0
- package/dist/commands/storey-selection.d.ts.map +1 -0
- package/dist/commands/storey-selection.js +90 -0
- package/dist/commands/storey-selection.js.map +1 -0
- package/dist/commands/subset-relations.d.ts +201 -0
- package/dist/commands/subset-relations.d.ts.map +1 -0
- package/dist/commands/subset-relations.js +277 -0
- package/dist/commands/subset-relations.js.map +1 -0
- package/dist/commands/where-filter.d.ts +1 -0
- package/dist/commands/where-filter.d.ts.map +1 -1
- package/dist/commands/where-filter.js +7 -3
- package/dist/commands/where-filter.js.map +1 -1
- package/dist/index.js +1 -1
- package/package.json +19 -19
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"AA0RA,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA2ElE"}
|
package/dist/commands/analyze.js
CHANGED
|
@@ -170,8 +170,15 @@ async function runRule(bim, viewerPort, rule) {
|
|
|
170
170
|
matched.push(entity);
|
|
171
171
|
}
|
|
172
172
|
const matchedIds = matched.map(e => e.ref.expressId);
|
|
173
|
-
// Push visualization — isolate BEFORE colorize so colors aren't wiped
|
|
174
|
-
|
|
173
|
+
// Push visualization — isolate BEFORE colorize so colors aren't wiped.
|
|
174
|
+
// Send whenever `--isolate` was requested, even when the rule matched
|
|
175
|
+
// nothing: `viewer-html.ts`'s `isolateEntities` handler fades every
|
|
176
|
+
// entity NOT in `ids` (empty `ids` fades everything), so an empty send
|
|
177
|
+
// correctly shows "this rule matched zero elements" as an empty
|
|
178
|
+
// viewport. Gating on `matchedIds.length > 0` used to skip the command
|
|
179
|
+
// entirely in that case, silently leaving whatever was on screen before
|
|
180
|
+
// instead of reflecting the zero-match result.
|
|
181
|
+
if (rule.isolate) {
|
|
175
182
|
await sendViewerCommand(viewerPort, {
|
|
176
183
|
action: 'isolateEntities',
|
|
177
184
|
ids: matchedIds,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAsBnG,MAAM,YAAY,GAAqD;IACrE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,KAAK,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACrB,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACpB,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACtB,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACtB,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1B,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACtB,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACnB,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACtB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;CACzB,CAAC;AAEF,SAAS,YAAY,CAAC,CAAqB;IACzC,IAAI,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,IAAI,YAAY,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAAE,OAAO,YAAY,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACxE,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5E,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,gBAAgB,CACvB,CAAS,EACT,OAAe;IAEf,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAChC,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,WAAW;YACd,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1B,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,gCAAgC;YAChC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;YACxB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;YACrB,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACxC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;YACxB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;gBAAC,CAAC,GAAG,CAAC,CAAC;gBAAC,CAAC,GAAG,CAAC,CAAC;YAAC,CAAC;iBACxB,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;gBAAC,CAAC,GAAG,CAAC,CAAC;gBAAC,CAAC,GAAG,CAAC,CAAC;YAAC,CAAC;iBAC9B,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;gBAAC,CAAC,GAAG,CAAC,CAAC;gBAAC,CAAC,GAAG,CAAC,CAAC;YAAC,CAAC;iBAC9B,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;gBAAC,CAAC,GAAG,CAAC,CAAC;gBAAC,CAAC,GAAG,CAAC,CAAC;YAAC,CAAC;YACnC,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAClC,CAAC;QACD,KAAK,UAAU,CAAC;QAChB;YACE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,GAAe,EACf,GAAc,EACd,QAAgB,EAChB,QAAgB;IAEhB,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACnC,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;oBAAE,OAAO,IAAI,CAAC,KAAK,CAAC;YAChD,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gBAAgB,CACvB,GAAe,EACf,GAAc,EACd,QAA4B,EAC5B,KAAa;IAEb,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;YAAE,SAAS;QACjD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAChC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK;gBAAE,OAAO,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QACjF,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CACtB,GAAe,EACf,GAAc,EACd,IAAY;IAEZ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,uCAAuC;QACvC,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,OAAO,GAAG,CAAC;QACxC,OAAO,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IACD,yCAAyC;IACzC,OAAO,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,aAAa,CACpB,GAAe,EACf,GAAc,EACd,WAAmB;IAEnB,4EAA4E;IAC5E,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACpE,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC;IACxC,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC;IAEpC,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QAChD,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YAC3B,CAAC,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,OAAO,GAAG,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,MAAM,IAAI,EAAE,KAAK,KAAK,CAAC;QAC7D,MAAM,YAAY,GAAG,QAAQ,KAAK,MAAM,CAAC;QACzC,QAAQ,EAAE,EAAE,CAAC;YACX,KAAK,GAAG,CAAC,CAAC,OAAO,OAAO,KAAK,YAAY,CAAC;YAC1C,KAAK,IAAI,CAAC,CAAC,OAAO,OAAO,KAAK,YAAY,CAAC;YAC3C,OAAO,CAAC,CAAC,OAAO,KAAK,CAAC;QACxB,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,WAAW,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5D,QAAQ,EAAE,EAAE,CAAC;QACX,KAAK,GAAG,CAAC,CAAC,OAAO,KAAK,GAAG,WAAW,CAAC;QACrC,KAAK,GAAG,CAAC,CAAC,OAAO,KAAK,GAAG,WAAW,CAAC;QACrC,KAAK,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI,WAAW,CAAC;QACvC,KAAK,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI,WAAW,CAAC;QACvC,KAAK,GAAG,CAAC,CAAC,OAAO,KAAK,KAAK,WAAW,CAAC;QACvC,KAAK,IAAI,CAAC,CAAC,OAAO,KAAK,KAAK,WAAW,CAAC;QACxC,OAAO,CAAC,CAAC,OAAO,KAAK,CAAC;IACxB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,IAAY,EAAE,GAA4B;IACzE,MAAM,KAAK,CAAC,oBAAoB,IAAI,cAAc,EAAE;QAClD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;KAC1B,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AACrB,CAAC;AAED,KAAK,UAAU,OAAO,CACpB,GAAe,EACf,UAAkB,EAClB,IAAiB;IAEjB,yCAAyC;IACzC,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IAC5D,MAAM,OAAO,GAAiB,EAAE,CAAC;IAEjC,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;QACjC,IAAI,MAAM,GAAG,IAAI,CAAC;QAElB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClE,MAAM,GAAG,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,EAAE,CAAC;YAC3D,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAErD,uEAAuE;IACvE,sEAAsE;IACtE,oEAAoE;IACpE,uEAAuE;IACvE,gEAAgE;IAChE,uEAAuE;IACvE,wEAAwE;IACxE,+CAA+C;IAC/C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,iBAAiB,CAAC,UAAU,EAAE;YAClC,MAAM,EAAE,iBAAiB;YACzB,GAAG,EAAE,UAAU;SAChB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,UAAU,CAAC;QAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC/B,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS;YACnB,KAAK,EAAE,eAAe,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,OAAQ,CAAC,IAAI,CAAC;SACvD,CAAC,CAAC,CAAC;QACJ,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC;QAE7B,gEAAgE;QAChE,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAoB,CAAC;QAC5C,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;YAClC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;YACxE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC;YACpC,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,GAAG,YAAY,CAAC;YACxC,MAAM,KAAK,GAAG,gBAAgB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAC3C,MAAM,iBAAiB,CAAC,UAAU,EAAE;gBAClC,MAAM,EAAE,kBAAkB;gBAC1B,GAAG;gBACH,KAAK;aACN,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,iBAAiB,CAAC,UAAU,EAAE;YAClC,MAAM,EAAE,kBAAkB;YAC1B,GAAG,EAAE,UAAU;YACf,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAED,IAAI,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,MAAM,iBAAiB,CAAC,UAAU,EAAE;YAClC,MAAM,EAAE,OAAO;YACf,GAAG,EAAE,UAAU;SAChB,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE;QACvH,OAAO,EAAE,OAAO,CAAC,MAAM;QACvB,KAAK,EAAE,WAAW,CAAC,MAAM;QACzB,QAAQ,EAAE,UAAU;KACrB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAc;IACjD,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAChD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,KAAK,CAAC,qIAAqI,CAAC,CAAC;IAC/I,CAAC;IACD,MAAM,UAAU,GAAG,kBAAkB,CAAC,aAAa,CAAE,CAAC;IAEtD,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAEvC,oBAAoB;IACpB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAC5B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC;QACvB,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS;YAClE,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAC/E,CAAC;IACF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,8DAA8D,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAE/B,2CAA2C;IAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,QAAQ,OAAO,CAAC,CAAC;IACjD,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,sBAAsB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAEnE,IAAI,KAAoB,CAAC;IAEzB,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACnD,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;SAAM,CAAC;QACN,qCAAqC;QACrC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACjD,CAAC;QACD,KAAK,GAAG,CAAC;gBACP,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,SAAS;gBAC1C,IAAI;gBACJ,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,SAAS;gBAChD,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,SAAS;gBAC5C,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,SAAS;gBAChD,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,SAAS;gBAChD,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,SAAS;gBAC5C,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC;gBACnC,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;aAChC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,OAAO,GAAkB,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAErB,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,KAAK,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,YAAY,CAChE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,sEAAsE;QACtE,kEAAkE;QAClE,mEAAmE;QACnE,qEAAqE;QACrE,MAAM,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;SAAM,IAAI,UAAU,EAAE,CAAC;QACtB,SAAS,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,eAAe;QACf,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,YAAY,4BAA4B,OAAO,CAAC,MAAM,YAAY,CAAC,CAAC;IAChG,CAAC;AACH,CAAC"}
|
package/dist/commands/bcf.js
CHANGED
|
@@ -21,7 +21,7 @@ export async function bcfCommand(args) {
|
|
|
21
21
|
const author = getFlag(args, '--author') ?? 'cli@ifc-lite.com';
|
|
22
22
|
const outPath = getFlag(args, '--out');
|
|
23
23
|
if (!title)
|
|
24
|
-
fatal('Usage: ifc-lite bcf create --title "
|
|
24
|
+
fatal('Usage: ifc-lite bcf create --title "Missing door" [--description "..."] [--author email] --out file.bcf');
|
|
25
25
|
if (!outPath)
|
|
26
26
|
fatal('--out is required for BCF creation');
|
|
27
27
|
const project = await bcf.createProject({ name: 'CLI Project' });
|
package/dist/commands/bcf.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bcf.js","sourceRoot":"","sources":["../../src/commands/bcf.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAEzD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAc;IAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IACtD,IAAI,CAAC,UAAU;QAAE,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAElF,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;IAE/B,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACvC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YACnD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,kBAAkB,CAAC;YAC/D,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACvC,IAAI,CAAC,KAAK;gBAAE,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"bcf.js","sourceRoot":"","sources":["../../src/commands/bcf.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,9 +9,10 @@ export declare function model(wallA: string, wallB: string): string;
|
|
|
9
9
|
* One entity from each `IfcRoot` branch, plus classes that are not `IfcRoot` at
|
|
10
10
|
* all and classes no schema registry knows.
|
|
11
11
|
*
|
|
12
|
-
* - `IfcTask` / `IfcActor` are `IfcObjectDefinition`s
|
|
13
|
-
*
|
|
14
|
-
* GlobalId
|
|
12
|
+
* - `IfcTask` / `IfcActor` are `IfcObjectDefinition`s that are not `IfcProduct`
|
|
13
|
+
* subtypes. Before #4204's IfcRoot-descendant retention, the columnar parser
|
|
14
|
+
* did not put them in its `EntityTable` and their GlobalId had to come from
|
|
15
|
+
* the STEP record; now they are IfcRoot descendants the table holds directly.
|
|
15
16
|
* - `IfcRelDefinesByProperties` is an `IfcRelationship` and `IfcPropertySet` is
|
|
16
17
|
* an `IfcPropertyDefinition`: both carry GlobalIds, both stay out.
|
|
17
18
|
* - `IfcMaterial` has no GlobalId at all — its first attribute is a Name, which
|
|
@@ -27,7 +28,9 @@ export declare function scheduleModel(taskGuid: string): string;
|
|
|
27
28
|
*
|
|
28
29
|
* - `IfcMove` (an `IfcTask` subtype) and `IfcSpaceProgram` (an `IfcControl`)
|
|
29
30
|
* are `IfcObjectDefinition`s with real GlobalIds in slot 0, and are not
|
|
30
|
-
* `IfcProduct`s
|
|
31
|
+
* `IfcProduct`s. Before #4204 the `EntityTable` did not hold them; now
|
|
32
|
+
* #4204's IfcRoot-descendant retention reaches them through the bundled
|
|
33
|
+
* IFC2X3 schema's inheritance chain, independent of the IFC4 codegen pin.
|
|
31
34
|
* - `IfcSymbolStyle` is a *resource*: no GlobalId at all, a Name in slot 0. Its
|
|
32
35
|
* class name ends in `STYLE`, which is one of the parser's two name-based
|
|
33
36
|
* branches, so the table does hold it — with `hatch` in the GlobalId column.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diff-test-helpers.d.ts","sourceRoot":"","sources":["../../src/commands/diff-test-helpers.ts"],"names":[],"mappings":"AAIA,kFAAkF;AAElF,yDAAyD;AACzD,wBAAgB,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE7C;AAED;;wDAEwD;AACxD,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CA4B1D;AAED
|
|
1
|
+
{"version":3,"file":"diff-test-helpers.d.ts","sourceRoot":"","sources":["../../src/commands/diff-test-helpers.ts"],"names":[],"mappings":"AAIA,kFAAkF;AAElF,yDAAyD;AACzD,wBAAgB,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE7C;AAED;;wDAEwD;AACxD,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CA4B1D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA+BtD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA0B5D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAwBrC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAmBtC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,CA+B1D;AAED,eAAO,MAAM,UAAU,QAAoC,CAAC;AAC5D,2EAA2E;AAC3E,eAAO,MAAM,UAAU,QAAoC,CAAC;AAE5D;;;wDAGwD;AACxD,wBAAgB,aAAa,CAC3B,UAAU,EAAE,OAAO,GAAG,YAAY,EAClC,QAAQ,EAAE,MAAM,EAChB,oBAAoB,CAAC,EAAE,OAAO,GAAG,YAAY,GAC5C,MAAM,CAiCR;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAwBlE"}
|
|
@@ -42,9 +42,10 @@ END-ISO-10303-21;
|
|
|
42
42
|
* One entity from each `IfcRoot` branch, plus classes that are not `IfcRoot` at
|
|
43
43
|
* all and classes no schema registry knows.
|
|
44
44
|
*
|
|
45
|
-
* - `IfcTask` / `IfcActor` are `IfcObjectDefinition`s
|
|
46
|
-
*
|
|
47
|
-
* GlobalId
|
|
45
|
+
* - `IfcTask` / `IfcActor` are `IfcObjectDefinition`s that are not `IfcProduct`
|
|
46
|
+
* subtypes. Before #4204's IfcRoot-descendant retention, the columnar parser
|
|
47
|
+
* did not put them in its `EntityTable` and their GlobalId had to come from
|
|
48
|
+
* the STEP record; now they are IfcRoot descendants the table holds directly.
|
|
48
49
|
* - `IfcRelDefinesByProperties` is an `IfcRelationship` and `IfcPropertySet` is
|
|
49
50
|
* an `IfcPropertyDefinition`: both carry GlobalIds, both stay out.
|
|
50
51
|
* - `IfcMaterial` has no GlobalId at all — its first attribute is a Name, which
|
|
@@ -91,7 +92,9 @@ END-ISO-10303-21;
|
|
|
91
92
|
*
|
|
92
93
|
* - `IfcMove` (an `IfcTask` subtype) and `IfcSpaceProgram` (an `IfcControl`)
|
|
93
94
|
* are `IfcObjectDefinition`s with real GlobalIds in slot 0, and are not
|
|
94
|
-
* `IfcProduct`s
|
|
95
|
+
* `IfcProduct`s. Before #4204 the `EntityTable` did not hold them; now
|
|
96
|
+
* #4204's IfcRoot-descendant retention reaches them through the bundled
|
|
97
|
+
* IFC2X3 schema's inheritance chain, independent of the IFC4 codegen pin.
|
|
95
98
|
* - `IfcSymbolStyle` is a *resource*: no GlobalId at all, a Name in slot 0. Its
|
|
96
99
|
* class name ends in `STYLE`, which is one of the parser's two name-based
|
|
97
100
|
* branches, so the table does hold it — with `hatch` in the GlobalId column.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diff-test-helpers.js","sourceRoot":"","sources":["../../src/commands/diff-test-helpers.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D,kFAAkF;AAElF,yDAAyD;AACzD,MAAM,UAAU,IAAI,CAAC,QAAgB;IACnC,OAAO,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAClD,CAAC;AAED;;wDAEwD;AACxD,MAAM,UAAU,KAAK,CAAC,KAAa,EAAE,KAAa;IAChD,OAAO;;;;;;;kBAOS,IAAI,CAAC,MAAM,CAAC;;;;;;;0BAOJ,IAAI,CAAC,MAAM,CAAC;;;;;;;gBAOtB,KAAK;gBACL,KAAK;0CACqB,IAAI,CAAC,MAAM,CAAC;;;CAGrD,CAAC;AACF,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"diff-test-helpers.js","sourceRoot":"","sources":["../../src/commands/diff-test-helpers.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D,kFAAkF;AAElF,yDAAyD;AACzD,MAAM,UAAU,IAAI,CAAC,QAAgB;IACnC,OAAO,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAClD,CAAC;AAED;;wDAEwD;AACxD,MAAM,UAAU,KAAK,CAAC,KAAa,EAAE,KAAa;IAChD,OAAO;;;;;;;kBAOS,IAAI,CAAC,MAAM,CAAC;;;;;;;0BAOJ,IAAI,CAAC,MAAM,CAAC;;;;;;;gBAOtB,KAAK;gBACL,KAAK;0CACqB,IAAI,CAAC,MAAM,CAAC;;;CAGrD,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC5C,OAAO;;;;;;;kBAOS,IAAI,CAAC,MAAM,CAAC;;;;;;;0BAOJ,IAAI,CAAC,MAAM,CAAC;gBACtB,IAAI,CAAC,MAAM,CAAC;;uBAEL,IAAI,CAAC,MAAM,CAAC;;kCAED,IAAI,CAAC,MAAM,CAAC;gBAC9B,QAAQ;iBACP,IAAI,CAAC,MAAM,CAAC;;0CAEa,IAAI,CAAC,MAAM,CAAC;sBAChC,IAAI,CAAC,MAAM,CAAC;0BACR,IAAI,CAAC,MAAM,CAAC;yBACb,IAAI,CAAC,MAAM,CAAC;;;CAGpC,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAClD,OAAO;;;;;;;kBAOS,IAAI,CAAC,MAAM,CAAC;;;;;;;0BAOJ,IAAI,CAAC,MAAM,CAAC;4BACV,IAAI,CAAC,MAAM,CAAC;gBACxB,QAAQ;wBACA,IAAI,CAAC,MAAM,CAAC;;;2BAGT,IAAI,CAAC,MAAM,CAAC;0CACG,IAAI,CAAC,MAAM,CAAC;;;CAGrD,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,YAAY;IAC1B,OAAO;;;;;;;kBAOS,IAAI,CAAC,MAAM,CAAC;;;;;;;0BAOJ,IAAI,CAAC,MAAM,CAAC;oBAClB,IAAI,CAAC,MAAM,CAAC;oBACZ,IAAI,CAAC,MAAM,CAAC;gBAChB,IAAI,CAAC,MAAM,CAAC;gBACZ,IAAI,CAAC,MAAM,CAAC;0CACc,IAAI,CAAC,MAAM,CAAC;;;CAGrD,CAAC;AACF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO;;;;;;;kBAOS,IAAI,CAAC,MAAM,CAAC;;;;;;oBAMV,IAAI,CAAC,MAAM,CAAC;oBACZ,IAAI,CAAC,MAAM,CAAC;;;CAG/B,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe;IAChD,MAAM,IAAI,GAAG,QAAQ,KAAK,CAAC,CAAC;IAC5B,OAAO;;;;;;;kBAOS,IAAI,CAAC,MAAM,CAAC;;;;;;;kBAOZ,IAAI,CAAC,MAAM,CAAC,oCAAoC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU;oBACrE,IAAI,CAAC,MAAM,CAAC;EAE9B,IAAI;QACF,CAAC,CAAC,8BAA8B,IAAI,CAAC,MAAM,CAAC,mEAAmE;QAC/G,CAAC,CAAC,iCAAiC,IAAI,CAAC,MAAM,CAAC,yCACnD;EAEE,IAAI;QACF,CAAC,CAAC,mBAAmB,IAAI,CAAC,MAAM,CAAC,wCAAwC;QACzE,CAAC,CAAC,iBAAiB,IAAI,CAAC,MAAM,CAAC,2CACnC;;;CAGC,CAAC;AACF,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC5D,2EAA2E;AAC3E,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAE5D;;;wDAGwD;AACxD,MAAM,UAAU,aAAa,CAC3B,UAAkC,EAClC,QAAgB,EAChB,oBAA6C;IAE7C,MAAM,QAAQ,GACZ,UAAU,KAAK,OAAO;QACpB,CAAC,CAAC,2CAA2C;QAC7C,CAAC,CAAC,iDAAiD,CAAC;IACxD,MAAM,gBAAgB,GAAG,oBAAoB;QAC3C,CAAC,CAAC,iCAAiC,oBAAoB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,YAAY;QACjG,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,eAAe,GAAG,oBAAoB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3D,OAAO;;;;;;;kBAOS,IAAI,CAAC,MAAM,CAAC;;;;;EAK5B,QAAQ;EACR,gBAAgB;;0BAEQ,IAAI,CAAC,MAAM,CAAC;gBACtB,IAAI,CAAC,MAAM,CAAC;2BACD,IAAI,CAAC,MAAM,CAAC;oCACH,eAAe,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;kCACxC,IAAI,CAAC,MAAM,CAAC;0CACJ,IAAI,CAAC,MAAM,CAAC;;;CAGrD,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,cAAsB;IACxD,OAAO;;;;;;;kBAOS,IAAI,CAAC,MAAM,CAAC;;;;;;;0BAOJ,IAAI,CAAC,MAAM,CAAC;gBACtB,IAAI,CAAC,MAAM,CAAC;;qCAES,cAAc;uCACZ,IAAI,CAAC,MAAM,CAAC;0CACT,IAAI,CAAC,MAAM,CAAC;;;CAGrD,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { IfcDataStore } from '@ifc-lite/parser';
|
|
2
|
+
/**
|
|
3
|
+
* Handle the `obj | gltf | glb | jsonld | ifcx | usd | step` export formats.
|
|
4
|
+
* Whole-model formats (ifcx/usd) never isolate, so filters were skipped by the
|
|
5
|
+
* caller and must not gate the export here — only the isolating formats treat
|
|
6
|
+
* a filter as active.
|
|
7
|
+
*/
|
|
8
|
+
export declare function exportRustFormat(format: string, args: string[], store: IfcDataStore, filePath: string, refs: Array<{
|
|
9
|
+
expressId: number;
|
|
10
|
+
}>, filterRequested: boolean, wholeModelFormat: boolean): Promise<void>;
|
|
11
|
+
//# sourceMappingURL=export-rust-formats.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export-rust-formats.d.ts","sourceRoot":"","sources":["../../src/commands/export-rust-formats.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AA4BrD;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EAAE,EACd,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,KAAK,CAAC;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,EAClC,eAAe,EAAE,OAAO,EACxB,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAAC,IAAI,CAAC,CAoIf"}
|
|
@@ -0,0 +1,185 @@
|
|
|
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
|
+
* The Rust-backed export formats (ifc-lite-export via wasm): OBJ, glTF/GLB,
|
|
6
|
+
* JSON-LD, IFCX, USD, STEP. Split out of export.ts (#4047) — this is the one
|
|
7
|
+
* cohesive block that shares the wasm GeometryProcessor bootstrap, the
|
|
8
|
+
* isolation-set / filter-matched-zero handling, and the opt-in geometry
|
|
9
|
+
* diagnostics pass.
|
|
10
|
+
*/
|
|
11
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
12
|
+
import { GeometryProcessor, isNoRenderGeometryError } from '@ifc-lite/geometry';
|
|
13
|
+
import { countGlbMeshes, countObjVertices } from '@ifc-lite/export';
|
|
14
|
+
import { getFlag, hasFlag, fatal, writeOutput } from '../output.js';
|
|
15
|
+
import { logger } from '../logger.js';
|
|
16
|
+
import { formatGeometryReport, NO_DIAGNOSTICS_LINE } from '../geometry-report.js';
|
|
17
|
+
/**
|
|
18
|
+
* Resolve the raw IFC bytes (parsed store source, or re-read from disk) plus a
|
|
19
|
+
* one-shot wasm GeometryProcessor for the Rust-backed exporters (OBJ / glTF / JSON-LD).
|
|
20
|
+
*
|
|
21
|
+
* Every Rust exporter below takes the WHOLE file, so the source is genuinely
|
|
22
|
+
* materialised here (#2183). It is handed back rather than scoped through a
|
|
23
|
+
* callback because the caller is one `switch` arm of a single CLI invocation
|
|
24
|
+
* that also runs the optional diagnostics pass over the same bytes; the buffer
|
|
25
|
+
* dies with the command.
|
|
26
|
+
*/
|
|
27
|
+
async function rustExportContext(store, filePath) {
|
|
28
|
+
let bytes;
|
|
29
|
+
if (store.source.byteLength > 0) {
|
|
30
|
+
bytes = store.source.materialize();
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
const buf = await readFile(filePath);
|
|
34
|
+
bytes = new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength);
|
|
35
|
+
}
|
|
36
|
+
const gp = new GeometryProcessor();
|
|
37
|
+
await gp.init();
|
|
38
|
+
return { bytes, gp };
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Handle the `obj | gltf | glb | jsonld | ifcx | usd | step` export formats.
|
|
42
|
+
* Whole-model formats (ifcx/usd) never isolate, so filters were skipped by the
|
|
43
|
+
* caller and must not gate the export here — only the isolating formats treat
|
|
44
|
+
* a filter as active.
|
|
45
|
+
*/
|
|
46
|
+
export async function exportRustFormat(format, args, store, filePath, refs, filterRequested, wholeModelFormat) {
|
|
47
|
+
const outPath = getFlag(args, '--out');
|
|
48
|
+
const filterActive = !wholeModelFormat && filterRequested;
|
|
49
|
+
const isolated = filterActive
|
|
50
|
+
? new Uint32Array(refs.map((r) => r.expressId))
|
|
51
|
+
: new Uint32Array();
|
|
52
|
+
// An empty isolation set means "export everything" to the Rust exporters, so a
|
|
53
|
+
// filter that matched nothing would silently dump the whole model. Fail loudly
|
|
54
|
+
// instead — the user asked for a subset and got zero matches.
|
|
55
|
+
if (filterActive && isolated.length === 0) {
|
|
56
|
+
fatal('Filter matched 0 entities — nothing to export. Check --type/--storey/--where/--limit.');
|
|
57
|
+
}
|
|
58
|
+
// --profile: attribute wall-time between the per-invocation wasm
|
|
59
|
+
// bootstrap (GeometryProcessor init) and the export itself - the
|
|
60
|
+
// fixed-overhead split the throughput plan needs for tiny inputs.
|
|
61
|
+
const profileFlag = hasFlag(args, '--profile');
|
|
62
|
+
const tInit = performance.now();
|
|
63
|
+
const { bytes, gp } = await rustExportContext(store, filePath);
|
|
64
|
+
if (profileFlag) {
|
|
65
|
+
process.stderr.write(`profile: wasm init ${(performance.now() - tInit).toFixed(0)}ms\n`);
|
|
66
|
+
}
|
|
67
|
+
const tWork = performance.now();
|
|
68
|
+
try {
|
|
69
|
+
if (format === 'ifcx') {
|
|
70
|
+
const out = gp.exportIfcx(bytes);
|
|
71
|
+
if (out == null)
|
|
72
|
+
fatal('IFCX export failed (geometry pipeline not initialized)');
|
|
73
|
+
await writeOutput(out, outPath);
|
|
74
|
+
}
|
|
75
|
+
else if (format === 'usd') {
|
|
76
|
+
// OpenUSD (.usda ASCII) — whole-model Z-up USD stage (geometry-backed).
|
|
77
|
+
const out = gp.exportUsd(bytes);
|
|
78
|
+
if (out == null)
|
|
79
|
+
fatal('USD export failed (geometry pipeline not initialized)');
|
|
80
|
+
await writeOutput(out, outPath);
|
|
81
|
+
}
|
|
82
|
+
else if (format === 'step') {
|
|
83
|
+
// Rust faithful re-serialization (+ reference-closed subset when filtered).
|
|
84
|
+
const schema = getFlag(args, '--schema') ?? '';
|
|
85
|
+
const out = gp.exportStep(bytes, schema, isolated);
|
|
86
|
+
if (out == null)
|
|
87
|
+
fatal('STEP export failed (geometry pipeline not initialized)');
|
|
88
|
+
await writeOutput(out, outPath);
|
|
89
|
+
}
|
|
90
|
+
else if (format === 'jsonld') {
|
|
91
|
+
const out = gp.exportJsonld(bytes, '', true, false, false, isolated);
|
|
92
|
+
if (out == null)
|
|
93
|
+
fatal('JSON-LD export failed (geometry pipeline not initialized)');
|
|
94
|
+
await writeOutput(out, outPath);
|
|
95
|
+
}
|
|
96
|
+
else if (format === 'obj') {
|
|
97
|
+
// `isolated` is empty-but-active only when a filter matched nothing
|
|
98
|
+
// (rejected above); an inactive filter must pass `undefined` to
|
|
99
|
+
// exportObj, not an empty Uint32Array — the wasm boundary now treats
|
|
100
|
+
// an explicit empty array as "isolation active, matches nothing"
|
|
101
|
+
// (the OBJ twin of #4328/#4364), and would fail-close every
|
|
102
|
+
// unfiltered export otherwise.
|
|
103
|
+
const out = gp.exportObj(bytes, true, new Uint32Array(), filterActive ? isolated : undefined);
|
|
104
|
+
if (out == null)
|
|
105
|
+
fatal('OBJ export failed (geometry pipeline not initialized)');
|
|
106
|
+
// Defense-in-depth mirroring the GLB guard below: the Rust OBJ path has
|
|
107
|
+
// no "no render geometry" error signal the way exportGlb does
|
|
108
|
+
// (NoRenderGeometry) — it always returns a string, so a filter/pipeline
|
|
109
|
+
// regression that drops all mesh visibility silently writes a small but
|
|
110
|
+
// still non-zero-byte, header-only OBJ as "success". Vertex count (not
|
|
111
|
+
// file size) is the actual geometry-content signal — see
|
|
112
|
+
// countObjVertices's comment.
|
|
113
|
+
if (countObjVertices(out) === 0) {
|
|
114
|
+
fatal(filterActive
|
|
115
|
+
? 'OBJ export produced 0 vertices — the matched entities have no exportable render geometry. Check --type/--storey/--where/--limit.'
|
|
116
|
+
: 'OBJ export produced 0 vertices — the model has no exportable render geometry (or geometry production failed).');
|
|
117
|
+
}
|
|
118
|
+
logger.debug(`OBJ vertices: ${countObjVertices(out)}`);
|
|
119
|
+
await writeOutput(out, outPath);
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
// gltf | glb → binary GLB
|
|
123
|
+
if (!outPath)
|
|
124
|
+
fatal('--out is required for GLB/glTF export (binary output)');
|
|
125
|
+
let out;
|
|
126
|
+
try {
|
|
127
|
+
// `isolated` is empty-but-active only when a filter matched nothing
|
|
128
|
+
// (rejected above); an inactive filter must pass `undefined` to
|
|
129
|
+
// exportGlb, not an empty Uint32Array — the wasm boundary now treats
|
|
130
|
+
// an explicit empty array as "isolation active, matches nothing"
|
|
131
|
+
// (#4328), and would fail-close every unfiltered export otherwise.
|
|
132
|
+
out = gp.exportGlb(bytes, false, new Uint32Array(), filterActive ? isolated : undefined, '');
|
|
133
|
+
}
|
|
134
|
+
catch (err) {
|
|
135
|
+
// The Rust boundary fails closed on an empty visible mesh set; map
|
|
136
|
+
// the typed error to the tailored operator hint.
|
|
137
|
+
if (isNoRenderGeometryError(err)) {
|
|
138
|
+
fatal(filterActive
|
|
139
|
+
? 'GLB export produced 0 meshes — the matched entities have no exportable render geometry. Check --type/--storey/--where/--limit.'
|
|
140
|
+
: 'GLB export produced 0 meshes — the model has no exportable render geometry (or geometry production failed).');
|
|
141
|
+
}
|
|
142
|
+
throw err;
|
|
143
|
+
}
|
|
144
|
+
if (out == null)
|
|
145
|
+
fatal('GLB export failed (geometry pipeline not initialized)');
|
|
146
|
+
// Defense-in-depth behind the Rust fail-closed guard: a zero-mesh GLB
|
|
147
|
+
// must never be written to disk and reported as success.
|
|
148
|
+
if (countGlbMeshes(out) === 0) {
|
|
149
|
+
fatal(filterActive
|
|
150
|
+
? 'GLB export produced 0 meshes — the matched entities have no exportable render geometry. Check --type/--storey/--where/--limit.'
|
|
151
|
+
: 'GLB export produced 0 meshes — the model has no exportable render geometry (or geometry production failed).');
|
|
152
|
+
}
|
|
153
|
+
logger.debug(`GLB meshes: ${countGlbMeshes(out)}`);
|
|
154
|
+
await writeFile(outPath, out);
|
|
155
|
+
logger.info(`Written to ${outPath}`);
|
|
156
|
+
}
|
|
157
|
+
if (profileFlag) {
|
|
158
|
+
process.stderr.write(`profile: ${format} export ${(performance.now() - tWork).toFixed(0)}ms\n`);
|
|
159
|
+
}
|
|
160
|
+
// Opt-in geometry summary (--diagnostics, or implied by --verbose):
|
|
161
|
+
// reuses the gp/bytes already in scope. This is a second geometry pass
|
|
162
|
+
// (the export bindings do not return diagnostics yet), so it only runs
|
|
163
|
+
// when asked for; the renderer is shared with diagnose-geometry.
|
|
164
|
+
if (hasFlag(args, '--diagnostics') || logger.level() === 'debug') {
|
|
165
|
+
if (format === 'ifcx') {
|
|
166
|
+
logger.info('No geometry diagnostics for ifcx export (no mesh pass).');
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
// Best-effort: the export already succeeded; a diagnostics failure
|
|
170
|
+
// must not turn it into a command failure.
|
|
171
|
+
try {
|
|
172
|
+
const diag = gp.diagnoseGeometry(bytes);
|
|
173
|
+
logger.info(diag ? formatGeometryReport(diag) : NO_DIAGNOSTICS_LINE);
|
|
174
|
+
}
|
|
175
|
+
catch (err) {
|
|
176
|
+
logger.warn(`Geometry diagnostics failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
finally {
|
|
182
|
+
gp.dispose();
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
//# sourceMappingURL=export-rust-formats.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export-rust-formats.js","sourceRoot":"","sources":["../../src/commands/export-rust-formats.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parse a --where filter string into psetName, propName, operator, value.
|
|
3
|
+
*/
|
|
4
|
+
export declare function parseWhereFilter(filter: string): {
|
|
5
|
+
psetName: string;
|
|
6
|
+
propName: string;
|
|
7
|
+
operator: string;
|
|
8
|
+
value?: string;
|
|
9
|
+
};
|
|
1
10
|
/**
|
|
2
11
|
* B5: Resolve a column value from an entity, searching entity attributes,
|
|
3
12
|
* property sets, AND quantity sets (by bare quantity name or QsetName.QuantityName).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"AAqBA;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAsBzH;AAiBD;;;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;AAYD,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+LjE"}
|