brepjs-bim 0.20.0 → 0.21.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.
@@ -27620,7 +27620,8 @@ function assignNum(target, key, value) {
27620
27620
  * while the IR path serves the viewport and dedup. GlobalIds derive from
27621
27621
  * families key paths (stable under reordering), not insertion order.
27622
27622
  *
27623
- * Scope: Storey containers, Wall/Slab/Column/Beam/Roof/Stair elements, and wall openings — a
27623
+ * Scope: Storey containers; Wall/Slab/Column/Beam/Roof/Stair, Footing/Pile,
27624
+ * Railing/Ramp, Covering/CurtainWall, and Space elements; and wall openings — a
27624
27625
  * fill-role void (Door/Window family) maps onto addDoor/addWindow, which cut
27625
27626
  * the wall and wire IfcRelVoidsElement + IfcRelFillsElement; the opening and
27626
27627
  * filler GlobalIds derive from the synthesized key paths. Anonymous (non-fill)
@@ -27675,12 +27676,41 @@ var SPEC_ROUTES = {
27675
27676
  stair: {
27676
27677
  parse: parseStairSpec,
27677
27678
  add: (m, spec, key) => m.addStair(spec, { stableKey: key }),
27678
- input: stairSpecInput
27679
+ input: flightsSpecInput
27680
+ },
27681
+ footing: {
27682
+ parse: parseFootingSpec,
27683
+ add: (m, spec, key) => m.addFooting(spec, { stableKey: key })
27684
+ },
27685
+ pile: {
27686
+ parse: parsePileSpec,
27687
+ add: (m, spec, key) => m.addPile(spec, { stableKey: key })
27688
+ },
27689
+ railing: {
27690
+ parse: parseRailingSpec,
27691
+ add: (m, spec, key) => m.addRailing(spec, { stableKey: key })
27692
+ },
27693
+ ramp: {
27694
+ parse: parseRampSpec,
27695
+ add: (m, spec, key) => m.addRamp(spec, { stableKey: key }),
27696
+ input: flightsSpecInput
27697
+ },
27698
+ covering: {
27699
+ parse: parseCoveringSpec,
27700
+ add: (m, spec, key) => m.addCovering(spec, void 0, { stableKey: key })
27701
+ },
27702
+ curtainWall: {
27703
+ parse: parseCurtainWallSpec,
27704
+ add: (m, spec, key) => m.addCurtainWall(spec, { stableKey: key })
27705
+ },
27706
+ space: {
27707
+ parse: parseSpaceSpec,
27708
+ add: (m, spec, key) => m.addSpace(spec, { stableKey: key })
27679
27709
  }
27680
27710
  };
27681
- /** StairSpec has no top-level origin — placement lives per flight — so the
27682
- * element's folded translate lands on every flight's origin instead. */
27683
- function stairSpecInput(el) {
27711
+ /** Stair and ramp specs have no top-level origin — placement lives per flight —
27712
+ * so the element's folded translate lands on every flight's origin instead. */
27713
+ function flightsSpecInput(el) {
27684
27714
  const base = specInput(el);
27685
27715
  const fold = base["origin"] ?? [
27686
27716
  0,
@@ -27722,7 +27752,14 @@ var NAME_ARCHETYPES = {
27722
27752
  Roof: "roof",
27723
27753
  Stair: "stair",
27724
27754
  Door: "door",
27725
- Window: "window"
27755
+ Window: "window",
27756
+ Footing: "footing",
27757
+ Pile: "pile",
27758
+ Railing: "railing",
27759
+ Ramp: "ramp",
27760
+ Covering: "covering",
27761
+ CurtainWall: "curtainWall",
27762
+ Space: "space"
27726
27763
  };
27727
27764
  function archetypeFor(el) {
27728
27765
  return el.archetype ?? NAME_ARCHETYPES[el.type];
@@ -27597,7 +27597,8 @@ function assignNum(target, key, value) {
27597
27597
  * while the IR path serves the viewport and dedup. GlobalIds derive from
27598
27598
  * families key paths (stable under reordering), not insertion order.
27599
27599
  *
27600
- * Scope: Storey containers, Wall/Slab/Column/Beam/Roof/Stair elements, and wall openings — a
27600
+ * Scope: Storey containers; Wall/Slab/Column/Beam/Roof/Stair, Footing/Pile,
27601
+ * Railing/Ramp, Covering/CurtainWall, and Space elements; and wall openings — a
27601
27602
  * fill-role void (Door/Window family) maps onto addDoor/addWindow, which cut
27602
27603
  * the wall and wire IfcRelVoidsElement + IfcRelFillsElement; the opening and
27603
27604
  * filler GlobalIds derive from the synthesized key paths. Anonymous (non-fill)
@@ -27652,12 +27653,41 @@ var SPEC_ROUTES = {
27652
27653
  stair: {
27653
27654
  parse: parseStairSpec,
27654
27655
  add: (m, spec, key) => m.addStair(spec, { stableKey: key }),
27655
- input: stairSpecInput
27656
+ input: flightsSpecInput
27657
+ },
27658
+ footing: {
27659
+ parse: parseFootingSpec,
27660
+ add: (m, spec, key) => m.addFooting(spec, { stableKey: key })
27661
+ },
27662
+ pile: {
27663
+ parse: parsePileSpec,
27664
+ add: (m, spec, key) => m.addPile(spec, { stableKey: key })
27665
+ },
27666
+ railing: {
27667
+ parse: parseRailingSpec,
27668
+ add: (m, spec, key) => m.addRailing(spec, { stableKey: key })
27669
+ },
27670
+ ramp: {
27671
+ parse: parseRampSpec,
27672
+ add: (m, spec, key) => m.addRamp(spec, { stableKey: key }),
27673
+ input: flightsSpecInput
27674
+ },
27675
+ covering: {
27676
+ parse: parseCoveringSpec,
27677
+ add: (m, spec, key) => m.addCovering(spec, void 0, { stableKey: key })
27678
+ },
27679
+ curtainWall: {
27680
+ parse: parseCurtainWallSpec,
27681
+ add: (m, spec, key) => m.addCurtainWall(spec, { stableKey: key })
27682
+ },
27683
+ space: {
27684
+ parse: parseSpaceSpec,
27685
+ add: (m, spec, key) => m.addSpace(spec, { stableKey: key })
27656
27686
  }
27657
27687
  };
27658
- /** StairSpec has no top-level origin — placement lives per flight — so the
27659
- * element's folded translate lands on every flight's origin instead. */
27660
- function stairSpecInput(el) {
27688
+ /** Stair and ramp specs have no top-level origin — placement lives per flight —
27689
+ * so the element's folded translate lands on every flight's origin instead. */
27690
+ function flightsSpecInput(el) {
27661
27691
  const base = specInput(el);
27662
27692
  const fold = base["origin"] ?? [
27663
27693
  0,
@@ -27699,7 +27729,14 @@ var NAME_ARCHETYPES = {
27699
27729
  Roof: "roof",
27700
27730
  Stair: "stair",
27701
27731
  Door: "door",
27702
- Window: "window"
27732
+ Window: "window",
27733
+ Footing: "footing",
27734
+ Pile: "pile",
27735
+ Railing: "railing",
27736
+ Ramp: "ramp",
27737
+ Covering: "covering",
27738
+ CurtainWall: "curtainWall",
27739
+ Space: "space"
27703
27740
  };
27704
27741
  function archetypeFor(el) {
27705
27742
  return el.archetype ?? NAME_ARCHETYPES[el.type];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "brepjs-bim",
3
- "version": "0.20.0",
3
+ "version": "0.21.0",
4
4
  "description": "BIM layer for brepjs — IFC4-aligned parametric building elements",
5
5
  "keywords": [
6
6
  "bim",