@ifc-lite/codegen 1.15.12 → 1.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/express-parser.js +43 -51
- package/dist/express-parser.js.map +1 -1
- package/dist/generated/ifc2x3/entities.d.ts +5244 -0
- package/dist/generated/ifc2x3/entities.d.ts.map +1 -0
- package/dist/generated/ifc2x3/entities.js +8 -0
- package/dist/generated/ifc2x3/entities.js.map +1 -0
- package/dist/generated/ifc2x3/enums.d.ts +1809 -0
- package/dist/generated/ifc2x3/enums.d.ts.map +1 -0
- package/dist/generated/ifc2x3/enums.js +1973 -0
- package/dist/generated/ifc2x3/enums.js.map +1 -0
- package/dist/generated/ifc2x3/index.d.ts +13 -0
- package/dist/generated/ifc2x3/index.d.ts.map +1 -0
- package/dist/generated/ifc2x3/index.js +16 -0
- package/dist/generated/ifc2x3/index.js.map +1 -0
- package/dist/generated/ifc2x3/schema-registry.d.ts +50 -0
- package/dist/generated/ifc2x3/schema-registry.d.ts.map +1 -0
- package/dist/generated/ifc2x3/schema-registry.js +50052 -0
- package/dist/generated/ifc2x3/schema-registry.js.map +1 -0
- package/dist/generated/ifc2x3/selects.d.ts +102 -0
- package/dist/generated/ifc2x3/selects.d.ts.map +1 -0
- package/dist/generated/ifc2x3/selects.js +8 -0
- package/dist/generated/ifc2x3/selects.js.map +1 -0
- package/dist/generated/ifc2x3/serializers.d.ts +12 -0
- package/dist/generated/ifc2x3/serializers.d.ts.map +1 -0
- package/dist/generated/ifc2x3/serializers.js +30 -0
- package/dist/generated/ifc2x3/serializers.js.map +1 -0
- package/dist/generated/ifc2x3/type-ids.d.ts +692 -0
- package/dist/generated/ifc2x3/type-ids.d.ts.map +1 -0
- package/dist/generated/ifc2x3/type-ids.js +1425 -0
- package/dist/generated/ifc2x3/type-ids.js.map +1 -0
- package/dist/generated/ifc2x3/types.d.ts +241 -0
- package/dist/generated/ifc2x3/types.d.ts.map +1 -0
- package/dist/generated/ifc2x3/types.js +8 -0
- package/dist/generated/ifc2x3/types.js.map +1 -0
- package/dist/generated/ifc4/entities.d.ts +6221 -0
- package/dist/generated/ifc4/entities.d.ts.map +1 -0
- package/dist/generated/ifc4/entities.js +8 -0
- package/dist/generated/ifc4/entities.js.map +1 -0
- package/dist/generated/ifc4/enums.d.ts +2260 -0
- package/dist/generated/ifc4/enums.d.ts.map +1 -0
- package/dist/generated/ifc4/enums.js +2467 -0
- package/dist/generated/ifc4/enums.js.map +1 -0
- package/dist/generated/ifc4/index.d.ts +13 -0
- package/dist/generated/ifc4/index.d.ts.map +1 -0
- package/dist/generated/ifc4/index.js +16 -0
- package/dist/generated/ifc4/index.js.map +1 -0
- package/dist/generated/ifc4/schema-registry.d.ts +50 -0
- package/dist/generated/ifc4/schema-registry.d.ts.map +1 -0
- package/dist/generated/ifc4/schema-registry.js +62999 -0
- package/dist/generated/ifc4/schema-registry.js.map +1 -0
- package/dist/generated/ifc4/selects.d.ts +130 -0
- package/dist/generated/ifc4/selects.d.ts.map +1 -0
- package/dist/generated/ifc4/selects.js +8 -0
- package/dist/generated/ifc4/selects.js.map +1 -0
- package/dist/generated/ifc4/serializers.d.ts +12 -0
- package/dist/generated/ifc4/serializers.d.ts.map +1 -0
- package/dist/generated/ifc4/serializers.js +30 -0
- package/dist/generated/ifc4/serializers.js.map +1 -0
- package/dist/generated/ifc4/type-ids.d.ts +815 -0
- package/dist/generated/ifc4/type-ids.d.ts.map +1 -0
- package/dist/generated/ifc4/type-ids.js +1671 -0
- package/dist/generated/ifc4/type-ids.js.map +1 -0
- package/dist/generated/ifc4/types.d.ts +268 -0
- package/dist/generated/ifc4/types.d.ts.map +1 -0
- package/dist/generated/ifc4/types.js +8 -0
- package/dist/generated/ifc4/types.js.map +1 -0
- package/dist/generated/ifc4x3/entities.d.ts +6982 -0
- package/dist/generated/ifc4x3/entities.d.ts.map +1 -0
- package/dist/generated/ifc4x3/entities.js +8 -0
- package/dist/generated/ifc4x3/entities.js.map +1 -0
- package/dist/generated/ifc4x3/enums.d.ts +2853 -0
- package/dist/generated/ifc4x3/enums.d.ts.map +1 -0
- package/dist/generated/ifc4x3/enums.js +3096 -0
- package/dist/generated/ifc4x3/enums.js.map +1 -0
- package/dist/generated/ifc4x3/index.d.ts +13 -0
- package/dist/generated/ifc4x3/index.d.ts.map +1 -0
- package/dist/generated/ifc4x3/index.js +16 -0
- package/dist/generated/ifc4x3/index.js.map +1 -0
- package/dist/generated/ifc4x3/schema-registry.d.ts +50 -0
- package/dist/generated/ifc4x3/schema-registry.d.ts.map +1 -0
- package/dist/generated/ifc4x3/schema-registry.js +71299 -0
- package/dist/generated/ifc4x3/schema-registry.js.map +1 -0
- package/dist/generated/ifc4x3/selects.d.ts +131 -0
- package/dist/generated/ifc4x3/selects.d.ts.map +1 -0
- package/dist/generated/ifc4x3/selects.js +8 -0
- package/dist/generated/ifc4x3/selects.js.map +1 -0
- package/dist/generated/ifc4x3/serializers.d.ts +12 -0
- package/dist/generated/ifc4x3/serializers.d.ts.map +1 -0
- package/dist/generated/ifc4x3/serializers.js +30 -0
- package/dist/generated/ifc4x3/serializers.js.map +1 -0
- package/dist/generated/ifc4x3/type-ids.d.ts +915 -0
- package/dist/generated/ifc4x3/type-ids.d.ts.map +1 -0
- package/dist/generated/ifc4x3/type-ids.js +1871 -0
- package/dist/generated/ifc4x3/type-ids.js.map +1 -0
- package/dist/generated/ifc4x3/types.d.ts +272 -0
- package/dist/generated/ifc4x3/types.d.ts.map +1 -0
- package/dist/generated/ifc4x3/types.js +8 -0
- package/dist/generated/ifc4x3/types.js.map +1 -0
- package/dist/generator.d.ts +1 -1
- package/dist/generator.d.ts.map +1 -1
- package/dist/generator.js +7 -1
- package/dist/generator.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/rust-generator.d.ts.map +1 -1
- package/dist/rust-generator.js +2 -14
- package/dist/rust-generator.js.map +1 -1
- package/dist/rust-type-name-parser.d.ts +4 -0
- package/dist/rust-type-name-parser.d.ts.map +1 -0
- package/dist/rust-type-name-parser.js +27 -0
- package/dist/rust-type-name-parser.js.map +1 -0
- package/dist/schema-hierarchy.d.ts +57 -0
- package/dist/schema-hierarchy.d.ts.map +1 -0
- package/dist/schema-hierarchy.js +69 -0
- package/dist/schema-hierarchy.js.map +1 -0
- package/package.json +33 -5
- package/schemas/IFC2X3_TC1.exp +9569 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rust-type-name-parser.js","sourceRoot":"","sources":["../src/rust-type-name-parser.ts"],"names":[],"mappings":"AAKA,qEAAqE;AACrE,MAAM,UAAU,sBAAsB,CAAC,MAAqB;IAC1D,OAAO;;;;;;;;;;;;;;;;;;EAkBP,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAC3B,gBAAgB,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;CAIpF,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Schema-derived type-membership helpers.
|
|
3
|
+
*
|
|
4
|
+
* Every `generated/{ifc4,ifc4x3}/schema-registry.ts` bundle carries, per
|
|
5
|
+
* entity, an `inheritanceChain: string[]` running from the schema root down
|
|
6
|
+
* to the entity itself (inclusive) — e.g.
|
|
7
|
+
* `IfcMaterialConstituent.inheritanceChain = ['IfcMaterialDefinition', 'IfcMaterialConstituent']`.
|
|
8
|
+
* That is a schema fact, not a naming convention: it is the correct tool for
|
|
9
|
+
* "is this entity a subtype of X", a question three call sites answered with
|
|
10
|
+
* a string test (`startsWith`/`endsWith`/`includes`) and got wrong at three
|
|
11
|
+
* different edges (see ifc-lite issue #3999).
|
|
12
|
+
*
|
|
13
|
+
* This module is deliberately decoupled from any one generated bundle's
|
|
14
|
+
* concrete `SchemaRegistry`/`EntityMetadata` interfaces (each bundle
|
|
15
|
+
* re-declares its own, identically) — it only requires the shape it
|
|
16
|
+
* actually reads, so it works unchanged against `ifc4`'s registry, `ifc4x3`'s,
|
|
17
|
+
* or both.
|
|
18
|
+
*/
|
|
19
|
+
/** The minimal shape this module reads off a generated bundle's entity metadata. */
|
|
20
|
+
export interface HierarchyEntity {
|
|
21
|
+
inheritanceChain?: string[];
|
|
22
|
+
}
|
|
23
|
+
/** The minimal shape this module reads off a generated bundle's `SchemaRegistry`. */
|
|
24
|
+
export interface HierarchyRegistry {
|
|
25
|
+
entities: Record<string, HierarchyEntity>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Is `type` the same entity as `ancestor`, or a (possibly transitive) subtype
|
|
29
|
+
* of it, according to `registry`? Reflexive: `isSubtypeOf(r, 'IfcWall',
|
|
30
|
+
* 'IfcWall')` is `true`, matching the chain's own inclusion of the entity
|
|
31
|
+
* itself. Case-insensitive on both arguments. Returns `false` for a `type`
|
|
32
|
+
* the registry does not know (including an abstract supertype with no
|
|
33
|
+
* `inheritanceChain` of its own, and any name from a *different* schema
|
|
34
|
+
* version's vocabulary) — never throws.
|
|
35
|
+
*/
|
|
36
|
+
export declare function isSubtypeOf(registry: HierarchyRegistry, type: string, ancestor: string): boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Is `type` a subtype of (or the same entity as) `ancestor` in ANY of the
|
|
39
|
+
* given registries? Use this to test membership against a schema-version
|
|
40
|
+
* union — e.g. a set of entity types that must be recognised whether the
|
|
41
|
+
* store was parsed against IFC4 or IFC4X3, mirroring how a hand-maintained
|
|
42
|
+
* "recognise it in either schema" allowlist used to be built by hand.
|
|
43
|
+
*/
|
|
44
|
+
export declare function isSubtypeOfAny(registries: readonly HierarchyRegistry[], type: string, ancestor: string): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Is `type` a PROPER (strict) subtype of `ancestor` — i.e. `isSubtypeOf` is
|
|
47
|
+
* true AND `type` is not `ancestor` itself? Use this for an abstract
|
|
48
|
+
* supertype with no concrete instances (`IfcMaterialDefinition`,
|
|
49
|
+
* `IfcProfileDef`, …): no real IFC entity's `EntityRef.type` is ever the
|
|
50
|
+
* literal abstract-type name, so a caller asking "is this entity one of
|
|
51
|
+
* that abstract type's concrete members" wants the self-match excluded,
|
|
52
|
+
* not `isSubtypeOf`'s reflexive answer.
|
|
53
|
+
*/
|
|
54
|
+
export declare function isProperSubtypeOf(registry: HierarchyRegistry, type: string, ancestor: string): boolean;
|
|
55
|
+
/** `isProperSubtypeOf`, checked against ANY of the given registries. */
|
|
56
|
+
export declare function isProperSubtypeOfAny(registries: readonly HierarchyRegistry[], type: string, ancestor: string): boolean;
|
|
57
|
+
//# sourceMappingURL=schema-hierarchy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-hierarchy.d.ts","sourceRoot":"","sources":["../src/schema-hierarchy.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;GAiBG;AAEH,oFAAoF;AACpF,MAAM,WAAW,eAAe;IAC9B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,qFAAqF;AACrF,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAC3C;AA+BD;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAIhG;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,UAAU,EAAE,SAAS,iBAAiB,EAAE,EACxC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,OAAO,CAET;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEtG;AAED,wEAAwE;AACxE,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,SAAS,iBAAiB,EAAE,EACxC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,OAAO,CAET"}
|
|
@@ -0,0 +1,69 @@
|
|
|
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
|
+
* Per-registry index from upper-cased entity name to its upper-cased
|
|
6
|
+
* inheritance chain, built once per registry object and cached by identity
|
|
7
|
+
* (a generated bundle's `SCHEMA_REGISTRY` is a module-level singleton, so
|
|
8
|
+
* identity is stable for the process lifetime). IFC EXPRESS entity names are
|
|
9
|
+
* unique under case-folding, so upper-casing both the key and the chain
|
|
10
|
+
* entries is lossless and lets callers pass either the raw STEP/type-table
|
|
11
|
+
* spelling (already upper-case, e.g. `'IFCWALL'`) or the schema's own
|
|
12
|
+
* PascalCase spelling (`'IfcWall'`) without needing to know which.
|
|
13
|
+
*/
|
|
14
|
+
const chainIndexCache = new WeakMap();
|
|
15
|
+
function chainIndexFor(registry) {
|
|
16
|
+
let index = chainIndexCache.get(registry);
|
|
17
|
+
if (!index) {
|
|
18
|
+
index = new Map();
|
|
19
|
+
for (const [name, meta] of Object.entries(registry.entities)) {
|
|
20
|
+
if (meta.inheritanceChain && meta.inheritanceChain.length > 0) {
|
|
21
|
+
index.set(name.toUpperCase(), meta.inheritanceChain.map((n) => n.toUpperCase()));
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
chainIndexCache.set(registry, index);
|
|
25
|
+
}
|
|
26
|
+
return index;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Is `type` the same entity as `ancestor`, or a (possibly transitive) subtype
|
|
30
|
+
* of it, according to `registry`? Reflexive: `isSubtypeOf(r, 'IfcWall',
|
|
31
|
+
* 'IfcWall')` is `true`, matching the chain's own inclusion of the entity
|
|
32
|
+
* itself. Case-insensitive on both arguments. Returns `false` for a `type`
|
|
33
|
+
* the registry does not know (including an abstract supertype with no
|
|
34
|
+
* `inheritanceChain` of its own, and any name from a *different* schema
|
|
35
|
+
* version's vocabulary) — never throws.
|
|
36
|
+
*/
|
|
37
|
+
export function isSubtypeOf(registry, type, ancestor) {
|
|
38
|
+
const chain = chainIndexFor(registry).get(type.toUpperCase());
|
|
39
|
+
if (!chain)
|
|
40
|
+
return false;
|
|
41
|
+
return chain.includes(ancestor.toUpperCase());
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Is `type` a subtype of (or the same entity as) `ancestor` in ANY of the
|
|
45
|
+
* given registries? Use this to test membership against a schema-version
|
|
46
|
+
* union — e.g. a set of entity types that must be recognised whether the
|
|
47
|
+
* store was parsed against IFC4 or IFC4X3, mirroring how a hand-maintained
|
|
48
|
+
* "recognise it in either schema" allowlist used to be built by hand.
|
|
49
|
+
*/
|
|
50
|
+
export function isSubtypeOfAny(registries, type, ancestor) {
|
|
51
|
+
return registries.some((registry) => isSubtypeOf(registry, type, ancestor));
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Is `type` a PROPER (strict) subtype of `ancestor` — i.e. `isSubtypeOf` is
|
|
55
|
+
* true AND `type` is not `ancestor` itself? Use this for an abstract
|
|
56
|
+
* supertype with no concrete instances (`IfcMaterialDefinition`,
|
|
57
|
+
* `IfcProfileDef`, …): no real IFC entity's `EntityRef.type` is ever the
|
|
58
|
+
* literal abstract-type name, so a caller asking "is this entity one of
|
|
59
|
+
* that abstract type's concrete members" wants the self-match excluded,
|
|
60
|
+
* not `isSubtypeOf`'s reflexive answer.
|
|
61
|
+
*/
|
|
62
|
+
export function isProperSubtypeOf(registry, type, ancestor) {
|
|
63
|
+
return type.toUpperCase() !== ancestor.toUpperCase() && isSubtypeOf(registry, type, ancestor);
|
|
64
|
+
}
|
|
65
|
+
/** `isProperSubtypeOf`, checked against ANY of the given registries. */
|
|
66
|
+
export function isProperSubtypeOfAny(registries, type, ancestor) {
|
|
67
|
+
return registries.some((registry) => isProperSubtypeOf(registry, type, ancestor));
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=schema-hierarchy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-hierarchy.js","sourceRoot":"","sources":["../src/schema-hierarchy.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AA+B/D;;;;;;;;;GASG;AACH,MAAM,eAAe,GAAG,IAAI,OAAO,EAA4C,CAAC;AAEhF,SAAS,aAAa,CAAC,QAA2B;IAChD,IAAI,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;QAClB,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7D,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9D,KAAK,CAAC,GAAG,CACP,IAAI,CAAC,WAAW,EAAE,EAClB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAClD,CAAC;YACJ,CAAC;QACH,CAAC;QACD,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAC,QAA2B,EAAE,IAAY,EAAE,QAAgB;IACrF,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9D,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,OAAO,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,UAAwC,EACxC,IAAY,EACZ,QAAgB;IAEhB,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAA2B,EAAE,IAAY,EAAE,QAAgB;IAC3F,OAAO,IAAI,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;AAChG,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,oBAAoB,CAClC,UAAwC,EACxC,IAAY,EACZ,QAAgB;IAEhB,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AACpF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ifc-lite/codegen",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.17.0",
|
|
4
4
|
"description": "TypeScript code generator from IFC EXPRESS schemas",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
@@ -10,6 +10,33 @@
|
|
|
10
10
|
},
|
|
11
11
|
"main": "dist/index.js",
|
|
12
12
|
"types": "dist/index.d.ts",
|
|
13
|
+
"exports": {
|
|
14
|
+
".": {
|
|
15
|
+
"types": "./dist/index.d.ts",
|
|
16
|
+
"import": "./dist/index.js",
|
|
17
|
+
"default": "./dist/index.js"
|
|
18
|
+
},
|
|
19
|
+
"./schema-hierarchy": {
|
|
20
|
+
"types": "./dist/schema-hierarchy.d.ts",
|
|
21
|
+
"import": "./dist/schema-hierarchy.js",
|
|
22
|
+
"default": "./dist/schema-hierarchy.js"
|
|
23
|
+
},
|
|
24
|
+
"./ifc4": {
|
|
25
|
+
"types": "./dist/generated/ifc4/index.d.ts",
|
|
26
|
+
"import": "./dist/generated/ifc4/index.js",
|
|
27
|
+
"default": "./dist/generated/ifc4/index.js"
|
|
28
|
+
},
|
|
29
|
+
"./ifc4x3": {
|
|
30
|
+
"types": "./dist/generated/ifc4x3/index.d.ts",
|
|
31
|
+
"import": "./dist/generated/ifc4x3/index.js",
|
|
32
|
+
"default": "./dist/generated/ifc4x3/index.js"
|
|
33
|
+
},
|
|
34
|
+
"./ifc2x3": {
|
|
35
|
+
"types": "./dist/generated/ifc2x3/index.d.ts",
|
|
36
|
+
"import": "./dist/generated/ifc2x3/index.js",
|
|
37
|
+
"default": "./dist/generated/ifc2x3/index.js"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
13
40
|
"keywords": [
|
|
14
41
|
"ifc",
|
|
15
42
|
"express",
|
|
@@ -20,10 +47,10 @@
|
|
|
20
47
|
"license": "MPL-2.0",
|
|
21
48
|
"dependencies": {
|
|
22
49
|
"commander": "^15.0.0",
|
|
23
|
-
"@ifc-lite/data": "^4.
|
|
50
|
+
"@ifc-lite/data": "^4.2.0"
|
|
24
51
|
},
|
|
25
52
|
"devDependencies": {
|
|
26
|
-
"@types/node": "^26.4.
|
|
53
|
+
"@types/node": "^26.4.1",
|
|
27
54
|
"typescript": "^6.0.3",
|
|
28
55
|
"vitest": "^4.1.11"
|
|
29
56
|
},
|
|
@@ -38,12 +65,13 @@
|
|
|
38
65
|
"README.md"
|
|
39
66
|
],
|
|
40
67
|
"scripts": {
|
|
41
|
-
"build": "pnpm exec tsc",
|
|
68
|
+
"build": "pnpm exec tsc && pnpm exec tsc -p tsconfig.generated.json",
|
|
42
69
|
"typecheck": "node ../../scripts/typecheck-tests.mjs",
|
|
43
70
|
"dev": "pnpm exec tsc --watch",
|
|
44
71
|
"test": "vitest run",
|
|
45
72
|
"generate": "node dist/cli.js",
|
|
46
73
|
"generate:ifc4": "node dist/cli.js schemas/IFC4_ADD2_TC1.exp -o generated/ifc4",
|
|
47
|
-
"generate:ifc4x3": "node dist/cli.js schemas/IFC4X3.exp -o generated/ifc4x3"
|
|
74
|
+
"generate:ifc4x3": "node dist/cli.js schemas/IFC4X3.exp -o generated/ifc4x3",
|
|
75
|
+
"generate:ifc2x3": "node dist/cli.js schemas/IFC2X3_TC1.exp -o generated/ifc2x3"
|
|
48
76
|
}
|
|
49
77
|
}
|