BuildingGroupSublayer.js 1.7 KB

12345
  1. /*
  2. All material copyright ESRI, All Rights Reserved, unless otherwise specified.
  3. See https://js.arcgis.com/4.25/esri/copyright.txt for details.
  4. */
  5. import{_ as r}from"../../chunks/tslib.es6.js";import e from"../../core/Collection.js";import{loadAllChildren as o}from"../../core/loadAll.js";import s from"../../core/Warning.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/accessorSupport/ensureType.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import n from"./BuildingComponentSublayer.js";import u from"./BuildingSublayer.js";var a;const l={type:e,readOnly:!0,json:{origins:{service:{read:{source:"sublayers",reader:p}}},read:!1}};function p(r,o,t){if(r&&Array.isArray(r))return new e(r.map((r=>{const e=y(r);if(e){const o=new e;return o.read(r,t),o}return t&&t.messages&&r&&t.messages.push(new s("building-scene-layer:unsupported-sublayer-type","Building scene sublayer of type '"+(r.type||"unknown")+"' are not supported",{definition:r,context:t})),null})))}let c=a=class extends u{constructor(r){super(r),this.type="building-group",this.listMode="show",this.sublayers=null}loadAll(){return o(this,(r=>a.forEachSublayer(this.sublayers,(e=>{"building-group"!==e.type&&r(e)}))))}};function y(r){return"group"===r.layerType?c:n}r([t({type:["hide","show","hide-children"],json:{write:!0}})],c.prototype,"listMode",void 0),r([t(l)],c.prototype,"sublayers",void 0),c=a=r([i("esri.layers.buildingSublayers.BuildingGroupSublayer")],c),function(r){function e(r,o){r.forEach((r=>{o(r),"building-group"===r.type&&e(r.sublayers,o)}))}r.sublayersProperty=l,r.readSublayers=p,r.forEachSublayer=e}(c||(c={}));const d=c;export{d as default};